作者:Paul Veradittakit,Pantera Capital合伙人;翻译:金色财经xiaozou
摘要:
- Dojo是基于Cairo语言开发的Starknet链上游戏引擎,旨在利用Cairo的STARK友好语言特性,为高质量的区块链游戏提供一流的开发平台。
- Dojo将ECS游戏开发与区块链开发堆栈相结合,由Torii(自动索引器),Katana(游戏排序器)和Sozo(开发和部署工具链)组成。
- Dojo生态系统应用程序涵盖了开放经济的RTS、MMO、TCG和RPG游戏,特别是那些玩家之间可以交易资源的游戏。例如Realms Eternum、Roll Your Own和Briq。
- Dojo创建了用户定义的区块链“自治世界”,为创造性表达提供了一种新的媒介,Dojo和Starknet很有可能成为该垂直领域领先的技术力量。
1、简介
Dojo是运行在Starknet上的可验证链上游戏引擎,为开发者提供了一个创建高质量链上游戏的工具包,在这样的游戏内,所有资产、用户操作和交易都在Starknet链上进行。在深入了解Dojo的功能特性之前,让我们先来看一下Dojo对Cairo语言的使用情况。然后,我们将研究一些使用这种新颖的链上游戏框架构建的应用程序,最后再来讨论Dojo对链上游戏发展的影响。
2、Dojo的功能特性
Dojo作为游戏引擎包含各种各样的子组件,包括Cairo原生ECS(实体组件系统)、Torii自动索引器、Katana游戏排序器以及Sozo开发部署工具链。让我们一个一个来简要了解。
(1)ESC实体组件系统
ECS是一种通常用于游戏设计的设计模式,它将游戏内互动分为“实体”、“组件”和“系统”三部分。
本质上,实体就是游戏中的agent,比如皮卡丘。这个agent有若干组件,这些组件实质上是功能的模块化分组。某些组件可能包含位置、动作和攻击。这些组件不包含任何逻辑,只包含数据。逻辑是在游戏系统中定义的,用户可以与之互动。例如,用户可以与“用户系统”交互,从“攻击”组件读取数据,然后触发“动作系统”中的某个更新,更新动作和位置组件。此外,不同的实体或不同类别的实体可以共享这些组件的模块化分组。例如,NPC(非玩家角色)可能只有动作和位置组件,没有攻击组件。
因此,ECS是一个非常灵活、直观且强大的框架,游戏开发人员可以使用ECS来设定所有这些不同的agent在游戏环境中如何相互作用。Dojo的亮点之一就是将这个灵活且熟悉的框架部署到Cairo中,这样游戏开发人员就可以在熟悉的过程中快速开发游戏。
(2)Torii:自动索引器
有Cairo原生ECS框架的加持确实很棒,但我们的任务不是开发普通的游戏,而是开发区块链游戏,游戏内所有的资产、状态和逻辑都存储在像Starknet这样的公链上。为此,我们需要某种方式与公共区块链交互并监控链上信息,那就是:区块链索引器。
这就是Torii作为Dojo专用自动索引器的用武之地。Torii可以自动索引Dojo Worlds,为游戏客户端提供低延迟、高性能的GraphQL和GRPC接口,允许客户端实时呈现游戏状态变化。使用Torii,用户可以快速索引部署在Dojo上的链上游戏世界中发生的任何事件。因此,使用Dojo Torii,开发者就不必再为他们的游戏编写自己的索引器了,而编写索引器会带来不必要的开销和错误。
(3)Katana:游戏专用排序器
Dojo工具包中的下一个特性就是Katana游戏专用排序器。Katana是围绕链上游戏开发部署的独特需求而设计的。它旨在作为中央排序器运行,针对低延迟和高吞吐量进行优化,支持本地开发和生产部署。在生产部署过程中,其架构支持执行分片和区域部署,这些部署将形成一个规范的母链,支持游戏向大型用户群横向扩展。
(4)开发部署工具链
最后,Sozo是一组scaffolding脚手架代码,开发人员可以轻松构建、开发、测试及部署脚本。Sozo有一个项目命令列表,例如init、build、test、migrate等,可以节省开发人员开发样板代码的时间,特别是在部署端。凭借一个简单的sozo migrate命令,用户可以快速地将他们的游戏世界部署到链上,Sozo库将协调现有链上数据和新部署代码之间的状态差异。
3、Dojo生态中的应用程序
从上文我们可以看出,Dojo提供了一个全面的开发基础设施,融合了传统游戏开发的一些常见实践(如ECS模型)以及区块链开发(Torii、Katana、Sozo)。现在我们将讨论在Starknet上运行的Dojo生态系统中的一些应用程序,这些应用程序要么目前正在使用Dojo,要么计划在未来版本中使用Dojo。
(1)Loot Realms
由BibliothecaDAO开发的Loot Realms并不是一款单机游戏。更确切地说,它是一个链上IP的松散集合,这些链上IP被用来不断创建许多相关游戏集合,保留自己的lore和经历。诞生于2021年基于文本的Loot NFT系列,今天的Loot已经成为众多游戏的基础。作为全链IP的主要来源,基于Loot的游戏和文化可能在未来成为Dojo生态系统以及更广泛的链上游戏场景中的重要力量。
使用Loot Realms IP开发的主要游戏之一是Realms: Eternum,这是一款基于玩家的Loot Realms NFT的MMO策略游戏。Realms NFT本质上是一个地理区域的地图,该地图标有城市、分区、港口、河流以及铜、石料、煤炭和红宝石等资源。这些决定了玩家可以在他们的Realm开发多少资源,所有这些资源都可以在流动性市场上交易。由于玩家需要不断做出决策并平衡资源,这就提供了一种玩家掌控感,并支持游戏中的战略深度。
另一款基于Loot IP的游戏是Loot Survivor,这是一款基于文本的生存类游戏,灵感来自于Loot的文本起源。从本质上讲,玩家制定RPG战略,与他人竞争战利品,以实时战略方式进行游戏。
(2)Roll Your Own
Roll Your Own是一款由Cartridge游戏公司发行的多人策略游戏,该公司是Dojo的主要开发商之一。它最初是在2021年使用Cairo Zero开发,但随着Starknet升级到Cairo,智能合约必须重写,于是Cartridge使用了Dojo来重写合约。实际上,Dojo最初是专为重构RYO而开发的,这是由Cartridge团队领导的一个过程。
最近在Katana排序器上部署的游戏测试中,RYO在2500多个回合中记录了超7万次交易。这极大地展示了Dojo工具包支持处理游戏应用程序典型的大型计算负载的能力。
(3)Briq
Briq是运行在Starknet上第三个有趣的游戏项目,其团队是运维Dojo软件的开发团队之一。从本质上讲,Briq试图创造一种“链上乐高”的理念,支持玩家铸造“briq”藏品并创建自己的NFT作品。现有的“briq”结构也可以被解构成组件砖,用于搭建其他结构。
4、Dojo对链上游戏的影响
从Dojo的体系结构和应用程序中,我们可以看到对开放游戏设计的重视,在开放游戏设计中,玩家可以相互交换交易。事实上,这可能是区块链承诺新全新游戏体验的一个关键方面——在这种全新的游戏体验中,因为资源是在公共区块链(如Starknet)上共享和注册的,这便增强了游戏的多人交互性。
可以说,这种区块链支持的多人游戏体验的强化是“自治世界”的核心承诺。自治世界里的“世界”是一个自成一体的空间,有自己的规则和独特的文化。拥有一个记录在链上的但由用户自定义的“自治世界”,为创造性表达提供了一个新的平台,这可能是区块链游戏发展的一个重要的长期价值主张。
在这个宏大的构想中,Dojo和Starknet生态系统已准备好成为支持这一发展的行业领先的技术栈。无论是凭借Cairo语言相对于Solidity的语言优势、Starknet的复杂且高性能的STARK证明系统,还是Dojo全面的测试套件和体系结构,这似乎是一个具有强大技术能力的生态系统,可以释放链上游戏和“自治世界”的全部潜力,并最终使Cairo成为一种易于使用且广泛采用的通用编程语言。
0 条评论
请「登录」后评论