cseelhoff / RimThreaded

RimThreaded is a RimWorld mod designed to enable RimWorld to utilize multiple threads.
MIT License
117 stars 21 forks source link

Vanilla Factions Expanded Mechanoids tryjobissuepractice null reference exception for stationary pawns `Exception in Verse.AI.ThinkNode_Tagger TryIssueJobPackage: System.NullReferenceException:` #698

Open sealvessel opened 2 years ago

sealvessel commented 2 years ago

Describe the bug

Null reference exception when anything that is prefixed with "auto", or from this list below from VFE Mechanoids is spawned prefixed with "VFEMechanoids"

image

Steps to reproduce the behavior (VERY IMPORTANT)

  1. Install Vanilla Factions Expanded Mechanoids
  2. Press '/'.
  3. Type "spawn pawn"
  4. Type "VFEMechanoids", and spawn any of the prefixed pawns.

Error Logs

Exception in Verse.AI.ThinkNode_Tagger TryIssueJobPackage: System.NullReferenceException: Object reference not set to an instance of an object
  at VFE.Mechanoids.AI.JobGivers.JobGiver_ReturnToStationIdle.TryGiveJob (Verse.Pawn pawn) [0x0000c] in <f919821dd3034f1ea494e82c8b743117>:0 
  at Verse.AI.ThinkNode_JobGiver.TryIssueJobPackage (Verse.Pawn pawn, Verse.AI.JobIssueParams jobParams) [0x00000] in <720a4e30fed64864bd8af057c96d4eb5>:0 
  at Verse.AI.ThinkNode_Priority.TryIssueJobPackage (Verse.Pawn pawn, Verse.AI.JobIssueParams jobParams) [0x00022] in <720a4e30fed64864bd8af057c96d4eb5>:0 
UnityEngine.StackTraceUtility:ExtractStackTrace ()
(wrapper dynamic-method) Verse.Log:Verse.Log.Error_Patch2 (string)
Verse.AI.ThinkNode_Priority:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Tagger:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Priority:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Priority:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
RimThreaded.Pawn_JobTracker_Patch:DetermineNextJob2 (Verse.AI.Pawn_JobTracker,Verse.ThinkTreeDef&)
RimThreaded.Pawn_JobTracker_Patch:TryFindAndStartJob (Verse.AI.Pawn_JobTracker)
(wrapper dynamic-method) Verse.AI.Pawn_JobTracker:Verse.AI.Pawn_JobTracker.TryFindAndStartJob_Patch1 (Verse.AI.Pawn_JobTracker)
Verse.AI.Pawn_JobTracker:JobTrackerTick ()
Verse.Pawn:Tick ()
RimThreaded.TickList_Patch:NormalThingTick ()
RimThreaded.RimThreaded:ExecuteTicks ()
RimThreaded.RimThreaded:ProcessTicks (RimThreaded.RimThreaded/ThreadInfo)
RimThreaded.RimThreaded:InitializeThread (object)
System.Threading.ThreadHelper:ThreadStart_Context (object)
System.Threading.ExecutionContext:RunInternal (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
System.Threading.ExecutionContext:Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object,bool)
System.Threading.ExecutionContext:Run (System.Threading.ExecutionContext,System.Threading.ContextCallback,object)
System.Threading.ThreadHelper:ThreadStart (object)

Player.log

https://controlc.com/e2b084c3

HugsLib log

https://gist.github.com/e0fd65e23d9c66665d1e44734584619f

Save file

No need

Screenshots

image

When the mechanoid autocleaner dies, the error stops.

Mod list (For vanilla report, it has to be same as below list.)