View Issue Details

IDProjectCategoryLast Update
0021562AI War 2Crash/ExceptionDec 7, 2021 12:41 am
ReporterBadgerBadger Assigned ToChris_McElligottPark  
Status resolvedResolutionfixed 
Product Version0.885 The Audible Bodyguard 
Summary0021562: Error in targeting logic; inconsistent result
DescriptionI hit this one messing around with one of the save games from 0021561:

9/2/2019 9:24:19 PM
Error in targeting logic System.ArgumentException: Unable to sort because the IComparer.Compare() method returns inconsistent results. Either a value does not compare equal to itself, or one value repeatedly compared to another value yields different results. IComparer: 'System.Comparison`1[Arcen.AIW2.Core.GameEntity_Squad]'.
  at System.Collections.Generic.IntrospectiveSortUtilities.ThrowOrIgnoreBadComparer (System.Object comparer) [0x0000b] in <1f0c1ef1ad524c38bbc5536809c46b48>:0
  at System.Collections.Generic.ArraySortHelper`1[T].Sort (T[] keys, System.Int32 index, System.Int32 length, System.Comparison`1[T] comparer) [0x0000c] in <1f0c1ef1ad524c38bbc5536809c46b48>:0
  at System.Collections.Generic.List`1[T].Sort (System.Comparison`1[T] comparison) [0x00012] in <1f0c1ef1ad524c38bbc5536809c46b48>:0
  at Arcen.AIW2.External.TargetListPlanning.ProcessShortlistIntoTargetRanking (Arcen.AIW2.Core.EntitySystem AttackerSystem, System.Boolean IsStuffWithinANearRange, System.Boolean MustBeInRangeForFRD) [0x00051] in <0cf8e12527294eab8fc5b1aeeb9f74ec>:0
  at Arcen.AIW2.External.TargetListPlanning.ProcessWorkingLists (Arcen.AIW2.Core.GameEntity_Squad AttackerEntity, Arcen.AIW2.Core.EntitySystem AttackerSystem) [0x00098] in <0cf8e12527294eab8fc5b1aeeb9f74ec>:0
  at Arcen.AIW2.External.TargetListPlanning.FindTopEntriesForSystem (Arcen.AIW2.Core.GameEntity_Squad AttackerEntity, Arcen.AIW2.Core.EntitySystem AttackerSystem, System.Int32 SystemIndex) [0x0033e] in <0cf8e12527294eab8fc5b1aeeb9f74ec>:0
  at Arcen.AIW2.External.TargetListPlanning.DoEntityFramePlanningLogic_TargetPrioritizing_SpecificSystem (Arcen.AIW2.Core.GameEntity_Squad AttackerEntity, Arcen.AIW2.Core.EntitySystem AttackerSystem, System.Int32 SystemIndex) [0x00009] in <0cf8e12527294eab8fc5b1aeeb9f74ec>:0
TagsNo tags attached.

Activities

Chris_McElligottPark

Sep 3, 2019 9:18 pm

administrator   ~0052800

The only way I could see this happening is if two of the target processing threads were running at once, which would be REALLY bad, and frankly should be impossible. Unless something else is assigning to either NonSim_TargetListPlanning_Distance, NonSim_TargetListPlanning_Importance, or NonSimPermanentUniqueID.

I suppose there is the very slight possibility that NonSimPermanentUniqueID maybe changes when a unit dies, which could happen side-along to this running. In those cases we'd just need a try/catch on this and I guess to run it a second time since it should be fine the time after that.

But let's wait another few builds and see if you see it again. My suspicion is that those games with the really long-running background threads that were getting force-killed were causing a variety of alarming/impossible errors because of killing those threads.

Chris_McElligottPark

Dec 7, 2021 12:41 am

administrator   ~0063424

Fixed long ago, thanks!

Issue History

Date Modified Username Field Change
Sep 2, 2019 11:29 pm BadgerBadger New Issue
Sep 3, 2019 9:18 pm Chris_McElligottPark Assigned To => Chris_McElligottPark
Sep 3, 2019 9:18 pm Chris_McElligottPark Status new => feedback
Sep 3, 2019 9:18 pm Chris_McElligottPark Note Added: 0052800
Dec 7, 2021 12:41 am Chris_McElligottPark Status feedback => resolved
Dec 7, 2021 12:41 am Chris_McElligottPark Resolution open => fixed
Dec 7, 2021 12:41 am Chris_McElligottPark Note Added: 0063424