cseelhoff / RimThreaded

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

Biosculpters spam tick exceptions with Vanilla Nutrient Paste Expanded #785

Open ChakMlaxpin opened 1 year ago

ChakMlaxpin commented 1 year ago

Developer To Do Notes:

Non-Vanilla Bug Report

Describe the bug

Placing biosculpter pod in the world when using Vanilla Nutrient Paste expanded causes a spam of red errors regarding an exception ticking the pod.

Steps to reproduce the behavior (VERY IMPORTANT)

  1. Create or load world
  2. Place biosculpter pod (if one is already in the world, skip to step 3)
  3. Look at spam in debug log
  4. Mutilate your SSD's storage from error log size (optional)

Error Logs ?


Exception ticking BiosculpterPod_1x2_Center3781947 (at (165, 0, 89)): System.IndexOutOfRangeException: Index was outside the bounds of the array.
  at System.Collections.Generic.Dictionary`2[TKey,TValue].TryInsert (TKey key, TValue value, System.Collections.Generic.InsertionBehavior behavior) [0x00156] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at System.Collections.Generic.Dictionary`2[TKey,TValue].Add (TKey key, TValue value) [0x00000] in <eae584ce26bc40229c1b1aa476bfa589>:0 
  at VNPE.CompBiosculpterPod_CompTick.IsIntervalTick (RimWorld.CompBiosculpterPod comp) [0x00013] in <1c218374a0594b2d806c65243d3e4cd7>:0 
  at VNPE.CompBiosculpterPod_CompTick.Postfix (System.Single& ___liquifiedNutrition, RimWorld.CompBiosculpterPod __instance) [0x00001] in <1c218374a0594b2d806c65243d3e4cd7>:0 
  at (wrapper dynamic-method) RimWorld.CompBiosculpterPod.RimWorld.CompBiosculpterPod.CompTick_Patch1(RimWorld.CompBiosculpterPod)
  at (wrapper dynamic-method) Verse.ThingWithComps.Verse.ThingWithComps.Tick_Patch0(Verse.ThingWithComps)
  at RimThreaded.RW_Patches.TickList_Patch.NormalThingTick () [0x00025] in <ecd0748a483645afb32087a92b0b4c3c>:0 
UnityEngine.StackTraceUtility:ExtractStackTrace ()
(wrapper dynamic-method) Verse.Log:Verse.Log.Error_Patch4 (string)
RimThreaded.RW_Patches.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)

HugsLib log

https://gist.github.com/HugsLibRecordKeeper/2dc66e5ad770f8b7e877f03cacb60a4a

Player.log (Optional)

❗❗❗ Link to contents of Player.log or Error.log (MUST BE LINK) ❗❗❗

Save file ?

Save file.zip

Screenshots (Optional) ?

❗❗❗ Add screenshots to help explain your problem here ❗❗❗

Mod list (Preferably a RimPy compatible list.) ?

Rimthreaded bug report.zip

Note: List is very large. Relevant mods below.

Included the biosculpter variations mod as I have that too and it may be relevant however the issue persists when using vanilla biosculpters as well.