二十年前,一群《文明 III》的模组作者聚在一起吐槽:为什么这个我们最爱的游戏,却像个被锁在玻璃柜里的古董?模组想加点新功能,撞的是硬编码天花板;想改点平衡性,面对的是二进制墙的冷酷拒绝。二十年后,他们决定自己动手砸掉这柜子——OpenCiv3 项目由此诞生。

这事儿放在游戏圈有点反常识。《文明》系列粉丝向来有「掐架」传统:老派玩家捧着《文明 II》或《文明 IV》当圣经,中间夹着的《文明 III》反而像个尴尬的存在。OpenCiv3 的创始人 WildWeazel 在 Hacker News 上被问到这层时,回答得相当直白:「这个项目就是从 Civ3 模组社区里长出来的,我们这群人等了二十五年。」确实,Steam 上 Civ3 的在线人数和活跃的多人联赛,远比外界想象的要热闹。

但社区热情只是起点。真正让技术人眼前一亮的是他们的技术选型:Godot 引擎配 C# 语言。创始人坦言,团队全是 .NET 背景,Godot 3.x 时代的 Mono 支持虽然不算完美,但比 Unity 的魔改 .NET 要清爽。代码架构上,他们把游戏逻辑封装成纯 C# DLL,只在最外层留一层薄薄的 Godot UI 调用。这样做的好处是,模组开发者几乎不用碰引擎那一套类型转换的坑,专心写 C# 就能魔改游戏机制。不过有开发者吐槽,Godot 4 里的 C# 仍是二等公民——Web 平台导不出去,内存分配效率也打了折扣。

项目代号「C7」(Civilization 7 的占位符)暗示了野心:不仅要做重制,更要当 Civ3 的「完全体」。开发者在论坛上列出的目标清单相当硬核:移除原版毫无道理的限制,修复那些官方从未承认的 Bug,扩展模组可能性的边界,支持现代图形和平台。说白了,就是「C3C 能做到的,我们全要;C3C 做不到的,我们更要做」。

一个开源游戏在 Mac 上能有多难?

OpenCiv3 的 Mac 支持堪称灾难现场。开发团队在 GitHub 安装说明里写的操作指南,对新用户几乎是劝退级别:「Mac 会拼命阻止你运行,告诉你应用已损坏,还贴心地帮你把它扔进废纸篓。你需要在终端执行 xattr -cr /path/to/OpenCiv3.app 才能解锁。」

有用户尝试后报告,执行完命令依然报错:「Launch failed, error code 163」。资深开发者 freakynit 捅破了窗户纸:苹果把应用公证(notarization)搞得形同虚设。开发者花 100 美元年费注册账号,上传 DMG 文件,理论上几分钟就能拿到盖章。[Team is not yet configured for notarization] 这个 Bug 却能在论坛里躺好几年,苹果官方邮件确认「这是我们的问题」,但就是不修。结果就是开发者无法公证应用,用户不得不一遍遍执行「终端巫术」。

评论区为此吵成两派。一派认为苹果这套机制保护了普通用户(「你得为 Grandma 着想,她可分不清是不是钓鱼软件」),Gatekeeper 对 99% 的用户无感知的静默扫描,本质是安全进步。另一派则炸了:「用户想跑个开源游戏还得给苹果交保护费?」更有人指出,这不过是苹果把 iOS 那套「围墙花园」慢慢搬到 macOS 上。创始人自己承认:「Mac 支持是我存在的痛苦,我们核心贡献者里没人用 Mac,谁愿意当小白鼠?」

AI 该赢,还是该「演」?

OpenCiv3 的评论区里有个被点赞最多的脑洞:能不能用 LLM 做外交系统?这个提议瞬间引爆了关于游戏 AI 设计的深层矛盾。

有玩家幻想,让 AI 用自然语言跟你扯皮、威胁、谈判,把《文明》变成外交模拟器。但马上有人搬出 Soren Johnson(Civ3/4 主设计师)的经典演讲《Playing to Lose》——Civ 的 AI 从来就不是设计来「赢」的,而是要让玩家感觉像个真实领袖,不能太冷血。真把 AI 调得精明无比,玩家又会抱怨「这不真实」。

这种矛盾在 Civ5 的「Vox Populi」模组里表现得淋漓尽致。这个社区的 AI 能伞兵偷袭你的战略资源,「那一刻我震惊了,官方 AI 连两栖登陆都玩不明白」。可一旦 AI 太强,又有人骂「这简直是作弊」。开发者指出,所谓「作弊」其实是在现有机制下打擦边球:AI 不需要「迷雾」,也不受微操限制,这都是性能妥协的产物。

有评论说破真相:「游戏设计师老整这种用户不友好的烂活,逼得 modder 用 submod 修复。」比如《罗马 2:全面战争》的 DEI 模组,最火的功能就是「让 AI 和玩家遵守同一套规则」。开发者想的是「降低门槛」,硬核玩家要的是「别把我当傻子」。OpenCiv3 选择站在后者这边:Lua 脚本接口已经实装,C# SDK 也在规划中,目标是「所有机制都能被模组重写」。

当官方续作变成「半成品」

评论区里对 Civ7 的吐槽几乎成了一场集体创伤疗愈。玩家们列出的罪状包括:强制切换文明的设计突兀得像桌游,UI 既密集又空洞,时代推进机制「非黑即白」,最不能忍的是游戏在 20 世纪中期戛然而止,「明显没做完」。bigstrat2003 的总结很有代表性:「他们偏离公式太远,以至于不像《文明》了。我愿意尝试,但绝不会花 70 美元买一款半成品。」

这种失望反而成了 OpenCiv3 最好的广告。与其等待 Firaxis 用 DLC 补完游戏,不如让社区把二十年前被商业限制砍掉的功能一次性实现。WildWeazel 明确表示,默认模式会 1:1 复刻 Civ3 的机制,但所有系统都设计为「可重新配置」,希望等达到功能对平时,社区已经造出了原版不可能的模组——比如那个 LLM 外交系统。

这揭示了一个残酷现实:商业游戏开发越来越倾向服务化,而硬核玩家要的是「无限可定制」的工具箱。OpenCiv3 的 MIT 协议、Godot 引擎选择、支持原版资源导入,全都指向这个方向:与其做「更好的《文明》」,不如做「能让玩家自己造出更好《文明》的平台」

开源游戏复刻的「家谱」

OpenCiv3 并非孤例。评论区随手就列出一套完整的「《文明》替代品家谱」:

  • FreeCiv:主攻 1-2 代,有自己的规则集,也能模仿原版
  • OpenCiv1:GitHub 上有个项目在逆向 Civ1,已可玩
  • C-Evo:Civ II 精神续作,特点是 AI 插件化
  • UnCiv:专精 Civ V 的移动端/桌面端克隆
  • FreeCol:复刻《殖民统治》(Civ 衍生作)
  • Call to Power II:Activision 当年另起炉灶的「非官方 Civ」,2003 年开放了源码

这套家谱暴露了一个规律:社区复刻总是选择「上一代」游戏。一方面,技术复杂度可控——Civ3 的 2D 像素美术和相对简单的机制,用 Godot 这类现代 2D 引擎就能吃透。另一方面,法律风险更低,二十年前的老游戏版权方懒得追究。更重要的是,这些游戏承载了那一代玩家的「初恋滤镜」,正如 thrance 说的:「你最喜欢的《文明》,就是你第一次玩的那作。」

结语:模组社区的复仇

OpenCiv3 的野心,是用现代开发流程重做二十年前的地下模组文化。它不在意 Civ7 的在线人数,不追求 4K 渲染管线,甚至不打算做「更好的 AI」——它只想把钥匙交给玩家。创始人说:「我们不是游戏工作室,只是一群热爱 Civ3 的玩家,在造自己梦想中的免费版本。」

当 3A 游戏越来越像电影、越来越封闭时,这样一群老炮儿用开源许可证、Discord 频道和 GitHub issue 把游戏变成了公共基础设施。Mac 用户可能得先学会终端咒文,AI 外交可能永远是饼,但如果你想知道《文明 III》本可以是什么样,OpenCiv3 已经给出了一个答案:一个没有商业天花板、只有代码和创意的平行宇宙。

想尝鲜?GitHub 上的 v0.3 「Dutch」预览版已经能跑,支持 Windows/Linux/Mac,有 Civ3 本体就导入资源,没有也能用占位符开玩。只是别在周五晚上下载——你可能会「再一回合」到周一早上。

在这里插入图片描述

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐