RimWorld

RimWorld

Allow Tool
Red error
JobDriver threw exception in toil MakeNewToils's initAction for pawn Mech_Cleansweeper1045867 driver=JobDriver_Wait (toilIndex=0) driver.job=(Wait (Job_7969668))
System.NullReferenceException: Object reference not set to an instance of an object
[Ref B29DD0C4]
at AllowTool.PartyHuntHandler.get_WorldSettings () [0x0000b] in <8a098910d6a84b188090b9d6c096e9ee>:0
at AllowTool.PartyHuntHandler.DoBehaviorForPawn (Verse.AI.JobDriver_Wait driver) [0x0001e] in <8a098910d6a84b188090b9d6c096e9ee>:0
at AllowTool.Patches.JobDriverWait_CheckForAutoAttack_Patch.DoPartyHunting (Verse.AI.JobDriver_Wait __instance) [0x00001] in <8a098910d6a84b188090b9d6c096e9ee>:0
at Verse.AI.JobDriver_Wait.CheckForAutoAttack () [0x003a9] in <24d25868955f4df08b02c73b55f389fe>:0
- POSTFIX UnlimitedHugs.AllowTool: Void AllowTool.Patches.JobDriverWait_CheckForAutoAttack_Patch:DoPartyHunting(JobDriver_Wait __instance)
at Verse.AI.JobDriver_Wait.<MakeNewToils>b__3_0 () [0x0003d] in <24d25868955f4df08b02c73b55f389fe>:0
at Verse.AI.JobDriver.TryActuallyStartNextToil () [0x001b0] in <24d25868955f4df08b02c73b55f389fe>:0
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.AI.JobUtility:TryStartErrorRecoverJob (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
Verse.AI.JobDriver:TryActuallyStartNextToil ()
Verse.AI.JobDriver:ReadyForNextToil ()
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.AI.Pawn_JobTracker.StartJob_Patch1 (Verse.AI.Pawn_JobTracker,Verse.AI.Job,Verse.AI.JobCondition,Verse.AI.ThinkNode,bool,bool,Verse.ThinkTreeDef,System.Nullable`1<Verse.AI.JobTag>,bool,bool,System.Nullable`1<bool>,bool,bool,bool)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.AI.Pawn_JobTracker.EndCurrentJob_Patch2 (Verse.AI.Pawn_JobTracker,Verse.AI.JobCondition,bool,bool)
Verse.AI.JobDriver:EndJobWith (Verse.AI.JobCondition)
Verse.AI.JobDriver:Notify_PatherFailed ()
Verse.AI.Pawn_PathFollower:PatherFailed ()
Verse.AI.Pawn_PathFollower:TryResumePathingAfterLoading ()
Verse.Pawn:PostMapInit ()
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.Map.FinalizeInit_Patch2 (Verse.Map)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.Map.FinalizeLoading_Patch3 (Verse.Map)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.Game.LoadGame_Patch6 (Verse.Game)
Verse.SavedGameLoaderNow:LoadGameFromSaveFileNow (string)
Verse.Root_Play/<>c:<Start>b__1_1 ()
Verse.LongEventHandler:RunEventFromAnotherThread (System.Action)
Verse.LongEventHandler/<>c:<UpdateCurrentAsynchronousEvent>b__28_0 ()
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 ()


Logs: https://gist.github.com/HugsLibRecordKeeper/4c401951bfdd3537220da157f0fd1a95
< >
Showing 1-4 of 4 comments
Rovstam 30 Aug @ 2:50pm 
ChatGPT said: Yep — that stack trace points to a mod crash. Short version: the crash is coming from UnlimitedHugs / AllowTool (the AllowTool.PartyHuntHandler.get_WorldSettings call). That mod is calling something that doesn’t exist yet (a null world/settings) during map/save load, producing a NullReferenceException. The usual fixes are: disable or update the mod, or apply a small null-check patch in the mod code. Below I give a safe, step-by-step troubleshooting checklist and concrete fixes you can try right now.
Rovstam 30 Aug @ 2:51pm 
It's 3 errors, second error is:

JobDriver threw exception in toil MakeNewToils's initAction for pawn Mech_Cleansweeper1045867 driver=JobDriver_Wait (toilIndex=0) driver.job=(Wait (Job_7969669))
System.NullReferenceException: Object reference not set to an instance of an object
[Ref B29DD0C4] Duplicate stacktrace, see ref for original
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.AI.JobUtility:TryStartErrorRecoverJob (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
Verse.AI.JobDriver:TryActuallyStartNextToil ()
Verse.AI.JobDriver:ReadyForNextToil ()
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.AI.Pawn_JobTracker.StartJob_Patch1 (Verse.AI.Pawn_JobTracker,Verse.AI.Job,Verse.AI.JobCondition,Verse.AI.ThinkNode,bool,bool,Verse.ThinkTreeDef,System.Nullable`1<Verse.AI.JobTag>,bool,bool,System.Nullable`1<bool>,bool,bool,bool)
Verse.AI.JobUtility:TryStartErrorRecoverJob (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
Verse.AI.JobDriver:TryActuallyStartNextToil ()
Verse.AI.JobDriver:ReadyForNextToil ()
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.AI.Pawn_JobTracker.StartJob_Patch1 (Verse.AI.Pawn_JobTracker,Verse.AI.Job,Verse.AI.JobCondition,Verse.AI.ThinkNode,bool,bool,Verse.ThinkTreeDef,System.Nullable`1<Verse.AI.JobTag>,bool,bool,System.Nullable`1<bool>,bool,bool,bool)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.AI.Pawn_JobTracker.EndCurrentJob_Patch2 (Verse.AI.Pawn_JobTracker,Verse.AI.JobCondition,bool,bool)
Verse.AI.JobDriver:EndJobWith (Verse.AI.JobCondition)
Verse.AI.JobDriver:Notify_PatherFailed ()
Verse.AI.Pawn_PathFollower:PatherFailed ()
Verse.AI.Pawn_PathFollower:TryResumePathingAfterLoading ()
Verse.Pawn:PostMapInit ()
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.Map.FinalizeInit_Patch2 (Verse.Map)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.Map.FinalizeLoading_Patch3 (Verse.Map)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.Game.LoadGame_Patch6 (Verse.Game)
Verse.SavedGameLoaderNow:LoadGameFromSaveFileNow (string)
Verse.Root_Play/<>c:<Start>b__1_1 ()
Verse.LongEventHandler:RunEventFromAnotherThread (System.Action)
Verse.LongEventHandler/<>c:<UpdateCurrentAsynchronousEvent>b__28_0 ()
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 ()
Rovstam 30 Aug @ 2:52pm 
Third:

An error occurred while starting an error recover job. We have to stop now to avoid infinite loops. This means that the pawn is now jobless which can cause further bugs. pawn=Mech_Cleansweeper1045867
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.AI.JobUtility:TryStartErrorRecoverJob (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
Verse.AI.JobDriver:TryActuallyStartNextToil ()
Verse.AI.JobDriver:ReadyForNextToil ()
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.AI.Pawn_JobTracker.StartJob_Patch1 (Verse.AI.Pawn_JobTracker,Verse.AI.Job,Verse.AI.JobCondition,Verse.AI.ThinkNode,bool,bool,Verse.ThinkTreeDef,System.Nullable`1<Verse.AI.JobTag>,bool,bool,System.Nullable`1<bool>,bool,bool,bool)
Verse.AI.JobUtility:TryStartErrorRecoverJob (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
Verse.AI.JobDriver:TryActuallyStartNextToil ()
Verse.AI.JobDriver:ReadyForNextToil ()
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.AI.Pawn_JobTracker.StartJob_Patch1 (Verse.AI.Pawn_JobTracker,Verse.AI.Job,Verse.AI.JobCondition,Verse.AI.ThinkNode,bool,bool,Verse.ThinkTreeDef,System.Nullable`1<Verse.AI.JobTag>,bool,bool,System.Nullable`1<bool>,bool,bool,bool)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.AI.Pawn_JobTracker.EndCurrentJob_Patch2 (Verse.AI.Pawn_JobTracker,Verse.AI.JobCondition,bool,bool)
Verse.AI.JobDriver:EndJobWith (Verse.AI.JobCondition)
Verse.AI.JobDriver:Notify_PatherFailed ()
Verse.AI.Pawn_PathFollower:PatherFailed ()
Verse.AI.Pawn_PathFollower:TryResumePathingAfterLoading ()
Verse.Pawn:PostMapInit ()
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.Map.FinalizeInit_Patch2 (Verse.Map)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.Map.FinalizeLoading_Patch3 (Verse.Map)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.Game.LoadGame_Patch6 (Verse.Game)
Verse.SavedGameLoaderNow:LoadGameFromSaveFileNow (string)
Verse.Root_Play/<>c:<Start>b__1_1 ()
Verse.LongEventHandler:RunEventFromAnotherThread (System.Action)
Verse.LongEventHandler/<>c:<UpdateCurrentAsynchronousEvent>b__28_0 ()
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 ()
Most of my pawns are standing still most of the time. Is this the same issue? Is there a solution?

It's a save killer as it stands (pun intended). I've removed the mod, but the standing bug persists - no errors in log.

Zenav threw exception in WorkGiver HaulUrgently: System.NullReferenceException: Object reference not set to an instance of an object
[Ref D33F34F3]
at Verse.GridsUtility.Fogged (Verse.Thing t) [0x00006] in <31482697ada14932981abc5e76101d5d>:0
at Verse.AI.HaulAIUtility.PawnCanAutomaticallyHaulFast (Verse.Pawn p, Verse.Thing t, System.Boolean forced) [0x00034] in <31482697ada14932981abc5e76101d5d>:0
- PREFIX net.pardeike.rimworld.mods.achtung: Boolean AchtungMod.HaulAIUtility_PawnCanAutomaticallyHaulFast_Patch:Prefix(Pawn p, Thing t, Boolean forced, Boolean& __result)
at AllowTool.WorkGiver_HaulUrgently+<PotentialWorkThingsGlobal>d__3.MoveNext () [0x00052] in <8a098910d6a84b188090b9d6c096e9ee>:0
at Verse.GenClosest.ClosestThing_Global (Verse.IntVec3 center, System.Collections.IEnumerable searchSet, System.Single maxDistance, System.Predicate`1[T] validator, System.Func`2[T,TResult] priorityGetter, System.Boolean lookInHaulSources) [0x0013c] in <31482697ada14932981abc5e76101d5d>:0
at Verse.GenClosest.ClosestThingReachable (Verse.IntVec3 root, Verse.Map map, Verse.ThingRequest thingReq, Verse.AI.PathEndMode peMode, Verse.TraverseParms traverseParams, System.Single maxDistance, System.Predicate`1[T] validator, System.Collections.Generic.IEnumerable`1[T] customGlobalSearchSet, System.Int32 searchRegionsMin, System.Int32 searchRegionsMax, System.Boolean forceAllowGlobalSearch, Verse.RegionType traversableRegionTypes, System.Boolean ignoreEntirelyForbiddenRegions, System.Boolean lookInHaulSources) [0x00147] in <31482697ada14932981abc5e76101d5d>:0
at ExpandedRoofing.ClosestThingReachableHelper.ClosestThingReachableWrapper (Verse.IntVec3 root, Verse.Map map, Verse.ThingRequest thingReq, Verse.AI.PathEndMode peMode, Verse.TraverseParms traverseParams, System.Single maxDistance, System.Predicate`1[T] validator, System.Collections.Generic.IEnumerable`1[T] customGlobalSearchSet, System.Int32 searchRegionsMin, System.Int32 searchRegionsMax, System.Boolean forceAllowGlobalSearch, Verse.RegionType traversableRegionTypes, System.Boolean ignoreEntirelyForbiddenRegions, System.Boolean lookInHaulSources) [0x00010] in <21baee2048cb405ab6be64493b9b22bf>:0
at RimWorld.JobGiver_Work.TryIssueJobPackage (Verse.Pawn pawn, Verse.AI.JobIssueParams jobParams) [0x00678] in <31482697ada14932981abc5e76101d5d>:0
- TRANSPILER rimworld.whyisthat.expandedroofing.fixbuildorder: IEnumerable`1 ExpandedRoofing.FixFinishFrameBuildOrder:Transpiler(IEnumerable`1 instructions)
- TRANSPILER SmarterConstruction: List`1 SmarterConstruction.Patches.PatchMakeFinishFramesPrioritized:Transpiler(IEnumerable`1 instructions, ILGenerator generator)
[Harmony, 0Harmony.dll] MonoMod.Utils.DynamicMethodDefinition.UnityEngine.StackTraceUtility.ExtractStackTrace_Patch1()
[Harmony, 0Harmony.dll] MonoMod.Utils.DynamicMethodDefinition.Verse.Log.Error_Patch2(System.String)
[Harmony, 0Harmony.dll] MonoMod.Utils.DynamicMethodDefinition.RimWorld.JobGiver_Work.TryIssueJobPackage_Patch2(RimWorld.JobGiver_Work, Verse.Pawn, Verse.AI.JobIssueParams)
[Core, Assembly-CSharp.dll] Verse.AI.ThinkNode_PrioritySorter.TryIssueJobPackage(Verse.Pawn pawn, Verse.AI.JobIssueParams jobParams)
[Core, Assembly-CSharp.dll] Verse.AI.ThinkNode_Priority.TryIssueJobPackage(Verse.Pawn pawn, Verse.AI.JobIssueParams jobParams)
[Core, Assembly-CSharp.dll] Verse.AI.ThinkNode_Tagger.TryIssueJobPackage(Verse.Pawn pawn, Verse.AI.JobIssueParams jobParams)
[Core, Assembly-CSharp.dll] Verse.AI.ThinkNode_Subtree.TryIssueJobPackage(Verse.Pawn pawn, Verse.AI.JobIssueParams jobParams)
[Core, Assembly-CSharp.dll] Verse.AI.ThinkNode_Priority.TryIssueJobPackage(Verse.Pawn pawn, Verse.AI.JobIssueParams jobParams)
[Core, Assembly-CSharp.dll] Verse.AI.ThinkNode_Conditional.TryIssueJobPackage(Verse.Pawn pawn, Verse.AI.JobIssueParams jobParams)
[Core, Assembly-CSharp.dll] Verse.AI.ThinkNode_Priority.TryIssueJobPackage(Verse.Pawn pawn, Verse.AI.JobIssueParams jobParams)
[Harmony, 0Harmony.dll] MonoMod.Utils.DynamicMethodDefinition.Verse.AI.Pawn_JobTracker.DetermineNextJob_Patch1(Verse.AI.Pawn_JobTracker, Verse.ThinkTreeDef&, System.Boolean)
[Core, Assembly-CSharp.dll] Verse.AI.Pawn_JobTracker.TryFindAndStartJob()
[Harmony, 0Harmony.dll] MonoMod.Utils.DynamicMethodDefinition.Verse.AI.Pawn_JobTracker.EndCurrentJob_Patch3(Verse.AI.Pawn_JobTracker, Verse.AI.JobCondition, System.Boolean, System.Boolean)
[Core, Assembly-CSharp.dll] Verse.AI.Pawn_JobTracker.JobTrackerTickInterval(System.Int32 delta)
[Core, Assembly-CSharp.dll] Verse.Pawn.TickInterval(System.Int32 delta)
[Core, Assembly-CSharp.dll] Verse.Thing.DoTick()
[Harmony, 0Harmony.dll] MonoMod.Utils.DynamicMethodDefinition.Verse.TickList.Tick_Patch2(Verse.TickList)
[Harmony, 0Harmony.dll] MonoMod.Utils.DynamicMethodDefinition.Verse.TickManager.DoSingleTick_Patch4(Verse.TickManager)
[Core, Assembly-CSharp.dll] Verse.TickManager.TickManagerUpdate()
[Harmony, 0Harmony.dll] MonoMod.Utils.DynamicMethodDefinition.Verse.Game.UpdatePlay_Patch2(Verse.Game)
[Harmony, 0Harmony.dll] MonoMod.Utils.DynamicMethodDefinition.Verse.Root_Play.Update_Patch1(Verse.Root_Play)
Last edited by Kenny Dave; 2 hours ago
< >
Showing 1-4 of 4 comments
Per page: 1530 50