1. We have added a Gift Upgrades feature that allows you to gift an account upgrade to another member, just in time for the holiday season. You can see the gift option when going to the Account Upgrades screen, or on any user profile screen.
    Dismiss Notice

Requests and Suggestions

Discussion in 'Civ4 - Community Enchancement Project' started by Quornix, Mar 21, 2007.

  1. Quornix

    Quornix Chieftain

    Joined:
    Dec 27, 2006
    Messages:
    134
    Well, I don't see a thread for this specifically, so I figured I'd make one. Remember, folks, this mod is about allowing a huge array of mods to be built on top of it. My work on mine is coming along, but with another version coming along at some point, I'd like to add some of the options I've incorporated into mine.

    So, a few simple suggestions:

    CIV4UnitInfos.xml, CIV4PromotionInfos.xml:
    +Attack %, +Defense %

    The solution of +Combat % with -TerrainDefense works, but is ugly in display. I've got Attack% working perfectly for Promotions, and thought I had Defense% worked out as well, but ran across bugs. If you want these, let me know, but you can probably throw them together on your own faster than you can pull my code.

    +TerrainAttack%, +FeatureAttack%

    Just like the +HillsAttack%. Haven't worked on this at all, but would be very nice for Woodsman III and equivalent promotions.

    Improved Yield Display

    I figured out how to upgrade it to 19 yield display, with (slightly smaller) loaves/anvils/bags as multiples of 5. Haven't done it yet, but the concept is sound, and in fact identical to my Binary Yield display. If you want, I'll do this as soon as I finish my current game. I've been doing more tweaking than modding lately.

    Please add the extra linear factor to the XP progression. A * (Level)^B + C * Level + D would be excellent.

    Anyway, I'm looking forward to the improved Civics screen, and I've like Total Realism a lot -- I can't wait to have Blake's AI included, as that's beyond my skills.

    Thank you for this excellent base!:goodjob:
     
  2. Impaler[WrG]

    Impaler[WrG] Civ4:Col UI programmer

    Joined:
    Dec 5, 2005
    Messages:
    1,750
    Location:
    Vallejo, California
    The pure Attack and Defence modifiers have been on my radar for a long time, I can whip it up quickly once Better AI is done.

    Yield display I probably cant do much for because its image based, I still think Garrett might be able to help with the 'squashed' image problem you had

    Terrain and Feature attack are possible as well

    And the extra scaler factor on Experience will also be an easy addition
     
  3. Quornix

    Quornix Chieftain

    Joined:
    Dec 27, 2006
    Messages:
    134
    One more very simple change:

    Fix the ImprovementUpgradeRateModifier tag in the Civics section to allow total rates less than 100%. At the moment, if you have a civic that gives -20% town growth, towns don't grow at all.

    Only two changes need to be made, both very simple.

    in CvPlayer::getImprovementUpgradeRate(), set iRate to 100

    and this line in CvPlot.cpp:

    if (getUpgradeProgress() >= GC.getGameINLINE().getImprovementUpgradeTime(getImprovementType()))

    needs a "*100" on the right side of the inequality.

    I wound up just changing iRate, and then multiplying the time it takes to upgrade each improvement by 100 as well, but this fits the CCCP criterion that there be no gameplay change. This simply allows effective rates of 1% to 99% of the standard.
     
  4. Quornix

    Quornix Chieftain

    Joined:
    Dec 27, 2006
    Messages:
    134
    No, I've solved the issue, although I can only go up to 19. Basically, it's my Binary, except instead of having images for 1, 2, 4, 8, and 16, I put images for 1, 2, 4, 5, and 10. So 3 would be 2 + 1, 17 would be 10 + 5 + 2, and 6 would be 5 + 1. Can't go over 10 + 5 + 4 without messing up the format, but that's enough for most purposes. Give me a couple hours, and I'll do the images (the reason I've stayed away) and the code (simply changing a few numbers in the Binary code).
     
  5. Impaler[WrG]

    Impaler[WrG] Civ4:Col UI programmer

    Joined:
    Dec 5, 2005
    Messages:
    1,750
    Location:
    Vallejo, California
    Hummmm, I think this is the result of the fact that the growth of implements is stored as an integer. I just copied Firaxis implementation but I see now that theirs is flawed in the sense that it implies the ability to do any modifier at 1% increments but in reality any other then +/- 100% screws it up badly. I'll have to re-work the way improvements actually tabulate their upgrade times possibly using floating point values. I'd still want to have the player shown integer values for times to grow as "4.32 Turns to Village" is rather stupid.
     
  6. Quornix

    Quornix Chieftain

    Joined:
    Dec 27, 2006
    Messages:
    134
    The solution I posted would work, although I think you might have to also divide the time required by 100 as well. Floats would work as well, but just scaling up both the rates and the targets by 100 seems like the simpler solution. Not as elegant, but a very quick fix. I've already done the scaling up part for the growth rate, but instead of scaling the targets up inside the code, I did it in the Improvements file (which is a no-no in CCCP).

    Still, doing it code side should only involve two more lines: the one where it determines if it's time to grow (the line I posted) and the one where it calculates the time left (also, just one line in one function).

    If you want to be really crafty, you can just adjust the function that pulls the Improvement points required, which is called in both locations.

    It would be nice to do the same for Great General points. Same issue there. I got around that by using my new XP scale, which leaves a lot fewer 1 XP combats to get dropped to 0 GGPs. And I'm fine with giving none if you're fighting a seriously lopsided battle, when you're sitting at a negative modifier. Honestly, this is probably the better location for using a float, though. "You get .003 GGPs!"

    I've finished the food side of my Yield display artwork, which will give me a template for the other two yields. Should be up in about an hour (plus build time to test it).
     
  7. Quornix

    Quornix Chieftain

    Joined:
    Dec 27, 2006
    Messages:
    134
  8. purplexus

    purplexus Chieftain

    Joined:
    Feb 13, 2002
    Messages:
    477
    Location:
    Calgary Alberta, Canada
    Would someone like to create a mod that would allow a person to select from the civ's they have on their computer in an easy to use gui that would appear before the game starts?

    My thoughts would be to allow for the game engine to look into the Custom Civilizations folder and see which Civilizations are in there and then include a radio button which could be selected as to whether or not you want this Civ to have the possibility of being played against you by the AI. there is already plans to have 100+ civ's included into the already existing library I'm working on with the Civ Gold Team. I am working on making them plug and playable.
    want the user has to do is place the Civ into the Custom Civilizations folder and it works just like that.
     
  9. Impaler[WrG]

    Impaler[WrG] Civ4:Col UI programmer

    Joined:
    Dec 5, 2005
    Messages:
    1,750
    Location:
    Vallejo, California
    It would be hard to do that because all the games GUI before you actually get into the game are from the EXE and cant be moded. Once plug and play modules are created the player could control everything from outside the game by moving the folders around before everything loads. Once the game has actually loaded the civs their rather set in stone. Radio Buttons certainly would be a better option but and it would be cool to see that done some day but I'll keep perusing your current strategy.
     

Share This Page