I've been in the games industry since 1994, and worked on many world-class titles and in many major studios. I've also written Indie games with teams of just 2-4 people. As an author, I've written numerous articles for Develop, as well as three industry-standard text books for Charles River Media, Thomson, and Apress. Additionally, I've given guest lectures and run tutorial sessions at Bedfordshire University, Game Camp, and various meetup groups.

Past projects include: ZX Adventure - VR Ant Attack - ASCII Bird - Polished Game Development - OpenGL 4 Javascript - Space Bounce - Smack-a-Mozzy - ASCII Pacman - Squibs - Teeth Defender - LEGO GTA - Wordia's Educational Games - Playfish/EA Social Games - glu Mobile Games - Linux Magaine: Explorer - Die Hard:Vendetta - War Along the Mohawk - Grand Prix Manager 2 - Grand Prix Manager - Powerhouse

ZX Adventure Cronosoft, 2021

In 2015 I wrote a real retro game. In machine code. On the ZX Spectrum. It became a launch title for the Sinclair Vega.

In 2021 I wrote re-wrote it for the ZX81, and had it professionally published by Cronosoft. Then I updated the old Spectrum version with all the new levels I'd added for the ZX81.


Ant Attack - three.js Tech demo, 2019

I wrote a 3D FPS (without the shooting!) in JavaScript as a refresher to myself for three.js. It took one evening to rip the map from a ZX Spectrum emulator, one morning to write the renderer, and one half evening to write the control system.

Which is why it's still a bit ropey!


ASCII Bird 6809 assembler, 2017

My first assembly languages were Z80 and 6809. This was due to the microcomputers I owned back in the 1980s - a ZX81 and Dragon 32, respectively. I never really took to the Z80 as a chip, but I did like the 6809. It seemed to have such a nice, well thought out, architecture. So, naturally, when I was older and knew how to write emulators it's no surprise that my first emulator was for a Dragon.

In order to test my latest emulator, I wrote this clone of 'Flappy Bird' to remind myself of the 6809.


Polished Game Development Book, 2016

Learn the things you need for a complete game, such as translations and tutorials, and improve the things you've already written to raise their standard to a professional level. This is a practical guide covering every discipline: art, music, writing, and code. In the case of the latter, code examples are included to demonstrate how to implement functionality to make the game shine. Polished Game Development acts as a comprehensive checklist of everything your game should, and should not, do, in order to be as good as it possibly can. It is more than just a book on theoretical game design principles.


OpenGL 4 Javascript Javascript, 2015

This is game developer-friendly library that lets you develop high quality 3D games in the browser - without needing to use the (often maligned) WebGL.

It has been made available to select partners.


Space Bounce Indie. Web, 2015

An independent HTML5 game where you descend a space mine to collect halite crystals to help power your stranded space craft.

Written to accompany the book 'Polished Game Development' this has been a minor success in its own right.


Space Bounce is also available to play on NewGrounds.

Smack-a-Mozzy Indie. iOS, 2013

This is a fun children's game where you score points for Smacking the Mozzy's, before they suck your blood!

You Smack the Mozzy's by touching the screen when you see them fly towards you. Each is worth a different number of points, depending on the colour, how fast they move, and how soon you can smack them!


ASCII Pacman Indie. Linux, 2002

The world famous implementation, of the world famous game, written for the world famous interface. I seem to remember writing this to see if the various ASCII characters could represent the simplistic graphics of Pacman adaquately, or not. Result: I think they can. I'm especially proud of the dying animation.

Squibs Indie. iOS, 2011

A cult classic! SQUIBS takes inspiration from the current generation of AAA titles, distilling the game play to its most fundamental form, and re-imagining them with the style and passion of the classic LCD games. With hours of classic fun, like the original LCD game and watch electronic games, but bringing them up to date on the iPhone. The game titles are both homages and parodies of the games which inspired them. We believe that SQUIBS will appeal to both casual game players, but also hard-core game fans, who will recognise the tributes we are paying to their favourite games, and also enjoy the genuine addictive game play to be found in SQUIBS.


Squibs - Juggler (aka "Clown") is also available to play on NewGrounds.

Teeth Defender Indie. iOS, 2012

This is a perfect game for keeping the kids quiet, where you get to blast bacteria toothpaste in order to keep your teeth clean!

It is a simple asteroids-style shooting game aimed at 3-8 year olds, with fun graphics and exciting sound effects.

There are three bacteria, called Muk, Yuk, and Grim, all of whom can be shot by simply touching the screen as they move to attack the teeth. As the game progresses through each level, the meanies get faster and faster, and the amount of toothpaste gets less and less.


Teeth Defender is also available to play on NewGrounds.

LEGO GTA HTML5 Tech Demo, 2012

I wanted to build a game tech demo without WebGL, and without an artist, so this is what I came up with!


Wordia Online. 2010-2012

Wordia, developed under the development name of 'Education Games Network', was an educational resource for all key stages, and across all subjects. It did this by focusing on teaching the vocabulary necessary in each subject. It comprised of a video dictionary, single-player games, multi-player games, and a game builder where teachers (or students!) could generate their own games, using their own word lists.

During my time I designed and wrote (or co-designed and co-wrote) over 20 different games in various genres.


Playfish/EA Online, social. 2009-2010

Playfish was one of the biggest social developers and publishers, when it was acquired in EA in 2010. The biggest titles garnered between 5 and 10 million players per day! These included Pet Society, Restaurant City, Madden, and Sims Social.

My technology was used in all games in production, which totalled around 12 whilst I was there, but it continued to be used in many more afterwards.


glu Mobile Mobile. 2005-2008

At this time, mobile meant J2ME. Or rather 300 subtlely different versions of J2ME. I built a cross-platform engine to facilitate the games teams, in addition to the first 3D engine and game code for PGR (Project Gotham Racing) and soccer simulator LMA Manager.

I was also involved in writing generic game tools, so ultimately had a hand in around 30 different games including Stranded, 2nd best mobile game of 2006!


Cross-Platform Game Programming Book, 2005

With many of today's games being released simultaneously on all platforms, the need for a good cross-platform development strategy is essential. Cross-Platform Game Programming covers this rarely discussed area and provides the techniques needed to develop your games effectively. It explains the plethora of problems that exist within every cross-platform game, and gives you the understanding and ability needed to solve them. It also teaches you how to write code that behaves identically on all machines. In addition, the book explains why standard libraries are not standard enough, and covers the nuances between compilers, debuggers, and operating systems. Throughout the book, how-to guidelines are provided for using the same code to handle different hardware specifications without change for ported games, or those being build to work cross-platform from the ground up. It helps senior and lead programmers determine where the platform-specific features should start and end, and provides methods for achieving this. It also includes support for those using middleware by demonstrating how to write code that will run identically on different machines, despite the platform making use of the same APIs. Because this book teaches the methods, not the API, it scales well for future platforms and empowers you to create your own designs.

Game Developer's Open Source Handbook Book, 2007

The Game Developer's Open Source Handbook" uncovers this world of Open Source software and teaches developers what code is available, where to get it, how to incorporate it into existing processes, and, most important, how to adhere to the license agreements for redistribution.

Explorer Linux Magazine. 2003

In 2003 the then-editor of Linux Magazine, John Southern, asked me to write a series on game programming with SDL. The deadline, as usual, was "as soon as you can!" This meant I had no time to properly design and test a new game, nor to source any graphics. So, John agreed to create the artwork, while I agreed to sacrifice my artistic integrity (!?!?!) a write a simple clone of Manic Miner!

The game was simplistic, even for 2003, but the articles were to focus on the mechanisms by which graphics were drawn to the screen, and how to build an event loop that facilitates gameplay.


Die Hard: Vendetta Xbox, Gamecube, PS2. 2002

You are in John's shoes as he must face a new threat. Piet Gruber, the son of Hans Gruber and McClane's old enemy, is up to no good at the Townsend Art Museum. He has stolen valuable art and kidnapped John's now adult daughter and fellow CCPD police officer, Lucy.

This game is a First Person Shooter, but it also adds two features: Stealth Mode and Hero Time. Stealth Mode allows John to sneak around quietly, even being able to grab his foes and use them as hostages. This means it may not be best to go in guns blazing, when they could be arrested. Hero Time allows John to react far more quickly, just like Bullet Time in Max Payne. Hero Time is earned by saving hostages and performing heroic tasks in the game.

For those that want to see some footage (and oddly polite YouTube comments) click no further...

War Along the Mohawk PC, Windows. 1998

War Along the Mohawk is a real time tactics game with RPG elements. The game takes place in 1757 when France and England are fighting in the American north-east.

At the start of the game you can choose a character to play. Your character can learn new skills throughout the game. When he dies the game is over.

Between missions you spend your time at your fort, where you might have to fend of Native Americans or wild animals (of which pelts can be sold) at times, but mostly you'll decide on strategic options such as recruiting more men.

You can play through a wide array of missions which have objectives such as: ambush the enemy, take out an enemy canon, and so forth.


Grand Prix Manager 2 PC, Windows. 1996

Take control of one of the existing Formula 1 teams (or one of two customizable fictitious ones) and try to take them to the top of the start in this management simulation.

Every major decision is under your control. You must choose which parts of the car to improve, including Driver Aids whose legality varies over the years - is the extra performance worth the risk of disqualifications? Testing will help you assess the car's performance and prepare set-ups for the next race.

Staff can be hired and fired, ranging form drivers to designers and commercial staff, which often means trading off having a large team, or a small but well-drilled and capable one. Obtaining and retaining the interest of sponsors and engine manufacturers is a crucial challenge as the years go on.

Once the race weekend comes around, you must make the best use of practice and qualifying sessions, as well as preparing a pit strategy and being ready to adjust it if incidents, weather or unexpected performance issues occur. The action is viewed from overhead, with full commentary.


Grand Prix Manager PC, Windows. 1995

In Grand Prix Manager, the goal is to build a successful Formula One racing team, and keep it there for 40 years. In the role of manager, the player will have to make sure that they are employing the best personnel available in the market: including engineers, designers, mechanics, marketing staff and of course, the drivers, All this within the constraints of the team's budget. The marketing people are responsible for "wooing" potential sponsors to the team and to negotiate merchandising deals. The engineers, mechanics and designers, the unsung heroes of a Formula 1 team, have to divide their time between preparing the cars for race day and doing R&D for new parts, driver aids and the next year's chassis.


Powerhouse PC, Windows. 1995

You are a Powerhouse CEO. The future is in your hands. You will start with nothing but money and your own business acumen. How will you meet the demands of an energy-hungry world? Which resources will you research and exploit? Can you succeed and thrive in the face of cutthroat, winner-take-all competition? Will you build an empire, or will your enterprise crumble? In the end, only one powerhouse can prevail. Will it be you?