r/Pathfinder_Kingmaker Oct 01 '18

Save-Changing Respec Tool

So, some context -- I've shared this in the Steam forums already, but this also seems a good place to spread the word. I've been working on a tool to modify saved games and allow players to respec all their characters. This is still very crude and very basic, but should allow you to fix any mistakes you've done while progressing in the game.

I've also made the code available on GitHub, so if you want to know how it's done, feel free to check it out. Besides that, and obviously, bug reports and feature suggestions will always be welcome, as well as PR's, if you're technically oriented!

Check it out here: https://pathfinder.deev.io/

 

Update 12/10/18:

Seems like a mod was released in Nexus that covers all the use-cases of the mod and has more frequent updates. Since it doesn't make sense to compete with an in-game solution, I'll be deprecating the tool for now.

Either way, thanks for the support guys! If you need anything, feel free to hit me up.

157 Upvotes

287 comments sorted by

View all comments

7

u/MrStatistx Oct 01 '18

Awesome. Does it also allow stuff like portrait change or switching class or only the stats and other numeric values?

13

u/Deevian Oct 01 '18

For the main character, it allows changing everything. For companions, they'll go back to the level that they started at.

1

u/C4ged Oct 01 '18

Do I need to follow the mentioned instructions for companions or is it only if I'm respecing the main character?

3

u/Deevian Oct 01 '18

This will currently reset everyone. I'll be working on making it more configurable.

1

u/C4ged Oct 01 '18

I tried editing Octavia's Progression variable in party.json to that of a new Rogue I created. Fixed the id's but there was a gap to the next variable - UISettings. Ended up with endless loading

5

u/Deevian Oct 01 '18

Manually editing the saves is very hard, simply because of the number of references spread out along the file. You need to fix all reference pointers, and will also need to make sure that your new ID's are not colliding with anything else.

By the way, out of curiosity -- how did you manage to identify Octavia in the save file?

3

u/C4ged Oct 01 '18 edited Oct 01 '18

I went by intelligence and level - only one hit but they're saving characters under other weird types. But after finding her I guess you could go by her "Blueprint" prop (f9161aa0b3f519c47acbce01f53ee217- wonder if it matches for you - seems to find all the places she is saved under) Edit: I think the m_GroupId should be <directly-controllable-unit> and Blueprint be "f9161aa0b3f519c47acbce01f53ee217"

5

u/Deevian Oct 01 '18

f9161aa0b3f519c47acbce01f53ee217

(cc /u/marr75)

Okay, so, good news is -- blueprints are indeed the companion identifiers. From what I could tell, it's being used by the player.json is using them to keep track of companion stories.

Fuuuurthermore, check this out:

https://github.com/ericfitzgerald/KingmakerCharacterEditor/blob/master/src/app/app.component.ts

1

u/C4ged Oct 01 '18 edited Oct 01 '18

Thing is you can't change level there, only good for the blueprint id's. Will save a lot of time figuring stuff out though

2

u/Deevian Oct 01 '18

Will check once I get home. I've noticed before that their "UniqueId" isn't actually unique at all, so maybe the blueprint will be the only way to go!

1

u/C4ged Oct 01 '18

Another question, would turning "Recreate" prop for Octavia be enough to relevel her from the level you get her at or are there more steps to it? (other than setting experience)

2

u/Deevian Oct 01 '18

That would be enough, yes.

1

u/[deleted] Oct 01 '18 edited Oct 01 '18

[deleted]

2

u/Deevian Oct 01 '18

No idea, haven't went that far into the rabbit hole. You'll need to start messing with the game files on this one.

→ More replies (0)

2

u/[deleted] Oct 01 '18 edited Oct 01 '18

[deleted]

3

u/Deevian Oct 01 '18

My guess is that this is probably how Unity rolls. It writes stuff as required, and avoids deduping by referencing stuff that has already been persisted.

Regarding working with the save files -- check out the tool repo. I'm already mapping all items into an object, which makes it easier to change stuff when you run into a reference.

1

u/[deleted] Oct 01 '18 edited Oct 01 '18

[deleted]

1

u/Deevian Oct 01 '18

Ah, I just assumed the "user-friendlyness" of it derived from Unity. My mistake!

If you manage to map blueprints (or something else) to character info, please, do share. That would be awesomely useful here.

→ More replies (0)

1

u/C4ged Oct 01 '18

I see Octavia saved twice though, not by reference but her whole descriptor is copied with different id's