简介

Adrift 示例应用的概述

adrift 截图

概述

Adrift 是一个基于其专属应用链构建的生存游戏。这是一个由 Syndicate 提供支持的定制化、特定应用的区块链。你是一艘孤舟漂泊在海上。每天,你需要签到以修理你的船并应对海洋带来的各种挑战。有些日子会带来好运,而有些日子则是灾难。如果错过签到,你的船将开始破损。错过太多次签到,你将被海浪吞没。最后一艘漂浮的船将获胜。

Adrift 是 Syndicate 推出的一个游戏应用链。这是一个实时演示,展示了链上排序为链上游戏和其他高度可扩展的链上用例所解锁的潜力。此演示的目标是提供一个全面的、端到端的示例,涵盖:

  • 使用 Syndicate 应用链构建项目的架构
  • 实现自定义排序逻辑(例如随机性、游戏机制)
  • 利用模块化排序和权限管理
  • 展示应用链用户体验、嵌入式钱包设置和合约集成的最佳实践

用户体验

Adrift 被设计为一个简单、互动的游戏,重点展示:

  • 用户引导: 玩家登录(如果是新玩家,将为其创建嵌入式钱包)并在航程开始前加入游戏。
  • 生存玩法: 每天,玩家需要签到以修理他们的船。每次签到都会触发随机事件(可能是好的,也可能是坏的),所有结果都在链上强制执行。如果错过签到,你将立即被淘汰,最后一艘漂浮的船获胜。
  • 透明性: 所有游戏逻辑、随机性和结果都在链上强制执行并可验证,使游戏玩法公平、防篡改且无法作弊。

架构

+-------------------------------------------------+
|                 Adrift Frontend                 |
+-------------------------------------------------+
+--------------------------+ +--------------------+ 
|    Wallet Integration    | |       Indexer      |
+--------------------------+ +--------------------+ 
+-------------------------------------------------+ 
|             Game Contract Factory               | 
|    +--------------------------------------+     |
|    |        Adrift Smart Contracts        |     |
|    +--------------------------------------+     |
+-------------------------------------------------+ 
+-------------------------------------------------+ 
|               Sequencer Modules                 |
+-------------------------------------------------+ 
+-------------------------------------------------+ 
|               Syndicate Appchain                |
+-------------------------------------------------+ 

Adrift 展示了多个技术模式和功能:

  • 链上游戏逻辑: 所有核心游戏机制,包括签到、结果和淘汰,均在应用链上执行和强制实施。
  • 自定义排序模块: 应用与可编程排序模块交互,用于权限管理、交易排序和随机性——实现传统链上无法实现的逻辑。
  • 随机性集成: 随机性由排序器注入并在链上强制执行,使结果防篡改,并消除玩家操控系统的可能性。
  • 智能合约工厂: 游戏合约通过工厂模式部署和管理,以实现可扩展性和模块化。
  • 实时索引器: 索引器读取链上数据并将其暴露给前端,以实现实时更新和透明性(例如,Ponder(在此演示中使用)、Index SupplyThe GraphGoldsky)。
  • 钱包集成: 为所有玩家提供无缝的嵌入式钱包设置和链交互(例如,Para(在此演示中使用)、PrivyDynamicTurnkey)。
  • 交易云 (TC): 在首次登录时,应用通过 TC 提交注册交易,并从合约中为新用户提供资金,使其能够立即进行交易,这与嵌入式钱包的引导相辅相成。
  • 开源: 查看代码

Syndicate 应用链的实现

Adrift 看起来很简单,但在表面之下,它运行在一个基础设施上,该基础设施旨在让开发者对链上交互拥有更多控制权。随机性在排序器级别强制执行,因此一旦玩家签到,结果就被锁定。这在正常操作下最大限度地减少了重组或回滚的风险,并使操控变得极其不切实际,不像大多数链,随机性要么很慢,要么容易受到攻击。

通过 Syndicate 应用链,开发者可以精确编程交易的排序方式、随机性的运作机制、费用的结构以及游戏经济的运行方式。基础设施适应游戏玩法,而不是相反。

  • 可编程排序: 所有交易排序和权限逻辑都在链上,并可通过模块进行升级,使游戏规则防篡改且透明。Adrift 的排序模块可以在 这里 找到。
  • 更低的成本与复杂性: 最小化的链下基础设施,轻松升级,减少运营负担。
  • 原子化可组合性: 支持未来的跨链和多应用协调。
  • 社区所有权: 迈向渐进式去中心化和社区治理的路径。

继续阅读下一部分指南,深入了解 Adrift 的游戏逻辑、合约设置、排序模块、索引器和钱包集成。

了解更多

观看这段简短的视频演示,了解如何在每个区块中注入新的随机性,排序器和智能合约如何确保公平结果,以及为什么这种方法是应用链独有的。Syndicate 的 Caleb 详细讲解了整个流程: