Final Fixes Reborn

It is loaded in memory, but everything that's in xml is loaded in static Info classes that can not be modified after load, just accessed.
Joy. I am going to have to take a peak at that code. What file is it in?
 
Basically I can find a lot of calls to the generic XML loading function for the events file but I can't actually find where the unchangeable class you mention is declared or where the specific code that translates the XML into events is located. Even if there is just this one ginormous loading function with a trillion ifs or something to differentiate what file its working with I still can't find the actual class it uses. Unless its basically a generic class that is used for everything loaded from XML irregardless of type which sounds stupidly convoluted.
 
In the Readme, it states:
Symptom: frequent crashes or multiplayer desyncs

Cause of crashes: bugs somewhere in the code

Solution: Find the cause of t

Workaround1: change autosaves to 1 every turn (you lose less time at each game crash)

To help us find the bugs: send us OOS files

To help us find the bugs: show python errors ingame
First off, how do I change the autosaves to every turn? Presumably it should also be possible to increase the number of autosaves, but there's nothing in the in-game options menu about them.

Secondly, how do I show Python errors ingame? Again, that ain't in the options menu.

And third - where are the OOS files kept?
 
In the Readme, it states:

First off, how do I change the autosaves to every turn? Presumably it should also be possible to increase the number of autosaves, but there's nothing in the in-game options menu about them.

Secondly, how do I show Python errors ingame? Again, that ain't in the options menu.

And third - where are the OOS files kept?
So I edited the .ini file to allow for autosaves and logging of Python errors.

If the game crashes on saveload, I am asked whether I need to take a normal dump, a full dump, or no dump. If however it's a crash on End of Turn, there's no prompt for that at all. Which, given that the former I can work around whilst the latter I cannot, is useless.
 
no dump anyway, it's not that useful, the save is better
My most recent save. Ending the turn will result in the game crashing. Compared to the save, these logs are after I promoted the worker north of Celo to Skilled I. PythonErr gave me loads of "ERR: Call function canCast failed. Can't find module CvSpellInterface" if that means anything, but that was during the turn which was playable rather than the between-turns which wasn't.

Should note that the only optional modules I have active are Frozen, Greatest People, and More Events.
 

Attachments

So going through the resmgr for the above post (it's in the zip):

RESMGR: Texture civtitle.dds failed to load
RESMGR: Texture ts_e_gov_grnd_NORM.dds failed to load
RESMGR: Texture elfhood_gloss.dds failed to load
RESMGR: Texture gargoyle_alb.dds failed to load
RESMGR: Texture walruspacific_adult_m.dds failed to load
RESMGR: Texture FlagDECAL.dds failed to load
RESMGR: Texture PlayerColor01.tga failed to load
RESMGR: Texture PlayerColor02.tga failed to load
RESMGR: Texture worker_germanic_128_gloss.dds failed to load
Can't tell where these are.

RESMGR: Texture Art/Interface/Buttons/Promotions/BigPinkBox.dds failed to load
The Buttons subfolder doesn't exist. This is from an Ashes of Erebus main folder downloaded via the SVN, by the way.
RESMGR: Texture Modules\NormalModules\BannorChainofCommand\Art\Buttons\Corporal.dds failed to load
Bannor Chain of Command is an inactive module; not sure why it's looking for stuff pertaining to it.
RESMGR: Failed loading file Art/Structures/Improvements/Penguins/pig.kfm. Error message: A file I/O error occurred.
No Structures subfolder. More pertinently, all the others are Texture XXX failed to load; this one's different. Why is that?
 
So going through the resmgr for the above post (it's in the zip):


Can't tell where these are.


The Buttons subfolder doesn't exist. This is from an Ashes of Erebus main folder downloaded via the SVN, by the way.

Bannor Chain of Command is an inactive module; not sure why it's looking for stuff pertaining to it.

No Structures subfolder. More pertinently, all the others are Texture XXX failed to load; this one's different. Why is that?
Rolled back to Turn 258. Still got a crash going into Turn 266.

Here's the resmgr that was produced:
RESMGR: Texture civtitle.dds failed to load
RESMGR: Texture Art/Interface/Buttons/Promotions/BigPinkBox.dds failed to load
RESMGR: Texture Modules\NormalModules\BannorChainofCommand\Art\Buttons\Corporal.dds failed to load
RESMGR: Texture ts_e_gov_grnd_NORM.dds failed to load
RESMGR: Texture elfhood_gloss.dds failed to load
RESMGR: Texture worker_germanic_128_gloss.dds failed to load
RESMGR: Texture gargoyle_alb.dds failed to load
RESMGR: Failed loading file Art/Structures/Improvements/Penguins/pig.kfm. Error message: A file I/O error occurred.
RESMGR: Texture walruspacific_adult_m.dds failed to load
RESMGR: Texture FlagDECAL.dds failed to load
RESMGR: Texture PlayerColor01.tga failed to load
RESMGR: Texture PlayerColor02.tga failed to load
RESMGR: Texture coins_rocksBump.tga failed to load
RESMGR: Texture Tre_shieldBump.tga failed to load
RESMGR: Texture VasesBump.tga failed to load
RESMGR: Texture feathers_64_gloss.dds failed to load
RESMGR: Texture Knight_128.dds failed to load
RESMGR: Texture Knight-gloss-128.dds failed to load
RESMGR: Texture wings_sword.dds failed to load
RESMGR: Texture knight_templar_body_128.dds failed to load
RESMGR: Failed loading file Art/Structures/Improvements/Penguins/pig.kfm. Error message: A file I/O error occurred.
RESMGR: Texture poleflags_gloss.dds failed to load
RESMGR: Texture spikes_gloss.dds failed to load
RESMGR: Texture shoulderpad.dds failed to load
RESMGR: Texture shoulderpad_gloss.dds failed to load
RESMGR: Texture spikes_gloss.dds failed to load
RESMGR: Texture woodstonespear_gloss.dds failed to load
RESMGR: Texture scout_128gloss.dds failed to load
RESMGR: Texture poleflags_gloss.dds failed to load
RESMGR: Texture poleflags_gloss.dds failed to load
RESMGR: Texture WarElephant_Carthage_gloss.dds failed to load
RESMGR: Texture ewc_driver_128.dds failed to load
RESMGR: Texture ClamENV.dds failed to load
RESMGR: Failed loading file Art/Structures/Improvements/Penguins/pig.kfm. Error message: A file I/O error occurred.
RESMGR: Failed loading file Art/Structures/Improvements/Penguins/pig.kfm. Error message: A file I/O error occurred.
RESMGR: Failed loading file Art/Structures/Improvements/Penguins/pig.kfm. Error message: A file I/O error occurred.
RESMGR: Failed loading file Art/Structures/Improvements/Penguins/pig.kfm. Error message: A file I/O error occurred.
RESMGR: Failed loading file Art/Structures/Improvements/Penguins/pig.kfm. Error message: A file I/O error occurred.
RESMGR: Failed loading file Art/Structures/Improvements/Penguins/pig.kfm. Error message: A file I/O error occurred.
Note the final line and the most repeated one: RESMGR: Failed loading file Art/Structures/Improvements/Penguins/pig.kfm. Error message: A file I/O error occurred.

I have a tile of penguins in my lands, on ground that's due to change climate back to temperate. Will check if that has something to do with it.

EDIT: It doesn't. The tile wasn't due to turn temperate until Turn 267, and deleting the penguins in WorldBuilder didn't prevent a crash. More importantly, I got the exact same resmgr file compared to otherwise. But that line clearly has something to do with it - I got that same line in my previous post.
 

Attachments

It is loaded in memory, but everything that's in xml is loaded in static Info classes that can not be modified after load, just accessed.

While investigating the event code, I did find out that the player class has a dictionary of event counters for triggering delayed events (usually an outcome of a regular event). A similar dictionary could probably be used to insert a minimum delay between events.

So going through the resmgr for the above post (it's in the zip):
[...]
Can't tell where these are.
[...]
The Buttons subfolder doesn't exist. This is from an Ashes of Erebus main folder downloaded via the SVN, by the way.

Civ pulls its art assets from a number of sources. The openly visible ones are only a minority, the majority resides in the file Pak0.FPK, which you need an external tool to unpack. Civ also looks in the BtS and core folders for assets which don't exist in the mod folder. So while an error message stating that a resource couldn't load probably means it doesn't exist, that doesn't have to be the case.

Bannor Chain of Command is an inactive module; not sure why it's looking for stuff pertaining to it.

Because some of the main assets reference the BCoC content. Yes, it's poor form, but BI said he planned to merge BCoC into the main eventually. I suggest you activate the Bannor Chain of Command module again.

Rolled back to Turn 258. Still got a crash going into Turn 266.

Here's the resmgr that was produced:

Note the final line and the most repeated one: RESMGR: Failed loading file Art/Structures/Improvements/Penguins/pig.kfm. Error message: A file I/O error occurred.

I have a tile of penguins in my lands, on ground that's due to change climate back to temperate. Will check if that has something to do with it.

EDIT: It doesn't. The tile wasn't due to turn temperate until Turn 267, and deleting the penguins in WorldBuilder didn't prevent a crash. More importantly, I got the exact same resmgr file compared to otherwise. But that line clearly has something to do with it - I got that same line in my previous post.

I am pretty sure the game isn't supposed to crash on a failed resource load, and the fact that this line repeats points in that direction. Furthermore, crashes occur when the DLL ceases to work, and as the DLL also is responsible for logging errors, crashes often leave no traces in the logs. All in all, I suspect you're barking up the wrong tree here.
 
Last edited:
What is the logic that enable or not an unit to upgrade when in the countryside? It seems you need to be what - 3 tiles away max - from a city that can do such upgrade? I'm not too sure in fact because I have some archers that can upg to longbowmen standing on a citadel 15 tiles away from my nearest city.
 
Because some of the main assets reference the BCoC content. Yes, it's poor form, but BI said he planned to merge BCoC into the main eventually. I suggest you activate the Bannor Chain of Command module again.
Re-activated BCoC after a rigamarole involving permissions. There's an ID conflict between that and Greatest People - UNIT_COMMANDER_BANNOR_CAPTAIN.

Have also applied the 4GB patch and after not noticing all this time changed the default graphics processor to my NVidia one. Will try a new game to see if that helps.
 
Shouldn't Arctic Deer and Bison provide bonuses alongside a Hunting Lodge? Currently only Furs and Deer do.

-------------------------

Also, the game still crashed. Made it to turn 291, but game crashed going into Turn 292. PythonErr log is empty, and the last modified log is apparently xml.

Rolled back a turn and it went smoothly.
 

Attachments

Last edited:
the actual class should be called cveventtriggerinfos, the moment it's used is somewhere in CvPlayer, if i remember correctly.
Looking at that class I see no reason why you should not be able to add a new variable and have an accessor for it. All you'd have to do is not define that one as a const in the header. Not unless there is something inside the other code that would reject that.
 
Back
Top Bottom