Sonic CD 2011 (iOS) Save Game Hex Editing Guide

Discussion in 'Discussion and Q&A Archive' started by KingofHarts, Oct 9, 2012.

Thread Status:
Not open for further replies.
  1. KingofHarts

    KingofHarts Well-Known Member Member

    Joined:
    Sep 30, 2012
    Messages:
    53
    Location:
    Chi-Town
    This thread is also on Sonic Retro, I basically just copied this over. I am new here and thought I'd share a little something. Hope this is in the right place... I don't feel like fucking up my first ever SSRG post.


    So... Again, I preface. I don't believe this is complete, but it's not far from finished. I don't know if anything had been done with the iOS version of the remake before I did this, but I saw NOTHING reported/documented... so I introduced it for you guys to try out. To do this... you will need a couple things.


    iPod with Sonic CD app, and a USB. (Well, of course)


    A program that can go into your iPod. I used iFunBox, but if you know of another that will do the trick, go ahead.


    [​IMG]


    MAKE A BACKUP OF EVERYTHING BEFORE TOUCHING ANYTHING. IF YOU DON'T, YOU'RE AN IDIOT, AND NO ONE WILL FEEL SORRY FOR YOU.


    Now, I have opened up Sonic CD in iFunBox, and it looks something like the picture above. You have some folders, and the app itself... which you'll find as also really just another type of folder. That contains many things, such as pics of the icon, and starting screen backdrop. Also has mp4's of all of the videos in the game. I have not tried replacing any of them as of yet... but I'll get back to you after I do.


    But enough of that. I'm here to talk about how to hack into your saved data and mess with shit. Wanna start on Palmtree Panic with all 7 Time Stones? Wanna change your Sonic file save to a Tails' file save? Wanna start a zone in the past or future? Wanna mess with your Time Attack records? I'm here to help! Let's begin. Go into the Documents folder, and make note of the SGame.bin file. Make a copy of this, unless you don't care about losing your REAL game/records.


    Now keep in mind, when editing, you will need to do this outside of FunBox, as in... in a folder in your computer. Editing it internally will do nothing, as the game will overwrite it back to the way it was (or it simply doesn't save... I dunno which.) So I just edited a copy in my backup folder... I suggest you do the same. After making changes, go to the Main Menu in Sonic CD (You can do the editing and deletion while the game is running), and replace the existing SGame.bin with the new one. It MUST be named SGame.bin! After that, you can immediately go from the Main Menu into your Game/Time Attack menu and see the changes right away.


    Now, with that out of the way... let's fuck things up a bit.


    NOTE: I have not figured out ALL of the offsets, this is only about an hour's work... I will come back with more later, so please bear with me, or figure it out on your own.


    MAIN GAME DATA


    Look at offsets 00-19. These offsets are the data for Game Save 1. 20-39 are for #2. 40-59 are for #3, and 60-79 are for 4. They all contain the same information, so I will only go over the offsets for editing game #1. You can use your logic and math skills to figure out the offsets for #2-4 based on what I will tell you.


    Offset 00 - Character Selected (00-Sonic, 01-Tails)


    Offset 04 - LIVES (Hex)


    Offsets 08-0A - SCORE. (These 3 bytes are written in reverse. Ex. your SCORE is 10900. In hex, that's 2A94, therefore the bytes will read 94 2A 00 in the file.)


    Offset 0C - Current Level. Runs through each act in order of Level Select. (Present/Past/G.Future/B.Future)


    (01-04: PP1, 05-08: PP2, 09-0A: PP3)


    NOTE (SPECIAL STAGE)


    Special Stages work differently. I don't know how exactly these work yet. I have figured out that each number listed below dictates the Special Stage AND the following


    level. (Ex. 55-SS1 to PP2 66-SS2->TT1 Past) It seems that after the Special Stage, it subtracts $50 to get the next level... I dunno if that assumption is accurate or not though.


    Offset 10 - Time Stones collected. The 8 bits of the byte denote which Time Stones have been obtained. N/A|Red|Purple|Teal Blue|Yellow|Orange|Green This means that this byte can be anywhere from 00-7f. 7f, being ALL STONES.


    Offsets 18-1A - ??? In new games, they appear as 50 C3 00. I have no idea what this is yet, but it changes as you play.


    Offsets 1C-1D - Machines Destroyed. I haven't fully figured out how these work, but I'm working under the belief that they work in the same fashion as the Time Stone byte, in that each bit denotes which Machine has been destroyed. I'll figure out which bit denotes which one later.


    Offset 1E - Metal Sonic holograms destroyed. - This byte seems to simply count how many you've destroyed, rather than which ones you've destroyed. If you set this to the max (0C - 12 holograms in the game) then go destroy one in the main game, it'll increase to 0D.


    The reason for the difference is that for the achievement, both need to be counted, BUT holograms have no effect on Good Futures, while Machines DO have effect on Good Futures, in particular, whether or not you get a Good Future for Zone 3 or not. Therefore, machines are individually recorded, while holograms are simply counted together with 1 variable.


    Almost everything there uncovered... but now lets move on...


    MISC


    Next is your settings and misc stuff. Again, haven't uncovered EVERYTHING, but here's what I got thus far.


    Offset 80 - Not sure what it does. Starts out default as "00", but in my file it changed at one point to "01" so its used for something...


    Offsets 84 and 88 are Music and Sound volumes. In game, they range from 0-10. In the hex file, to increase this, increase the value by hex multiples of 10.


    (00-0, 0a-1, 14-2, 1e-3, 28-4, 32-5, 3c-6, 46-7, 50-8, 5a-9, 64-10 FULL) - Lazy asses... here you go.


    Offset 8C - This is your Spindash setting. 00-Genesis mode. 01 for Classic CD mode.


    Offset 90 - Not sure what it does. Starts out default as "00", but in my file it changed at one point to "01" so its used for something...


    Offset 98 - Soundtrack. 00 - JP Soundtrack. 01 - US Soundtrack.


    Offset 9C - Time Attack Zone unlock. This denotes how many of the main Zones are unlocked for play in Time Attack. Starts at "00" for none unlocked. 01 unlocks PP, 02 unlocks CC, and obviously this counts up to 07, where all zones are unlocked.


    I am working under the belief that all other unlockables don't have offsets. Instead, they are locked/unlocked based on the calculated totals of the following Time Attack variables.


    And speaking of which, onto the next part...


    TIME ATTACK.


    These start at Offset C0. Remember with this, you are editing the 1st, 2nd, and 3rd places for EACH ACT. and for special stages, each one has 3 times as well. So, to improve your total, you need to improve the 1st place of each one.


    Each record is read from 4 bytes, but you will only need the first 2 bytes. Editing the second pair of byte will skyrocket your time up to 99 minutes, and after 99 minutes, it will loop back again, eventually even reading letters! I managed to get 0:00.0Z. I will start to note every single offset for each time record, but I'm sure you could figure it out without me by now, just remember, each record uses 4 bytes!


    Start with C0. This is the 1st place time for Palmtree Panic Zone 1. C3 is the 2nd place time... and so on.


    Unfortunately that's all I've got for now. I will do my best to try to find out more. Also, anyone else who tries this and figures anything out... please feel free to contribute. Now, if only we could hack anything in the engine...


    ALSO PLEASE add any info you have about other versions of SCD 2011. I have the PS3 version, but currently don't have my PS3.
     
Thread Status:
Not open for further replies.