Enjin 平台适合发行区块链资产、支持资产交易的游戏,而不适用于要将游戏逻辑上链的 DApp。

原文标题:《「新闻拉盘币」Enjin 背后到底有没有干货》
撰文:DR 小伙伴

根据过往经验,Enjin 每爆出一次重磅新闻,势必会秀一波拉盘操作。去年 Enjin 与三星合作的消息放出后,狂拉 70% 的景象还清晰如昨。2 月 4 日晚,Enjin 再度教大家什么叫用新闻拉盘,官方宣布 Enjin Platform (Enjin 平台)即将上线后,币价在 2 小时内一度拉升近 40%。这还只是「即将上线」,等到 2 月 18 日正式上线时,币价再次跳涨 30%+。像 Enjin 这样「不仅拉盘,还做事」的项目方在业界实属难得,今天我们就来仔细研读下这个看看新发布的 Enjin 平台究竟是个啥?

刚刚上线的 Enjin 平台能为区块链游戏带来什么?了解其架构思路与使用体验

在 Enjin 平台发布之前,Enjin 最引人瞩目的动作莫过于开发全新的通证标准。2018 年 6 月 17 日,其 CTO Witek Radomski 在以太坊 Github 库中提交了一个全新的通证标准——ERC-1155,经过一年的不断完善打磨,这一标准终于进化到了最终形态。2019 年 6 月 18 日,Witek 发文表示,ERC-1155 已成为以太坊官方通证标准。

作为 ERC-1155 的推动者,Enjin 公司的野心远不止于此,Enjin 的愿景是让玩家真正拥有游戏资产的所有权。 在 Enjin 的产品矩阵中,包括随时随地可查看游戏道具的Enjin 钱包,能够轻松访问交易数据的EnjinX 区块链浏览器,方便开发者将游戏道具上链的Enjin SDK,避免中间商赚差价的去中心化游戏资产交易平台,和让单一游戏道具进行复用的Enjin 多重宇宙……当然,这些功能的实现,都离不开 ERC-1155 标准的支持。

刚刚上线的 Enjin 平台能为区块链游戏带来什么?了解其架构思路与使用体验

ERC-1155 的道具标准是 ERC-721 之后使用最为广泛的 NFT 标准,越来越多的相对大制作的区块链游戏加入了 Enjin 的多重宇宙玩法,并采用 ERC-1155 作为其 NFT 标准。

此前,币圈网红小姐姐 Linda Xie 也在 twitter 上发文,关注 ERC-1155 目前的使用现状,并将其与 ERC-721 进行对比。

刚刚上线的 Enjin 平台能为区块链游戏带来什么?了解其架构思路与使用体验

除了游戏资产之外,也有不少收集属性的收藏品 NFT 尝试基于 ERC-1155 来发行。在去年年底,币安配合市场运营活动共发行了 6 个主题总计 3718 个 NFT,供用户免费抽取,其中最稀有的 EXCHANGE THE WORLD 2019 主题 NFT 发行量仅有 10 个,在 NFT 交易所一度被炒到 2400 美金的交易价格(截止到 2020 年 1 月 1 日的数据)。

刚刚上线的 Enjin 平台能为区块链游戏带来什么?了解其架构思路与使用体验

关于 ERC-1155 的特点和特性,DappReview 曾经写过数篇文章:

  1. Enjin ERC-1155 和游戏多重宇宙
  2. 区块链游戏的平行宇宙和为此而生的 Enjin 钱包
  3. 游戏道具上链的价值——且看 Unity+Enjin

下面我们回归本文的主题讲讲 Enjin 平台。

Enjin 平台的架构思路

在本质上来讲,Enjin 希望帮助传统游戏开发者,以更轻便的方式直接在以太坊上铸造资产,并与游戏进行交互。

运行区块链游戏不仅需要强健的生态架构,还需要与以太坊网络保持持续通信。Enjin 为区块链游戏开发者专门设计了一个包含智能合约、可信云(Trusted Cloud)、Platform API (GraphQL)、Enjin Wallet、Wallet Daemon 五部分的完整架构,减少开发者的负担。

如果玩家想要出售一把剑,Enjin 平台将如何协助区块链游戏实现道具交易功能呢?看看下面这张图,就一目了然了:

刚刚上线的 Enjin 平台能为区块链游戏带来什么?了解其架构思路与使用体验

整个交互可以分成六个部分:

  1. 玩家与游戏交互,告诉游戏要出售一把剑。
  2. 游戏向 Enjin 的可信云(Trusted Cloud)发送一个请求,告诉 Enjin 从玩家的仓库中移除这把剑。
  3. 可信云向玩家的 Enjin Wallet App 发送移除这把剑的请求。
  4. 玩家接到请求后可以选择接受或拒绝。
  5. 如果玩家接受了,这个请求就会被广播到以太坊网络上。Enjin 的智能合约会处理以太坊链上的所有相应操作。
  6. 可信云会监听以太坊上的交易结果,并将其传回游戏。如果一切顺利,玩家的剑将被移除,并得到相应数额的金币。

很明显,用来处理游戏客户端和以太坊之间交互请求的可信云服务(Trusted Cloud)是整个架构的最核心部分,相当于交互过程的中心枢纽。以下是详细地解释各部分在交互中的作用。

智能合约:

Enjin 的智能合约可以根据用户的行为处理以太坊的链上操作,是处理游戏区块链部分的核心部门,主要针对道具的铸造、分解、交易等操作进行处理。 主要功能包括:

  1. 铸造区块链资产(Tokens)
  2. 分解区块链资产
  3. 自定义代币数据和元数据
  4. 在地之间发送代币(开发者与用户)

可信云(Trusted Cloud):

可信云是 Enjin Platform 的主要后端服务。它是一项用于连接游戏与以太坊网络的服务,建立在云端。

可信云扮演的是一个枢纽的角色,它从客户端、游戏服务器、Enjin Wallet 收集请求,然后与 Enjin 的智能合约交互,最终向游戏返回数据。它还管理着玩家的游戏账户(如 SteamID)与他们的区块链身份(区块链钱包地址)的对应。

Enjin 还为开发者提供了 API,让他们不必为与 Enjin 智能合约或钱包交互而头疼。比起直接与 Enjin 的智能合约进行交互,可信云提供了更好的错误处理与输入验证。此外,它还会为游戏推送交易的状态。

可信云包含以太坊测试网和主网两个服务器。测试网上的 ETH 和 Enjin Coin 都没有任何价值,开发者可以在这里进行低成本的测试。主网上的交易都是真金白银的,项目在测试网测试完毕后才能在主网上线。

Platform API (GraphQL):

GraphQL 是 API 查询语言,开发者可以通过它来建立游戏与可信云的通信。 GraphQL 将为开发者 API 中的数据提供完整易懂的描述,使客户端用户能够准确描述他们的需求。

Enjin Wallet:

每个用户都有自己独一无二的区块链地址,所有区块链上的交易都需要被用户的私钥签名授权。 Enjin Wallet 提供了无缝签名方案,让通过 Enjin 智能合约执行复杂的命令这件事变得容易。

Wallet Daemon:

Wallet Daemon 是一个自动授权工具,它可以帮助开发者将来自可信云或发送给可信云的交易请求进行自动授权。如果没有它,每一笔游戏内的区块链交易都需要被依次授权。Wallet Daemon 还管理着以太坊地址与对应的可信云身份的连接。当在可信云上提交了请求,Wallet Daemon 会收到这个请求并对其签名然后返回给可信云。目前,只有控制台版本的 Wallet Daemon,在未来会推出图形界面版。

Enjin 平台使用体验

地址:https://cloud.enjin.io/

DappReview 第一时间测试了 Enjin 平台的完整功能,上来就先收钱 ... 免费的套餐里啥也没有,无法创建任何项目,目前有两个付费选项。

  • 独立开发者 - 每月 29 美金,只能构建 1 个项目,只有 1 个团队成员,每天 500 次 API 请求
  • 专业版 - 每月 99 美金,最多构建 3 个项目,5 个团队成员,每天 5000 次 API 请求

刚刚上线的 Enjin 平台能为区块链游戏带来什么?了解其架构思路与使用体验

个人感觉这个定价有点坑,估计用不了多久就会调整。付费之后,在创建项目过程中需要先绑定 Enjin 钱包,后续会在钱包中来授权一些操作。

刚刚上线的 Enjin 平台能为区块链游戏带来什么?了解其架构思路与使用体验

准备工作完成后,我们来看看能在 Enjin Platform 搞什么事情。目前这个网页版平台主要能做的事情都在左边 Assets 这个版块里,其他版块基本没太多东西,Asset 板块中,用户可以方便地自定义基于 ERC-1155 的 FT 或者 NFT,完成一键发资产。

刚刚上线的 Enjin 平台能为区块链游戏带来什么?了解其架构思路与使用体验

如上图所示,我们发了一个名为 DappReviewTest 的资产,有诸多参数可以定义,包括资产类型、供给模型、是否可交易、质押 ENJ 代币数量、初始流通等等。

刚刚上线的 Enjin 平台能为区块链游戏带来什么?了解其架构思路与使用体验

点击创建资产之后,需要在绑定的 Enjin 钱包中进行授权创建,此时会发起一笔交易将铸造时质押的 ENJ 代币发送给 Enjin 的合约。没过多久,刚才所铸造的 DappReviewTest 资产就已经可以在 Assets 页面查看到,链上资产已经创建完毕。对于其他用户则已经可以从 Enjin 钱包、EnjinX 浏览器查到这款新诞生的 NFT 资产了。

以上其就是目前网页端 Enjin 平台的基本功能,主要是围绕资产的创建和管理,至于游戏中与资产的交互,则需要阅读 Enjin SDK 的文档,使用 GraphQL 去与可信云进行交互,发送请求完成操作。

总结

Enjin 的整套思路是,把可信云作为一个开发者与智能合约交互的中间件,对于开发者而言,无需关心游戏如何与以太坊交互,不用了解 NFT 资产合约怎么构建。有了 Enjin 平台这座桥梁,开发者可以用 API 完成游戏和可信云的交互,用图形化界面去管理和创造资产,所有围绕区块链的交互,全部由 Enjin 的可信云搞定。

与此同时,这对 Enjin 可信云的高可用性和性能提出了很大的挑战,如果 Enjin 的野心得以实现,Enjin Platform 真的拥有了数十个日活达到万级别「区块链爆款」游戏,其可信云与以太坊的交互是否足够稳定,足以支撑这些游戏的良好体验?毕竟可信云要是挂了,那么使用该服务的数十款游戏也将面临无法与以太坊交互的问题。

最后,我们认为Enjin 平台的逻辑并不适合所有 DApp。 它更适用于仅在游戏中发行区块链资产,支持区块链资产交易的游戏,能为这类游戏提供了一整套操作成本低、学习成本低的快速「区块链资产+」的解决方案。如果开发者一旦需要将游戏部分逻辑上链,那么就需要自己构建智能合约,直接与以太坊交互。即便该游戏使用 Enjin 平台发行 NFT,Enjin 的可信云也只能解决围绕 NFT 的操作,游戏逻辑的智能合约并不能通过 Enjin 平台减轻任何工作量。

来源链接:mp.weixin.qq.com