周三下午,一个玩家把朋友的《Skate 3》Xbox 360光盘借来,提取文件,覆盖到自己那套原版《GTA:罪恶都市》上。十五分钟后,汤米·维赛迪踩着滑板,在罪恶都市海滩前做了一个豚跳。
这不是某个精心打磨的模组,而是眼下这波 AI 辅助改模浪潮里的一个缩影。改模者正把蜘蛛侠塞进《蝙蝠侠:阿卡姆骑士》,把超级马里奥带进《艾尔登法环》,把《使命召唤:现代战争2》改造成滑板乐园。这些项目移植的不是角色皮肤或武器贴图,而是整套玩法系统——移动、战斗、驾驶——塞进那些压根没为它们设计过的游戏里。
有人把《Skate 3》的滑板物理和动画搬进了《GTA》系列。只要手上有对应游戏的官方文件,就能在《GTA 4》《GTA 3》《罪恶都市》或《圣安地列斯》里玩到滑板系统。甚至有人在《堡垒之夜》当前的 OG 第四赛季里跑通了《Skate 3》的系统。
那位试玩者的体验并不完美:海滨大道的汽车丢了碰撞模型,汤米偶尔会掉进地面的隐形虫洞。但整体运行稳定,他甚至在 50% 重力下踩着滑板完成了头几个任务。同样的操作也适用于《GTA 3》的克劳德和《圣安地列斯》的 CJ,不需要额外下载什么,界面和《Skate 3》文件都保持不变。
别以为这些“凭感觉写代码”的模组,就是让 Claude 生成一段代码、蜘蛛侠便魔法般出现在哥谭。实际情况复杂得多。这些项目确实依赖 AI 编程代理,但开发者仍要检查陌生的代码、理解一款游戏的系统、编写兼容层去桥接另一款游戏,还要排查随之而来的一连串报错。改模者得自己想清楚,什么该和什么通信。
Rust 重写路线更有意思。开发者用 Rust 和 Bevy 这类引擎重建游戏的运行时,再从原版安装目录加载资源。一旦玩法逻辑变成可移植的代码,不同的重写版本就能合并进同一个程序,跨游戏混搭由此变得模块化得多。
还有一类项目走的是更混乱的路子:同时运行两款游戏,再把它们的系统桥接起来。以蜘蛛侠进入《阿卡姆骑士》的哥谭为例,后者提供游戏世界,前者负责机制,底层软件则在两款游戏之间翻译输入和玩法信息。改模者实际上是在说服两款基于不同引擎打造的游戏互相配合、共享资源和系统。
Reddit 和 X 上的病毒式短片,看不到全貌。让蜘蛛侠在哥谭荡上大约 20 秒,足够剪出一条传播力很强的片段,但乐趣往往到此为止——他会撞上一栋只存在于蜘蛛侠碰撞数据里、却不在哥谭移植环境中的建筑。这些项目要对付物理不匹配、动画不兼容、碰撞检测失灵,以及从未设计过彼此通信的玩法系统。让两款游戏短暂合作,比把它们的整个世界长时间融合要容易。
短片之外还有一堆没拍到的东西:任务不工作、敌人没反应、游戏几分钟内崩溃。一个看起来像模像样的概念验证,既解决不了这些必然出现的问题,也不等于有一个谁都能装的模组可下载。
尽管如此,这些实验所代表的东西仍让人难以不兴奋。游戏改模一直由这样一群人推动:他们拆掉游戏的根本部件,换上别的东西,纯粹出于好奇。距离“任何人花一个周末就能把两款游戏揉在一起、还指望体验流畅”的世界还很远,但如果 AI 能帮更多人把荒诞想法变成能跑的原型,沿途多几次壮观的失败,似乎也没什么可抱怨的。
