Binary 9 Studios

After the closure of Runecraft‘s Glasgow office in 2001, I took on a freelance position working for Stewart Gilray, the producer of my last Runecraft project, Soilder of Fortune.

Pilot Advance

Stewart established a new studio, Binary9 Studios. After securing a publishing deal with Ubisoft for Pinball Challenge Deluxe on the Gameboy Advance, he asked me to work on the studio’s second title.

With the working title Pilot Advance, I designed and started development on a physics-based action game in the style of 8 and 16-bit classics, Thrust and Oids.

I had developed a working demo of the game, with a tutorial and several playable missions before the studio’s funds dried up and I was forced to return to full-time work. Stewart later went on to establish Just Add Water and Pilot Advance became Gravity Crash on the PlayStation 3.


I developed Pilot Advance using my personal GameBoy Advance, an EEPROM cartridge and an RS-232 cartridge writer.

Writing builds to a cartridge was time consuming and debugging was difficult. To help, I developed a library that emulated the low-level hardware systems using OpenGL and Win32. This allowed me to create a Windows version using the same game code that ran in the Visual Studio IDE and use all the debugging tools at my disposal.

The game made extensive use of particle effects and featured pixel-perfect collision detection, physics for a tractor beam that allowed the player to pick up and tow objects of different masses, and various types of gravity effects to pull or push the player around.

I also developed a level editor for Windows:

  • Memory efficient tiles and tilemaps could be built from a PNG image of the entire level.
  • Objects (eg enemies, scenery and trigger points) could be created, moved, and edited.
  • Complex rule trees could be used to create mission objectives.


Please excuse the programmer art and the temporary sprites that were ‘borrowed’ from Oids.

Main menu
Choose a mission
Get told
Choose a ship
Take that, graviton emitter!
That didn’t go according to plan
Objective spotted
Objective captured