• Apocalypse Post

    Apocalypse Post is a procedurally-generated, turn-based tactical shooter set in a post-apocalyptic future, where you carry mail between survivor camps in your trusty delivery van, all the while fending off attacks from bandits and zombies. Between each delivery run, buy weapons and armour to upgrade your van to cope with ever-increasing numbers of enemies.

    I made this game for the 2017 7 Day Roguelike game jam.


  • Howl

    Howl is a turn-based tactical game, where everything has an alternate form that is revealed under moonlight. I started this project to teach myself the rust programming language, and to experiment with entity component systems.

    The game is still in active development. Check out the source code on github.

    Download latest builds:

    Note that the linux version of the game depends on sdl2, sdl2_image, and sdl2_ttf.


    • movement: arrow keys
    • fire: f, f again to fire, arrow keys move cursor, n/m switch targets
    • close door: c followed by arrow key


  • Skeleton Crew

    I wrote this game for the 2016 7 Day Roguelike challenge.

    Fight a variety of undead enemies with a variety of weapons on a procedurally generated spaceship. Damaging the hull of the ship causes sections of the ship to be depressurized, and their contents sucked into space, including you!

    Play in browser:

    Download (bundled with node webkit):

    Source code


  • Glacial

    Play in browser

    A roguelike I made in Februrary 2016.

    You are a faithful servant of the Pyro God. You returned to the former home of your ancestors in search of his ancient cathedral, only to find the city a frozen ruin.


    I made this game as part of One Game a Month. Some of the code, mainly low-level data structures and basic utilities, was reused from my previous game, Bugcatcher. I also reused the core concept of its engine, though re-implemented the engine from scratch.

    If I had more time, I would have added deeper character progression. Currently, each time you descend to a new level of the dungeon for the first time, you receive a boost to your current health, which is also used as mana for the fireball ability. I intended to add a shrine hidden on each level that could be used to gain additional pyromancy abilities.

    The code is on github: github.com/stevebob/glacial

  • Bug Catcher

    Play in browser

    This is my first attempt at writing one game a month. It's a turn-based dungeon crawler in the style of traditional roguelikes. All the characters in the game are bugs. Each bug has an ability and combat stats. You can "channel" a bug and gain access to its ability and stats.


  • Top-down Sidescrolling Engine

    Demo (runs in browser)


    A partially-complete game engine I wrote in 2014 in javascript/html5.


    • circle/line-segment collision detection and processing
    • framework for animating top-down 2D characters based on a skeleton description and a collection of images
    • phong illumination in webgl
    • dynamic lighting and visible area detection
  • Pitch Controlled Game

    Play in browser


    A game I made for UNSW ArtsWeek 2014. Control the cat by making noises of various pitches. Collect the coins but avoid the ghosts.