转发原文标题《Provable Goblins》
在探索自治世界(Autonomous Worlds,简称AWS)时,我们不得不面对一个棘手的三难困境。如何让AWS支持数百万玩家同时在线,这确实是个令人头疼的挑战。
Rollups的出现部分缓解了这个困境,将其简化为两难问题,这得益于它们继承了结算层的安全性——前提是Layer 1(L1)本地资产和无许可退出机制能够正常运作。
乐观汇总(Optimistic Rollup)让开发者不得不在可扩展性和安全性之间做出取舍。有些方案选择牺牲部分安全性,转而采用替代数据可用性(alt DA)或等离子DA来提升扩展性。相比之下,ZK Rollup通过零知识证明技术,能够以最小的信任假设验证状态完整性,有望同时解决可扩展性、安全性和去中心化这三大难题。可以说,ZK技术代表着最终的解决方案。
从《大金刚》看游戏进化:链上、可证明与回归
链上游戏为我们提供了言论自由和信息主权的保障,这些特性源自区块链共识验证机制。而可证明游戏则利用zk证明技术,无需庞大的共识机制就能验证游戏状态和计算过程。使用Cairo、Noir等语言编写,或在RISC-Zero等zkVM上运行的游戏,可以像浏览器应用一样独立运行,同时确保执行结果的可验证性。这为链上游戏行业开辟了全新的可能性。
以经典游戏《大金刚》为例,目前要上榜高分榜,玩家必须在认证设备上游戏以防作弊,还要全程录像。但如果将其改造成可证明游戏,玩家只需提交游戏证明供验证即可参与排名。这样玩家就能在家中舒适地争夺”金刚之王”称号,无需繁琐的录像流程!
当然,在独立zkVM中运行完整游戏仍面临挑战。为此,Dojo生态系统正致力于简化流程,降低复杂度。Tonk等团队已在可证明游戏领域取得突破,比如在zkVM上运行Doom,预示着”可证明Doom”时代的来临。随着证明成本下降和Stwo等新型证明者的出现,可证明游戏的设计空间正在快速扩展。
值得注意的是,可证明游戏不一定要在独立zkVM中运行才能发挥优势。我们可以在迷你StarkNet网络上以少量参与者运行游戏,同样能获得可靠的安全性保障。
这种方法也不是非此即彼的。开发者完全可以在EVM上运行链上游戏,同时叠加基于Cairo的游戏层,在保持核心玩法的基础上扩展更多功能。
为什么要费心验证游戏?
试想如果RuneScape突然关服,所有玩家的游戏数据永久消失,会引起多大的愤怒。这在传统游戏服务器关闭时是必然发生的。我们能否做得更好?能否创造一个像RuneScape那样丰富多元、又不会因服务器关闭而消失的游戏世界?
这正是整个链上游戏领域正在攻克的难题:打造持久、永恒且自治的游戏世界。众多团队正在探索不同路径,这种创新和实验精神正是行业所需要的。
虽然链上游戏创新层出不穷,我们更关注利用Cairo和Starknet VM探索可证明游戏的技术路线。本文旨在通过RuneScape这个经典案例,将可证明游戏的概念转化为具体示例。
本文创作灵感源自Skystrife的Kooshobas在Eth Istanbul的精彩演讲
打造可证明的哥布林世界
让我们以RuneScape为蓝本,构建一个可证明哥布林存在的游戏世界。我们将重点放在游戏初始区域Lumbridge及其周边环境:
Lumbridge城堡、茂密森林、哥布林和玩家背包物品构成了这个世界的基本元素。要实现可证明的哥布林系统,我们需要:模拟哥布林和其他生物的动态行为,创造生动的游戏世界;实现玩家拾取物品时的实时背包更新;全局跟踪并保存玩家进度,确保游戏体验的一致性;设计防作弊机制维护游戏公平性;以及支持数百万玩家同时在线的扩展能力。
传统游戏与现代扩展
传统游戏依赖中心化服务器处理游戏进程、NPC行为、玩家状态、物品管理和规则执行等核心功能。要扩展规模,就需要增加服务器数量,并对游戏状态进行分片处理,为不同玩家群体提供独立的游戏实例。虽然这种中心化方案行之有效,但也意味着开发者拥有最终控制权,包括随时关服的权利。这正是催生链上游戏行业的根本原因——人们渴望拥有一个无需信任的RuneScape…
传统区块链方案的局限
虽然理论上可以用传统区块链方法复制中心化服务器的功能,但实际上很难支持超过几千名并发玩家,主要受限于以下因素:
交易验证机制要求每个玩家操作都必须由网络中的多个节点验证处理。这种通过复制处理和共识机制确保安全性的设计,也带来了交易处理速度(TPS)的瓶颈。当然,可以采用类似大多数L2那样的单一中心化排序器方案来绕过这个问题——但这又引入了额外的信任假设。
区块链虚拟机的TPS限制直接影响游戏处理玩家操作的能力。当玩家数量和行为超过区块链TPS容量时,就会造成交易积压,导致gas费飙升和游戏体验恶化。这实际上限制了单个区块链排序器能支持的并发玩家数量。以太坊提出的以Rollup为核心的路线图,正是通过将执行层转移到Rollup来解决这一扩展难题。
在Rollup上运行游戏世界确实能显著提升扩展性,但如果没有zk证明,我们仍需要依赖庞大的共识机制或不稳定的信任假设,这存在风险。因此,虽然zk技术尚未完全成熟,但它被认为是终极的扩展解决方案。
ZK层与OP层在信任假设上的对比。ZK方案所需的参与度更低,信任假设更强,使得迷你zk rollup成为可能。
可证明方案:递归证明与多层协议
区块链的核心目标是让用户对其行为拥有绝对信任。这一原则在业界常被忽视——如果我们不致力于创建去信任系统,那与使用性能出色的中心化服务器又有何区别?
在我们的RuneScape世界中,我们将重点采用STARK首创的递归扩展技术。Tarrence曾就此撰写过深度分析,强调递归证明对维持L2、L3协议最小信任假设的重要性。
我们可以利用递归证明来扩展和分割游戏世界,同时确保玩家击败的每个哥布林都是真实存在的。基本架构如下:
架构解析
L1以太坊作为最终状态层,确保任何人都能根据需要重建L2状态。这是所有真正Rollup的基础。
L2 Starknet负责解决L3状态问题,任何人都能据此重建L3。这里保存着整个游戏世界的全局状态。
L3 Realms World或其他L3链是支持玩家全局状态的高性能执行层。我们在此保存Lumbridge分片的最终状态,便于在需要恢复玩家数据时快速创建新分片。
临时性Lumbridge分片强调高效安全地管理每个玩家的游戏状态——这是所有玩家最关心的核心数据。通过链分片技术将每个分片限制在约30名玩家(实际数字可能更高,这里仅为示例),我们既保留了传统服务器的架构优势,又通过zk证明确保状态变化的完整性。这种设计让我们能够水平扩展到数千个分片,同时保持游戏性能。
RuneScape的应用实践
这与传统游戏服务器的水平扩展理念相似,我们将游戏世界划分为多个小型分片,使系统能够支持数百万并发玩家。与传统方案的关键区别在于,玩家对自己的游戏状态拥有完全控制权,确保了更高的自主性和安全性。每一份游戏状态都可以被完整重建!
举例来说:当玩家进入Lumbridge区域时,系统会将其分配到一个临时链,与最多29名其他玩家互动,通过快速低成本交易确保高性能体验。更具体来看:
森林区域拥有木材等资源。通过临时链,系统可以追踪玩家在森林中的移动轨迹,利用分片提供的廉价计算能力实现移动物理效果。玩家可以砍伐树木获取资源,提升等级和装备。
哥布林等低级怪物可以通过排序器内置的游戏时钟进行高效模拟。游戏开始时,排序器会推进游戏状态和怪物位置,直到玩家出现并将其击败。由于限制了玩家数量,我们可以充分利用分片带宽来增强NPC行为。
散落的物品或怪物掉落物可以被拾取并存入玩家背包。当游戏会话结束时,这些物品将保存到全局状态中。这些数据不是临时的,而是会永久存储在L3中供下次游戏使用。
游戏会话的结束
当游戏会话结束时,玩家状态会被转换回L3永久保存,为下次游戏做好准备。随后在StarkNet L2上进行验证,最终在L1完成确认,从而构建出一个可证明公平的RuneScape世界。接下来,就是实现这个愿景的时刻了…
我们构建的整个技术栈都是开源的——立即加入dojo discord或直接为核心代码贡献你的力量。
跨层桥接的挑战
确实,目前的跨链桥接体验欠佳。但这个问题已有明确解决方案,Starknet生态系统已经采用,并很快会在其他L2协议上实现。这就是存储证明技术。我们将在后续文章中详细探讨这个问题。
为什么选择递归证明和临时链?
需要说明的是,这是Dojo、Cartridge和Realms生态系统为扩展游戏世界采用的方法。当然,这不是唯一方案,探索多种途径总是更好的选择。业内一些最聪明的人正在攻克这个领域最具挑战性的问题,他们的工作绝对值得关注:
Lattice的OP Plasma方案Redstone能实现极低成本的交易;Playmint独特的乐观引擎可支持快速游戏体验;PoP采用定制EVM分片方案;Argus开发了专用EVM游戏分片;Curio则改良了EVM服务器方案。
展望:回归Runescape的初心
打造一个支持数百万玩家免费游玩的RuneScape绝非易事。但链上游戏行业汇聚的集体智慧和创造力令人振奋。可以预见,在未来半年到一年内,这类游戏将会陆续问世。是时候重返RuneScape了,或者说,迎接RealmScape时代的到来。;)
声明:文章不代表CHAINTT观点及立场,不构成本平台任何投资建议。投资决策需建立在独立思考之上,本文内容仅供参考,风险 自担!转载请注明出处:https://www.chaintt.cn/12550.html