Making a save editor

Discussion in '3DS - ROM Hacking, Translations and Utilities' started by Dr_Benway, Jun 18, 2017.

  1. Dr_Benway
    OP

    Dr_Benway Newbie

    Newcomer
    4
    0
    Jun 18, 2017
    Italy
    Hello, I'm curious about how difficult it would be to achieve.
    Thinking about something like a Fire Emblem game, what would be the steps?

    I can imagine having to make alot of hex comparing between saves to find out the position of each value of interest, unless that's already been done...

    In the end I'd love to do something like this as a small project. Could someone give me any pointers? :)
     
  2. Scarlet

    Scarlet Rydeen

    Member
    GBAtemp Patron
    Scarlet is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    1,689
    1,639
    Jan 7, 2015
    United Kingdom
    Middleish North-Right
    I mean the actual making of a save editor is about as easy as it gets. You're just making a hex editor that'll edit provided offsets. Your challenge is like you said, finding the offsets you want to edit. The 3DS Fire Emblem games already have fairly good save editors as far as I know, so maybe give something else a shot. Be aware some games have check values though. This means when you edit something in the save file without properly updating it, the save will show as corrupt. If you need a hand with basics, hit me up. I'm not sure how useful I'll be outside of that though o/
     
  3. Dr_Benway
    OP

    Dr_Benway Newbie

    Newcomer
    4
    0
    Jun 18, 2017
    Italy
    I'm afraid I can't PM you, since I need a certain amount of posts before doing that... would it be okay if I listed my main questions here for you?
     
  4. Scarlet

    Scarlet Rydeen

    Member
    GBAtemp Patron
    Scarlet is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    1,689
    1,639
    Jan 7, 2015
    United Kingdom
    Middleish North-Right
    Sure, no worries.
     
  5. Dr_Benway
    OP

    Dr_Benway Newbie

    Newcomer
    4
    0
    Jun 18, 2017
    Italy
    Here it goes:

    1) I dumped via JKSV two saves from FE:Awakening, one before and one after buying something at a shop, then compared them in a hex editor.
    The were only two areas that stayed the same! One at the beginning (I'll assume it's the one that holds the avatar's name, the location and maybe other general info)
    and one near the end. All the other values were different. Perhaps shifted?

    I know that a simple action like that will change many other things, since the map has skirmishes and those change every time the game is loaded but still,
    I expected a big part of the file to be constant, at least the one regarding the units' data... do you have some insight on this works?


    Well that's the main question, I guess.
    I've found some general info about hex editing (never done that before) online but as you said, this isn't the real challenge in coding an editor.
    Haven't started messing with it yet though... right now I'm only tinkering with the GUI.

    Thanks for your help :)
     
  6. KunoichiZ

    KunoichiZ GBAtemp Guru

    Member
    7,522
    2,920
    Mar 16, 2012
    United States
    You do know that there is a Fire Emblem Awakening save editor already right? It's by Olmectron, and a web-based editor is being made by lea, iirc. There's no sense in having two PC-based editors (not counting the web-version as PC based) unless you plan to have more features than Olmectron's editor.

    The only 3DS FE game with no save editor is Echoes. If you want to make a save editor for a FE game, make it for Echoes.
     
  7. Soaprman

    Soaprman GBAtemp Regular

    Member
    164
    138
    Apr 9, 2016
    United States
    Georgia, USA
    Sup, FEFTwiddler (Fire Emblem Fates save editor) guy here.

    As has basically been said already, a save editor is just a specialized hex editor. Basically, it's the same process as hex editing a save manually (figure out where values go, figure out which values to use), but you have to program in all the "eyeballing it" you might do on your own. You'll have to learn a lot more than just offsets sometimes, as not all saves stay the same size or shape as stuff happens ingame.

    If you're just looking for a fun project, pick whatever game you want, even if it's been done already. The most important thing is that you enjoy the process of making it. Making something that's actually useful to other people is just a nice bonus. :)

    When you pick a game, be prepared for the possibility of being burned out on the game or even the entire series it's from. It's kinda hard to wanna play Fates or even any Fire Emblem games at all after spending so much time with Fates.

    Strongly consider going open-source (e.g. on GitHub) if you're making something that doesn't exist already. This allows your code to serve as open documentation of the save's structure, and it allows other developers to implement stuff you don't care to work on yourself or to carry the torch if you decide to abandon the project.

    Also, if you make a project and start a thread for it, be prepared to ignore a lot of posts from people who don't use the search feature or read your posts. ;)
     
    Last edited by Soaprman, Jun 20, 2017
    Scarlet likes this.