Taking Darker
apart.
The cities, ships and undocumented cheats of Psygnosis’s 1995 flight game, recovered from the original DOS files.
Reconstructed from the original game data.
The first problem
It started with the executable.
The first obstacle was an executable that ran in DOSBox but looked like nonsense in a disassembler. Once we understood the loader, we could follow the code into the model formats, mission scripts and flight systems.
It also led us to a working cheat prompt that, as far as we can tell, had gone undocumented since release. Unlimited boost had been there all along.
Explore Darker
Retail + two demo releases
The city maps
Explore Delphi, Halon and the tunnels, or compare them with the maps from two earlier demos.
Model gallery
Buildings and craft
Turn the models around, look inside an open hangar, or watch the fountain animation.
Reverse engineering
How we worked it out
The loader that confused our disassembler, the model format that turned out to be a programming language, and the cheats we found along the way.
Engine anatomy
How a city becomes pixels.
Drawing programs, fixed-point perspective, palette lighting and a fountain reflection made from opaque polygons. Follow Darker’s software renderer from its map cells to the final frame.
Inside the graphics engine ↗Back in the cockpit
Play Darker again.
Darker C++ is our faithful reconstruction of the original game, running natively on modern computers.
Darker Redux builds on it with higher resolutions, longer views, adjustable fog, in-game options and fixes to original bugs. Both use the original game data.
Flight dynamics
Flying on borrowed light.
Why the Caero rises beside a beacon, how braking affects lift, and how Halon craft and tunnel guidance change the rules of flight.
Inside Darker’s flight modelInside the game
All articles ↗Inside Darker’s graphics engine
Model bytecode, fixed-point perspective, palette lighting and the fountain’s reflections: from the city map to the screen.
Flight dynamics / retail 1995Inside Darker’s flight model
The Caero’s beacon-powered flight, the Skimma’s speed-dependent lift, braking and underground route guidance.
Sound drivers / retail 1995How Darker makes music
Five musical arrangements, custom instruments, independent loops and the path from sequence commands to synthesised audio.
Mission scripts / retail 1995Programming Darker’s missions
How small programs coordinate aircraft, objectives, radio messages and blackouts, and how the city remembers what happened.
Weapons and collisions / retail 1995Combat beneath the polygons
Aircraft resistance and recovery, vulnerable building volumes, and the unusual rules behind Darker’s weapons.
x86 and DOS / executable archaeologyUnpacking Darker’s executable
A five-byte interrupt handler interleaves instruction streams before decoding, expanding and relocating the game.
Development history / surviving demosDarker before release
Earlier cities, flight tuning, unfinished weapons and the small programming shortcuts preserved in two demo packages.