可证明的Goblin

进阶3/29/2024, 1:24:37 PM
链上游戏正在投入大量创新,但我们的重点是使用 Cairo 和 Starknet VM 探索可证明的游戏技术树。本文旨在将一些可证明的游戏概念转化为实际示例,其灵感来自于传奇游戏 RuneScape。

转发原文标题《Provable Goblins》

自治世界(Autonomous Worlds, AWS)面临着同样的三难困境。AWS 需要能够扩展到数百万并发玩家,这是一个很难解决的问题。

Rollups部分地解决了这个三难问题,将其转化为一个两难问题,这要归功于继承了结算层的安全性——只要存在Layer 1(L1)本地资产和无许可退出。

对于乐观汇总,您需要在可扩展性和安全性之间进行选择,这就是为什么一些汇总方法通过使用替代数据可用性 (alt DA) 或等离子 DA 来实现可扩展性,从而牺牲安全性。然而,通过 ZK Rollup,您可以以最小的信任假设来证明状态的完整性,旨在解决所有三个挑战:可扩展性、安全性和去中心化。 Zk 是终局之战。

诚信的《大金刚》 (Donkey Kong)——从链上到可证明再到回归

链上游戏向我们保证言论自由和信息主权。它们拥有这些属性,因为它们运行在经过共识验证的区块链上。可证明游戏使用 zk 证明,允许在没有大型共识方案的情况下验证游戏状态和计算。用类似的语言编写CairoNoir或运行RISC-Zero,这些游戏可以像浏览器一样在隔离的 zkVM 上独立运行,并具有可验证的输出,确保真实执行。这拓宽了我们在链上游戏行业的可能性。

像《大金刚》这样的游戏就体现了这一点。目前,为了让您的高分在排行榜上得到认可,您必须在经过认证的机器上玩游戏以防止作弊,同时记录您的游戏过程。然而,如果《大金刚》是一款可证明的游戏,那么玩家就可以单独竞争。想要获得高分,只需要向大金刚组织提交一份证明进行验证即可。这种方法可以让玩家在舒适的家中成为金刚之王,而无需记录他们的游戏过程!

目前,在孤立的 zkVM 中运行完整的游戏具有挑战性。为了解决这个问题,Dojo 生态系统正在努力通过最小化复杂性来简化流程。像Tonk这样的团队正在可证明的游戏领域取得进展,其中一项显著的成就是在 zkVM 上运行Doom,预示着“可证明Doom”的到来。随着证明成本的降低和新的证明者的出现(如Stwo)变得可用,设计可证明的游戏和应用程序的潜力扩大了。

我们不一定需要在孤立的 zkVM 中运行可证明的游戏才能从其可证明的属性中受益。相反,我们可以在迷你 StarkNet 网络上以最少的参与者数量运行我们的游戏,并且仍然获得有保证的安全性。

值得注意的是,该方法不是二元的。例如,您可以在 EVM 上运行链上游戏,然后将基于Cairo的游戏放在上面,增强核心游戏,同时扩大其功能。

为什么要费心去验证游戏呢?

想象一下,如果 RuneScape 的世界突然关闭,永久删除了每个人的游戏统计数据,就会有一些愤怒的游戏玩家。当开发人员决定关闭服务器时,这种情况必然会发生。我们能做的更好吗?我们能否创造一个像 RuneScape 一样丰富、多样化和激烈的世界,并且不受这种情况的影响?

这一挑战正是整个链上游戏场景目前正在努力解决的问题:创造一个持久、永恒和自治的世界。许多团队正在探索各种方法,这正是所需要的创新和实验。

链上游戏正在投入大量创新,但我们的重点是使用 Cairo 和 Starknet VM 探索可证明的游戏技术树。本文旨在将一些可证明的游戏概念转化为实际示例,其灵感来自于传奇游戏 RuneScape。

本篇文章的创造灵感来自于传奇的 Skystrife chad Kooshobas 在 Eth Istanbul 的演讲

可证明的Goblin

让我们建立一个可以证明goblin存在的世界,以 RuneScape 为例,我们将重点关注游戏的初始区域 Lumbridge 及其周围环境进行探索:

  • Lumbridge城堡
  • 茂密森林
  • goblin
  • 库存物品

对于可证明的goblin,我们需要:

  • 模拟goblin和生物的动态运动,打造生动的游戏世界。
  • 当玩家拾取物品时启用实时库存更新。
  • 在全球范围内跟踪并保存玩家进度,以实现一致的游戏玩法。
  • 设计机制以防止被利用,确保游戏的完整性。
  • 支持数百万并发玩家的可扩展性。

扩展现代传统游戏

传统游戏开发依赖中心化服务器来实现进程、NPC 行为、玩家状态管理、物品控制和规则执行等基本功能。为了扩展,需要添加更多服务器,并对游戏状态进行划分(分片),从而为不同的玩家组提供单独的游戏区域实例。虽然这是一种有效的扩展解决方案,但这种中心化意味着开发人员拥有最终控制权,包括关闭服务器的能力。这就是创建链上游戏行业的原因——能够拥有一个无需信任的 RuneScape……

传统区块链方式

当尝试使用传统的区块链方法复制中心化服务器的功能时,虽然理论上是可行的,但由于以下几个限制,它变得不切实际,并且几乎不可能扩展到超过几千个并发用户:

交易验证

交易或玩家操作必须由网络上的多个节点进行验证和处理。虽然这种方法通过复制处理和使用共识来确保系统的安全性,从而使系统更难受到损害,但它也在事务处理速度(即TPS)方面引入了重大瓶颈。现在,当然可以通过使用单个中央排序器(就像几乎每个 L2 一样)来回避这一点 - 然而这需要更多的信任假设。

每秒交易次数

区块链虚拟机的 TPS 限制妨碍了游戏处理玩家操作的能力。当玩家数量及其行为超过区块链的 TPS 容量时,就会形成积压,导致费用飙升和玩家体验恶化。这有效地限制了单个区块链排序器可以管理的并发玩家数量。为了克服这些限制,以太坊专注于以汇总为中心的路线图,将执行转移到汇总层。

在汇总上操作我们的世界可以大大增强可扩展性,但如果没有 zk Proofs,我们仍然依赖于大型共识机制或广泛的潜在不稳定的信任假设,这会带来风险。因此,zk 被认为是扩展的最终解决方案,尽管它尚未完全实现。

与 OP 层相比较情况下的 ZK 层的信任假设。 ZK 假设仍然很强,参与水平较低,允许迷你 zk rollup 存在。

可证明的方法 ——使用递归证明和多层协议

任何区块链的目标都是让用户对其行为有绝对的信任。这一原则在业界经常被遗忘;如果我们的目标不是创建去信任的系统,那么我们的努力还有什么意义呢?我们不妨依赖中央服务器,它们的功能非常出色。

在我们的 RuneScape 世界中,我们将专注于使用 STARK 首创的递归缩放。Tarrence写了一篇与这个主题相关的深入研究,强调了递归证明在维持第2层、第3层协议最小信任假设方面的重要性。

在我们的世界中,我们可以利用递归证明来扩展和分割世界,同时确保任何人击败的goblin确实是goblin。

粗略图如下:

让我们来分解一下。

L1以太坊

我们在这里确定了最终状态,因此任何人都可以根据需要重建 L2。这就是每个真正的汇总所做的事情。

L2Starknet

我们在这里解决了 L3 状态,因此任何人都可以根据需要重建 L3。这就是我们维护整个世界的状态的地方。

L3 Realms World或其他 L3

支持玩家全局状态的高性能执行层。我们在这里保存 Lumbridge Shards 的最终状态。这允许在需要恢复玩家平衡时快速创建新的碎片。

Ephemeral Lumbridge 分片

“Ephemeral”意味着暂时的,强调高效、安全地管理每个玩家的游戏状态的重要性——这是所有玩家最关心的问题。通过采用链分片将每个分片限制为最多30个玩家(理论上数字可能更高,但此处以这个数字作为示例),我们镜像了传统服务器的结构,并进行了关键的增强:利用 zk 证明来确保完整性状态变化。这使我们能够水平扩展到数千个分片,而不会牺牲玩家的任何性能。

将此方法应用于 RuneScape

就像传统游戏服务器中水平扩展的概念一样,我们在这里应用了类似的策略。通过将游戏世界划分为许多较小的分片,我们使系统能够有效地扩展并能容纳数百万并发用户。

传统游戏服务器与这种方法的主要区别在于,玩家可以完全控制自己的游戏状态,从而确保更大的自主权和安全性。每一点状态都可以重建!

让我们举例进行演示:

当玩家到达 Lumbridge 时,他们会被分配到一个具有容量的临时链,促进与多达29个其他玩家的交互,同时通过快速和低成本的交易确保高性能。现在更深入:

  • 森林,拥有木材等资源

通过这条短暂的链,玩家在前往森林时的移动可以被跟踪,从而强制执行一定程度的移动物理,我们利用该分片所支持的廉价计算能力来做到这一点。然后他们可以继续砍柴,增加他们的平衡并升级他们的玩家。

  • Goblins和其他低级怪物

Goblins可以通过排序器上的内置游戏刻度有效地模拟。当游戏开始时,排序器会推进状态和他们的位置,直到用户出现并被杀死。如果我们选择的话,我们可以占用大量的分片带宽,因为我们限制了玩家的数量,所以我们可以最大化 NPC 的移动。

  • 散落各处的物品或怪物掉落的物品

物品可以拾取并存储在玩家的余额中。当玩家结束会话时,这些项目将保存到全局状态。这些值不是临时的,而是会保存到 L3 以便在下一个会话中使用。

结束会话

在游戏会话结束时,玩家的状态通过转换回 L3 保留在全局状态中,为下一个区域或会话奠定基础。然后在 StarkNet L2 上进行验证,随后在 L1 上进行验证,有效地建立了一个可证明公平的 RuneScape。现在,下一步就是实现这一愿景……

我们正在构建的整个堆栈都是开源的 - 现在加入dojo discord或直接为core做贡献。

这些层之间的桥接怎么样?这对于玩家来说岂不是一场噩梦吗?

是的,目前桥接是有问题的。然而,这个问题有一个明确的解决方案,已经在 Starknet 生态系统中使用,并将很快在其他第2层协议上提供。这些被称为存储证明。是的,我正在嵌入我自己的推文。第2部分文章将讨论这一点:

https://twitter.com/lordOfAFew/status/1762796441494520267

为什么递归证明和临时链优于其他方法?

首先要说明的是,这是 Dojo、Cartridge 和 Realms 生态系统正在采用的方法,用于扩展我们设想的世界。值得注意的是,这并不是唯一的方法,探索多种方法总是会更好。我认识的一些最聪明的人也在解决这个领域最具挑战性的问题,他们的工作绝对值得一看。

  • Lattice - 带有 Redstone 的 OP Plasma 可以实现非常便宜的交易。
  • Playmint - 独特的乐观引擎可实现快速的游戏玩法
  • PoP - 定制EVM分片
  • Argus - 自定义EVM游戏碎片
  • Curio - 修改了 EVM 服务器方法

结语:回到Runescape

创建一个能够支持数百万并发玩家且免费开放的 RuneScape 并不是一件容易的事。然而,链上游戏行业的集体智慧和创造力具有强大的力量。因此,可以合理地预测此类游戏和其他游戏将在未来半年到一年内出现。是时候回到 RuneScape,或者更恰当地说,迎接 RealmScape 的到来了。 ;)

声明:

  1. 本文转载自[@lordofafew],原文标题《Provable Goblins》,著作权归属原作者[ @lordofafew ],如对转载有异议,请联系Gate Learn团队,团队会根据相关流程尽速处理。
  2. 免责声明:本文所表达的观点和意见仅代表作者个人观点,不构成任何投资建议。
  3. 文章其他语言版本由Gate Learn团队翻译, 在未提及Gate.io的情况下不得复制、传播或抄袭经翻译文章。

可证明的Goblin

进阶3/29/2024, 1:24:37 PM
链上游戏正在投入大量创新,但我们的重点是使用 Cairo 和 Starknet VM 探索可证明的游戏技术树。本文旨在将一些可证明的游戏概念转化为实际示例,其灵感来自于传奇游戏 RuneScape。

转发原文标题《Provable Goblins》

自治世界(Autonomous Worlds, AWS)面临着同样的三难困境。AWS 需要能够扩展到数百万并发玩家,这是一个很难解决的问题。

Rollups部分地解决了这个三难问题,将其转化为一个两难问题,这要归功于继承了结算层的安全性——只要存在Layer 1(L1)本地资产和无许可退出。

对于乐观汇总,您需要在可扩展性和安全性之间进行选择,这就是为什么一些汇总方法通过使用替代数据可用性 (alt DA) 或等离子 DA 来实现可扩展性,从而牺牲安全性。然而,通过 ZK Rollup,您可以以最小的信任假设来证明状态的完整性,旨在解决所有三个挑战:可扩展性、安全性和去中心化。 Zk 是终局之战。

诚信的《大金刚》 (Donkey Kong)——从链上到可证明再到回归

链上游戏向我们保证言论自由和信息主权。它们拥有这些属性,因为它们运行在经过共识验证的区块链上。可证明游戏使用 zk 证明,允许在没有大型共识方案的情况下验证游戏状态和计算。用类似的语言编写CairoNoir或运行RISC-Zero,这些游戏可以像浏览器一样在隔离的 zkVM 上独立运行,并具有可验证的输出,确保真实执行。这拓宽了我们在链上游戏行业的可能性。

像《大金刚》这样的游戏就体现了这一点。目前,为了让您的高分在排行榜上得到认可,您必须在经过认证的机器上玩游戏以防止作弊,同时记录您的游戏过程。然而,如果《大金刚》是一款可证明的游戏,那么玩家就可以单独竞争。想要获得高分,只需要向大金刚组织提交一份证明进行验证即可。这种方法可以让玩家在舒适的家中成为金刚之王,而无需记录他们的游戏过程!

目前,在孤立的 zkVM 中运行完整的游戏具有挑战性。为了解决这个问题,Dojo 生态系统正在努力通过最小化复杂性来简化流程。像Tonk这样的团队正在可证明的游戏领域取得进展,其中一项显著的成就是在 zkVM 上运行Doom,预示着“可证明Doom”的到来。随着证明成本的降低和新的证明者的出现(如Stwo)变得可用,设计可证明的游戏和应用程序的潜力扩大了。

我们不一定需要在孤立的 zkVM 中运行可证明的游戏才能从其可证明的属性中受益。相反,我们可以在迷你 StarkNet 网络上以最少的参与者数量运行我们的游戏,并且仍然获得有保证的安全性。

值得注意的是,该方法不是二元的。例如,您可以在 EVM 上运行链上游戏,然后将基于Cairo的游戏放在上面,增强核心游戏,同时扩大其功能。

为什么要费心去验证游戏呢?

想象一下,如果 RuneScape 的世界突然关闭,永久删除了每个人的游戏统计数据,就会有一些愤怒的游戏玩家。当开发人员决定关闭服务器时,这种情况必然会发生。我们能做的更好吗?我们能否创造一个像 RuneScape 一样丰富、多样化和激烈的世界,并且不受这种情况的影响?

这一挑战正是整个链上游戏场景目前正在努力解决的问题:创造一个持久、永恒和自治的世界。许多团队正在探索各种方法,这正是所需要的创新和实验。

链上游戏正在投入大量创新,但我们的重点是使用 Cairo 和 Starknet VM 探索可证明的游戏技术树。本文旨在将一些可证明的游戏概念转化为实际示例,其灵感来自于传奇游戏 RuneScape。

本篇文章的创造灵感来自于传奇的 Skystrife chad Kooshobas 在 Eth Istanbul 的演讲

可证明的Goblin

让我们建立一个可以证明goblin存在的世界,以 RuneScape 为例,我们将重点关注游戏的初始区域 Lumbridge 及其周围环境进行探索:

  • Lumbridge城堡
  • 茂密森林
  • goblin
  • 库存物品

对于可证明的goblin,我们需要:

  • 模拟goblin和生物的动态运动,打造生动的游戏世界。
  • 当玩家拾取物品时启用实时库存更新。
  • 在全球范围内跟踪并保存玩家进度,以实现一致的游戏玩法。
  • 设计机制以防止被利用,确保游戏的完整性。
  • 支持数百万并发玩家的可扩展性。

扩展现代传统游戏

传统游戏开发依赖中心化服务器来实现进程、NPC 行为、玩家状态管理、物品控制和规则执行等基本功能。为了扩展,需要添加更多服务器,并对游戏状态进行划分(分片),从而为不同的玩家组提供单独的游戏区域实例。虽然这是一种有效的扩展解决方案,但这种中心化意味着开发人员拥有最终控制权,包括关闭服务器的能力。这就是创建链上游戏行业的原因——能够拥有一个无需信任的 RuneScape……

传统区块链方式

当尝试使用传统的区块链方法复制中心化服务器的功能时,虽然理论上是可行的,但由于以下几个限制,它变得不切实际,并且几乎不可能扩展到超过几千个并发用户:

交易验证

交易或玩家操作必须由网络上的多个节点进行验证和处理。虽然这种方法通过复制处理和使用共识来确保系统的安全性,从而使系统更难受到损害,但它也在事务处理速度(即TPS)方面引入了重大瓶颈。现在,当然可以通过使用单个中央排序器(就像几乎每个 L2 一样)来回避这一点 - 然而这需要更多的信任假设。

每秒交易次数

区块链虚拟机的 TPS 限制妨碍了游戏处理玩家操作的能力。当玩家数量及其行为超过区块链的 TPS 容量时,就会形成积压,导致费用飙升和玩家体验恶化。这有效地限制了单个区块链排序器可以管理的并发玩家数量。为了克服这些限制,以太坊专注于以汇总为中心的路线图,将执行转移到汇总层。

在汇总上操作我们的世界可以大大增强可扩展性,但如果没有 zk Proofs,我们仍然依赖于大型共识机制或广泛的潜在不稳定的信任假设,这会带来风险。因此,zk 被认为是扩展的最终解决方案,尽管它尚未完全实现。

与 OP 层相比较情况下的 ZK 层的信任假设。 ZK 假设仍然很强,参与水平较低,允许迷你 zk rollup 存在。

可证明的方法 ——使用递归证明和多层协议

任何区块链的目标都是让用户对其行为有绝对的信任。这一原则在业界经常被遗忘;如果我们的目标不是创建去信任的系统,那么我们的努力还有什么意义呢?我们不妨依赖中央服务器,它们的功能非常出色。

在我们的 RuneScape 世界中,我们将专注于使用 STARK 首创的递归缩放。Tarrence写了一篇与这个主题相关的深入研究,强调了递归证明在维持第2层、第3层协议最小信任假设方面的重要性。

在我们的世界中,我们可以利用递归证明来扩展和分割世界,同时确保任何人击败的goblin确实是goblin。

粗略图如下:

让我们来分解一下。

L1以太坊

我们在这里确定了最终状态,因此任何人都可以根据需要重建 L2。这就是每个真正的汇总所做的事情。

L2Starknet

我们在这里解决了 L3 状态,因此任何人都可以根据需要重建 L3。这就是我们维护整个世界的状态的地方。

L3 Realms World或其他 L3

支持玩家全局状态的高性能执行层。我们在这里保存 Lumbridge Shards 的最终状态。这允许在需要恢复玩家平衡时快速创建新的碎片。

Ephemeral Lumbridge 分片

“Ephemeral”意味着暂时的,强调高效、安全地管理每个玩家的游戏状态的重要性——这是所有玩家最关心的问题。通过采用链分片将每个分片限制为最多30个玩家(理论上数字可能更高,但此处以这个数字作为示例),我们镜像了传统服务器的结构,并进行了关键的增强:利用 zk 证明来确保完整性状态变化。这使我们能够水平扩展到数千个分片,而不会牺牲玩家的任何性能。

将此方法应用于 RuneScape

就像传统游戏服务器中水平扩展的概念一样,我们在这里应用了类似的策略。通过将游戏世界划分为许多较小的分片,我们使系统能够有效地扩展并能容纳数百万并发用户。

传统游戏服务器与这种方法的主要区别在于,玩家可以完全控制自己的游戏状态,从而确保更大的自主权和安全性。每一点状态都可以重建!

让我们举例进行演示:

当玩家到达 Lumbridge 时,他们会被分配到一个具有容量的临时链,促进与多达29个其他玩家的交互,同时通过快速和低成本的交易确保高性能。现在更深入:

  • 森林,拥有木材等资源

通过这条短暂的链,玩家在前往森林时的移动可以被跟踪,从而强制执行一定程度的移动物理,我们利用该分片所支持的廉价计算能力来做到这一点。然后他们可以继续砍柴,增加他们的平衡并升级他们的玩家。

  • Goblins和其他低级怪物

Goblins可以通过排序器上的内置游戏刻度有效地模拟。当游戏开始时,排序器会推进状态和他们的位置,直到用户出现并被杀死。如果我们选择的话,我们可以占用大量的分片带宽,因为我们限制了玩家的数量,所以我们可以最大化 NPC 的移动。

  • 散落各处的物品或怪物掉落的物品

物品可以拾取并存储在玩家的余额中。当玩家结束会话时,这些项目将保存到全局状态。这些值不是临时的,而是会保存到 L3 以便在下一个会话中使用。

结束会话

在游戏会话结束时,玩家的状态通过转换回 L3 保留在全局状态中,为下一个区域或会话奠定基础。然后在 StarkNet L2 上进行验证,随后在 L1 上进行验证,有效地建立了一个可证明公平的 RuneScape。现在,下一步就是实现这一愿景……

我们正在构建的整个堆栈都是开源的 - 现在加入dojo discord或直接为core做贡献。

这些层之间的桥接怎么样?这对于玩家来说岂不是一场噩梦吗?

是的,目前桥接是有问题的。然而,这个问题有一个明确的解决方案,已经在 Starknet 生态系统中使用,并将很快在其他第2层协议上提供。这些被称为存储证明。是的,我正在嵌入我自己的推文。第2部分文章将讨论这一点:

https://twitter.com/lordOfAFew/status/1762796441494520267

为什么递归证明和临时链优于其他方法?

首先要说明的是,这是 Dojo、Cartridge 和 Realms 生态系统正在采用的方法,用于扩展我们设想的世界。值得注意的是,这并不是唯一的方法,探索多种方法总是会更好。我认识的一些最聪明的人也在解决这个领域最具挑战性的问题,他们的工作绝对值得一看。

  • Lattice - 带有 Redstone 的 OP Plasma 可以实现非常便宜的交易。
  • Playmint - 独特的乐观引擎可实现快速的游戏玩法
  • PoP - 定制EVM分片
  • Argus - 自定义EVM游戏碎片
  • Curio - 修改了 EVM 服务器方法

结语:回到Runescape

创建一个能够支持数百万并发玩家且免费开放的 RuneScape 并不是一件容易的事。然而,链上游戏行业的集体智慧和创造力具有强大的力量。因此,可以合理地预测此类游戏和其他游戏将在未来半年到一年内出现。是时候回到 RuneScape,或者更恰当地说,迎接 RealmScape 的到来了。 ;)

声明:

  1. 本文转载自[@lordofafew],原文标题《Provable Goblins》,著作权归属原作者[ @lordofafew ],如对转载有异议,请联系Gate Learn团队,团队会根据相关流程尽速处理。
  2. 免责声明:本文所表达的观点和意见仅代表作者个人观点,不构成任何投资建议。
  3. 文章其他语言版本由Gate Learn团队翻译, 在未提及Gate.io的情况下不得复制、传播或抄袭经翻译文章。
Start Now
Sign up and get a
$100
Voucher!
It seems that you are attempting to access our services from a Restricted Location where Gate is unable to provide services. We apologize for any inconvenience this may cause. Currently, the Restricted Locations include but not limited to: the United States of America, Canada, Cambodia, Thailand, Cuba, Iran, North Korea and so on. For more information regarding the Restricted Locations, please refer to the User Agreement. Should you have any other questions, please contact our Customer Support Team.