Bravely Default Save Editor

Discussion in '3DS - ROM Hacking, Translations and Utilities' started by ukee, Nov 24, 2015.

  1. DaddyCandy14

    DaddyCandy14 Newbie

    Jan 21, 2017
    For me it does not work, i'm on a game .cia downloaded on a Homebrew 3DS, I extract the save, copy on desktop, edit it, and copy on the 3ds, import the sav, and it's not edited.. Why?
  2. isengoethe

    isengoethe Newbie

    Feb 2, 2017
    Item offsets
    (Item amt in game) / 4 = q (quotient) & r/s/t (remainder); q in hex; r/s/t:0=0/1/2, 1=4/5/6, 2=8/9/A, 3=C/D/E; yy - preceding item's last byte
    Items are saved in '3' bytes. First byte and first digit of preceding items last byte determines what the item is. Second byte and last byte determines item's amount.
    The first digit of the Second byte is offset by 4 when the items amount is increased by one. The third byte increases by 01 per multiple of 4.
    Ex. Last four bytes in item block is 03 88 D3 18.
    If we look at Items, we'll find that it is a Potion ( 0-18 in First byte and 88 in the Second byte).
    Amount is 99 (variable is s. Possible values are 5 for 1, 9 for 2, D for 3, and 1 for 0. Since it is 5, that means it is a 3.
    Third byte is 18. Convert that to decimal we get 24. Then multiply that by 4 we get 96. Lastly we add that to the second byte's value. 96 + 3 = 99)​
    Note: Last byte of item block will always by any value between 00 and 18.

    Now we want to add 86 Broadswords. (It's better if you don't actually have the item yet. Otherwise you'll have two broadsword entries in your inventory.)
    Code is +00 E2 r4 qq.
    (Item amount) /4 = q (quotient) & r/s/t (remainder); q in hex; r/s/t: 0=0/1/2, 1=4/5/6, 2=8/9/A, 3=C/D/E; (range) = preceding item's last byte
    86 / 4 = 21 remainder 2. 21 to hex is 15. Variable is r so to get 2 we plug in B.
    Lets get back to our last four bytes 03 88 D3 18. We'll offset 18 by +00 we get 18.
    Adding the broadswords, 00 88 D3 18 becomes 00 88 D3 18 E2 C4 15.

    Another example. You want to add 99 Night Emperors. Code is +E0 E3 r4 qq. 99 / 4 = 24 remainder 3. 24 to hex is 18. Variable is r so to get 3 we plug in C.
    Our last four bytes is 18 E2 C4 15. (Remember we added the broadswords). We'll offset 15 by +E0 we get F5.
    Adding the Night Emperors, 18 E2 C4 15 becomes 18 E2 C4 F5 E3 C4 18.

    Outfits in Vests and Armor
    Note: Asterisks don't give the job.
    Key Items
    Last edited by isengoethe, Feb 3, 2017
    Arikaido likes this.
  3. gusty

    gusty Advanced Member

    Oct 31, 2016
    is there a way to add in editor all the bun items ?
  4. JackEng

    JackEng Newbie

    Sep 9, 2012
    i tried twice, using JKSM to export the save file and just adding max money, game run fine, but spefically when we try to set skill point it crash, ability menu seem alright as i can still change secondary job skill and look at other stuff..

    but as soon as i touches skill point it doesn't show 0 and instantly crash the game...

    i end up restoring my game after awhile because i can't assign skill.. :(
  5. Bgreymane

    Bgreymane Member

    May 2, 2017
    United States
    Hello. So I tried this save editor, and to my disappointment, there is a glitch in the max money edit. the support ability option reduces the available support points by 1, so if you have 0 available support points, the game crashes on that screen, like JackEng before me commented. on the other hand, if you deselect all support abilities and free up all slots like I did, in my case I had 2 slots available, it decreased the amount to 1. Can you fix this? or can someone give me an idea where else I can use the money edit that works? that edit is the only one I need, after all
  6. c4388354

    c4388354 GBAtemp Regular

    Jan 23, 2015
    United States
    Money edit without side-effects/crashes:

    Goto offset 0xBEEA and copy the four bytes there, for me it was: 00 19 00 40

    now convert that number to binary and name it - SAVE_DATA
    SAVE_DATA: [0]__[0]__[1]__[9]__[0]__[0]__[4]__[0]_
    SAVE_DATA: 0000 0000 0001 1001 0000 0000 0100 0000
    get how much pg you want and convert it to hex, then convert that to binary
    remember to pad WANTED_PG with 00's to 3 bytes / 24 bits (start padding from the left) if needed.

    9999999 pg is 98 96 7F = 1001 1000 1001 0110 0111 1111
    __10000 pg is 00 27 10 = 0000 0000 0010 0111 0001 0000
    Number each bit in WANTED_PG from A to X like so
    9999999 PG = 1001 1000 1001 0110 0111 1111
    Rearrange the pg binary number as follows, call this rearranged number WANTED_PG.
    WANTED_PG: 11-- ---- 1001 1111 0010 0101 --10 0110
    Now put the SAVE_DATA number that was in your save at the top and the WANTED_PG number on the next line.
    if there is an '-' in the WANTED_PG BIT then use the BIT from the SAVEDATA else use the bit from the WANTED_PG.
    (e.g W = use WANTED_PG bit and S = use SAVE_DATA bit), Call the new number NEW__DATA.

    SAVE_DATA: 0000 0000 0001 1001 0000 0000 0100 0000
    WANTED_PG: 11-- ---- 1001 1111 0010 0101 --10 0110
    NEW__DATA: 1100 0000 1001 1111 0010 0101 0110 0110
    Convert the NEW__DATA from binary to hex:
    NEW_DATA: 1100 0000 1001 1111 0010 0101 0110 0110
    NEW_DATA: [C]__[0]__[9]__[F]__[2]__[5]__[6]__[6]_
    go to offset 0xBEEA in your save and overwrite the four bytes with the NEW_DATA (for me: C0 9F 25 66) and save,
    import the new edited save into your game you should have the amount of 'pg' you wanted without any side effects.


    First Byte (0xBEEA):
    bit 0 = pg * 2
    bit 1 = pg * 1
    bit 2 = unknown - leave as is
    bit 3 = unknown - leave as is
    bit 4 = unknown - leave as is
    bit 5 = unknown - leave as is
    bit 6 = unknown - leave as is
    bit 7 = unknown - leave as is
    Second Byte (0xBEEB):
    bit 0 = pg * 512
    bit 1 = pg * 256
    bit 2 = pg * 128
    bit 3 = pg * 64
    bit 4 = pg * 32
    bit 5 = pg * 16
    bit 6 = pg * 8
    bit 7 = pg * 4
    Third Byte (0xBEEC):
    bit 0 = pg * 131072
    bit 1 = pg * 65536
    bit 2 = pg * 32768
    bit 3 = pg * 16384
    bit 4 = pg * 8192
    bit 5 = pg * 4096
    bit 6 = pg * 2048
    bit 7 = pg * 1024
    Fourth Byte (0xBEED):
    bit 0 = unknown - leave as is
    bit 1 = unknown - leave as is
    bit 2 = pg * 8388608
    bit 3 = pg * 4194304
    bit 4 = pg * 2097152
    bit 5 = pg * 1048576
    bit 6 = pg * 524288
    bit 7 = pg * 262144
    bit 0 is 0x80, bit 1 is 0x40, bit 2 is 0x20, bit 3 is 0x10
    bit 4 is 0x08, bit 5 is 0x04, bit 6 is 0x02, bit 7 is 0x01
    Last edited by c4388354, May 6, 2017
  7. Darkzx5

    Darkzx5 Newbie

    May 13, 2017
    Hey tried the unlock all magic option. It seems fine at first but it removes curada from your spellbook and if go to the store to try and purchase it again, it will not be relearned. The game takes your money but you dont get anything for it.
    usa version. Can this be fixed in any way? I originally wanted this for the -ja spell genomes(it works for these too right?).
    Last edited by Darkzx5, May 13, 2017
  8. Darkzx5

    Darkzx5 Newbie

    May 13, 2017
    ...nvm. i missed the part where it doesnt work on genomes
  9. ayumi13

    ayumi13 Newbie

    May 19, 2017
    I checked everything except the experimental and i'm in the desert yet when i open my menu my game crashes
  10. fixotherm

    fixotherm Newbie

    Nov 3, 2012
    I think I might have found out what's causing the crash when using the Max PG option. I tried messing around with the offset 0xBEED and found out that bits 0 and 1 of 0xBEED corresponds to how many support ability slots you have unlocked.

    I found this out when I tried using the value you found (C0 9F 25 66) to change the pg in my game. But this value corresponds to a support ability slot of only 1. Thus breaking the game since I have already three slots unlocked. When I changed the bits 0 and 1 of 0xBEED into (11) to correspond to 3, it stopped crashing. When I changed it into 2, it reduced the number of slots I had.

    I'm not really sure how it works for the 4th and 5th slot. It's better to just follow what c4388354 did, taking note of how many slots you have so you don't crash your game.

    Just a heads up for others. If you want to get max money, check how many support ability slots you have unlocked so it doesn't crash the game.
    Here. I tried finding the values for save files with up to 3 support ability slots,
    1 slot: C0 9F 25 66
    2 slots: C0 9F 25 A6
    3 slots: C0 9F 25 E6
    Please take note that these values will give 9999999 pg.

    Btw, thanks for the info c4388354 :)
  11. Inperial

    Inperial Newbie

    Jun 14, 2017

    Could you please tell me where you edit your game or what file is the one that I have to edit to be able to do that myself and so fix the problem that damages the game, use the save editor and then I move it from the slots of the skills but I do not know Well where should I edit or what file is if the game or is another, would appreciate your response, x3 if you can with an image would also be great
  12. fixotherm

    fixotherm Newbie

    Nov 3, 2012
    Hey! You have to edit GAME#.sav ('#' is 0 if you're using the first slot, 1 if second slot, etc.) starting from offset 0xBEEA, just like what c4388354 said. You can press ctrl+G and then type BEEA. The next 4 bytes are the values that you need to change.
    Right here, it says FF FF FF 7F. This I think is what the save editor changes the values to, which crashes the game for me. I just had to change it to whatever I did earlier depending on the slots I have.

    As for the program I used to edit the save files, it's HxD.

    Again, if you have 4/5 support ability slots, try following what c4388354 did.


    Attached Files:

  13. Paraclox

    Paraclox Newbie

    Mar 16, 2017
    United States
    @ukee heya! I've used this save editor to great success! however I noticed that the Event Viewer still isn't completed, and likely the Encyclopedia too. would it be possible still that you're working on this? does anyone have a save file for at least these two things?
  14. Borjitasstoi

    Borjitasstoi GBAtemp Regular

    Dec 29, 2016
    Crash #1 During conversation with ringnabel during inn burns
    Crash #2 Pressing start ringabel in the party
    how i solve that dont inject max levels in ringaben and edea and only in tiz and agnes actually game works well experimental stuff its better dont touch anything because still fails the unit number of items are random in much cases
    thats all my testing this editor needs help
  15. goodiesohhi

    goodiesohhi Member

    Mar 16, 2017
    Max money breaks my abilities tab... Using version 0.7a Any ideas?