Dustforce Sprite Extraction

So for the last little while I’ve been trying to extract sprites from Dustforce. It has some really great art and it’s a game I enjoy, which is usually more than enough for me to take a crack and ripping sprites from it. The playable character sprites had already been uploaded by Hitbox Team themselves (Terence specifically), but not any of the other sprites, so I took a swing at the extensionless sprite files. Unfortunately I couldn’t find any documentation on it, and although I found some zlib compressed image data and saw that they were bits of sprites, I wasn’t really sure how to put them together.

I decided to email Hitbox Team, and they replied! Matt Bush, the engine programmer, gladly helped me out with the format specifics, even sharing some bits of the engine’s code. Eventually I managed to construct something that could piece together and spit out the sprites. Unfortunately, these weren’t in a format that could be used for modding, unlike the ones already on the site. So in the end Matt just ended up giving me the original sprites files, which were just like the ones already uploaded and could be used in mods.

Even so, it was really interesting figuring out the format. Anybody who might be interested can check out the code for my extractor on GitHub, I tried to comment it reasonably well and hopefully it’s usable even if you don’t know Haxe. Although, I’m not really sure what it could be useful for. I plan on putting all the sprites up on The Spriter’s Resource, and the game can automatically compile them into the file format itself. But hey, it might just be interesting to check out.

By the way, I’ve reorganised MiscTools, making it a Dropbox folder instead of a zip, This means I can still have all my small programs in one place, but you don’t have to download them all if you only want one or two.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s