I'm a software developer living in Melbourne, Australia.

Utensil Quest

Made in 48 hours, for Global Game Jam 2015.

A cooperative stealth game. One player must sneak past the guards to retrieve the utensils they need to eat their dinner. The other players control the security cameras. Player one relies on their buddies to tell them where the guards are and when and where it's safe to move.

Me vs Me

Made in 48 hours, for Global Game Jam 2014.

Me vs Me is a competitive hot-seat game. Players take turns controlling the one character, a gummy bear roaming across a giant birthday cake. Each player can only control the gummy bear for a few seconds before control switches to the other player. Player 1's goal is to cover the cake in icing, as many squares as they can. Icing will appear on each square the gummy bear walks on while under Player 1's control, and Player 1 gets one point per iced square. Player 2's goal is to steal as many birthday candles as they can, and take them to a candle drop-off zone to score points for them.

Player 1 Keys:
move up/left/down/right
rotate camera left
rotate camera right
Player 2 Keys:
arrow keys
move up/left/down/right
rotate camera left
page down
rotate camera right

Download for:


Made in 48 hours, for Global Game Jam 2012.

The aim is to score as high as possible. Press up and down to move. Press space bar to launch stream and jump. Game over when you run into your previous tracks. Players can jump their existing streams, or go under their previous jumps, to earn more points. The more risks you take, the more you score!

Awarded "Most Fun" by the Tasting Panel!

Note: this is the "Director's Cut" version, slightly altered from the version on the GGJ site.

Start stream / jump
Arrow keys
Move up and down
Toggle Fullscreen

Download for:

The Crusade of Halvard

Here it is, after months of hard work!

Take command of a team of warriors to kill a demon and his evil minions. Just tell your troops what to prioritise and they'll do the work. You will need the right combination of healers, defenders and attackers, as well as the right orders, to achieve victory.

Created by a team of six programmers, led by me, joining forces with a team of six artists, for the Academy of Interactive Entertainment Melbourne final project.

If you're having issues running the game, click here.

Rocket game

Written for the AIE graphics assignment. Fly a rocket into targets, blow them up for points or crash into the ground to lose points.


The Crusade of Halvard prototype

This is the playable gameplay prototype for The Crusade of Halvard (working title "Raid Manager"). This was part of my team's final year project at the AIE.

  • Written in C# using XNA.
  • Written by me, Michael Truscott and Aaron Cox.
  • Requires the .NET framework.

Anonymous file storage

Client and server programs for storing and retrieving files by their md5sum.

A university assignment, written for Computer Communications 352.

  • Written in C, using pthreads and sockets.
  • Requires *nix (and a compiler, it's source only.)
  • Multithreading, using pthreads.
  • Client-server architecture, from scratch, using sockets
  • A type-safe linked list written entirely in C, using the preprocessor.

AI War

Written for the AIE AI assignment. Two computer controlled teams of soldiers fight for control of territory locations.

Server and client modified from versions provided for the assignment. AI code and network packet format written from scratch.

  • Written in C++ using the Gamebryo engine and RakNet.
  • Requires Windows.
  • Requires DirectX 9.
  • AStar pathfinding.
  • AI behaviour.
  • Client/server communication via RakNet.