home industries $projects docs hoff.kitchen metapages

cuteflip

Python/Qt logic-port of the Voltorb Flip minigame from Pokémon HeartGold/SoulSilver's decompilation.

Quality Status: Gold Master

Functionality Status: MVP

License: GPL v3

Pokémon HeartGold/SoulSilver (HGSS) is widely regarded as one of if not the best in the mainline series. Full of content, one of the minigames is known as 'Voltorb Flip': it's essentially a Pokémon minesweeper clone with a few rule changes. Anyway, I really enjoyed this minigame and wanted to play it on my PC - but building a clone just isn't good enough. What I wanted was a fully logic-faithful PC port with the original board generation algorithms and levels. There's a decompilation of the HGSS ROM file happening on GitHub, and thanks to their efforts there is a C implementation (for the Nintendo DS) of Voltorb Flip we can look at.

The decomp is obviously very coupled to Nintendo DS hardware, so while the backend logic (board generation, scoring, randomness, levels) can be directly ported to Python, the graphics and UI had to be made from scratch. I decided on Qt. The rules of the game are:

There are a number of interesting characteristics of the NDS implementation we needed to port:

Video Feature - How to Port Software Between Languages and Hardware!