RimWorld

RimWorld

Rimbody
Maux  [developer] 3 Nov, 2024 @ 11:07pm
Bug report
Report bugs here.
Please provide logs. I cannot do much without knowing what's going on.
< >
Showing 1-15 of 16 comments
Maux  [developer] 18 Nov, 2024 @ 2:58am 
Originally posted by CrackaJack:
with rimbody, misc training and get rimped active at the time i get this error when trying to manually use a martial arts target from misc training:
I am unable to reproduce this bug with the latest version of Rimbody. I believe this bug should have been fixed some time ago. Can you try reinstalling Rimbody? If the problem persists, full modlist could help.
CrackaJack 18 Nov, 2024 @ 4:32am 
-fixed even tho it wasnt rly a bug, thank you
Last edited by CrackaJack; 20 Nov, 2024 @ 5:56pm
Spanish Rice 19 Nov, 2024 @ 12:24am 
I'm having issues with pawn needing rescue being put in a bed. They often don't stay in bed. from what I can tell here is the issue:

Exception in JobDriver tick for pawn Cydones driver=JobDriver_LayDown (toilIndex=2) driver.job=(LayDown (Job_10940537) A = Thing_HospitalBed1969985 Giver = JobGiver_GetRest [workGiverDef: null])
System.NullReferenceException: Object reference not set to an instance of an object
[Ref CB21450D]
at Maux36.Rimbody.Pawn_Notify_AddBedThoughts.Postfix (Verse.Pawn __instance) [0x00016] in <6b9e48f7b4cb43289aad9884cea40e98>:0
at Verse.Pawn.Notify_AddBedThoughts () [0x00061] in <2a40c3593b334f29ac3cb3d32d652351>:0
- POSTFIX rimworld.mod.Maux.Rimbody: Void Maux36.Rimbody.Pawn_Notify_AddBedThoughts:Postfix(Pawn __instance)
at RimWorld.Toils_LayDown.ApplyBedThoughts (Verse.Pawn actor, RimWorld.Building_Bed bed) [0x00338] in <2a40c3593b334f29ac3cb3d32d652351>:0
- POSTFIX com.alphamemes: Void AlphaMemes.AlphaMemes_Toils_LayDown_ApplyBedThoughts_Patch:ApplyBarrackThoughts(Pawn actor)
at RimWorld.Toils_LayDown.ApplyBedRelatedEffects (Verse.Pawn p, RimWorld.Building_Bed bed, System.Boolean asleep, System.Boolean gainRest, System.Boolean deathrest) [0x00165] in <2a40c3593b334f29ac3cb3d32d652351>:0
at RimWorld.Toils_LayDown+<>c__DisplayClass6_0.<LayDown>b__1 () [0x000a3] in <2a40c3593b334f29ac3cb3d32d652351>:0
at Verse.AI.JobDriver.DriverTick () [0x001c7] in <2a40c3593b334f29ac3cb3d32d652351>:0
- TRANSPILER Krkr.RocketMan.Soyuz: IEnumerable`1 Soyuz.Patches.JobDriver_DriverTick_Patch:Transpiler(IEnumerable`1 instructions, ILGenerator generator)

and here are some logs that have the same reference:

Exception in JobDriver tick for pawn Shipman driver=JobDriver_LayDown (toilIndex=2) driver.job=(LayDown (Job_10987593) A = Thing_HospitalBed1963068 Giver = JobGiver_GotoTravelDestination [workGiverDef: null])
System.NullReferenceException: Object reference not set to an instance of an object
[Ref CB21450D] Duplicate stacktrace, see ref for original
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)

Exception in JobDriver tick for pawn Cydones driver=JobDriver_LayDown (toilIndex=2) driver.job=(LayDown (Job_10989557) A = Thing_HospitalBed1969923 Giver = JobGiver_GetRest [workGiverDef: null])
System.NullReferenceException: Object reference not set to an instance of an object
[Ref CB21450D] Duplicate stacktrace, see ref for original
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)

Exception in JobDriver tick for pawn Shipman driver=JobDriver_LayDown (toilIndex=2) driver.job=(LayDown (Job_10989608) A = Thing_HospitalBed1963068)
System.NullReferenceException: Object reference not set to an instance of an object
[Ref CB21450D] Duplicate stacktrace, see ref for original
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)

Exception in JobDriver tick for pawn Shipman driver=JobDriver_LayDown (toilIndex=2) driver.job=(LayDown (Job_10989845) A = Thing_HospitalBed1963068 Giver = JobGiver_PatientGoToBed [workGiverDef: null])
System.NullReferenceException: Object reference not set to an instance of an object
[Ref CB21450D] Duplicate stacktrace, see ref for original
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
Last edited by Spanish Rice; 19 Nov, 2024 @ 12:26am
Maux  [developer] 19 Nov, 2024 @ 5:48am 
Originally posted by CrackaJack:
ok i did that, same errors though. im using the (no task) version of misc training.
-edit: uh, yeah i see you patched the other version, so i guess this is more of a patch suggestion then a bug report xD
I didn't know there was a no task version. I'll make it so that my patch works with both version. The fix will be uploaded this weekend.
Last edited by Maux; 19 Nov, 2024 @ 6:15am
Maux  [developer] 19 Nov, 2024 @ 5:55am 
Originally posted by Spanish Rice:
I'm having issues with pawn needing rescue being put in a bed. They often don't stay in bed. from what I can tell here is the issue:

I think this issue is not Rimbody related. Has this problem never occurred with only alpha memes and not rimbody installed? The postfix in the log is literally this:

static void Postfix(Pawn __instance)
{
if(__instance != null)
{
var compPhysique = __instance.TryGetComp<CompPhysique>();
compPhysique?.memory.Clear();
}
}

As you can see, it checks for null on __instance, and compPhysique (the ? behind it). The only possible cause of null error is .memory, but it's coded so that it's never null (it's initiated as an empty stack, not null)

The possible cause I think is alpha memes. Specifically, if the pawn being put to bed does not have a need or a mood I can see this error happening, as alpha memes fails to check null ref there.

Another diagnosis is checking if this error occurs when you are putting them in a room with a single bed. Rimbody postfix operates on all beds, while alpha-meme postfix happens when they are put in a barrack bed (hospitals, barracks etc.)

Can you check these and tell me if the bug is still happening?
Spanish Rice 19 Nov, 2024 @ 1:00pm 
Originally posted by Maux:

The possible cause I think is alpha memes. Specifically, if the pawn being put to bed does not have a need or a mood I can see this error happening, as alpha memes fails to check null ref there.

Another diagnosis is checking if this error occurs when you are putting them in a room with a single bed. Rimbody postfix operates on all beds, while alpha-meme postfix happens when they are put in a barrack bed (hospitals, barracks etc.)

Can you check these and tell me if the bug is still happening?

I've only observed this in hospitals and Bedrooms (double bed w/ crib if it matters), I've deactivated rimbody on my save and after playing for a while with alpha memes the problem hasn't occurred yet. I'll keep you updated. Thanks for looking in to this!
Maux  [developer] 19 Nov, 2024 @ 5:32pm 
Originally posted by Spanish Rice:
Originally posted by Maux:

The possible cause I think is alpha memes. Specifically, if the pawn being put to bed does not have a need or a mood I can see this error happening, as alpha memes fails to check null ref there.

Another diagnosis is checking if this error occurs when you are putting them in a room with a single bed. Rimbody postfix operates on all beds, while alpha-meme postfix happens when they are put in a barrack bed (hospitals, barracks etc.)

Can you check these and tell me if the bug is still happening?

I've only observed this in hospitals and Bedrooms (double bed w/ crib if it matters), I've deactivated rimbody on my save and after playing for a while with alpha memes the problem hasn't occurred yet. I'll keep you updated. Thanks for looking in to this!

I read the log again and went through te codes. I think this is being caused by rimbody, and the cause could be steam not properly updating rimbody. (recent update added these null checks.) You can try uninstalling and reinstalling rimbody.

Also, more info can help me a bit. the pawns not being able to put to bed, are they custom race? do they have rimbody info? does this happen to vanilla baseline pawns?
Spanish Rice 19 Nov, 2024 @ 7:55pm 
Originally posted by Maux:
Originally posted by Spanish Rice:

I've only observed this in hospitals and Bedrooms (double bed w/ crib if it matters), I've deactivated rimbody on my save and after playing for a while with alpha memes the problem hasn't occurred yet. I'll keep you updated. Thanks for looking in to this!

I read the log again and went through te codes. I think this is being caused by rimbody, and the cause could be steam not properly updating rimbody. (recent update added these null checks.) You can try uninstalling and reinstalling rimbody.

Also, more info can help me a bit. the pawns not being able to put to bed, are they custom race? do they have rimbody info? does this happen to vanilla baseline pawns?

I have just removed and re-downloaded rimbody and I am getting the bug again. It's happening to all pawns regardless of they are baseliners or not (I'm not using HAR) and yes they do have rimbody info.
Maux  [developer] 19 Nov, 2024 @ 8:40pm 
Originally posted by Spanish Rice:
I have just removed and re-downloaded rimbody and I am getting the bug again. It's happening to all pawns regardless of they are baseliners or not (I'm not using HAR) and yes they do have rimbody info.

I see. Thanks for the report. Can you answer these?
1) When you remove Rimbody from the game does this error stop ocurring?
2) Does this happen when you are taking pawns to a room with a single bed?
Spanish Rice 19 Nov, 2024 @ 9:16pm 
Originally posted by Maux:
I see. Thanks for the report. Can you answer these?
1) When you remove Rimbody from the game does this error stop ocurring?
2) Does this happen when you are taking pawns to a room with a single bed?

1) Yes the error stops after I remove rimbdy from the list.
2) Yes I just tested it, single bed in a room by itself reproduces the bug.

Thanks again for taking a look, I've really liked the mod regardless of this bug!
Maux  [developer] 19 Nov, 2024 @ 9:33pm 
Originally posted by Spanish Rice:

1) Yes the error stops after I remove rimbdy from the list.
2) Yes I just tested it, single bed in a room by itself reproduces the bug.

Thanks again for taking a look, I've really liked the mod regardless of this bug!

Thanks for the detailed report! I've come up with a better way to implement the function. Hopefully this will stop this issue. The fix will be uploaded within a day or two at the longest. Thanks again for taking your time to report the issue!
Maux  [developer] 20 Nov, 2024 @ 10:21am 
Originally posted by Spanish Rice:
1) Yes the error stops after I remove rimbdy from the list.
2) Yes I just tested it, single bed in a room by itself reproduces the bug.

Thanks again for taking a look, I've really liked the mod regardless of this bug!

I've uploaded a fixed version that should not cause this error anymore. Hopefully this fixes the issue.
Mullymuffinman 22 Nov, 2024 @ 10:15am 
Originally posted by Maux:
Report bugs here.
Please provide logs. I cannot do much without knowing what's going on.

seems to be a incompatibility issue with grab your tools:

"JobDriver threw exception in toil GotoThing's initAction for pawn Constrictor driver=JobDriver_Jogging (toilIndex=1) driver.job=(Rimbody_Jogging (Job_34451) A = (187, 0, 224) Giver = JobGiver_Jogging [workGiverDef: null])
System.NullReferenceException: Object reference not set to an instance of an object
[Ref 743B3B8B]
at Maux36.Rimbody.JobDriver_Jogging+<>c__DisplayClass10_0.<MakeNewToils>b__0 () [0x00012] in :0
at Verse.AI.JobDriver.TryActuallyStartNextToil () [0x00203] in <2a40c3593b334f29ac3cb3d32d652351>:0
- POSTFIX CM_Grab_Your_Tool: Void CM_Grab_Your_Tool.ToilPatches+JobDriver_TryActuallyStartNextToil:Postfix(Pawn ___pawn, JobDriver __instance)
UnityEngine.StackTraceUtility:ExtractStackTrace ()"

and then a bunch of wrapper


(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.Log.Error_Patch7 (string)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.AI.JobUtility.TryStartErrorRecoverJob_Patch2 (Verse.Pawn,string,System.Exception,Verse.AI.JobDriver)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.AI.JobDriver.TryActuallyStartNextToil_Patch1 (Verse.AI.JobDriver)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.AI.JobDriver.ReadyForNextToil_Patch1 (Verse.AI.JobDriver)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.AI.JobDriver.TryActuallyStartNextToil_Patch1 (Verse.AI.JobDriver)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.AI.JobDriver.ReadyForNextToil_Patch1 (Verse.AI.JobDriver)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.AI.Pawn_JobTracker.StartJob_Patch10 (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.TryFindAndStartJob_Patch1 (Verse.AI.Pawn_JobTracker)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.AI.Pawn_JobTracker.EndCurrentJob_Patch7 (Verse.AI.Pawn_JobTracker,Verse.AI.JobCondition,bool,bool)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.AI.Pawn_JobTracker.JobTrackerTick_Patch0 (Verse.AI.Pawn_JobTracker)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.Pawn.Tick_Patch6 (Verse.Pawn)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.TickList.Tick_Patch2 (Verse.TickList)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.TickManager.DoSingleTick_Patch11 (Verse.TickManager)
Verse.TickManager:TickManagerUpdate ()
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.Game.UpdatePlay_Patch6 (Verse.Game)
(wrapper dynamic-method) MonoMod.Utils.DynamicMethodDefinition:Verse.Root_Play.Update_Patch1 (Verse.Root_Play)
Maux  [developer] 22 Nov, 2024 @ 9:15pm 
Originally posted by Mullymuffinman:

seems to be a incompatibility issue with grab your tools:

Thanks for reporting. There was a bug in jogging job. The bug has been fixed. If the problem persists, try uninstalling and reinstalling Rimbody.
Mullymuffinman 26 Nov, 2024 @ 3:59am 
Originally posted by Maux:
Originally posted by Mullymuffinman:

seems to be a incompatibility issue with grab your tools:

Thanks for reporting. There was a bug in jogging job. The bug has been fixed. If the problem persists, try uninstalling and reinstalling Rimbody.


That did fix some of it....
I have another bug concerning bed thoughts that means the colonist cant stay in bed for tending but. its a bit more complicated.

Exception in JobDriver tick for pawn Cork driver=JobDriver_LayDown (toilIndex=2) driver.job=(LayDown (Job_1120542) A = Thing_SleepingSpot197362)
System.NullReferenceException: Object reference not set to an instance of an object
[Ref 32EC7C61]
at Maux36.Rimbody.CompPhysique.Notify_AddBedThoughts (Verse.Pawn pawn) [0x00001] in <9966a7c35619452997b55b14bd5501fb>:0
at Verse.Pawn.Notify_AddBedThoughts () [0x00015] in <2a40c3593b334f29ac3cb3d32d652351>:0
at Hospitality.Patches.Toils_LayDown_Patch+ApplyBedThoughts.Replacement (Verse.Pawn actor) [0x00329] in <f086b02670a441c7ac199f90ab536abf>:0
at RimWorld.Toils_LayDown.ApplyBedThoughts (Verse.Pawn actor, RimWorld.Building_Bed bed) [0x00016] in <2a40c3593b334f29ac3cb3d32d652351>:0
- TRANSPILER BiomesTeam.BiomesCaverns: IEnumerable`1 BiomesCaverns.Patches.Toils_LayDown_ApplyBedThoughts_Patch:Transpiler(IEnumerable`1 instructions)
- PREFIX Orion.Hospitality: Boolean Hospitality.Patches.Toils_LayDown_Patch+ApplyBedThoughts:Replacement(Pawn actor)
- POSTFIX oskarpotocki.vfe.classical: Void VFEC.ClassicMod:TellBedAboutThoughts(Pawn actor)
- POSTFIX com.otters.rimworld.mod.Tents: Void Tent.Toils_LayDown_ApplyBedThoughts:Postfix(Pawn actor)
- POSTFIX com.alphamemes: Void AlphaMemes.AlphaMemes_Toils_LayDown_ApplyBedThoughts_Patch:ApplyBarrackThoughts(Pawn actor)
- POSTFIX llunak.MorePrecepts: Void MorePrecepts.Toils_LayDown_Patch:ApplyBedThoughts(Pawn actor)
at RimWorld.Toils_LayDown.ApplyBedRelatedEffects (Verse.Pawn p, RimWorld.Building_Bed bed, System.Boolean asleep, System.Boolean gainRest, System.Boolean deathrest) [0x00165] in <2a40c3593b334f29ac3cb3d32d652351>:0
at RimWorld.Toils_LayDown+<>c__DisplayClass6_0.<LayDown>b__1 () [0x000a3] in <2a40c3593b334f29ac3cb3d32d652351>:0
at LightsOut.Patches.Lights.DisableLightGlowOnSleep+<>c__DisplayClass0_1.<Postfix>b__1 () [0x0003b] in <21b886e2fecc4befbc03fe4a2d8ce4c8>:0
at Verse.AI.JobDriver.DriverTick () [0x001de] in <2a40c3593b334f29ac3cb3d32d652351>:0
- TRANSPILER Orion.Hospitality: IEnumerable`1 Hospitality.Patches.JobDriver_Patch+DriverTick:Transpiler(IEnumerable`1 insts)
- TRANSPILER lifelessons: IEnumerable`1 LifeLessons.Patches.JobDriver_DriverTick_Patch:Transpiler(IEnumerable`1 instructions, ILGenerator ILgen)
- TRANSPILER Krkr.RocketMan.Soyuz: IEnumerable`1 Soyuz.Patches.JobDriver_DriverTick_Patch:Transpiler(IEnumerable`1 instructions, ILGenerator generator)
- POSTFIX com.Lewkah0.fulfillmentmod: Void FulfillmentModNamespace.JobDriver_DriverTick_Patch:Postfix(JobDriver __instance)
UnityEngine.StackTraceUtility:ExtractStackTrace ()
< >
Showing 1-15 of 16 comments
Per page: 1530 50