Show HN: Instance – Clean room GameMaker 8.1 in Rust built with Claude Opus 5.5 (github.com)

1 points by __grob ↗ HN
GameMaker 8.1 was a lot of people's first real game engine. For me it came right after Scratch. Instance is an open-source reimplementation of GameMaker 8.1: the IDE (sprite, object and room editors, GML scripts, drag-and-drop actions) and the runtime. It opens existing .gmk and .gm81 projects and plays them, on Windows, macOS and in the browser via WebAssembly.

I built it with Claude Opus 5.5, as a clean-room implementation. The behavior was written up as specs from documentation, project file data and black-box tests run against the real GM 8.1. The code was then written from those specs with nothing from the original engine disassembled or decompiled. CLEANROOM.md in the repo describes the process. Old games depend on a lot of engine quirks (event order, the exact random number generator, how sound_isplaying lags), and the black-box tests were how we pinned those down.

The link opens the whole IDE in your browser with three examples: Spelunky Classic (from Derek Yu's released source), plus Emberwood (a small 3D walk built from d3d calls) and Gravity Grade (a falling-block game), which I made with it. Press Play, or Edit to open the project and change it. It runs 3D games, MIDI music, and can export your game as a single HTML file.

Code (MIT): https://github.com/groverburger/instance Downloads: https://github.com/groverburger/instance/releases

Not affiliated with YoYo Games.

0 comments

[ 0.35 ms ] story [ 7.4 ms ] thread

No comments yet.