don't click here

Spin Dash in Sonic 2 SMS

Discussion in 'Engineering & Reverse Engineering' started by pixelcat, Nov 16, 2023.

  1. pixelcat

    pixelcat

    The Holy Cat Jr. Tech Member
    30
    129
    33
    [​IMG]



    A Spin Dash ability fully implemented in Sonic 2 SMS, complete with sprites and SFX.

    Downloads
    Get the hack here: https://github.com/pixelcat-gh/s2sms-spindash/releases/

    Source Code
    View the source here: https://github.com/pixelcat-gh/s2sms-spindash
    You can use any of my code contained within this repository in your own hacks, provided you give credit to me (as pixelcat).

    There are some things in there that may be of interest to you if you hack this game regardless of whether you want to port the ability to your own hack or not (e.g. a simple Python script to import Sonic's art from an indexed image)

    Special Thanks
    • Glitch -- for the disassembly and notes
    • MarkeyJester -- for spending around 3 hours with me trying to debug a really weird issue; I really appreciated not being alone in banging my head against a brick wall :3
    Is Sonic Eclipse alive?
    I don't know.
     
  2. Snowbound

    Snowbound

    Member
    924
    762
    93
    Wow this is awesome! Is Sonic 2 SMS built off of Sonic 1 SMS? I’m curious if this opens the door for the spindash in Sonic 1 SMS? (I’d especially love the spindash in Tracker’s Sonic 1 SMS Perfect System hack but I’m getting off topic now)

    Regardless this is incredible work!
     
  3. Ravenfreak

    Ravenfreak

    Feeling festive this year Tech Member
    3,171
    248
    43
    O'Fallon Mo
    Hacking Sonic Drift
    Sonic 1 8-bit runs on a completely different engine than Sonic 2, Chaos, and Triple Trouble. (Which all three run on Aspect's engine.) Adding the spindash to Sonic 1 SMS would require a disassembly of the game. I have a very bare bones disassembly of the Game Gear version on Github which is in my signature, but I haven't touched that disassembly in years.
     
    • Like Like x 1
    • Informative Informative x 1
    • List
  4. Ch1pper

    Ch1pper

    Fighting the Battle of Who Could Care Less Member
    863
    115
    43
    Life.
    How feasible would porting it to the Game Gear version be? :P
     
  5. Bobblen

    Bobblen

    Member
    442
    222
    43
    The holy grail of 8 bit Sonic 2 is here, amazing! Well along with playable Tails but we already have that :-)

    The most complete Sonic 1 disassembly is probably by Maxim of smspower, his level editor has loads of features and the source is available (though not a separate disassembly sadly)
    https://www.smspower.org/forums/18729-STH1EDWVSonicTheHedgehogEditor?highlight=sonic editor

    I would reach out to him if you were interested in looking at S1 sms
     
  6. pixelcat

    pixelcat

    The Holy Cat Jr. Tech Member
    30
    129
    33
    Thanks everyone!

    Probably the only thing that can feasibly be backported is the spin dash sprites themselves, and that's about it. :P Like Ravenfreak said, it's completely different.

    Probably not very? As far as I'm aware, no disassembly of the Game Gear version exists. This would require either a disassembly of the Game Gear version or a port of this one with remaining Game Gear-spiecific features added in (which would be waaaay too much work JUST for this little dinky thing)

    Interesting! I'll check this out. Also I'm pretty sure Kroc was doing a lot of work on this game, too, and has also made their own editor and also a disassembly. One caveat is that the disassembly pulls resources from the ROM itself instead of having it split into binaries, but it *could* be workable? I'm not sure, I haven't really peeked into that game before, I'm much more familiar with Aspect's engine.
     
  7. Bobblen

    Bobblen

    Member
    442
    222
    43
    I did do a quick test of the first few levels this morning and the only thing I noticed was that if you walk right up to a breakable wall and spindash it won't break. If you back up even a little bit, the wall does break.

    It was very satisfying to dash through all the eggs in the SHZ3 boss (less so if you try dashing into the chicken itself).

    I'm wracking my brains to think of a better sound effect to use instead of the 'exit pipe' noise, but I can't think of a good one and I'm sure you've already looked!
     
  8. pixelcat

    pixelcat

    The Holy Cat Jr. Tech Member
    30
    129
    33
    Surprise update!
    https://github.com/pixelcat-gh/s2sms-spindash/releases

    [​IMG]

    Changes:
    • ROM size now unaffected, all new data moved in place of the padding in bank 5
    • Spin Dash frames no longer replace other Sonic frames
    • New 32x32 Spin Dash sprites
    • Fixed: player still spin dashes in the air if thrown in the air
    • Fixed: spin dash cancels when the 1/2 button is pressed
    • Fixed: spin dash doesn't destroy breakable balls if revved up exactly to the left side of the wall
    • Different Spin Dash sound
     
    • Like Like x 13
    • Useful Useful x 1
    • List
  9. MarkeyJester

    MarkeyJester

    Original, No substitute Resident Jester
    2,248
    509
    93
    Japan
    You've already gone the extra mile to put in a spindash, so perhaps this is cheeky for me to ask, but...

    The only thing missing is; charging up with each press (with SFX too).

    Would you consider it?