Outremer: Knights of Light and Shadow

2026

A strategy game in the browser: two orders of knights on a board of 15 × 15 squares. Attack an enemy and you fight it out in an arena, in real time.

Outremer borrows the idea of Archon from 1983: a board on which you take turns moving pieces, and an arena in which two pieces fight it out in real time as soon as one steps onto the other's square. The winner takes the square and keeps its wounds. The names, pieces, spells, pictures and music are new. The game is set in an invented crusader land around the desert citadel of Kerak-al-Sahr, where the Order of the Dawn (white, red and gold) fights the Order of the Shadow (black, crimson and silver).

The board is 15 × 15 squares. The three columns on the Dawn's side are always light, the three on the Shadow's side always dark. The nine columns between them turn one step lighter or darker after every round, from night to day and back in ten steps. Light helps the Dawn, darkness the Shadow: a piece on its own colour has up to 25 per cent more hit points in the duel, on the enemy colour up to 10 per cent fewer. Seven gold stars are places of power. A piece on one heals 20 per cent every turn and no spell can touch it. Whoever holds all seven at once wins. You also win when no enemy is left or the enemy has no move.

Each order has 22 pieces of six kinds: a leader, two champions, four mounted knights, four archers, nine sergeants and two flying beasts, a griffin for the Dawn and a wyvern for the Shadow. The kinds differ per order. The crossbow shoots slow and heavy, the Shadow's bow fast and light with fire arrows. The Dawn's sergeant has a shield that partly stops blows from the front, the Shadow's a morning star with a longer reach. Only the leader casts spells, five of them, each usable once per game: heal, send a piece to an empty square, bind an enemy for three turns, turn the light to your own colour, and bring back a fallen piece. Every spell costs the leader 10 hit points.

In the arena you steer your piece with WASD or the arrow keys and strike with F, Space or Enter, or with a gamepad. Pillars rise and sink in a fixed rhythm. They stop missiles and walkers, but flyers pass over them. A heavy blow breaks a swing still winding up, so timing counts for more than speed. The computer plays through the same controls as a person, on three levels. With 40 duels per pair and per light level, no mirror duel falls outside 30 to 70 per cent and the Dawn wins 49 per cent across all pairs. On the board the computer picks its move from those measured odds, in a Web Worker, so the screen does not stutter while it thinks.

The pictures are drawn in the clear line of the Franco-Belgian comics of the 1950s: black lines of one even weight, flat colours, no hatching. They were made with an OpenAI image model: 24 images plus 3 retries, for 5.97 dollars. Each piece has a sheet with four poses: standing, walking, attacking and being hit. A script removes the green screen, cuts out the figures, also where they touch on the sheet, and puts them on one scale and one ground point. The music is original, written as note data in the code: a lament in D minor for cello, strings, organ and a low male choir on the title screen, two quiet themes for the board that change mode with the order to move, and a Phrygian battle piece for the arena. Everything is synthesised live with the Web Audio API.

Built with Phaser 3 and TypeScript. The rules, the duel and the computer are separate modules without Phaser, checked by 108 unit tests in Vitest. Sixteen end-to-end tests run the built game under this site's security policy in Chromium, Firefox, WebKit and on a phone, up to a whole game between two computers. It plays on a computer with a keyboard and mouse, or with a gamepad.

Technologies

Phaser 3 TypeScript Vite Web Audio Web Workers OpenAI Images API Vitest Playwright

More of my work

Browse the full portfolio or read the blog.

More work