|
||||||||||||||
Under the Microscope: Omakase! SaversOmakase! Savers is an adventure game for the Saturn that was published by Sega in 1996. It tells the story of three girls who stumble upon an ancient secret that gives them special powers, which they then use to fight ghosts. …Or something like that. I’m not sure because I can’t read Japanese. But the game is cool — its visuals are delightfully bonkers, and it’s got lots of references to Sega and Sonic: Japanese cheat sites (like this one ) indicate that you can get some special effects if you use special names for your saved game:
I decided to check if there were any other special names, and I wasn’t disappointed — there are! They are detailed below. I also found a hidden debug mode in the game data. I’ve made a patch to enable it, which is also described below. Special namesBy diffing memory snapshots, I found that the name you enter when starting a game gets copied to a buffer starting at memory address 06047ecc . The characters are stored in Shift-JIS format. The function at 060664bc compares that buffer to each of the special names shown above. These are also stored as Shift-JIS with no obfuscation: 0606c110 8140 # ""
After checking each of the special names, the same function checks to see whether the first character of your name is . If it is, it uses the remaining characters to set different effects — which episode to start on, which character to use, and whether to enter battle mode. To start on episode 2, enter the name : To start on episode 3, enter the name : To start on episode 4, enter one of these names:
Episode 4 starts with each of the characters receiving a special message on their Sega Saturns: There are also special names for playing each episode’s battle:
I found these by replicating the function’s logic and then running a brute force search over all possible names. My script is here . There are lots of names that produce each effect; above are the ones that occur first lexicographically. Debug modeThis game also has a hidden debug menu. It doesn’t seem like you can access it with a cheat code or special name, but you can get to it by changing one byte: 0606355a e200 # Switch to mode 00 Like a lot of games, Omakase! Savers has a primary loop that checks a “mode” index and then executes the code associated with each mode. The patch causes the game to switch to “mode 0x0” instead of “mode 0x10” when you choose the first option at the main menu. The debug menu (or Select mode ) screen looks like this: The Status set page allows you to adjust various game parameters. Story is the episode number. Ivent seems to be mislabeled — it controls which character you play in episode 4. Turning Damage off makes you invincible in battle mode. Return to the top level menu and choose Gake Qst Start or Game Btl Start to make the changes take effect: Film Check allows you to play all of the movie clips — both the cutscenes and the little battle animations. Press A to play them in a small box and B to play them in a larger, buggier one. If you’re interested in translating this game, do check out this debug menu — being able to switch to arbitrary locations should be very useful. Get the patch from SegaXtreme ! OutroThis game was chosen by privateye , who won the Shining the Holy Ark Rhythm Challenge by being the first to demonstrate his mastery of the hidden mini game discussed in my last article. Thanks to all who played! For more on Omakase! Savers :
For more on retro game reverse engineering, see my Rings of Saturn blog.
|
||||||||||||||