don't click here

Sonic Adventure 2 Hacking

Discussion in 'Engineering & Reverse Engineering' started by Turbohog, Feb 20, 2012.

  1. flarn2006

    flarn2006

    Member
    280
    3
    18
  2. Looks like nothing more than just a missing radar and a different texture. Probably nothing too big.
     
  3. darkspines35

    darkspines35

    It's Easy Actually. No, seriously. Tech Member
    248
    0
    16
    .V.
    Sanik Adevnt Casters
    Really nice flarn!

    It's actually recycled from SA1/DX. PsychoJason showed this off back on the DC version a long time ago. It just shows stuff got recycled from the first game to the second, and was eventually changed but not removed :v:
     
  4. Oup. Didn't notice that note below the image. I've honestly forgotten what those computer screens looked like in SA1.
     
  5. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,742
    338
    63
    SonLVL
    Enable somersault and spindash in Chao Gardens: at 322CEB (7238EB RAM) change 74 C0 to 90 90.
     
  6. Caverns 4

    Caverns 4

    Member
    346
    0
    16
    Sonic: Retold
    Not that this is particularly useful at this point, but perhaps someone will have need of this for something:

    Hero side Chao Garden Inventory:

    Code (Text):
    1. 01946F18 - Item 1
    2. 01946F20 - Item 2
    3. 01946F28 - Item 3
    4. 01946F30 - Item 4
    5. 01946F38 - Item 5
    6. 01946F40 - Item 6
    7. 01946F48 - Item 7
    8. 01946F50 - Item 8
    9. 01946F58 - Item 9
    10. 01946F60 - Item 10
    11. 01546F68 - Inventory Length
    Dark side Chao Garden Inventory:

    Code (Text):
    1. 01946FCC - Item 1
    2. 01946FD4 - Item 2
    3. 01946FDC - Item 3
    4. 01946FE4 - Item 4
    5. 01946FEC - Item 5
    6. 01946FF4 - Item 6
    7. 01946FFC - Item 7
    8. 01947004 - Item 8
    9. 0194700C - Item 9
    10. 0194700C - Item 10
    11. 0194701C - Inventory Length
    The really crazy part about this is that instead of just being a simple array of bytes, there are 8 bytes for each item. Changing other bytes doesn't appear to do anything except for crash upon entering the Chao Garden.

    On another note, I see there are RAM locations for character physics. Does anyone know where I can could actually edit these either in the executable or character file if necessary? I'm trying to find it for myself, but I figured I'd ask just in case it's already known.
     
  7. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,742
    338
    63
    SonLVL
    1336BE8, each struct is 0x84 bytes, in the order:
    • 0 - Sonic
    • 1 - Shadow
    • 2 - Tails
    • 3 - Eggman
    • 4 - Knuckles
    • 5 - Rouge
    • 6 - Mech Tails
    • 7 - Mech Eggman
    • 8 - Amy
    • 9 - Super Sonic
    • 10 - Super Shadow
    • 11 - ???
    • 12 - Metal Sonic
    • 13 - Chao Walker
    • 14 - Dark Chao Walker
    • 15 - Tikal
    • 16 - Chaos
    • 17 - ???
    • 18 - ???
    The structure itself seems to be the same format as Sonic Adventure DX.
     
  8. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,742
    338
    63
    SonLVL
  9. flarn2006

    flarn2006

    Member
    280
    3
    18
    [​IMG]

    Here's another new feature in my cheat table. Currently it only works with rockets and Omochao (in the former case there's a button to set its target to your current position) but I plan on adding more stuff to it.
     
  10. Just wondering, but is there any guide behind using this cheat engine of yours? I'm not that experienced with using stuff like this, and I'd love to mess around with this.
     
  11. flarn2006

    flarn2006

    Member
    280
    3
    18
    No guide (at least not yet), but here's essentially what you need to do.

    1. Download Cheat Engine. (and install it!)
    2. Download the cheat table, and extract the zip file to the "My Cheat Tables" folder in My Documents. (If the folder doesn't exist, create it.)
    3. Double-click sonic2app.ct in the folder, and Cheat Engine will open. It should ask you something about a Lua script; click Yes.
    4. Start SA2 if it's not already running (make sure the actual game is running, not just the launcher)
    5. Click the button in the upper-left corner of Cheat Engine that looks like a computer with a magnifying glass, and select "sonic2app.exe" from the list that appears.
    6. Now look in the upper-left corner of your screen, and you should see a Tools menu with four buttons.

    • Tweaks/Hacks basically lets you modify specific parts of the game's code to fix or change certain things.
    • Teleporter lets you save locations in a stage and go back there. It also includes some already saved for a few levels. To use it, just load the level you want and click "Set Stage"; the rest should be obvious.
    • Object Chain is the most powerful and complex of the tools. It lets you manipulate the various objects that are currently loaded by moving them around, rotating them, etc, and even place objects into the level like in the Genesis games' Debug mode. To use that mode, click Object Placement, and then in the window that appears click Enable Object Placement.
    • Character Select is simple; it just lets you make it so no matter what level you load it always selects the same character. While this can be done in the cheat table itself, this option lets you select the 2P characters as well, as well as set the character you're fighting in character boss battles.

    In addition, there's the cheat table itself, found at the bottom of the main Cheat Engine window. This lets you edit certain values in memory. Click the check boxes on items with only names to expand sections, and double-click the numbers on the far right to change the value. Click the check boxes on items with actual values to "freeze" the values—that is, make it so they won't change. For instance, you can get some rings and then freeze your rings value, and then if you lose your rings (or get any more) you'll still have the same number of rings.

    One last thing: if the game quits for whatever reason, once you reload it, you have to click on the computer-with-magnifying-glass icon and select sonic2app.exe again. If you want to spawn objects, you'll also need to click the Enable Object Placement button again.
     
  12. SF94

    SF94

    Tech Member
    Here's my question: Can this object placement mode actually write changes to the set file?
     
  13. flarn2006

    flarn2006

    Member
    280
    3
    18
    No, I'm afraid not.
     
  14. So far the game's crashed every time I've used this. Kind of a downer.

    But thanks for the instructions. I'll play around with it a bit more.
     
  15. flarn2006

    flarn2006

    Member
    280
    3
    18
    What exactly are you doing that's making it crash?
     
  16. I've been trying to play as Metal Sonic and Mechless Eggman in City Escape. With Metal Sonic, the level loaded, and I got to the point just past the boarding portion of the level, where the first steel box is, and the game crashed. With Eggman, it just crashed trying to load the level.
     
  17. Graxer

    Graxer

    Member
    I had that problem too in City Escape. For some reason you can't do the rolling attack without the game crashing. (Although Sky Rail can cope with Metal Sonic's "roll" if I remember correctly) I think I read a while ago that this was meant to be this problem rolling when playing as Amy, but it seems it isn't just Amy.

    When playing as characters you shouldn't be in a level you put the game at a high risk of crashing, because there are times, for instance, where certain characters don't have the correct animation for something and the game just crashes. For instance, Eggman doesn't have an animation for swinging from the Green Forest vines, and therefore the game crashes when he touches them.

    Also, I don't think it is actually possible to successfully play as Mechless Eggman or Mechless Tails in the main stages using the cheat engine codes for them.
     
  18. flarn2006

    flarn2006

    Member
    280
    3
    18
    To fix the somersault issue, go to Tweaks/Hacks and click 1P Alt Char Fix or whatever it says.
    As for Mechless Tails/Eggman I'm aware of the crash, but I don't know how to fix it. MainMemory told me what addresses/values to write; I just coded the interface.
     
  19. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,742
    338
    63
    SonLVL
    To get mechless Tails and Eggman to load properly in levels, you'd have to apply the fix I posted way back and freeze the current character value to the one you want.
     
  20. Chenginerd

    Chenginerd

    Member
    6
    0
    1
    The 1P Alt Char Fix tweak doesn't seem to be working for me. Do I need to enable it before or after I'm in a level with an alternate character?