RimWorld

RimWorld

Psychology (unofficial) v1.1-1.5
Orchuris Aug 21, 2023 @ 2:48pm
Broken after Aug 9 update
Hi, I'm having an issue. After the update on Aug 9, I started playing the day after and found that I was being spammed with the bug report below:

Exception ticking Benrey (at (138, 0, 117)): System.TypeInitializationException: The type initializer for 'Psychology.PersonalityNodeIdeoUtility' threw an exception. ---> System.ArgumentNullException: Value cannot be null.
Parameter name: key
at System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) [0x00008] in <eae584ce26bc40229c1b1aa476bfa589>:0
at System.Collections.Generic.Dictionary`2[TKey,TValue].ContainsKey (TKey key) [0x00000] in <eae584ce26bc40229c1b1aa476bfa589>:0
at Psychology.PersonalityNodeIdeoUtility..cctor () [0x000e8] in <2cf0a619248947d4b535398e7c9a7eed>:0
--- End of inner exception stack trace ---
at (wrapper managed-to-native) System.Object.__icall_wrapper_mono_generic_class_init(intptr)
at Psychology.Pawn_PsycheTracker.CalculateCertaintyChangePerDay (RimWorld.Ideo ideo, System.Boolean addToDicts) [0x0002e] in <2cf0a619248947d4b535398e7c9a7eed>:0
at Psychology.PsychologyGameComponent.CertaintyChange (Verse.Pawn pawn, System.Boolean addToDicts) [0x00036] in <2cf0a619248947d4b535398e7c9a7eed>:0
at Psychology.Harmony.Pawn_IdeoTracker_CertaintyChangePerDay_Patch.CertaintyChangePerDay (System.Single& __result, Verse.Pawn ___pawn) [0x00016] in <2cf0a619248947d4b535398e7c9a7eed>:0
at (wrapper dynamic-method) RimWorld.Pawn_IdeoTracker.RimWorld.Pawn_IdeoTracker.get_CertaintyChangePerDay_Patch1(RimWorld.Pawn_IdeoTracker)
at (wrapper dynamic-method) RimWorld.Pawn_IdeoTracker.RimWorld.Pawn_IdeoTracker.IdeoTrackerTick_Patch1(RimWorld.Pawn_IdeoTracker)
at (wrapper dynamic-method) Verse.Pawn.Verse.Pawn.Tick_Patch2(Verse.Pawn)
at Verse.TickList.Tick () [0x0015c] in <95de19971c5d40878d8742747904cdcd>:0
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.TickList:Tick ()
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.DoSingleTick_Patch3 (Verse.TickManager)
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.TickManagerUpdate_Patch2 (Verse.TickManager)
Verse.Game:UpdatePlay ()
Verse.Root_Play:Update ()


- 'benrey' is the name of the pawn that I pasted the error from, although all of them are having the issue

- was working fine before the mod's aug 9 patch

- using the same modlist as before the mod's aug 9 patch

- no notable changes to any mod settings, except to turn off elections

- would prefer not to uninstall + reinstall, as it would be hard to set up traits again

- problem is reproducible on my end (literally opening the save causes it)

- unplayable due to console window appearing with the error roughly every 5-7 seconds

- error appears for all colonists/pawns
- error does not occur when game is paused
- each pawn's respective error message can be given if needed

- Have tried bumping Psychology up in the mod load order as far as possible to give it priority, other errors don't happen anymore but the error above is still thrown

-None of the other mods listed below are throwing errors

- current list of active content packs used before the mod's 8/9 patch, in load order, working on Rimworld patch (1.4):
- Harmony
- Core
- Biotech
- Multiplayer [unused, the affected save is singleplayer]
- HugsLib
- Character Editor
- Psychology (unnofficial)
- A Dog Said... Animal Prosthetics
- Smart Farming
- Smart Medicine
- Common Sense
- Dreamer's Dreams
- Humanoid Alien Races
- HousekeeperAssistanceCat
- Interaction Bubbles
- SF Grim Reality
- Sometimes Raids Go Wrong
- Vanilla Expanded Framework
- Vanilla Furniture Expanded - Architect
- Vanilla Furniture Expanded
- Yayo's Animation (Continued)
- SpeakUp
- Vanilla Social Interactions Expanded


It appears that psychology specifically is causing this problem, however removing it is impossible since I have some traits specifically in play that would ruin the save if they were removed (I have a happy couple that would be broken up if I removed the mod due to them both being male and therefore the game would remove the traits that let them be together if I removed the mod)

Please help, thank you

Orchuris
< >
Showing 1-9 of 9 comments
che_lovek  [developer] Aug 22, 2023 @ 2:18am 
Hello, I'll look into the issue.
Until it is fixed you can set the console window to not auto open on errors (there is a button on the console window itself that does that).
Also, this is really weird becase the latest patch didn't touch any of the classes that are causing errors on your modlist.
ThatOneBloke Sep 23, 2023 @ 1:03pm 
Butting in to say I'm having a very similar issue, and that I believe Humanoid Alien Races may be the culprit at hand. In addition to the above error, having Psychology, HAR, and any alien race mod(s) installed at the same time somehow breaks quests as well, leaving behind empty fields like [siteFaction_name] and [Prisoner_pronoun] whenever a quest is generated.

Removing Psychology from the save solves both problems (no more rapid-fire errors, and quests generate without issue), so I'd be very surprised if this didn't turn out to be a conflict with HAR.
Last edited by ThatOneBloke; Sep 23, 2023 @ 3:33pm
Orchuris Nov 21, 2023 @ 8:10pm 
So I was digging through things with a friend on a different save and I found another weird bug, a conflict with Multiplayer possibly? It plays fine (the error from before still comes up, but ive set the window to not auto open so its fine) until a random point at which my friend gets dropped from the server and any colonist with the traits 'gay' and 'bisexual' (but not polyamorous oddly) have that trait removed.

It's resolvable by using character editor to just give them the traits again but that takes a while due to us having about 6-7 colonists with either the gay or bi traits, and they're removed when my friend falls off the server again anyways.

my friend and i have the same mods installed on both sides, and I really don't know what's causing the issue.
che_lovek  [developer] Nov 23, 2023 @ 3:46am 
@Orchuris This mod replaces those traits with Kinsey scale. Thats why it automatically removes them. You don't need to add them back, you just need to edit the kinsey scale slider to make someone gay (6 is gay, 3 is bi, 1 is sligly gay, etc).
Also, this mod was never optimized for multiplayer. Psyche nodes are randomized and would probably be different for every player. So, I suspect that you would get desyncs shortly after a new pawn generates on your map.
Orchuris Nov 23, 2023 @ 11:31am 
@che-lovek understood! out of question, why isn't polyamorous removed do you think? and would I need to go to the authors of Multiplayer to ask for a psychology compatibility patch or is this still a psychology issue?

also when used alongside character editor the Kinsey scale and other Psychology tabs don't show up on colonists, any idea why?

thank you for your patience ^^
Last edited by Orchuris; Nov 23, 2023 @ 11:32am
Morcrist Dec 1, 2023 @ 5:49pm 
Replaced Rational Romance [Continued] with this because of nostalgia (for this mod) and how it just seems way better at handling romance as a sliding scale instead of fixed points (i.e., you're either gay, bi, or straight...period). Loaded old save, took my three main colonists and customized their psyche's, then proceeded to play!

I've got about 20 colonists, and I think that contributed to the short time that it took to crash, but I got an Exception Ticking ... error (as Orchuris detailed above) for every colonist every second or so, and within several seconds the game just crashed to desktop.

I tried reducing the Ideo interaction chance to 0 with no effect. I tried adding Ideology to my play with no effect. Same thing every time. I started a new game with 2 colonists and got the same errors (1 for each every couple seconds) but didn't notice any adverse effects otherwise in the very short couple of minutes I played with only the 2. Again, maybe the frequency affects how fast it crashes?

Sadly I had to remove Psychology and go back to RR.

:(

Hopefully you guys can address this particular error (Psychology.PersonalityNodeIdeoUtility). Browsing through the bug discussion there are several other people with the same problem in the last year or so.
cvrunmin Apr 7, 2024 @ 2:20am 
Any updates on this issue? I managed to *kinda solve* this issue by removing memeCertaintyModifiers and preceptCertaintyModifiers tags in PersonalityNodes ('removing' can be done by actually remove the tag or adding requirement to ideology dlc for every child tag). I don't have ideology dlc installed such removal shouldn't change my experience.
Also Having this issue, especially when large trading caravans or raids spawn onto the map, causes freezes. when seem through the exception visualizer it pops twice, same error as far as I can tell, but with two different reference codes.

First exception:

Exception in Verse.TickList.Tick: System.TypeInitializationException: The type initializer for 'Psychology.PersonalityNodeIdeoUtility' threw an exception. ---> System.ArgumentNullException: Value cannot be null.
Parameter name: key
[Ref EB861B9E] Duplicate stacktrace, see ref for original
--- End of inner exception stack trace ---
[Ref BA079D78]
at (wrapper managed-to-native) System.Object.__icall_wrapper_mono_generic_class_init(intptr)
at Psychology.Pawn_PsycheTracker.CalculateCertaintyChangePerDay (RimWorld.Ideo ideo, System.Boolean addToDicts) [0x0002e] in <21a049b18fa94a509632044676900fa9>:0
at Psychology.PsychologyGameComponent.CertaintyChange (Verse.Pawn pawn, System.Boolean addToDicts) [0x00036] in <21a049b18fa94a509632044676900fa9>:0
at Psychology.Harmony.Pawn_IdeoTracker_CertaintyChangePerDay_Patch.CertaintyChangePerDay (System.Single& __result, Verse.Pawn ___pawn) [0x00016] in <21a049b18fa94a509632044676900fa9>:0
at RimWorld.Pawn_IdeoTracker.get_CertaintyChangePerDay () [0x00045] in <69945a8ed6c540cf90b578de735e0605>:0
- POSTFIX Community.Psychology.UnofficialUpdate: Void Psychology.Harmony.Pawn_IdeoTracker_CertaintyChangePerDay_Patch:CertaintyChangePerDay(Single& __result, Pawn ___pawn)
at RimWorld.Pawn_IdeoTracker.IdeoTrackerTick () [0x0006c] in <69945a8ed6c540cf90b578de735e0605>:0
- TRANSPILER Community.Psychology.UnofficialUpdate: IEnumerable`1 Psychology.Harmony.Pawn_IdeoTracker_IdeoTrackerTick_Patches:Transpiler(IEnumerable`1 codes)
- PREFIX Community.Psychology.UnofficialUpdate: Boolean Psychology.Harmony.Pawn_IdeoTracker_IdeoTrackerTick_Patches:Prefix()
at Verse.Pawn.Tick () [0x00243] in <69945a8ed6c540cf90b578de735e0605>:0
at Verse.TickList.Tick () [0x0017d] in <69945a8ed6c540cf90b578de735e0605>:0
- TRANSPILER net.pardeike.rimworld.lib.harmony: IEnumerable`1 VisualExceptions.ExceptionsAndActivatorHandler:Transpiler(IEnumerable`1 instructions, MethodBase original)

Second exception:

Exception in RimWorld.Planet.WorldPawns.WorldPawnsTick: System.TypeInitializationException: The type initializer for 'Psychology.PersonalityNodeIdeoUtility' threw an exception. ---> System.ArgumentNullException: Value cannot be null.
Parameter name: key
[Ref EB861B9E] Duplicate stacktrace, see ref for original
--- End of inner exception stack trace ---
[Ref A870B6A8]
at (wrapper managed-to-native) System.Object.__icall_wrapper_mono_generic_class_init(intptr)
at Psychology.Pawn_PsycheTracker.CalculateCertaintyChangePerDay (RimWorld.Ideo ideo, System.Boolean addToDicts) [0x0002e] in <21a049b18fa94a509632044676900fa9>:0
at Psychology.PsychologyGameComponent.CertaintyChange (Verse.Pawn pawn, System.Boolean addToDicts) [0x00036] in <21a049b18fa94a509632044676900fa9>:0
at Psychology.Harmony.Pawn_IdeoTracker_CertaintyChangePerDay_Patch.CertaintyChangePerDay (System.Single& __result, Verse.Pawn ___pawn) [0x00016] in <21a049b18fa94a509632044676900fa9>:0
at RimWorld.Pawn_IdeoTracker.get_CertaintyChangePerDay () [0x00045] in <69945a8ed6c540cf90b578de735e0605>:0
- POSTFIX Community.Psychology.UnofficialUpdate: Void Psychology.Harmony.Pawn_IdeoTracker_CertaintyChangePerDay_Patch:CertaintyChangePerDay(Single& __result, Pawn ___pawn)
at RimWorld.Pawn_IdeoTracker.IdeoTrackerTick () [0x0006c] in <69945a8ed6c540cf90b578de735e0605>:0
- TRANSPILER Community.Psychology.UnofficialUpdate: IEnumerable`1 Psychology.Harmony.Pawn_IdeoTracker_IdeoTrackerTick_Patches:Transpiler(IEnumerable`1 codes)
- PREFIX Community.Psychology.UnofficialUpdate: Boolean Psychology.Harmony.Pawn_IdeoTracker_IdeoTrackerTick_Patches:Prefix()
at Verse.Pawn.Tick () [0x00243] in <69945a8ed6c540cf90b578de735e0605>:0
at RimWorld.Planet.WorldPawns.WorldPawnsTick () [0x00039] in <69945a8ed6c540cf90b578de735e0605>:0
- TRANSPILER net.pardeike.rimworld.lib.harmony: IEnumerable`1 VisualExceptions.ExceptionsAndActivatorHandler:Transpiler(IEnumerable`1 instructions, MethodBase original)

Any help or fixes would be appreciated.
jptrrs Mar 14 @ 8:47pm 
I just posted a fix on the Bug report topic.
< >
Showing 1-9 of 9 comments
Per page: 1530 50