don't click here

Sonic Adventure 2 Hacking

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

  1. Fusion

    Fusion

    Member
    8
    0
    0
    Fusion's Chao Editor
    I already provide a version that doesn't need to be installed. Each version is available with and without the installer. Just download the zip archive from my downloads page, and unzip it wherever you want. The archive includes both the exe file and the readme file, but you can of course get rid of the readme file if you don't want it.

    I'm pretty sure it's the power stat. As MainMemory said, you can set them too high. I should probably add a warning about that to the help text.
     
  2. KingLightning

    KingLightning

    Member
    17
    0
    0
    Atlanta, Georgia
    SA2 Cheat Engine Guide
    Oh ok I didn't see that. I (hastily) downloaded the .exe because it said (recommended) next to it. Thanks again.

    Also it's interesting to note that the mathematically highest stat you can get with a Chao (without hacking) is 3266, assuming a newborn Chao gets +30 for each level up and is reincarnated 2 times. That number probably isn't programmed in the game as the max (so it's probably rounded off to 4000 as mentioned before), but if problems still occur, try setting the value to, say, around 3100-3200.

    I haven't yet tried Chao race with overpowered Chao because I don't want to wreck my Chao race time records with hacked chao :specialed: .

    Also, if anyone, like me, loves seeing rings flying everywhere during character boss battles (because seeing the health bar decrease isn't as rewarding as ring splatters), freeze the ring address to the value 1310740. Again, 1310740 is the VALUE, NOT the address (so don't put it as an address!). This will give your opponent 20 rings and you 20 rings. Every time you hit them, they drop 20 rings, and if they hit you, you drop 20 rings. Since the value is frozen, you and your opponent will immediately reset to 20 rings after getting hit. Have fun with the mess of rings on the battlefield.

    The ring address is 0174B028 . There are 3 or more ring addresses available, but this is the one you want to use. The others won't work with this.

    Again, this works with character boss battles. Bosses like Flying Dog or King Boom Boo won't drop rings if you hit them, even if you freeze the address to 1310740.

    EDIT: You can also cause weird victory scenes like Sonic walking through Shadow's rings during his victory dance in the first Sonic & Shadow battle. It's quite amusing.
     
  3. Sporks

    Sporks

    20
    0
    0
    I did let it have a few minutes, I even went into the Chao Garden to see if I need to be in there. I'll try running it as an adminstrator when I get a chance.
     
  4. KingLightning

    KingLightning

    Member
    17
    0
    0
    Atlanta, Georgia
    SA2 Cheat Engine Guide
    This is weird. I'm not running anything as admin and it works just fine. According to task manager, all processes are under the limited account.

    I'm using the portable .exe version now (the one that doesn't require installation). Why don't you try the portable one and see if it works?

    The portable .exe doesn't require admin permission.

    Also, try booting the game to the title screen, and THEN boot the editor.

    EDIT: I booting the editor before the game, and it still attached to the game. Again, I'm using the portable .exe.

    I should be studying for my chem exam now. Fusion, you have spoiled me too much.
     
  5. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,796
    383
    63
    SonLVL
    Or you could set the 2 byte value at 0174B02A to 20 to give your opponent 20 rings without affecting your own ring count.
     
  6. Sporks

    Sporks

    20
    0
    0
    Thanks! I'll try that. And thank you Fusion for making something this awesome.
     
  7. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,796
    383
    63
    SonLVL
    2P object layout control: 488FAB - 0F 84 85 00 00 00
    • Always load 2P layout: change to 90 90 90 90 90 90
    • Never load 2P layout: change to 90 E9 85 00 00 00
    • Load 2P layout in 1P and 1P layout in 2P: change to 0F 85 85 00 00 00
    Hard mode object layout control: 48903D - 75 4C
    • Always load hard mode layout: change to 90 90
    • Never load hard mode layout: change to EB 4C
    • Load hard mode layout in missions 1-4 and normal layout in hard mode: change to 74 4C
    The 2P layout has precedence over the hard mode layout.
     
  8. KingLightning

    KingLightning

    Member
    17
    0
    0
    Atlanta, Georgia
    SA2 Cheat Engine Guide
    I did not know that. Thanks! That makes it a lot easier.

    The other address follows the function y = 65536x + b where x = 2P (or boss) rings and b = 1P rings. Setting x = 20 rings for P2/boss and b = 20 rings for P1 gave that number y = 1310740, which is what I entered into the ring count address. Of course, if you want to add more rings to yourself, you just add that much to the number (so if you want to add 23 rings to your 20 rings, it's 23 + 1310740 or 1310763, giving you 43 rings and your opponent 20 rings).

    But your address will work better. I don't feel like going through all that math. Thank again.
     
  9. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,796
    383
    63
    SonLVL
    Both ring counters are 2 bytes. Whoever thought they were 4 bytes was wrong.

    I've found a fix for alternate characters in levels that start with a cutscene (like Big Foot): at 57D92 (458992 RAM) change 01 to 03.
     
  10. flarn2006

    flarn2006

    Member
    280
    3
    18
    In case anyone's interested, right now what I'm working on is adding the ability to create and delete objects from the cheat table. I plan on making it possible to choose where to put objects by first spawning an object that can be picked up and placed where you want. Eventually I may add the ability to save and load object sets to/from files.
    It's kind of hard to just call it a cheat table anymore.
     
  11. KingLightning

    KingLightning

    Member
    17
    0
    0
    Atlanta, Georgia
    SA2 Cheat Engine Guide
    The 4 bytes is where my problem was.

    Also, when I try to play as Knuckles/Rouge in levels like Crazy Gadget, City Escape (this is a big one), Mission Street, Prison Lane, Eternal Engine, and some other Sonic/Tails levels (I didn't beat the Dark story yet due to final exams so there are probably problems there too), either the character dies instantly, or they hit an invisible wall and can't move through.

    Eternal Engine, Mission Street, and City Escape all cause the camera to glitch and/or the character to fall into an endless pit.

    Prison Lane and Crazy Gadget load sort of normally (sort of because the character starts somewhere else), but then it's not too long when the character hits an invisible wall and can't pass through (try Crazy Gadget as Knuckles and you'll see).

    Anybody else experiencing the same problem? Or is there some fix that I have overlooked while reading over the entire thread?

    EDIT: Just saw this post right after writing mine:


    I am definitely interested. Is this like a debug mode sort of thing like Sonic 2 or Sonic 3 & Knuckles? I haven't tried the debug cheat yet that MainMemory posted.
     
  12. flarn2006

    flarn2006

    Member
    280
    3
    18
    Not exactly. I'm not enabling a debug mode that was placed in the game, I'm actually creating an interface in Cheat Engine for placing objects, and hooking part of the game code to call the necessary function. MainMemory has been helping me quite a bit by the way; this wouldn't be possible without him. I'm still trying to get the assembly code to work though; right now it just crashes.

    EDIT:

    [​IMG]
     
  13. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,796
    383
    63
    SonLVL
    To fix the Super Sonic water crash, you can go to 2ED2E0 (6EDEE0 RAM) and change 55 to C3.
     
  14. flarn2006

    flarn2006

    Member
    280
    3
    18
  15. maxton

    maxton

    Member
    Thanks for your great work, flarn2006, MainMemory, Fusion, and others.

    In case anyone still cares about the sound effects, I've updated the SCHG with nearly all that I've been able to figure out about them; mainly that with the PC release they're much easier to extract and modify.
     
  16. KingLightning

    KingLightning

    Member
    17
    0
    0
    Atlanta, Georgia
    SA2 Cheat Engine Guide
    I've heard of some claims (like in the cheat engine forum, for example) that it's possible to have an action stage, such as City Escape, as a Chao Garden.

    Has anyone been able to do it? Because I can't seem to find the address(es) to pull that one off.
     
  17. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,796
    383
    63
    SonLVL
    I have no idea. In SADX I could mix and match parts of levels just by switching pointers around, but the levels in SA2 are a lot more self-contained, and every time I try to change the LandTable a level loads, the game crashes.
     
  18.  
  19. MainMemory

    MainMemory

    Kate the Wolf Tech Member
    4,796
    383
    63
    SonLVL
    I was made aware of that video, but it doesn't tell me anything about how it was done.
     
  20. KingLightning

    KingLightning

    Member
    17
    0
    0
    Atlanta, Georgia
    SA2 Cheat Engine Guide
    MASS EDIT: (I took out my load of nonsense since in the end it was useless)

    Basically, to make a level a Chao Garden, we have to do what the first post in this page does, but in reverse:

    http://forums.sonicretro.org/index.php?showtopic=28035&st=135

    In this example, the stage is loaded on the Chao Garden. But we want the Chao Garden to load on the stage.

    So would this be possible by an address manipulation or would it involve messing with the game's files?

    I'm guessing the former, but I really don't know.