View Issue Details

IDProjectCategoryLast Update
0025717AI War 2Crash/ExceptionNov 5, 2021 12:39 pm
ReporterBadgerBadger Assigned ToChris_McElligottPark  
Severityminor 
Status resolvedResolutionfixed 
Product VersionBeta 3.742 "Classic Map" For DLC1 
Fixed in VersionBeta 3.746 Phantom Ship Syndrome 
Summary0025717: Exception in unit tooltip generation
Description
10/29/2021 6:46:31 PM 3.741 SINGLEP Exception in entity tooltip text generation at stage 5:System.NullReferenceException: Object reference not set to an instance of an object
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo.GetTextForEntity (Arcen.Universal.ArcenDoubleCharacterBuffer buffer, Arcen.AIW2.Core.GameEntity_Base EntityBase, Arcen.AIW2.Core.FleetMembership MembershipBase, Arcen.AIW2.Core.GameEntityTypeData TypeDataOrNull, Arcen.AIW2.Core.Fleet FleetToUseOrNull, System.String AltTextColorIfUsed, System.String AltTextInPlaceOfFleetAndOwnerOrBlank, System.Int32 OptionalCountToShow, Arcen.AIW2.Core.Faction ForFactionOrNull, System.Byte OptionalForMarkLevel, Arcen.AIW2.Core.FromSidebarType IsFromSidebarType, Arcen.AIW2.External.ShipExtraDetailFlags DetailFlags, System.Single PositionScaleMultiplier, System.Boolean IsBeingDrawnInPopupWindowRatherThanTooltip) [0x00278] in <3dd16d06478e4f419ddb70f54c11e83d>:0
  at System.Environment.get_StackTrace () [0x00000] in <695d1cc93cca45069c528c15c9fdd749>:0
  at Arcen.Universal.ArcenDebugging.ArcenLog_InnerOnMainThreadOnly (System.String Message, Arcen.Universal.DebugLogDestination Destination, System.Boolean IncludeStackTrace, Arcen.Universal.Verbosity Verbosity, System.DateTime Timestamp) [0x00197] in /home/arcengames_aiw-ultra/CodeCrossProject/ArcenUniversal/src/UtilityLibraries/ArcenDebugging.cs:398
  at Arcen.Universal.ArcenDebugging.ArcenDebugLog (System.String Message, Arcen.Universal.Verbosity Verbosity) [0x00038] in /home/arcengames_aiw-ultra/CodeCrossProject/ArcenUniversal/src/UtilityLibraries/ArcenDebugging.cs:262
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo.GetTextForEntity (Arcen.Universal.ArcenDoubleCharacterBuffer buffer, Arcen.AIW2.Core.GameEntity_Base EntityBase, Arcen.AIW2.Core.FleetMembership MembershipBase, Arcen.AIW2.Core.GameEntityTypeData TypeDataOrNull, Arcen.AIW2.Core.Fleet FleetToUseOrNull, System.String AltTextColorIfUsed, System.String AltTextInPlaceOfFleetAndOwnerOrBlank, System.Int32 OptionalCountToShow, Arcen.AIW2.Core.Faction ForFactionOrNull, System.Byte OptionalForMarkLevel, Arcen.AIW2.Core.FromSidebarType IsFromSidebarType, Arcen.AIW2.External.ShipExtraDetailFlags DetailFlags, System.Single PositionScaleMultiplier, System.Boolean IsBeingDrawnInPopupWindowRatherThanTooltip) [0x00000] in <3dd16d06478e4f419ddb70f54c11e83d>:0
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo.GetTextForEntity (Arcen.Universal.ArcenDoubleCharacterBuffer buffer, Arcen.AIW2.Core.GameEntity_Base EntityBase, Arcen.AIW2.Core.FleetMembership MembershipBase, Arcen.AIW2.Core.GameEntityTypeData TypeDataOrNull, System.Int32 OptionalCountToShow, Arcen.AIW2.Core.Faction ForFactionOrNull, System.Byte OptionalForMarkLevel, Arcen.AIW2.Core.FromSidebarType IsFromSidebarType, Arcen.AIW2.External.ShipExtraDetailFlags DetailFlags, System.Single PositionScaleMultiplier, System.Boolean IsBeingDrawnInPopupWindowRatherThanTooltip) [0x00000] in <3dd16d06478e4f419ddb70f54c11e83d>:0
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo+bPanel.GetTextToRender (Arcen.Universal.ArcenDoubleCharacterBuffer buffer) [0x00000] in <3dd16d06478e4f419ddb70f54c11e83d>:0
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo+bPanel.UpdateContentFromVolatile (Arcen.Universal.ArcenUIWrapperedUnityImage Image, Arcen.Universal.ArcenUI_Image+SubImageGroup _SubImages, Arcen.Universal.SubTextGroup _SubTexts) [0x00000] in <3dd16d06478e4f419ddb70f54c11e83d>:0
  at Arcen.Universal.ArcenUI_ImageButton.OnUpdateVolatileDataFromMainThread () [0x000a6] in /home/arcengames_aiw-ultra/CodeCrossProject/ArcenUniversal/src/ArcenUI/ArcenUI_ImageButton.cs:308
  at Arcen.Universal.ArcenUI_Window.OnUpdateVolatileDataFromMainThread () [0x00072] in /home/arcengames_aiw-ultra/CodeCrossProject/ArcenUniversal/src/ArcenUI/ArcenUI_Window.cs:432
  at Arcen.Universal.ArcenUI.OnUpdateVolatileDataFromMainThread () [0x0001c] in /home/arcengames_aiw-ultra/CodeCrossProject/ArcenUniversal/src/ArcenUI/ArcenUI.cs:424
  at Arcen.Universal.Engine_Universal.OnUpdateFromMainThread () [0x0060e] in /home/arcengames_aiw-ultra/CodeCrossProject/ArcenUniversal/src/Engine_Universal.cs:1435
  at Arcen.AIW2.Core.ArcenGameControllerBase.BaseUpdate () [0x000db] in /home/arcengames_aiw-ultra/CodeMain/ArcenAIW2Core/src/OutsideAPIs/ArcenGameControllerBase.cs:93

Hit on most recent svn
TagsNo tags attached.

Relationships

related to 0025719 resolvedChris_McElligottPark Exception in entity tooltip text generation 

Activities

Daniexpert

Oct 30, 2021 5:06 pm

manager   ~0063073

Yeah, this one is stupidly annoying because it pops up constantly and I can't ignore reporting because I'll miss all the new errors

Daniexpert

Oct 31, 2021 1:03 pm

manager   ~0063093

I'll keep adding all the DEBUG:HOVER I find here
anotherEntity.txt (998 bytes)   
DEBUG:HOVER Emerald Blaster #10325 IsInPool:True InQuarantine:True HasBeenRemoveFromSim:True
Exception in entity tooltip text generation at stage 5:System.NullReferenceException: Object reference not set to an instance of an object
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo.GetTextForEntity (Arcen.Universal.ArcenDoubleCharacterBuffer buffer, Arcen.AIW2.Core.GameEntity_Squad relatedSquadOrNull, Arcen.AIW2.Core.FleetMembership MembershipBase, Arcen.AIW2.Core.GameEntityTypeData TypeDataOrNull, Arcen.AIW2.Core.Fleet FleetToUseOrNull, System.String AltTextColorIfUsed, System.String AltTextInPlaceOfFleetAndOwnerOrBlank, System.Int32 OptionalCountToShow, Arcen.AIW2.Core.Faction ForFactionOrNull, System.Byte OptionalForMarkLevel, Arcen.AIW2.Core.FromSidebarType IsFromSidebarType, Arcen.AIW2.External.ShipExtraDetailFlags DetailFlags, System.Single PositionScaleMultiplier, System.Boolean IsBeingDrawnInPopupWindowRatherThanTooltip) [0x00362] in <a5c3e9264b534f93820557f2a34ae55b>:0 
anotherEntity.txt (998 bytes)   

Daniexpert

Oct 31, 2021 1:12 pm

manager   ~0063095

I already posted this one on discord, for clarity adding here.
Error.txt (4,180 bytes)   
10/31/2021 5:29:56 PM	3.742	SINGLEP	DEBUG:HOVER Emerald Blaster #10325 IsInPool:True InQuarantine:True HasBeenRemoveFromSim:True
10/31/2021 5:29:56 PM	3.742	SINGLEP	Exception in entity tooltip text generation at stage 5:System.NullReferenceException: Object reference not set to an instance of an object
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo.GetTextForEntity (Arcen.Universal.ArcenDoubleCharacterBuffer buffer, Arcen.AIW2.Core.GameEntity_Squad relatedSquadOrNull, Arcen.AIW2.Core.FleetMembership MembershipBase, Arcen.AIW2.Core.GameEntityTypeData TypeDataOrNull, Arcen.AIW2.Core.Fleet FleetToUseOrNull, System.String AltTextColorIfUsed, System.String AltTextInPlaceOfFleetAndOwnerOrBlank, System.Int32 OptionalCountToShow, Arcen.AIW2.Core.Faction ForFactionOrNull, System.Byte OptionalForMarkLevel, Arcen.AIW2.Core.FromSidebarType IsFromSidebarType, Arcen.AIW2.External.ShipExtraDetailFlags DetailFlags, System.Single PositionScaleMultiplier, System.Boolean IsBeingDrawnInPopupWindowRatherThanTooltip) [0x00362] in <a5c3e9264b534f93820557f2a34ae55b>:0 
  at System.Environment.get_StackTrace () [0x00000] in <695d1cc93cca45069c528c15c9fdd749>:0 
  at Arcen.Universal.ArcenDebugging.ArcenLog_InnerOnMainThreadOnly (System.String Message, Arcen.Universal.DebugLogDestination Destination, System.Boolean IncludeStackTrace, Arcen.Universal.Verbosity Verbosity, System.DateTime Timestamp) [0x00000] in <f31cbb97ef434f5f870424a18e89279b>:0 
  at Arcen.Universal.ArcenDebugging.ArcenDebugLog (System.String Message, Arcen.Universal.Verbosity Verbosity) [0x00000] in <f31cbb97ef434f5f870424a18e89279b>:0 
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo.GetTextForEntity (Arcen.Universal.ArcenDoubleCharacterBuffer buffer, Arcen.AIW2.Core.GameEntity_Squad relatedSquadOrNull, Arcen.AIW2.Core.FleetMembership MembershipBase, Arcen.AIW2.Core.GameEntityTypeData TypeDataOrNull, Arcen.AIW2.Core.Fleet FleetToUseOrNull, System.String AltTextColorIfUsed, System.String AltTextInPlaceOfFleetAndOwnerOrBlank, System.Int32 OptionalCountToShow, Arcen.AIW2.Core.Faction ForFactionOrNull, System.Byte OptionalForMarkLevel, Arcen.AIW2.Core.FromSidebarType IsFromSidebarType, Arcen.AIW2.External.ShipExtraDetailFlags DetailFlags, System.Single PositionScaleMultiplier, System.Boolean IsBeingDrawnInPopupWindowRatherThanTooltip) [0x00000] in <a5c3e9264b534f93820557f2a34ae55b>:0 
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo.GetTextForEntity (Arcen.Universal.ArcenDoubleCharacterBuffer buffer, Arcen.AIW2.Core.GameEntity_Squad relatedSquadOrNull, Arcen.AIW2.Core.FleetMembership MembershipBase, Arcen.AIW2.Core.GameEntityTypeData TypeDataOrNull, System.Int32 OptionalCountToShow, Arcen.AIW2.Core.Faction ForFactionOrNull, System.Byte OptionalForMarkLevel, Arcen.AIW2.Core.FromSidebarType IsFromSidebarType, Arcen.AIW2.External.ShipExtraDetailFlags DetailFlags, System.Single PositionScaleMultiplier, System.Boolean IsBeingDrawnInPopupWindowRatherThanTooltip) [0x00000] in <a5c3e9264b534f93820557f2a34ae55b>:0 
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo+bPanel.GetTextToRender (Arcen.Universal.ArcenDoubleCharacterBuffer buffer) [0x00000] in <a5c3e9264b534f93820557f2a34ae55b>:0 
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo+bPanel.UpdateContentFromVolatile (Arcen.Universal.ArcenUIWrapperedUnityImage Image, Arcen.Universal.ArcenUI_Image+SubImageGroup _SubImages, Arcen.Universal.SubTextGroup _SubTexts) [0x00000] in <a5c3e9264b534f93820557f2a34ae55b>:0 
  at Arcen.Universal.ArcenUI_ImageButton.OnUpdateVolatileDataFromMainThread () [0x00000] in <f31cbb97ef434f5f870424a18e89279b>:0 
  at Arcen.Universal.ArcenUI_Window.OnUpdateVolatileDataFromMainThread () [0x00000] in <f31cbb97ef434f5f870424a18e89279b>:0 
  at Arcen.Universal.ArcenUI.OnUpdateVolatileDataFromMainThread () [0x00000] in <f31cbb97ef434f5f870424a18e89279b>:0 
  at Arcen.Universal.Engine_Universal.OnUpdateFromMainThread () [0x00000] in <f31cbb97ef434f5f870424a18e89279b>:0 
  at Arcen.AIW2.Core.ArcenGameControllerBase.BaseUpdate () [0x00000] in <acbd02ce17884e6c9d3e771d09b54f11>:0 
  at ArcenGameController.Update () [0x00000] in <a6cba12c7f0b4f47a1ff69cb43a03552>:0 
Error.txt (4,180 bytes)   

Daniexpert

Oct 31, 2021 1:21 pm

manager   ~0063097

Same as the above one, but with Sapper Beachhead Constructor

BadgerBadger

Nov 1, 2021 1:23 am

manager   ~0063101

This happens a lot. I'd swear it happens sometimes when my cursor isn't actually on anything.

UFO

Nov 1, 2021 6:47 am

reporter   ~0063113

Same exception

11/1/2021 2:40:41 PM 3.742 SINGLEP Exception in entity tooltip text generation at stage 5:System.NullReferenceException: Object reference not set to an instance of an object
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo.GetTextForEntity (Arcen.Universal.ArcenDoubleCharacterBuffer buffer, Arcen.AIW2.Core.GameEntity_Squad relatedSquadOrNull, Arcen.AIW2.Core.FleetMembership MembershipBase, Arcen.AIW2.Core.GameEntityTypeData TypeDataOrNull, Arcen.AIW2.Core.Fleet FleetToUseOrNull, System.String AltTextColorIfUsed, System.String AltTextInPlaceOfFleetAndOwnerOrBlank, System.Int32 OptionalCountToShow, Arcen.AIW2.Core.Faction ForFactionOrNull, System.Byte OptionalForMarkLevel, Arcen.AIW2.Core.FromSidebarType IsFromSidebarType, Arcen.AIW2.External.ShipExtraDetailFlags DetailFlags, System.Single PositionScaleMultiplier, System.Boolean IsBeingDrawnInPopupWindowRatherThanTooltip) [0x002b8] in <67ec34e733814916a3512bb725c75ff5>:0
  at System.Environment.get_StackTrace () [0x00000] in <695d1cc93cca45069c528c15c9fdd749>:0
  at Arcen.Universal.ArcenDebugging.ArcenLog_InnerOnMainThreadOnly (System.String Message, Arcen.Universal.DebugLogDestination Destination, System.Boolean IncludeStackTrace, Arcen.Universal.Verbosity Verbosity, System.DateTime Timestamp) [0x00000] in <c6fac3673f2e4076878f034fc63d934f>:0
  at Arcen.Universal.ArcenDebugging.ArcenDebugLog (System.String Message, Arcen.Universal.Verbosity Verbosity) [0x00000] in <c6fac3673f2e4076878f034fc63d934f>:0
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo.GetTextForEntity (Arcen.Universal.ArcenDoubleCharacterBuffer buffer, Arcen.AIW2.Core.GameEntity_Squad relatedSquadOrNull, Arcen.AIW2.Core.FleetMembership MembershipBase, Arcen.AIW2.Core.GameEntityTypeData TypeDataOrNull, Arcen.AIW2.Core.Fleet FleetToUseOrNull, System.String AltTextColorIfUsed, System.String AltTextInPlaceOfFleetAndOwnerOrBlank, System.Int32 OptionalCountToShow, Arcen.AIW2.Core.Faction ForFactionOrNull, System.Byte OptionalForMarkLevel, Arcen.AIW2.Core.FromSidebarType IsFromSidebarType, Arcen.AIW2.External.ShipExtraDetailFlags DetailFlags, System.Single PositionScaleMultiplier, System.Boolean IsBeingDrawnInPopupWindowRatherThanTooltip) [0x00000] in <67ec34e733814916a3512bb725c75ff5>:0
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo.GetTextForEntity (Arcen.Universal.ArcenDoubleCharacterBuffer buffer, Arcen.AIW2.Core.GameEntity_Squad relatedSquadOrNull, Arcen.AIW2.Core.FleetMembership MembershipBase, Arcen.AIW2.Core.GameEntityTypeData TypeDataOrNull, System.Int32 OptionalCountToShow, Arcen.AIW2.Core.Faction ForFactionOrNull, System.Byte OptionalForMarkLevel, Arcen.AIW2.Core.FromSidebarType IsFromSidebarType, Arcen.AIW2.External.ShipExtraDetailFlags DetailFlags, System.Single PositionScaleMultiplier, System.Boolean IsBeingDrawnInPopupWindowRatherThanTooltip) [0x00000] in <67ec34e733814916a3512bb725c75ff5>:0
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo+bPanel.GetTextToRender (Arcen.Universal.ArcenDoubleCharacterBuffer buffer) [0x00000] in <67ec34e733814916a3512bb725c75ff5>:0
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo+bPanel.UpdateContentFromVolatile (Arcen.Universal.ArcenUIWrapperedUnityImage Image, Arcen.Universal.ArcenUI_Image+SubImageGroup _SubImages, Arcen.Universal.SubTextGroup _SubTexts) [0x00000] in <67ec34e733814916a3512bb725c75ff5>:0
  at Arcen.Universal.ArcenUI_ImageButton.OnUpdateVolatileDataFromMainThread () [0x00000] in <c6fac3673f2e4076878f034fc63d934f>:0
  at Arcen.Universal.ArcenUI_Window.OnUpdateVolatileDataFromMainThread () [0x00000] in <c6fac3673f2e4076878f034fc63d934f>:0
  at Arcen.Universal.ArcenUI.OnUpdateVolatileDataFromMainThread () [0x00000] in <c6fac3673f2e4076878f034fc63d934f>:0
  at Arcen.Universal.Engine_Universal.OnUpdateFromMainThread () [0x00000] in <c6fac3673f2e4076878f034fc63d934f>:0
  at Arcen.AIW2.Core.ArcenGameControllerBase.BaseUpdate () [0x00000] in <dc5070622b7846c1905274bd83ba181e>:0
  at ArcenGameController.Update () [0x00000] in <a6cba12c7f0b4f47a1ff69cb43a03552>:0

Daniexpert

Nov 1, 2021 10:50 am

manager   ~0063118

Here's one with both DEBUG:HOVER and DEBUG:GAMEENTITY of the same unit.
debugEntity_Hover.txt (6,966 bytes)   
11/1/2021 3:44:25 PM	3.742	SINGLEP	DEBUG:HOVER MLRS Drone #21988 PermaID:5681 IsInPool:True InQuarantine:False HasBeenRemoveFromSim:True
11/1/2021 3:44:25 PM	3.742	SINGLEP	Exception in entity tooltip text generation at stage 5:System.NullReferenceException: Object reference not set to an instance of an object
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo.GetTextForEntity (Arcen.Universal.ArcenDoubleCharacterBuffer buffer, Arcen.AIW2.Core.GameEntity_Squad relatedSquadOrNull, Arcen.AIW2.Core.FleetMembership MembershipBase, Arcen.AIW2.Core.GameEntityTypeData TypeDataOrNull, Arcen.AIW2.Core.Fleet FleetToUseOrNull, System.String AltTextColorIfUsed, System.String AltTextInPlaceOfFleetAndOwnerOrBlank, System.Int32 OptionalCountToShow, Arcen.AIW2.Core.Faction ForFactionOrNull, System.Byte OptionalForMarkLevel, Arcen.AIW2.Core.FromSidebarType IsFromSidebarType, Arcen.AIW2.External.ShipExtraDetailFlags DetailFlags, System.Single PositionScaleMultiplier, System.Boolean IsBeingDrawnInPopupWindowRatherThanTooltip) [0x00389] in <28a46a1474414559b51b28e081a151d1>:0 
  at System.Environment.get_StackTrace () [0x00000] in <695d1cc93cca45069c528c15c9fdd749>:0 
  at Arcen.Universal.ArcenDebugging.ArcenLog_InnerOnMainThreadOnly (System.String Message, Arcen.Universal.DebugLogDestination Destination, System.Boolean IncludeStackTrace, Arcen.Universal.Verbosity Verbosity, System.DateTime Timestamp) [0x00000] in <f371089c850d48989298c506096efd29>:0 
  at Arcen.Universal.ArcenDebugging.ArcenDebugLog (System.String Message, Arcen.Universal.Verbosity Verbosity) [0x00000] in <f371089c850d48989298c506096efd29>:0 
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo.GetTextForEntity (Arcen.Universal.ArcenDoubleCharacterBuffer buffer, Arcen.AIW2.Core.GameEntity_Squad relatedSquadOrNull, Arcen.AIW2.Core.FleetMembership MembershipBase, Arcen.AIW2.Core.GameEntityTypeData TypeDataOrNull, Arcen.AIW2.Core.Fleet FleetToUseOrNull, System.String AltTextColorIfUsed, System.String AltTextInPlaceOfFleetAndOwnerOrBlank, System.Int32 OptionalCountToShow, Arcen.AIW2.Core.Faction ForFactionOrNull, System.Byte OptionalForMarkLevel, Arcen.AIW2.Core.FromSidebarType IsFromSidebarType, Arcen.AIW2.External.ShipExtraDetailFlags DetailFlags, System.Single PositionScaleMultiplier, System.Boolean IsBeingDrawnInPopupWindowRatherThanTooltip) [0x00000] in <28a46a1474414559b51b28e081a151d1>:0 
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo.GetTextForEntity (Arcen.Universal.ArcenDoubleCharacterBuffer buffer, Arcen.AIW2.Core.GameEntity_Squad relatedSquadOrNull, Arcen.AIW2.Core.FleetMembership MembershipBase, Arcen.AIW2.Core.GameEntityTypeData TypeDataOrNull, System.Int32 OptionalCountToShow, Arcen.AIW2.Core.Faction ForFactionOrNull, System.Byte OptionalForMarkLevel, Arcen.AIW2.Core.FromSidebarType IsFromSidebarType, Arcen.AIW2.External.ShipExtraDetailFlags DetailFlags, System.Single PositionScaleMultiplier, System.Boolean IsBeingDrawnInPopupWindowRatherThanTooltip) [0x00000] in <28a46a1474414559b51b28e081a151d1>:0 
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo+bPanel.GetTextToRender (Arcen.Universal.ArcenDoubleCharacterBuffer buffer) [0x00000] in <28a46a1474414559b51b28e081a151d1>:0 
  at Arcen.AIW2.External.Window_InGameHoverEntityInfo+bPanel.UpdateContentFromVolatile (Arcen.Universal.ArcenUIWrapperedUnityImage Image, Arcen.Universal.ArcenUI_Image+SubImageGroup _SubImages, Arcen.Universal.SubTextGroup _SubTexts) [0x00000] in <28a46a1474414559b51b28e081a151d1>:0 
  at Arcen.Universal.ArcenUI_ImageButton.OnUpdateVolatileDataFromMainThread () [0x00000] in <f371089c850d48989298c506096efd29>:0 
  at Arcen.Universal.ArcenUI_Window.OnUpdateVolatileDataFromMainThread () [0x00000] in <f371089c850d48989298c506096efd29>:0 
  at Arcen.Universal.ArcenUI.OnUpdateVolatileDataFromMainThread () [0x00000] in <f371089c850d48989298c506096efd29>:0 
  at Arcen.Universal.Engine_Universal.OnUpdateFromMainThread () [0x00000] in <f371089c850d48989298c506096efd29>:0 
  at Arcen.AIW2.Core.ArcenGameControllerBase.BaseUpdate () [0x00000] in <5d0b07c13ee947dba5cecfa21e020cb1>:0 
  at ArcenGameController.Update () [0x00000] in <a6cba12c7f0b4f47a1ff69cb43a03552>:0

11/1/2021 3:41:15 PM  3.742 SINGLEP DELAYED8056: DEBUG:GAMEENTITY MLRS Drone #21988 PermaID:5681 IsInPool:True InQuarantine:False HasBeenRemovedFromSim:True
  at System.Environment.get_StackTrace () [0x00000] in <695d1cc93cca45069c528c15c9fdd749>:0 
  at Arcen.Universal.ArcenDebugging.ArcenDebugLog (System.String Message, Arcen.Universal.Verbosity Verbosity) [0x00000] in <f371089c850d48989298c506096efd29>:0 
  at Arcen.AIW2.Core.GameEntity_Base.set_PlanetFaction (Arcen.AIW2.Core.PlanetFaction value) [0x00000] in <5d0b07c13ee947dba5cecfa21e020cb1>:0 
  at Arcen.AIW2.Core.GameEntity_Squad.DoMidCleanupWhenLeavingQuarantineBackIntoMainPool_ClearAsMuchAsPossibleIncludingOutgoingReferences () [0x00000] in <5d0b07c13ee947dba5cecfa21e020cb1>:0 
  at Arcen.Universal.TimeBasedPool`1[T].TransferFromQueueAtIndexToMain (System.Int32 Index) [0x00000] in <f371089c850d48989298c506096efd29>:0 
  at Arcen.Universal.TimeBasedPool`1[T].IncrementTheQueues () [0x00000] in <f371089c850d48989298c506096efd29>:0 
  at Arcen.Universal.TimeBasedPool`1[T].ProcessOneSecondOfDataIfEnoughTimeHasPassed () [0x00000] in <f371089c850d48989298c506096efd29>:0 
  at Arcen.Universal.TimeBasedPoolBase+<>c.<ProcessTimeBasedPoolingChecksIfNeeded>b__11_0 () [0x00000] in <f371089c850d48989298c506096efd29>:0 
  at System.Threading.Tasks.Task.InnerInvoke () [0x00000] in <695d1cc93cca45069c528c15c9fdd749>:0 
  at System.Threading.Tasks.Task.Execute () [0x00000] in <695d1cc93cca45069c528c15c9fdd749>:0 
  at System.Threading.Tasks.Task.ExecutionContextCallback (System.Object obj) [0x00000] in <695d1cc93cca45069c528c15c9fdd749>:0 
  at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <695d1cc93cca45069c528c15c9fdd749>:0 
  at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <695d1cc93cca45069c528c15c9fdd749>:0 
  at System.Threading.Tasks.Task.ExecuteWithThreadLocal (System.Threading.Tasks.Task& currentTaskSlot) [0x00000] in <695d1cc93cca45069c528c15c9fdd749>:0 
  at System.Threading.Tasks.Task.ExecuteEntry (System.Boolean bPreventDoubleExecution) [0x00000] in <695d1cc93cca45069c528c15c9fdd749>:0 
  at System.Threading.Tasks.Task.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem () [0x00000] in <695d1cc93cca45069c528c15c9fdd749>:0 
  at System.Threading.ThreadPoolWorkQueue.Dispatch () [0x00000] in <695d1cc93cca45069c528c15c9fdd749>:0 
  at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback () [0x00000] in <695d1cc93cca45069c528c15c9fdd749>:0 
debugEntity_Hover.txt (6,966 bytes)   

Daniexpert

Nov 3, 2021 7:05 pm

manager   ~0063164

I think I found a reliable way to reproduce this exception which requires building a logistical station, fully build all the buildable, then switch the station to an economic one. Many of the turrets/buildings that will be destroyed will still have the tooltip appear when hovered in the position they used to be. After some time, the tooltips won't appear anymore and will be substituted by the usual exception error reporting.
Screenshot of one example of the tooltip of a non existing unit.

Daniexpert

Nov 3, 2021 8:43 pm

manager   ~0063169

Also, it seems that the object that when hovered triggers the exception is duplicated on all planets, with the exact same coordinates in the gravwell.

Chris_McElligottPark

Nov 5, 2021 12:21 pm

administrator   ~0063201

Thanks!

* Fixed the "Exception in entity tooltip text generation at stage 5" error that has been annoying folks really lately.
** This is related to some of the quarantine code, which I still need to directly fix, but having this gone is good either way.

Chris_McElligottPark

Nov 5, 2021 12:39 pm

administrator   ~0063203

* Adjusted things, a bit experimentally, so that the DataForMark, TypeData, Planet, and PlanetFaction can never be set to null on squads, shots, or wormholes.
** If the game attempts to set one to null, then it just ignores that. If they are already null (never properly initialized), then it tries to find a sort of random non-null value to give back.
** This is pretty similar to what we're doing with other pooled data, where we don't want certain things to become stale. The quarantine period should have been enough to bypass this, but frankly sometimes something was getting over-aggressive and having the PlanetFaction in particular as null well before it ever reached the point of exiting quarantine.
** Since everything is pooled, having stale data references in here should have no effect, because we're always updating these things to the proper values when we pull them out of the pool to use them, anyway. I've tested this over several savegames and fresh maps, and things seem to look sane, so we'll see. I'm not expecting a bunch of issues out of this, but you never know.
** Thanks to tom.prince for helping to narrow down what the root issue was, although the actual root cause of it in the code is still a mystery. Ultimately, it doesn't matter -- having any section of the code able to torpedo the rest by setting a null like this is probably not wise. So now it should be protected against all of that.

Issue History

Date Modified Username Field Change
Oct 29, 2021 8:47 pm BadgerBadger New Issue
Oct 29, 2021 8:47 pm BadgerBadger Status new => assigned
Oct 29, 2021 8:47 pm BadgerBadger Assigned To => Chris_McElligottPark
Oct 30, 2021 11:41 am BadgerBadger Relationship added related to 0025719
Oct 30, 2021 5:06 pm Daniexpert Note Added: 0063073
Oct 31, 2021 1:03 pm Daniexpert Note Added: 0063093
Oct 31, 2021 1:03 pm Daniexpert File Added: anotherEntity.txt
Oct 31, 2021 1:12 pm Daniexpert Note Added: 0063095
Oct 31, 2021 1:12 pm Daniexpert File Added: Error.txt
Oct 31, 2021 1:21 pm Daniexpert Note Added: 0063097
Nov 1, 2021 1:23 am BadgerBadger Note Added: 0063101
Nov 1, 2021 6:47 am UFO Note Added: 0063113
Nov 1, 2021 10:50 am Daniexpert Note Added: 0063118
Nov 1, 2021 10:50 am Daniexpert File Added: debugEntity_Hover.txt
Nov 3, 2021 7:05 pm Daniexpert Note Added: 0063164
Nov 3, 2021 7:05 pm Daniexpert File Added: 2021-11-04 00_02_15-AIWar2.png
Nov 3, 2021 8:43 pm Daniexpert Note Added: 0063169
Nov 5, 2021 12:21 pm Chris_McElligottPark Status assigned => resolved
Nov 5, 2021 12:21 pm Chris_McElligottPark Resolution open => fixed
Nov 5, 2021 12:21 pm Chris_McElligottPark Fixed in Version => Beta 3.746 Phantom Ship Syndrome
Nov 5, 2021 12:21 pm Chris_McElligottPark Note Added: 0063201
Nov 5, 2021 12:39 pm Chris_McElligottPark Note Added: 0063203