Jump to content

Welcome to Obsidian Forum Community
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. If you already have an account, login here - otherwise create an account for free today!
Photo

Savegame Editor


  • Please log in to reply
67 replies to this topic

#21
Sir Newbie

Sir Newbie

    (1) Prestidigitator

  • Members
  • 36 posts

My only concern : why is this thread not pinned yet ?



#22
Sensuki

Sensuki

    Subway Apathist of the Obsidian Order

  • Members
  • 9963 posts
  • Location:Australia
  • Steam:STEAM_0:1:1229809
  • Pillars of Eternity Silver Backer
  • Kickstarter Backer

When inventory editing works? :p


  • Sarex and peddroelm like this

#23
Immortalis

Immortalis

    (4) Theurgist

  • Members
  • 299 posts
  • Pillars of Eternity Backer

Sorry if I am blind and missed it.. but would you be against kicking off a git / svn repository if you were planning on maintaining this source for release?



#24
Bester

Bester

    (7) Enchanter

  • Members
  • 800 posts
  • Pillars of Eternity Backer
  • Kickstarter Backer

Sorry if I am blind and missed it.. but would you be against kicking off a git / svn repository if you were planning on maintaining this source for release?

 

Ok: https://bitbucket.or...savegame-editor



#25
Karkarov

Karkarov

    Arch-Mage

  • Members
  • 2557 posts
  • PSN Portable ID:Karkarov
  • Xbox Gamertag:Karkarov
  • Steam:Karkarov
  • Pillars of Eternity Silver Backer
  • Kickstarter Backer
  • Deadfire Watcher
  • Fig Backer
  • Black Isle Bastard!

Just a bump to make sure this stays on main page.  A tool like this is critical for good beta testing as it allows us to get away with more than the normal game would allow and experiment a bit more.  Maybe it will even let me give BB Fighter that Fighter skill he is somehow missing that he should have got at level 3 ;p.


Edited by Karkarov, 07 September 2014 - 05:49 AM.

  • Sensuki likes this

#26
Lord Vicious

Lord Vicious

    (2) Evoker

  • Members
  • 65 posts

After editing party member names and gold, the saved game does not load.



#27
Bester

Bester

    (7) Enchanter

  • Members
  • 800 posts
  • Pillars of Eternity Backer
  • Kickstarter Backer

After editing party member names and gold, the saved game does not load.

 

Could you send me the save file that you're editing pls (the original file and the edited version of it)? Just upload it on dropbox or something.

 

The saves are located in C:\Users\<username>\AppData\LocalLow\Obsidian Entertainment\Pillars of Eternity\Saves


Edited by Bester, 07 September 2014 - 09:43 AM.


#28
Lord Vicious

Lord Vicious

    (2) Evoker

  • Members
  • 65 posts

Thanks for the prompt reply, link sent.



#29
Lord Vicious

Lord Vicious

    (2) Evoker

  • Members
  • 65 posts

Are you planning to update your editor to v.301? Because I'm sure a lot of us would appreciate the continuation of this great project!


  • Karkarov likes this

#30
Bester

Bester

    (7) Enchanter

  • Members
  • 800 posts
  • Pillars of Eternity Backer
  • Kickstarter Backer

I don't think updating the save files location is the proper "continuation" of the project.

 

I need to rewrite the whole thing from scratch, because I'd like to deserialize the save files completely and make it possible to edit literally everything stored in there, which is going to require a lot of work (have a look at a verbose version of a save file). And since they recently said they're planning on fixing some issues related to save game mechanism, I'd rather wait for a final or almost final version of it.



#31
Lord Vicious

Lord Vicious

    (2) Evoker

  • Members
  • 65 posts

I don't think updating the save files location is the proper "continuation" of the project.

 

I need to rewrite the whole thing from scratch, because I'd like to deserialize the save files completely and make it possible to edit literally everything stored in there, which is going to require a lot of work (have a look at a verbose version of a save file). And since they recently said they're planning on fixing some issues related to save game mechanism, I'd rather wait for a final or almost final version of it.

Thanks for the response!

 

Updating save loc is not that big a deal (we can manually copy saves to and from the old location), but updating the core functionality (e.g. editing of gold, xp, attributes) would be very welcome. People like me who to experiment with custom parties would higly appreciate that, I am sure.

 

And after the postponement, it's a long way till we see a final version. Might as well amuse ourselves with the beta in the meantime, right?

 

But it's your call, of course.  


  • Lord Wafflebum likes this

#32
Gfted1

Gfted1

    Forum Moderator

  • Moderators
  • 5168 posts
  • Location:Chicago, IL
  • Pillars of Eternity Backer
  • Kickstarter Backer

Just noticed this thread and wanted to say great work! Anything that allows me to edit my camping supplies has my full support (and gold, why did I never consider gold before now? I am SO going to upgrade the hell out of my stronghold.)



#33
LunaticPandora

LunaticPandora

    (1) Prestidigitator

  • Members
  • 9 posts

Hey, long time lurker but first time poster.

 

So having seen this post I decided that I would try to port this project over to visual c# (especially as bester had voiced his disdain at having made it in unity), it's taken a couple of days but i'm at a point now where I think I have a relatively functional editor.

 

*** At this point I have to mention that a good chunk of the code was taken from Besters project (due to him saying it was open source), soa huge amount of credit must be given to him for providing the basic code and functions to interrogate and update the save files. At no point am I claiming that all of the code in this project is my own, although a fair chunk of it is. ***

 

The only problem is that I completely forgot about the backer cutoff date and never purchased to access to the beta. Currently i'm testing the editor with savegames that people have uploaded to the forums but that presents a lot of issues in that I have no way to compare what I see in the editor to what the actual values are in the game.

 

For things like basic stat editing i'm pretty sure it should work ok, but for more complicated things like adding or removing feats,spells, abilities and items I have no way of verifying that what I am making is going to work.

 

***None of this is tested on any beta build***

 

Below is a list of what the editor can do currently

 

- Edit attributes, skills, saves, health, stamina, race, subrace, deity, background etc.

- Edit defense bonuses  - . disease, poison, etc.

- Edit gold and camping supplies

- View current abilities, spells, talents and inventory

- Alter the quantity of items in the inventory

 

I have a bit more work to do before the program will be truly standalone and at a point where I am happy with it so I won't upload it yet (probably about another 2 days work), however I will ask that if any of the higher level backers have any spare beta keys they would be willing to donate (or trade) to me they would be helping to improve the editor far past what I could ever do without beta access. If this is the case then please PM me. Please see below for some screenshots of the work in progress:

 

Cfmshlm.png

jPMQr3e.png

C3bOQMM.png

 

Lastly a big thanks to the developers, even with the current discontent about some aspects of the game, the fact that they are even trying to recreate the IE feel and style of games has earnt them a lot of respect from me.


  • Sensuki, Karkarov, Bester and 3 others like this

#34
Lord Vicious

Lord Vicious

    (2) Evoker

  • Members
  • 65 posts

That is awesome! Please upload ASAP!

 

Also, can it get around the annoying level cap? I would really like to see the higher level abilities and finally give my wizard a decent selection of spells rather than 1 per level.



#35
LunaticPandora

LunaticPandora

    (1) Prestidigitator

  • Members
  • 9 posts
Im not sure about the level cap, as I dont have access to the beta I cant interrogate the game files for stuff like ability files, currently the editor scours any save file it loads for useful information and saves it for later, as such the only way to access the higher level abilities would be to load a game with a character who had them already, so catch 22 really.

With regards to uploading, im almost at the point where im able to add and remove spells, abilities and talents, as such I would like to get that done and dusted beforehand. Since im checking my work in a hex editor rather than in engine it takes a little longer. I will definitely upload this in the near future, I just want it to have a good chance of working properly first time.

#36
Bester

Bester

    (7) Enchanter

  • Members
  • 800 posts
  • Pillars of Eternity Backer
  • Kickstarter Backer

Hey, great job, I'm really happy someone decided to take over.

 

By the way, did you know that it's possible to deserialize the save files entirely instead of parsing for hex values?

 

Since they didn't use any code obfuscator, the entire game's code can be easily viewed, and so you can see that they serialize objects with sharpSerializer. So for example in order to deserialize the saveinfo.xml, you can just do use this:

 

using System;
using System.Collections;
using System.IO;
using Polenter.Serialization;
 
public class SaveGameInfo
{
  //public const int CurrentSaveVersion = 0;
  //public const int MinimumCompatibleSaveVersion = 0;
  public string PlayerName {get; set;}
  public string MapName {get; set;}
  public string SceneTitle {get; set;}
  public int Chapter {get; set;}
  public int PlaytimeSeconds {get; set;}
  public bool TrialOfIron {get; set;}
  public DateTime RealTimestamp {get; set;}
  public Guid SessionID {get; set;}
  public string FileName {get; set;}
  public int SaveVersion {get; set;}
}
public class main {
  public static string tempPath = "C:\\somepath"; // some path where you unzip the save files...
  SaveGameInfo sgi;
 
  public void infoDeserialize()
  {
    SharpSerializer sharpSerializer = new SharpSerializer(true);
    sgi = sharpSerializer.Deserialize(Path.Combine(tempPath,"saveinfo.xml")) as SaveGameInfo;
    if (sgi != null) Debug.Log("All good");
    else Debug.Log("Xml file wasn't found");

    // and now we have access to everything...
    Debug.Log("PlayerName: "+sgi.PlayerName);
    Debug.Log("MapName: "+sgi.MapName);
    Debug.Log("SceneTitle: "+sgi.SceneTitle);
    Debug.Log("Chapter: "+sgi.Chapter);
    Debug.Log("PlaytimeSeconds: "+sgi.PlaytimeSeconds);
    Debug.Log("TrialOfIron: "+sgi.TrialOfIron);
    Debug.Log("RealTimestamp: "+sgi.RealTimestamp);
    Debug.Log("SessionID: "+sgi.SessionID);
    Debug.Log("FileName: "+sgi.FileName);
    Debug.Log("SaveVersion: "+sgi.SaveVersion);  
}

 

Easy access to variables. And to save them:

 

public void infoReserialize()
  {
    SharpSerializer sharpSerializer = new SharpSerializer(true);
    sharpSerializer.Serialize(sgi, Path.Combine(tempPath, "copy.xml"));
  }
}

 

And by the way, if you're going to make your editor cross platform, here's where they keep savegame files for different OSes:

 

Spoiler

 

Hope it helps.



#37
LunaticPandora

LunaticPandora

    (1) Prestidigitator

  • Members
  • 9 posts

Bester, you are a legend! I didn't know I could do that, that is very very useful, I will make sure to use it to edit stuff properly!



#38
Karkarov

Karkarov

    Arch-Mage

  • Members
  • 2557 posts
  • PSN Portable ID:Karkarov
  • Xbox Gamertag:Karkarov
  • Steam:Karkarov
  • Pillars of Eternity Silver Backer
  • Kickstarter Backer
  • Deadfire Watcher
  • Fig Backer
  • Black Isle Bastard!

Even though I agree with Besters reasons for stopping work on it, at least for now, it is nice to see Pandora has made some strides too.  Keep up the great work guys, a solid, bug free (well as bug free as possible), and functional character and save game editor will be a huge boon at launch.



#39
LunaticPandora

LunaticPandora

    (1) Prestidigitator

  • Members
  • 9 posts

If someone could send me the Assembly-Csharp.dll file from the backer beta that would be extremely helpful with making a fully deserialized save editor. I'm probably going to push back releasing the editor until I get it working properly now.



#40
Sensuki

Sensuki

    Subway Apathist of the Obsidian Order

  • Members
  • 9963 posts
  • Location:Australia
  • Steam:STEAM_0:1:1229809
  • Pillars of Eternity Silver Backer
  • Kickstarter Backer
I already PM'ed you saying I could provide it. I'll upload it for you.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users