ABrandau/Shattered-Paradise-SDK

Crash

dnqbob opened this issue · 4 comments

OpenRA engine version 1ce6463
Shattered Paradise mod version {DEV_VERSION}
on map d056db0d5ebb904904308cab1b3a66b886383a9e (st-anti air by Yst-anti air).
Date: 2021-08-02 07:52:58Z
Operating System: Windows (Microsoft Windows NT 10.0.19043.0)
Runtime Version: .NET CLR 5.0.7
Exception of type `System.IndexOutOfRangeException`: Index was outside the bounds of the array.
   at OpenRA.Mods.Common.Pathfinder.PathGraph.GetConnections(CPos position) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Mods.Common\Pathfinder\PathGraph.cs:line 136
   at OpenRA.Mods.Common.Pathfinder.PathSearch.Expand() in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Mods.Common\Pathfinder\PathSearch.cs:line 150
   at OpenRA.Mods.Common.Traits.PathFinder.FindPath(IPathSearch search) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Mods.Common\Traits\World\PathFinder.cs:line 139
   at OpenRA.Mods.Common.Pathfinder.PathFinderUnitPathCacheDecorator.FindPath(IPathSearch search) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Mods.Common\Pathfinder\PathFinderUnitPathCacheDecorator.cs:line 82
   at OpenRA.Mods.Common.Activities.FindAndDeliverResources.ClosestHarvestablePos(Actor self) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Mods.Common\Activities\FindAndDeliverResources.cs:line 219
   at OpenRA.Mods.Common.Activities.FindAndDeliverResources.Tick(Actor self) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Mods.Common\Activities\FindAndDeliverResources.cs:line 115
   at OpenRA.Activities.Activity.TickOuter(Actor self) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Activities\Activity.cs:line 108
   at OpenRA.Traits.ActivityUtils.RunActivity(Actor self, Activity act) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Traits\ActivityUtils.cs:line 30
   at OpenRA.Actor.Tick() in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Actor.cs:line 271
   at OpenRA.World.Tick() in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\World.cs:line 433
   at OpenRA.Game.InnerLogicTick(OrderManager orderManager) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Game.cs:line 624
   at OpenRA.Game.LogicTick() in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Game.cs:line 639
   at OpenRA.Game.Loop() in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Game.cs:line 806
   at OpenRA.Game.Run() in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Game.cs:line 859
   at OpenRA.Game.InitializeAndRun(String[] args) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Game.cs:line 277
   at OpenRA.Launcher.Program.Main(String[] args) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Launcher\Program.cs:line 32

map:
test-anti air.zip

It seems to happen when the map don't have resource layer for harvesters.

Reproduce:

  1. use the map
  2. have an AI player
  3. wait until the AI refinery (guess you can also build your own)
  4. Oops

got an other one of no harvester crash. More severe than our thought

Exception of type `System.IndexOutOfRangeException`: Index was outside the bounds of the array.
   at OpenRA.Mods.Common.Pathfinder.PathGraph.GetConnections(CPos position) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Mods.Common\Pathfinder\PathGraph.cs:line 136
   at OpenRA.Mods.Common.Pathfinder.PathSearch.Expand() in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Mods.Common\Pathfinder\PathSearch.cs:line 150
   at OpenRA.Mods.Common.Traits.PathFinder.FindBidiPath(IPathSearch fromSrc, IPathSearch fromDest) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Mods.Common\Traits\World\PathFinder.cs:line 174
   at OpenRA.Mods.Common.Pathfinder.PathFinderUnitPathCacheDecorator.FindBidiPath(IPathSearch fromSrc, IPathSearch fromDest) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Mods.Common\Pathfinder\PathFinderUnitPathCacheDecorator.cs:line 88
   at OpenRA.Mods.Common.Activities.MoveAdjacentTo.CalculatePathToTarget(Actor self, BlockedByActor check) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Mods.Common\Activities\Move\MoveAdjacentTo.cs:line 137
   at OpenRA.Mods.Common.Activities.MoveAdjacentTo.<>c__DisplayClass14_0.<OnFirstRun>b__0(BlockedByActor check) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Mods.Common\Activities\Move\MoveAdjacentTo.cs:line 78
   at OpenRA.Mods.Common.Activities.Move.EvalPath(BlockedByActor check) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Mods.Common\Activities\Move\Move.cs:line 157
   at OpenRA.Mods.Common.Activities.Move.OnFirstRun(Actor self) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Mods.Common\Activities\Move\Move.cs:line 171
   at OpenRA.Activities.Activity.TickOuter(Actor self) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Activities\Activity.cs:line 108
   at OpenRA.Traits.ActivityUtils.RunActivity(Actor self, Activity act) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Traits\ActivityUtils.cs:line 30
   at OpenRA.Activities.Activity.TickChild(Actor self) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Activities\Activity.cs:line 144
   at OpenRA.Mods.Common.Activities.MoveAdjacentTo.Tick(Actor self) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Mods.Common\Activities\Move\MoveAdjacentTo.cs:line 111
   at OpenRA.Activities.Activity.TickOuter(Actor self) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Activities\Activity.cs:line 108
   at OpenRA.Traits.ActivityUtils.RunActivity(Actor self, Activity act) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Traits\ActivityUtils.cs:line 30
   at OpenRA.Activities.Activity.TickChild(Actor self) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Activities\Activity.cs:line 144
   at OpenRA.Activities.Activity.TickOuter(Actor self) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Activities\Activity.cs:line 108
   at OpenRA.Traits.ActivityUtils.RunActivity(Actor self, Activity act) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Traits\ActivityUtils.cs:line 30
   at OpenRA.Actor.Tick() in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Actor.cs:line 271
   at OpenRA.World.Tick() in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\World.cs:line 433
   at OpenRA.Game.InnerLogicTick(OrderManager orderManager) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Game.cs:line 624
   at OpenRA.Game.LogicTick() in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Game.cs:line 639
   at OpenRA.Game.Loop() in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Game.cs:line 806
   at OpenRA.Game.Run() in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Game.cs:line 859
   at OpenRA.Game.InitializeAndRun(String[] args) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Game\Game.cs:line 277
   at OpenRA.Launcher.Program.Main(String[] args) in D:\work\Projects\Github\shattered-paradise-sdk-mirror\engine\OpenRA.Launcher\Program.cs:line 32