cseelhoff / RimThreaded

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

PawnWoundDrawer errors #713

Closed Niilo007 closed 2 years ago

Niilo007 commented 2 years ago

IMPORTANT:

Please first search existing bugs to ensure you are not creating a duplicate bug report!
Make sure you have the latest version of Rimworld!

Describe the bug

!!! bug description here !!!

Steps to reproduce the behavior (VERY IMPORTANT)

  1. load save
  2. speed 4
  3. occasionally you will get a bunch of errorrs
  4. See error

Error Logs

Exception ticking Panther44529 (at (130, 0, 165)): System.NullReferenceException: Object reference not set to an instance of an object
  at RimWorld.PawnWoundDrawer.ReturnDrawCallList (System.Collections.Generic.List`1[T] lst) [0x00000] in <e13bd2f1929544099ed2b58e66ece833>:0 
  at RimWorld.PawnWoundDrawer.ClearCache () [0x0001a] in <e13bd2f1929544099ed2b58e66ece833>:0 
  at Verse.Hediff_MissingPart.set_IsFresh (System.Boolean value) [0x00026] in <e13bd2f1929544099ed2b58e66ece833>:0 
  at RimThreaded.HediffSet_Patch.AddDirect (Verse.HediffSet __instance, Verse.Hediff hediff, System.Nullable`1[T] dinfo, Verse.DamageWorker+DamageResult damageResult) [0x001a1] in <86be62ec05034ba58645d699f2fc63ae>:0 
  at (wrapper dynamic-method) Verse.HediffSet.Verse.HediffSet.AddDirect_Patch1(Verse.HediffSet,Verse.Hediff,System.Nullable`1<Verse.DamageInfo>,Verse.DamageWorker/DamageResult)
  at Verse.Pawn_HealthTracker.AddHediff (Verse.Hediff hediff, Verse.BodyPartRecord part, System.Nullable`1[T] dinfo, Verse.DamageWorker+DamageResult result) [0x0000a] in <e13bd2f1929544099ed2b58e66ece833>:0 
  at Verse.DamageWorker_AddInjury.FinalizeAndAddInjury (Verse.Pawn pawn, Verse.Hediff_Injury injury, Verse.DamageInfo dinfo, Verse.DamageWorker+DamageResult result) [0x00163] in <e13bd2f1929544099ed2b58e66ece833>:0 
  at Verse.DamageWorker_AddInjury.FinalizeAndAddInjury (Verse.Pawn pawn, System.Single totalDamage, Verse.DamageInfo dinfo, Verse.DamageWorker+DamageResult result) [0x000c1] in <e13bd2f1929544099ed2b58e66ece833>:0 
  at Verse.DamageWorker_Scratch.ApplySpecialEffectsToPart (Verse.Pawn pawn, System.Single totalDamage, Verse.DamageInfo dinfo, Verse.DamageWorker+DamageResult result) [0x00182] in <e13bd2f1929544099ed2b58e66ece833>:0 
  at Verse.DamageWorker_AddInjury.ApplyDamageToPart (Verse.DamageInfo dinfo, Verse.Pawn pawn, Verse.DamageWorker+DamageResult result) [0x00145] in <e13bd2f1929544099ed2b58e66ece833>:0 
  at Verse.DamageWorker_AddInjury.ApplyToPawn (Verse.DamageInfo dinfo, Verse.Pawn pawn) [0x00091] in <e13bd2f1929544099ed2b58e66ece833>:0 
  at Verse.DamageWorker_AddInjury.Apply (Verse.DamageInfo dinfo, Verse.Thing thing) [0x00013] in <e13bd2f1929544099ed2b58e66ece833>:0 
  at (wrapper dynamic-method) Verse.Thing.Verse.Thing.TakeDamage_Patch0(Verse.Thing,Verse.DamageInfo)
  at RimWorld.Verb_MeleeAttackDamage.ApplyMeleeDamageToTarget (Verse.LocalTargetInfo target) [0x0002e] in <e13bd2f1929544099ed2b58e66ece833>:0 
  at RimWorld.Verb_MeleeAttack.TryCastShot () [0x001e8] in <e13bd2f1929544099ed2b58e66ece833>:0 
  at Verse.Verb.TryCastNextBurstShot () [0x00012] in <e13bd2f1929544099ed2b58e66ece833>:0 
  at Verse.Verb.VerbTick () [0x00055] in <e13bd2f1929544099ed2b58e66ece833>:0 
  at Verse.VerbTracker.VerbsTick () [0x00019] in <e13bd2f1929544099ed2b58e66ece833>:0 
  at Verse.Pawn.Tick () [0x00074] in <e13bd2f1929544099ed2b58e66ece833>:0 
  at RimThreaded.TickList_Patch.NormalThingTick () [0x00025] in <86be62ec05034ba58645d699f2fc63ae>:0 
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
RimThreaded.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)

Player.log

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

HugsLib log

https://gist.github.com/5b8339ffc446040dec943792939dbf49

Save file

Test Saves#§#wound draver errrors.zip

Screenshots

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

Mod list (For vanilla report, it has to be same as below list.)

Niilo007 commented 2 years ago

687 probably related

Niilo007 commented 2 years ago

Seems to be fixed in 2.5.16.1