Current projects

Perentie

Perentie logo, featuring the smiling head of Petra the monitor lizard, next to the name in a futurist pixel font.

Perentie is a Lua-based graphical adventure game engine. The design is heavily inspired by LucasArts' SCUMM and GrimE adventure game engines.

Perentie is designed for the hardware constraints of Pentium-era MS-DOS. You can run it under DOS, Windows 3.1/Windows 95, natively on any platform that supports SDL3, or embedded in a webpage.

Maura & Ash

Person wearing blue coveralls standing in the cockpit of a spaceship, watching a meteor pass the window. There is a blue inventory bar at the bottom of the screen.

Maura & Ash is a point-and-click adventure for MS-DOS, set in deep space on a barely-spaceworthy cargo ship. It is the first game made with the Perentie engine. I drew the pixel art, composed the OPL3 music, and wrote a stupid number of unique responses for it.

Under a Killing Moon/The Pandora Directive - Mouselook Edition

Tex Murphy: Under a Killing Moon by Access Software is a fun game, with state of the art (for 1994!) 3D environments.

There is one small downside: the game was developed before first-person 3D controls were standardised, and features a truly unique control scheme. Instead of the mouse being used to adjust the player direction and head tilt, it's used to adjust forwards/backwards velocity and turning velocity. This is very awkward, and on DOSBox and Pentium systems the movement code runs too quickly.

While this may be an accurate walking simulation for a whiskey-soaked PI, it's a rough experience for players. All of the ingredients for a good control system are in the engine, so this mod patches the movement code and replaces the mad controls with the more common mouselook + WASD.

ScummVM

Logo for the ScummVM project

ScummVM is an engine which allows playing older narrative-based games on modern platforms, preserving them and making them more accessible to new audiences. For the past few years I have been part of the ScummVM team adding support for Macromedia Director, and the thousands of Windows/Macintosh titles that were written using it.

New fixes are merged in daily, so get yourself a ScummVM daily build if you want to check it out.

Mr. Crowbar

Googly-eyed crowbar ensconced in a toy wrapper

Mr. Crowbar is a Django-esque model framework that makes it super easy to work with proprietary binary formats while reverse engineering.

File formats are described with Python classes that allow ORM-like free modification of structures and properties, which in turn can be validated and converted back to the binary equivalent at any time.

The eventual goal is to provide a library for storing file format information that retains the readability of a text file, while providing instant read/write support for almost no cost.

The boneyard

ELM327-based car joystick

The author playing their best ever game of OutRun

writeup - github

I wrote up how to turn (almost) any car with a CAN bus and a OBD-II port into a game controller, using some Python and a really cheap car diagnostic adapter.

Show Your Working

Backtrace of the ct486 core in MAME

writeups

Show Your Working is a series of writeups for fixes to large-scale open source projects, with an emphasis on how to troubleshoot large bodies of code you've never seen before.

Unnamed Horrible Brand Twitter Simulator

Person using a form to respond to a customer complaining about finding a spider in their food

Almost ready for release, just needs some final assets and polish.

Unnamed Rotoscoped Parkour Game

Vector person dash vaulting a polygonal traffic bollard

writeups

On ice until I can rethink the project scope.

Effects Pedals

A couple of effects stompbox boards

I can't build enough of these! One day I'll explain further.