Irena Genesis Metal Fury - Dev Blog #1 : The Tile Engine

After publishing the prototype demo of Irena Genesis Metal Fury on SEGA Genesis / Mega Drive, we continued to develop the game with the goal of creating a new demo which will have a new level design. If you’ve already tried our prototype demo available on, you probably noticed that the scrolling is limited and makes the game experience monotonous. That is a huge problem, especially for a shoot'em up with horizontal scrolling that aims to emphasize the level design, (unlike a shoot'em up with vertical scrolling which generally focuses more on the action).

So we completely rewrote the background engine to better manage the map display with the inclusion of collision support for the player and bullets. In order to simplify our work and focus on the game design, we created a tool to generate all backgrounds for each level. We have added various features to our engine such as in-game background transition, changing the scrolling mode and scrolling speed. It will be possible to vary the scrolling speed at different areas of the level and to change the backgrounds on the fly regardless of the scrolling mode defined.

In order to preserve CPU resources and ROM memory, we restricted the map size to a maximum of 2048x24 tiles (16384x192 pixels). After having established some early concepts, we decided to add animated destructible tiles which can use one of four palettes available. Given that the map is stored in ROM, it is impossible for us to make any modification without copying the tilemap to RAM, which brings us to another problem because the SEGA Genesis / Mega Drive only has 64kb.

The simplest method available for us was the use of one or two buffers to copy step by step the tilemap to RAM, which required some CPU resources. So we preferred to save CPU resources by generating the map without using RESCOMP from SGDK. To accomplish this, we had to create our own tools to optimize and exploit our maps created with Tiled in order to integrate them directly into SGDK, which gave us much more freedom in the level design. Thanks to these tools, we can now use more palettes for each level.

In this video that we have shared on YouTube, you can see how our tile engine works with a quick map overview that the stage 1 will have. However, we still have a lot of work to do before reaching a full playable level. The next step will be the level design with exclusive enemy integration. We really hope you enjoy the final result.