Interpreting Dojo: What’s so special about Starknet’s on-chain game engine?
撰写:PAUL VERADITTAKIT
Compiled by: Xiaobai Navigation Coderworld
Dojo 是一个可验证的 Starknet 链上游戏引擎,为开发者提供了一个工具包来创建高质量的游戏,其中所有游戏中的资产、用户操作和交易都发生在 Starknet 链上。让我们在讨论 Dojo 的功能之前,先探索一下 Dojo 对 Cairo 语言的使用。然后,我们将检查使用这一新颖的链上游戏框架构建的一些应用程序,最后讨论 Dojo 对链上游戏发展的一些意义。
Dojo 的功能
作为游戏引擎,Dojo 包含各种子组件,包括本地 Cairo 的 ECS(实体组件系统)、Torii 自动索引器、Katana 游戏排序器和 Sozu 开发部署工具链。让我们简要讨论一下这些。
实体组件系统(ECS)
ECS 是一种通常用于游戏设计的设计模式,它将游戏中的交互分解为“实体”、“组件”和“系统”。
基本上,实体表示游戏中的一个代理,如皮卡丘。这个代理具有多个组件,这些组件本质上是功能的模块化分组。一些组件可能包括位置、移动和攻击。这些组件不包含任何逻辑,只包含数据。逻辑在游戏的系统中定义,用户与之交互。例如,用户可能与“用户系统”交互,然后从“攻击”组件读取数据,然后触发“移动系统”的更新,然后更新移动和位置组件。此外,不同的实体或实体类别可能共享这些组件的不同分组。例如,NPC(非玩家角色)可能只有移动和定位组件,而没有攻击组件。
因此,ECS 是一个令人难以置信的灵活、直观且强大的框架,游戏开发者可以用它来指定所有这些不同的代理如何在游戏环境中相互作用。Dojo 的亮点之一是将这个灵活和熟悉的框架实现到 Cairo 中,这样游戏开发者就可以快速地以熟悉的流程开发游戏。
Torii:自动索引器
拥有 Cairo 原生的 ECS 框架是伟大的,但我们的任务不是开发普通游戏,而是特别是Blockchain游戏,其中所有资产、状态和逻辑都存储在像 Starknet 这样的公共Blockchain上。为此,我们需要某种与公共Blockchain交互并监控链上信息的方式:Blockchain索引器。
这就是 Torii 的用武之地,它是 Dojo 特定的自动索引器。Torii 自动索引 Dojo 世界,并为游戏客户端提供低延迟、高性能的 GraphQL 和 GRPC 接口,允许它们实时呈现游戏状态更改。使用 Torii 允许用户快速索引在 Dojo 上构建的在链上部署的游戏世界中发生的任何事件。因此,使用 Dojo 的 Torii 减少了开发者为自己特定的游戏编写自己的索引器的需要,这可能会引入不必要的开销和错误。
Katana:针对游戏的排序器
Dojo 工具包中的下一个功能是针对游戏的 Katana 排序器。Katana 的设计考虑了链上游戏开发和部署的独特需求。它旨在作为一个中心化的排序器运行,优化了低延迟和高吞吐量,支持本地开发和生产部署。在生产部署中,其体系结构支持执行分片和区域部署,这些部署汇总到一个规范的父链中,允许游戏横向扩展到大量用户基础。
Sozo:开发和部署工具链
最后,Sozo 是一组脚手架代码,允许开发者轻松构建、开发、测试和部署他们的脚本。Sozo 有一系列项目命令,如 init、build、test、migrate,可以节省开发人员开发样板代码的时间,特别是在部署方面。使用简单的 sozo migrate 命令,用户能够快速在链上部署他们的游戏世界,Sozo 库将调节链上现有数据和新部署代码之间的状态差异。
Dojo 生态系统应用
从上述可以看出,Dojo 提供了一个综合的开发基础设施,将传统游戏开发的一些常见做法(如 ECS 模型)以及Blockchain开发(Torii、Katana、Sozo)结合在一起。现在我们将讨论 Dojo 生态系统中的一些应用程序,这些程序在 Starknet 上运行,目前使用 Dojo 或计划在未来版本中使用 Dojo。
Loot Realm
由 BibliothecaDAO 打造的 Loot Realms 不仅仅是一款游戏。而是一个松散的链上 IP 集合,正被用于连续创建许多相关游戏、自己的传说和历史。它起源于 2021 年基于文本的 Loot NFT 收藏,如今 Loot 已成为许多游戏的基础。作为一个完全在链上的主要 IP 来源,基于 Loot 的游戏和文化可能会在 Dojo 生态系统以及更广泛的链上游戏界中成为未来的重大力量。
使用 Loot Realms IP 开发的主要游戏之一是基于玩家 NFT 的 MMO 策略游戏 Realms: Eternum。本质上,Realm NFT 是地理区域的地图,具有城市、区域、港口和河流等特征以及铜、石头、煤和红宝石等资源。这些 NFT 的特征决定了玩家可以在其领地上开发的资源量,所有这些资源都可以在流动市场上进行交易。由于玩家需要不断做出战略决策和平衡资源,这给予了玩家控制感,并为游戏提供了战略深度。
另一个基于 Loot IP 的游戏是 Loot Survivor,这是一款受 Loot 的文本起源启发的文字生存游戏。基本上,玩家开发 RPG 风格的策略,与其他玩家争夺战利品,并以实时战略的方式进步。
Roll Your Own
Roll Your Own 是 Cartridge Gaming Company 开发的多人策略游戏,该公司是 Dojo 背后的主要开发者之一。它于 2021 年原本是用 Cairo Zero 制作的,但随着 Starknet 升级到 Cairo,智能contract必须重写,Cartridge 使用 Dojo 完成了这项工作。事实上,Dojo 最初就是为了重建 RYO 而开发的,这个过程由 Cartridge 团队领导。
在最近在 Katana 排序器上部署的玩家测试中,RYO 记录了超过 7 万次交易,玩了超过 2500 轮。这充分展示了 Dojo 工具包能够实现和处理游戏应用典型的巨大计算负载。
Briq
Briq 是 Starknet 上的另一个有趣的游戏项目,其团队是维护 Dojo 软件的开发团队之一。本质上,Briq 旨在创建一个“链上乐高”理念,允许玩家铸造“briq”收藏,并建立自己的创作,然后将其导出为 NFT。现有的“briq”结构也可以拆解回它的组成砖块,然后用于建造其他结构。
Dojo 对链上游戏的意义
从 Dojo 的架构和应用程序可以看出,重点明显在于开放的游戏设计,玩家之间可以交易资源。事实上,这可能是区块链承诺新的游戏形式的一个关键方面——一个共享资源并注册在公共区块链(如 Starknet)上的游戏形式,这增强了给定游戏的多人互动性。
可以说,这种由区块链支持的增强的多人游戏体验是“自治世界”的核心承诺。按照这个定义,“世界”是一个自成一体的空间,有自己的规则和独特的文化。拥有区块链记录但由用户定义的“自治世界”提供了一个新的创造表达的平台,这可能是区块链游戏进化的一个重要长期价值主张。
在这个宏伟的蓝图中,Dojo 和 Starknet 生态系统已做好充分准备,能够成为实现这一发展的行业领先的技术堆栈。无论是 Cairo 相对 Solidity 的语言优势,还是 Starknet 先进且高性能的 STARK 证明系统,亦或是 Dojo 全面的测试套件和架构,这个生态系统似乎拥有释放链上游戏和“自治世界”全部潜力的技术能力,并最终使 Cairo 成为一种易于使用的通用编程语言,被广泛采用。
The article comes from the Internet:Interpreting Dojo: What’s so special about Starknet’s on-chain game engine?
相关推荐: MetaMask的增长飞轮正在失效,泛用户应用是新“入口”的中心
本文将分析MetaMask增长飞轮的启动与运行,以及为何可能正在失效。 作者:Pengyu, Co-founder of Particle Network MetaMask是业内最知名的wallet产品,其影响力已经超越了钱包领域,给人一种几乎不可撼动的印象。其核心原…