This is a hack which adds a time attack to the original Sonic the Hedgehog 2 for Genesis. The objective of the game is to play through as fast as possible to set new best time records.
A list of features, changes, and glitches can be found in the readme. The glitches are not game breaking. World record times are listed in the hack but are not usable at this time. They will be incorporated in a possible future release.
The patch is in xdelta format due to shifted data resulting in IPS patches containing original code. The ROM should be in BIN format.
Sonic 2 Time Attack
Credits: redhotsonic
==Current Features==
*Sonic & Tails is the only character selection available, due to saving SRAM space with time records. Due to this, the original "1.5 player mode" is available for play. However, taking advantage of this feature will result in a 10 second penalty, as soon as a button press occur with the second player's controller. A plus is that you can then keep control of Tails and the penalty won't be applied again. Once the CPU has control of Tails again though, the 10 second penalty can happen again, so don't press anything on controller 2 unless you want that penalty again.
*Score is gone, due to this hack being completely about time, not score. The points art that comes out of badniks and bumpers have been removed.
*A new HUD that displays your Best Time (in place of Score), your current time, and number of rings. Centiseconds have also been added, which also hit every digit.
*Various sfx are now inserted throughout gameplay, alerting you on your status. (e.g. Failing, Breaking a record, 10 second countdown, etc.)
*A new "End of Level" results screen, comparing your current time to your best time. The appropriate sound effect will play based on whether or not you beat your record.
*Extra lives are also gone. The 1-up monitor has been replaced with blank monitors If you have Checkpoint mode off, you only have one life. If you have it on, you have unlimited lives.
*SCZ and Special Stages are removed, as you can't go faster than they already go, rendering them redundant.
*WFZ and DEZ's ending have been slightly altered so the "End of Level" results screen would still make an appearance.
*Multiple bug fixes and optimizations, which includes ways to prevent cheating. Speed cap, however, has NOT been removed, so the game plays more like the original Sonic 2.
*Exit level function. When playing a level, pause the game, then press A. The game will then exit the level and go back to Stage Select.
*Level Select slightly edited. It will also tell you if you're in Normal Sonic Mode or Super Sonic Mode.
*Your Times Menu. A menu to display all your best times; Normal Sonic Times, Super Sonic Times and World Record Times (not accessible in this build).
*Strike System added. Multiple checks every frame to see if you're cheating or not. If it suspects you've cheated, the game will lock-up and the "Game Over" jingle will play.
*S3K Priority Manager added, to speed the game up a little, due to the aforementioned Strike System slowing the game down a little.
*Save-State Denial System added. At any point, you can make a save-state. But, if you make a save-state in the middle of the level, you will NOT be able to load it. If you do, the game will instantly lock-up and the "Game Over" jingle will play. You can however make save-states in level select, etc, and still load them. However, if you do, when entering the level, the "Best Time" art may appear glitched, and it is never beatable. If this occurs, just reset the game.
*SRAM protector. At the beginning of the game (before the SEGA), it checks the SRAM to see if you've edited it in any way. If not, the game starts. But if you have, you'll be presented with a red screen and the game just sitting there. At this point, with NO warning, all your times and save data will be erased. Reset the game, and the game will start up with all times back to 9'59"99. So do not try to edit your times in the SRAM file; THIS IS YOUR ONLY WARNING!
*Lots of ROM data and RAM addresses have been moved about and jumbled in order to make hacking/cheating the game harder to pull off.
*Delete Saved Data and Times option. To get to this, on the Title screen, highlight options, then hold A+B+C and press Start. You'll come to a screen, and it will ask you to confirm if you want to delete everything. If not, select no and press start, and it will go back to the Title screen. Otherwise, select yes. A picture of Dr. Eggman will appear and the "Game Over" jingle will play to signal all your data has gone and the game will lock-up. You then must reset the game to continue on. For security, if you come to this screen, "No" is already highlighted.
*Replay data. Whatever level you play, it will always record your input, allowing you to re-watch it again later. For more, see the section on Replays below.
==Options==
In the slightly altered Options Mode, you are able to activate/deactivate different "modes" that can have quite the effect on how you play the game. At the start of each act you play, it will briefly display what modes you have enabled in the bottom right-hand corner of the screen. Here are the three options available.
*Checkpoint Mode If off, there are no starposts. If you die in a level, the game will go back to the level select screen. If on, there are starposts. If you die, you will restart from the last checkpoint you reached. Although, the timer will resume from when you died, and NOT from when you hit the checkpoint.
*Super Sonic Mode If off, Sonic can never turn Super. If on, once you've collected 50 rings and jump, Sonic will turn Super. There are two separate time recordings for both modes: "Normal Sonic Times" and "Super Sonic Times". Just note that when in Super Sonic Mode, you CANNOT access Death Egg Zone, due to the fact that there are no rings.
*Kill Me Mode If off, then if you fail to beat your best time, you will hear the fail sound, but can continue to play the act. However if on, then if you fail to beat your time, you will hear the fail sound but will die instantly.
==Replays==
Recording your own replays in this game is easy; it's automatic. Play a level, and finish the level, and when you return to the level select, your replay data has been recorded. Hold A, B and C and press start on the level/act you just played, and it will replay it for you. The best thing about it is, you can save these replays and play them again later on! Replay data is held between RAM address $FFFFF100 - $FFFFF5FF. Once you've done a level and gone back to level select, rip the data in this section of RAM and save it. That way, later on, you can re-insert this data back in and watch your replay(s) again. Best of all, you can share your replays with everyone else!
THIS IS A WIP! So please be aware of the following:
*The replays are never in sync. This is the main bug. If you move straight away when recording, then replays are generally 1 frame behind. If you start recording late (don't move as soon as the title card moves out), replays can generally start early. It's either this, or always have replays start late. Because it's never in-sync, replays can go wrong (generally when using platforms). This is a serious bug that's aimed for fixing in a future release.
*When you play replays, it will NOT save your time. So don't think you can send a very fast replay to someone else giving them a fast time. They can watch it, but it will not record.
*Be aware of CNZ prize slots and CPZ tubes, etc. These are random all the time. You could record a replay of going one way in the tube, but the replay shows you going another way, making the replay more than likely fail and out-of-sync.
Please be aware, if you enter the "Your times menu", your replay data held in $F100 will be gone; as "Your Times menu" uses this space also.
*Entering options will also erase replay data.
*To exit replays, press start.
*Replays will only be recorded if you finish the level.
*If you commit the 10 second penalty by pressing something on controller 2, you cannot create a replay
*Replays will not be created if Check-point mode is on (unless you did not die).
==World Record Times (Future Addition)==
In the future, the idea of this project is to share your best times to the world by sharing your records online. It is unknown as yet if the online times will be held on the "Retro Channel" or on a separate online database.
The idea is that hopefully, this database will extract all your times from the SRAM, and then submit it to an online database, to see where you stand. This program will also "hopefully" extract the best time from each zone/act and save it to your SRAM. Not as your time, but as the "World Record Time". Then in a future build, from the game, you can see the best times in the world by going to "Your Times" menu and picking "World Record Times".
Three reasons why "World Record Times" isn't in the current build:
*It's still unknown if it'll be hosted on the Sonic Retro channel or on a separate database.
*If "Retro Channel" is selected, then that needs to be completed first.
*In order to get the hack ready for Sonic 2's 20th birthday, this feature was temporarily left out.
No-Intro Name: Sonic The Hedgehog 2 (World) (Rev A)
(No-Intro version 20130710-102701)
ROM/File SHA-1: 8BCA5DCEF1AF3E00098666FD892DC1C2A76333F9