原文标题:Introducing Quarry: A modern computing environment for your World today By Lattice
原文链接:https://lattice.xyz/blog/introducing-quarry
原文作者:Lattice
“它能运行《毁灭战士(Doom)》吗?” 是计算领域广为流传的一句口号,促使人们尝试在各种设备上运行这款开源第一人称射击游戏,从老款 Mac 电脑到 Peloton 健身器材,甚至到拖拉机。到目前为止,区块链在实现这一功能上大多未能达标,而这一功能被视为衡量硬件设备复杂性的非正式标准。
我们自豪地宣布,我们已经成功地将《毁灭战士》部署到了链上,并实现了仅 7 毫秒的延迟。我们将把这一技术提供给一批 Alpha 测试用户(完整版预计在 2025 年初发布),以便您也能在链上构建超高速应用程序。Quarry 是我们推出的新型基础设施,支撑这项技术的运行。它是 Lattice 提供的完整产品套件,能够支持 MUD 应用在链上实时、大规模的运行。
在 Lattice,我们相信以太坊虚拟机(EVM)终有一天将成为“世界计算机”,而不仅仅是“全球金融计算机”——一个开放、可访问的网络,并能够催生新兴行为,最终构建出自主世界。
我们开发的软件体现了这一信念。通过 MUD,我们为 EVM 上的应用程序构建了一个操作系统,使开发人员能够使用熟悉的数据模型和自动索引器,从而极大地简化了开发流程,鼓励了第三方开发,并充分利用了 EVM 在组合性方面的天然支持。
通过 Redstone,我们构建了一个超低成本的 Layer 2,它使用了由 Lattice 开发的 Alt-DA 协议,并贡献至 OP Stack。像 CCP Games(EVE Frontier)、Biomes 等团队都在使用 Redstone 和 MUD 来构建自主世界,推动 EVM 应用的前沿发展。
然而,我们需要进一步努力,才能实现自主世界这一愿景。尽管 MUD 和 Redstone 已经大大推动了 EVM 的极限,我们知道还有更多方法可以为您的应用提供更少的延迟、更便捷的用户引导、更高的可扩展性和更低的成本。
今天,我们推出了 Quarry,这是一个为“自主世界”打造的现代计算环境,也是 MUD 和 Redstone 的有力补充。Quarry 增强了 EVM 链,使其能够在理想环境中运行各种“世界”。
Quarry 为您提供了四个关键功能:
低延迟:缓慢的区块时间是在链上开发游戏和世界的根本限制。通过 Quarry,用户可以在最短 7 毫秒内收到其交易(或 ERC-4337 用户操作)的结果。这些结果并非optimistic update(即乐观更新,但可能会被回滚),而是具有与任何 Layer 2 区块相同的最终确定性保证。而且,与optimistic update不同的是,用户不仅可以在 7 毫秒内接收到其自身交易的 MUD 状态更新,还能接收到链上所有交易的 MUD 状态更新。
用户引导:引导新用户使用链上应用一直是摩擦最大的环节之一。通过 MUD,我们已经建立了良好的基础:代理账户功能允许用户在游戏会话期间为会话钱包授予特定权限,消除了每笔交易都需逐一批准的需求。然而,新用户的账户创建及在新链上支付 Gas 费仍然存在摩擦,过去这些都需要跨链桥接。Quarry 通过基于passkey的智能合约账户和 Quarry 付费管理器(Paymaster)解决了这两个问题,实现了无缝的用户引导。通过深度集成 ERC-4337 到区块构建器中,Quarry 即便在账户抽象的影响下仍达到了 7 毫秒的低延迟。
可扩展性:随着“自主世界”规模的扩大,它们最终会超出任何最强大链的承载能力。届时,“世界”将需要在多个链上实现横向扩展。我们在 2025 年的下一个前沿目标是无缝多链世界,通过将 MUD 与 Optimism 即将推出的 OP Stack 互操作协议深度集成。借助 MUD 和 Quarry,开发者将能够体验到在单一链上开发一样的开发体验,同时实现无限的横向扩展能力。
经济性:为了让链上世界真正生动起来,我们不希望交易执行成本成为阻碍。因此,我们与 Optimism 密切合作,开发了适用于 OP Stack 的 Alt-DA 和 Plasma 模式(并将其向上合并,使得其他 Alt-DA 层如 Celestia 也可使用)。Quarry 利用了 Alt-DA 模式带来的成本优势,并通过 Redstone,使我们的 Layer 2 能够为自主世界提供高效支持。如需了解更多关于 Redstone 和 Alt-DA 模式的信息,请点击此链接。
我们通过专属的区块构建器(block builder)网络实现了这一切,从而提升了交易速度,同时配备超低延迟的 API 以读取 MUD 状态,以提供最快速的索引体验。此外,我们还提供账户抽象功能,支持流畅的用户引导,并通过多区域的服务器边缘部署来优化性能。我们使用基于 Rust 的最佳基础设施开发了整个技术栈:在区块构建方面采用了 Reth,并与 Index Supply 合作实现了索引功能。
为了更深入了解,让我们来探讨 Quarry 的一些产品功能。
Quarry 非常快速——可以达到 7 毫秒。我们通过 Wiresaw 实现了这一性能,这是一种定制的区块构建器。与默认的区块构建方法不同,在默认方法中,交易首先进入内存池,然后由排序器在区块间隔结束时选择支付最高的交易来构建区块。
而 Wiresaw 则采用先到先得的模式,将接收到的交易直接插入待确认区块中,并确定其顺序。在区块间隔结束时,排序器会将 Wiresaw 构建的区块最终确认并插入链中。
这种方法使 Wiresaw 能够将每笔新交易的 MUD 状态更新立即传输给所有客户端。MUD 客户端可以在 7 毫秒内(加上网络光速往返的两倍时间)接收到链上发生的所有状态更新。
我们通过使用 ERC-4337 设计了原生的排序器用户操作。我们通过在 Wiresaw 中添加一个简单的 eth_sendUserOperation RPC 端点,减少了额外的开销,从而优化了性能。这使我们在存在 ERC-4337 带来的开销的情况下,仍然实现了 7 毫秒的低延迟。
Wiresaw 构建在 Reth 强大的执行层基础之上。它在默认的 OP Reth 组件基础上,扩展了一个我们自定义的有效负载构建器,该构建器从零开始设计,能够在排序规范负载的同时持续执行交易批处理。
MUD 配备了一个开源自动索引器,能够捕获 MUD 应用中的任何状态更改,并允许客户端填充状态。Quarry 进一步优化了这一功能,提供了托管版索引器,并开放了免费的公共端点,使任何 MUD 客户端都可以在无需配置的情况下,以高性能方式填充所需的状态。
此外,Quarry 索引器还提供了一个 SQL API,这是与 Index Supply 合作开发的,使客户端可以精准选择所需状态,避免下载过多的数据。该索引器还为 Worlds Explorer 提供支持,使任何人都可以通过 SQL 查询探索 MUD 世界的数据。
为了帮助各个“世界”引入新用户,我们集成了通行密钥(Passkey)。这使得新用户可以轻松创建安全的非托管钱包,无需复杂的助记词或外部钱包应用程序。在后台,会自动创建一个基于通行密钥的智能账户。而对于现有的加密用户,也可以选择使用他们自己的钱包。
一旦通过密码密钥或现有钱包连接后,只需再轻触一次,就可以获得一个会话账户,从而实现无缝交易,无需钱包弹出窗口或桥接资金用于支付 Gas 费。这个会话账户通过 MUD 的账户委托机制代表已连接的钱包行事,使链上操作与已连接的钱包关联。此外,它集成了 Quarry 的 Paymaster 支出政策,可以在你的每日 Gas 费配额内为您支付 Gas 费。
为了提供流畅的用户引导体验,我们推出了 Quarry Paymaster,用户可以从中获得每日数千次链上操作所需的 Gas 费用补贴,适用于所有启用了 Quarry 的链上操作。
Quarry Paymaster 遵循 ERC-4337 标准。此外,任何符合 ERC-4337 标准的 Paymaster 都与 Quarry 及其低延迟区块构建器兼容。
昨天,我们宣布了 MUD 标准世界接口SWI,这是一个为 MUD 世界如何与其外围服务和执行环境通信而设立的标准化工作。
MUD 世界始终支持默认的以太坊 RPC API,无需任何自定义基础设施。但有些功能(例如,从待处理区块获取超低延迟的状态更新)则需要额外的 API。
标准世界接口正在持续努力定义、记录并维护这些 MUD 世界与基础设施实现之间的 API。通过标准化 MUD API,我们鼓励更多的基础设施提供商为 MUD 世界开发基础设施。尽管 Quarry 是 MUD SWI 的首个实现,我们并不期望它是唯一的实现。
我们的团队通过 Quarry 的功能开发了一些趣味小游戏,欢迎体验!
吃或被吃——这是苍蝇在无边绿野中生存的法则,随时可能遭遇潜伏的青蛙。您可以选择扮演苍蝇或青蛙,但要小心——您的生命可能以毫秒计(特别感谢 Quarry 的超快确认速度)。
苍蝇或青蛙的每一步都是一次链上交易。屏幕上不会有预期更新:当链上状态更新被接收时,苍蝇/青蛙才会在屏幕上更新,以展示 Quarry 的低往返延迟。
Eat the Fly 针对移动端体验进行了优化,支持passkey的便捷注册。用户无需桥接资金,因为 Paymaster 会为用户在注册时分配的额度中支付所有操作的费用。
“它能运行 Doom 吗?”这是对任何硬件的终极测试。我们很自豪地宣布 Quarry 可以运行 Doom——而且是完全链上运行。作为经典之作,我们使用了原始的 Doom 代码库(由 CloudFlare 移植至 WebAssembly)。
这对于 Quarry 来说是一次极佳的压力测试,因为我们还使用了原始的 Doom 网络代码(NetCode),该代码每秒为每个玩家发送 35 次更新,且客户端在接收到所有玩家的该帧状态更新后才会进入下一帧(这意味着如果某个玩家的网络延迟较高,游戏将会立即卡顿)。
每次状态更新都会作为 ERC-4337 用户操作在链上发送,并通过 MUD 表同步给其他玩家。Doom 还使用了 Quarry 的引导功能,玩家可以(但不必)使用现有钱包,且 Gas 费用由系统资助。
观看完整的 Doom 演示,并在 Devcon 的 MUD 日 CLS 上试玩!
我们或许无意中逆向开发了一个极简版的 Fortnite。与上面的 Doom 演示主要通过链上广播消息以实现高吞吐和低延迟的玩家间交互不同,这款第一人称射击游戏的全部游戏逻辑均在链上实现,包括射击命中检测的光线投射,以及实时的玩家位置和朝向。与前两个示例一样,我们也使用了 Quarry 的无缝用户引导解决方案。
Quarry 从今天起将在 Redstone 的测试网络 Rhodolite 上测试。我们将在 2025 年初在 Redstone 测试网(Garnet)上发布,并随后上线 Redstone 主网和其他链。您可以通过填写此表格加入我们的 Alpha 测试小组。
若想了解更多关于 Quarry 的信息,并获得 Lattice 团队的答疑,欢迎今日参加 Devcon 的 MUD 日活动(地点:Queen Sirikit 国家会议中心,A 教室)。
我们期待看到大家使用 Quarry 开发的成果!