Friday, January 19, 2018

You're going to pay for this!

An anonymous commenter asked:
Since you have covered the Surfboard and the Rotating spheres, could you talk about the "Eggman flying away" sprites?
Sure. At ROM offset $1796EE, there's this block of uncompressed art which doesn't look like anything at first, but if you spread out the tiles horizontally, apply Sonic's palette and then tilt your head sideways, they start looking a bit familiar...


Okay, so these sprites definitely resemble Eggman riding the Egg Mobile, but why are they sideways and stretched out like that? That's because they're actually meant to be rendered using a software scaling routine, the same one used by the Marble Garden Zone 2 boss, as well as the Egg Robo enemies in Sonic & Knuckles.

It turns out that, much like the surfboard intro before it, there's actually an unused, fully-programmed object which uses these sprites, exclusively in the Sonic 3 ROM at offset $51B4C.

No other code references this object, so it's impossible to know for sure when it was meant to appear, but its placement in the ROM directly after the Launch Base Zone 2 bosses, but before the exploding Death Egg object seems to indicate that it was meant for the game's ending sequence.

By using the PAR code 05165A:04F2, we can force the object to spawn as the sky begins to brighten:


As can be seen in the above video, the fleeing Eggman object actually matches the vertical movement of the exploding Death Egg quite well. Perhaps at one point, the Death Egg was further to the left on the screen, and this scene showed Eggman heading towards it, setting the stage for the second part of the story.

14 comments:

  1. Huh. So apparently, the Genesis can indeed shrink sprites. Not sure about growing them, but I know the 32X and SNES can.

    Makes you wonder why the Death Egg vanishes even though it's still there in Sonic & Knuckles.

    ReplyDelete
    Replies
    1. You must've missed the part about the software scaling routine, which is also used to shrink the Marble Garden Zone 2 boss.

      The Mega Drive can't scale graphics natively, we're literally just talking about a routine that copies the input art to VRAM, skipping over entire columns and rows of pixels in order to make the the output smaller.

      The Egg Robo enemies in Sky Sanctuary Zone run this routine in reverse, causing their sprites to expand rather than shrink. So yes, it can grow them too.

      Delete
    2. The only one in that list that does hardware scaling is the SNES. The 32X renders everything in software. I'm surprised you missed the Mega CD, which actually does have a hardware scaler.

      Delete
    3. Well, I'm silly. Thanks for clarifying.

      Delete
    4. The Death Egg vanishes if you play as Sonic 3 alone but not as Sonic 3 & Knuckles (in which case it just keeps falling).

      Delete
  2. What an interesting read! I learned about this object back in Sonic Cult, but this is the first time I read about its connection to Launch Base Zone. I *may* need to lurk moar, though.

    Nevertheless, this makes a good addition to S3&K, and it looks the devs timed it well: The object lasts 10 seconds until it disappears; this is the same time that passes in S3&K between the Death Egg appearing on screen, and the gondola falling through the bottom of the screen without the Death Egg exploding. May be interesting to port the object to S3&K and see how it plays! How difficult is to actually move the Death Egg more to the left? ;P

    Nice post as always!

    ReplyDelete
    Replies
    1. It would be easier to move the object to the right...

      Delete
    2. I thought the same at first, but the entire object' animation occupies 75% of the screen from the center; moving it to the right to align it with the DE current position will cause the most important bit of the animation to occur off-screen.

      Still, moving the DE to the left would not look quite right for the scene, in my opinion. I think there should be a compromise between both options.

      Delete
    3. What if it was meant to not go to the death egg because it's for sonic 3 to show eggman running away not going to the death egg

      Delete
  3. Is it me, or do the flash happen as soon as the death egg "touches" the ground? :P

    ReplyDelete
  4. "Sonic 3 Complete" could use this cinematic.

    ReplyDelete
  5. Is there a way to restore it in S3&K's disassembly?

    ReplyDelete