作者:Ishanee@IOSG
引言:
像《黑暗森林》这样的全链游戏已经证明,你可以把游戏逻辑都放在链上,且由于其具有无许可的互操作性,鼓励了社区创造新工具、联盟和 DAO 等等。在此之前,虽然建立自主世界的范式和动机已经有不少的记载,但目前还未有太多关于全链游戏引擎的文章,这是我们认为这个方向上最迷人的新领域之一。
游戏开发:传统游戏与全链游戏
在过去,像 Unreal、Unity 和 Phaser 这样的游戏引擎被用作传统游戏开发的一站式服务。它包括了开发游戏的基本构建,如控制运动、二维和三维渲染、物体碰撞检测、声音、颜色、脚本等物理引擎,甚至还包括服务器客户端架构、PC / 游戏机 / 手机的框架、交易市场等分配机制。
当《魔兽世界》推出时,暴雪已经在游戏的网络技术栈上做了 4 年,但在游戏内容上只花了一年。Unity 在 2005 年推出后不久,由于其模块化技术栈,开发时间从 4 年缩短到了几个月。
在全链游戏中,游戏状态将全部存储在区块链上,这意味着将面临一系列独特的挑战和创建新的基础设施。第一个为以太坊生态开发的是由 Lattice 推出的 MUD 引擎,之后,逐渐出现其他为不同生态和使用不同编程语言的其他几个引擎,如用于 starkware 的 DojoEngine。
第一个游戏引擎:MUD
Lattice 的 MUD 时在 2022 年第三季度的 0xParc Residency 期间创建的。期间 Lattice 尝试创建几个全链游戏,尽管玩法和风格等都不同,但都遇到了相同的区块链问题。不是复杂困难的技术难题,而是大量繁忙的工作量。就这样,他们推出了 MUD ——第一个全链游戏引擎。
当 MUD 团队尝试创建游戏时,他们确实使用了 PhaserJS、Three 和 Godot 等游戏引擎或工具,但这些都是客户端引擎,其主要工作是接受世界的状态并让玩家可读。过去分享的是世界的状态 ——“象在棋盘上吗?”,而可读性是“ 具有花哨 3D 投影的象棋子,基于象移动规则的点击和拖动在棋盘上移动它的用户界面“。
如何理解MUD所用的引擎架构ECS
他们使用 ECS (entity component system - 实体组件系统)架构,在这个框架中,每个全链游戏都将部署一个世界合约,是这个世界中所有物体(Entity)的注册表。Entity 是数字 ID,组件是附着在 Entity 上,可以被添加到世界中。
在这个例子中,Entity 1 可以是一个龙的角色,Position、CanFly 和 Price 是 3 个不同的组件。组件本身没有任何逻辑,他们可以通过系统合约被添加到新的 Entity 中。一个系统合约需要对所有者的组件进行写入访问。在 MUD 中,第 1 方和第 3 方开发者之间没有区别。
StarkNet 上的 Dojo Engine
Dojo Engine 是一个开源的 ECS 框架,就像为 StarkNet 生态建立的 MUD,但不兼容 EVM,用 Cairo 编写。Dojo的工程师团队包括Realms,Briq,cartridge_gg,topology,starknet等项目方团队。
首款游戏:黑暗森林
黑暗森林是一款 MMORTS 太空征战游戏,玩家在无限随机生成的宇宙中发现和征服星球。该游戏的测试版于 2020 年推出,其 V0.3 版本在 Ropsten 测试网持续了 1 周的发布。参加测试的玩家被列入白名单,并争夺 1024Dai 作为奖池的一部分。到目前为止,超过 1万名玩家参与了黑暗森林的回合,在 Ropsten、xDai 和 Gnosis Chain 上消耗了数万亿的 gas。
黑暗森林生态系统
-
插件
-
替代客户
-
GPU 矿工
-
公司玩家
-
数据 / 广播市场 —— 玩家可以通过数据市场增加新功能,并在游戏中应用。
黑暗森林并不区分玩家是 EOA 还是智能合约玩家,新类型的游戏者社区出现了。
-
DF DAO - 2021 年 5 月创建
-
Orden GG -另一个与DF DAO 竞争的联盟
-
Astral Colossus 是DF DAO 的一个智能合约(机器人)玩家。这个玩家有几个限制,如不能提取资源,并以提高黑暗森林 DAO 在排行榜上的分数为唯一目标进行游戏。为玩家贡献了任何一轮胜利的成绩都会被记录在案。
全链游戏生态
正如你所看到的,以太坊、OP 和 StarkNet 是 3 个关键的生态。
全链游戏发展的挑战
这些挑战可以分类为技术、onboarding 和经济变现三个方面。
技术
开发全链游戏需要复杂的技术,仍然是一项艰巨的任务。有了 MUD 和 DOJO 的加持下,虽然开发门槛变低了,但还是不能像 Unity 那样为开发者提供便利。游戏开发的技术挑战还包括可扩展的挑战,
这就是为什么几个团队使用了 Caldera 这样的 rollup as a service 的公司来创建 OPStack,或使用客户端证明,或直接构建在 L2 上。一些建设者也在密切关注像 RiscZero 这样的可验证的去中心化计算网络,以扩大他们的智能合约的应用范围。Gas 优化也是一个大问题,这部分与技术和可扩展性有关,部分与游戏设计有关。
SNARKs 被用于保护隐私或用于可扩展性。黑暗森林使用 zkps 来为游戏增加不完整性,没有它,任何玩家都可以看到整个世界观,其他则用它将繁重的计算任务放到客户端并同步状态(例如 playmint)。
Onboarding
如果全链游戏像吸引更多的链游社区(在他们考虑大规模采用之前),钱包管理是最重要的。由于游戏完全在链上,游戏者很可能不得不为每一个游戏中的行动的弹出窗口签名,这将使得用户体验很糟糕。Session Keys 是解决这个问题的最简办法,但存在潜在的安全隐患。目前的游戏开发者并不希望玩家在他们的钱包中持有高价值的物品,所有目前这并不是最紧迫的问题,但随着越来越多的玩家涌入,这个问题迟早得解决。
另一个方面是开发人员的 onboarding,以鼓励和吸引游戏改装者贡献和扩展游戏,这自然会增加自主世界的价值。这主要是通过为开发者提供适当的工具,以及确保适当的变现或奖励他们的贡献来实现的。
经济变现
随着第一个链上游戏的成功,这个挑战将会变得更加清晰。游戏世界内的经济将有助于任何全链游戏本身的乐趣、挖矿和资源收集,并需要进行多次调整,以确保玩家在游戏中获得乐趣。
如今的游戏开发者变现的一个有趣方式是通过 sequencer 费用、在游戏中使用他们的代币和在 L2 上使用代币来得到想要的 gas。
展望
这些引擎的快速迭代,开始让我们看到一个具备可组合性、可扩展的、全开放的全链游戏时代的到来。尽管目前的全链游戏可玩性和交互难度还有待优化、可部署游戏的种类和技术的限制也非常明显。但是全链的路线在真正颠覆传统游戏逻辑,是继DeFi后我们看到的能将叙事和产品结合起来的最具潜力赛道之一。这种符合原教旨主义的特性也让开发者社区的质量和活跃度非常高。很快,全链游戏的各个引擎之上将出现依托于其底层架构的一系列生态游戏、工具、公会及其他项目,并将诞生真正的元宇宙经济和社交。