RimWorld

RimWorld

ToolkitUtils
This topic has been locked
Jen Cey Mar 31, 2020 @ 7:10pm
Bugs
The most recent update with the "leave" options. They're broken, at least it seems to be broken with other races. I tested it with a human and they just turned into a wild person when it's set to "mental break". Tested with another race and they just vanished, regardless of what it was set to. Error was thrown with a non-human. Don't know which error pertains to this, but here's the ones it threw. It would be great to have an option to turn this off, especially since it seems to break with other races. Or to have the mental break option actually give them a mental break instead of instantly turning them into a wild person.

Exception drawing dynamic things: System.InvalidOperationException: Collection was modified; enumeration operation may not execute.
at System.Collections.Generic.HashSet`1+Enumerator[T].MoveNext () [0x00013] in <351e49e2a5bf4fd6beabb458ce2255f3>:0
at (wrapper dynamic-method) Verse.DynamicDrawManager.DMD<DMD<DrawDynamicThings_Patch1>?-389610752::DrawDynamicThings_Patch1>(Verse.DynamicDrawManager)
Verse.Log:Error(String, Boolean)
Verse.DynamicDrawManager:DMD<DMD<DrawDynamicThings_Patch1>?-389610752::DrawDynamicThings_Patch1>(DynamicDrawManager)
Verse.Map:MapUpdate()
Verse.Game:UpdatePlay()
Verse.Root_Play:Update()

And after it posted the "you've left the colony" message in chat

Exception filling window for Verse.EditWindow_Log: System.InvalidOperationException: Collection was modified; enumeration operation may not execute.
at System.Collections.Generic.Queue`1+Enumerator[T].MoveNext () [0x00013] in <ae22a4e8f83c41d69684ae7f557133d9>:0
at (wrapper dynamic-method) Verse.EditWindow_Log.DMD<DMD<DoMessagesListing_Patch1>?663953536::DoMessagesListing_Patch1>(Verse.EditWindow_Log,UnityEngine.Rect)
at Verse.EditWindow_Log.DoWindowContents (UnityEngine.Rect inRect) [0x0014f] in <29684bdca4b441d38f64a3f064edc8ed>:0
at Verse.Window.InnerWindowOnGUI (System.Int32 x) [0x00165] in <29684bdca4b441d38f64a3f064edc8ed>:0
Verse.Log:Error(String, Boolean)
Verse.Window:InnerWindowOnGUI(Int32)
UnityEngine.GUI:CallWindowDelegate(WindowFunction, Int32, Int32, GUISkin, Int32, Single, Single, GUIStyle)
< >
Showing 1-12 of 12 comments
randoo  [developer] Apr 2, 2020 @ 12:57am 
1. The "instant wildman" was done the way it was done so streamers wouldn't confuse the mental break, and the accompanying notification, for a natural event. Internally, the mental break does the same as what the mod currently does.
2. Race support is an interesting issue because internally wild pawns clash with races.
3. The leave command is a standard Toolkit command. You can disable it in the "Commands" section of the Toolkit menu. The only misleading thing about it is that the command is labelled "Abandon Pawn", instead of "Leave".
4. As for the errors, the latter is because the mod writes something to the dev console while it's trying to actively display things to the console.
5. The former error I can't directly identify, but it's possible that it lies within the problem.
Last edited by randoo; Apr 2, 2020 @ 1:11am
Jen Cey Apr 2, 2020 @ 8:26am 
Thank you for your reply! I never noticed the abandon pawn command before, but I'll definitely go in and disable it that way. It makes sense that you did the wildman thing. Thanks for taking the time to explain it all.
Jen Cey Apr 2, 2020 @ 8:35am 
I'm getting a brand new error now. I turned off all mods except Harmony, Mod manager, Toolkit and Utils to make sure it wasn't one of my other mods. I can't load the trait list at all or the race list at all

Exception filling window for RimWorld.Dialog_ModSettings: System.NullReferenceException: Object reference not set to an instance of an object
at SirRandoo.ToolkitUtils.Windows.TraitConfigDialog..ctor () [0x00000] in <6a7c93b47e4f43d384008c4850494f2c>:0
at SirRandoo.ToolkitUtils.Harmony.Settings_Store__DoWindowContents.DrawUtilsContents (Verse.Listing_Standard optionsListing) [0x00041] in <6a7c93b47e4f43d384008c4850494f2c>:0
at (wrapper dynamic-method) TwitchToolkit.Settings.Settings_Store.DMD<DMD<DoWindowContents_Patch0>?-554795008::DoWindowContents_Patch0>(UnityEngine.Rect,Verse.Listing_Standard)
at TwitchToolkit.ToolkitSettings.DoWindowContents (UnityEngine.Rect rect) [0x003a0] in <0c4083514dd24174968032554582ca3f>:0
at TwitchToolkit.TwitchToolkit.DoSettingsWindowContents (UnityEngine.Rect inRect) [0x00006] in <0c4083514dd24174968032554582ca3f>:0
at RimWorld.Dialog_ModSettings.DoWindowContents (UnityEngine.Rect inRect) [0x001bf] in <29684bdca4b441d38f64a3f064edc8ed>:0
at Verse.Window.InnerWindowOnGUI (System.Int32 x) [0x00165] in <29684bdca4b441d38f64a3f064edc8ed>:0
Verse.Log:Error(String, Boolean)
Verse.Window:InnerWindowOnGUI(Int32)
UnityEngine.GUI:CallWindowDelegate(WindowFunction, Int32, Int32, GUISkin, Int32, Single, Single, GUIStyle)
randoo  [developer] Apr 2, 2020 @ 10:30am 
With the release that went live a minute ago at the time of writing this, there is a fix for the leave command destroying non-human colonists. In addition, there's some error checks in place for the to help debug the above error. You could try making a backup of Utils' shop file, deleting the original, restart RimWorld, and try opening the trait config. If the file was the problem, I can help you fix it if you don't want to redo your shop settings.

Utils' shop file should be named "ShopExt_1.xml"
Last edited by randoo; Apr 2, 2020 @ 10:34am
Jen Cey Apr 2, 2020 @ 4:50pm 
You are AMAZING! I deleted the old files (I was between colonies anyway) and restarted. Works like a charm! Keep up the awesome work
randoo  [developer] Apr 2, 2020 @ 6:37pm 
If you're interested, I've been experimenting with an item list for Utils. You can read a step-by-step setup process @ https://sirrandoo.github.io/toolkit-utils/itemlist
Jen Cey Apr 4, 2020 @ 11:13am 
Running into something else. It's setting the default "buy pawn" to 1 coin, no matter how many times I set that. So if someone types "buy pawn" instead of "buy pawn racename" they're only getting charged 1 coin instead of what I have all the other races set to
randoo  [developer] Apr 4, 2020 @ 12:32pm 
Fixed with the latest release, and the events Utils overwrites are set to the bare minimum (1) because the prices are just so that the event is enabled. Everything is expected to be handled through the configs Utils added. Setting the prices for those events is just a way to set the prices for everything they handle, like setting the price for "buy pawn" to 1500 would set the price for all races to 1500.
Jen Cey Apr 4, 2020 @ 1:11pm 
You're probably so tired of me lmao. Tried it with the newest update. It's letting people buy a pawn at the price set, and charging them the price that's set, but now it's letting people go to negative coins and it seems to be maxing out Karma when buying a pawn and removing traits (don't know if that's from Utils or not). Maybe add an option to "force people to specify a race"? I feel like I'm annoying you so much, but at least I'm finding all kinds of problems lol :D
randoo  [developer] Apr 4, 2020 @ 1:32pm 
1. New fix for negative coins.
2. The mod uses Toolkit's normal karma calculations, so not much I can do on that front. Dropping the karma type to neutral should help a bit.
3. Don't worry about the posts lol. It's something to do during quarantine.
Last edited by randoo; Apr 4, 2020 @ 1:43pm
Jen Cey Apr 4, 2020 @ 1:54pm 
Yay, it looks like it's working right now. If I come across anything else tomorrow when I hop back into a stream, I'll be sure to let you know. Gotta keep busy somehow during this stuff. Stay safe and healthy!
randoo  [developer] Apr 4, 2020 @ 2:00pm 
You too :D
< >
Showing 1-12 of 12 comments
Per page: 1530 50