Post Feb 1st 2013 - bugs - Single Player

Status
Not open for further replies.
May well be. Giving a default negative like this can mean 'any result' which pretty much amounts to any random number from the lowest extent of an Integer to the highest extent of an Integer. XML like this should be not only avoided but stamped out when found. More proper to simply leave the line as <iInflation/>.

<X></X> and <x/> are EXACTLY the same thing, and will be parsed in exactly the same way. The issue here is the iInflation is not given an appropriate default value I suspect (in the DLL). However, it is true that null specification like that in the XML should be avoided where possible, just to reduce confusion (and [slightly] parse times)

Edit - hmm - the code does appear to set a default value of 0 (as it should), so I'm not sure why this is happening. I'll see what I can find later today.
 
Luckily I keep 3 C2C versions so I can revert to an earlier SVN and continue.

This reminds me of something I was curious about. The saves are backward compatible, but are they forward compatible? If someone saved a game with a new version, found out that version was "bad" and tried to load the new save in an older version, would it work (assuming of course that the mods had the same names)?
 
This reminds me of something I was curious about. The saves are backward compatible, but are they forward compatible? If someone saved a game with a new version, found out that version was "bad" and tried to load the new save in an older version, would it work (assuming of course that the mods had the same names)?

They are not guaranteed to be forward compatible, and in general won't be. If there haven't been significant save format changes between the versions concerned you might get away with it, but over time, definitely not.
 
Officium replaces Counter's hut, but does not provide a crime facility.

Statue of Champion can't be build when Colosseum is present.

Herd - muskox does not allow Dairy barn, while from what I've read, muskoxen can be used for milk.

Sulphur mine is not available until Gunpowder, but it can be used for dye production, which is available much earlier.

Units prefer to use roads then mud paths, but from what I see, they have the same multiplier, now.

V28
 
Sulphur mine is not available until Gunpowder, but it can be used for dye production, which is available much earlier.

Other ways to have dye are avaible earlier (with Indigo eg)

Officium replaces Counter's hut, but does not provide a crime facility.
I think this is normal. In ancien times, counter was able to prenvent fraude.
Today, they help fraude with the complexity of banking system...
 
May well be. Giving a default negative like this can mean 'any result' which pretty much amounts to any random number from the lowest extent of an Integer to the highest extent of an Integer. XML like this should be not only avoided but stamped out when found. More proper to simply leave the line as <iInflation/>.
That is not good either. The tag should have some valid value or not be present at all.
 
Rev 4938:
All new Politic civics except 'Post-Labor' invoke 1631580% inflation which makes the game unplayable after a few turns with massive negative income.



View attachment 344497

EDIT: This is probably because in all these cases the line is <iInflation></iInflation> instead of giving any value.

I cannot reproduce this with the latest SVN, nor see a problem with the code (it seems to default to 0 fine in the empty-tag case). I also cannot see any recent changes that might indicate someone else has fixed it since you reported it though, so I don't know why you are seeing the problem you are.

One thing to try is to clear your XML cache ('Cache' folder under 'assets' - just empty it out) and see if that solves it - let us know if it does please...
 
Unfortunately I get the same inflation problem with the latest SVN revision! I started a game with rev 4930. Today I updated to rev 4940 and after the recalculation my turn income got negative. After each turn the negative income roughly doubles! After each recalculation (SHIFT+CTRL+T) the negative income even nearly quadruples.

Savegame and screenshot attached.

Edit: Clearing the cache didn't solve the problem.
 

Attachments

  • savegame.zip
    1.9 MB · Views: 54
  • inflation.jpg
    inflation.jpg
    233.2 KB · Views: 49
Same as everyone ^^
Inflation problem + ulgy pop-up about killing all food caravan

And I dont have a Golden age but I have only 3 Turns for Revolution in Eternity even if I change everything...
 
I think this is normal. In ancien times, counter was able to prenvent fraude.
Today, they help fraude with the complexity of banking system...
There was no banks in the classical period, I believe. :)

Other ways to have dye are avaible earlier (with Indigo eg)
And? There are other ways to dress, today.
If something was possible in the antiquity, why not making it possible?
 
And? There are other ways to dress, today.
If something was possible in the antiquity, why not making it possible?

You can make cord from kevlar, but kevlar wasn't used in antiquity even if cords already exist.
Same here : you can make dye from sulphur, but that wont mean dye was always make from sulphur...


And I have Inflation even with "No currency"? Oo
 
I cannot reproduce this with the latest SVN, nor see a problem with the code (it seems to default to 0 fine in the empty-tag case). I also cannot see any recent changes that might indicate someone else has fixed it since you reported it though, so I don't know why you are seeing the problem you are.

One thing to try is to clear your XML cache ('Cache' folder under 'assets' - just empty it out) and see if that solves it - let us know if it does please...

Did you check with the save game I posted a bit back?
 
Unfortunately I get the same inflation problem with the latest SVN revision! I started a game with rev 4930. Today I updated to rev 4940 and after the recalculation my turn income got negative. After each turn the negative income roughly doubles! After each recalculation (SHIFT+CTRL+T) the negative income even nearly quadruples.

Savegame and screenshot attached.

Edit: Clearing the cache didn't solve the problem.

I just checked again using this save game, and it does NOT reproduce for me. After the first recalc, further recalcs always yield the same stable result (-21 per turn).

Another question - when you upgraded did you do a clean re-export of the SVN to an empty folder NOT an update over the top of the old version?
 
I just checked again using this save game, and it does NOT reproduce for me. After the first recalc, further recalcs always yield the same stable result (-21 per turn).

Another question - when you upgraded did you do a clean re-export of the SVN to an empty folder NOT an update over the top of the old version?

I always do a clean install of a new SVN version. The only folder in the Mod/Caveman2Cosmos directory which I do not delete is "UserSettings" to keep my BUG options.
 
I always do a clean install of a new SVN version. The only folder in the Mod/Caveman2Cosmos directory which I do not delete is "UserSettings" to keep my BUG options.

I'm going to need some other modder who can reproduce the issue to look at it then - I simply cannot get it to happen in either my own games, or the two so far posted. I also cannot see the flaw in the code.
 
Change <iInflation></iInflation> to <iInflation>0</iInflation> in CIV4CivicInfos.xml and the error is gone. <iInflation></iInflation> does not seem to work the same way as <iInflation/>
 
I'm going to need some other modder who can reproduce the issue to look at it then - I simply cannot get it to happen in either my own games, or the two so far posted. I also cannot see the flaw in the code.
The library that is used to read the XML files is from Microsoft so it may have different behavior on different Windows versions.
Unfortunately the reading functions can get quite weird if they expect an int (as defined in the schema) but find an empty tag which means it is not an int and then you try to read it with the int reading function (I got quite random return values when I experimented with that some time back).
If the library has functions that allow to avoid that issue, then they are not exposed in CvDLLXmlIFaceBase. You can't even read all as string as the string reading function does not return correct values if the tag is defined as having datatype int in the schema.

All in all, best is to just avoid empty tags. Either don't have them in the XML file or fill them with meaningful values, but don't leave them empty.
 
Curiously, in my downloads of both SVN 4923 and 4937, CIV4CivicInfos.xml is already set to <iInflation>0</iInflation>, and I haven't had the inflation problem even though all Labor civics are listed as having 1631580% inflation except Post-Labor.

Just read AIAndy's post. I'm using Windows 7 Service Pack 1.
 
They are not guaranteed to be forward compatible, and in general won't be. If there haven't been significant save format changes between the versions concerned you might get away with it, but over time, definitely not.

They aren't even backward compatable anymore before this development cycle! I just tested it with a save made with rev 4681 (ie, V28 release, I wanted to see what sort of net performance was to be had between V28 and now), and could not load it under the current SVN due to missing EVENTTRIGGERS. That could be very very bad when everyone updates from V28 to V29 if it isn't addressed.
 
Status
Not open for further replies.
Top Bottom