Single Player bugs and crashes v38 plus (SVN) - After the 20th of February 2018

I figured out that the iPopulationgrowthratepercentage value in civic is not effective before you do a forced recalc, this is true even if you start a new game.... Something is definitely buggy about the way that tag is handled in the dll.

Here's what I did in chronological order:
  1. I started a new game, settled a city and noted that the city needed 150 :food: to grow.
    • Did a forced recalc just in case, and the food was still 150 :food: as expected.
  2. I exited the game and changed one of the initial civics to double the amount of :food: needed to grow, iPopulationgrowthratepercentage = 100
  3. I started a new game, settled a city and noted that the city needed 150 :food: to grow, but I expected 300 :food: in this case.
  4. I did a forced recalc of the game modifiers (ctrl+shift+t) and noted that the city now needed 300 :food: to grow as expected.
Notes: If I do the recalc before I settle the city then the food needed to grow is as expected 300 :food:. If I save the game and load after I've done the recalc the food needed to grow is still correct.

It seems like the problem only exist before the first time a forced recalc is done in the game. It shouldn't be nessesearry to do a recalc on the beginning of turn 0 for the game to act as it should at that point.
@Thunderbrd : please take a look at this when you get time.
Don't initial civics already cause more food needed to grow? It's a bit confusing why you'd get that first set of results unless ALL initial civics already don't modify this value at all. hmm...

Doing one turn also corrected food required display.
Caching. Got it.
Shouldn't be an issue then.
 
Also @Thunderbrd cumulative reductions of food requirement for growth shouldn't go to -100% as it would make city grow every turn.
Going below that nullifies food requirement modifier as if it was 0.
That is all civics modifiers would be at 0.
I guess that would be runaway population growth. We'd have to evaluate all sources and see when that happens. At least the code doesn't say it's a problem, as in a crash. Seems to be a code reasonable response. The food requirements for growth shrink very gradually down on the education chart and each level is limited by era. Of course, even in the modern era, some nations are just growing right into starvation as quickly as they can, then starving then growing then starving. Starving and yet still breeding.
 
The building TechHappinessTypes tag seems to be the same as the TechHappinessChanges tag.
Code:
            <TechHappinessTypes>
                <TechHappinessType>
                    <TechType>TECH_ECOLOGY</TechType>
                    <iModifier>-1</iModifier>
                </TechHappinessType>
            </TechHappinessTypes>

Code:
            <TechHappinessChanges>
                <TechHappinessChange>
                    <PrereqTech>TECH_ECOLOGY</PrereqTech>
                    <iHappiness>-1</iHappiness>
                </TechHappinessChange>
            </TechHappinessChanges>

I think the TechHealthTypes, TechSpecialistHappinesses and TechSpecialistHealths where also added after another tag that does the same.
That would certainly be less than optimal! An obvious place to correct.
 
Don't initial civics already cause more food needed to grow? It's a bit confusing why you'd get that first set of results unless ALL initial civics already don't modify this value at all. hmm...
Oh, in my test I initially set it up so that all initial civics have no effect on food needed for city growth (step number zero), then I changed one of them to 100% more food needed for growth (step number two).
 
Oh, in my test I initially set it up so that all initial civics have no effect on food needed for city growth (step number zero), then I changed one of them to 100% more food needed for growth (step number two).
Can you confirm Raxo's results, that simply passing a round gets it set correctly when a modifier exists?
 
Can you confirm Raxo's results, that simply passing a round gets it set correctly when a modifier exists?
Passing one turn does indeed fix it; so the bug isn't causing any real problems, though it should ideally be in effect already at turn 0.
Normal/Standard/Noble with default civics - 46 food needed for city to grow.
Primitive civic - +75% food required to grow.
Garbage Anywhere - +25% food required to grow.
No Agriculture - +50% food required to grow.

Still I need 46 food.

It appears I should need 115 food to grow....
No it appears you should need 150 :food: to grow from pop 1 to pop 2.
46 :food: * 1.75 * 1.25 * 1.5 = 150.9375 = 150 :food:
Just like you noted here:
I did recalc and I got 150 needed food.
 
Last edited:
Did you read the rest? If you're experiencing losses of promotions on a new game then there's a bug and I need to know what exactly is taking place. Please provide a save.

I said I don't know what you're talking about - not that you don't.



If you look in Jerusalem, Hebron, or Metzada you will see I still have healers that I have not yet upgraded to medicine man. Once I entered Classical era the healers and all wise woman I may have had left lost their best promotion. The current healers are all line rank 1. Upgrading to Medicine men they soon get line rank 2 back. Or I just delete them if money is short and just build New Medicine man. Unfortunately I did not take a screen shot when I entered Classical era to show the red messages (top middle of main screen) that show the loss of promotions.

As to SO's and Raledon's problems with :yuck:, you will see I don't. As I don't play like them I can't see their problems.
 

Attachments

If you look in Jerusalem, Hebron, or Metzada you will see I still have healers that I have not yet upgraded to medicine man. Once I entered Classical era the healers and all wise woman I may have had left lost their best promotion. The current healers are all line rank 1. Upgrading to Medicine men they soon get line rank 2 back. Or I just delete them if money is short and just build New Medicine man. Unfortunately I did not take a screen shot when I entered Classical era to show the red messages (top middle of main screen) that show the loss of promotions.

As to SO's and Raledon's problems with :yuck:, you will see I don't. As I don't play like them I can't see their problems.
The save won't help if it's not catching the loss in the act but the more full description may help me to find the logic flaw. I'll take a look. Thanks!
 
Happens at every X Lifestyle Tech completion. So far happened at Sed Life, Ancient Life, and Classical Life. A once in an era change when you reach a new era. This if left unattended to can cause a surge in :yuck: and a rapidly rising Disease or Crime level, depending upon how diligently you keep track of them. Many players do not do this, but only attend to it when it starts to wreck their economy or build efforts.

Ie SO's 1st screen shot with Disease at 380 an +3/turn even with his healers in place. All because the healers are less effective in the new era and he let it go too long. This also happens with LE units as well of course.
 
Happens at every X Lifestyle Tech completion. So far happened at Sed Life, Ancient Life, and Classical Life. A once in an era change when you reach a new era. This if left unattended to can cause a surge in :yuck: and a rapidly rising Disease or Crime level, depending upon how diligently you keep track of them. Many players do not do this, but only attend to it when it starts to wreck their economy or build efforts.

Ie SO's 1st screen shot with Disease at 380 an +3/turn even with his healers in place. All because the healers are less effective in the new era and he let it go too long. This also happens with LE units as well of course.
Well... interesting but that was never the intention.
 
Happens at every X Lifestyle Tech completion. So far happened at Sed Life, Ancient Life, and Classical Life. A once in an era change when you reach a new era. This if left unattended to can cause a surge in :yuck: and a rapidly rising Disease or Crime level, depending upon how diligently you keep track of them. Many players do not do this, but only attend to it when it starts to wreck their economy or build efforts.

Ie SO's 1st screen shot with Disease at 380 an +3/turn even with his healers in place. All because the healers are less effective in the new era and he let it go too long. This also happens with LE units as well of course.
I have noticed this also. It makes it very hard to keep crime and disease under control without having a huge number of units.
 
I have noticed this also. It makes it very hard to keep crime and disease under control without having a huge number of units.
Just tested the newest DLL where I removed the potential for losing promotions due to era prereqs and tested and did not lose any promos in this manner. If it's a deeper problem than that and someone is still experiencing it, please capture the save where you're about to hit the button to enter the new era.
 
@Raledon,
This is a Direct result of your complaint over a possible exploit of using multiple Wise woman continually getting upgrades instead of using the latest Health line unit. You reap what you sowed.
And if you can not control the :yuck: it is again a game play bad decision making problem. Also I can show that :yuck: is Not out of control thru screenshots from my test games all Updated to current SVN. It's How you are playing that is the problem.
It seems you misunderstood my meaning (or that I wrote badly), and possibly SO's (though I may have misunderstood him, instead).
I am not talking about :yuck: from disease, but :yuck: from buildings. If you build most of the buildings, you will reach a stage you the city suffers from :yuck: regardless of properties.
This happens since many buildings such as forges, factories and similar other buildings are increasing :yuck: directly. I suggest that instead of direct :yuck:, we will have effects on disease and/or pollution.
An example in the <spoiler> below
Spoiler :

This is a city from one of my won games, after recalculation. as we can see, we are on -171 food from :yuck:.
Disease is responsible for 58 of it.
Pollution is responsible for another 12.
We can also see the city's possible construction. If we actually had them all built, we wouldn't get even 50:health:. This ignores the buildings that I haven't constructed yet that could increase :yuck:.
Note that due to the way :yuck: I just bulldozed it with a lot of food, but it still feels strange that I can't effectively fight it.
I hope this helped pass my meaning.
upload_2018-3-12_1-41-59.png


One more thing:
SVN 9927,
Refactored the XML's unit mission handling to be consistent with other similar methods.
XML's missions that do not appear on the CvEnums.h file should work regardless of position as they used to (untested)

Why was this commit not tested?
I tested the commit with the code in the SVN and it worked as expected (if there are issues, I'll check it out). The reason for the "untested part" was to notify that it should be possible to do what was supposed to be possible before the issue that caused me to make the change. I'm not sure how the system worked or how to test it, and it's healthier to have the mission in the enums regardless. The comment was so that if people want to go back to add XML missions without touching the DLL, they can will know it should be possible and come to me if there are issues.


Yes. UN researchers have made it very clear that low education levels increase population growth. And vice versa. Education is not supposed to be all good to be high. You can get better growth and easier civic changes and less war weariness by having lower education levels.
I have no issues with education raising/lowering food requirement to grow.
I tried asking if food works like XP before or after the change. It sounds like it works like xp before the change, IE -100% we only need 1 food (or something) to grow, instead of 2X.
I think it should be considered to change it to a similar system like the XP, as to allow high negatives, and to make education better. (currently in many cases I prefer my cities dumb for the -food requirement)
 
currently in many cases I prefer my cities dumb for the -food requirement
Good... so does the modern day United States.
I tried asking if food works like XP before or after the change. It sounds like it works like xp before the change, IE -100% we only need 1 food (or something) to grow, instead of 2X.
You can make this change if you wish. I'd back you on it. Do you know where the calculations are for that?
 
Civ4ScreenShot0045.JPG
It seems you misunderstood my meaning (or that I wrote badly), and possibly SO's (though I may have misunderstood him, instead).
I am not talking about :yuck: from disease, but :yuck: from buildings. If you build most of the buildings, you will reach a stage you the city suffers from :yuck: regardless of properties.
This happens since many buildings such as forges, factories and similar other buildings are increasing :yuck: directly. I suggest that instead of direct :yuck:, we will have effects on disease and/or pollution.
An example in the <spoiler> below

My Modern Era game (started pre v38 release) is nowhere near as bad as your posted spoiler game. I know how you managed to get it that bad. Seems you purposefully let it get out of control and just left it to feed on itself. Built every factory you could didnt you?

But Yes the later Eras from Industrial on are rife with unrestricted :yuck:. All the Modders that worked on the last Eras especially Hydro and Mr Azure continued to increase :yuck: by adding it to everything usually at +5 increments. Pepper2000 used their work as his template so he extended it unwittingly.

This "was" going to be one of my projects before the Floo hit the Fan. Factories "were" going to be the 1st to get revised. Now.....<shrug>....

Of course leaving Disease and Air and Water Pollution unchecked does not help either. Fix those and don't build every building that gives :yuck:. You don't Need treasuries like yours to play a viable game.

As I look at it more you purposefully did this to your self to be this bad in just the Modern Era. Maybe I should post a screen shot of my Modern Era game to contrast what can be done by keeping things in control and not let run amok? The contrast is Stark to say the least.

But realistically now how many players are going to get into the last eras? Before v38 it was possible to get into the Modern/Information eras and still have a viable game. Now who knows? I don't anymore.

But I Hope that leadership does not take your game as a basis for more wholesale changes. Yours is Not the typical game by any means.

I'll post a screenshot in a bit for contrast.

EDIT: Screenshot of largest city in my 35 city empire Modern Era. Stark and vivid contrast to your city Raledon. Night and day difference. And this is why I Hope that Leadership does Not take your word on how bad the game is in this regards. It will be a monstrous mistake if T-brd and Toffer run with your declaration.

But I will say this :yuck: per pop is set Too High.
 
Last edited:
But I will say this :yuck: per pop is set Too High.
Are you mixing unhealth up with disease as you discuss things above? Unhealth per population is at what it's always been at. 1 per population.
 
Found a strange bug. SVN rev. 9973.

When a unit has stay the hand status promotion active and tries to move to a plot with a defensive only animal, like a moose, then the unit loose its movement point and doesn't move to the plot where the moose is.
 
Found a strange bug. SVN rev. 9973.

When a unit has stay the hand status promotion active and tries to move to a plot with a defensive only animal, like a moose, then the unit loose its movement point and doesn't move to the plot where the moose is.
Yep... that would be something I wasn't testing. OK. I'll look into it over the next week.
 
Are you mixing unhealth up with disease as you discuss things above? Unhealth per population is at what it's always been at. 1 per population.
Yeah looked at the wrong thing. But is that the only thing you can comment on out that whole post? Something I did/said wrong again? I give up.
 
Back
Top Bottom