# Ludeon Forums

## RimWorld => Mods => Tools => Topic started by: Neurotoxin on August 11, 2014, 09:54:08 PM

Title: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22
Post by: Neurotoxin on August 11, 2014, 09:54:08 PM
(http://i.imgur.com/JJsnCEd.png)

Cross Compatibility:
As I'm not using any OS specific code, and I'm targeting the 4.0 Mono Framework this program should be cross compatible with Linux and Mac. I've personally tested on linux.
What you need to make it work:
Some distros of linux come with it installed, to find out, open a terminal and type "mono" without quotes. If it's a valid command you already have it.
Once you take care of getting mono/determining if you already have it open a terminal and enter "mono path/to/RimWorldSaveEditor.exe" without the quotes (or add quotes to the path if it contains spaces). Viola!

Todo:
TODO (https://github.com/LtStingray/RimworldSaveEditor/blob/InDev/Todo.txt)

Changelog:
v0.9.6.6
Bugfixing 0.9.6.5
NRE fix when manipulating traits
Fixed traits not populating in lists until a colonist is selected
Minor code cleanup
Fix for mods that modify pawn class or KindDef, should probably not have any more issues detecting pawns
Built against Mono framework to (hopefully) address some cross-compatibility issues
Merged a pull request adding a splash screen (still a bit of a WiP, need to fade/default select tab on save load)
Removed "Change Rimworld Dir" button as it no longer has a use.
A few other minor fixes that I can't remember but I know are there, problem with rushing a release while going out the door.

v0.9.6.5
Pre-release of trait editor. This MAY still have unforseen bugs so keep that backup button checked
No longer requires rimworld Directory, all necessary files have been re-parsed and inline at compile time.
Since this is a pre-release I will not be incrementing the version checker.
Older changes can be located at:
Changelog (https://github.com/LtStingray/RimworldSaveEditor/blob/InDev/ChangeLog.txt)

Newest version will be attached to this post and available on Github.
https://github.com/LtStingray/RimworldSaveEditor/releases (https://github.com/LtStingray/RimworldSaveEditor/releases)

Source:
https://github.com/LtStingray/RimworldSaveEditor (https://github.com/LtStingray/RimworldSaveEditor)

This program makes NO connections to the internet without you choosing to do so. When it does, it connects only to a text file with a string representing the current publicly available version number. The only connection it will make is to the following url http://pastebin.com/raw.php?i=3LvpsTWB

Below is the relevant code so you don't have to dig through the source on github:
Code: [Select]
string releaseThreadUrl = "http://ludeon.com/forums/index.php?topic=5346.0";string versionCheckUrl = "http://pastebin.com/raw.php?i=3LvpsTWB";        public void CheckUpdate()        {            using (var WebClient = new WebClient())            {                string updateVersion = WebClient.DownloadString(versionCheckUrl);                updateChecked = true;                                if (CompareVersions(updateVersion) == 1)                {                    if (MessageBox.Show("New version available, Goto release thread?", "Open Thread?", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)                    {                        System.Diagnostics.Process.Start(releaseThreadUrl);                        Application.Exit();                        Environment.Exit(0);                    }                    else { return; }                }                else { return; }            }        }        public int CompareVersions(string stringFromNet)        {            string[] asmStyleParse = stringFromNet.Split('.');            string[] currentVerParse = currentVersion.Split('.');            for(int i = 0; i < asmStyleParse.Count(); i++)            {                if (Convert.ToInt32(asmStyleParse[i]) > Convert.ToInt32(currentVerParse[i]))                 {                    return 1;                }            }            return 0;        }

I included the CompareVersions method because a call is made to it. I'm including this section about the update checker for the security conscious users. If the checkbox for checking updates is not ticked, no outside connections will be made. The update checker is disabled by default, I only included it for you, the user's, convenience.

I've seen update checkers on mods/external tools for games get a lot of backlash specifically for not being forthcoming with details on it's operation, use and, implementation and/or for being opt-out rather than opt-in thus why I see fit for this block of text. If you have ANY privacy/security concerns I'll be more than happy to address them. This software is licensed under the MIT license so you ARE allowed to decompile it and see for yourself (If I'm wrong about that, I hereby grant you permission to decompile the binaries distributed with this software).

If you wish to avoid the update all-together I have left the old version (0.9.3.0 for A6 and 0.9.1.1 for A5) available to download.

Thank you everyone for your bug reports, many of the issues are things I didn't forsee or in general errors on my part. I appreciate everyone's help and your support to stick with me during these initial phases. This project started as, "I want to edit these skills but, I hate parsing XML manually, Maybe I can write software to do it" and evolved into what it is today. If it wasn't for you guys It never would have expanded beyond what it started as. Keep those bug reports rolling in (or, well, I hope you don't have to, but if you hit one, point it out). Trust me, I'm a nice guy and I won't bite your head off for posting a stacktrace. All comments, suggestions and reports are appreciated and considered. There's on thing I request, and it probably won't be seen by as many as I'd like because I'm not bulleting it, When you post a bug report/stacktrace/unwanted behavior please to make it easier on both of us, post what version you're using and the save you're having issues with or be prepared to do soo on request. Don't worry, I don't care about your colony name, or the female raider you have hostage and keep naked (for whatever reason), I don't even look, I'm only looking for the relevant sections to this software.

NOTICE:
v0.9.6.7 is a pre-release. The trait editor SEEMS to be working as desired but I have a feeling I missed something.
I need testers for it, if you have ANY errors using the trait editor please be verbose with your reports and attach/upload the save you were working on as well as the stack trace (either in text or a screenshot). As always, be sure to make backups, once manually (for saftey) and allow the application to make it's own, THIS IS FOR YOUR SAVE'S SAFETY!. Also, being a pre-release, this has not yet been merged into the Master branch on Github, for v0.9.6.7 source see the InDev (https://github.com/LtStingray/RimworldSaveEditor/tree/InDev) branch

[attachment deleted by admin: too old]
Title: Re: [TOOL] (Alpha 5) Save Editor
Post by: Mikey3131 on August 12, 2014, 06:16:02 PM
Seems to work alright, though I received an error when selecting one of my colonists to edit:

System.NullReferenceException: Object reference not set to an instance of an object.
at RimWorldSaveEditor.Form1.colonistListBox_SelectedIndexChanged(Object sender, EventArgs e)
at System.Windows.Forms.ListBox.OnSelectedIndexChanged(EventArgs e)
at System.Windows.Forms.ListBox.WmReflectCommand(Message& m)
at System.Windows.Forms.ListBox.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

If you'd like, I can try to recreate it and send you the full report it gave.
Title: Re: [TOOL] (Alpha 5) Save Editor
Post by: Neurotoxin on August 13, 2014, 12:42:01 AM
Seems to work alright, though I received an error when selecting one of my colonists to edit:

System.NullReferenceException: Object reference not set to an instance of an object.
at RimWorldSaveEditor.Form1.colonistListBox_SelectedIndexChanged(Object sender, EventArgs e)
at System.Windows.Forms.ListBox.OnSelectedIndexChanged(EventArgs e)
at System.Windows.Forms.ListBox.WmReflectCommand(Message& m)
at System.Windows.Forms.ListBox.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

If you'd like, I can try to recreate it and send you the full report it gave.

That's not necessary, I think I know exactly what the problem is and will have it fixed with the next version. Colonists that have 0 for a skill don't have the node in the save, so with the way I initially assign nodes, if a node is 0 it'll throw an Null exception. I actually just realized this as I was firing up visual studio to work on it. I'll have a fix up by this time tomorrow and hopefully a feature update along with it. Thanks for the report though.

Quick Edit: Fixed NRE bug and uploaded a quick hotfix after getting frustrated at github for failing several commits -.-. Anyway I figured I'd rush out the NRE fix before I bothered getting to work on the next feature.
Title: Re: [TOOL] (Alpha 5) Save Editor
Post by: daggertx on August 13, 2014, 02:51:55 PM
Thanks for this, and hopefully the Alpha 6 update does not interfere to much.
Title: Re: [TOOL] (Alpha 5) Save Editor
Post by: Neurotoxin on August 13, 2014, 06:41:50 PM
I don't think it should be a problem unless the node structure for pawn skills has changed. I won't be able to update until after midnight, almost over my monthly bandwidth limit, but I'll check everything out then. Let me know if there's any issues and I'll make a note.

EDIT: Update OP with Alpha 6 release.

EDIT 2: Preview of next feature:
(http://i.imgur.com/0I5zO8E.png)

It's still not QUITE ready for public consumption. I need to refine it a bit and figure out EXACTLY how I'm going to implement the Add thought function. It's close though and I have a few ideas to try out for it.
Title: Re: [TOOL] (Alpha 6) Save Editor - Updated 8/14 ~midnight PST
Post by: Neurotoxin on August 14, 2014, 11:40:51 PM
Updated again, Allows removing thoughts - may have unintended side-effects specifically if you remove trait related thoughts, I haven't tested that.

Thoughts are listed as <thoughtName>:<Age>, will remove the age at a later date. They're stored in a Key,value pairing and each Key (the name you see) has to be unique and colonists can have multiples of the same thought.

Added an opt-in update checker, see op where I address security/privacy concerns.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.4.0 - Updated 8/14
Post by: buriring on August 15, 2014, 07:26:03 AM
not working, dunno why.

[attachment deleted by admin: too old]
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.4.0 - Updated 8/14
Post by: Neurotoxin on August 15, 2014, 07:29:49 AM
not working, dunno why.

Did you load a save? Did the application itself not load the save you selected? Does it work with other saves? It looks like the controls are unlocked so I assume it loaded the save or something seriously glitched out. If it's having a problem with a specific save could you attach it or upload and send me a link to see what could be causing it?
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.4.0 - Updated 8/14
Post by: buriring on August 15, 2014, 11:34:54 AM
Did you load a save? yes
Did the application itself not load the save you selected? affirmative
Does it work with other saves? no not only 0.6 but also 0.5d

and here's the save file(0.6alpha)

sorry for my poor english.

[attachment deleted by admin: too old]
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.4.0 - Updated 8/14
Post by: daggertx on August 15, 2014, 12:15:59 PM
Its working for me fine on 6
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.4.0 - Updated 8/14
Post by: DorgoDorato on August 15, 2014, 04:47:47 PM
Any hope for a Linux or Mac version of this shoozbah?
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.4.0 - Updated 8/14
Post by: Iwillbenicetou on August 15, 2014, 07:00:29 PM
Yeah, a mac version would be nice, especcially for me, because when I get bored... I start cheating and bad stuff happens.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.4.0 - Updated 8/14
Post by: Neurotoxin on August 15, 2014, 07:39:38 PM
For you multiplatform user hopefuls:
Sure I'll take a look into rebuilding against the Mono library for you, depending on the difficulty that presents I'll either attempt to release an OS agnostic release or work on porting this to Java. I'll get to it as soon as possible but I can't guarantee it will be quick. Check back in a few days or "Notify" this thread for updates.

Edit concerning the above: Looking into what I can find with 5 whole minutes of googling, It seems the transition shouldn't be too hard, I'll most need to fix the file path seperators in harcoded path strings, and rebuild in a *nix environment. Finally have a purpose for my dual boot haha.

@buriring I'll take a look at your save and see what I can figure out. If that doesn't help I'll add some logging to the program with the next release (specifically in the save loading methods) so maybe we can track this down.

A couple more questions, what OS are you on?
Do you have the .net framework up to at least 3.5 installed (I assume you do otherwise the program probably wouldn't even start)?

Ninja edit:
So I think I figure it out, the program checks the pawn's faction to make sure they're a colonist and not a raider or a squirrel. It seems that your save translates "Colonist" to the language you're playing the game on, in this case 정착지 (which I believe is korean?)

Luckily there's another field I can use to check for colonists, actually I should probably be using that field, So I'll work up a fix and get it out ASAP.

Edit 2:
Update out, tested against buriring's save and working as well as my own saves. Now with non-english save file support.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.4.1 - Updated 8/15
Post by: user27 on August 15, 2014, 09:55:32 PM
any chance you could get the editor to work with the colonist traits?
it takes forever to randomly get a grower who also has a will of iron
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.4.1 - Updated 8/15
Post by: Neurotoxin on August 15, 2014, 11:32:17 PM
any chance you could get the editor to work with the colonist traits?
it takes forever to randomly get a grower who also has a will of iron

Yep, that's on the roadmap, it'll be either the next release or the one after that. I've been trying to push at least one feature per day but as the code gets longer it takes longer. I'll probably put off the health editor for final release before 1.0 because that's going to be the most involved but before I get to the next feature I need to hammer down the thought editor which is already half-implemented.

I plan to polish up the thought editor tonight as well as get my mono development set-up done to eventually push out a cross-platform release. If I've got time after all that I'll start in on the trait editor, maybe even get a workable prototype done.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.5.0 - Updated 8/15
Post by: Neurotoxin on August 16, 2014, 03:35:17 AM
Quick bump for recent update and to the *nix/mac users out there:

Theoretically (according to MoMA (http://www.mono-project.com/docs/tools+libraries/tools/moma/)) the save editor should run fine on Mono (http://www.mono-project.com/) which is basically a cross-platform implementation of the .net framework.

If anyone could give it a try and let me know I'd appreciate it. If anything I'll have to go through and change path seperators but wherever possible I already use / (from having been a java user and disliking having C:\\path\\to\\file because it looks ugly). Anywho, that is all. Enjoy modifying them there saves.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.4.0 - Updated 8/14
Post by: buriring on August 16, 2014, 04:48:36 AM
@Neurotoxin
Thanks a lot. Now it works fine.

Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.4.0 - Updated 8/14
Post by: Neurotoxin on August 16, 2014, 05:32:16 AM
@Neurotoxin
Thanks a lot. Now it works fine.

No problem, glad I figured it out.

Update for the linux users out there:
Just got my VM reinstalled (long story but a while ago I reformatted my dual boot) and:
(http://i.imgur.com/BibW9HB.png)

The program runs fine on linux (save maybe the ThoughtDefDumper). I'm not sure what the file system for rimworld looks like on a mac/linux (I'll get the linux version in a bit) so there might be a couple flaws.

If you have Mono (find out by entering mono in a terminal) start the app with : mono path/to/RimWorldSaveEditor.exe
if not, see my post above.

Mac users, I know the app is packaged differently for you so for now I assume thoughts aren't going to work properly, I'll take a look later tonight or in the morning. If any mac using modders out there want to point out where the defs are located That'd be helpful/ and or how to access them on a mac.

EDIT: downloaded both the linux and mac versions, linux is laid out the same as windows (As I suspected) so thoughts will work fine (theoretically, my test run worked fine at least) and mac users, when it asks for your rimworld directory, point it at the RimWorld###Mac.app file/folder (if it lets you, not sure if FolderBrowserDialog will see it as a folder or a file).
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.5.0 - Updated 8/15
Post by: w00d on August 16, 2014, 08:09:34 AM
getting an error message using this, works fine with 9.3

added error text as an attachment

[attachment deleted by admin: too old]
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.5.0 - Updated 8/15
Post by: Neurotoxin on August 16, 2014, 08:14:16 AM
getting an error message using this, works fine with 9.3

added error text as an attachment

I think I know what might be causing this, could you attach your save file so I can verify, or just go through it and let me know if any colonist has multiple instances of the same thought with the same age?

Edit: I'm actually about to head out but just in case my idea is right, would you try this build for me? If it solves the issue then my theory is right and I'll have to find a new way to create a unique key for each thought. Also, if my theory is right, you won't see all of your colonists thoughts to remove. whatever one is being duplicated will only show up if you remove the first, save and reload the save.

[attachment deleted by admin: too old]
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.5.0 - Updated 8/15
Post by: w00d on August 16, 2014, 09:04:11 AM
Yes working ok, able to remove thought and edit stats with no issues. Not able to add thought, still getting same error message but the add thought is something else.

thank you for the quick response!
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.5.0 - Updated 8/15
Post by: Neurotoxin on August 16, 2014, 07:02:53 PM
Yes working ok, able to remove thought and edit stats with no issues. Not able to add thought, still getting same error message but the add thought is something else.

thank you for the quick response!

Alright, awesome. I love when I just know what it is, and I do, also, know what the adding thought issue you're having is. I'll have an update out in the next hour or two to address the issue. Maybe I need a QA team haha. In all seriousness though, when I added thoughts I *thought* that I had taken care of the duplicate key issue, I didn't think that a colonist would have a stacked thought with the exact same age.

Edit: I've attached a temporary fix, should solve all the issue you're having for now until tonight when I get a new release build out. If you have any more issue let me know.

[attachment deleted by admin: too old]
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.5.0 - Updated 8/15
Post by: jonat622 on August 17, 2014, 12:56:12 PM
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.5.0 - Updated 8/15
Post by: Iwillbenicetou on August 17, 2014, 03:59:53 PM
I can't find where to attach my save files. They're in Library, but I don't know where to access them. any help?
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.5.0 - Updated 8/15
Post by: Calistyn on August 17, 2014, 04:26:04 PM
Downloaded this today so I could goof off with giving my colonists awesome combat stats. I discovered while playing that the stat changes decay over time. I don't know if that's intentional? I'm assuming it is not.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.5.0 - Updated 8/15
Post by: Neurotoxin on August 17, 2014, 08:29:29 PM

Windows user will be in C:\Users\[User name]\AppData\LocalLow\Ludeon Studios\RimWorld\Saves
Linux saves should be in /home/[username]/.config/unity3d/Ludeon Studios/RimWorld
Mac saves should be in Users/[username]/library/cache/Ludeon Studios/RimWorld

The second popup is asking for your rimworld directory, for windows and linux this is your rimworld###[os} folder, where the rimworld exe is located. For mac, point it at your Rimworld.app

Downloaded this today so I could goof off with giving my colonists awesome combat stats. I discovered while playing that the stat changes decay over time. I don't know if that's intentional? I'm assuming it is not.

That's not caused by the save editor. The game itself has skill decay on high skills. If they don't get used, they decay.  So if you want super colonists, make sure that guy you gave 20 mining always has something to mine, and that researcher with 20 research is always researching.

I didn't get any updates rolled out yesterday as I didn't really have time to work on it, IRL stuff but I'll get something rolled out real soon.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.5.0 - Updated 8/15
Post by: jonat622 on August 17, 2014, 09:54:39 PM
Thank you Neurotoxin!
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.5.0 - Updated 8/15
Post by: Neurotoxin on August 17, 2014, 09:55:35 PM
Thank you Neurotoxin!

No problem :)
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.5.0 - Updated 8/15
Post by: Iwillbenicetou on August 17, 2014, 10:19:37 PM
I mean I can't find where to upload, because I want to upload my save file, so you can work on making a version for mac...
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.5.0 - Updated 8/15
Post by: Raufgar on August 17, 2014, 10:26:13 PM
I mean I can't find where to upload, because I want to upload my save file, so you can work on making a version for mac...

Since attachment limits on this forum is very small, please upload your save file to a third party app like DropBox or Google Drive and provide the link here.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.0 - Updated 8/18
Post by: Neurotoxin on August 18, 2014, 05:12:37 AM
Updated, added ability to change childhood/adulthood traits. Actual traits are next in the pipeline.

Adult/Childhood traits only got bumped up the list thanks to a generous contributor on GitHub. If you're a member here come say hello!

@Iwillbenicetou if you want to upload a save use Mediafire (https://www.mediafire.com), Dropbox (https://www.dropbox.com) or any number of other hosts. I doubt I'll need the save itself, I assume it's the same BUT in the off-chance it isn't, get me a link and I'll take a look.

Almost done with the trait editor.
(http://i.imgur.com/g3CMMpk.png)

At the point now where you can view them. Might have it release ready before I go to bed. If not, it will be up tomorrow barring extreme circumstances.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.0 - Updated 8/18
Post by: Iwillbenicetou on August 18, 2014, 10:05:38 AM
Here You go:
http://www.mediafire.com/view/5nl8h13akz5k45h/Jamestown.rwm (http://www.mediafire.com/view/5nl8h13akz5k45h/Jamestown.rwm)
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.0 - Updated 8/18
Post by: Neurotoxin on August 18, 2014, 09:08:34 PM
Here You go:
http://www.mediafire.com/view/5nl8h13akz5k45h/Jamestown.rwm (http://www.mediafire.com/view/5nl8h13akz5k45h/Jamestown.rwm)

Yep, looks exactly the same. To run it you'll need the Mono (http://www.mono-project.com/download/) MRE then open a terminal and enter: "mono path/to/saveeditor.exe" I don't know how shortcuts work on mac (maybe a shell script?) if anyone can let me know and I'll put it in the OP.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.0 - Updated 8/18
Post by: joshwoo69 on August 19, 2014, 09:55:50 AM
Here You go:
http://www.mediafire.com/view/5nl8h13akz5k45h/Jamestown.rwm (http://www.mediafire.com/view/5nl8h13akz5k45h/Jamestown.rwm)

Yep, looks exactly the same. To run it you'll need the Mono (http://www.mono-project.com/download/) MRE then open a terminal and enter: "mono path/to/saveeditor.exe" I don't know how shortcuts work on mac (maybe a shell script?) if anyone can let me know and I'll put it in the OP.
Sorry for the erelavent quote but your mod is very nice indeed how did you manage it?
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: macrosblackd on August 19, 2014, 10:31:13 AM
Figured I pop in a say sup! I was the guy who helped put together the Backstory stuff.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.0 - Updated 8/18
Post by: Neurotoxin on August 19, 2014, 11:38:04 AM
Sorry for the erelavent quote but your mod is very nice indeed how did you manage it?

Effort, practice, google and lots of testing. Oh and some help from Marcosblackd ^^
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: Kiba1177 on August 19, 2014, 06:01:16 PM
Running on mac here; using mono in terminal to open the editor, it opens fine and I see the blank template and what not, I can click the load save button and then I can navigate and see a list of save files and then try to load my save- but once I select it, the program closes itself and I get the error message

Quote
Last login: Tue Aug 19 17:56:22 on ttys000
Robins-MacBook-Pro:~ RTT$mono /Users/RTT/Downloads/RimworldSaveEditor/RimWorldSaveEditor.exe System.NullReferenceException: Object reference not set to an instance of an object at RimWorldSaveEditor.Form1.RefreshBackstories () [0x00000] in <filename unknown>:0 at RimWorldSaveEditor.Form1.colonistListBox_SelectedIndexChanged (System.Object sender, System.EventArgs e) [0x00000] in <filename unknown>:0 at System.Windows.Forms.ListBox.OnSelectedIndexChanged (System.EventArgs e) [0x00000] in <filename unknown>:0 at System.Windows.Forms.ListBox+SelectedIndexCollection.Add (Int32 index) [0x00000] in <filename unknown>:0 at System.Windows.Forms.ListBox.set_SelectedIndex (Int32 value) [0x00000] in <filename unknown>:0 at System.Windows.Forms.ListBox.OnDataSourceChanged (System.EventArgs e) [0x00000] in <filename unknown>:0 at System.Windows.Forms.ListControl.set_DataSource (System.Object value) [0x00000] in <filename unknown>:0 at (wrapper remoting-invoke-with-check) System.Windows.Forms.ListControl:set_DataSource (object) at RimWorldSaveEditor.Form1.openFileButton_Click (System.Object sender, System.EventArgs e) [0x00000] in <filename unknown>:0 at System.Windows.Forms.Control.OnClick (System.EventArgs e) [0x00000] in <filename unknown>:0 at System.Windows.Forms.Button.OnClick (System.EventArgs e) [0x00000] in <filename unknown>:0 at System.Windows.Forms.ButtonBase.OnMouseUp (System.Windows.Forms.MouseEventArgs mevent) [0x00000] in <filename unknown>:0 at System.Windows.Forms.Button.OnMouseUp (System.Windows.Forms.MouseEventArgs mevent) [0x00000] in <filename unknown>:0 at System.Windows.Forms.Control.WmLButtonUp (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 at System.Windows.Forms.ButtonBase.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 at System.Windows.Forms.Button.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 at System.Windows.Forms.Control+ControlWindowTarget.OnMessage (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 at System.Windows.Forms.Control+ControlNativeWindow.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 at System.Windows.Forms.NativeWindow.WndProc (IntPtr hWnd, Msg msg, IntPtr wParam, IntPtr lParam) [0x00000] in <filename unknown>:0 Robins-MacBook-Pro:~ RTT$

Any clues on how to fix it?  I've tried loading other saves too, not sure what's going on.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: MonkeyWithAWrench on August 19, 2014, 08:07:53 PM
Hi again Neurotoxin. I know I mentioned before that I wanted to try giving you a hand on this, but I've been occupied these last few days or so trying to create a mod to fill a gap in the gameplay that I feel. Also I use mercurial for source control and don't have anything installed to handle git, so doing proper push/pull operations might be a bit difficult for me to do directly.

Still, I'd like to try my hand at poking around and seeing what I might be able to add. To that end, do you have an list of features or priorities for what you'd like to see done? I've got a couple ideas but it might be helpful to hear the kind of direction you wanted to go.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: JibbeDahFish on August 19, 2014, 09:15:53 PM
never stop updating this friend it beats having god mode on all the time and helps with roleplay
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: Neurotoxin on August 19, 2014, 10:47:43 PM
@Kiba, I'll take a look and see what I can do. At first guess I'm thinking it didn't load the backstory values properly. Which version are you running? the stable release or the prerelease?

@MonkeyWithAWrench, I'm not sure what OS you're on but there's a lot of GUI tools for git. As for what needs doing, see TODO (https://github.com/LtStingray/RimworldSaveEditor/blob/InDev/Todo.txt) If you do want to help out via Git please base your changes of the InDev branch.

@JibbeDahFish I Intend to at least see this through to feature completion and if it's still in my hands (haven't transferred it to a new owner/ extreme circumstances) keep it up to date with the newest Alphas.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: MonkeyWithAWrench on August 19, 2014, 11:05:31 PM
Well I feel silly. I guess I should have looked at the files a little bit better first :P
I was just starting to poke around between working on this other thing so I completely missed that. Anyway, yeah, I 'll see what I can do when I get the chance...
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: Neurotoxin on August 19, 2014, 11:09:15 PM
Ok, and no problem, I've missed links in OP's before, at least I'm not one of them guys that goes, "READ THE OP IDIOT!" it takes just as much energy as it does to repost the link or info that was missed and it 's actually helpful to do so.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: macrosblackd on August 20, 2014, 12:19:52 AM
@MonkeyWithAWrench: Github has a pretty decent gui tool available to get you started with push/pull, etc. It even exposes direct command line access once you get more familiar and start to want to do more interesting things with it. Just google 'Github for Windows'. I also highly recommend Smartgit for mac/linux users. Hands down it is the most powerful git gui on the market. It even supports svn & hg.

@Neurotoxin: You need another option on the poll, 'I just pull the latest changes and build it myself!'
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: Neurotoxin on August 20, 2014, 12:43:00 AM
@Neurotoxin: You need another option on the poll, 'I just pull the latest changes and build it myself!'

ahahaha, That's "No". The poll is really just to gauge how useful it even is to the majority of users.

I actually Use Git Extensions (https://code.google.com/p/gitextensions/)
I've used Github for windows, and tried using smartGit and from the start I was just most comfortable with Git Ext.

Github for windows gave me nothing but problems (you can see that from my first few commit/pushes on github) Once it deleted my entire assemblyInfo.cs only to say I had another uncommited change that readded it with my one character change. That same time, it just would not not fail commiting the change so I had to resort to the commandline (which I barely knew) to fix it.

I haven't had a single problem since switching to GE. Github for windows is supposed to be a simple interface for people who can't, won't or just don't get the commandline (or don't want to use it I suppose but I think people who know it would want something with more ability) and it's great for a pure beginner to get used to Git with, until the inevitable error that can only be resolved via google, stack overflow and the command line.

Every day I'm thankful for stack overflow and that other people have already asked 99% of the questions I have and have recieved good answers.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: MonkeyWithAWrench on August 20, 2014, 12:57:33 AM
As I mentioned I use Mercurial myself, and I do it through TortoiseHg (http://tortoisehg.org). It's got a pretty d*** good gui actually. I've had some some experience with TortoiseGit, but it's been a fair while since then. Still, much of it is probably the same.

Some good news though. After using some google-fu, it looks like there an extension for TortoiseHg to allow changing repos between mercurial and git on the fly. It'll apparently even connect and work with github. So I might look into using that. It'd be nice to get the best of both worlds.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: Neurotoxin on August 20, 2014, 01:01:00 AM
As I mentioned I use Mercurial myself, and I do it through TortoiseHg (http://tortoisehg.org). It's got a pretty d*** good gui actually. I've had some some experience with TortoiseGit, but it's been a fair while since then. Still, much of it is probably the same.

Some good news though. After using some google-fu, it looks like there an extension for TortoiseHg to allow changing repos between mercurial and git on the fly. It'll apparently even connect and work with github. So I might look into using that. It'd be nice to get the best of both worlds.

that's awesome, just remember to connect to Github you'll need an API access key and an ssh key, which is pretty easy to link to your Github account, click settings (top right gear lookin thing) and you'll see this on the left side:
(http://i.imgur.com/CwOWH3s.png)
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: macrosblackd on August 20, 2014, 01:33:21 AM
The API key portion is only for applications that interact with github directly. For just cloning, you only need the SSH key, and you can even skip that by just cloning via https.  I very highly recommend (it is actually pretty much required if you want to create pull requests) forking the repository (from Neuro) first, then cloning your fork. Once you have it cloned locally, you can add a new remote that points to the original repo and do, if using git, 'git merge --ff-only <remote> <branch>'. This will do a couple of things, first it will stop if you've done any changes to branch HEAD is point at (you can bypass that with the --rebase option), and second, it will NOT create a merge commit, so you don't have to worry about branching logs.  I've found this to be a very ideal workflow when working on a github project.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: Neurotoxin on August 20, 2014, 02:16:12 AM
The API key portion is only for applications that interact with github directly. For just cloning, you only need the SSH key, and you can even skip that by just cloning via https.  I very highly recommend (it is actually pretty much required if you want to create pull requests) forking the repository (from Neuro) first, then cloning your fork. Once you have it cloned locally, you can add a new remote that points to the original repo and do, if using git, 'git merge --ff-only <remote> <branch>'. This will do a couple of things, first it will stop if you've done any changes to branch HEAD is point at (you can bypass that with the --rebase option), and second, it will NOT create a merge commit, so you don't have to worry about branching logs.  I've found this to be a very ideal workflow when working on a github project.

Let me rephrase that workflow for people with a git gui. Push some buttons, then push another button, make your changes, push a button or two, go to github and submit a pull request(Depending on the GUI you can maybe do this from there too). Haha, but really, you make it sound so hard, not that verbosity is a bad thing, but it can be a little daunting.

To simplify while remaining verbose. Fork my repo (preferably the InDev branch, that's the staging branch for changes), clone your fork to your machine, make ALL THE CHANGES!!!, if my fork has changed, rebase yours off mine, push and submit a pull request.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: MoparGamer on August 20, 2014, 02:42:29 PM
I might have found a trait editor bug or maybe just a mod conflict (Playing a modified game); after adding traits to a colonist, trying to add traits to a different colonist gives me the following error
Code: [Select]
See the end of this message for details on invoking just-in-time (JIT) debugging instead of this dialog box.************** Exception Text **************System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.   at System.ThrowHelper.ThrowKeyNotFoundException()   at System.Collections.Generic.Dictionary2.get_Item(TKey key)   at RimWorldSaveEditor.Form1.button2_Click(Object sender, EventArgs e)   at System.Windows.Forms.Control.OnClick(EventArgs e)   at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)   at System.Windows.Forms.Control.WndProc(Message& m)   at System.Windows.Forms.ButtonBase.WndProc(Message& m)   at System.Windows.Forms.Button.WndProc(Message& m)   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)************** Loaded Assemblies **************mscorlib    Assembly Version: 2.0.0.0    Win32 Version: 2.0.50727.5472 (Win7SP1GDR.050727-5400)    CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll----------------------------------------RimWorldSaveEditor    Assembly Version: 0.9.6.5    Win32 Version: 1.0.0.0    CodeBase: file:///C:/Users/Mike/Desktop/RimworldSaveEditor/RimWorldSaveEditor.exe----------------------------------------System.Windows.Forms    Assembly Version: 2.0.0.0    Win32 Version: 2.0.50727.5468 (Win7SP1GDR.050727-5400)    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll----------------------------------------System    Assembly Version: 2.0.0.0    Win32 Version: 2.0.50727.5467 (Win7SP1GDR.050727-5400)    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll----------------------------------------System.Drawing    Assembly Version: 2.0.0.0    Win32 Version: 2.0.50727.5467 (Win7SP1GDR.050727-5400)    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll----------------------------------------System.Configuration    Assembly Version: 2.0.0.0    Win32 Version: 2.0.50727.5476 (Win7SP1GDR.050727-5400)    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll----------------------------------------System.Xml    Assembly Version: 2.0.0.0    Win32 Version: 2.0.50727.5476 (Win7SP1GDR.050727-5400)    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll----------------------------------------System.Core    Assembly Version: 3.5.0.0    Win32 Version: 3.5.30729.5420 built by: Win7SP1    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Core/3.5.0.0__b77a5c561934e089/System.Core.dll----------------------------------------************** JIT Debugging **************To enable just-in-time (JIT) debugging, the .config file for thisapplication or computer (machine.config) must have thejitDebugging value set in the system.windows.forms section.The application must also be compiled with debuggingenabled.For example:<configuration>    <system.windows.forms jitDebugging="true" /></configuration>When JIT debugging is enabled, any unhandled exceptionwill be sent to the JIT debugger registered on the computerrather than be handled by this dialog box.The error isn't fatal (doesn't crash the program) but it does repeat itself for all colonist after the first instance of it happening. re-opening the program allows me to edit traits again.

Also, upon loading a save file the entire backstory section is blank. It's easily fixed by clicking a colonist to load up their info.

Thanks for the editor :)
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: macrosblackd on August 20, 2014, 04:27:33 PM
Thanks for the stack trace. When I get some free time I'll take a look if Neuro doesn't get to it first.

In the future though, I would highly recommend not trying to perform additional actions after an exception. Even if the application stays open, there is no way to determine in the state of the application is safe and it could cause corruption to you're save file.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: Archinemal on August 20, 2014, 10:40:47 PM
For some reason if you try to edit a save with Rimworld Zombie Apocalypse enabled the tool does not load the colonists. The save loads up with  no errors but the colonists don't show up on the screen. I checked and the tool works on other saves that did not have the zombie mod Enabled and it worked so I concluded that the mod was causing the problem. I would be glad for help if its on my end and would be thankful for a patch if its on your end.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: khromosone on August 21, 2014, 02:47:24 AM
I am having the same drama and also have Zombies enabled.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: Neurotoxin on August 21, 2014, 05:34:53 AM
The Zombie mod must change the kindDef for Colonists, if anyone would kindly post a save using it I'll look into it.

@Mopar do any of the mods you're using add any traits? The way traits are saved in the file looks something like this

Code: [Select]
<li Class="Trait">    <def>NaturalMood</def>    <degree>1</degree></li>And multiple traits with different player readable names use the same defName with a different degree so I have to hard map those in to display the readable name in the save editor, if a mod adds traits, I don't have a map of their traits. I could fix it by null checking the key and if I don't have a key, display the defName instead, it's ugly but it's the only way to do it without Mapping out every single mod that adds traits. That all said, I know exactly where the problem is and I'll roll out a fix for the prerelease tonight.

If you could also send me a save to test with it would greatly help for solving mod compatibility.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: MoparGamer on August 21, 2014, 12:30:22 PM
Here's the save I was editing before and the mods I'm using:
Apothecarius (Adds a medicine production chain)
Clutter (Various aesthetic objects)
EdBInterface (Edits the in-game HUD)
ProjectArmory (More guns)
Tech Tree Minami (A lot of things)

I looked through the save myself and didn't see any odd traits, but I do have more than 2 traits per colonists and there are some additional jobs (In the overview's work tab)

https://www.dropbox.com/s/fg9tev6q7dd7osu/TheMountainTesting.rwm
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: Neurotoxin on August 21, 2014, 12:31:29 PM
Here's the save I was editing before and the mods I'm using:
Apothecarius (Adds a medicine production chain
Clutter
EdBInterface
ProjectArmory
Tech Tree Minami

I looked through the save myself and didn't see any odd traits, but I do have more than 2 traits per colonists and there are some additional jobs (In the overview's work tab)

https://www.dropbox.com/s/fg9tev6q7dd7osu/TheMountainTesting.rwm

Alrighty, I'll take a look and get back to you.

EDIT: It might be a little while on that one, it's trying really hard to hide from me but I WILL find it and when I do, it's little buggy guts are going to get everywhere. It's not, in your case, a mod incompatibility rather, something I messed up. And that's why the trait editor is a pre-release.

BTW updates have slowed for 2 reasons, one being I'm waiting for a bit more feedback on the trait editor as I know there's gotta be another bug or two hiding in there and 2 I'm doing a large refactor of the code. To make bug hunting and feature addition easier with the help of Macros
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: MoparGamer on August 21, 2014, 02:14:12 PM
I may have another odd bug for you. I recently got a new colonist from an event, I went to edit him in the editor and he didn't appear in the editor, Haven't captured anyone yet so I don't know if it's specific to the event.

I'm going to switch back to vanilla Rimworld and test see if either of my issues are still present.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: Neurotoxin on August 21, 2014, 02:18:00 PM
I may have another odd bug for you. I recently got a new colonist from an event, I went to edit him in the editor and he didn't appear in the editor, Haven't captured anyone yet so I don't know if it's specific to the event.

I'm going to switch back to vanilla Rimworld and test see if either of my issues are still present.

The trait editor issue will more than likely still be present. I'm certain it's something on my end though I haven't pinpointed it. It seems the program is losing the mapping of the readable name to the trait's degree. It works fine once, but not on subsequent use. As for the additional colonist, if you want to upload a save that contains him/her and give me their name I'll poke around and see why that may be. It could very well be that something else is erroring but not throwing an exception before it gets to reading that colonist, or something is off about them in the save file.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: MoparGamer on August 21, 2014, 02:21:38 PM
Both issues were still present with the vanilla game, here's the save file https://www.dropbox.com/s/c4jhd13tby6zpwd/Test.rwm

The fourth colonist's name is Jaquese
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: Neurotoxin on August 21, 2014, 02:24:35 PM
Both issues were still present with the vanilla game, here's the save file https://www.dropbox.com/s/c4jhd13tby6zpwd/Test.rwm

The fourth colonist's name is Jaquese

And there's the new problem
Code: [Select]
<kindDef>Villager</kindDef>
Has Jaquese actually arrived at the colony yet or are they still on their way there? I see the event is still active, It may need to finish before they're actually consider a colonist.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: MoparGamer on August 21, 2014, 02:35:17 PM
At that point in time he hadn't arrived. I just let him live through a night, sleep, and do some other random things, he's still not loading in the editor and I checked the save file as well, He's still listed as a villager.

The new file: https://www.dropbox.com/s/4p6ioxs7d6ogk7n/Test%20%282%29.rwm
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: Neurotoxin on August 21, 2014, 02:36:15 PM
That makes me wonder if they STAY a villager, let me go find out.

Edit: They do. Apparently Colonists spawned by that incident have a villager kindDef, next update I'll add a check for that as well. Thank you for the reports.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18
Post by: Kiba1177 on August 21, 2014, 03:03:28 PM
Hey there.  Clicking anything on the mod actually seemed to give me an issue, just messing around to see if I could figure it out I got this

Quote
Last login: Wed Aug 20 18:16:20 on console
Robins-MacBook-Pro:~ RTT$mono Users/RTT/Downloads/Rimworld/RimWorldSaveEditor.exe Cannot open assembly 'Users/RTT/Downloads/Rimworld/RimWorldSaveEditor.exe': No such file or directory. Robins-MacBook-Pro:~ RTT$ Users/RTT/Downloads/Rimworld/RimWorldSaveEditor.exe
Robins-MacBook-Pro:~ RTT$/Users/RTT mono-bash: /Users/RTT: is a directory Robins-MacBook-Pro:~ RTT$ mono /Users/RTT/Downloads/Rimworld/RimWorldSaveEditor.exe
System.NullReferenceException: Object reference not set to an instance of an object
at RimWorldSaveEditor.Form1.GetSelectedPawn () [0x00000] in <filename unknown>:0
at RimWorldSaveEditor.Form1.button1_Click_1 (System.Object sender, System.EventArgs e) [0x00000] in <filename unknown>:0
at System.Windows.Forms.Control.OnClick (System.EventArgs e) [0x00000] in <filename unknown>:0
at System.Windows.Forms.Button.OnClick (System.EventArgs e) [0x00000] in <filename unknown>:0
at System.Windows.Forms.ButtonBase.OnMouseUp (System.Windows.Forms.MouseEventArgs mevent) [0x00000] in <filename unknown>:0
at System.Windows.Forms.Button.OnMouseUp (System.Windows.Forms.MouseEventArgs mevent) [0x00000] in <filename unknown>:0
at System.Windows.Forms.Control.WmLButtonUp (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0
at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0
at System.Windows.Forms.ButtonBase.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0
at System.Windows.Forms.Button.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0
at System.Windows.Forms.Control+ControlWindowTarget.OnMessage (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0
at System.Windows.Forms.Control+ControlNativeWindow.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0
at System.Windows.Forms.NativeWindow.WndProc (IntPtr hWnd, Msg msg, IntPtr wParam, IntPtr lParam) [0x00000] in <filename unknown>:0
Robins-MacBook-Pro:~ RTT$I'm doing the latest release. Not sure what could be going wrong. Not very tech savvy. Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18 Post by: Neurotoxin on August 21, 2014, 03:11:05 PM @Kiba, I'm going to guess you hadn't loaded a save file at that point? It crashed because it needed to have a pawn selected but since there wasn't a pawn TO select... I forgot to disable those controls. If you HAD loaded a save then there's a big problem but if not, then just don't click anything other than load until you've loaded something haha. I realize there's several issues with the prerelease at this point So I'll bump getting a fix out up on my list and then worry about the Refactor. I don't know if I'll be able to get to it tonight for certain but I'll do my best. As for your original problem, I'm thinking Mac might not want to play nice with bundled resources when you're loading your save. I'll attach a copy of the current build with the resources externalized in a moment and let me know if you can actually load a save. [attachment deleted by admin: too old] Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18 Post by: Kiba1177 on August 21, 2014, 04:49:48 PM Really appreciate the fast reply! You're awesome for helping me out, sorry about this. The second problem makes sense, I didn't know if it was related or not, sorry! Redownloaded the new file you attached, got another problem, not sure if it's the same. Same thing as the first time, went to load my most recent save, and immediate crash. Quote Robins-MacBook-Pro:~ RTT$ mono /Users/RTT/Downloads/Rimworldd/RimWorldSaveEditor.exe
System.NullReferenceException: Object reference not set to an instance of an object
at RimWorldSaveEditor.Form1.RefreshBackstories () [0x00000] in <filename unknown>:0
at RimWorldSaveEditor.Form1.colonistListBox_SelectedIndexChanged (System.Object sender, System.EventArgs e) [0x00000] in <filename unknown>:0
at System.Windows.Forms.ListBox.OnSelectedIndexChanged (System.EventArgs e) [0x00000] in <filename unknown>:0
at System.Windows.Forms.ListBox+SelectedIndexCollection.Add (Int32 index) [0x00000] in <filename unknown>:0
at System.Windows.Forms.ListBox.set_SelectedIndex (Int32 value) [0x00000] in <filename unknown>:0
at System.Windows.Forms.ListBox.OnDataSourceChanged (System.EventArgs e) [0x00000] in <filename unknown>:0
at System.Windows.Forms.ListControl.set_DataSource (System.Object value) [0x00000] in <filename unknown>:0
at (wrapper remoting-invoke-with-check) System.Windows.Forms.ListControl:set_DataSource (object)
at RimWorldSaveEditor.Form1.openFileButton_Click (System.Object sender, System.EventArgs e) [0x00000] in <filename unknown>:0
at System.Windows.Forms.Control.OnClick (System.EventArgs e) [0x00000] in <filename unknown>:0
at System.Windows.Forms.Button.OnClick (System.EventArgs e) [0x00000] in <filename unknown>:0
at System.Windows.Forms.ButtonBase.OnMouseUp (System.Windows.Forms.MouseEventArgs mevent) [0x00000] in <filename unknown>:0
at System.Windows.Forms.Button.OnMouseUp (System.Windows.Forms.MouseEventArgs mevent) [0x00000] in <filename unknown>:0
at System.Windows.Forms.Control.WmLButtonUp (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0
at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0
at System.Windows.Forms.ButtonBase.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0
at System.Windows.Forms.Button.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0
at System.Windows.Forms.Control+ControlWindowTarget.OnMessage (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0
at System.Windows.Forms.Control+ControlNativeWindow.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0
at System.Windows.Forms.NativeWindow.WndProc (IntPtr hWnd, Msg msg, IntPtr wParam, IntPtr lParam) [0x00000] in <filename unknown>:0
Robins-MacBook-Pro:~ RTT$Again, appreciate the help! Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18 Post by: Neurotoxin on August 21, 2014, 05:24:26 PM hmm yeah, stacktrace is the same. So, it wasn't packed resources. I think I MIGHT know what's maybe causing that. Gotta love my positivity there. I think what's happening is the index of the colonist selection box is changing when it loads, on my system that doesn't cause a problem, but on yours it seems it's trying to access data before it's actually there. I'm not sure how to fix this but maybe I'll get it during the refactor, actually it wouldn't surprise me since I plan on Making absolutely sure data gets loaded before you even have an option of loading a save, to guarantee that its there. Oh and no need to apologize, it's a bug in my code somewhere, I'd rather be ahem.. bugged.. about it then let it slip through the cracks. Now that I got the other bits sorted out I can hopefully crack down on that bug IF compiling against the mono Libraries didn't fix it. Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18 Post by: Neurotoxin on August 21, 2014, 07:01:34 PM (http://theloungeisback.files.wordpress.com/2013/07/professor-farnsworth.jpg) I've squished the trait bug. Working on fixing the trait list not populating right away now, and I'm 99% sure I've fixed the Zmobie mod related bug along the way. There will be a fix out tonight! Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18 Post by: MoparGamer on August 21, 2014, 07:07:22 PM Great work Neuro :) Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18 Post by: MonkeyWithAWrench on August 21, 2014, 07:56:47 PM Now, I know this isn't super helpful at the moment but I made a little addition myself. I wanted to just start with something small to play around with the code a bit, so I created a "splash screen" of sorts. It's a new first tab that will display first when the program starts, with a big logo image on it. My main idea with it is that once a save is loaded, the logo will disappear and be replaced by a summary of various information from the save file. Things like planet name, maybe the grid location, colony name, number of colonists, etc., etc. This isn't too helpful right now, but since the plan is to expand this with more and more features, it might be helpful to have a spot to print summary information down the line. I also put together a logo for it with a name I came up with. I felt it did a good job representing the Rim-whatevs feeling, so I ran with it. If you don't like the name then we don't have to use it for the project, no biggie. Anyway, there should be a pull request pending so please take a look. Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.5 - Updated 8/18 Post by: Neurotoxin on August 21, 2014, 08:02:05 PM Alright I'll take a look shortly, I actually just got a set up with a working Mono profile for VS to hopefully try and resolve potential cross-compatibility issues. If you want information on this, this was the most clearly written solution I found http://nbevans.wordpress.com/2013/02/13/targeting-mono-in-visual-studio-2012/ Re: Summary info you mean like a debug output or just like a status text? Either one is easily doable, as a matter fact I occasionally slap a extra list box on and print debug info to it when I'm hunting. But you can also use Debug.Assert(condition, "message") and it will popup anytime the condition is false, if it's a debug output you're looking for. Also, I merged your commit and pushed a couple updates of my own if you want to pull the changes. Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.6 - Updated 8/21 Post by: Neurotoxin on August 21, 2014, 09:40:09 PM Update to v0.9.6.6 - Should fix Trait NRE's and comboboxes not being populated right away Compiled against mono framework to hopefully fix cross-compatibility edit: should also work with Mods that change the class and/or kindDef of Pawns (e.g Zombie apocalypse) Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.6 - Updated 8/21 Post by: MoparGamer on August 22, 2014, 09:06:36 AM Saw the update and decided to play around with it, so far I've found that the "Remove Selected" button removes the trait but not it's listing from the "Perks" text box, it does allow the listing to be replaced by a new trait though. Ex. I remove Psychically sensitive, It's listing stays in the text box but when I add any other trait it replaces the Psychically sensitive listing. Everything else checks out, I haven't tested the random joining villagers yet but yeah.. Edit: It also seems to think that every colonist of mine was a "Abandoned child" at childhood & Adulthood, I checked the save file and none of them were. Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.6 - Updated 8/21 Post by: Neurotoxin on August 22, 2014, 09:23:13 AM Saw the update and decided to play around with it, so far I've found that the "Remove Selected" button removes the trait but not it's listing from the "Perks" text box, it does allow the listing to be replaced by a new trait though. Ex. I remove Psychically sensitive, It's listing stays in the text box but when I add any other trait it replaces the Psychically sensitive listing. Everything else checks out, I haven't tested the random joining villagers yet but yeah.. Ok, when I was cleaning up I must have missed a refresh call to the box. I was so focused making sure ADDING working I forgot to check that I didn't mess up removing. Once again, thanks for the report. I'll throw a fix up for that shortly. Edit: Update to fix trait box not refreshing on removal out <- ignore that I don't know how it got there. Also fixed an unreported bug with the thought adder. Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22 Post by: MoparGamer on August 22, 2014, 10:12:03 PM More bad news :) With version 0.9.6.7 Been having a number of odd issues today, I think they're all related to the refreshing stuff you mentioned. The first issue is editing multiple colonist priorities (minor/major/none) of skills, It seems that it's resetting to its original values after switching to a different colonist and then back, It appears to still save them as set by the user though. (The data is set, but original values are displayed) The second issue I mentioned in the edit of my last post, Quote Edit: It also seems to think that every colonist of mine was a "Abandoned child" at childhood & Adulthood, I checked the save file and none of them were. There's also a small edition to this; When either backstory is set it stays to that backstory in the selection box regardless if you edit/select a colonist with a different backstory. And a small feature request... Healing injuries/limbs I've been doing a bit of manual save editing while playing with your editor, mainly with the <healthTracker> section, I've managed to fix broken limbs and such while doing this and was wondering if you could make a quicker version of what I've been doing. What I do: Open save file, locate colonist with a search for either their name or "kinddef>C" Scroll down to find <healthTracker> Replace contents from <healthTracker> to </healthTracker> with the following (A clean bill of health): Code: [Select]  <healthTracker> <pawnHealth>100</pawnHealth> <bodyModel> <injuries /> <nonlocalInjuries /> <missingParts /> <maxPainLevelMultiplier>1</maxPainLevelMultiplier> </bodyModel> </healthTracker>` Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22 Post by: Neurotoxin on August 23, 2014, 03:16:46 AM Hmm, jeez, fix one thing, break another right? Let me address this in reverse: Health - I've been intending to add this for a while but I want to get the editor a clean bill of health first, at the point it's at, and do some internal changes. I suppose I could stick a "Heal this colonist" button in there somewhere, but I was looking to have a bit more detail to it though that would make a good temporary measure. backstory, I actually think I know what's causing that, and it's because I changed the way the box displays data. Rather than adding each *possible* entry to the list I switched to a data binding, which gives me more flexibility but I didn't account for the fact that I'd have to change how that data gets refreshed for display, and the same thing goes for the passions/ I'll work on it tonight, and THOROUGHLY test it myself before putting it out there this time. I usually do (e.g. previous - non prerelease releases) but the last 2, I've been rushed getting the fixes out as I've been a bit busy but didn't want to leave you guys hanging. I appreciate your patience with this and all the good bug reports. Btw, try seaching for Controller>. You'll always get a Colonist, and you'll be about one block up from the healthTracker. It's important to have the closing brace there though. It's how I'm searching for Colonists now to solve the class/kindDef issue when modding a modded save. Edit: well now that's strange. Got the Passions working as expected, working on the backstory (adulthood, childhood) and.. I've managed to make it select them at random. I'm one step closer. Edit 2: Apparently BindingLists don't like when their Combobox is sorted. Got that fixed up. Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22 Post by: MoparGamer on August 23, 2014, 09:22:43 AM Just a heads up, I won't be able to bug test for the weekend. Also, thanks for the hard work, It's been awesome seeing fixes roll out within a couple hours of posting. Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22 Post by: Neurotoxin on August 23, 2014, 10:21:32 AM haha, no worries, without reported bugs maybe I can actually get around to rebasing the code, I'll actually have enough time to do more thorough QA myself before release as well so Maybe I'll break less each time I fix it. Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22 Post by: Neurotoxin on August 27, 2014, 01:02:56 PM Just wanted to pop in really quick and give everyone an update. This has not been abandoned, I've been working on it every day but it's undergoing MASSIVE changes to the code base. There hasn't been any activity on GitHub because I'm keeping the changes local until it's cleaned up. I'd expect seeing at least a new push to the GitHub by the end of the weekend. that said the best date I can give is Soonâ„¢ Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22 Post by: MoparGamer on August 27, 2014, 10:21:59 PM I'll happily bug test if you need it :) Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22 Post by: Iwillbenicetou on September 01, 2014, 10:17:15 AM So is the Mac version ok? I read through every single post. I saw yours, but it was a bit confusing, so can I use this with Rimworld? Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22 Post by: Neurotoxin on September 01, 2014, 02:06:13 PM There's no reason I know of that it shouldn't work with mono. The only way to know for sure is to try it. Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22 Post by: MrBlazzar on September 13, 2014, 08:37:59 AM Hey man any news on the progress of the Re-factored code base for the save editor? Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22 Post by: Neurotoxin on September 13, 2014, 09:01:30 AM I was just going to post an update on that today. Progress came to a halt about 3 days ago when I suffered a hard disk failure. After several days dicking around I've gotten my computer back to a usable state (had to completely start everything fresh, reinstall windows, drivers, Visual Studio etc.. still have 2.5 gb of windows updates) until I can get a new HDD. I JUST pulled about 5 minutes ago my source back but I've lost all of my local changes so rebasing the code will have to be restarted from scratch. That said, it shouldn't be too long before I get out a release with the rebased code or at least a solid build on the current code. During that time, I've resorted to pseudo building the code on paper/pencil so I have a good working layout of what needs to be done. My current plan is to refactor the loading code and rebuild the way data is presented to the UI and push out a half-way update while trying to fix up what's left of current bugs. I sincerely apologize for the delays. Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22 Post by: MrBlazzar on September 13, 2014, 09:06:44 PM I was just going to post an update on that today. Progress came to a halt about 3 days ago when I suffered a hard disk failure. After several days dicking around I've gotten my computer back to a usable state (had to completely start everything fresh, reinstall windows, drivers, Visual Studio etc.. still have 2.5 gb of windows updates) until I can get a new HDD. I JUST pulled about 5 minutes ago my source back but I've lost all of my local changes so rebasing the code will have to be restarted from scratch. That said, it shouldn't be too long before I get out a release with the rebased code or at least a solid build on the current code. During that time, I've resorted to pseudo building the code on paper/pencil so I have a good working layout of what needs to be done. My current plan is to refactor the loading code and rebuild the way data is presented to the UI and push out a half-way update while trying to fix up what's left of current bugs. I sincerely apologize for the delays. Happens to us all. Thanks for the update man. Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22 Post by: Neurotoxin on September 15, 2014, 01:12:14 PM Just a quick heads up. I'm looking at a cleaned up release in the next day or two. Still far from exactly where I want the code-base to be but much more workable. I have to update the XML update code and clean out any lingering bugs and we'll be good to go. I might even slip a new feature in there depending on the effort it takes to get where I'm aiming. Thanks for sticking with me guys :D Title: How do I find my directory? Post by: TemplarsKnight on September 21, 2014, 11:31:11 AM I've installed this mod, and I have my RimWorld folder up. The one thing I notice is that when I load the tool and press "Load" it takes me to nothing but my docs. I ask someone to take sometime and tell me the steps, thank you. (If there is a How To on the mod page, please tell me because I probably never noticed it.) Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22 Post by: Neurotoxin on September 21, 2014, 11:56:21 AM Your saves should be in <user directory>\AppData\LocalLow\Ludeon Studios\RimWorld\Saves (Assuming you're on windows), you can easily get there by typing %appdata% in the address bar of the file explorer then going up one level to AppData and following the rest of the path. Once you've selected a save once it should by default open that folder in the future. If you're not on windows: MAC: Users/[username]/library/cache/Ludeon Studios/RimWorld/Saves LINUX: /home/[username]/.config/unity3d/Ludeon Studios/RimWorld/Saves I'll take this time to also give an update on the state of the editor. With Alpha 7 right around the corner I'm going to postpone pushing an update until then. I've hit a few snags with changing the way nodes are handled and in case things change I just want to hold off as I don't think A7 will be too far away. Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22 Post by: Knigge on November 17, 2014, 01:53:34 PM I really need a tool like this for playing, and I wonder what the state of this one is. Are you still working on it? :) Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22 Post by: Neurotoxin on December 02, 2014, 12:02:50 AM I really need a tool like this for playing, and I wonder what the state of this one is. Are you still working on it? :) Short answer: Yes. Long answer: I haven't had internet for about a month besides my phone. My modem died and I couldn't afford a$90 service call (which is required even just to replace my damn modem, freaking stupid I couldn't just mail it in) and I finally got the tech out here to get me back online. That said, it's been a while since I even looked at the code for this so I'm basically restarting. I've already rebuilt the UI from scratch and now I'm working on handling the necessary file operations. Once I've finished that it'll be a bit of internal bugfixing and ensuring compatibility with mods that MAY change certain save file parameters such as The thing class of pawns. I won't be giving an ETA at this time but I'll try to keep it as timely as possible.

I really am sorry to anyone who might have asphyxiated from holding their breath for an update. Those of you still holding it, let it out, and take a new breath (Also, how the hell did you hold your breath for over a month!?).

All of the above said, all the features that were previously implemented WILL be returning in the next release but if you have a request for a new feature, now would be a great time to put it out there.

12/3/2014 Update:
Got the UI working beautifully, still in need of polish and missing a few features atm but I've gotten all the Data Binding issues worked out and no longer have to explicitly set each and every field. Next up, enabling the rest of the features (adding thoughts/traits, remove already works) and finally loading/parsing and saving the save file (I'm trying to do this as generically as possible to ensure forward compatibility at best as possible and mod compatibility). A screenshot of the new UI is below, remember this is still a WiP and needs a bit more refining and a few things added (like save, load, check for update [don't worry about that one it's pretty simple so it's not gonna slow me down]).

After I get a release of the new and improved editor released I'll work on adding tooltips to traits/thoughts and I got a couple features I might try to implement. I don't want to spoil the surprise on those too much so I'm going to keep quiet about them but I will tease the ability to remove a disease and set immunity.

Screenshot as promised. The names traits and thoughts are just debug values I came up with off the top of my head and the skills are randomly generated.
(http://i.imgur.com/oBNgqhL.png)

Ok, done posting now. Hi ho Hi ho, back to work I go.

UPDATE 12/4/2014:
Updated internal Thought and Trait Definitions last updated for A6

Last thing that needs to be done before release is handling saving data, backups and update check.

Current working screencap:
(http://i.imgur.com/VeGfHX9.png)
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22
Post by: DoomerDGR8 on December 05, 2014, 02:38:50 AM
How to use the Backstory dumper? I can't figure it out. I was able to compile it but cannot understand where to put it...
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22
Post by: Neurotoxin on December 05, 2014, 02:43:59 AM
How to use the Backstory dumper? I can't figure it out. I was able to compile it but cannot understand where to put it...

It's a bit complicated to explain so I'll just say it doesn't work lol.
https://ludeon.com/forums/index.php?topic=5046.msg48555#msg48555
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22
Post by: Neurotoxin on December 05, 2014, 06:53:02 PM
I usually try to avoid double posting but I want this to show as there is new replies.

I'm NEARLY ready to release 1.0 but I need some help. If anyone has an A7 save with a colonist in a cryptosleep pod I need it to test. I also need an A7 modded save, something that changes pawns, traits or thoughts.

I can't really ensure compatibility with mods that change traits or thoughts at the moment but I'll try. I'm thinking there's 2 real options for it, I can either display traits without a nice readable name (this becomes a minor problem with spectrum traits) or I can make a tool to allow you to dump traits from MOD xml's and read the dumped files in from a folder in the save editor's directory.

If I go with generically handling them you wouldn't be able to add mod traits/thoughts but would be able to remove them. A spectrum trait would be displayed differently as well. For example say you have slowpoke (vanilla trait) you'd see "SpeedOffset -1" as it's name or if you had fast walker it'd be "SpeedOffset 1" basically parsing the defName and degree as the readable name.

If I go with the external tool, I can't guarantee it'll work with all mod xml files unless A.) everyone follows the same standard for tagging (which theoretically they should) or B.) I give you, the user, control over what exactly is being parsed and that requires writing directions and people following them. Depending on how many people can follow explicit instructions (which from my experience is about 50% lol) it'd be easier to parse every potential mod myself.

I'm not just soapboxing with the info above either. I want to hear your opinions on what the best course of action is here. As far as my use of the tool it's complete but for you, the consumer, I need to know what you want and need from it. If anyone is experienced in programming please feel free to provide me ideas as alternatives for handling mod traits/thoughts.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22
Post by: nikodenoma on December 12, 2014, 11:52:54 AM
I'd suggest you go with the eternal tool, and hope for the best that everyone can start tagging in a standardized method.

As for the rest, with the recent update are you still needing A7 saves?
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22
Post by: Neurotoxin on December 12, 2014, 07:30:32 PM
A7 or A8. But I don't really *need* them now. I got RW installed since then. Short reason I had asked: I have limited bandwidth (10gb/month unmetered between midnight and 5am) So I need to be sparing with what I use and saves are a good bit smaller than the whole game.

I'm working out a few kinks right now then it'll be ready for private testing. That said, anyone who would like to help out with private testing let me know. I've already got 2 people but a little more input would be great.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22
Post by: MrBlazzar on December 12, 2014, 08:45:54 PM
I'm always down to do some testing if you need it man. Would love to see this updated and working well.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22
Post by: Neurotoxin on December 12, 2014, 09:35:11 PM
Awesome, sent you a link to the current closed test copy. Just try and break a save in any way possible. Thanks.
Title: Re: [TOOL] (Alpha 6) Save Editor v0.9.6.7 - Updated 8/22
Post by: Neurotoxin on December 13, 2014, 02:38:43 AM
Locking this thread in favor of a new more cleaned up one. Public test release will be released as soon as I'm done with a little more internal testing :).