Single Player bugs and crashes v37 plus (SVN) - After the 24th of December 2016

As suspected. DH said there was a lot more room but I thought I had seen in the code how and why we don't when I looked at it a while back to setup ... man I can't even remember what it was I was working on... lol
I'm currently working on redesigning the gamefont.tga image, to understand how the different game object are assigned to the different icon slots I studied the relevant dll code.
The dll code is reserving a large amount of slots that count to the max amount of font icons the game can use.
I think I've managed to increase the amount of icons that can be used for bonuses by around 352 icons more without any dll changes,
After I commit the new tga file, I would like to talk to you about possible changes to the dll in this regard. Any changes to the dll will have to be commited alongside yet a new version of the tga file that is adjusted to the dll change I have in mind.
 
Last edited:
It seems like some religion icons are missing.
Here are logs: http://www.mediafire.com/file/byd8b0m7irx1f8y/Logs.rar[
Spoiler endgame screenshots :

1x2cEzf.jpg

9Kbw5MN.jpg



@Toffer90 text on top left bar is still bit overflowing BTW.
 
I'm currently working on redesigning the gamefont.tga image, to understand how the different game object are assigned to the different icon slots I studied the relevant dll code.
The dll code is reserving a large amount of slots that count to the max amount of font icons the game can use.
I think I've managed to increase the amount of icons that can be used for bonuses by around 252 icons more without any dll changes,
After I commit the new tga file, I would like to talk to you about possible changes to the dll in this regard. Any changes to the dll will have to be commited alongside yet a new version of the tga file that is adjusted to the dll change I have in mind.
I missed this note earlier somehow. Seems like we're in the middle of this evaluation though. Let me know if you see what we need to do to improve this and I'll be glad to work with you. Even if I do hate with a passion this section of code. ;)
 
I missed this note earlier somehow. Seems like we're in the middle of this evaluation though. Let me know if you see what we need to do to improve this and I'll be glad to work with you. Even if I do hate with a passion this section of code. ;)
We can let the matter rest until the next time we hit the upper limit for font icons. ^^
I'm sick of working with that TGA file and looking at the related code.
By reducing the amount of slots reserved for religions and corporations from 276 to 100 each, we now have a bit less than 352 available slots for new stuff. some of the new ones I already assigned some new bonus icons to.

It seems like some religion icons are missing.
Please stress test the last SVN in your end game save. I believe it has been fixed.
 
I'm sick of working with that TGA file and looking at the related code.
Yep. Horrific stuff that. Again though, amazing you were able to do all that without tweaking the code directly.
 
We can let the matter rest until the next time we hit the upper limit for font icons. ^^
I'm sick of working with that TGA file and looking at the related code.
By reducing the amount of slots reserved for religions and corporations from 276 to 100 each, we now have a bit less than 352 available slots for new stuff. some of the new ones I already assigned some new bonus icons to.

Please stress test the last SVN in your end game save. I believe it has been fixed.
Updated to latest SVN.
It appears, that any icons that loaded at city bars on map were research, gold and production indicating cities, where their generation rates are highest - in my capital excels at all three.
Spoiler :

XDokx0s.jpg

7kYlg2q.jpg


Logs: http://www.mediafire.com/file/42k8g68xov972gj/Logs.rar
 
Updated to latest SVN.
It appears, that any icons that loaded at city bars on map were research, gold and production indicating cities, where their generation rates are highest - in my capital excels at all three.
Spoiler :

XDokx0s.jpg

7kYlg2q.jpg


Logs: http://www.mediafire.com/file/42k8g68xov972gj/Logs.rar
Something is still off; I get the opposite problem... For me all the correct religions present are shown on the city bar, but not the beaker, hammer, food, and trade icons.
 
Updated to latest SVN.
It appears, that any icons that loaded at city bars on map were research, gold and production indicating cities, where their generation rates are highest - in my capital excels at all three.
Spoiler :

XDokx0s.jpg

7kYlg2q.jpg


Logs: http://www.mediafire.com/file/42k8g68xov972gj/Logs.rar
Why is the "lesser money" more than 46 million? I thought the split meant lesser money would never be a million or more?
 
Why is the "lesser money" more than 46 million? I thought the split meant lesser money would never be a million or more?
The code is so that it will only convert one million to one grater gold each turn, normally a player would never manage to earn a whole million in one turn so it shouldn't be a problem.
raxo probably had many millions when he updated to the SVN where greater gold code was finalized.
Adding several millions in worldbuilder will show this behavior clearly.
In 47 turns raxo's treasury should have normalized, so that the lesser gold is below one million, and greater gold at 141 or more.
 
  • Like
Reactions: tmv
Why is the "lesser money" more than 46 million? I thought the split meant lesser money would never be a million or more?
The system will tend to be problematic for games that were that far in progress before it went in place. It is meant to work with the math as it comes, not necessarily to correct the math as it is if it's already into the millions on gold.
 
  • Like
Reactions: tmv
I see that we have a Date Rollover when using Mastery Victory. Ugh!
 
I see that we have a Date Rollover when using Mastery Victory. Ugh!
Notice, that I passed turn limit, and there is no defined time passage after you reach last turn.
So looks like its generic bug related to turn definitions (GameSpeedInfo) - it seems like there should be generic fallback after you run out of defined date ticks.
I'm going to test that on my artificially Gigantic space map (actual size is somewhere between Large and Huge, did that to balance out eras coming out too fast relative to calendar), Deity - to slow down expansion and Normal - to minimize amount of turns to pass.
Victory Condition will be old simple time limit.
 
I see that we have a Date Rollover when using Mastery Victory. Ugh!
He's been on that game so long that changes since it began probably messed up the date.
 
He's been on that game so long that changes since it began probably messed up the date.
Nope - it happened during very late game of my playtrough - I didn't finished last era, when I reached mastery victory (end of time).
Calendar continued to work as intended for some turns and then it rolled over - I had to add more turns in last "date ticker" in gamespeedinfo xml to keep calendar functioning without rollover.

Code:
        <GameSpeedInfo>
            <Type>GAMESPEED_MARATHON</Type>
            <Description>TXT_KEY_GAMESPEED_MARATHON</Description>
            <Help>TXT_KEY_GAMESPEED_MARATHON_HELP</Help>
            <iGrowthPercent>335</iGrowthPercent>
            <iTrainPercent>300</iTrainPercent>
            <iConstructPercent>335</iConstructPercent>
            <iCreatePercent>335</iCreatePercent>
            <iResearchPercent>1000</iResearchPercent>
            <iBuildPercent>300</iBuildPercent>
            <iImprovementPercent>335</iImprovementPercent>
            <iGreatPeoplePercent>335</iGreatPeoplePercent>
            <iAnarchyPercent>200</iAnarchyPercent>
            <iBarbPercent>335</iBarbPercent>
            <iFeatureProductionPercent>335</iFeatureProductionPercent>
            <iUnitDiscoverPercent>335</iUnitDiscoverPercent>
            <iUnitHurryPercent>335</iUnitHurryPercent>
            <iUnitTradePercent>335</iUnitTradePercent>
            <iUnitGreatWorkPercent>335</iUnitGreatWorkPercent>
            <iGoldenAgePercent>200</iGoldenAgePercent><!-- 16 turns -->
            <iHurryPercent>100</iHurryPercent>
            <iHurryConscriptAngerPercent>335</iHurryConscriptAngerPercent>
            <iInflationPercent>14</iInflationPercent>
            <iInflationOffset>-260</iInflationOffset>
            <iGoldModifier>150</iGoldModifier>
            <iOccupationTurnsPopulationPercent>40</iOccupationTurnsPopulationPercent>
            <iVictoryDelayPercent>335</iVictoryDelayPercent>
            <iTraitGainPercent>1675</iTraitGainPercent>
            <Percents>
                <Percent>
                    <ID>ADAPT_DEFAULT</ID>
                    <iValue>335</iValue>
                </Percent>
            </Percents>
            <GameTurnInfos>
                <GameTurnInfo>
                    <iMonthIncrement>45000</iMonthIncrement>
                    <iTurnsPerIncrement>40</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>1704</iMonthIncrement>
                    <iTurnsPerIncrement>310</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>150</iMonthIncrement>
                    <iTurnsPerIncrement>320</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>144</iMonthIncrement>
                    <iTurnsPerIncrement>215</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>48</iMonthIncrement>
                    <iTurnsPerIncrement>175</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>24</iMonthIncrement>
                    <iTurnsPerIncrement>200</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>12</iMonthIncrement>
                    <iTurnsPerIncrement>200</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>3</iMonthIncrement>
                    <iTurnsPerIncrement>360</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iDayIncrement>75</iDayIncrement>
                    <iTurnsPerIncrement>288</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iDayIncrement>200</iDayIncrement>
                    <iTurnsPerIncrement>270</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>60</iMonthIncrement>
                    <iTurnsPerIncrement>260</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>84</iMonthIncrement>
                    <iTurnsPerIncrement>215</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>120</iMonthIncrement>
                    <iTurnsPerIncrement>200</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>180</iMonthIncrement>
                    <iTurnsPerIncrement>200</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>12</iMonthIncrement>
                    <iTurnsPerIncrement>100</iTurnsPerIncrement>  <----- there I changed it to <iTurnsPerIncrement>1000</iTurnsPerIncrement> or so to fix calendar rollover
                </GameTurnInfo>
            </GameTurnInfos>
        </GameSpeedInfo>

Edit:
Rollover bug happens, when you play past time limit, then save game and load it.
Basically it seems like current date isn't saved, and game tries to calculate it based on your game speed and turn.
If it runs out of turns, then calendar resets every time you load game.
 
Last edited:
Minor display bug? Great General points counter does not update IMMEDIATELY, after archery strike.

Noticed it while I watched IdioticUlt1mara's video:
https://www.twitch.tv/videos/203382098

At about 1:15:37 he range attacks with a large bunch of archers, GG counter stays at 267 and doesn't update to 246 until 1:16:32, after he leaves a city screen.

Another example: At about 1:21:20 he uses a large bunch of archers to range attack a city. GG counter stays 226. He then attacks with a regular unit at about 1:21:32. GG Counter drops to 210.

(EDIT: added IMMEDIATELY)
 
Last edited:
Great General points counter does not update after archery strike.
Not a bug - distance attacks don't contribute to GP pts.

This is how it keeps from being a problem on SM. If a ton of them are split, the damage is lessened because they aren't as strong, and the XP on units are averaged when they merge. But if you split a bunch just to get GG pts, it doesn't work.
 
Nope - it happened during very late game of my playtrough - I didn't finished last era, when I reached mastery victory (end of time).
Calendar continued to work as intended for some turns and then it rolled over - I had to add more turns in last "date ticker" in gamespeedinfo xml to keep calendar functioning without rollover.

Code:
        <GameSpeedInfo>
            <Type>GAMESPEED_MARATHON</Type>
            <Description>TXT_KEY_GAMESPEED_MARATHON</Description>
            <Help>TXT_KEY_GAMESPEED_MARATHON_HELP</Help>
            <iGrowthPercent>335</iGrowthPercent>
            <iTrainPercent>300</iTrainPercent>
            <iConstructPercent>335</iConstructPercent>
            <iCreatePercent>335</iCreatePercent>
            <iResearchPercent>1000</iResearchPercent>
            <iBuildPercent>300</iBuildPercent>
            <iImprovementPercent>335</iImprovementPercent>
            <iGreatPeoplePercent>335</iGreatPeoplePercent>
            <iAnarchyPercent>200</iAnarchyPercent>
            <iBarbPercent>335</iBarbPercent>
            <iFeatureProductionPercent>335</iFeatureProductionPercent>
            <iUnitDiscoverPercent>335</iUnitDiscoverPercent>
            <iUnitHurryPercent>335</iUnitHurryPercent>
            <iUnitTradePercent>335</iUnitTradePercent>
            <iUnitGreatWorkPercent>335</iUnitGreatWorkPercent>
            <iGoldenAgePercent>200</iGoldenAgePercent><!-- 16 turns -->
            <iHurryPercent>100</iHurryPercent>
            <iHurryConscriptAngerPercent>335</iHurryConscriptAngerPercent>
            <iInflationPercent>14</iInflationPercent>
            <iInflationOffset>-260</iInflationOffset>
            <iGoldModifier>150</iGoldModifier>
            <iOccupationTurnsPopulationPercent>40</iOccupationTurnsPopulationPercent>
            <iVictoryDelayPercent>335</iVictoryDelayPercent>
            <iTraitGainPercent>1675</iTraitGainPercent>
            <Percents>
                <Percent>
                    <ID>ADAPT_DEFAULT</ID>
                    <iValue>335</iValue>
                </Percent>
            </Percents>
            <GameTurnInfos>
                <GameTurnInfo>
                    <iMonthIncrement>45000</iMonthIncrement>
                    <iTurnsPerIncrement>40</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>1704</iMonthIncrement>
                    <iTurnsPerIncrement>310</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>150</iMonthIncrement>
                    <iTurnsPerIncrement>320</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>144</iMonthIncrement>
                    <iTurnsPerIncrement>215</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>48</iMonthIncrement>
                    <iTurnsPerIncrement>175</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>24</iMonthIncrement>
                    <iTurnsPerIncrement>200</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>12</iMonthIncrement>
                    <iTurnsPerIncrement>200</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>3</iMonthIncrement>
                    <iTurnsPerIncrement>360</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iDayIncrement>75</iDayIncrement>
                    <iTurnsPerIncrement>288</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iDayIncrement>200</iDayIncrement>
                    <iTurnsPerIncrement>270</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>60</iMonthIncrement>
                    <iTurnsPerIncrement>260</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>84</iMonthIncrement>
                    <iTurnsPerIncrement>215</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>120</iMonthIncrement>
                    <iTurnsPerIncrement>200</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>180</iMonthIncrement>
                    <iTurnsPerIncrement>200</iTurnsPerIncrement>
                </GameTurnInfo>
                <GameTurnInfo>
                    <iMonthIncrement>12</iMonthIncrement>
                    <iTurnsPerIncrement>100</iTurnsPerIncrement>  <----- there I changed it to <iTurnsPerIncrement>1000</iTurnsPerIncrement> or so to fix calendar rollover
                </GameTurnInfo>
            </GameTurnInfos>
        </GameSpeedInfo>

Edit:
Rollover bug happens, when you play past time limit, then save game and load it.
Basically it seems like current date isn't saved, and game tries to calculate it based on your game speed and turn.
If it runs out of turns, then calendar resets every time you load game.
Ok. I'll consider myself corrected.
 
Back
Top Bottom