Flight of a Dragon is a retro game for the Uzebox open source game console, a bit of 8 bit madness involving an ATMega 644 and a bit of electronics to get it producing a video signal and accepting input from an SNES controller. Thanks to emulation, you may also try it out within your browser!

Flight of a Dragon (demo) screen
Flight of a Dragon (demo) screen
Flight of a Dragon screenshots

If you want to play right away, proceed here (note that it needs a reasonably powerful computer and a keyboard, it won't likely play well on a phone or tablet).

You play as a dragon protagonist who must escape from his prison in an empire which wanted to break and train him to use him as a war machine in their conquests.

As such he is a powerful fire-breather who can easily storm through opposition, however the empire has a large and well equipped military all around who can grind him down if he wasn't careful. It is also important to be fast, to flee before forces could be mustered to thwart his attempt.

He doesn't want bloodshed, to be remembered as a monster, so he should be cautious to not cause more losses than necessary, and he may also help people (prisoners) on his way, supporting a probable uprising against the power.

Technicals & Source

The Uzebox console is built around an ATMega 644 chip which has only 64Kb of ROM (60Kb usable) and 4Kb of RAM, running at 28.6MHz, however it also has to generate the video signal directly (no video hardware at all, not even that much like in an Atari VCS).

The core of the game's display is a tiled 16 color video mode with quite a few tweaks including the sprite library, methods to generate a colorful sky, parallax scrolling clouds and likes at 192 x 196 pixels resolution (pixel aspect ratio is 1.5:1, so pixels are wide).

You may look around in the game source on its Git repository.

Some bits on art & progress

Oldschool platformer dragon
Oldschool platformer dragon
First concept art

The game began with an elaborate concept art about a year ago, after I devised a complex video mode for the Uzebox (integrated within its kernel), back then just toying with the idea without any actual idea on how it would actually become a game.

It is not easy to develop a game for such limited resources like the ATMega 644 offers (not that the chip was bad, just it wasn't especially designed for this wicked purpose :) ), I started out with realizing random ideas with a coarse goal of some platformer, which only later got some form and vague overall concept when I knew what I could accomplish.

Pixel dragon run sheet creation
Pixel dragon run sheet creation
Later run sheet

The art itself went through several revisions, the run sheet above was created after I vaguely knew the limits for the dragon's sprite, making it more fluid compared to the version used in the first concept art (as I realized I can fit more in the space I imagined for it before). Then some time later even that was refined to arrive to what the game finally contains.

Level designs, tilesets and such also went through several revisions, quite visible on the differences between the initial concept art and the final game. Initially I didn't even knew I could solve placing my sprites behind various map elements, so it didn't have such grass like the actual game. Not that it isn't still with flaws. That blue water in the cave still has to go some time in the future (water surfaces appear blue because they reflect the color of the sky...).

Free source

The game and its art is released under General Public License Version 3 or Creative Commons BY-SA Version 4.0, as usual for games released for the Uzebox console. Feel free to play around with it, hope that tricky mess is at least as enjoyable as the game itself (if you like that sort of stuff)! ;)


No comments so far. Be the first to comment!

Make a comment


  1. Please be polite (Leave all your trolls in their respective caves).
  2. If #1 fails, don't feed 'em. They bite.
  3. No links allowed. It won't pass. Neither chains. Use '(dot)' notation.
  4. Spam reeks.
  5. Text is (some day will be) formatted with Markdown.
  6. Your mail address is only visible to me: I understand you also don't like #4.
  7. The mail address you provide is also used to fetch your Gravatar.
  8. Danger! High voltage! Right between your "Post Comment" button and ground.
  9. Still want to comment? Go ahead! :)