Date: August 2020
Role: Programming, Team project
Factorio is a factory management game by Wube Software. At time of writing, it is ranked the #2 game on steam by ratings, just under Portal 2, and ahead of The Witcher 3. I have worked at Wube software on factorio since August 2017, and am still working there now.


Date: April 2014 - Present
Role: Programming / lead, Team project
freeablo is a FOSS rewrite of the Diablo 1 game engine. I started, and continue to lead the project.

Dungeons & Directories

Date: October 2020
Role: Programming & Art, Solo project
Dungeons and Directories is a short text adventure game that you play in your file browser. This was a solo project, so unusually, I made all the art myself too. You navigate through a dungeon by clicking into folders, and messages are displayed in filenames. I wanted to see how far I could push the concept, without using any runtime code. I was quite satisfied in the end. There is a psuedo-inventory, a locked door for which you need a key, and even a short combat sequence. This approach involves creating a lot of directories programmatically. The final count is 41,514.

Geary Grinder

Date: October 2019
Role: Programming, Team project
Geary Grinder was a three-person submission for Ludum Dare 45. It is a mechanical puzzle game, where you manipulate gear ratios. Our team was two coders and a sound designer.


Date: October 2020
Role: Programming & Art, Team project
LoopLich was a two person entry for Ludum Dare 47. It is a little puzzle game, where you play the same level repeatedly, and have to avoid bumping into your past self. This was the first game jame where I made all the assets myself, which I really enjoyed.

A Bzon Warehouse

Date: April 2020
Role: Programming, Solo project
A Bzon Warehouse was my entry for Ludum Dare 46. It is a satirical typing game in which you play as a warehouse worker.

Doggo Defender

Date: March 2020
Role: Programming, Solo project
Doggo Defender was a solo project in a two man “private” game jam. It is a wave defense game where you defend your dog against zombies. The idea was that we would brainstorm an idea together, and grab an asset pack online (thanks kenney!), and then each set out to make our own version of the same game idea, with the same art assets, and see how they diverged. This format was a lot of fun, I would recommend trying it!

Quick Space Dungeon

Date: November 2019
Role: Programming & Art, Team project
Quick Space Dungeon was a four-person entry for Trijam 44. It is a basic trial and error puzzle game. Trijam is a game jam where each team member can only work on the game for three hours each. I actually thought this one went quite well, given the time constraints, but it’s not a fantastic game to play. We had a game working with just 3*3 hours of work (3 team members contributed code, one was only graphics). The interaction was decent, and I quite liked the bitcrushed graphics, especially because they were so quick to produce (bitcrushed royalty-free images from flickr). The main downside, in my opinion is just that the gameplay ended up a bit shallow, but this might just be down to the limited time we had to work on it.


Date: December 2018
Role: Programming & Art, Team project
Bloodbags was a four-person entry for Ludum Dare 43. This one didn’t really work out. The theme was “Sacrifices must be made”. Our plan was to have a fairly normal top down game with some basic combat, where in order to progress you had to sell (sacrifice) body parts to a psychotic bear in exchange for more powerful abilities, balanced by disadvantages from the loss of the body part.

In the end, we didn’t have enough time to finish very much in the way of meaningful mechanics. The idea of the sacrifices was interesting, but we didn’t develop the core gameplay enough for it to really work. The special abilities need to mix up the normal gameplay, but the normal gameplay never made it to fruition.


Date: August 2018
Role: Programming, Team project
Antromeda was a three-person entry for Ludum Dare 42. This one didn’t really work out. This was my first game jam. The problem here was that instead of coming up with a game idea, we had a visual style and plot idea. We had the idea of an ant civilisation moving across the galaxy, and we had a visual notion of a viewpoint of orbiting planets, but we didn’t really know what to do gameplay-wise. We figured we would get a basic renderer of orbiting planets working and the gameplay would flow naturally. It did not. It does not. Gameplay always has to come first.

Other projects

Miscellaneous FOSS projects I started

  • Glibc version header generator, a tool for building software on new linux distros that will run on old ones.
  • ArtomatixImageLoader, an image loading library for C, C# and python that support various HDR and normal formats.
  • Win10BSFixer, a tool to disable windows updates, because windows 10 tries really hard to stop you doing that

Miscellaneous minor FOSS / Open source contributions

  • OpenMW, a FOSS reimplementation of TES III: Morrowind
  • Hunter, a C++ package manager
  • Nuklear, a C gui library.