RimWorld

RimWorld

[RH2] Faction: V.O.I.D.
thebewunderer 20. jan. 2023 kl. 20:31
Having the dreaded "Object reference not set to an instance of an object" Error
Edit: For anyone having this or similar errors, I recommend using the Mid-Save Saver mod and removing then re-adding VOID. It will fix the problem.

-------------------

More specifically I've been having this error:
"System.NullReferenceException: Object reference not set to an instance of an object
at VoidEvents.VoidGameComp.GameComponentTick () [0x00887] in <1f5e6c2f1f374383a1a419ab08641c67>:0
at Verse.GameComponentUtility.GameComponentTick () [0x00017] in <617d4a4b3c1842ffb4eb3fd1337f915c>:0 "

Repeating infinitely. I've tried multiple tings to fix it, but above all I'd really like to know what event it keeps referencing. I've been able to Isolate similar errors in the past by disabling the event in question that is trying to trigger, however I cannot find it this time. I know I have a ton of mods on, but I really want to see what can stand up against the VOID. Any help would be appreciated. I'll try to post what data I can. Let me know if you want to here my random unprofessional theories lol.

Here's my findings so far:
Using Dubs Analyzer I went to the GameComponentTick section and found VoidGameComp running at 97% with 0 calls. I clicked profile the internals and then got VoidEvents.Hediff_Regen:TryHealRandomPart running at 99% with 24 calls. I'm not sure where to go from here, but I took some screenshots. If you need them just tell me where to post them


Full Log:
https://gist.github.com/a469bda687340357a5346430d562af1f
Another:
https://gist.github.com/4d4018af25f2d392ad065026a9462ee9
Sidst redigeret af thebewunderer; 5. feb. 2023 kl. 17:14
< >
Viser 1-11 af 11 kommentarer
thebewunderer 21. jan. 2023 kl. 17:17 
I have dug a bit deeper and found this:
"System.NullReferenceException: Object reference not set to an instance of an object
at (wrapper dynamic-method) VoidEvents.Hediff_Regen.TryHealRandomPart_runtimeReplacement(VoidEvents.Hediff_Regen)
at (wrapper dynamic-method) VoidEvents.VoidGameComp.VoidEvents.VoidGameComp.GameComponentTick_Patch0(VoidEvents.VoidGameComp)
at Verse.GameComponentUtility.GameComponentTick () [0x00017] in <617d4a4b3c1842ffb4eb3fd1337f915c>:0
UnityEngine.StackTraceUtility:ExtractStackTrace ()
(wrapper dynamic-method) Verse.Log:Verse.Log.Error_Patch3 (string)
Verse.GameComponentUtility:GameComponentTick ()
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.DoSingleTick_Patch5 (Verse.TickManager)
Verse.TickManager:TickManagerUpdate ()
(wrapper dynamic-method) Verse.Game:Verse.Game.UpdatePlay_Patch1 (Verse.Game)
(wrapper dynamic-method) Verse.Root_Play:Verse.Root_Play.Update_Patch2 (Verse.Root_Play)
"
Aweguy 25. jan. 2023 kl. 14:29 
I have exactly the same error and it bloats my error log files to 3 Gigabytes. I don't want to remove the mod because i really like it. If you have found any solutions please post here, i'd like to know. (I haven't found any myself, i just live with it since it seems harmless)
thebewunderer 27. jan. 2023 kl. 2:23 
So I found this, and I am now convinced one of my other mods must be overriding or moving the "Hediff_Regen" reference


Could not resolve reference to object with loadID Hediff_2786 of type VoidEvents.Hediff_Regen. Was it compressed away, destroyed, had no ID number, or not saved/loaded right? curParent=VoidEvents.VoidGameComp curPathRelToParent=/hediff_Regenerations
UnityEngine.StackTraceUtility:ExtractStackTrace ()
(wrapper dynamic-method) Verse.Log:Verse.Log.Warning_Patch1 (string)
Verse.LoadedObjectDirectory:ObjectWithLoadID<VoidEvents.Hediff_Regen> (string)
Verse.CrossRefHandler:TakeResolvedRefList<VoidEvents.Hediff_Regen> (string,Verse.IExposable)
Verse.CrossRefHandler:TakeResolvedRefList<VoidEvents.Hediff_Regen> (string)
Verse.Scribe_Collections:Look<VoidEvents.Hediff_Regen> (System.Collections.Generic.List`1<VoidEvents.Hediff_Regen>&,bool,string,Verse.LookMode,object[])
Verse.Scribe_Collections:Look<VoidEvents.Hediff_Regen> (System.Collections.Generic.List`1<VoidEvents.Hediff_Regen>&,string,Verse.LookMode,object[])
VoidEvents.VoidGameComp:ExposeData ()
Verse.CrossRefHandler:ResolveAllCrossReferences ()
Verse.ScribeLoader:FinalizeLoading ()
(wrapper dynamic-method) Verse.Game:Verse.Game.LoadGame_Patch3 (Verse.Game)
Verse.SavedGameLoaderNow:LoadGameFromSaveFileNow (string)
Verse.Root_Play/<>c:<Start>b__1_1 ()
Verse.LongEventHandler:RunEventFromAnotherThread (System.Action)
Verse.LongEventHandler/<>c:<UpdateCurrentAsynchronousEvent>b__27_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 ()


I also found this:
Exception registering Verse.ThingWithComps Synthread144019 in loaded object directory with unique thing ID 144019: System.ArgumentException: An item with the same key has already been added. Key: 144019
at System.Collections.Generic.Dictionary`2[TKey,TValue].TryInsert (TKey key, TValue value, System.Collections.Generic.InsertionBehavior behavior) [0x000c1] in <eae584ce26bc40229c1b1aa476bfa589>:0
at System.Collections.Generic.Dictionary`2[TKey,TValue].Add (TKey key, TValue value) [0x00000] in <eae584ce26bc40229c1b1aa476bfa589>:0
at Verse.LoadedObjectDirectory.RegisterLoaded (Verse.ILoadReferenceable reffable) [0x00145] in <617d4a4b3c1842ffb4eb3fd1337f915c>:0
UnityEngine.StackTraceUtility:ExtractStackTrace ()
(wrapper dynamic-method) Verse.Log:Verse.Log.Error_Patch3 (string)
Verse.LoadedObjectDirectory:RegisterLoaded (Verse.ILoadReferenceable)
Verse.CrossRefHandler:ResolveAllCrossReferences ()
Verse.ScribeLoader:FinalizeLoading ()
(wrapper dynamic-method) Verse.Game:Verse.Game.LoadGame_Patch3 (Verse.Game)
Verse.SavedGameLoaderNow:LoadGameFromSaveFileNow (string)
Verse.Root_Play/<>c:<Start>b__1_1 ()
Verse.LongEventHandler:RunEventFromAnotherThread (System.Action)
Verse.LongEventHandler/<>c:<UpdateCurrentAsynchronousEvent>b__27_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 ()
Sidst redigeret af thebewunderer; 27. jan. 2023 kl. 2:32
Aweguy 27. jan. 2023 kl. 3:03 
I fixed the error by doing something really not recommended for late game runs using Mid-save Saver. I removed the mod, used the faction removal fix and voila. Then re-enabled the mod and the error spam is gone
Also about your message, i didn't have that error.
thebewunderer 28. jan. 2023 kl. 21:43 
Interesting. I hadn't thought about removing and re adding Void. So did you remove Void. Load your game, run the fix, save, then re add void and load the new save?

Did it mess up any of the Void progress? Like sending a new delegation to meet you. I assume they ended up with new bases and you lost all your Void gear.
Aweguy 29. jan. 2023 kl. 0:15 
Yes, i exactly did what you said. Also yes, all Void bases and equipment were lost (naturally) in the process. I did it cuz it was a new run and i didn't care much about them losing their progress. It beats bloating my logs! They do send a new delegation :c but you can challenge yourself by making them hostile by insulting :p . They are more than capable to be a challenge.

Just be sure to turn on the fix BEFORE loading the save via going in the mod settings when you are in the main menu, else it'll have problems with void removed. Also it'll give you instructions afterwards, so don't worry. Just follow them. (ignore all the red errors that will come up, they are nothing serious)
Chicken Plucker  [udvikler] 2. feb. 2023 kl. 11:52 
Hey guys, seen the report in comments too. As I've said, I've pasted the report to Taranchuk. He'll get around to doing the list of stuff I gave him when he can. I'll get back to you guys when he drops da news
Aweguy 2. feb. 2023 kl. 13:50 
Good to know. Thanks CP
thebewunderer 5. feb. 2023 kl. 17:12 
Thanks CP! I followed your advice @Aweguy and used Mid-save saver to remove and re-add the VOID mod. It did fix everything for me too. I didn't realize how broken my game was until doing this because before doing this my VOID people weren't reviving. Now they do and it's terrifying.

I actually suspect my repeating error had something to do with the VOID self revive failing.

Unrelated question, but are there supposed to be raids from the hidden N-4 faction? I saw a raid trigger failure in my logs last night and it made me wonder if it's supposed to happen. I've only ever seen the creatures with VOID or as part of a crashed event..... And the one time there was 40 man-eating Giant Spiders... But we don't talk about those dark times.
Chicken Plucker  [udvikler] 6. feb. 2023 kl. 15:04 
Hey guys, just to update you that Taran has fixed the issue based on your error log. I just need to find the free time to push the updates. It'll be sorted this coming patch

muchos gracias my friends
Sidst redigeret af Chicken Plucker; 6. feb. 2023 kl. 15:04
Aweguy 7. feb. 2023 kl. 1:40 
Thanks for the update Chicken Plucker. Happy we helped
< >
Viser 1-11 af 11 kommentarer
Per side: 1530 50