Sonic Mania: Hacking Discussion

Discussion in 'Engineering & Reverse Engineering' started by Chimera, Aug 29, 2017.

  1. qwertysonic

    qwertysonic

    Member
    331
    5
    18
    creating the biggest sonic collection
    Get out your torches and pitchforks folks.
    + - Actually I agree.  
     
  2. DustArma

    DustArma

    Member
    1,301
    0
    16
    Santiago, Chile
    Learning Python.
    + - I agree too, although Mania is a close second  
     
  3. Blue Spikeball

    Blue Spikeball

    Member
    583
    22
    18
    I said in recent years.

    + - I also agree. As fantastic as Mania is, it feels more rushed and incomplete than S3&K to me, especially toward the end.  
     
  4. Dark Sonic

    Dark Sonic

    I'll find the old avatar eventually Member
    12,320
    82
    28
    Working on my art!
    I'm still unsure which one I like more. I've been spoiled, my S3K experience these days is mostly via S3 Complete with Sonic 2 sprites and that's basically perfection. Mania is so good though but a tad rushed. At the same time though I feel like eventually modding support will allow Mania to flourish. That and it's still being updated with bug fixes, so even the vanilla game is being cleaned up. I still lean more towards S3K I think, but if that's a 10 then Mania is a 9.9.

    Since Mania probably blew Sega's expectations out of the water though, I bet a better funded and more properly timed Mania 2 would be the best Sonic game ever. Hell even if it included remixed levels again there are still a lot of good ones. Quartz quadrant, Mystic Cave, Ice Cap, Carnival Night. It could be glorious.
     
  5. MainMemory

    MainMemory

    Have no fear...Amy Rose is here! Tech Member
    4,353
    35
    28
    SonLVL
    In topics that are actually related to hacking Sonic Mania, I want to implement the SMPS music player into the game, just for the novelty factor. I've found the function that is called to play music at 5993A0, but I don't know what functions are responsible for pausing, resuming, and stopping the music, and I don't know if there's anything I need to make sure to do so the game doesn't freak out because it thinks no music is loaded, or try to unload music data that wasn't loaded because I bypassed it. If anyone here has done or is willing to do research into this area, I would be grateful.
     
  6. codenamegamma

    codenamegamma

    Member
    72
    0
    6
    you could always skip it. i did come across an address with just the currently playing song name like "Greenhill1.ogg" would be easy to hook it and just disable the music altogether.

    Enable Streams
    SonicMania.exe+239CC0

    Streams Volume
    SonicMania.exe+239CC6

    SFX Volume
    00639CCA

    though controlling them isn't instant I these are whats controlled in the dev menu, so they might need to be traced back a bit to find out what really gets written to when applied.

    We also found this today.
    Pointer offset 0 - 1 byte.
    00D84664

    i think its the object id for the object in game responsible for telling the game what song to play. so it might be worth tracking that back as well, might take you to the functions required. though i have to say setting it yields no results probably because its constantly getting written to, or that we don't have any similar objects to switch it with so we can test.


    also found the Debug Mode object ID. Turns out when you go into Debug Mode you get turned into a different object that spawns different objects. so if you force that debug mode object to say the Player Object then you can force people to stay OUT of debug mode. might be useful for some anti-cheat in the future or something if people wanted to prevent using it.
     
  7. MainMemory

    MainMemory

    Have no fear...Amy Rose is here! Tech Member
    4,353
    35
    28
    SonLVL
    "Skip it"? Skip what? I can easily replace the music playing function with my own code that would play SMPS music instead of the ogg files, but I don't know if that could have any unwanted side effects on the rest of the game, and I need to figure out how the game pauses and resumes the music so that the SMPS music will properly pause and resume when the game calls for it.
     
  8. CUD

    CUD

    Member
    I'm curious as to whether modding Mania to add characters rather than replace them is possible. I would love it if I could boot up the game and have the option to play as Sonic, Tails, Knuckles, Metal and Shadow without having to close the game and change the mod launcher settings.

    Will such a thing be possible in the future or are we most likely only going to be seeing sprite swaps?
     
  9. do we have access to be able to modify the game's code yet?

    because i feel like that might be needed to change some of these things
     
  10. Turbohog

    Turbohog

    Member
    650
    9
    18
    Anything is "possible", but we do not have a way to add characters yet. If that ever happens I'll be really impressed.
     
  11. MainMemory

    MainMemory

    Have no fear...Amy Rose is here! Tech Member
    4,353
    35
    28
    SonLVL
    Adding new characters probably wouldn't be that difficult really, it's just a matter of searching for all the functions that check your current character selection and replacing them with versions that check for additional characters. The mod loader has full support for custom code injection, and I might even be able to craft a sort of registration feature, to allow multiple mods to define new characters and work together.

    [hr]

    As you may have noticed, the game has once again been updated. This breaks the mod loader and codenamegamma's cheat table, and both of them would require significant amounts of work to get everything implemented again. So, should we just stick with the Sept. 6 1.03.0831 version for now, or should we keep our tools up to date with the new version?
     
  12. Dark Sonic

    Dark Sonic

    I'll find the old avatar eventually Member
    12,320
    82
    28
    Working on my art!
    So what does this latest patch do? Has anyone noticed any differences?

    And idk, I guess it depends on what changes were made in this most recent update. If they're insignificant maybe it makes sense to continue using the older version, although if it's something significant that fixes glitches and annoyances maybe it's best to use the new one? I wonder how long Mania's going to be updated anyway? The PC version seems to get a fair amount of attention especially.

    Regardless is there a way to dial back your version via Steam if you wish to do so?
     
  13. Pokepunch

    Pokepunch

    Member
    82
    0
    6
    UK
    A Sonic 2 Hack
    I'm not sure if that would be considered important or not.
     
  14. Dark Sonic

    Dark Sonic

    I'll find the old avatar eventually Member
    12,320
    82
    28
    Working on my art!
    Doesn't seem important to me.

    Ok how do you go dial back the version then.
     
  15. MainMemory

    MainMemory

    Have no fear...Amy Rose is here! Tech Member
    4,353
    35
    28
    SonLVL
    https://www.reddit.com/r/Steam/comments/611h5e/guide_how_to_download_older_versions_of_a_game_on/
     
  16. Chimera

    Chimera

    I'm not a furry. Tech Member
    1,254
    0
    16
    Castlevania prettyness
    I vote for rollback. Until we see significant engine improvements (and its good that the game's being updated) I see no reason for us to scramble for re-confirming everything that's already been found. All it does is halt RND progress and in some extreme instances things may no longer work at all.

    Unless this update REALLY FIXES THINGS about the core gameplay (aside from localization, I'm pretty sure its just some minor annoyances at the moment) we shouldn't bother.

    With that said, if we're going to stick with a single version from this point, is there any objection to beginning custom code research? :specialed: would like to see people try and clone stage/character/object entries to see how far that can go~
     
  17. EyeKey

    EyeKey

    Member
    29
    0
    0
    They removed "Data/SoundFX/HCZ/Dunkey.wav" from Data.rsdk. So they removed this Easter egg?
     
  18. RandomTBush

    RandomTBush

    Member
    13
    0
    1
    Yep, it's gone. Just checked for myself, and the command no longer works on both the PC and PS4 versions (and was likely removed from the XB1 and Switch versions).
     
  19. Dark Sonic

    Dark Sonic

    I'll find the old avatar eventually Member
    12,320
    82
    28
    Working on my art!
    Aww, why would they remove that? Maybe Dunkey didn't like it?
     
  20. RandomTBush

    RandomTBush

    Member
    13
    0
    1
    It's most likely what JoshSuperlink mentioned on Twitter: