RimWorld

RimWorld

LightsOut
Biotech Mech Gestator looping job
I keep getting this error when trying to initiate mech birth of resurrected mech. Not sure if its related to this mod or not but it mentions LightsOut in the error. Will report back if disabling gets rid of the problem.

Exception ticking MechGestator118496 (at (148, 0, 153)). Suppressing further errors. Exception: System.NullReferenceException: Object reference not set to an instance of an object
[Ref BCD263B3]
at RimWorld.Bill_ResurrectMech.CreateProducts () [0x0000b] in <7a4ff24096e646578ec80b030e4544b3>:0
at RimWorld.Building_MechGestator.Notify_FormingCompleted () [0x00000] in <7a4ff24096e646578ec80b030e4544b3>:0
- POSTFIX LightsOut: Void LightsOut.Common.TablesHelper:PatchTableOff(ThingWithComps __instance)
at RimWorld.Bill_Mech.BillTick () [0x00066] in <7a4ff24096e646578ec80b030e4544b3>:0
at RimWorld.Building_WorkTableAutonomous.Tick () [0x00016] in <7a4ff24096e646578ec80b030e4544b3>:0
at RimWorld.Building_MechGestator.Tick () [0x00000] in <7a4ff24096e646578ec80b030e4544b3>:0
at Verse.Thing.DoTick () [0x0007b] in <7a4ff24096e646578ec80b030e4544b3>:0
at Verse.TickList.Tick () [0x00139] in <7a4ff24096e646578ec80b030e4544b3>:0
UnityEngine.StackTraceUtility:ExtractStackTrace ()
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.Log.Error_Patch3 (string)
Verse.Log:ErrorOnce (string,int)
Verse.TickList:Tick ()
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.TickManager.DoSingleTick_Patch4 (Verse.TickManager)
Verse.TickManager:TickManagerUpdate ()
Verse.Game:UpdatePlay ()
Verse.Root_Play:Update ()
< >
Showing 1-5 of 5 comments
Deactivating LightsOut and rebuilding the gestator seems to have fixed the problem
juanlopez2008  [developer] 6 Jul @ 6:50pm 
That doesn’t seem to be caused by my mod, though that wasn’t immediately clear to me. This looks like a null reference exception in RimWorld’s code, not any mod’s code — which I wasn’t inclined to believe.

Let me know if it happens again. I don’t see any other mod in the log and I’m not convinced it’s a vanilla RimWorld problem, so I’ll leave this open for now in case it wasn’t a fluke :cozybethesda:
Will do thanks for looking into it
https://imgur.com/a/fwoBA4G

This issue persists without Lights Out. It is not this mod. But if you're interested:

I set resurrect light mechanoid bill to do forever.

Mechanitor resurrects light mechanoid, and then starts new gestation cycle seemingly without a mechanoid corpse and without removing waste from gestator.

New gestation cycle starts but does not say what gestator contains.

When cycle completes, throws error Exception ticking MechGestator126366 (at (148, 0, 153)): System.NullReferenceException: Object reference not set to an instance of an object
[Ref A22D129A]

When mechanitor goes to initiate mech birth, throws error JobDriver threw exception in toil FinishRecipeAndStartStoringProduct's initAction for pawn Lambor driver=JobDriver_DoBill (toilIndex=14) driver.job=(DoBill (Job_1388527) A = Thing_MechGestator126366 Giver = ThinkNode_QueuedJob [workGiverDef: DoBillsMechGestator])
System.NullReferenceException: Object reference not set to an instance of an object
[Ref A93C9862]

Mechanitor alternates between "standing" and "initiating mech birth" and loops that job, continuously throwing second error.

Errors in full:

Exception ticking MechGestator126366 (at (148, 0, 153)): System.NullReferenceException: Object reference not set to an instance of an object
[Ref A22D129A]
at RimWorld.Bill_ResurrectMech.CreateProducts () [0x0000b] in <7a4ff24096e646578ec80b030e4544b3>:0
at RimWorld.Building_MechGestator.Notify_FormingCompleted () [0x00000] in <7a4ff24096e646578ec80b030e4544b3>:0
at RimWorld.Bill_Mech.BillTick () [0x00066] in <7a4ff24096e646578ec80b030e4544b3>:0
at RimWorld.Building_WorkTableAutonomous.Tick () [0x00016] in <7a4ff24096e646578ec80b030e4544b3>:0
at RimWorld.Building_MechGestator.Tick () [0x00000] in <7a4ff24096e646578ec80b030e4544b3>:0
at Verse.Thing.DoTick () [0x0007b] in <7a4ff24096e646578ec80b030e4544b3>:0
at Verse.TickList.Tick () [0x00139] in <7a4ff24096e646578ec80b030e4544b3>:0
UnityEngine.StackTraceUtility:ExtractStackTrace ()
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.Log.Error_Patch3 (string)
Verse.TickList:Tick ()
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.TickManager.DoSingleTick_Patch3 (Verse.TickManager)
Verse.TickManager:TickManagerUpdate ()
Verse.Game:UpdatePlay ()
Verse.Root_Play:Update ()


JobDriver threw exception in toil FinishRecipeAndStartStoringProduct's initAction for pawn Lambor driver=JobDriver_DoBill (toilIndex=14) driver.job=(DoBill (Job_1388527) A = Thing_MechGestator126366 Giver = ThinkNode_QueuedJob [workGiverDef: DoBillsMechGestator])
System.NullReferenceException: Object reference not set to an instance of an object
[Ref A93C9862]
at Verse.GenRecipe.PostProcessProduct (Verse.Thing product, Verse.RecipeDef recipeDef, Verse.Pawn worker, RimWorld.Precept_ThingStyle precept, Verse.ThingStyleDef style, System.Nullable`1[T] overrideGraphicIndex) [0x000b5] in <7a4ff24096e646578ec80b030e4544b3>:0
- POSTFIX com.inspirationtweaks.patch: Void InspirationTweaks.DeliciousMeals:Postfix(Thing product, Pawn worker)
at Verse.GenRecipe+<FinalizeGestatedPawns>d__1.MoveNext () [0x00028] in <7a4ff24096e646578ec80b030e4544b3>:0
at System.Collections.Generic.List`1[T].AddEnumerable (System.Collections.Generic.IEnumerable`1[T] enumerable) [0x00059] in <51fded79cd284d4d911c5949aff4cb21>:0
<0x27a34528460 + 0x00242> <unknown method>
at System.Linq.Enumerable.ToList[TSource] (System.Collections.Generic.IEnumerable`1[T] source) [0x00018] in <1f993cbf88314b1baa1e10ca917bdc64>:0
at Verse.AI.Toils_Recipe+<>c__DisplayClass3_0.<FinishRecipeAndStartStoringProduct>b__1 () [0x00199] in <7a4ff24096e646578ec80b030e4544b3>:0
- TRANSPILER Andromeda.StackGap: IEnumerable`1 StorageUpperBound.ToilsRecipePatch:Transpiler(IEnumerable`1 instructions)
at Verse.AI.JobDriver.TryActuallyStartNextToil () [0x00203] in <7a4ff24096e646578ec80b030e4544b3>:0
- POSTFIX CM_Grab_Your_Tool: Void CM_Grab_Your_Tool.JobDriver_TryActuallyStartNextToil:Postfix(Pawn ___pawn, JobDriver __instance)
UnityEngine.StackTraceUtility:ExtractStackTrace ()
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.Log.Error_Patch3 (string)
Verse.AI.JobUtility:TryStartErrorRecoverJob (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.AI.JobDriver.TryActuallyStartNextToil_Patch1 (Verse.AI.JobDriver)
Verse.AI.JobDriver:ReadyForNextToil ()
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.AI.JobDriver.TryActuallyStartNextToil_Patch1 (Verse.AI.JobDriver)
Verse.AI.JobDriver:ReadyForNextToil ()
Verse.AI.Toils_Recipe/<>c__DisplayClass2_0:<DoRecipeWork>b__2 (int)
Verse.AI.JobDriver:DriverTickInterval (int)
Verse.AI.Pawn_JobTracker:JobTrackerTickInterval (int)
Verse.Pawn:TickInterval (int)
Verse.Thing:DoTick ()
Verse.TickList:Tick ()
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.TickManager.DoSingleTick_Patch3 (Verse.TickManager)
Verse.TickManager:TickManagerUpdate ()
Verse.Game:UpdatePlay ()
Verse.Root_Play:Update ()
I've been trying to reproduce the issue by clearing mod list to use only core/dlcs, then adding one by one the mods that touch the gestator but I so far I have not been able to find the cause
< >
Showing 1-5 of 5 comments
Per page: 1530 50