View Issue Details

IDProjectCategoryLast Update
0023835AI War 2Crash/ExceptionSep 30, 2020 7:50 pm
ReporterDaniexpert Assigned ToChris_McElligottPark  
Severityminor 
Status resolvedResolutionfixed 
Product Version2.601 Savegame Hotfix 
Fixed in Version2.603 Nanocaust And Civvies Strike Back 
Summary0023835: Deserialization loading a save from 2.511
DescriptionI loaded this save once and it worked, but then I got a call and closed the game immediately after starting it, so without making any new save. Later I came back, opened the save and got this error.
I also got another exception that I will post separately.
TagsNo tags attached.

Activities

Daniexpert

Sep 29, 2020 3:00 pm

manager  

deserialization.txt (7,903 bytes)   
9/29/2020 8:55:17 PM  GameEntity_Base deserialization error at stage 5000 from serialized version 2.511 loading into new version 2.601, error: System.NullReferenceException: Object reference not set to an instance of an object
  at Arcen.AIW2.Core.GameEntity_Shot.FinishDeserializeFrom (System.Int32 primaryKeyID, System.String name, Arcen.AIW2.Core.GameEntityTypeData typeData, Arcen.AIW2.Core.Planet Planet, Arcen.AIW2.Core.PlanetFaction Faction, Arcen.Universal.ArcenDeserializationBuffer Buffer) [0x0000c] in <8b3c76aee63c4780893dd448e45c6d61>:0 
  at Arcen.AIW2.Core.GameEntity_Base.StartDeserializeFrom (Arcen.AIW2.Core.Planet Planet, Arcen.AIW2.Core.PlanetFaction Faction, Arcen.Universal.ArcenDeserializationBuffer Buffer, System.String PlaceDeserializingFromForDebugging, System.Boolean HideErrors, System.Boolean& HadCatastrophicFail, System.Boolean IsLoadingForTemplate) [0x00188] in <8b3c76aee63c4780893dd448e45c6d61>:0 
9/29/2020 8:55:17 PM  GameEntity_Squad deserialization error at stage 23000 from serialized version 2.511 loading into new version 2.601, error: System.IndexOutOfRangeException: Index was outside the bounds of the array.
  at Arcen.Universal.ArcenDeserializationBufferModern.ReadString_Condensed (System.String FieldNameForErrors) [0x001af] in <2fa1ae204022415a8c57b156d2929b81>:0 
  at Arcen.AIW2.Core.GameEntity_Squad.DeserializedIntoSelf (System.Int32 primaryKeyID, Arcen.AIW2.Core.GameEntityTypeData typeData, Arcen.AIW2.Core.Planet Planet, Arcen.Universal.ArcenDeserializationBuffer Buffer, System.Boolean HideErrors, System.Boolean IsLoadingTemplate, System.Boolean IsForNetworkSync) [0x00dba] in <8b3c76aee63c4780893dd448e45c6d61>:0 
9/29/2020 8:55:17 PM
Exception occurred during world deserialization:Exception
Will now log details in WorldDeserializationErrors.txt

System.Exception: ERROR: DeserializeExternalDataFrom for EXTERNAL DATA - World debugStage: 4000 Error: System.Exception: Error: DeserializeFrom_Inner DoByIndex=true nameIndex of 55 larger than IndexSerializationInfo.SerializedNamesList.Count of 46 on table: ArcenExternalDataPatternTable PlaceOfDeserializationForDebugging: central arcen external From Version: 2.511
  at Arcen.Universal.ArcenDynamicTable`1[T].DeserializeFrom_Inner (Arcen.Universal.ArcenDeserializationBuffer Buffer, System.String& NameFound, System.Boolean DoByIndex, Arcen.Universal.LookupSwapAllowed SwapAllowed, System.String PlaceOfDeserializationForDebugging, System.String FieldNameForErrors) [0x00200] in <2fa1ae204022415a8c57b156d2929b81>:0 
  at Arcen.Universal.ArcenDynamicTable`1[T].DeserializeByIndex (Arcen.Universal.ArcenDeserializationBuffer Buffer, System.String PlaceOfDeserializationForDebugging, System.String FieldNameForErrors) [0x00001] in <2fa1ae204022415a8c57b156d2929b81>:0 
  at Arcen.Universal.ArcenExternalDataLookup.DeserializeExternalDataFrom (System.Object ParentObject, Arcen.Universal.ArcenDeserializationBuffer Buffer, System.String ExternalDataHeader, System.Boolean IsForPartialSyncDuringMultiplayer) [0x0004e] in <2fa1ae204022415a8c57b156d2929b81>:0 
  at Arcen.Universal.ArcenExternalDataLookup.DeserializeExternalDataFrom (System.Object ParentObject, Arcen.Universal.ArcenDeserializationBuffer Buffer, System.String ExternalDataHeader, System.Boolean IsForPartialSyncDuringMultiplayer) [0x00432] in <2fa1ae204022415a8c57b156d2929b81>:0 
  at Arcen.Universal.World.DeserializedIntoSelf (Arcen.Universal.ArcenDeserializationBuffer Buffer, System.Boolean LoadAsTemplate, System.Boolean HideErrors, System.String& ErrorText, System.Boolean DoPartialSyncForDuringGameplay) [0x006f8] in <2fa1ae204022415a8c57b156d2929b81>:0 
  at Arcen.Universal.World.DeserializeNewWorldFrom (Arcen.Universal.ArcenDeserializationBuffer Buffer, System.Boolean LoadAsTemplate, System.Boolean HideErrors, System.String& ErrorText) [0x00054] in <2fa1ae204022415a8c57b156d2929b81>:0 
  at Arcen.Universal.World.LoadWorldFromDiskInner (System.String SaveName, System.Byte[] Bytes, System.Boolean LoadAsTemplate, System.Boolean HideErrors, Arcen.Universal.GameVersion& FromGameVersion) [0x00287] in <2fa1ae204022415a8c57b156d2929b81>:0 
  at Arcen.Universal.World.LoadWorldFromDiskNoCampaignNameSet (System.String FullSaveName, System.Boolean LoadAsTemplate, System.Boolean HideErrors, Arcen.Universal.GameVersion& FromGameVersion) [0x00070] in <2fa1ae204022415a8c57b156d2929b81>:0 

  at System.Environment.get_StackTrace () [0x00000] in <1f0c1ef1ad524c38bbc5536809c46b48>:0 
  at Arcen.Universal.ArcenDebugging.ArcenDebugLog (System.String Message, Arcen.Universal.DebugLogDestination Destination, System.Boolean IncludeStackTrace, Arcen.Universal.Verbosity Verbosity) [0x00000] in <2fa1ae204022415a8c57b156d2929b81>:0 
  at Arcen.Universal.ArcenDebugging.ArcenDebugLog (System.String Message, Arcen.Universal.DebugLogDestination Destination, Arcen.Universal.Verbosity Verbosity) [0x00000] in <2fa1ae204022415a8c57b156d2929b81>:0 
  at Arcen.Universal.ArcenDebugging.ArcenDebugLog (System.String Message, Arcen.Universal.Verbosity Verbosity) [0x00000] in <2fa1ae204022415a8c57b156d2929b81>:0 
  at Arcen.Universal.World.LoadWorldExceptionHandling (System.Exception e) [0x00000] in <2fa1ae204022415a8c57b156d2929b81>:0 
  at Arcen.Universal.World.LoadWorldFromDiskNoCampaignNameSet (System.String FullSaveName, System.Boolean LoadAsTemplate, System.Boolean HideErrors, Arcen.Universal.GameVersion& FromGameVersion) [0x00000] in <2fa1ae204022415a8c57b156d2929b81>:0 
  at Arcen.Universal.Engine_Universal.LoadGameNoCampaignNameSet_NeverCallDirectly_P1 (System.String FullSaveGameName, System.Boolean LoadAsTemplate, System.Boolean HideErrors) [0x00000] in <2fa1ae204022415a8c57b156d2929b81>:0 
  at Arcen.AIW2.Core.Engine_AIW2.LoadGameNoCampaignNameSet (System.String FullSaveGameName, Arcen.AIW2.Core.StartWorldSource1 StartSource1, Arcen.AIW2.Core.StartWorldSource2 StartSource2) [0x00000] in <8b3c76aee63c4780893dd448e45c6d61>:0 
  at Arcen.AIW2.External.Window_LoadGameMenu+bSavegame.HandleClick_Subclass (MouseHandlingInput input) [0x00000] in <c7802a3eb04744e08b44f261d472374d>:0 
  at Arcen.AIW2.External.ButtonAbstractBase.HandleClick (MouseHandlingInput input) [0x00000] in <c7802a3eb04744e08b44f261d472374d>:0 
  at Arcen.Universal.ArcenUI_Button.OnClick (UnityEngine.EventSystems.PointerEventData eventData) [0x00000] in <2fa1ae204022415a8c57b156d2929b81>:0 
  at Arcen.Universal.ArcenUI_Button.OnPointerClick (UnityEngine.EventSystems.PointerEventData eventData) [0x00000] in <2fa1ae204022415a8c57b156d2929b81>:0 
  at UnityEngine.EventSystems.ExecuteEvents.Execute (UnityEngine.EventSystems.IPointerClickHandler handler, UnityEngine.EventSystems.BaseEventData eventData) [0x00000] in <9bb8f6e40006490da4518a3cf5afe42e>:0 
  at UnityEngine.EventSystems.ExecuteEvents.Execute[T] (UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.ExecuteEvents+EventFunction`1[T1] functor) [0x00000] in <9bb8f6e40006490da4518a3cf5afe42e>:0 
  at UnityEngine.EventSystems.StandaloneInputModule.ReleaseMouse (UnityEngine.EventSystems.PointerEventData pointerEvent, UnityEngine.GameObject currentOverGo) [0x00000] in <9bb8f6e40006490da4518a3cf5afe42e>:0 
  at UnityEngine.EventSystems.StandaloneInputModule.ProcessMousePress (UnityEngine.EventSystems.PointerInputModule+MouseButtonEventData data) [0x00000] in <9bb8f6e40006490da4518a3cf5afe42e>:0 
  at UnityEngine.EventSystems.StandaloneInputModule.ProcessMouseEvent (System.Int32 id) [0x00000] in <9bb8f6e40006490da4518a3cf5afe42e>:0 
  at UnityEngine.EventSystems.StandaloneInputModule.ProcessMouseEvent () [0x00000] in <9bb8f6e40006490da4518a3cf5afe42e>:0 
  at UnityEngine.EventSystems.StandaloneInputModule.Process () [0x00000] in <9bb8f6e40006490da4518a3cf5afe42e>:0 
  at UnityEngine.EventSystems.EventSystem.Update () [0x00000] in <9bb8f6e40006490da4518a3cf5afe42e>:0 
deserialization.txt (7,903 bytes)   

Chris_McElligottPark

Sep 29, 2020 3:27 pm

administrator   ~0058749

I am putting in extra instrumentation to try to fix this, but without the savegame itself it's impossible for me to really know if I get it properly. If you have the save and are able to upload it, that would be appreciated.

Thanks!

Chris_McElligottPark

Sep 29, 2020 3:34 pm

administrator   ~0058750

This is coming next version, and I don't know if it will solve the issue or not, but might help. Based on the logs, this is the only thing I see as the root problem, but I could be way off.

* Put in a lot of extra instrumentation into shot deserialization to make it less likely for there to be any errors in that, and/or to find out where errors are if any happen.
** Also put in some protection against the time-based-pools having spurious nulls in them for whatever reason.

Thanks!

Daniexpert

Sep 29, 2020 7:26 pm

manager   ~0058800

Sorry! My bad! I completely forgot to upload them. The "possibly_broken" is the one I opened and didn't load anymore, whereas the other one is the last save before the broken one, which I didn't open fearing it would break.
possibly_not_broken.save (547,349 bytes)
possibly_broken.save (578,857 bytes)

Chris_McElligottPark

Sep 30, 2020 7:50 pm

administrator   ~0058825

Both load perfectly now, so that's a relief! Thanks for sending those over. :)

Issue History

Date Modified Username Field Change
Sep 29, 2020 3:00 pm Daniexpert New Issue
Sep 29, 2020 3:00 pm Daniexpert File Added: deserialization.txt
Sep 29, 2020 3:27 pm Chris_McElligottPark Assigned To => Chris_McElligottPark
Sep 29, 2020 3:27 pm Chris_McElligottPark Status new => feedback
Sep 29, 2020 3:27 pm Chris_McElligottPark Note Added: 0058749
Sep 29, 2020 3:34 pm Chris_McElligottPark Note Added: 0058750
Sep 29, 2020 7:26 pm Daniexpert File Added: possibly_not_broken.save
Sep 29, 2020 7:26 pm Daniexpert File Added: possibly_broken.save
Sep 29, 2020 7:26 pm Daniexpert Note Added: 0058800
Sep 29, 2020 7:26 pm Daniexpert Status feedback => assigned
Sep 30, 2020 7:50 pm Chris_McElligottPark Status assigned => resolved
Sep 30, 2020 7:50 pm Chris_McElligottPark Resolution open => fixed
Sep 30, 2020 7:50 pm Chris_McElligottPark Fixed in Version => 2.603 Nanocaust And Civvies Strike Back
Sep 30, 2020 7:50 pm Chris_McElligottPark Note Added: 0058825