Single Player bugs and crashes - After the 24th of February 2014

As i was moving my units around, poof crash??? I cant proceed any further, period (RomePM Era Ren)

I have tried now 5 times and same thing


EDIT Now ALL my games are crashing, so it cant be , it has to be in the dll, because they are in waaaay different places??
mini 76981 and AusPM1 Era Modern

I've found two crash spots so far. One of them stems from a python called reference to a null FEAT definition... wherever THAT might be coming from. Anyone been tooling with Feat calls in python by chance? I've protected the dll from the issue on this end but it won't mean it's a real fix and it could get somewhat lost if not repaired at this point (though I added some asserts to let us know when the problem has manifested if running the debugger.) It would at worst now mean whatever it was intended to do both won't work and could cause a slight unnecessary slowdown (probably not noticeable but these things do add up.)

The other has been revealed by a recent fix - I sorta suspected we might see a little of that after the AI barrier to loading units was repaired. Was easily solved though.

EDIT:

More updates: I found a few other problem spots stemming from the recent enabling for AI to load units. Fixed.

The advanced game plays through the round now. Though there ARE a host of other smaller issues that could be addressed that I may try to work on as time permits.


The first game you gave, the Roman one... that one's got an art problem. You pan south on the map a little and it will crash immediately - the crash taking place in the exe. Clearly there's a unit with an issue. It can probably be figured out which one by going through the unit list in the pedia until the crash is triggered there. VERY likely to be a naval unit since it's moving into the sea to pan south. Could be one of the new animals, could be a ship... hard to say since it will crash as soon as it tries to render the graphic. I reloaded for a second test thinking it was a specific unit selected but I was able to select most of the units on the map and when I was headed back to click where I'd crashed the last time it only took panning, not a click, so it wasn't something I could see but rather likely something the map centering had tried to reveal.



I should have my fixes on the SVN here by the end of the evening. Which won't be far off... I'm now officially starting work at 4am now. Ugh.
 
A few errors from the debug dll, i can't find those buildings anywhere:confused:.

Code:
Assert Failed

File:  CvGlobals.cpp
Line:  5239
SVN-Rev:  7725
Expression:  stricmp(szType, "NONE")==0 || strcmp(szType, "")==0
Message:  info type 'BUILDING_KRAKEN_SONG' not found, Current XML file is: modules\MrAzure\Celebration\Festivals\Festivals_CIV4BuildingInfos.xml

----------------------------------------------------------
Code:
Assert Failed

File:  CvGlobals.cpp
Line:  5239
SVN-Rev:  7725
Expression:  stricmp(szType, "NONE")==0 || strcmp(szType, "")==0
Message:  info type 'BUILDING_MINKIE_WHALE_SONG' not found, Current XML file is: modules\MrAzure\Celebration\Festivals\Festivals_CIV4BuildingInfos.xml

----------------------------------------------------------
Code:
Assert Failed

File:  CvGlobals.cpp
Line:  5239
SVN-Rev:  7725
Expression:  stricmp(szType, "NONE")==0 || strcmp(szType, "")==0
Message:  info type 'BUILDING_NARWHAL_SONG' not found, Current XML file is: modules\MrAzure\Celebration\Festivals\Festivals_CIV4BuildingInfos.xml

----------------------------------------------------------
Code:
Assert Failed

File:  CvGlobals.cpp
Line:  5239
SVN-Rev:  7725
Expression:  stricmp(szType, "NONE")==0 || strcmp(szType, "")==0
Message:  info type 'BUILDING_ORCA_SONG' not found, Current XML file is: modules\MrAzure\Celebration\Festivals\Festivals_CIV4BuildingInfos.xml

----------------------------------------------------------
Code:
Assert Failed

File:  CvGlobals.cpp
Line:  5239
SVN-Rev:  7725
Expression:  stricmp(szType, "NONE")==0 || strcmp(szType, "")==0
Message:  info type 'BUILDING_RAY_SONG' not found, Current XML file is: modules\MrAzure\Celebration\Festivals\Festivals_CIV4BuildingInfos.xml

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

Those buildings were anddependencied out in an old version but when I had to reinstall C2C I forgot to move them across. I never put them up on the SVN because of this error which occurs.

If you are going to insist that this is a real error rather than an error in the way the WoC processing is being done in C2C then I will remove them.

The error is caused because the default building mentioned in the building class is not being found. It would be helpful in this and the unit case if the file that contained the class definition was being used in the message rather than the last building infos file looked at. In these cases that is always the last one loaded.
 
latest SVN CTD i tried 1 move and poof crash. min 7730 and RomePG


Second one, (pic 1) i keep getting this message each and EVERY turn?? twice ?????AusPM1

Plus again for the umpteenth time i keep getting this python error DH what is this and pls fix thx,

Traceback (most recent call last):
File "BugEventManager", line 363, in _handleDefaultEvent
File "Revolution", line 624, in onEndPlayerTurn
File "Revolution", line 1070, in updatePlayerRevolution
File "Revolution", line 2309, in checkForRevolution
File "Revolution", line 3731, in pickRevolutionStyle
File "Revolution", line 4107, in chooseRevolutionCiv
RuntimeError: unidentifiable C++ exception
 
The error is caused because the default building mentioned in the building class is not being found. It would be helpful in this and the unit case if the file that contained the class definition was being used in the message rather than the last building infos file looked at. In these cases that is always the last one loaded.


The error message is wrong but to display the correct file in that case someone has to rewrite the xml loading. The easier solution is no longer displaying the file in the error message.


If you are going to insist that this is a real error rather than an error in the way the WoC processing is being done in C2C then I will remove them.

I just posted it because i did not find the buildings anywhere, i did not know it was intended.
For me this is a error because i don't see the AndDependencyTypes used in e.g. the BUILDINGCLASS_KRAKEN_SONG.
How should the dll know why something is missing? Was a module turned off or is there a typo somewhere or was something removed or.............
There might mot be a CTD or another error but how to detect things like typos????

I know the AndDependencyTypes tag has some limitations by design.
One problem is that you can't use a Dependency to BUILDING_KRAKEN_SONG in the BuildingClass but have you tried a Dependency to the ART_DEF or something else.
 
I just posted it because i did not find the buildings anywhere, i did not know it was intended.
For me this is a error because i don't see the AndDependencyTypes used in e.g. the BUILDINGCLASS_KRAKEN_SONG.
How should the dll know why something is missing? Was a module turned off or is there a typo somewhere or was something removed or.............
There might mot be a CTD or another error but how to detect things like typos????

I know the AndDependencyTypes tag has some limitations by design.
One problem is that you can't use a Dependency to BUILDING_KRAKEN_SONG in the BuildingClass but have you tried a Dependency to the ART_DEF or something else.

The problem is that if any and dependency turns the infos object off then the class will report that error. If I put any and dependency in the class then the infos object will cause an error because the existence of the class is checked for before the and dependency in the infos object is tested for.

This means that and dependencies which remove an object are no longer supported in C2C. Ones that change the values of an object are still supported.

I wonder if the non-WoC Afforess tags of GameOption and NotGame Option have the same problems since they are only on the infos and not the class iirc.
 
latest SVN CTD i tried 1 move and poof crash. min 7730 and RomePG


Second one, (pic 1) i keep getting this message each and EVERY turn?? twice ?????AusPM1

Plus again for the umpteenth time i keep getting this python error DH what is this and pls fix thx,

Traceback (most recent call last):
File "BugEventManager", line 363, in _handleDefaultEvent
File "Revolution", line 624, in onEndPlayerTurn
File "Revolution", line 1070, in updatePlayerRevolution
File "Revolution", line 2309, in checkForRevolution
File "Revolution", line 3731, in pickRevolutionStyle
File "Revolution", line 4107, in chooseRevolutionCiv
RuntimeError: unidentifiable C++ exception

As explained above, the Rome game crash is an art problem with a unit graphic I believe. Happens as soon as you pan a little south and the crash is in the exe so I believe its a failure to render something on the map.

Again, the python is an odd problem where it's checking for an event that is somehow getting an index value but that value is out of range so perhaps its a loop that isn't limited to the number of event trigger indexes?
 
The problem is that if any and dependency turns the infos object off then the class will report that error. If I put any and dependency in the class then the infos object will cause an error because the existence of the class is checked for before the and dependency in the infos object is tested for.

The whole xml loading code including the WoC part is a complete mess in my eyes, i don't know how the original version was but since then alot of people messed around there. I just don't have the time and energy to fix it.
 
If I put any and dependency in the class then the infos object will cause an error because the existence of the class is checked for before the and dependency in the infos object is tested for.
That's a fairly specific and function breaking problem true.

I wonder if that would be fixed by simply moving the And Dependency loading operation to take place earlier... Problem is, I'm not quite sure where and how the AndDependency tag is even loaded and utilized. I'll have to take a look since that comment did register a sudden understanding of the heart of the problem here.

EDIT: OK, took a quick look and I'm wondering... is it only buildings and units causing this issue?

@Alberts/Koshling (if you're listening): A while back Koshling split up buildings and units from the main CvInfos.cpp into their own files. We had no choice in that but I wonder...

AndDependencies are loaded as part of the CvInfosBase class and I would THINK that this would be loaded before EVERYTHING else about the Unit and/or Building. But if putting an AndDependency on another class 'type' object (assuming we even have 'class' objects on anything BUT units and buildings which I'm not sure we do) is causing a problem for the base building or unit then apparently the buildingclass/unitclass tag is being loaded BEFORE CvInfosBase which is really quite problematic and it makes me wonder if it has something to do with the splitting up of the units and buildings from the main infos.cpp page?
 
@ DH

There is a UNIT_FREIGHT in the core unitclassinfo, and a UNIT_FREIGHT in the "modules" unitinfos?? shouldn't they be in the same area?? Because i am picking these up as an error??

@ TB
I am getting this: UNITCOMBAT_AIR_RECON not in the Unitcombatinfos?? But is in the UnitInfos?

and UNITAI_PILLAGE_COUNTER in the UnitInfos but not in the unitai area??
also UNITAI_HUNTER, UNITAI_GREAT_HUNTER
 
@ DH

There is a UNIT_FREIGHT in the core unitclassinfo, and a UNIT_FREIGHT in the "modules" unitinfos?? shouldn't they be in the same area?? Because i am picking these up as an error??

@ TB
I am getting this: UNITCOMBAT_AIR_RECON not in the Unitcombatinfos?? But is in the UnitInfos?

and UNITAI_PILLAGE_COUNTER in the UnitInfos but not in the unitai area??
also UNITAI_HUNTER, UNITAI_GREAT_HUNTER

You'll have to show me the error messages I think. I'm not 100% following you - not enough to debug without those messages with any ease anyhow.
 
You'll have to show me the error messages I think. I'm not 100% following you - not enough to debug without those messages with any ease anyhow.

Did kind of error messaging:


UndefinedSymbol: UNITCOMBAT_AIR_RECON
Used: fury units/civ4unitinfos.xml at line 34736
Used: fury units/civ4unitinfos.xml at line 52958

UndefinedSymbol: UNITAI_GREAT_HUNTER
Used: fury units/civ4unitinfos.xml at line 58340
Used: fury units/civ4unitinfos.xml at line 58347
UndefinedSymbol: UNITAI_HUNTER
Used: fury units/civ4unitinfos.xml at line 6435
Used: fury units/civ4unitinfos.xml at line 6636
Used: fury units/civ4unitinfos.xml at line 6829
Used: fury units/civ4unitinfos.xml at line 7375
Used: fury units/civ4unitinfos.xml at line 7393
Used: fury units/civ4unitinfos.xml at line 7470
Used: fury units/civ4unitinfos.xml at line 7482
Used: fury units/civ4unitinfos.xml at line 7573
Used: fury units/civ4unitinfos.xml at line 7591
Used: fury units/civ4unitinfos.xml at line 7686
Used: fury units/civ4unitinfos.xml at line 7704
Used: fury units/civ4unitinfos.xml at line 7798
Used: fury units/civ4unitinfos.xml at line 7811
Used: fury units/civ4unitinfos.xml at line 90739
Used: fury units/civ4unitinfos.xml at line 90795
Used: fury units/civ4unitinfos.xml at line 90799
Used: fury units/civ4unitinfos.xml at line 100912
Used: fury units/civ4unitinfos.xml at line 100966
Used: fury units/civ4unitinfos.xml at line 101104
Used: fury units/civ4unitinfos.xml at line 101122
UndefinedSymbol: UNITAI_PILLAGE_COUNTER
Used: fury units/civ4unitinfos.xml at line 71469
Used: fury units/civ4unitinfos.xml at line 71535
Used: fury units/civ4unitinfos.xml at line 71685
Used: fury units/civ4unitinfos.xml at line 71751
Used: fury units/civ4unitinfos.xml at line 71906
Used: fury units/civ4unitinfos.xml at line 71976
Used: fury units/civ4unitinfos.xml at line 72128
Used: fury units/civ4unitinfos.xml at line 72198
Used: fury units/civ4unitinfos.xml at line 72378
Used: fury units/civ4unitinfos.xml at line 72442
Used: fury units/civ4unitinfos.xml at line 74817
Used: fury units/civ4unitinfos.xml at line 89010
Used: fury units/civ4unitinfos.xml at line 91068

If you read what i wrote slooowly you'll understand . . in my other post

btw does the cache serve any purpose any longer??
 
That's a fairly specific and function breaking problem true.

I wonder if that would be fixed by simply moving the And Dependency loading operation to take place earlier... Problem is, I'm not quite sure where and how the AndDependency tag is even loaded and utilized. I'll have to take a look since that comment did register a sudden understanding of the heart of the problem here.

EDIT: OK, took a quick look and I'm wondering... is it only buildings and units causing this issue?

@Alberts/Koshling (if you're listening): A while back Koshling split up buildings and units from the main CvInfos.cpp into their own files. We had no choice in that but I wonder...

AndDependencies are loaded as part of the CvInfosBase class and I would THINK that this would be loaded before EVERYTHING else about the Unit and/or Building. But if putting an AndDependency on another class 'type' object (assuming we even have 'class' objects on anything BUT units and buildings which I'm not sure we do) is causing a problem for the base building or unit then apparently the buildingclass/unitclass tag is being loaded BEFORE CvInfosBase which is really quite problematic and it makes me wonder if it has something to do with the splitting up of the units and buildings from the main infos.cpp page?

Splitting the files is no problem why should it be? the old CvInfos.cpp was to long for the compiler and Koshling had to split it. The tags in the CvInfosBase class are always loaded first for every Cv*Info object because CvInfosBase is the parent C++ class for all of them.

I had almost finished a plan how to rework the xml loading but i trashed it because i was burned out:(:(.
 
I think we don't really need it anymore because the xml loading is alot faster now and all the cache does is causing problems from time to time.

My point exactly, because even if you change a to b in anything, you have to delete ALL of the cache anyways, seems monotonous??:dunno:

I had almost finished a plan how to rework the xml loading but i trashed it because i was burned out:(:(.

We all get that way sooner or later, just got to persevere is all.
 
After updating from SVN 7718 to 7733 I'm no longer able to start the game. The loading popup crashes after getting to [C2C] Init XML (uncached). Attached my logs.
 

Attachments

After updating from SVN 7718 to 7733 I'm no longer able to start the game. The loading popup crashes after getting to [C2C] Init XML (uncached). Attached my logs.

Ironically given the discussion above: Delete the Cache.
 
Did kind of error messaging:


UndefinedSymbol: UNITCOMBAT_AIR_RECON
Used: fury units/civ4unitinfos.xml at line 34736
Used: fury units/civ4unitinfos.xml at line 52958

UndefinedSymbol: UNITAI_GREAT_HUNTER
Used: fury units/civ4unitinfos.xml at line 58340
Used: fury units/civ4unitinfos.xml at line 58347
UndefinedSymbol: UNITAI_HUNTER
Used: fury units/civ4unitinfos.xml at line 6435
Used: fury units/civ4unitinfos.xml at line 6636
Used: fury units/civ4unitinfos.xml at line 6829
Used: fury units/civ4unitinfos.xml at line 7375
Used: fury units/civ4unitinfos.xml at line 7393
Used: fury units/civ4unitinfos.xml at line 7470
Used: fury units/civ4unitinfos.xml at line 7482
Used: fury units/civ4unitinfos.xml at line 7573
Used: fury units/civ4unitinfos.xml at line 7591
Used: fury units/civ4unitinfos.xml at line 7686
Used: fury units/civ4unitinfos.xml at line 7704
Used: fury units/civ4unitinfos.xml at line 7798
Used: fury units/civ4unitinfos.xml at line 7811
Used: fury units/civ4unitinfos.xml at line 90739
Used: fury units/civ4unitinfos.xml at line 90795
Used: fury units/civ4unitinfos.xml at line 90799
Used: fury units/civ4unitinfos.xml at line 100912
Used: fury units/civ4unitinfos.xml at line 100966
Used: fury units/civ4unitinfos.xml at line 101104
Used: fury units/civ4unitinfos.xml at line 101122
UndefinedSymbol: UNITAI_PILLAGE_COUNTER
Used: fury units/civ4unitinfos.xml at line 71469
Used: fury units/civ4unitinfos.xml at line 71535
Used: fury units/civ4unitinfos.xml at line 71685
Used: fury units/civ4unitinfos.xml at line 71751
Used: fury units/civ4unitinfos.xml at line 71906
Used: fury units/civ4unitinfos.xml at line 71976
Used: fury units/civ4unitinfos.xml at line 72128
Used: fury units/civ4unitinfos.xml at line 72198
Used: fury units/civ4unitinfos.xml at line 72378
Used: fury units/civ4unitinfos.xml at line 72442
Used: fury units/civ4unitinfos.xml at line 74817
Used: fury units/civ4unitinfos.xml at line 89010
Used: fury units/civ4unitinfos.xml at line 91068

If you read what i wrote slooowly you'll understand . . in my other post

btw does the cache serve any purpose any longer??
The report itself as displayed does help a lot. It's not that I was totally lost as to what you were saying but as you can see there's line definitions to look into and it's easier to be clear about what its saying to simply share what it's actually saying.

What I'm wondering here is how those unitcombats and ais are suddenly not being defined in the assets. They are valid and used in code and xml so is this a matter of some new attempt to modularize I'm not aware of? Did someone get a little delete happy in the xml somewhere?

I'll investigate as time permits which isn't permitting much at the moment.


@SO & Sparth:
I did look into the suspected unit art problem we have somewhere that is the likely suspect in your rome game crash and:

1) The Pheasant is an Air domain??? That could be an issue for a spawned animal that wouldn't have anywhere to land.

2) Dingo and Subdued Dingo - total no-shows in the 3d graphic but doesn't crash the pedia page.

3) Hashishin is a pink blob.

4) Propeller Naval Fighter is a pink blob.

5) Shaolin Monk takes the highest problematic suspect role as its art define seems to completely crash the pedia page - this suggests it may well crash the game if it's attempted to be rendered on the map.

All other units seem pretty straight though I didn't check the heroes. And problems in the alternative culture definitions may lurk as I was only checking the pedia itself.
 
@ DH

There is a UNIT_FREIGHT in the core unitclassinfo, and a UNIT_FREIGHT in the "modules" unitinfos?? shouldn't they be in the same area?? Because i am picking these up as an error??

No idea why you are picking it up as an error. If it was then almost all the buildings would be showing up as well since they were defined in core then Hydro made his modifications in his modules so we left the building class definitions in the core but the building info is in the modules.
 
Splitting the files is no problem why should it be? the old CvInfos.cpp was to long for the compiler and Koshling had to split it. The tags in the CvInfosBase class are always loaded first for every Cv*Info object because CvInfosBase is the parent C++ class for all of them.

That's what I thought... so why would the UnitClass definition be loaded before the AndDependancy tag? The UnitClass definition tag is a part of CvUnitInfo, not CvInfosBase right? CvInfosBase should thus load first and it thus should not load the CvUnitInfo at all if the dependency found there is missing right?

And yeah, the cure for burnout is to step away for a minute - never plan to never return - this stuff is too addictive! lol I also... REALLY appreciate you being with us man! Probably more than any of us because I feel MUCH better having an experienced hand in the works to help with those things I'm totally stumped on if nothing else. The feeling of being alone to face this monster is... almost enough to walk myself. Frustratingly so too considering how much more I still want to see through to be accomplished! That said I can fully understand the frequent feelings of 'what am I DOING THIS for!?!' that can creep up.
 
Back
Top Bottom