So... yeah. A couple years ago I happened upon the Sonic Physics Guide, and having wanted to create a Sonic game/engine for a very long time, I decided to give it a shot. And this is the result.
This is the first demo (of probably a few), which includes most everything that's actually complete (read: not horribly incomplete and broken) so far. It features 5 playable zones (1 act each), plus a full-length bonus zone (Marble Zone, all 3 acts, explained below). The levels featured in the demo were originally built as (and expanded upon) basic test levels, hence their varyingly short lengths and lack of second acts thus far (fleshing out the level layouts has been a bit lower on the priority list in favor of refining the engine itself and attempting to make the zones' art not suck so much).
Click Here to Download (32 MB)
The game is written in C#, targeting the .NET framework 4.0 and using XNA 4. I'll provide links to the installers for those that happen to be missing either of them. .NET XNA
Gameplay & Technical Features
- 5 playable zones + 1 bonus zone
- 3 Playable characters
- Debug mode: Behaves just as you'd expect out of any of the original MegaDrive games
- 3D special stages
- 4-7 bosses (depending on how you count them)
- [Future] S3&K style save system
- [Future] 2-player vs (ala Sonic 2) - Local splitscreen with the additional possibility of online multiplayer
- XInput gamepad support (w/ vibration support)
- Customizable key bindings
- Autodemo system
- Detailed audio management system
- A certain uncommon feature that may be discussed at a future time
The internal button/key setup is designed to correspond to the 3-button Genesis/MegaDrive button layout. Default controls:
- Arrow Keys: Move/Navigate menus
- Z [equivalent to the A button]: Cycle object (debug mode)
- X [equivalent to the B button]: Cancel out of some menus/options / Toggle object placement mode (debug mode)
- C [equivalent to the C button]: Jump / Place object (debug mode)
- Enter [equivalent to the Start button]: Pause/Unpause / Menu Confirm
Button mappings preconfigured for the XBox 360 controller for Windows
Cheats & Other Obligatory Fun Stuff
Level Select: (Hint: Many should already know this one)
Debug Mode: (Hint: When you figure out the level select code you'll know this one too)
Bonus Feature: Marble Zone Demo
In order to put the engine's general accuracy to the test (and keep it in check), I recreated all 3 acts of Marble Zone in their entirety to compare the gameplay experience to that of the original. While some of the more intricate details can't be perfectly matched to the original (object movement timing, etc), overall the zone delivers a fairly authentic experience.
DISCLAIMER: I'm no musician, and I've not been in a position to have custom music made by someone else. If I could I totally would. In any case, I went with the only remaining option: almost all of the music in this game is recycled from Sonic 1, 2, 3&K, and 3D. The few tracks that aren't were borrowed:
DuckTales - The Moon (Sonic the Hedgehog Remix) - by ParagonX9
Sonic CD - Tidal Tempest Present (Sega Genesis Remix), Little Planet (Sega Genesis Remix), Metallic Madness Good Future (Sega Genesis Remix), Speed of Sound (Sonic 3 Remix) - by TheLegendOfRenegade
If it wasn't for the fact that these tracks serve their purposes beautifully, and in a couple cases are the only ones I could find that fit those purposes, I'd refrain from using them in such a manner. Nonetheless, for all intents and purposes pretty much all the current music is just placeholder.
EDIT 7/26: Taking into account some of the responses this has received so far, and because there was a couple things I found that needed changing/fixing, I've made some modifications and replaced the download.