Romjakten — a 1999 game, ported to Godot
wipA from-scratch Godot 4 port of a Norwegian educational space-strategy game originally built in Macromedia Director 6. Playable in your browser, downloadable for Windows, Linux and Android.
Romjakten is the Norwegian localization of the Swedish educational game Rymdjakten (“The Space Hunt”), originally developed by Monsterland Produktion AB and published by Levende Bøker / Kunnskapsforlaget in 1999. You played a space program manager piecing together an alien probe by recovering its parts from across the solar system.
The game was built in Macromedia Director 6 for Windows 95/98 and Mac OS 7-9. It’s been unplayable on modern hardware for a long time — the original runs at 800×600 in 16-bit color, hits virtual-memory limits on contemporary Windows, and the Mac version targets PowerPC. So I’m porting it.
Web build runs entirely client-side via Godot's HTML5 export — no server-side processing. open full-screen ↗
Downloads
Choose your platform:
What’s in the port
- 7 autoloads (Lingo compatibility, game data, sound, sprites, interface)
- Building system — 7 building subclasses (rocket, vehicle, astronaut, space station, ship, probe, research)
- 6 puzzle minigames — moon lander, satellite communication, asteroid steering, orbits, aerobraking, alien decoder
- Full launch system — per-rocket animations, flight simulation, crew workflow
- Observatory — project overview, narrator, easter eggs, milestone flow
- Space map — three zoom levels, planet interactions, orbital buildings, in-flight probes
- Win/lose conditions — interstellar ship launch (win), alien power depletion (lose)
- 24 automated tests with Python snapshots and Godot headless mode

The reverse engineering side
Most of the work isn’t in the engine port — it’s in pulling assets out of Director 6’s binary formats. The repo includes custom Python tooling for:
- Bitmap extraction — 3,716 PNGs, recovered with the right palette and per-sprite transparency. Director uses a custom 256-color palette embedded in CLUT chunks, which I extract separately.
- STXT text parsing — 103 JSON files containing all in-game strings and game data, parsed from Director’s text member format.
- Audio extraction — 1,984 WAV files indexed by their original member name.
- Smacker video conversion — 5 cutscenes converted from
.smkto.ogv.
Along the way I found a handful of Director 6 format quirks that aren’t
documented in ScummVM’s Director engine —
notably the D5+ CASt field order (castType + castInfoSize + castDataSize,
INFO first, DATA second), opposite of D4. These findings are preserved in the
project’s scummvm-patches.diff for a potential upstream contribution.
Status
Nearly complete — the game is fully playable end-to-end. Remaining work is polish: a few edge-case animations, audio cue timing, and platform-specific input handling on Android (the original was a strict mouse-driven UI).