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

1. Did something happen to disease?? pic 1 ,,,, i have quite a few Healer's already in the city and from what i can see i need twice maybe 3 times more and i am only in Classical era/?

2. I am having a heck of a time also lately for cities that are on the SAME continent but a few stretches away from the capital, meaning, some of them even 15 spaces away takes about 10 times MORE turns ti build stuff, in that case it doesnt pay to build buildings, its a waste of time, IMPO. . .

3. The :yuck: is way out of control, almost every building has it and later it even worse, can someone pls try to correct, or i will, and if i do it, people wont like what i do. . .
Please post your save game Boss.

strategyonly said:
3. The :yuck: is way out of control, almost every building has it and later it even worse, can someone pls try to correct, or i will, and if i do it, people wont like what i do. . .
I second this. If you build everything, it's impossible to keep cities healthy as you progress, regardless of properties. Maybe the unhealth should be switched to disease/fire/pollution, so that it could be mitigated?

This is a lack of understanding to what T-brd did for Health and LE units. No more no less. You must upgrade with each new Era achieved. If you do Not upgrade or build the building that allows the upgrade you existing healers and LE become less and less effective. SO should have Medicine Men in the classical. His Healers are now a full era or 2 "old". And as such are losing their better promotions. Therefore weakening How Much Disease they can handle.

@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.

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?

SO,

[Each time you achieve a New Era Lifestyle Tech you will get red event messages at the top middle of your screen. These messages Inform you that your Healers are now basically obsolete And have lost their best promotions. Every era you keep using an Obsolete Health or LE unit you lose More Promotions. This is T-brd's new design to thwart an exploit. Albeit only an exploit that a player actually looking for it would use.


 
Last edited:
Did I just discover bug?
Looks like civic iPopulationgrowthratepercentage is completly ignored in food cost calculations, at least for pop size of 1.
Might be a bug there, I had a quick look in the dll code and saw no obvious shortcomings.
The value used for it in civicInfo.xml is read in by the code, and that value is added to the player specific "calculate food to growth" modifier similarly to how the other <iPopulationgrowthratepercentage> tags in traits and buildings are handled.

Might just be that the game doesn't adjust to the new traits and civics iPopulationgrowthratepercentage tag value right away when you load a save.
The tag was handled a bit differently for buildings, so I think a change in buildings iPopulationgrowthratepercentage would be calculated in right away as cities probably recalculate building effects more often than civic/trait effects.

Try changing the value for anarchism civic again but this time start a new game, see if your first city requires a different food amount to growth this time around.

[Each time you achieve a New Era Lifestyle Tech you will get red event messages at the top middle of your screen. These messages Inform you that your Healers are now basically obsolete And have lost their best promotions. Every era you keep using an Obsolete Health or LE unit you lose More Promotions. This is T-brd's new design to thwart an exploit. Albeit only an exploit that a player actually looking for it would use.
I'm not fond of this solution, when this was discussed I stated that I would much rather see a change in how much unit upkeep the health care unit line have so that the property effect they have per unit upkeep doesn't get worse when upgrading the unit, the easiest solution was as I saw it to have all health care units have the same unit upkeep similarily to how a modern tank has the same unit upkeep as a brute.
 
Last edited:
Might be a bug there, I had a quick look in the dll code and saw no obvious shortcomings.
The value used for it in civicInfo.xml is read in by the code, and that value is added to the player specific "calculate food to growth" modifier similarly to how the other <iPopulationgrowthratepercentage> tags in traits and buildings are handled.

Might just be that the game doesn't adjust to the new traits and civics iPopulationgrowthratepercentage tag value right away when you load a save.
The tag was handled a bit differently for buildings, so I think a change in buildings iPopulationgrowthratepercentage would be calculated in right away as cities recalculate building effects far more often than civic/trait effects.

Try changing the value for anarchism civic again but this time start a new game, see if your first city requires a different food amount to growth this time around.
I did start new game every time I made changes to civics.
Not all civics have such tag though.
 
Each time you achieve a New Era Lifestyle Tech you will get red event messages at the top middle of your screen. These messages Inform you that your Healers are now basically obsolete And have lost their best promotions. Every era you keep using an Obsolete Health or LE unit you lose More Promotions. This is T-brd's new design to thwart an exploit. Albeit only an exploit that a player actually looking for it would use.
I don't know what you're talking about. This would only be possible on a game that was ongoing when the prerequisite limitation was implemented. Otherwise, you aren't supposed to be losing any promotions - if you are there's a bug and I need to look at it. The established limitation is that you shouldn't be able to TAKE a promotion that has an era prerequisite more advanced than the era that the unit was unlocked in by tech prerequisite. AKA, Watchers can't take Disease Control 3.

Again, though, in a game that's been going for a while, its true that if you have already given, say, a Watcher, Disease Control 3, you're going to lose it as soon as the game figures out that the rule is breached. (And probably Disease Control 2 as well.)
 
@T-brd, was food required to work as it used to so that -50% food required means that we need 50% less food, or that growth is 50% faster? IE, -50% from 100 base will return a 50 food requirement, or 67?
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.
Flexible difficulty doesn't appear to be working. Even if I set max difficulty to noble and turn update time to 1, I am still at deity next turn (I am also on 670 pts and AI leader is at 860). I have it enabled as a game setting, and turned on in bug. Is it meant to work? I am on 9967.
I'll have to take a look into that at some point.
 
I counted 102 usages of the iRevolutionIndexModifier building tag. That tag doesn't exist the reading code is found in a comment made by Afforess in 2009.
Code:
pXML->GetOptionalChildXmlValByName(&m_iRevIdxLocal, L"iRevolutionIndexModifier");
However the reading code for the iRevIdxLocal tag suggests it is the same because it is read into the same m_iRevIdxLocal.
Code:
pXML->GetOptionalChildXmlValByName(&m_iRevIdxLocal, L"iRevIdxLocal");
 
Coders?? is there anyway we can "add" more option here, i dont like health that much, since disease is more important now?? and/or pollution/etc / / / /? ? ? ?
 

Attachments

  • options.JPG
    options.JPG
    333.4 KB · Views: 101
All civics can have the tag though, the value used by the dll if the tag is missing defaults to zero.
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.
In total food costs are increased by 150% - that is 2.5x.
If I zero these civics I should need 18 or 19 food.

I zeroed <iPopulationgrowthratepercentage>, where it had value of 25, 50 and 75.
Still I need 46 food.
I started new game.
Spoiler :
ICFha26.jpg

xQ5OgZb.jpg
0J04req.jpg

PkrfIzD.jpg

It appears I should need 150 food to grow....

Misclicked when calculating.
 
Last edited:
Did I just discover bug?
Looks like civic iPopulationgrowthratepercentage is completly ignored in food cost calculations, at least for pop size of 1.
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:

Edit: {
0. I set all initial civics to not modify the food needed for city growth. }
  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.
 
Last edited:
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 this to be 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.

Can you or @raxo2222 check if other civic tags show the same behavior?
 
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 this to be 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.
I did recalc and I got 150 needed food.

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.

Can we get display of all food requirement modifiers?
That is now we can see that for example we get 50% less gold on game beginning thanks to civics, you would see that your food requirement are raised by 150% by civics.
 
Last edited:
Last edited:
Most civic tags work right away when you start a new game, I'll do some test on the ones I'm not so sure about.
It appears its purely display issue just like when queuing worker build actions, as doing turn automatically corrected displayed number.

It is weird that game forgets to adjust display of one value on game start :p
Also we have around 10 regular buildings, that can change iPopulationgrowthratepercentage.
Some of them had value of +-10 or even +-25% that is effectively working as multiple levels of education in context of food needed to grow.
 
Last edited:
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.
 
I don't know what you're talking about. This would only be possible on a game that was ongoing when the prerequisite limitation was implemented. Otherwise, you aren't supposed to be losing any promotions - if you are there's a bug and I need to look at it
3 new games after Toffer's GS changes. Games started on the 4th, 6th, and 8th of this month. But what the hey you don't know what I'm talking about. <shrug>
 
I'm not fond of this solution, when this was discussed I stated that I would much rather see a change in how much unit upkeep the health care unit line have so that the property effect they have per unit upkeep doesn't get worse when upgrading the unit, the easiest solution was as I saw it to have all health care units have the same unit upkeep similarily to how a modern tank has the same unit upkeep as a brute.
Neither am, I but who listens to me anyway?
 
3 new games after Toffer's GS changes. Games started on the 4th, 6th, and 8th of this month. But what the hey you don't know what I'm talking about. <shrug>
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.
 
Last edited:
I counted 102 usages of the iRevolutionIndexModifier building tag. That tag doesn't exist the reading code is found in a comment made by Afforess in 2009.
Code:
pXML->GetOptionalChildXmlValByName(&m_iRevIdxLocal, L"iRevolutionIndexModifier");
However the reading code for the iRevIdxLocal tag suggests it is the same because it is read into the same m_iRevIdxLocal.
Code:
pXML->GetOptionalChildXmlValByName(&m_iRevIdxLocal, L"iRevIdxLocal");
Long time known bug. We should probably fix it.
 
Back
Top Bottom