详见 docs/contributing.md
。它比较好地说明了如何在 Windows 和 Linux 上编译。
Project Alice 是以 Alice Roosevelt Longworth 的名字命名的。它的目标是建立一个全新的 Open V2 版本,而我最初的想法是克隆一个 V2 ,并在此基础上开发一个完整的游戏。这意味着在早期的开发中,基本上就是复制 V2 的机制,在 1.0 版本发布之后,才会开始考虑新增特性。
目前,我们在重构 OpenV2 方面进展不错,但是我们仍然没有赶上 OpenV2 的进度。不过相比于之前,我们的进展要快得多了。这主要是因为现在有其他人共同贡献他们的才华(Openv2 只有一个人开发),同时我也不会再犯之前的错误。
开发者被分为 UI、地图、核心和自由职业者小组(未来可能还会增加一个启动器小组)。UI 和地图小组,正如他们的名字一样,主要负责开发游戏界面和地图;核心小组目前只有我和一些开发者,他们注重实现游戏的内部逻辑;自由职业者是一个总称,指的是那些已经做出了一些贡献,但还没有承诺从事某项工作的人。如果想要加入这些团队,只需要提交一个 PR 即可。(详见 贡献)
除此之外,我希望能够找到一些有天赋的美术家,他们可以重新创造 V2 所需的素材,从而为这个项目打造独特的美术风格。虽然我知道这很难实现,但是我们将不必进行 3D 建模。由于 SOE 项目的帮助,我们已经获得了一套可供使用的旗帜资源,对此我表示感激。
就我个人而言,我承诺每个工作日至少在项目上工作半小时。这并不一定是编写代码,也可能是编写文档或者进行研究,甚至只是思考。但是对我来说,承诺非常重要。
与 SOE(Symphony of Empires 帝国交响曲)相比,这个项目是基于 V2 的克隆,而 SOE 是一个独立的游戏。尽管如此,我仍然倾向于把它们看作是姐妹项目。我们这里确实有一些人同时参与了这两个项目(我自己偶尔也会在那里提建议),如果你的成果被他们使用,我相信他们会感谢你的贡献。同样的,我们也会使用他们的一些成果。
关于 OpenVic2 项目,尽管它被“标榜”为 V2 的“克隆”,但这并不是他们的主要目的。相反,他们打算打造一套全新的系统,包括事件、决策等,使其更像是一个具有“V2 风格”的游戏。此外,该项目还有着非常不同的管理风格。如果你对 Project Alice 和 OpenVic2 都感兴趣,我建议花时间了解这两个团队,并甚至可以加入这两个项目。
所有代码都将在 GPL3 许可下发布(与 OpenV2 相同)。美术素材的许可证将由美术团队决定,但我更喜欢某种形式的“共同创作”。
该项目使用 CMake(是的,我知道我们都讨厌 CMake)。理想情况下,三大编译器都可进行编译:MSVC、Clang/LLVM 和 GCC。我个人倾向于使用 MSVC,但我也在 Windows 上使用 Clang。确保在 GCC 中成功编译将是贡献者们需要解决的问题。如果没有人使用 GCC,那么它可能会从支持列表中消失。
就我个人而言,我使用 Visual Studio 2022(社区版)进行工作。如果你想做出贡献,你可以使用任何你喜欢的工具,包括 VS Code、CLion、EMACS、VI 等等。
在最开始,Project Alice 将尽可能地模仿 Victoria 2 的机制,但也会有一些小的例外。毕竟我们可以改进很多东西。我以这样的心态进入了 OpenV2,但在进行的过程中修改了太多东西,这也是该项目被搁置并最终放弃的主要原因之一。我不想再犯同样的错误,所以这一次我将尽可能抵制改进的冲动,直到我们拥有一个可以工作的、功能完整的游戏。然而,有几处改动是必须做的:比如地球地图实在太有趣了,不能不放进去;还有一些 QOL 方面的改进(比如超链接让你查看事件内容或触发原因的摘要),这些改进很容易,也很有价值。但是这次没有对机制进行重大调整!我保证!
开发者们都在 Discord 上联系,这对大部分中国人来说确实是一个问题。如果有许多中国人想参与到项目中,我(译者)或许会考虑建立一个 QQ 群来方便交流。
English(此版本由 Stevezxc 翻译于 2023/05/29 09:15 UTC+8)