On S2s' object 3B (solid obect)

Discussion in 'Discussion and Q&A Archive' started by Pacca, May 13, 2015.

  1. Pacca

    Pacca Having an online identity crisis since 2019 Member

    Joined:
    Jul 5, 2014
    Messages:
    1,175
    Location:
    Limbo
    Some of you may know that Sonic 2 has an unused object which uses ID 3B. It's a solid object that displays it's own mappings, and fails to load any appropriate graphics. It does not exist in any of S2s' layouts, and is quite likely unused by the game. It seems to just be referred to as "Solid Block" by both Sonic Retros object editing page and both commonly used disassemblies (Xenowhirl and Github). However, on further analysis, it seems to actually be a ported leftover from Sonic 1; the GHZ purple rock object. It has the same dimensions, it's functionally identical, it uses the exact same object ID as the GHZ rock object in Sonic 1, and to top it off, it exists just above the again ported from S1 and again unused Breakable wall object, which uses the object ID immediately after 3B (3C), and also has the same ID as it's S1 counter part.

    I thought it was interesting, and worth sharing. Feel free to give evidence for or against this, I'd love to see this theory proven or disproven.
     
  2. Psycho RFG

    Psycho RFG Well-Known Member Member

    Joined:
    Feb 22, 2011
    Messages:
    234
    Sonic Team didn't ported Sonic 1 objects to Sonic 2... They made Sonic 2 over Sonic 1.... and there is some other objects that still remains in the S2 code that are unused....
     
  3. DanielHall

    DanielHall Well-Known Member Member

    Joined:
    Jan 18, 2010
    Messages:
    860
    Location:
    North Wales
    ​This. Do a little more digging and you'll see leftovers like the giant ring and the helix spikes from GHZ.
     
  4. Clownacy

    Clownacy Retired Staff lolololo Member

    Joined:
    Aug 15, 2014
    Messages:
    1,020
    Thanks for pointing that out, I never noticed. If no one else beats me to it, I'll add details to the Git disasm

    EDIT: Done.
     
    Last edited by a moderator: May 13, 2015
  5. Pacca

    Pacca Having an online identity crisis since 2019 Member

    Joined:
    Jul 5, 2014
    Messages:
    1,175
    Location:
    Limbo
    ​Really? I didn't know... From experience, it seems like some important changes would have to be made to the objects to work in S2 at all (for example, the mappings need to be converted).
     
  6. Clownacy

    Clownacy Retired Staff lolololo Member

    Joined:
    Aug 15, 2014
    Messages:
    1,020
    Yeah, but it seems they had a way of automating it. KiS2 uses S3K's mapping format, despite being based on S2.

    Don't forget, the Nick Arcade prototype still had GHZ in it, likely as a test level. As Sonic Team was upgrading the engine, they had to upgrade the objects. Note the 2 Player compatibility in the form of that bsr to Adjust2PArtPointer.
     
  7. redhotsonic

    redhotsonic Also known as RHS Member

    Joined:
    Aug 10, 2007
    Messages:
    2,969
    Location:
    England
    Please do not quote the post directly above.  Thanks.​

    ​If I knew that no one knew what it was, I would of said something.  How do I know?  In Sonic 2 Recreation, see the barrier here?  Obj3B =P

    [​IMG]
     
  8. Pacca

    Pacca Having an online identity crisis since 2019 Member

    Joined:
    Jul 5, 2014
    Messages:
    1,175
    Location:
    Limbo
    I found yet another mislabeled Sonic 1 leftover; Obj1A (the falling cliff from GHZ). It's mappings line up with the original object when GHZs' art is ported in. It also shares the same ID as it's S1 counter part. In both the Xenowhirl and Github disassemblies, it's actually mislabeled as the collapsing platforms from MCZ and OOZ (both of which uses an entirely different object).
     
    Last edited by a moderator: May 14, 2015
  9. Clownacy

    Clownacy Retired Staff lolololo Member

    Joined:
    Aug 15, 2014
    Messages:
    1,020
    Well, that was interesting.

    To summarise, obj1A and obj1F work in OOZ, obj1A is for HPZ and GHZ, and obj1F still has leftovers from when it was obj53 in S1, including its mappings for MZ, SLZ and SBZ. Wow.