This certainly has been an interesting last couple of days, between Sega's challenge to gamers to come up with what game to make next and then Christian Whitehead's surprise response unveiling a remarkable Sonic CD proof of concept port created with his own Retro Engine Development Kit.
Eager to know more about both Sonic CD and the iPhone Retro Engine and Retro Engine Development Kit (or RDSK), we fired off a series of questions. The interview is totally worth a read, but beware, it will only make you want Sonic CD and other games produced by the RDSK even more.
Eli Hodapp: How flexible is the RSDK? Is it tied to a game like Sonic or would something like Castlevania with RPG elements be possible?
Christian Whitehead: All of the actual Sonic CD logic is script driven, so the Retro Engine is more than capable of different styles of gameplay. A game like Castlevania would definitely be possible, since the engine excels at handling 2D side scrollers. Stuff like top down RPG's would be fine too, I wouldn't count it on doing something like a full on 3D racing game though!
EH: What is involved in building a game in the RDSK? Does the it somehow interpret the ROM file to generate levels and sprites automatically? Can you tell us how closely your RSDK relates to the original ROM code?
CW: Using clean reverse engineering, I've been able to extract the level layouts and sprites in a pretty automated fashion. The formats in Sonic CD (especially the PC version) were pretty easy to deduce. I haven't touched the original ROM code though... I don't have that level of understanding of Motorola 68k assembly.
EH: How much research did you do on the Sonic CD game? The physics in your demo look spot on, what was the trick behind that?
CW: Quite a lot to be honest, it owes much to my many years as a Sonic fan. If you go to http://www.sonicretro.org/ you'll see a community that's very interested in dissecting the original games. That's why the demo was made in a short time, I know Sonic inside out, and so have a very clear understanding as to how it can be recreated. It involved a lot of frame by frame analysis of the game running in an emulator to observe how the game (and all its objects) behaves in detail. I could go on and on, but y'know... trade secrets?
CW: Officially, the Retro Engine and RSDK have been in development since March 2008. However, the iPhone version of the engine actually only took a week to set up!
EH: During your month long process of porting what you have so far of Sonic CD, what was your average work day like?
CW: I'm a freelancer and a musician too, so it was sort of in between a lot of this stuff. Lot's of late nights, and giving up partying! But yeah, it certainly wasn't some insane crunch period you hear about at some of the big name studios.
EH: What is the work flow of starting a new game in the RSDK? Say you wanted to remake Gunstar Heroes, what would be involved?
CW: To create a game like Gunstar Heroes, or to literally port it? Obviously a literal port requires a degree of reverse engineering to find out how stuff like level layouts and sprites can be extracted first. But creating a new game in the style of Gunstar Heroes would just be a normal game development process. One thing I want to make very clear: The Retro Engine and RSDK are not magic, it will NOT instantly port a game for you (or toast your bread either). All it does is provide a fast and efficient 2D framework, which has features very similar to what were present in many 2D games of the 'golden' 16 and early 32 bit era along with a nice editors and powerful scripting system. It takes the hassle out of having to set up API's, you can just get down to business.
EH: What are your plans for the future with the RSDK? Has Sega been receptive to your Sonic CD demo? Ideally would you want to sell them the RSDK technology or just a perfectly ported copy of the game?
CW: Personally, I'm only marketing end product Sonic CD to SEGA, not the actual engine. I'm proud of my work and it'd be a shame to let it go and not be able to develop it further for my own future endeavors. The pitch was made to Sega about 2 weeks ago, and after an initial response, I hadn't heard back until they made that blog post. That's what made me decide to show it publicly, they asked what to port and I wanted them to see a clear answer.
EH: In 1990, John Carmack and Tom Hall built a similar demonstration based on their own game engine running the first level of Super Mario 3 titled "Dangerous Dave in Copyright Infringement." Nintendo politely refused their offers to make a Super Mario port for the PC and they went on to use that same engine for Commander Keen. Do you have any similar contingency plans if Sega gives you the cold shoulder and/or sends you a cease and desist?
CW: Gary the Porcupine anyone?... Seriously though, I do have my own game ideas that I'll be pursuing if this all folds up. I really like the iPhone as a gaming platform, so it wouldn't be the last you'd hear from me.
And there you have it! Sounds like amazing technology, and I can't wait to play a game built with it whether it's Sonic CD or some other game. Since we first posted about it, their comments have been flooded by people demanding Sonic CD. If you want to see Sega explore the Retro Engine instead of their current barely-playable emulator, let them know.