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

2020 年,一位保加利亚开发者突发奇想,能不能在网页上复刻红警 2?

于是他用 5 年时间,用最极致的人肉逆向,一行行手写代码,对照着《红警 2》去模拟、还原每一个运行逻辑 。

最终写出了网页红警,让每个想怀旧的 80、90 后,不用折腾和配置环境,只要打开浏览器就能回到小时候。

这件事,差评君还给大家写过。

然而就在一个月前,我们身边有人也做了类似的事。

他把西山居早期的三款作品《新剑侠情缘》、《月影传说》、《剑侠情缘 2》,全部复刻到网页版,移动端也做了适配,点开即玩。

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

这些游戏大家都不陌生。

差评君现在还记得小学放学回家就打开电脑,操控着独孤剑在临安城里乱逛,跟酒楼里的醉郎中聊几句居然能触发隐藏武功。然后又在《月影传说》里操控杨影枫一路捡草药,捡着捡着追一个黑衣人到了蝙蝠洞,结果遇到一群强盗被围殴怎么也打不过去。

时隔 20 多年打开这个复刻版,差评君发现味道很纯正:NPC 对话还是那么啰嗦,按 V 打坐恢复真气也还在,地图角落里那些藏在石头后面的宝箱也没少。

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

不过让人觉得震撼的是:

复刻这三款游戏的作者,没有手写一行代码

他完全依靠 AI,用不到一个月时间,不仅复刻了三款完整的武侠 RPG,甚至顺手搭了一个通用游戏引擎,调试器、编辑器一应俱全,方便别人参考复刻其他游戏。

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

这到底是怎么做到的?差评君找到了这个项目的作者,陈老师 。

陈老师从小学三四年级就开始自学编程,有着近 20 年的代码经验,早早就在 GitHub 上开源过众多项目 。

按理说,这样一位资深极客,应该对手写代码有着极深的信仰。

但陈老师和我说,他现在连一个等号都不愿意敲了。

因为他试过一套固定流程:先让当前最强大模型写出详细的设计文档,再严格按文档分模块执行,每个模块独立验证,跑通了再拼到一起。这样产出的工程架构和代码质量,大部分时候确实比自己从零手写的更高。

其实早在 2020 年,陈老师就动过复刻这些童年神作的念头,但在盘算过纯手工逆向二进制文件、再重写整套游戏系统的工程量后,放弃了。

直到最近,他认为 AI 的能力终于跨越了那个临界点 。

因此,这次复刻不光是一次童年怀旧,更是一次对AI编程的极限测试。

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

陈老师做的第一件事,就是把游戏客户端的原始资源文件直接丢给了 AI,让 AI 去解析。

这些游戏文件是二进制的,为了分发和安装,所有信息都被打包压缩成人类读不懂的格式。而 AI 拿到文件后,开始疯狂调用各种查看工具,列出文件结构、读十六进制,写 Python 代码尝试解析。一条路走不通,马上就换一种逻辑重试。

在过去,程序员是要拿着十六进制编辑器,靠经验和直觉一点点分析,再写脚本反复尝试的。

陈老师估算AI在这个环节的效率,是人类的 10 到 100 倍 。

我寻思也合理,AI 擅长暴力穷举,它不需要睡觉、也不会烦躁、更不会在第三个小时打开抖音刷会差评君。

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

这还只是开始,真正的考验是如何重建整套游戏系统。

在用 VScode Copilot 复刻时,陈老师主要用两个模型:Claude Opus 负责深度思考,当架构师,把游戏拆成模块、写出技术文档;Claude Sonnet 速度快,当执行者,根据文档把代码写出来。

让人头皮发麻的是,AI已经不再只是埋头执行,它还能具备了自主纠错能力。

有一次做寻路系统,陈老师觉得这个模块太吃性能,TypeScript 可能扛不住,就让 Sonnet 试试用 Rust 重写。Sonnet 写完之后自己跑了一轮性能对比,发现 Rust 和 TypeScript 之间来回翻译传递数据的开销太大,总体算下来反而更慢了。

于是,它主动将这个测试结论反馈给陈老师,并建议回退到 TypeScript 方案 。

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

就这么一个负责想、一个负责干,项目推进得比陈老师自己预期的还快。

从 1 月 25 日开工到 2 月底收尾,刨去春节休息,满打满算仅用了 20 天左右 。期间,陈老师与 AI 的对话次数达到四五千次 。

他通常会同时拉起 5 到 6 个 AI 对话窗口,并行处理不同的模块 。白天在公司上班时,也是远程桌面让家里的 AI 在后台疯狂打工,晚上回家直接验收成果 。

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

看到这一定有人质疑:20 万行代码全靠AI自动生成,真不是屎山代码?

确实,差评君也用 AI 写过 App,结果每加一个功能就多一个 bug,甚至修一个 bug,还会冒出来两个新的。

陈老师说,零编程经验的人用 AI 写代码最大误区,就是让 AI 一口气写个完整 APP,缺少架构设计。一开始还行,后面越加功能越乱,因为 AI 最擅长模仿之前写法,一旦前期逻辑混乱,后期就越来越乱。

所以陈老师做法是分模块开发,每个模块单独设计、单独测试,跑通了再拼。遇到 bug 也是把运行日志发给 AI,定位到具体模块进行修复。在每次完成大改动后,他还会新开一个窗口,让另一个 AI 从零开始扫描刚改过的代码。

总之,经历了不下 10 轮的优化与重构,这近 20 万行代码最终成功落地。

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

所以这 20 万行代码到底做了什么?

打开游戏你就知道了:角色在地图上走动时能会绕过障碍物找到最短路线。天气会从晴天突然转雨、雨滴还会挂在屏幕缓缓落下,这效果在原版里压根没有,是复刻版新加的。武功系统也做了 22 种飞行轨迹和 10 种状态效果,螺旋的、追踪的、扇形扩散的,能组合出几百种法术。

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

由于原版游戏是西山居用自创的脚本语法把整个剧本串起来的,为了让游戏在浏览器里跑起来,陈老师还把上百种剧情指令全部重写了一遍,并且加入了现代游戏行业通用的 Lua 语言支持,以后想给游戏加新剧情、改对话分支,不用去琢磨西山居独创语法,用 Lua 脚本就能成。

不仅如此,他还做了一个游戏编辑器。

武功、NPC、地图、物品、对话树,13 个模块全能在网页上直接编辑,改完刷新就能在游戏里看到效果。以后只要把引擎接入 AI,用户就能一句话生成游戏剧情和 MOD 了。

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

这三款游戏在 B 站上本来就有一批 MOD 创作者,以前都是纯手工制作,费时费力。如果这个功能做出来,每个人都能做出自己的剑侠情缘。

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

写到这,那个老生常谈的问题又来了:程序员真要被替代了吗?

陈老师的答案是目前不会,但程序员这个职业的定义,已经在改写了。

过去要独立开发游戏,你必须要把 70% 精力投入到敲代码、做建模、修 Bug、优化性能上,30% 留给游戏玩法 。

但现在,AI 已经能够包揽这些代码活,你需要用 30% 的精力去做架构决策,剩下 70% 倾注到玩法设计中 。

比如物品交互逻辑怎么定?数值成长曲线怎么画?NPC 行为树怎么排?这些属于产品和设计层面的决策,是没有标准答案的 。AI 可以给你提供一百套方案,但最终想做出一款怎样的游戏,依然需要人类来拍板 。

换句话说,陈老师这 20 年的编程经验并没有作废,而是转化为了复刻游戏过程中的架构决策。

像差评君这种没有编程经验的人,遇到 bug 不知道怎么定位,游戏系统怎么拆也没概念,有 AI 也照样干瞪眼。

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

但。。。

这次聊天也引出了一个更深层次的推论:

程序员工作重心的分配已经从“7 比 3”变成了现在的“3 比 7”,那么随着 AI 模型的极速迭代,这个比例会不会很快变成“1 比 9”,甚至“0 比 10”?

这种需要有经验的人来主导代码的阶段,还会持续多久?

甚至明天之后,连“游戏该怎么设计”这种创意工作,AI 会不会也能比大部分人想得更快、更周全。

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

在这个时间尺度被极度压缩的领域里,没人敢给出确切定论 。

毕竟一年多之前 DeepSeek 才刚发布,AI 还只是帮你补几行代码,写点最简单程序,甚至再往前推一年,大家讨论的还是 AI 客服。

如今 20 天、20 万行代码、三款游戏,就是一个老程序员和 AI 合作的结果。

从没有人会想到程序员有一天居然不用手敲代码,行业内还出现了“非遗匠心手写代码,古法编程”的调侃,明示手写代码已是古法。

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

这就是 AI 这枚硬币的两面。

一面是你最熟练的那部分手艺,正在变成AI的默认功能。

AI 已从聊天框里的一问一答,变成了能自己阅读文档、记住上下文、调用工具、主动干活还能检查错误的工具。

这种变化正在从编程领域蔓延到所有脑力劳动,设计从手搓素材变成了生成和调整 AI 生成的方案,视频从手动剪辑变成了创意策划+AI 执行。

各行各业的工作重心正以月为单位被重新定义,人类经验、技能的保质期也在跟着顶级模型的版本号走。

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

而另一面,是一扇你从未打开过的门。

从想法到成品之间的距离被极速压缩了。

一个从未学过剪辑的人,可以把脑子里的画面直接变成一支短片。一个人脑海中恢弘的构想,也不再需要等待数十万资金和一个完整的团队去落地。

执行力是在贬值,但知道“该做什么”的人,比以前会更不可替代。

没人知道这枚硬币最终会落向哪一面。但至少现在,它给了每个人重新发牌的机会。

撰文:刺猬

编辑:莽山烙铁头 面线

美编:素描

图片、资料来源

https://miu2d.com/

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