一位开发者用 LLM 逆向工程了经典游戏 SimTower(模拟大厦)的二进制文件,不仅完整理解了游戏的内部机制,还做出了一个完美的在线复刻版 towers.world,支持多人协作游玩。这个项目在 Hacker News 上获得了 259 分的热度。
SimTower 是什么
SimTower 是 1994 年由 Maxis 发行的经典模拟经营游戏。玩家需要建造和管理一栋摩天大楼,包括办公室、酒店、住宅、商店和各种设施。游戏的核心难点在于电梯调度——当大楼变高、居民变多后,电梯的效率直接决定了大楼的评分。
这款游戏现在已经很难在现代系统上运行,需要用模拟器才能玩。
AI 逆向工程的过程
开发者使用了自己构建的逆向工程框架 reaper,配合编码 Agent 来做静态分析。整个过程的核心思路是:把汇编语言当作一种”编程语言”,让 LLM 来翻译和理解。
具体步骤包括:
- 用 reaper 框架对 SimTower 的二进制文件进行静态分析
- 让 LLM 逐段理解汇编代码的含义
- 将逆向得到的逻辑整理成完整的游戏规格说明
- 基于规格说明用现代 Web 技术重新实现游戏
这个思路受到了 Simon Willison 关于”用 LLM 在编程语言之间翻译”的启发——汇编语言也是一种有明确语义的编程语言。
复刻版的改进
在线版 towers.world 不仅仅是原版的复制,还加入了一些现代特性:
- 多人协作:多个玩家可以同时在同一栋大楼里操作
- 批量建造:新增了”网格建造”功能,比原版方便很多
- 更好的 UI:适配了现代浏览器的操作习惯
对开发者/站长的启发
这个项目展示了 LLM 在代码理解和翻译方面的实际能力。它不是简单的”AI 写代码”,而是让 AI 理解几十年前的二进制程序,然后用现代技术重新实现。这种能力可以应用到:
- 遗留系统的迁移和现代化
- 闭源软件的功能理解和文档生成
- 游戏 mod 和复刻社区
在线试玩
访问 towers.world 即可在浏览器中体验。不需要安装任何东西。
© 版权声明
THE END
















暂无评论内容