Skip to content

GameFrameAn agentic framework for reverse engineering games

Understand a game from the copy you own, and rebuild it exactly. Its playbook of skills and agents runs inside your coding agent. Its toolkit of tested tools, around Ghidra, Unicorn and REA, checks every result against the original.

tests/run.sh --ghidra: the port matches the original bit for bit, draws random numbers in the original's order, and the naive port is caught. 104 passed, 0 failed.

Set it up with your agent

Copy this prompt into your coding agent (Claude Code, Codex, Cursor or another). It sets up GameFrame and starts a project for your game. It asks before it installs anything.

prompt
Set up GameFrame on this computer for me.

1. Clone https://github.com/tanepiper/game-frame into ~/code/game-frame
   (or update it with git pull if it is already there).
2. Read AGENTS.md and .claude/skills/re-setup/SKILL.md.
3. Run scripts/setup.sh and show me the table of what is present and what is missing.
4. Before you install anything, tell me what scripts/setup.sh --install will install and how
   large each part is. Wait for my answer, then run it.
5. Run tests/run.sh --ghidra and report how many checks passed. If any failed, show the
   failures and fix the setup before going on.
6. Run scripts/setup.sh --rea and help me register REA with this agent.
7. Ask me for the name of the game and the folder of my own copy of it. Then run
   scripts/new-project.sh ~/re/<short-name> "<Game Name>" "<path to the game>".
8. Open the new project, read its AGENTS.md, and start with the re-start skill.

Never copy the game's files, extracted assets or decompiled code into a git repository.

Last updated:

The method ​

Each step has a skill. The steps run in order. When a check fails, you go back to the trace step.

The method as a loop. Inventory, observe, decompile, trace, format, emulate, reimplement, verify and land, each with its skill. When a check fails, the work goes back to the trace.

Agents can also read this site as plain text. llms.txt lists every page with a short description, and llms-full.txt holds all of them in one file. Each page has a Markdown copy at the same address with .md at the end, such as /games/interaction.md.

Code: Apache 2.0. Content: CC0 1.0. No game material: bring your own copy.