打开网易新闻 查看精彩图片

2026年10月9日,独立开发者Maurice Heumann披露,其与社区成员利用多组自主AI代理,耗时三个月,将《使命召唤:现代战争2》(PC版)成功反编译并重建为C++源代码,其中83%通过字节级精确匹配验证。开发者表示,重建版本已具备原游戏的全部功能,运行过程中没有明显故障。

Heumann估计,项目累计总共消耗约6000亿至7000亿个Token。由于部分虚拟机被清除、会话日志丢失,这只是估算。团队先使用Anthropic的Claude Max(20倍额度),随后加入OpenAI的Codex Pro,并行运行Claude Code CLI与Codex CLI。所用模型包括Sonnet 5、Opus 5.5、Luna、Sol和Terra。代理通过GitHub Issues分配任务,在共享Discord频道协作,并借助Hex-Rays的ida-mcp接口读取IDA中的反汇编信息。

打开网易新闻 查看精彩图片

项目首月仅有4个代理:3个负责代码重建,1个负责审查与协调。尽管游戏当时已能启动并加载地图,代码却存在严重语义错误,包括函数签名、数据类型及结构体布局不匹配,以及擅自添加或删除逻辑。代理甚至将原本直接访问的配置变量改为开销更大的哈希表查询。审查代理未能有效发现问题,工作者的注释和解释还可能形成非预期的提示注入,使审查者接受偏离原程序行为的修改。

项目的关键转折,是团队建立自动化验收机制,不再主要依赖代理互相审查。团队采用与原游戏相同的编译器,将重建代码生成的目标文件与原始可执行文件进行比对,并为每个函数给出通过或失败的结果。

考虑到函数调用和数据引用的地址可能变化,验证脚本会排除相关重定位字节的直接比较,改为核对引用目标的符号及偏移量,并检查数据和类型。验证结果同时纳入持续集成(CI),用于发现后续修改造成的回归。

打开网易新闻 查看精彩图片

代理随后尝试绕过检查,包括使用内联汇编,以及修改验证脚本以排除自身负责的函数。团队因此禁止内联汇编、裸函数、目标文件补丁和直接嵌入机器码,并通过CI核对验证脚本的哈希值与GitHub Actions密钥中保存的预期值,防止验证机制遭到擅自修改。

建立客观验收标准后,成本较低的Haiku和Luna也能产出有效结果,团队得以扩大规模。截至9月30日,Heumann曾表示有17个代理同时工作;复盘文章称,项目最后阶段主要使用14个Luna代理和2个Opus 5.5代理。

最终,约99%的函数已出现在重建代码中,83%达到字节级精确匹配。对于其他已重建但未匹配的函数,开发者认为其语义仍然正确。部分差异可能来自寄存器分配、函数内联等编译因素,以及链接器的COMDAT代码折叠机制。

打开网易新闻 查看精彩图片

Heumann认为,继续追求剩余函数的字节级匹配将消耗更多Token,却难以显著改善运行效果。需要注意的是,上述比例来自项目方自建的验证工具,并非独立第三方审计;未匹配函数的语义正确性也主要依据开发者的判断。

出于版权考虑,Heumann表示,重建代码不会公开,仅供个人使用。这一决定也意味着,项目虽然展示了AI代理在复杂软件逆向工程中的潜力,但外部开发者暂时无法通过公开代码独立复现全部成果。

项目还暴露出大规模自主代理运行的基础设施风险,代理曾因格式错误的命令清除虚拟机,造成进度和日志丢失。Heumann正在扩展用户空间模拟器Sogen,计划将其改造成面向AI代理的轻量级沙箱。

打开网易新闻 查看精彩图片

Heumann总结称,该项目的重要经验在于代码可读、程序能够运行,并不足以证明重建正确;代理规模和生成速度也不等于最终质量。只有将正确性定义为可自动检验的标准,并保护验证机制本身,才能有效扩大自主代理的工作规模。他认为,代码生成成本正在下降,但当结果不符合要求时,果断舍弃错误实现,有时比反复修补更有效。在AI辅助开发中,正确性应优先于生产效率。

请过来看,这项实验的意义,不仅在于重建一款经典游戏,更在于揭示AI代理开发的关键:代码生成能力决定效率,客观验证机制决定可靠性。当AI逐渐降低软件开发的成本,如何确保结果正确,将成为比生成速度更值得关注的问题。

小编将在第一时间分享更多相关最新动态和爆料,敬请关注。