Retro-themed projects are a fairly common occurrence in gaming. Developers are constantly drawing inspiration from earlier console generations, using sprite work and limited colour palettes to evoke the atmosphere of a particular time period.
But what happens when making something that looks retro simply isn’t enough? When a developer wants to go above and beyond to ensure their game is as authentic as possible. Well, in that case, you get Tanglewood.
Tanglewood, from Big Evil Corporation, is a brand new Mega Drive game which was developed using the Cross Products Sega Mega CD development kit, the official Sega hardware of the time. It is a 2D platformer that puts you in control a young fox-like creature called Nymn, who has been separated from his pack after night fall. Your aim, over the course of the game is to find your way through each stage, using Nymn’s special abilities, such as gliding, invisibility, and freezing time, to clear the screen and find your way back home to your family.
Dreaming of 16-bit
For Matt Phillips, the creator of Tanglewood, it represented a coming together of two lifelong dreams: creating his own game on a Sega Mega Drive cartridge and making his very own 2D-sidescrolling platformer.
“The idea of making a game for Mega Drive is something I’ve wanted to do since I was a kid,” he says. “Ever since I got my first Mega Drive really, at 8 or 9 years old. That dream sort of never left me. It sort of continued all the way up until adulthood as something I wanted to do. Like an itch I couldn’t scratch.”
As an adult, Phillips worked at many game companies, including Crytek and Dambuster Studios. It was only while working at Traveller’s Tales, however, who had a long history of making games for the Sega Mega Drive including Puggsy, Toy Story, and Sonic 3D Blast, that he was encouraged to follow his dreams of developing for the console.
Tracking down the right equipment
There were plenty of challenges to building a game on a Sega Mega CD dev kit, but the first was actually locating one that worked and all the bespoke parts that went with it.
“Getting hold of a Mega CD kit was a real pain in the backside,” Phillips explains. “They don’t come up very often and it all came in bits.”
Phillips bought the Mega CD unit (pictured above, via the Tanglewood Kickstarter) from Assembler Games, a site for rare video game hardware. The SNASM ISA card, on the other hand, which connects the unit to an MS-DOS PC, came from the US. He also managed to track down some manuals too, which were bought from a third-party seller in Australia. With the machine taking shape, Phillips was finally able to experiment with the hardware and see what he could do with the tools.
Learning a new language
Another obstacle Phillips had to overcome was learning 68k Assembly language. He had hardly any experience working with Assembly, having previously only written “Hello World” on an old Atari ST in code. To complete the project, he would therefore need to greatly expand his skills; the thought didn’t put him off at all.
In fact, “that was one of the things that attracted me to it,” he says. “Because it was something I had always wanted to learn and I thought if I was actually going to make a Mega Drive game, it would be the catalyst to try and learn something [new].”
Phillips first steps were to rip assets from popular Sega games and place them in a prototype level to figure out how everything worked. At this stage, he didn’t even have an artist yet or even a game design, and was just slowly figuring out everything through experimentation and getting his hands on any available resources and tutorials he could find.
“I had no idea what I was doing other than that I just wanted to make a platform game. So, I shoved Sonic in there just to figure out how sprite sheets work and to get the physics right and figure out floor collision. Things like that. It was just so there was something onscreen for me to work with.”
Still, even though he made excellent progress through this method, things weren’t always quite so straightforward.
“One of the biggest issues is that because it is so old it breaks quite a lot,” he tells me. “It’s been for repair several times and it was really annoying if I was tracking down a really hard to reproduce bug and managed to find it and found that it wasn’t a problem with my code but actually because the devkit was broken again.”
Saving time with personal development tools
Developing on old hardware provided a real struggle. So, improving productivity was an absolute must. Phillips came up with his own set of development tools to do this. Among these were a level editor, a sprite editor, and an animation editor. He created all of these on a Windows 10 machine and used a Windows 95 computer with basic network connectivity to transfer the files across to the development kit.
“I tried to automate quite a lot of the processes,” he says. “I made auto-test systems, which sits and plays the game itself looking for bugs. That was a trick I learned at Traveller’s Tales.”
Creating and upgrading his tools saved him a lot of time. He even developed a rule for his tools that if he ever made an adjustment to a level, he should never be more than three clicks away from seeing the change live in the game. This was to allow for quick, iterative design and fast prototyping of new ideas, something that would be infuriating or almost impossible without.
Fighting with player nostalgia
As for the game itself, there were a few issues there too. One of the most pressing was getting the movement right, something that was complicated by player nostalgia towards the console and its games.
“Nostalgia is a funny thing,” he says. “You need to try to make the game like people remember it, not actually how it was. Those are two very different things. Some of these Mega Drive games were absolutely horrific, so you have to figure out exactly what was bad about them and figure out why people remember them so fondly because they are absolute garbage to play.”
To create a satisfying movement system, Phillips added proper physics to the game, so that velocity, acceleration, restitution, and friction is applied to the character and the objects while they are moving. He believes this makes for a more ‘fluid experience’ and one that is more akin to games like Sonic the Hedgehog than side-scrollers like Altered Beast, where the movement is slower and clunky.
Getting creative with colors
On top of that, colors were another huge issue that required consideration. The Sega Mega Drive has four palettes of 16 colors each and three of those colors are reserved for transparency. This meant that he had only 61 colors to work with. That wasn’t the only problem either.
“There are also some rules about where you can place colours of a certain pixel, so you can’t just go throwing those colors anywhere, otherwise it would be a bit easier,” he says, referring to the fact the Mega Drive draws in 8x8 pixel tiles and that each tile can only be composed of 15 colors and 1 transparent.
He explains, “The solution was just awareness when authoring any assets. Our art team practised drawing with these restrictions and designed their backgrounds and character sprites to work with just one palette, or in rare circumstances split up into tiles and assigned one palette per tile.”
Regardless of these limitations, the game makes excellent use of these restrictive palettes, with the colors of the forest environment changing depending on the time of day. What may start out as blue skies and green forests will eventually turn into shades of orange and pink at dusk or exaggerated purples and blues at night. It’s a nice effect that gives the world a sense of time and place.
Fitting the game onto a cartridge
There was also the challenge of compression too. The Sega Mega Drive cartridge can only hold 4MB, as the console itself was limited to addressing just 4MB of a game at a given time. This proved to be a difficult limitation, which required a constant reorganization of code to fit.
“Compression was a very big deal and it is very bespoke compression as well,” he outlines. “It’s not like you can use a standard zip or other types of compressions to compress the data down. It had to be very bespoke and extremely fast to unpack, because of the tiny CPU.” He adds, “There are only certain times of a frame you can unpack data too, so if the game is currently drawing to screen it is not like you can have a thread running off unpacking data in the background.”
The team eventually settled on a custom dictionary/index method of compression. This meant dividing the game map into chunks of 16x16 tiles, with a streaming system that loaded and decompressed one column of the map at a time as the player moved through the level. These chunks were then compressed with SLZ, a compression system that Sik, a notable member of the Sega Mega Drive dev community, developed. This solved the problem in time for the game’s release, but Phillips believes they can still do better next time around.
“This still wasn't the best we could do - for the next game we plan to restrict the map design itself to only work with 32x32 blocks of graphics tiles, which should mean we can fit twice as much data as Tanglewood. Unfortunately, this would have meant redesigning many of the levels to suit, and wasn't a viable option for us with the game already being delayed.”
Tanglewood is the culmination of six years of development, two years of which were spent learning a new language, developing bespoke tools, and assembling all the necessary parts. Now having finished the Mega Drive version of the game, Phillips is finally able to look back on the development and appreciate how huge of an undertaking it all was.
“I had no intention of it becoming this big of a deal. It was something I wanted to do in my spare time and just release like a puzzle game or something, but it sort of grew out of hand, mostly because I was enjoying it so much.”