Wednesday, January 10, 2018

The hidden homage

While on the subject of special stages, have you ever noticed how the palettes for the special stages in S3A are loosely based on those of game's main levels?


Stage 1 forgoes the color of Angel Island Zone's grass, but the blue skies make it clear, this is act 1 we're talking about. Meanwhile, stage 2 seems to reference Hydrocity Zone's underwater colors rather than its above-water palette:


Stage 3 is based off Marble Garden Zone, but because it's missing both the green grass and the grayish-purple marble colors, you wouldn't really know that from just looking at it:


On the other hand, stage 4's red and white motif under a black sky is clearly reminiscent of Carnival Night Zone:


Stage 6's bright blue and aqua colors are based off the act 2 background of Icecap Zone:


Finally, stage 7 celebrates the checkerboards prevalent throughout Launch Base Zone, substituting white for the yellow sandstone color seen in both acts, but characteristic of the brick buildings from act 1:


Similar connections exist between Sonic & Knuckles' special stages and that game's levels, though generally speaking, they're not nearly as obvious.

But wait, I completely skipped over stage 5! Turns out, it's a clear match for the interior sections of Flying Battery Zone:


This further cements the fact that Flying Battery Zone was originally Zone 5, and to my knowledge it's the only instance in which this fact is exposed to the player without their use of cheat codes.

7 comments:

  1. Always thought this was neat. That being said, what was special stage 8 supposed to be??? https://i.imgur.com/ApxXj8p.png

    Also, do you know what the "Special Stage 1" is for in the level select? Is it remnant of the super emerald special stages?

    ReplyDelete
  2. This blew my mind. How did I not recognize this earlier?

    ReplyDelete
  3. Comparing it up like this makes it so obvious, that I can't understand how couldn't I notice earlier...

    ReplyDelete
  4. Could it be, that they made Blue Sphere's pallette fit the locked-on game.

    Late comment, I wonder if you see it. When Sonic & Knuckles was new I tried some other games locked on, to see what happens. As we know, in most cases we get Blue Sphere (NO WAY? NO WAY!) with a differente stage chosen, somehow based on the game. Sometimes it seemed to fit: I remember the Special Stage chosen when Dune 2 is locked on to look kinda desert like. Was that just a happy accident?

    How does Blue Sphere choose which stage to play?
    Are some games values hardcoded for games to trigger a certain Special Stages?
    Can Blue Sphere's code somehow find a game's first used palette?
    How does Blue Sphere actually choose which stage to play?

    ReplyDelete
    Replies
    1. Years late and I'm not Fred, but:

      The stage is procedurally generated based on the serial number of the game. It doesn't maintain a master list of all Genesis/Megadrive games.

      No, the only hardcoded checks S&K uses are for determining if you attached Sonic 1, 2, or 3.

      Probably not, since palettes are not universally handled the same way, game by game. S&K's ROM doesn't really have any way to determine what the "first palette" would be since that would require the game to actually run first, and that's ignoring the fact that the palette changes a lot, especially at the beginning of a ROM's execution as it goes through copyright, logos, etc. More often than not you're only going to see a palette appropriate for displaying the blue SEGA logo on a black screen. Nothing in a game's ROM is akin to "okay, this is the first palette I'll use."

      Already asked and answered: It's procedurally generated based on the ROM serial number. I don't know if anyone's ever actually reverse-engineered how it works.

      Delete
    2. Quick correction: There is one last hardcoded check: In order to determine if there is even a cart attached, it checks for the string "SEGA" at a specific location in the attached ROM. All legit ROMs have this string in this same location.

      If it finds the "SEGA" string, it then checks the serial number for any known retail Sonic 1, 2, or 3 releases.

      If it's Sonic 1, it launches Blue Sphere with a flag unlocking all the levels.

      If it's Sonic 2, it sets a few different flags, then does a far jump into a second ROM from the S&K cart that is the actual Knuckles in Sonic 2 game code.

      If it's Sonic 3, it actually runs Sonic & Knuckles in a special mode that enables access to the Sonic 3 ROM's data and enables specific features it'll disable otherwise, such as save RAM (S&K doesn't have SRAM itself, so it relies on the Sonic 3 cart's SRAM.)

      If it doesn't find a cart, then it runs Sonic & Knuckles without that mode flag set and it runs the S&K intro instead, which is coded to allow for selection of Sonic or Knuckles, and forces a start on Mushroom Hill.

      Delete
  5. One detail I noticed is that the backgrounds of each special stage also all match the time of day each corresponding zone seems to take place. Further cementing the idea that Flying Battery would originally have taken place during nighttime rather than daytime since Special Stage 5 has a nighttime background.

    ReplyDelete