[Request] shin megami tensei 4 Save editor?

Discussion in '3DS - ROM Hacking, Translations and Utilities' started by Something whatever, Sep 3, 2015.

  1. Something whatever
    OP

    Something whatever Gazer of the East

    Member
    248
    67
    Sep 1, 2015
    Is there a Save editor for it? Sorry If I posted this in the wrong place
     
    Ericzander likes this.


  2. Ericzander

    Ericzander I used hax to get yellow name

    pip Reporter
    1,486
    1,400
    Feb 28, 2014
    United States
    Grand Line
    Funny, I've been looking all day for one also. Haven't found one. It's a really fun game, but that 1/256 chance to obtain many of my favorite demons is insane. A tool that lets you inject demons into the game would be so awesome. Hopefully someone will take the initiative to do it!

    Edit: So if someone knows how to either increase the chances of rare demons appearing or how to just inject demons in that would be the best. Sorta like Pkhex or Pokegen. I don't know the technical aspects of it, but I don't imagine it'd be hard to fix the RNG.
     
    Something whatever likes this.
  3. Something whatever
    OP

    Something whatever Gazer of the East

    Member
    248
    67
    Sep 1, 2015
    I placed threw the game 2 times already and have yet found the demons I really want lol. I wanted to do a cheat playthrough. I'm shocked none of the games has a Pokegen like program to edit the saves. Hopefully someone might make one now? idk
     
  4. Nyunyumilk

    Nyunyumilk Member

    Newcomer
    17
    8
    Feb 2, 2008
    Not an editor, but thanks to Save Manager for ironhax I grabbed my SMTIV saves (sdds4game1.sav) and I'm currently editing it. Demon stats are easy and all listed together. First level, then HP, MP, ST, DX, MA, AG, LU, the stats repeated, current HP and MP, then a space of 3 bytes, then something I don't know, then another space, then all 8 skill slots. Comparing them I've come up with the following hex IDs for the skills
    Hex values (WIP)
    I'm still trying to figure out where the inventory is though
     
    Something whatever likes this.
  5. Something whatever
    OP

    Something whatever Gazer of the East

    Member
    248
    67
    Sep 1, 2015
    Wha sounds interesting :O
     
  6. Ericzander

    Ericzander I used hax to get yellow name

    pip Reporter
    1,486
    1,400
    Feb 28, 2014
    United States
    Grand Line
    So I'm just spitballing here... When hex editing, do you think it's possible to replace whatever string that defines what demon you're editing with another demon's string?

    So let's say you have a Ghoul. Wouldn't there be some code that shows you it's a ghoul you're editing? What if you replace that code with the Red Rider's code? Would that replace the demon? I have absolutely no clue.
     
  7. Nyunyumilk

    Nyunyumilk Member

    Newcomer
    17
    8
    Feb 2, 2008
    Absolutely, I'm pretty sure one of the offsets in a demon's code is their hex ID for what actual demon they are. However, since you can't have duplicate demons it's kinda hard to tell which one it is, so I haven't tried yet.

    Incense (Starting with Strength) offset for me is starting at 0x00009a20, grimoires at 0x000099f8
    Update on IDs

    hex IDs WIP 2
     
  8. Ericzander

    Ericzander I used hax to get yellow name

    pip Reporter
    1,486
    1,400
    Feb 28, 2014
    United States
    Grand Line
    Would you be able to tell which string it is if you catch a demon, review the code (copy+paste it somewhere), release the demon, then re-obtain it, and compare the code? Though I guess even if that shows you what variables to edit it won't let you know what to edit it to in order to get a rare demon you don't have.

    Oh bother. 100%ing this game's gonna be a hassle.
     
    Something whatever likes this.
  9. Nyunyumilk

    Nyunyumilk Member

    Newcomer
    17
    8
    Feb 2, 2008
    Maybe if I recapture the same demon with completely different stats and skills.

    I've gotten somewhere. I changed one byte and turned a demon into a glitched Isabeau. The race didn't change so I'll have to see if that's stored separately.
     
  10. Ericzander

    Ericzander I used hax to get yellow name

    pip Reporter
    1,486
    1,400
    Feb 28, 2014
    United States
    Grand Line
    Progress! So were you able to use the demon how you wanted? You're saying that it wasn't an Isabeau before but after changing a byte it was? Did you just randomly change it or have some indication of what you were doing? Maybe there's a byte for what defines which demon it is and then another one that defines race. Again, I have no idea what I'm talking about.

    At any rate, do you think it would be worth your time after some messing around and figuring things out to make a tool like Pkhex to inject demons and such? Or if that's too much, just a guide on how to change demons to other demons. I would be tempted to write an article about it and push it to the front page.
     
  11. Nyunyumilk

    Nyunyumilk Member

    Newcomer
    17
    8
    Feb 2, 2008
    The two bytes I changed were next to the single byte that controlled the demon's level. I have no idea how to write a program (my hacking knowledge comes from following hacking tutorials since the days of cwcheat and PSP and I learn quickly) so don't expect me to make a tool. I'll make a reference image for how to edit demons with a hex editor if I can.

    More progress. I have both Nebiros and Ose in my party who should be side by side on the list of demons (being both Fallen and are next to each other in level tiers), and noticed this value was different by one between them (Nebiros is 420 and Ose is 421). I've found that this value controls the demon species entirely, changing it to 422 turns the demon into Dantalion (one tier under Ose). However, I can't seem to get this new demon to show up in the Book of Shadows (I hadn't obtained a Dantalion up until now). I can register and overwrite the entry, but the entry itself won't appear and I can't resummon it, so if you're looking to use this to complete your Book of Shadows then you might be out of luck. Also there seem to be a lot of dummy entries, so finding the right ID for the right demon may be difficult.
     
    Last edited by Nyunyumilk, Sep 4, 2015
    Something whatever likes this.
  12. Ericzander

    Ericzander I used hax to get yellow name

    pip Reporter
    1,486
    1,400
    Feb 28, 2014
    United States
    Grand Line
    That would also be very much appreciated.

    Hm... That's strange that it won't appear. Could it be because you didn't complete the prereq to have him appear? I googled it and it seems that he appears in a NG+ challenge quest. I wonder if you completed that quest beforehand if it would show up in the book. Could you try it with a demon that doesn't have any prereqs?
     
  13. Nyunyumilk

    Nyunyumilk Member

    Newcomer
    17
    8
    Feb 2, 2008
    Found the values for Samael, Murmur, Decarabia and Gemori. Registered all of them, none of them show up in the Book of Shadows still. Not even after using them in battle a few times. Decarabia is within my fusion level limit too. Until further notice, you can't use this to fill out the compendium.

    I did find the ID for Victory Cry though. Can't seem to find desperate hit, it doesn't look like it's grouped with physical attacks or almighty attacks.
    Hex ID WIP
     
  14. Ericzander

    Ericzander I used hax to get yellow name

    pip Reporter
    1,486
    1,400
    Feb 28, 2014
    United States
    Grand Line
    Oh man, that's rough. Okay, so you say Decarabia is in your fusion level. So the one you fused has these very same stats:
    Decarabia Stats

    If anything is off about it (level, moves, race, HP, MP, anything) that may be the reason it doesn't show up. But if everything is exactly the same then I'm running out of ideas.

    Edit: Looks like he evolves from a Kaiwan. Maybe it's because he's not in the book either. Looks like this demon isn't a fusion either.
     
  15. Nyunyumilk

    Nyunyumilk Member

    Newcomer
    17
    8
    Feb 2, 2008
    Perhaps, and Gemori and Murmur are boss demons. However, Samael has no restrictions (the wiki specifically states it can be recruited in the wild or fused immediately). Also, when I register them they're at the level the original demon was before editing (so like mid 30's). What I think is that there's a "flag" that is turned on to make demons viewable in the compendium, and that only activates when recruiting/fusing them for the first time.

    Now I know what you're thinking, "why don't you try editing the compendium entries?" I can't find them. Searching the HP/MP values doesn't bring up anything.

    I'm temporarily giving up on editing the demon ID, it's actually kinda hard to find the correct ID since there seem to be a lot of dummy addresses. So I'll write up a little tutorial thing now.

    ---

    As always, this is your best friend: http://www.mathsisfun.com/binary-decimal-hexadecimal-converter.html
    I use Hex Workshop for this

    [​IMG]

    This entry is for a Senri with skills I edited for testing. You can generally find demons by searching their max HP, or a combination of max HP and max MP. This Senri has 181 HP and 178 MP. 181 in hex is B5, 171 is B2. Because of the byte order, you would actually be searching for "B5 00" (other example, 262 in hex is 0106, but it will show up in the editor as "06 01"). To search both as hex values you search "B5 00 B2 00" (without spaces). Level goes up to 99. Stats and max HP/MP goes up to 999. You don't really need to edit XP when you can edit the level and use grimoires. Here are the hex IDs for demon skills I've found so far:

    Demon Skills IDs

    You can even edit your own skills and give yourself passives like null force.

    Inventory items are found in a different place, listed only in the quantities. So there will be a lot of 00's for items you have none of. I can't really give you much help for that since they're not in the order they appear in the inventory. I can tell you that the St incense offset is at 00009a20, and the incenses are listed in order (so for maxed out incenses you would put "63 00 63 00 63 00 63 00 63 00"). Heavy grimoire is at 000099f8 (Note: I'm using an EU version of the game, the offsets might be different for US).

    I'll have to stop here for tonight. Anyone feel free to try and find the missing values for everything
     
    Last edited by Nyunyumilk, Sep 4, 2015
    emuashui, Chrestomanci and Ericzander like this.
  16. Something whatever
    OP

    Something whatever Gazer of the East

    Member
    248
    67
    Sep 1, 2015
    @_@ I'm very new to this
     
  17. Ericzander

    Ericzander I used hax to get yellow name

    pip Reporter
    1,486
    1,400
    Feb 28, 2014
    United States
    Grand Line
    Thanks for your help @Nyunyumilk. Hopefully you can fix the compendium issue whenever you give it another shot. Regardless, this information should be helpful to a lot of people.

    A few more quick thoughts. Your Decarabia was in the mid 30s when edited. But the screenshot I had had it at level 48 as the fusion level. Maybe the game noticed it was illegit because you can't have a Decarabia below level 48. And as for Samuel, could it be that it didn't register in the compendium because your character isn't level 90 or so to be able to grab him? It may just be that since the stats are off, it doesn't trigger correctly. If not, maybe someone can find out how to trigger the flag that allows demons to show up in the journal. Or maybe even just hack a completed one in.
     
  18. waynelimt

    waynelimt Member

    Newcomer
    11
    4
    Dec 6, 2016
    Senegal
    Rion45 and emuashui like this.
  19. $akif X9

    $akif X9 Member

    Newcomer
    43
    6
    Aug 27, 2013
  20. waynelimt

    waynelimt Member

    Newcomer
    11
    4
    Dec 6, 2016
    Senegal
    read the instructions at the github readme...