Tuesday, August 8, 2017

Welcome to the next level

Internet's out, so I'm posting this from my phone. Earlier today we got our first look at Sonic Mania's competition mode. Through sheer coincidence, this lines up with a subject I was saving for a rainy day.


The Sonic 3 title card object has unused title card definitions for Competition mode, hidden behind a flag which is never enabled. Normally they don't display correctly due to VRAM conflicts with the level graphics, though; the above video is what they look like once those conflicts are resolved.

7 comments:

  1. Do these graphics exist in Sonic 3 & Knuckles, or just Sonic 3 alone?

    ReplyDelete
    Replies
    1. It seems to me that they're the the same graphics used for the course names in the level select screen for time attack and match race. So I would guess so.

      Delete
    2. This is what I recall: the art (which is separate from the menu graphics), like all other Competition mode assets, is referenced from the Sonic 3 ROM. The title card object in S&K still contains the code for 2P cards, but the sprite mappings have been removed, probably when they added cards for the S&K stages.

      Delete
    3. Have you actually considered fixing these cards in Sonic 3 Complete? In addition, could you explain what the conflict is?

      Delete
    4. I am no longer working on Sonic 3 Complete, so no.

      The conflicts are exactly what they sound like; some levels load graphics over the region where the title cards are loaded, which means they garble up as the level is loading. You'd have to either change where the level loads its stuff, or hardcode a different VRAM offset for each title card. I did the latter.

      Delete
    5. For the former, I was thinking of when you were actually working on S3C. Poor wording on my end.

      It kind of sounds like the PRESS START BUTTON text from Sonic 1, only that's an issue with not clearing data thoroughly enough.

      Delete
  2. It Sucks Because I Have A Android And dont know and cant change vram if there is a way please tell me the emulator im using is MD.Emu. thano you

    ReplyDelete