首页 金陀螺奖 【FBEC 2018】Cocos引擎Kevin Yin畅谈区块链游戏未来:用非同质数字资产支撑链游生态

【FBEC 2018】Cocos引擎Kevin Yin畅谈区块链游戏未来:用非同质数字资产支撑链游生态

由深圳市互联网文化市场协会、广东省游戏产业协会指导,游戏陀螺、陀螺财经、正中企业服务联合主办的2018未来商业生态链接大会暨第三届金陀螺奖颁奖典礼(简称“FBEC2018”)于2018年12月5日在深圳市南山区科兴科学园会议中心1-3层盛大召开,FBEC2018以“突维 · 新裂变”为主题,涵盖游戏及数字娱乐、区块链技术与应用、VR/AR/AI等多个行业。

会上,Cocos-BCX首席技术顾问Kevin Yin发表了题为“区块链游戏基础设施解决方案的理论设计和一些实践”的精彩演讲。

【FBEC 2018】Cocos引擎Kevin Yin畅谈区块链游戏未来:用非同质数字资产支撑链游生态配图(1)

kevin Yin:

大家好,我是Cocos-BCX的首席技术顾问,我今天的演讲主题是《区块链基础设施解决方案的理论设计和实践分享》。因为今天我是代表Cocos游戏引擎在这里做的分享,所以我的论点和分享的内容都会更加偏重于有具体的设计,或者是具体的游戏开发方面。

Cocos是一个老牌的游戏引擎,已经有十年了,是目前国内最大的开发者社区。截止到昨天,已经有130万注册用户了。我们做的工作大部分是在基础设施上,希望更多人能够进入这个行业,通过我们的游戏引擎,我们的IDE,能够更加便捷的,或者是在稍微有点基础的情况下快速进入区块链行业,成为内容的贡献者。

那区块链游戏以后会怎么样?是不是有单独的分类?

我们认为越来越多的传统游戏及开发者们,会向区块链的方向发展,或者说具备类似区块链的特性。即一部分游戏资产可以在多个游戏中,作为一种通用的数字资产去做流通。

所以我们认为区块链技术的未来会成为绝大多数游戏的必要属性,而不会出现专门的区块链游戏的分类。区块链和今天的数据库一样,会成为大多数游戏都普及的,每个人都会用到的属性,这种属性会给未来的游戏带来新的开发运营和收益模式。

首先是解决方案的设计理念,最重要的事情是使用非同质数字资产支撑游戏生态。非同质数字资产就类似于大家前段时间接触的加密猫,这种东西称之为非同质的数字资产,每个代币都有独特的属性,而不像比特币,就是等价于1块钱,2块钱。我们知道两只猫是不能等价于一个两只猫的,猫有不同的属性,我们称这种是非同质的数字资产。

在这种理念下,提出了几个重要的概念和标准:

第一个是我们有世界观的概念。

刚才看到了一段头号玩家的视频,头号玩家就是典型的视觉观体系。或者可能在座的都玩过《魔兽争霸》,《魔兽》就是大的世界观,里面有Dota,有魔兽争霸,这些散落的游戏都同属于一个世界观的概念之下。我们可以认为在同等的世界观下的游戏资产,是可以在具备某些条件支撑的情况下去做互通的。

比如魔兽里的一把剑,在DOTA、魔兽世界、魔兽争霸中都可以使用,只要满足每个世界对这把剑的不同定义,就可以做到在不破坏游戏系统的情况下,让这个资产有了更多的使用场景。

我们也可以想象一下,一个资产往往并不是单一的点组成的,比如说刚刚我提到的那把剑,可能上面还嵌了宝石,具备了爆击的属性。非同质数字资产在今天的知识体系下还是比较原始的,因为现在的区块链还是在发展初期。但是,技术天天在进步,现在Cocos已经在这个数字资产的定义上相对于以往的721(加密猫用的协议),又有了更进一步的扩展。现在的数字资产已经具备了我刚才提到的属性,就是可以把多个数字资产黏合到一个上面,变成一个复合体。假定有一个红色慧星的话,那里面的引擎、基本武器可以分别是不同的数字资产,这样一来,就可以给游戏设计带来了更多的可能性。

另外,就具体游戏的开发与设计上,我想跟大家分享Cocos-BCX之前推出的数字资产的发行和使用标准,我们称之为NHAS1808。NHAS1808相对于典型的以太坊的数字资产标准,主要是多了如下几样东西:

一是数据扩展性。刚才提到了世界观的概念,这个在以太坊的设计之初是没有考虑的。在既有多重世界的前提下,我们是要求这个非同质数字资产自身就要具备可扩展性。也就是说一把剑可能在不同的世界中有不同的投影,每个世界中都有自己的属性值或者是能力范围值。

为什么这样设计?最近有一个梗,经常有小学生在百度贴吧里面讨论,某某如果穿越到了火影打不打得过谁,如果真的穿越了到了火影,一拳就锤爆了地球,哪有什么可比性?所以说数字资产在不同的游戏中如果想要穿越的话,还必须有一个世界墙的概念。就是贝吉塔如果穿越到火影,不能真的是以前那个一拳就可以锤爆地球村的贝吉塔,而是他在原有世界中是什么排位,在新的游戏中也要是什么样的排位。这里就要求数字资产自身是需要具备多重属性的,或者属性要有多重映射。比如说攻击力,需要存在多个可扩展的扩展值,这样才具备穿越的可能性。

第二个是权限控制,玩家可以选择接受是否被别的游戏影响。火影忍者可以选择接受或者是不接受贝吉塔的超能力,在玩家可以带着道具穿越来穿越去的大趋势中,还可以保持自己相对的独立性。

如果我们认可区块链在游戏中的特性,我们就可以推导出以后的区块链世界中会产生一种很有意思的东西,现在还不知道名字,所以我们给它安一个代号,称之为“铁匠铺”。比如说我在《王者荣耀》中拿了一个皮肤,或者在《魔兽世界》中拔出一把剑,这都是由游戏产生的。但是由于区块链系统和智能合约的加入,很可能未来游戏的数字资产,道具之类的都由内容商产生,而不是具体由某个游戏产生。我们称这种智能合约为铁匠铺,这个铁匠铺以后可能会是由区块链的节点群,或者是理事会共管的。游戏的开发商只是其中的一个席位,不再完全控制整个道具的产出规则。

下面,我继续分享一个比较有意思的概念。

这是开罗游戏的游戏发展国,是在的内测链上运行了一个区块链游戏,假设游戏发展国是我率领一个团队开发的,现在我把游戏产品拿来卖给腾讯。里面有一个很重要的资产就是员工和公司,是不是意味着在这种世界观下,其实可以把公司放到另外一个游戏里面开。比如说大风里面,大风是一个炒地皮的游戏,我们可以在大风里买地皮,去游戏发展国里开新公司。这样一来,两个游戏在泛资产的层面上就实现了互通。

刚才我提到的那堆概念里有一个很重要的东西,我们称之为原子合并。

为什么有这个东西?这在传统游戏中是不存在的,因为传统游戏我们都认为存在中介的概念,或者是有一个中间裁决者,那就是游戏的运营商。但是一旦到了区块链游戏的环境中,已经不再具备传统意义上的中心处理机构了。或者是我们在交易的时候,比如说我在网上买一部手机,已经不存在支付宝这种说法了,没有这个中间裁决机构了。在这种环境下,怎么保证两两交易的可靠性。或者是刚刚提到的一个道具由很多个小道具组成的,怎么保证这些道具一次性交到用户手中?

这就是需要有原子合并——把多个操作压成一个原子,比如说买卖、付钱,从别人手里拿道具的这个动作合成一个。Cocos在引擎的层面就已经支持了这个东西,这是我们一个很重点的特性。它能够帮助我们在新的环境下,依然能够实现交易。比如说买卖是同一时间发生,把这两个操作合并到一起。再举例来说,如果我把钱给别人,但是他没有把道具给我,那我给他钱的动作也不会生效。

下一个我想给大家分享的是关于资产的权限,现在的区块链系统,包括现在的以太坊和EOS中,他们对资产的定义相对来说还是比较初级或者是比较模糊的。我这里只举一个特点,所有者和使用者,就像房产证一样。资产能否把他的所有权和使用权切开,这是一个很重要的特性。他能够帮助我们实现很多东西,比如说典当以及道具的租赁。但租赁是否意味着这个道具的所有者还是我的,不过使用权临时租赁给了租赁道具的人。

是否在数字货币或者是数字资产本身的层面就支持这种操作?这也是Cocos-BCX在方案设计或者是实现的时候重点做的一项工作内容。

下面是对游戏的解剖,我们认为他应该具备一些基础特性。首先第一个,不知道各位对最近的区块链游戏新闻有没有关注?现在的区块链上运行的游戏,大部分是资金盘游戏,或者是博彩的游戏。其中博彩游戏的推广其实并不如我们想象中的这么火热,它的问题在哪里?关键的因素是他的环境,我这里提到的并不是随机数本身,而是随机数使用环境。

现在对以太坊上的游戏做了拆解分析,有一个RPG游戏里面有了开箱子的逻辑,用户可以抽取装备,抽装备的过程也可以是一个广义上的博彩。它有一个什么问题?就是无法脱开中心服务器给他提供随机数的种子,这是很大的风险源。第二个,现在的技术也在进步,所以也有人想到别的办法。比如说现在是用区块链的区块高度或者是当前的时间窗,在智能合约里面写了某种逻辑作为协议书的生成。但是智能合约也是公开并开源的,理论上作为开发者是可以推论出这个随机数在什么时候会产生什么样的结果。正是这个问题导致了最近包括EOS在内的大量的链游都遇到了推测攻击,就是攻击者可以猜出来你的随机数在什么地方,什么时候会生效。直接导致了现在的链游圈子里博彩游戏也做得不好,可能真正能够用的只有资金盘游戏。

Cocos在这一块做了什么研究呢?

其一是实现一个区块链系统的内源可信随机过程,其二是想办法保证了自身没办法探知这个链上,或者是这一块区块中用到的随机数是什么样的内容。其三我们想到了一个方案,有一个黑箱可以保证这个链游的开发者自己也没办法用自己的签名去拿到这个随机数的内容,用这种方式来保障在区块链上能够正确的使用,或者是正确的支撑一个完整的牌局。

需要强调的两点:第一个这个随机数从产生开始,直到投送到随机数的使用者,这个过程需要是安全的。第二个是在这个随机数使用的过程中,也需要黑箱封底。比如说打麻将,洗牌的过程都是要随机的,要能够安全的。但是同时洗好的牌放在桌上,大家抽的过程也是需要保密的。这也是目前大多数区块链系统没有考虑的,可能我的过程生成出来之后,直接在链上就公布了,这也是一个问题。

再有一个是关于特定会话的保持问题,这也是大多数游戏必须具备的特性。还是举打麻将的例子:假定有四个人打牌,是不是每份合约的运行者都应该知道当前有哪些用户正在和我对局,而这个过程其实是不应该依赖中心服务器做数据库保留或者是保持长连接的,这就要求区块链系统需要有上下文保持的能力——能够像传统的中心服务器系统一样,去记住一个游戏,参与上下文,维持一个房间。这种也是目前以区块为单位的区块链系统很难做到的,当然对这一块,我们已经有了方案。在接下来公布的SDK上,会向Cocos-BCX引擎的使用者开放这一部分。

更多大会精彩内容请关注“游戏陀螺”官网:

www.youxituoluo.com

免责声明:
1、本文仅代表陀螺专栏作者本人观点,不代表陀螺财经观点或立场。如有侵权等其它事项,请联系作者,会尽快删除。
2、转载须注明作者和稿件源自陀螺财经,违者将依法追究责任。

相关文章

枭枭
一本正经地胡说八道。

723篇

文章总数

10万+

总热度

热门文章

rss订阅