don't click here

Collision Data In Sonic 2 SMS

Discussion in 'Engineering & Reverse Engineering' started by Ravenfreak, Jan 1, 2012.

  1. Ravenfreak

    Ravenfreak

    2 Edgy 4 U Tech Member
    3,086
    181
    43
    O'Fallon Mo
    Sonic 1 Game Gear Disassembly
    Happy new year everyone! So I'm going through the collision arrays that are in the wiki disassembly of Sonic 2 SMS, and decided to document what I come across. Since I can't access the SVN to check if the current notes are updated with collision data, and I don't recall reading any documentation anywhere else I decided to post them here. Forgive me if they have been documented... :v:
    Code (Text):
    1. Collision Notes:
    2. Collision data is set up in 32 byte arrays. Before the array pointer, there's 2 bytes.
    3. The first one determines the type of block such as if it's a breakable block, a solid block, etc. The second one seems to determine the
    4. collision type. Each collision offset points to 3 separate arrays with the last one only consisting of 16 bytes that marks the end of the array.
    5. Block values are bellow:
    6. $00- Same as 86
    7. Values $20- $50 are all invalid, and crashes the game.
    8. $81- Solid
    9. $82- Not Solid
    10. $83- Tube (from bottom to top)
    11. $84- Same as $83
    12. $85- Damaging Block
    13. $86- Conveyor Belt?
    14. $87- Same as $86
    15. $88- Slippery Slope (Unused?)
    16. $89- Spring
    17. $8A- Same as $83
    18. $8B- Same as $81
    19. $8C- Collapsing Bridge
    20. $8D- Breakable Block
    21. $8E- Conveyor Belt (Moves Sonic to the Right)
    22. $8F- Same as $81
    23. $90- Same as $81
    24. $91- Same As $81
    That's all I have atm, and maybe someone can use this.