To make it work, you need a few things:
- A ROM, obviously, to get files from. You can try it with Sonic Rush (E3 beta).
- Tahaxan, or some other DS ROM file extractor plus a NARC extractor tool, to extract the files out of the ROM.
- These three scripts. Don't forget to change the extension to .php after downloading!
- Something that runs PHP and has the nuts to handle creating bigass images.
So, you go into the ROM and take from the desired level's NARC files:
- The .bk file, which is the metatile mappings
- The .ch file, which is the graphics data
- The .pl file, which is the palette data
- The .mp files, which are the level map data (one has an "_a" suffix, the other a "_b" suffix)
Now, you put these files into a directory that is in the same location as the three scripts. Then, you run rush_levelrip.php?game=A&level=B to generate the metatile images, which should only take a few seconds.
You replace A with the directory you put the files in, and B with the name shared by the files you extracted, usually a z with two numbers.
Finally, you run srlp.php?game=A&level=B to make the map images. This may take a minute or so to run, Sonic Rush levels are very large.
You replace A with the directory you put the files in, and B with the name shared by the files you extracted, usually a z with two numbers. You can optionally add in &meta=C, where C is a manual override for the metatiles to use. You won't need to use this, unless you're trying to make maps of the hidden island stages in Sonic Rush Adventure.
Also, in case you're wondering, here's how the .mp files are put together: the first word is the width of the level in metatiles (which are 64x64 pixels), the second word is the height of the level in metatiles, and every word after that until the EOF is a metatile ID. Little endian!
Hopefully this will encourage someone to look deeper into the other files that make up levels in the Sonic Rush games, or even start making a level editor!