AI Agents Rebuilt Call of Duty: Modern Warfare 2’s Source Code — 83% Byte-for-Byte Matched

科技文章中级 · 3.5
405 词 3 分钟 37 次阅读
#AI #科技

A developer’s team spent three months and more than 500 billion tokens driving AI agents to decompile the 2009 shooter into C++ source. A byte-for-byte verification gate got 83% of functions matching the original exactly.

October 13 — The developer Maurice Heumann published a project report on 9 October: over three months his team consumed more than 500 billion tokens, using AI agents to decompile the 2009 game Call of Duty: Modern Warfare 2 and rebuild it as C++ source code.

On the team side, the project was led by Heumann with help from RektInator, Future, st0rm and other community members.

On the AI side, the team initially used both Claude Max (20x) and Codex Pro subscriptions, running AI agents in the Claude Code CLI and the Codex CLI. The models included Sonnet 5, Opus 5.5, Luna, Sol and Terra; the agents tracked tasks through GitHub Issues and exchanged information over Discord.

In the project’s first month, four agents were deployed: three to decompile and commit code and one to review it. At that stage about 80% of the functions were finished, and the game could boot, show its main menu and load maps — but the team found that although the code was readable, it contained semantic errors in function signatures, types, structure layout and logic.

The team then introduced a “byte-for-byte matching decompilation” verification mechanism. It rebuilt object files with the original game’s compiler and compared the rebuilt functions with those in the original EXE and PDB byte by byte; those that passed were marked PASS, and those that failed were reworked by the agents.

To stop the agents from bypassing the checks, the team banned inline assembly, naked functions, object patching and embedding bytes in the code, and used CI to compare the hash of the validation script against a GitHub Actions secret. The mechanism let even low-cost models complete high-precision work under strict feedback, and it replaced the human or AI review step.

In the later stages the project mainly ran 14 Luna agents and two Opus 5.5 agents, which submitted code through separate branches and pull requests. In the end, 99% of the game’s functions were included in the rebuilt source and 83% reached byte-for-byte matches; the rest were hard to match completely because of non-deterministic features or linker behaviour.

Byte-for-byte matching means comparing the binary data of a function compiled from the rebuilt code with the corresponding function in the original program, byte by byte. If the data matches, it usually means the function keeps the same semantics and behaviour as the original under the target compiler.

Heumann said the code would not be published and that the rebuilt result would be kept for private use only.

评论

0 条讨论

按时间

登录后发表评论

立即登录

暂无评论

成为第一个分享想法的人吧!