OC
AI 把 1993 年游戏搬进 Godot,最难保留的不是代码而是手感
科技 · 2026-09-04 · AI 与游戏开发 · 阅读 0

AI 把 1993 年游戏搬进 Godot,最难保留的不是代码而是手感

据《Babylonian Twins》作者发表的移植复盘,他借助 Claude Code,将自己在 1993 年编写的 Amiga 游戏及后来的移动版搬进 Godot 4。原作诞生于巴格达,一台只有 512KB 内存、没有硬盘的 Amiga 500 上;三十多年后,AI 帮助恢复工具链、解析数据并重写行为。故事很容易被

作者:林岚|OC 开发者生态编辑

据《Babylonian Twins》作者发表的移植复盘,他借助 Claude Code,将自己在 1993 年编写的 Amiga 游戏及后来的移动版搬进 Godot 4。原作诞生于巴格达,一台只有 512KB 内存、没有硬盘的 Amiga 500 上;三十多年后,AI 帮助恢复工具链、解析数据并重写行为。故事很容易被概括成“一晚上移植数万行代码”,但作者列出的错误,比速度更有参考价值。

一句话结论:AI 可以显著加快旧软件迁移,但“能编译、能运行、玩起来还是原作”需要三套不同证据。

旧代码不是完整说明书

这次工作包含约 3.4 万行 C++ 移动版和 72,758 行、分布在 26 个文件中的 68000 汇编原版。作者表示,Agent 自己搭建和运行工具,完成大量转换;他负责提出要求、试玩、解释历史选择和决定哪些变化可以接受。这不是无人干预的一键迁移,也不是经过统一条件比较的模型基准测试。

源码保留下来,并不意味着设计意图完整保留下来。一个常量可能补偿旧设备的输入特征,一段看似多余的检查可能防止两个对象覆盖同一块地图。把代码“整理得更现代”,有时正是在删除原作赖以成立的条件。

作者举出的帧率问题很具体:旧 Amiga 版和后来的移动版分别围绕 50Hz 与 60Hz 调整。每帧相乘的摩擦系数,在不同更新频率下会产生不同减速效果。程序不会因此崩溃,但动作会改变。迁移系统保留两套时钟,比强行统一参数更接近保存原有行为。

两套跳跃轨迹与不同计时机制的对照;AI 生成示意图,非实测数据

测试接口,可能比生成代码更有长期价值

这次移植加入了直接载入关卡、设置人物位置、逐帧驱动输入和导出状态的命令行入口。原来只能说“这个跳跃不对”,现在至少有一部分可以转成可重复执行的场景。编译检查、关卡构建、截图和状态输出,也让失败更容易定位。

这类能力的价值不止服务于 AI。一个项目如果只能靠开发者手工走到第三关才能重现错误,任何维护者都会付出高成本。把操作变成可复现的测试路径,是移植过程中留下的基础设施,而不是一次性的提示词技巧。

作者报告,五张关卡地图在处理天空和水面效果后,与参考图实现逐像素一致。但地图一致不能证明碰撞、输入和敌人逻辑也一致。现代移植版的截图仍由人检查,手感也没有被自动测试完整覆盖。不同验证结果应该分别记账,不能把其中一项成功扩大成整个游戏完全等价。

一个守卫能隔着十三格石头打中玩家

复盘里最典型的错误是范围检查遗漏:移植保留了一侧边界,却漏掉另一侧,导致守卫能够攻击远在下方、隔着地形的角色。另一些问题来自输入事件与持续轮询的语义差异。物理常量看起来正确,操作结果仍然不对。

这说明读代码只是证据来源之一。测试者对原版的记忆、老玩家的评价和实际操作,都可能提供源码中难以直接看出的条件。作者与儿子持续试玩,也说明人的角色并没有因为代码生成变快而消失,只是从逐行搬运转向判断行为是否值得保留。

还有一个需要保留的不确定点:作者明确表示,模型对部分二进制差异的解释,他没有亲自核验。因此不能把这份复盘写成“所有旧二进制均已完全复现”。承认局部证据不足,比替一个精彩故事补上不存在的严密结论更重要。

关键事实

  • 复盘来自原作者,属于具体项目经验,不是可直接推广的效率基准。
  • Agent 处理代码、数据和工具链;作者参与试玩、取舍与发布确认。
  • 地图像素对照、构建通过和行为一致,分别覆盖不同层面的质量。
  • 移动版已上线,Steam 有免费演示版,完整 Steam 版仍计划于秋季推出。

OC 判断

AI 对旧软件保存的贡献,可能不只是降低重写成本,而是把散落的代码、二进制和人的记忆重新组织成可验证的系统。真正值得复制的方法,是保留原始材料、建立比较基准、暴露测试入口,并让人处理没有明确答案的历史语义。那些“奇怪但能用”的行为,往往正是作品的一部分。

为什么重要

  • 对独立开发者:迁移可以更快,但验收预算不应随编码时间一起被砍掉。
  • 对维护者:可复现的操作入口能长期降低调试成本。
  • 对玩家:保存一个游戏,既要保存画面,也要保存它如何响应人的动作。

参考来源

相关阅读

基于标题、摘要和正文内容自动匹配。

更多科技

评论

围绕这篇文章补充信息、提出问题或分享观察。

0
暂无评论。

发表评论

继续看看 OC 用户围绕这个话题说了什么、做了什么。

相关帖子

更多

一个体会,Codex 这种现代 Agent,每天一个变,几天不用就有新惊喜

<p>当然我说的也包括 Claude Code,新功能日新月异,还有就是 AI 能力提升以后,可以做的东西日新月异。还有各种工作流方法日新月异。</p> <p>更好玩的是,我最近经历过很多次,你跟人介绍现在 Codex 可以做到什么样子,他们都觉得很厉害。但是你现场一演示,他们的震撼就更加完全不同了。所以,这种东西,需要大量的 Workshop 去沟通交流,光看文字很难讲清楚,直播、视频也越来越重要了。</p>

tinyfool 1 89

你们的Codex额度提前耗完了没?戒断反应如何?

<p>我在第三天就消耗了只剩1%,忍了一天,然后今天干脆用这最后的1%,开着5.6 Sol 极高 强推我一个提示词笔记本应用的功能落地。最终用时3小时,居然还是跑完了。但是现在还是出现一些戒断反应,感觉啥也做不了,就无精打采的,困。</p> <p>我做了一个Prompt Notebook,专门用来收藏或者记录自己手搓的生图提示词。带Chrome一键收藏插件。支持AI优化提示词。支持提示词中提取常用字段作为提示词百科词汇。也自带生图功能用来测提示词。但是要搭配Cloudflare R2+Worker的图床。</p> <p>今天主要是做一个AI模特的资产库。将常用的AI模特固定下来,进行身份设定,以及模特的一些角色定妆图。之后生图可以直接调用AI模特自动作为垫图。</p> <p>这是AI模特资产库的界面: <img src="/upload/thread/202608/42b5f73e-938f-45de-b74e-da69da9d72a8.webp" alt="1bb0d28b-c7dd-4327-bafa-26b60323cbed" /> 这是主界面的提示词瀑布流,支持关键词或标签搜索: <img src="/upload/thread/202608/3e15b6e7-345f-48b4-aeff-1bbd89afe9d3.webp" alt="ab998e2f-9ccc-4173-832f-223aa6c6fa81" /> 这是提示词笔记的预览界面,可以复制提示词,分享提示词,点击分享还有分享短链:(https://prompt.jintao.co.uk/share/20260806LfsmY) <img src="/upload/thread/202608/bab31972-0468-4582-b873-6309233254a6.webp" alt="20260806-201213" /> 可惜现在没额度了,我又不想换模型折腾。现在还有些界面细节和小功能需要落地完善,可能还要虫子要抓。弄好了,打算放GitHub开源。</p> <p>有朋友想试试的么?</p>

shynloc 2 4

你更喜欢 Codex 还是 Cladue Code?

<p>我先说,我更喜欢 Codex,因为我没用过 Cladue Code。Codex 一直都能很好满足我的需求,所以我不是很有动力去换 Cladue Code。虽然我也知道很多人更喜欢 Cladue Code。但是我觉得应该差不多吧?</p>

tinyfool 5 111

重返OurCoders

<p>从2014年以来好久没逛过这个谈论了,不知道这个谈论的运营现在怎么样,开发人员是不是原来的人,前端UI做得不太好</p>

梁建溢 5 36