RimWorld

RimWorld

Variety Matters Redux
HTxL  [developer] 4 Nov, 2023 @ 3:41pm
Bug Reports
Please report bugs here with the following details:

- Brief bug description and reproduction steps.
- Screenshots/error messages, if any.
- Relevant log files.

Quick and precise reports help us resolve issues faster. Thank you!
< >
Showing 1-15 of 30 comments
Mewn Goddess 10 Nov, 2023 @ 6:09pm 
Hello! Thanks for maintaining the mod ^_^
There is some minor issue that I've encountered which isn't a bug exactly - it is a warning in the startup dev log. Idk if it is important information or not, I just thought I'd let you know.


Possible typo: FoodVariety_NeedDef. Using def type name not preceded by "Of"
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Warning (string)
RimWorld.DefOfHelper:EnsureInitializedInCtor (System.Type)
VarietyMatters.DefOf_VarietyMatters:.cctor ()
System.Reflection.MonoField:SetValue (object,object,System.Reflection.BindingFlags,System.Reflection.Binder,System.Globalization.CultureInfo)
System.Reflection.FieldInfo:SetValue (object,object)
RimWorld.DefOfHelper:BindDefsFor (System.Type)
System.Threading.Tasks.Parallel/<>c__DisplayClass31_0`2<System.Type, object>:<ForEachWorker>b__0 (int)
System.Threading.Tasks.Parallel/<>c__DisplayClass17_0`1<object>:<ForWorker>b__1 ()
System.Threading.Tasks.Task:InnerInvoke ()
System.Threading.Tasks.Task:InnerInvokeWithArg (System.Threading.Tasks.Task)
System.Threading.Tasks.Task/<>c__DisplayClass178_0:<ExecuteSelfReplicating>b__0 (object)
System.Threading.Tasks.Task:InnerInvoke ()
System.Threading.Tasks.Task:Execute ()
System.Threading.Tasks.Task:ExecutionContextCallback (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.Tasks.Task:ExecuteWithThreadLocal (System.Threading.Tasks.Task&)
System.Threading.Tasks.Task:ExecuteEntry (bool)
System.Threading.Tasks.Task:System.Threading.IThreadPoolWorkItem.ExecuteWorkItem ()
System.Threading.ThreadPoolWorkQueue:Dispatch ()
System.Threading._ThreadPoolWaitCallback:PerformWaitCallback ()
HTxL  [developer] 20 Nov, 2023 @ 8:13pm 
Thank you @Mewn Goddess!
I'll fix it next update
HTxL  [developer] 23 Nov, 2023 @ 10:39pm 
fixed
Biancashew 24 Nov, 2023 @ 12:43am 
Hello!
Thank you for the good mod.
The problem has been occurring since the last update.
Pawn is not eating at all.
Here is the log:

Exception in Verse.AI.ThinkNode_Priority TryIssueJobPackage: System.NullReferenceException: Object reference not set to an instance of an object
at VarietyMatters.VarietyRecord.GetVarietyRecord (Verse.Pawn trackedPawn) [0x00000] in <8c936639f54746f392dbfc2d223397be>:0
at VarietyMatters.Patch_FoodUtility.Postfix_FoodOptimality (System.Single& __result, Verse.Pawn eater, Verse.Thing foodSource, System.Boolean takingToInventory) [0x00004] in <8c936639f54746f392dbfc2d223397be>:0
at (wrapper dynamic-method) RimWorld.FoodUtility.RimWorld.FoodUtility.FoodOptimality_Patch2(Verse.Pawn,Verse.Thing,Verse.ThingDef,single,bool)
at RimWorld.FoodUtility.SpawnedFoodSearchInnerScan (Verse.Pawn eater, Verse.IntVec3 root, System.Collections.Generic.List`1[T] searchSet, Verse.AI.PathEndMode peMode, Verse.TraverseParms traverseParams, System.Single maxDistance, System.Predicate`1[T] validator) [0x00066] in <cd7169108ea74757aa50c5b33d275c15>:0
at (wrapper dynamic-method) RimWorld.FoodUtility.RimWorld.FoodUtility.BestFoodSourceOnMap_NewTemp_Patch0(Verse.Pawn,Verse.Pawn,bool,Verse.ThingDef&,RimWorld.FoodPreferability,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,RimWorld.FoodPreferability,System.Nullable`1<single>,bool)
at RimWorld.FoodUtility.TryFindBestFoodSourceFor_NewTemp (Verse.Pawn getter, Verse.Pawn eater, System.Boolean desperate, Verse.Thing& foodSource, Verse.ThingDef& foodDef, System.Boolean canRefillDispenser, System.Boolean canUseInventory, System.Boolean canUsePackAnimalInventory, System.Boolean allowForbidden, System.Boolean allowCorpse, System.Boolean allowSociallyImproper, System.Boolean allowHarvest, System.Boolean forceScanWholeMap, System.Boolean ignoreReservations, System.Boolean calculateWantedStackCount, System.Boolean allowVenerated, RimWorld.FoodPreferability minPrefOverride) [0x00172] in <cd7169108ea74757aa50c5b33d275c15>:0
at RimWorld.ThinkNode_ConditionalMustKeepLyingDown.Satisfied (Verse.Pawn pawn) [0x000c6] in <cd7169108ea74757aa50c5b33d275c15>:0
at (wrapper dynamic-method) Verse.AI.ThinkNode_Conditional.Verse.AI.ThinkNode_Conditional.TryIssueJobPackage_Patch1(Verse.AI.ThinkNode_Conditional,Verse.Pawn,Verse.AI.JobIssueParams)
at (wrapper dynamic-method) Verse.AI.ThinkNode_Priority.Verse.AI.ThinkNode_Priority.TryIssueJobPackage_Patch1(Verse.AI.ThinkNode_Priority,Verse.Pawn,Verse.AI.JobIssueParams)
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)

Exception in Verse.AI.ThinkNode_PrioritySorter TryIssueJobPackage: System.NullReferenceException: Object reference not set to an instance of an object
at VarietyMatters.VarietyRecord.GetVarietyRecord (Verse.Pawn trackedPawn) [0x00000] in <8c936639f54746f392dbfc2d223397be>:0
at VarietyMatters.Patch_FoodUtility.Postfix_FoodOptimality (System.Single& __result, Verse.Pawn eater, Verse.Thing foodSource, System.Boolean takingToInventory) [0x00004] in <8c936639f54746f392dbfc2d223397be>:0
at (wrapper dynamic-method) RimWorld.FoodUtility.RimWorld.FoodUtility.FoodOptimality_Patch2(Verse.Pawn,Verse.Thing,Verse.ThingDef,single,bool)
at RimWorld.FoodUtility.SpawnedFoodSearchInnerScan (Verse.Pawn eater, Verse.IntVec3 root, System.Collections.Generic.List`1[T] searchSet, Verse.AI.PathEndMode peMode, Verse.TraverseParms traverseParams, System.Single maxDistance, System.Predicate`1[T] validator) [0x00066] in <cd7169108ea74757aa50c5b33d275c15>:0
at (wrapper dynamic-method) RimWorld.FoodUtility.RimWorld.FoodUtility.BestFoodSourceOnMap_NewTemp_Patch0(Verse.Pawn,Verse.Pawn,bool,Verse.ThingDef&,RimWorld.FoodPreferability,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,RimWorld.FoodPreferability,System.Nullable`1<single>,bool)
at RimWorld.FoodUtility.TryFindBestFoodSourceFor_NewTemp (Verse.Pawn getter, Verse.Pawn eater, System.Boolean desperate, Verse.Thing& foodSource, Verse.ThingDef& foodDef, System.Boolean canRefillDispenser, System.Boolean canUseInventory, System.Boolean canUsePackAnimalInventory, System.Boolean allowForbidden, System.Boolean allowCorpse, System.Boolean allowSociallyImproper, System.Boolean allowHarvest, System.Boolean forceScanWholeMap, System.Boolean ignoreReservations, System.Boolean calculateWantedStackCount, System.Boolean allowVenerated, RimWorld.FoodPreferability minPrefOverride) [0x00172] in <cd7169108ea74757aa50c5b33d275c15>:0
at (wrapper dynamic-method) RimWorld.JobGiver_GetFood.RimWorld.JobGiver_GetFood.TryGiveJob_Patch2(RimWorld.JobGiver_GetFood,Verse.Pawn)
at (wrapper dynamic-method) Verse.AI.ThinkNode_JobGiver.Verse.AI.ThinkNode_JobGiver.TryIssueJobPackage_Patch1(Verse.AI.ThinkNode_JobGiver,Verse.Pawn,Verse.AI.JobIssueParams)
at (wrapper dynamic-method) Verse.AI.ThinkNode_PrioritySorter.Verse.AI.ThinkNode_PrioritySorter.TryIssueJobPackage_Patch1(Verse.AI.ThinkNode_PrioritySorter,Verse.Pawn,Verse.AI.JobIssueParams)
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)
HTxL  [developer] 24 Nov, 2023 @ 9:00am 
Hey, this should be fixed now :)
Teellox 2 Dec, 2023 @ 10:20pm 
Absolutely *loving* this mod! But I have caught just one little snag.

I have some colonists with the genetic trait "Robust Digestion", which gives them a 180% nutrition boost from raw food, and also removes the penalties for consuming raw food.

However putting them on a diet of uncooked food makes their variety meter plummet to zero, with all memories being along the lines of "raw food... this isn't variety, it's a survival test", or "too raw for my liking...".

To be fair, everyone with this trait also has an ideoligion that means they hate fruit and vegetables (which all the colony's kids decided to then adopt :winter2019tiredgingerbread:!), so their variety *is* on the poor side, but we hunt a range of animals and have both duck and chicken eggs, so it feels like it shouldn't bottom out at zero.

I'm not sure of the best mechanic fix for this, maybe some sort of a variety buff to raw food for those with Robust Digestion?
HTxL  [developer] 5 Dec, 2023 @ 1:18am 
Hey @Teellox thanks for the report. I changed a bit the logic in the latest versions so it also takes into account the mood debuffs of foods.
Can you check whether it works as intended for you now for raw foods with the Robust Digestion?
Teellox 5 Dec, 2023 @ 3:07pm 
@HTxL: Thank you!!! I shall update and do some testing and get back to you!
Teellox 5 Dec, 2023 @ 3:33pm 
Getting an error thrown when I load my save:

Could not do PostLoadInit on VarietyMatters.New.DietTracker: System.ArgumentNullException: Value cannot be null. Parameter name: pawn at VarietyMatters.New.VarietyProvider.ValidateInputs (Verse.Pawn pawn, VarietyMatters.New.EatenFoodSource foodSource) [0x00003] in <f7d0da7aade04680a4a0fe500757d053>:0 at VarietyMatters.New.VarietyProvider.DoesFoodHasVarietyValueForPawn (Verse.Pawn pawn, VarietyMatters.New.EatenFoodSource foodSource, VarietyMatters.New.NoVarietyReason& noVarietyReason) [0x00000] in <f7d0da7aade04680a4a0fe500757d053>:0 at VarietyMatters.New.DietTracker.AddFoodSourceToCount (VarietyMatters.New.EatenFoodSource foodSource) [0x00050] in <f7d0da7aade04680a4a0fe500757d053>:0 at VarietyMatters.New.DietTracker.ReCount () [0x00044] in <f7d0da7aade04680a4a0fe500757d053>:0 at VarietyMatters.New.DietTracker.ExposeData () [0x000b1] in <f7d0da7aade04680a4a0fe500757d053>:0 at Verse.PostLoadIniter.DoAllPostLoadInits () [0x00032] in <cd7169108ea74757aa50c5b33d275c15>:0 (Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)

Prior to this is also a warning:

Null key while loading dictionary of Verse.Pawn and VarietyMatters.New.DietTracker. label=VarietyRecordV2 (Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 39)

RimWorld then crashes 1-2 seconds after loading my save, which is new, but I'm not sure that's this mod's fault, as it *also* crashes when I remove VarietyMatters from my save! :)
Teellox 5 Dec, 2023 @ 5:04pm 
Now confirming that folks with Robust Digestion are now very happy and are no longer getting zero variety from raw foods. Thank you!

Looks like the crash I mentioned was a false alarm and my save was bugged. Rolling back to my save before last worked fine.
HTxL  [developer] 5 Dec, 2023 @ 10:27pm 
Nice! and glad the save issue worked out :)
Teellox 6 Dec, 2023 @ 5:39pm 
Here reporting variety resets, although I'm not sure either if they're happening on save, load, or some other circumstance.

Possibly relevant stack traces below.

31 occurances:

Relevant DietTracker:: Loaded eaten food source by pawn with null pawn. UnityEngine.StackTraceUtility:ExtractStackTrace () Verse.Log:Warning (string) VarietyMatters.New.DietTracker:IsEatenFoodSourceByPawnValid (VarietyMatters.New.EatenFoodByPawn) VarietyMatters.New.DietTracker:<ExposeData>b__31_2 (VarietyMatters.New.EatenFoodByPawn) System.Linq.Enumerable/WhereListIterator`1<VarietyMatters.New.EatenFoodByPawn>:MoveNext () System.Collections.Generic.EnumerableHelpers:ToArray<VarietyMatters.New.EatenFoodByPawn> (System.Collections.Generic.IEnumerable`1<VarietyMatters.New.EatenFoodByPawn>,int&) System.Collections.Generic.Queue`1<VarietyMatters.New.EatenFoodByPawn>:.ctor (System.Collections.Generic.IEnumerable`1<VarietyMatters.New.EatenFoodByPawn>) VarietyMatters.New.DietTracker:ExposeData () Verse.ScribeExtractor:SaveableFromNode<VarietyMatters.New.DietTracker> (System.Xml.XmlNode,object[]) Verse.Scribe_Collections:Look<VarietyMatters.New.DietTracker> (System.Collections.Generic.List`1<VarietyMatters.New.DietTracker>&,bool,string,Verse.LookMode,object[]) Verse.Scribe_Collections:Look<VarietyMatters.New.DietTracker> (System.Collections.Generic.List`1<VarietyMatters.New.DietTracker>&,string,Verse.LookMode,object[]) Verse.Scribe_Collections:Look<Verse.Pawn, VarietyMatters.New.DietTracker> (System.Collections.Generic.Dictionary`2<Verse.Pawn, VarietyMatters.New.DietTracker>&,string,Verse.LookMode,Verse.LookMode,System.Collections.Generic.List`1<Verse.Pawn>&,System.Collections.Generic.List`1<VarietyMatters.New.DietTracker>&,bool) VarietyMatters.VarietyRecord:ExposeData () Verse.ScribeExtractor:SaveableFromNode<Verse.GameComponent> (System.Xml.XmlNode,object[]) Verse.Scribe_Collections:Look<Verse.GameComponent> (System.Collections.Generic.List`1<Verse.GameComponent>&,bool,string,Verse.LookMode,object[]) Verse.Scribe_Collections:Look<Verse.GameComponent> (System.Collections.Generic.List`1<Verse.GameComponent>&,string,Verse.LookMode,object[]) Verse.Game:ExposeSmallComponents () (wrapper dynamic-method) Verse.Game:Verse.Game.LoadGame_Patch4 (Verse.Game) (wrapper dynamic-method) Verse.SavedGameLoaderNow:Verse.SavedGameLoaderNow.LoadGameFromSaveFileNow_Patch1 (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 ()

1 occurance:

Could not resolve reference to object with loadID Lord_99 of type Verse.AI.Group.Lord. Was it compressed away, destroyed, had no ID number, or not saved/loaded right? curParent=VanillaStorytellersExpanded.RaidGroup curPathRelToParent=/lords UnityEngine.StackTraceUtility:ExtractStackTrace () Verse.Log:Warning (string) Verse.LoadedObjectDirectory:ObjectWithLoadID<Verse.AI.Group.Lord> (string) Verse.CrossRefHandler:TakeResolvedRefList<Verse.AI.Group.Lord> (string,Verse.IExposable) Verse.CrossRefHandler:TakeResolvedRefList<Verse.AI.Group.Lord> (string) Verse.Scribe_Collections:Look<Verse.AI.Group.Lord> (System.Collections.Generic.List`1<Verse.AI.Group.Lord>&,bool,string,Verse.LookMode,object[]) Verse.Scribe_Collections:Look<Verse.AI.Group.Lord> (System.Collections.Generic.HashSet`1<Verse.AI.Group.Lord>&,bool,string,Verse.LookMode) Verse.Scribe_Collections:Look<Verse.AI.Group.Lord> (System.Collections.Generic.HashSet`1<Verse.AI.Group.Lord>&,string,Verse.LookMode) VanillaStorytellersExpanded.RaidGroup:ExposeData () Verse.CrossRefHandler:ResolveAllCrossReferences () Verse.ScribeLoader:FinalizeLoading () (wrapper dynamic-method) Verse.Game:Verse.Game.LoadGame_Patch4 (Verse.Game) (wrapper dynamic-method) Verse.SavedGameLoaderNow:Verse.SavedGameLoaderNow.LoadGameFromSaveFileNow_Patch1 (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 ()

1 occurance:

Could not resolve reference to object with loadID Faction_26 of type RimWorld.Faction. Was it compressed away, destroyed, had no ID number, or not saved/loaded right? curParent=VanillaStorytellersExpanded.RaidGroup curPathRelToParent= UnityEngine.StackTraceUtility:ExtractStackTrace () Verse.Log:Warning (string) Verse.LoadedObjectDirectory:ObjectWithLoadID<RimWorld.Faction> (string) Verse.CrossRefHandler:TakeResolvedRef<RimWorld.Faction> (string,Verse.IExposable) Verse.CrossRefHandler:TakeResolvedRef<RimWorld.Faction> (string) Verse.Scribe_References:Look<RimWorld.Faction> (RimWorld.Faction&,string,bool) VanillaStorytellersExpanded.RaidGroup:ExposeData () Verse.CrossRefHandler:ResolveAllCrossReferences () Verse.ScribeLoader:FinalizeLoading () (wrapper dynamic-method) Verse.Game:Verse.Game.LoadGame_Patch4 (Verse.Game) (wrapper dynamic-method) Verse.SavedGameLoaderNow:Verse.SavedGameLoaderNow.LoadGameFromSaveFileNow_Patch1 (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 ()

8 occurances:

Could not resolve reference to object with loadID EatenFoodSource_ForgottenFood of type VarietyMatters.New.EatenFoodSource. Was it compressed away, destroyed, had no ID number, or not saved/loaded right? curParent=VarietyMatters.New.EatenFoodByPawn curPathRelToParent= UnityEngine.StackTraceUtility:ExtractStackTrace () Verse.Log:Warning (string) Verse.LoadedObjectDirectory:ObjectWithLoadID<VarietyMatters.New.EatenFoodSource> (string) Verse.CrossRefHandler:TakeResolvedRef<VarietyMatters.New.EatenFoodSource> (string,Verse.IExposable) Verse.CrossRefHandler:TakeResolvedRef<VarietyMatters.New.EatenFoodSource> (string) Verse.Scribe_References:Look<VarietyMatters.New.EatenFoodSource> (VarietyMatters.New.EatenFoodSource&,string,bool) VarietyMatters.New.EatenFoodByPawn:ExposeData () Verse.CrossRefHandler:ResolveAllCrossReferences () Verse.ScribeLoader:FinalizeLoading () (wrapper dynamic-method) Verse.Game:Verse.Game.LoadGame_Patch4 (Verse.Game) (wrapper dynamic-method) Verse.SavedGameLoaderNow:Verse.SavedGameLoaderNow.LoadGameFromSaveFileNow_Patch1 (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 ()
HTxL  [developer] 6 Dec, 2023 @ 11:11pm 
@Teellox Hey, the latest update might cause pawns to variety to be forgotten by pawns, but it should be fine after the first load. Can you check whether it's happening later, or just the first load after the update?

regarding the error logs, it seems like you had another issue with your save, where pawns were deleted, probably because you removed a faction by disabling another mod, you can ignore the logs of my mod since they are just warning you that it couldn't find these pawns anymore
Last edited by HTxL; 6 Dec, 2023 @ 11:11pm
Teellox 7 Dec, 2023 @ 1:41pm 
@HTxL: I uninstalled VMR as my pawns were so miserable with not being able to what they had eaten, but upon reinstallation it looks like everything is working great again!

I do have one pawn who loves insect meat (and gets a mood buff from eating it), and seems to be ignoring everything else in favour of its consumption, which I'm guessing is vanilla behaviour.

Thanks again for all the speedy updates and a fantastic mod!
dinglebop jones 12 Dec, 2023 @ 10:27am 
Keep on getting errors like this..

Exception in Verse.AI.ThinkNode_PrioritySorter TryIssueJobPackage: System.NullReferenceException: Object reference not set to an instance of an object
at VarietyMatters.VarietyRecord.AddVarietyRecord (Verse.Pawn pawn) [0x00021] in <ed55664b4ba349bfa1ea24c4138ebdea>:0
at VarietyMatters.VarietyRecord.GetVarietyRecord (Verse.Pawn trackedPawn) [0x0001d] in <ed55664b4ba349bfa1ea24c4138ebdea>:0
at VarietyMatters.Patch_FoodUtility.Postfix_FoodOptimality (System.Single& __result, Verse.Pawn eater, Verse.Thing foodSource, System.Boolean takingToInventory) [0x00004] in <ed55664b4ba349bfa1ea24c4138ebdea>:0
at (wrapper dynamic-method) RimWorld.FoodUtility.RimWorld.FoodUtility.FoodOptimality_Patch4(Verse.Pawn,Verse.Thing,Verse.ThingDef,single,bool)
at (wrapper dynamic-method) RimWorld.FoodUtility.RimWorld.FoodUtility.SpawnedFoodSearchInnerScan_Patch1(Verse.Pawn,Verse.IntVec3,System.Collections.Generic.List`1<Verse.Thing>,Verse.AI.PathEndMode,Verse.TraverseParms,single,System.Predicate`1<Verse.Thing>)
at (wrapper dynamic-method) RimWorld.FoodUtility.RimWorld.FoodUtility.BestFoodSourceOnMap_NewTemp_Patch2(Verse.Pawn,Verse.Pawn,bool,Verse.ThingDef&,RimWorld.FoodPreferability,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,RimWorld.FoodPreferability,System.Nullable`1<single>,bool)
at (wrapper dynamic-method) RimWorld.FoodUtility.RimWorld.FoodUtility.TryFindBestFoodSourceFor_NewTemp_Patch2(Verse.Pawn,Verse.Pawn,bool,Verse.Thing&,Verse.ThingDef&,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,RimWorld.FoodPreferability)
at (wrapper dynamic-method) RimWorld.JobGiver_GetFood.RimWorld.JobGiver_GetFood.TryGiveJob_Patch3(RimWorld.JobGiver_GetFood,Verse.Pawn)
at Verse.AI.ThinkNode_JobGiver.TryIssueJobPackage (Verse.Pawn pawn, Verse.AI.JobIssueParams jobParams) [0x00000] in <cd7169108ea74757aa50c5b33d275c15>:0
at Verse.AI.ThinkNode_PrioritySorter.TryIssueJobPackage (Verse.Pawn pawn, Verse.AI.JobIssueParams jobParams) [0x000fb] in <cd7169108ea74757aa50c5b33d275c15>:0
UnityEngine.StackTraceUtility:ExtractStackTrace ()
(wrapper dynamic-method) Verse.Log:Verse.Log.Error_Patch8 (string)
Verse.AI.ThinkNode_PrioritySorter:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Priority:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Tagger:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Subtree:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Priority:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Conditional:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Priority:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
(wrapper dynamic-method) Verse.AI.Pawn_JobTracker:Verse.AI.Pawn_JobTracker.DetermineNextJob_Patch1 (Verse.AI.Pawn_JobTracker,Verse.ThinkTreeDef&)
Verse.AI.Pawn_JobTracker:TryFindAndStartJob ()
(wrapper dynamic-method) Verse.AI.Pawn_JobTracker:Verse.AI.Pawn_JobTracker.EndCurrentJob_Patch2 (Verse.AI.Pawn_JobTracker,Verse.AI.JobCondition,bool,bool)
(wrapper dynamic-method) Verse.AI.Pawn_JobTracker:Verse.AI.Pawn_JobTracker.JobTrackerTick_Patch1 (Verse.AI.Pawn_JobTracker)
(wrapper dynamic-method) Verse.Pawn:Verse.Pawn.Tick_Patch2 (Verse.Pawn)
Verse.TickList:Tick ()
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.DoSingleTick_Patch5 (Verse.TickManager)
Verse.TickManager:TickManagerUpdate ()
(wrapper dynamic-method) Verse.Game:Verse.Game.UpdatePlay_Patch2 (Verse.Game)
(wrapper dynamic-method) Verse.Root_Play:Verse.Root_Play.Update_Patch1 (Verse.Root_Play)

... and this:

Jono threw exception in WorkGiver DoctorFeedAnimals: System.NullReferenceException: Object reference not set to an instance of an object
at VarietyMatters.VarietyRecord.AddVarietyRecord (Verse.Pawn pawn) [0x00021] in <ed55664b4ba349bfa1ea24c4138ebdea>:0
at VarietyMatters.VarietyRecord.GetVarietyRecord (Verse.Pawn trackedPawn) [0x0001d] in <ed55664b4ba349bfa1ea24c4138ebdea>:0
at VarietyMatters.Patch_FoodUtility.Postfix_FoodOptimality (System.Single& __result, Verse.Pawn eater, Verse.Thing foodSource, System.Boolean takingToInventory) [0x00004] in <ed55664b4ba349bfa1ea24c4138ebdea>:0
at (wrapper dynamic-method) RimWorld.FoodUtility.RimWorld.FoodUtility.FoodOptimality_Patch4(Verse.Pawn,Verse.Thing,Verse.ThingDef,single,bool)
at (wrapper dynamic-method) RimWorld.FoodUtility.RimWorld.FoodUtility.SpawnedFoodSearchInnerScan_Patch1(Verse.Pawn,Verse.IntVec3,System.Collections.Generic.List`1<Verse.Thing>,Verse.AI.PathEndMode,Verse.TraverseParms,single,System.Predicate`1<Verse.Thing>)
at (wrapper dynamic-method) RimWorld.FoodUtility.RimWorld.FoodUtility.BestFoodSourceOnMap_NewTemp_Patch2(Verse.Pawn,Verse.Pawn,bool,Verse.ThingDef&,RimWorld.FoodPreferability,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,RimWorld.FoodPreferability,System.Nullable`1<single>,bool)
at (wrapper dynamic-method) RimWorld.FoodUtility.RimWorld.FoodUtility.TryFindBestFoodSourceFor_NewTemp_Patch2(Verse.Pawn,Verse.Pawn,bool,Verse.Thing&,Verse.ThingDef&,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,RimWorld.FoodPreferability)
at (wrapper dynamic-method) RimWorld.FoodUtility.RimWorld.FoodUtility.TryFindBestFoodSourceFor_NewTemp_Patch2(Verse.Pawn,Verse.Pawn,bool,Verse.Thing&,Verse.ThingDef&,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,bool,RimWorld.FoodPreferability)
at RimWorld.WorkGiver_FeedPatient.TryFindBestFoodSourceFor (Verse.Pawn pawn, Verse.Pawn patient, Verse.Thing& foodSource, Verse.ThingDef& foodDef) [0x00012] in <cd7169108ea74757aa50c5b33d275c15>:0
at RimWorld.WorkGiver_FeedPatient.HasJobOnThing (Verse.Pawn pawn, Verse.Thing t, System.Boolean forced) [0x000bb] in <cd7169108ea74757aa50c5b33d275c15>:0
at RimWorld.JobGiver_Work+<>c__DisplayClass3_1.<TryIssueJobPackage>b__0 (Verse.Thing t) [0x00013] in <cd7169108ea74757aa50c5b33d275c15>:0
at Verse.GenClosest+<>c__DisplayClass2_0.<ClosestThingReachable>b__0 (Verse.Thing t) [0x00034] in <cd7169108ea74757aa50c5b33d275c15>:0
at Verse.GenClosest.<ClosestThing_Global>g__Process|5_0 (Verse.Thing t, Verse.GenClosest+<>c__DisplayClass5_0& ) [0x00047] in <cd7169108ea74757aa50c5b33d275c15>:0
at Verse.GenClosest.ClosestThing_Global (Verse.IntVec3 center, System.Collections.IEnumerable searchSet, System.Single maxDistance, System.Predicate`1[T] validator, System.Func`2[T,TResult] priorityGetter) [0x0008d] in <cd7169108ea74757aa50c5b33d275c15>:0
at Verse.GenClosest.ClosestThingReachable (Verse.IntVec3 root, Verse.Map map, Verse.ThingRequest thingReq, Verse.AI.PathEndMode peMode, Verse.TraverseParms traverseParams, System.Single maxDistance, System.Predicate`1[T] validator, System.Collections.Generic.IEnumerable`1[T] customGlobalSearchSet, System.Int32 searchRegionsMin, System.Int32 searchRegionsMax, System.Boolean forceAllowGlobalSearch, Verse.RegionType traversableRegionTypes, System.Boolean ignoreEntirelyForbiddenRegions) [0x0014c] in <cd7169108ea74757aa50c5b33d275c15>:0
at (wrapper dynamic-method) RimWorld.JobGiver_Work.RimWorld.JobGiver_Work.TryIssueJobPackage_Patch1(RimWorld.JobGiver_Work,Verse.Pawn,Verse.AI.JobIssueParams)
UnityEngine.StackTraceUtility:ExtractStackTrace ()
(wrapper dynamic-method) Verse.Log:Verse.Log.Error_Patch8 (string)
(wrapper dynamic-method) RimWorld.JobGiver_Work:RimWorld.JobGiver_Work.TryIssueJobPackage_Patch1 (RimWorld.JobGiver_Work,Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_PrioritySorter:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Priority:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Tagger:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Subtree:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Priority:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Conditional:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
Verse.AI.ThinkNode_Priority:TryIssueJobPackage (Verse.Pawn,Verse.AI.JobIssueParams)
(wrapper dynamic-method) Verse.AI.Pawn_JobTracker:Verse.AI.Pawn_JobTracker.DetermineNextJob_Patch1 (Verse.AI.Pawn_JobTracker,Verse.ThinkTreeDef&)
Verse.AI.Pawn_JobTracker:TryFindAndStartJob ()
(wrapper dynamic-method) Verse.AI.Pawn_JobTracker:Verse.AI.Pawn_JobTracker.EndCurrentJob_Patch2 (Verse.AI.Pawn_JobTracker,Verse.AI.JobCondition,bool,bool)
(wrapper dynamic-method) Verse.AI.Pawn_JobTracker:Verse.AI.Pawn_JobTracker.JobTrackerTick_Patch1 (Verse.AI.Pawn_JobTracker)
(wrapper dynamic-method) Verse.Pawn:Verse.Pawn.Tick_Patch2 (Verse.Pawn)
Verse.TickList:Tick ()
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.DoSingleTick_Patch5 (Verse.TickManager)
Verse.TickManager:TickManagerUpdate ()
(wrapper dynamic-method) Verse.Game:Verse.Game.UpdatePlay_Patch2 (Verse.Game)
(wrapper dynamic-method) Verse.Root_Play:Verse.Root_Play.Update_Patch1 (Verse.Root_Play)

The latter appears to be from trying to feed animals at an animal hospital bed, improperly triggering a check on the animal's nonexistent variety need?
< >
Showing 1-15 of 30 comments
Per page: 1530 50