Over the past few years we've been treated to completely revised and improved versions of Sonic CD, Sonic the Hedgehog, and Sonic the Hedgehog 2 for iOS and Android, but the best of the original Sega Genesis era, Sonic the Hedgehog 3 locked on with Sonic & Knuckles, has yet to arrive on mobile platforms. The developers behind the previous releases have come up with a proof of concept vertical slice of the beloved game running on iOS and now hope to convince Sega to fund actual development. Here's a video of the demo in action showcasing Angel Island Zone and a lengthy blog post detailing the technical challenges in bringing Sonic 3 up to modern expectations.
Aside from the tricks used to make each level more interesting visually, the levels themselves were also filled with various gimmicks and events with a wide range in degree of complexity. For a legitimate remake project, all of these things would have to be duplicated in exact detail. This is something with which we took great care in re-creating Sonic 1 and Sonic 2, and so, we’d expect no less from ourselves in the case of Sonic 3 (& Knuckles). However, in some ways, this makes the job of re-creating the game somewhat more difficult than when the game was first created from scratch, because instead of being the ones who make the decisions, design the methods, and plant Easter Eggs and other subtleties on a whim, we instead have to fully understand and accurately reproduce what was already done in a way that is virtually indistinguishable from the original.
This is actually where our different methods come into play. By preference, Taxman has acted mostly on the basis of observation, carefully observing what happens at run-time and then reproducing it with his own methods. When I was brought into these projects, one of the reasons was that my understanding of Sonic the Hedgehog came from an understanding of the original assembly code itself, and experience with reading and manipulating it. This meant that I was able to take specific methods from the original code and apply them to whatever else I was doing, which in this case, was re-creating the games using the RSDK. It was especially handy when observation couldn’t readily, or at all, explain what was happening. Observation also has its merits, though, as it’s a great time-saver in straight-forward cases, and there are advantages to writing your own code without bias, such as the potential for more-easily creating cleaner and more versatile code, and guaranteeing a from-the-ground-up understanding of the method. That’s not to mention how repeated observation can expose strange exceptions. The code, too, could easily expose an obscure behavior in some cases, or at the very least, be used to easily obtain exact values. I tend to move between the two as it feels appropriate, and between the two of us, we seem to catch pretty much everything.
While I'm not much of a fan of touchscreen gaming when it comes to platformers (I prefer a control pad and actual buttons for precise control), I eagerly bought all three Sonic re-releases for iOS as they were released. They play very well for iOS games largely because of the loving care that went into development and the simple fact that Sonic only needs one action button to play rather than separate buttons for jumping, shooting, item use, etc. as more complex games require. I'd really like to see Sega get involved with this pitch and greenlight proper development. More mobile releases would be nice, but this version would really fly on modern consoles and PC. One assumes Sega has crunched the numbers on this sort of thing and come to the conclusion that it's not financially viable, but I can't believe that one of the best hits from the Genesis era could be unprofitable in today's market. Sonic isn't what he used to be, but his original adventures still stand the test of time.