Cartesi对于Web3用例来说是一大飞跃。其中最好的展示方式之一就是看它为游戏带来的影响。使用Cartesi可以实现的Web3游戏与现有的游戏完全不同,处于完全不同的范畴。
开始使用 Cartesi 构建游戏或继续阅读以了解原因。
Web3游戏的局限性
当谈及Web3游戏时,你通常会想到类似Neopets这样的游戏,而不是《战神》这样的游戏。自从引入CryptoKitties以来,Web3游戏在游戏性方面的改进并不显著。
Web3游戏并不那么有趣,这是由于一个双重问题:
处理能力有限
图形渲染、实时互动游戏玩法以及其他常见的游戏特性对以太坊虚拟机(EVM)来说是太过繁重的。如果我们将其视为一个大型的共享计算机,这些特性将会使其崩溃,并显示臭名昭著的蓝屏死机界面。
每当区块链中的存储数据有更新时,区块链必须与世界各地的成千上万个参与者进行协调。对于玩家来说,这意味着他们在游戏中的每一个动作都必须等待下一个区块的确认。这通常需要长达12秒的时间。
主角失去了多少生命值?敌人是活着还是死了?有没有物品掉落?在以太坊虚拟机上,所有这些计算都会耗费太多时间。而且,由于燃料费用的缘故,这些计算的成本也会变得难以预测。这对游戏体验来说并不理想。
虽然最近的扩容解决方案确实使区块链网络在存储数据方面有所改善,但游戏玩法的改进需要更多的处理能力。换句话说,即使连接到一个15TB硬盘,你也无法在袖珍计算器上运行AAA级游戏。
有限的工具
接着我们遇到另一个瓶颈。即使以太坊虚拟机(EVM)能够运行这些过程,它仍然过于特定于领域。
EVM专门设计用于智能合约。它可以处理会计、回滚、身份验证和密码学等任务,但并非用于游戏引擎。这限制了在Web3中工作的游戏开发者的创造力,因为现在他们无法依赖于他们习惯使用的所有库、框架、测试和工具。他们必须依赖于EVM的工具,而在许多情况下不得不重新发明轮子。
因此,Web3游戏受到很多限制,大多数只是早期互联网时期流行的基于浏览器的游戏的翻版。那种让玩家和普通观众感到吸引的游戏玩法几乎没有呈现出来。
超越限制
解决这个问题的方法是找到一种在不牺牲任何期望的链上属性的情况下,让开发者能够访问位于EVM之外的处理能力和工具。这正是Cartesi所做的,它为游戏开发者提供了两全其美的解决方案。
Cartesi Rollups
让游戏开发者访问外部处理能力的一种特别有效的方式是使用应用特定的Rollups。基本上,这是一种将所有可能昂贵且耗时的计算捆绑在一起并移到链外的方法,以实现愉悦游戏所需的各种复杂功能。
在这种情况下,EVM仅用于资产结算、争议解决和潜在的可组合功能。所有的复杂性都由您的常规计算机处理。
然后,Cartesi Rollup将结果带回链上。游戏中发生的所有事情都可以完全验证并且抗审查,只要至少有一个诚实的验证者——这要归功于乐观Rollups中的交互式欺诈证明。
要了解更多关于Cartesi Rollups的信息,它们是如何工作的以及为什么它们如此重要.
现在我们已经超越了袖珍计算器,更接近于普通计算机处理器的领域。但是,处理EVM的其他限制如何解决呢?我们如何让开发者使用他们熟悉和信任的工具呢?
Cartesi 虚拟机
一旦我们能够将繁重的计算任务移到链外,我们需要确保充分利用它们。为此,Cartesi设计了一个RISC-V运行时环境,它可以在Linux操作系统上启动,并与Cartesi Rollups连接。
这意味着游戏开发者可以使用所有熟悉的编程语言、丰富的代码库和开源工具来构建Web3游戏。更重要的是,他们可以设计全新的游戏引擎,利用独特的Web3功能,同时依赖于常规游戏所使用的所有功能和工具。
要了解有关 Cartesi 虚拟机、其工作原理及其重要性的更多信息,请阅读之前的文章。
验证概念:《毁灭战士》(DOOM)
有什么比将经典的第一人称射击游戏《毁灭战士》重新构建为Web3游戏更好的方式来展示这些能力呢?
如今,这是一款在任何笔记本电脑甚至移动设备上都可以轻松运行的游戏。但是,如果我们要在区块链上运行《毁灭战士》,情况则完全不同。
具体来说:
以太坊虚拟机(EVM)计算玩家操作所需的时间直接与网络的区块时间相关,平均约为12秒。
而现代第一人称射击游戏使用的平均帧率约为每秒30帧,取决于用户设置。
这意味着EVM理论上只能以0.083帧每秒的速度运行《毁灭战士》。
简而言之,您无法指望EVM或任何现有的L1区块链网络来处理《毁灭战士》游戏中涉及的大量实时状态变化。
然而...
多亏了Cartesi Rollups和Cartesi虚拟机,我们有了一个在链上运行《毁灭战士》游戏的概念验证。
通过查看Cartesi创始人Erick de Moura的讨论,深入了解这里发生的情况。
但是,为什么一开始要将《毁灭战士》放到区块链上呢?
“想象一下,你想参加有赌注的去中心化《毁灭战士》锦标赛。《毁灭战士》的游戏玩法必须在链上运行,以证明其得分有效,并且没有玩家作弊。这是通过Cartesi虚拟机实现的……《毁灭战士》只是一个例子,可以想象任何游戏。” — Cartesi核心开发者 Eduardo Bart.
Web3版《毁灭战士》在本质上可以比常规版《毁灭战士》更优越,因为它可以利用区块链上的一切全新特性。而且这并不仅仅是为了把游戏运行在区块链上而运行,更重要的是将可验证性、价值转移、资产所有权以及Web3的所有其他优势融入到游戏构建的创意过程中。
使用Cartesi的Web3游戏的可能性
《毁灭战士》只是一个开始。已经有许多游戏,从经典到实验性的,正在使用Cartesi的应用特定Rollup和虚拟机解决方案进行移植或专门为Web3设计。来看看:
Cartesian Battleship:另一个经典游戏的链上版本。看看它的运行效果。
Ultrachess:用Python构建的人类对战AI和AI对战的国际象棋游戏。
LIFE:基于Web3的细胞自动机,也就是康威生命游戏。
Dazzle:一个带有NFT角色的RPG和益智游戏。
Colosseum:一个使用Python构建的老派对战游戏,带有图形渲染。
Creepts:一个使用传统技术栈构建的抵御作弊的Web3防御塔游戏。试玩一下。
Web3正在创建一种全新的技术栈,开发者将超越移植经典游戏的范畴。他们有机会从头开始构建,并创造出前所未有的游戏。在Cartesi的帮助下,唯一的限制就是开发者的想象力。
这是游戏开发的新设计空间。通过加入社区、参与Blue Sky Ideas论坛或加入我们每月在Discord举行的Game Builders Call,告诉我们您将要构建哪些游戏。
您还可以查看其他团队正在构建的内容。更好的是,开始构建您自己的游戏并申请Cartesi社区基金。
敬请关注首个基于Cartesi Rollups部署在链上的DApp...
关于 Cartesi
Cartesi是一个具有Linux运行时的特定应用Rollup执行层。Cartesi Rollup可以作为第二层(在以太坊之上)、第三层(在Optimism、Arbitrum、zkEVM等之上)或主权Rollup部署。它为更具表现力和计算密集型的区块链应用程序开放了设计空间。
DApps可以在自己定制的应用程序特定的Rollup链上部署;
在Cartesi的生态系统中,DApps不会为稀缺的块空间相互竞争;
Cartesi为以太坊或L2提供了数倍的计算容量;
开发人员可以使用他们喜欢的库、编译器和其他经过时间考验的开源组件编写分散逻辑;
DApps保留了底层区块链的强大安全保证和审查抵抗性;
Cartesi Rollups为更具表现力和计算密集型的区块链应用程序开放了设计空间;
Cartesi Rollups可以作为第二层(在以太坊之上)、第三层(在Optimism、Arbitrum、zkEVM等之上)或主权Rollup部署。