Dojo 的历史
在寻求全链游戏引擎正确实现的探索之旅中,先驱者们孜孜不倦地持续深耕。自 2021 年以来,这些探索的亮点可以总结如下:
Dope Wars Engine(RYO):最初,基于 Starknet 的引擎概念源自游戏 Dope Wars。于 2021 年 9 月,开始开发了一个名为「Roll Your Own」(RYO)的引擎,用于创建 Dope Wars 的游戏生态系统。尽管这个引擎并不是非常通用,但它仍是一个早期的尝试。
对全链自治世界的探索:随着时间的推移,Starknet 上的几个活跃的核心项目,如 Loot Realms、Topology、Influence 等,尝试独立开发围绕全链自治世界的概念。
MUD 的出现:MUD 的出现为在 Starknet 上实现全链自治世界的概念注入了新的活力。与此同时,随着 Cario 1.0 的发布,也为在 Starknet 上的全链游戏进行新的尝试创造了机会。
Dojo 的诞生:在 StarkWare 发布 Cario 1.0 后不久,来自 Loot Realms 的核心贡献者、Cartridge 的创始人以及 Briq 的创始人提出了在 Starknet 网络上开发一个全链游戏引擎的构想。到了 2023 年 2 月,Dojo 正式诞生。
Dojo 的发展轨迹:在早期,Dojo 主要集中于在 Starknet 上用 Cario 语言实现 MUD。然而,随着时间的推移,Dojo 开始探索自己不同的发展道路,逐渐与 MUD 产生差异。
Dojo 生态系统包括以下核心组件,如下图所示:

ECS(实体组件系统):这是一个在 Cairo 中开发的实体组件系统。它使游戏开发者能够为游戏实体分配不同的功能(组件),从而创造出多样且复杂的游戏。它充分利用了区块链技术的透明性和去中心化特性,支持在区块链上开发复杂、动态的游戏。
Sozo 迁移规划工具:Sozo 是专为在 Starknet 上部署游戏构建和规划迁移策略的工具链。它简化了在区块链上部署游戏世界的流程。
Torii 网络和索引堆栈:Torii 在 Dojo 生态系统内扮演着全面索引和网络层的角色。它用于从基于区块链的游戏世界中检索各种事件和数据。Torii 高效地组织 Dojo 世界的状态,使客户端能够高效查询数据。它还支持 GraphQL 查询,提供了数据检索的灵活性。
Katana RPC 开发网络:Katana 是一个专门用于支持 Dojo 本地开发的高速 Starknet 节点。它允许开发者在开发网络上测试应用程序,也包括发起交易。Katana 提供了方便的 RPC 接口,便于开发者与 Starknet 进行交互、测试交易和配置网络。它还遵循 Starknet JSON-RPC 规范,包括原生 Starknet JSON 调用,如 starknet_getTransactionReceipt 和 starknet_getStorageAt。
这些组件协同操作,为 Dojo 生态系统奠定基石,提供了强大的工具和平台,用于开发复杂的基于区块链的游戏。