如何通过区块链去中化技术来解决游戏产业的问题
扫描二维码
随时随地手机看文章
当今dApp(去中心化应用)是区块链技术中最为普及的,其中「虚拟资产上炼」是被普遍看好的dApp核心玩法,虚拟资产最直接应用就属游戏中的游戏币和虚拟宝物,而且游戏的全球市场1370亿美金以上,2018年(图表1),全球游戏行业营收约为1125亿美元,到了2019年行业将增长20%至1186亿美元,所以用游戏产业来切入去中心化应用是很好的切入点,科技技术要商业化,透过娱乐业的推动是稀松平常的事,像是Facebook娱乐性社交平台却推动云端计算的普及,且Facebook推广之初也是靠众多小游戏捕获大众市场,故本系统透过区块链去中化技术来解决游戏产业的问题。
全球游戏营收
游戏产业的推广分四个阶段,近年各家游戏的生命周期逐年变短,因以下几点,第一开发商开发新的版本过快,导致已经习惯游戏操作的玩家流失,但不持续改版又无法吸引新的玩家,因为玩家是受外部社交软件所影响所以需要积极的改版来吸引新玩家,导致游戏快速到衰退期,第二点就是开发商用一套「pay for win」、「pay for time」的剥削手法,让付费玩家获得成就感从而强化付费意愿,而不付费玩家付出自己的时间为消费玩家提供「陪玩服务」,换句话说游戏开发商泛滥的贩卖物品就会有杀鸡取卵的效果,使得不消费玩家持续离开了,让整个游戏生态崩坏(图表2)。
图表2目前课金游戏生态金字塔
如果游戏玩家组成一个循环的生态系(图表3),让用户把自己获得虚拟宝物透过一个公开的交易平台,交易平台用有价的代币买卖虚拟物品,开发商从中抽取手续费,让开发商不用大量贩售虚拟资产使以导致通货膨胀。虚拟物品设计的较希有,反而会让玩家更愿意收藏而产生更大的利润,这样不消费的玩家透过自己的时间来换来取相对的利润,而花钱的玩家也可以省下时间,这样对双方玩家取得了双赢。且透过虚拟物品交易平台交易时同时交易代币与虚拟物品,对买卖双都有一定的保障。
图表3自由交易生态
如和让虚拟物品是公开、公正、不被滥用的。本文提出了让处理虚拟资产的服务器的代码和构架透明,并且不可以被窜改,以下提出三点核心构架;第一点解决构架和代码透明由git来把代码公开和检视,而系统架构则用Docker中的Dockerfile档案来公布。第二点不可窜改的后台,透过一种IOE团队打包的Linux镜像档,用这特制运行的操作系统运行就无法对该操作系统进行修改与调整,这种运行这里称为[IaasNode],第三点虚拟资产纪录在加密的数据库,此种数据库这里称[CryptoNode],以上是本系统的基本构架。
虚拟物品交易需要用有价的代币交易,本系统代币在这里称为IOE币,IOE币是透过ethereum中的ERC20规范发行的区块链代币,现在市面上的也有众多ERC20代币,大部分没有实质的价值担保,通常多为空气币居多,而IOE币是透过Solidity智能和约来实作透过ETH做为担保与交换,那ETH中的Ether与IOE的汇率计算是透过(方程式1)来做汇率计算,可直接透过这汇率向智能合约做购买与贩卖,因此当IOE购买越多汇率也会增加,反之卖的越多汇率就会下降,以达到实质担保,且符合自由市场供需与价钱的反应。
方程式1 IOE与Ether汇率方程式
IOE团队是要打造真正可运行的去中心化构架,因为目前市面众多去中心构架都没有实际应用,反而多为投机的项目居多(20),因此本团队会以目标导向为目的,首要会积极开发应用并且找寻第三方开发商,来把实际的应用打造出来。
系统架构与节点Node
本系统分成两种节点:IaasNode和CryptoNode,IaasNode主要是负责去中心化的运行环境,确认运行程序的透明,且不可以修改.CryptoNode是负责敏感数据,这边的数据都会有加密,并且无法窜改,只有对应的IassNode可以做操作和修改。
系统架构设计如(图表4),本构架透过Docker技术中的特性,能把运行所需要用到的基础建设已代码的方式记录到Dockerfile,这样代码和运行环境就能够一起检视,接者把代码和Dockerfile透过版本控制技术Git上传到Github、Bitbucket或是其他的开源网站,然用游戏开发商标明要部属到哪一个[IaasNode],然后透过[JenkinsNode]完成部署的动作,然后部属的Iaas和git位置关联信息是纪录在[CryptoNode]里,并且只有认可的[IaasNode]才可以操作[CryptoNode]里的数据。
图表4系统基本构架
为了支撑这个构架,我们把系统里的角色分成四种:开发商、IOE团队、Node供应商、用户等4个角色,角色的关系如(图表5),当用户透过智能合约,来买卖就会帮助我们获得一部分的IOE,当作系统开发和维运的费用,而用户玩家可以透过取得到的IOE代币去系统内的交易所交易,来购买自身所需的虚拟物品,反之用户也可以把自身的虚拟物品透过此管道贩卖出去,来换到对应的IOE代币,而每种虚拟物品都是有属于某个系统内的应用,如果该应用的虚拟物品被买卖,其中有部分的费用会给该应用的开发者,当作开发应用的报酬,当然开发商也可以直接跟用户收取费用。
图表5角色IOE的流动关系
CryptoNode
这个Node主要是纪录本系统的用户资料、App数据、系统数据、JenkinsNode数据、DockerNode数据,要操作里面的数据是要透过认可过的节点来操作和读取,并请所以数据都有做加密处理,以确保数据的安全性。
这个Node是整个系统的核心,这也是最后才会变成公链的节点,并且CryptoNode并不支持挖矿,而是用户来投票决定每个区域的CryptoNode供应商(图表6),而当CryptoNode节点的供应商,依处理的交易量来获得应有的手续费,这样设计有两种好处,第一这样有去中心的效果,如果没有只有一个节点被恶意串改,其他的节点也无法承认,第二点每区域都有节点就可以节省网络连线时间,这样用户就有更快的交易体验。
CryptoNode的确认方式和广播方式是采用符合使用者行为去设计的,应用程序的所在位置通常都在固定区域,当应用程序发请求,只要该节点确认过该请求就可以回复给发出请求的App,然后在发通知给其他的节点,让他们更新数据。但是如果客户如果原本都是美洲使用,现在出现在亚洲使用者的话,但是数据没有同步完成就要等待同步完成才能继续使用,但是正常情况这是不可能会发生的。
CryptoNode纪录IOE团队开发的Jenkins服务器,当然这个服务器运行在[IaasNode]上,那这里我们称为[JenkinsNode],每[JenkinsNode]都对应多个可以部属App的[DockerNode]用来,这些对应信息也会记录在CryptoNode。
图表6CryptoNode分布式
CryptoNode的用户资料用(图表7)来做说明,每一笔用户都有一组”用户ID”做索引,用户会记录用的基本资料,每次CryptoNode会新增修改不同的数据,其中”apps”是纪录应用程序与用户的对应数据,都会记录在这里,那如果有”@”做前缀就是系统有规范的数据格式,像是可以做交易的数据就会有规范。
图表7用户资料格式
IaasNode
IaasNode是一种Linux操作系统的运行环境,它是由IOE团队释出的Linux Image所安装后所运行的操作系统,此操作系统有三种特性,第一它只能运行特定的软件或是应用程序,第二它透过任何方法登入,因为要确定无法修改或安装其他应用程序,已确保由[JenkinsNode]部署过来的应用程序或是内置的应用程序不会被串改,只有允许的信道能能够与操做这个节点,第三这种节点会有安装CryptoNode的SDK,已确保呼叫API是经过认证的IaasNode,并且每次传送信息前都会比对部属程序的SHA-2,已确保系统与App都没有被串改。
JenkinsNode
JenkinsNode也是运行在[IaasNode]的其中一种,只是它上面是运行IOE团队所修改的Jenkins服务器,它是一个将Git版本库与运行的[DockerNode]做连接,所以JenkinsNode的角色非常重要,所以这个节点会跟[CryptoNode]是最后才会释出。每个JenkinsNode所在位置等信息都会记录在Crypto中,开发者用户只要透过浏览器连接到最近的JenkinsNode,并且使用[IOE],就可以登入Jenkins的后台(图表8),开发者就可以指定自身项目的Git版本库部属到单一或多个[DockerNode],开发商可以看到DockerNode列表,上面会有计价方式,此计价方式是申请DockerNode的节点供应商所决定的,开发商就可以依自己的考察来决定要来租借符合需求的节点。
上述是指第一次部属应用程序的流程,之后如果要更动版本,首先开发商发送新的Git Push,这时候JenkinsNode就会收到这个新的版本,但是不会马上部属到DockerNode,而是会发起投票机制,这时候如果完成投票,并且审核通过才会部属到对应的DockerNode,完成更新版本的动作。
投票机制的方式目前规划是使用该应用程序的用户,在一定的时间内要去JenkinsNode的后台投下是否允许更新版本,只要超过时间就算是废票。
图表8 Jenkins后台
DockerNode
目前后台的组成有很多种,像是Java、Nodejs、PHP、Python、Ruby、Go、C#等等的程序语言编写而成的,而且可能会需要用到很多第三方服务像是AWS、Google Cloud,更不用说需要安装一些套服软件,DockerNode的核心概念就是开发商不需要改变原本的构架,只要把交易的部分的代码公开,其余开发商要用什么构架都是可以的。
IOE采用Docker的解决方案,能够公开代码并且能够检视运行构架,且只要运行构架有支持Docker都可以使用,所以此节点才会命名为DockerNode,此节点是一种IaasNode,所以这个操作系统主要是运行Docker,且只有预留信道给[JenkinsNode]。
DockerNode会是最先开法让用户注册的节点,用户只要运行官方提供Linux Image,此时节点供应商要透过浏览器连接到最近的JenkinsNode,并且使用[IOE],就可以登入Jenkins的后台(图表8),并且输入自己的节点网络位置,然后开始输入想要租借的价码,只要有开发商租借此节点就算是租借完成。而开发商可以透过(表格1)的参数来决定是否要租这个节点。
交易所Node
只要开发商在[CryptoNode]中的应用程序数据中符合(表格2)的格式规范,这些物品,这样的物品就可以刊登在IOE虚拟物品交易所上,而这个交易所是IOE团队所以开发的一个交易平台的节点,也只有它能够被授权交易[CryptoNode]中的这些数据。
要交易的用户可以过网页浏览器可以进到交易所的网页界面,并且需要搭配[IOE],用户透过交易所就可以买卖虚拟物品。
IOE Client Kit
如果开发商要写入或读取客户资料时须要透过IOE团队开发的客户端套件,因运行平台不同IOE团队会提供不同的套件,目前规划会释放出三个程序语言的套件C# Unity、Javascript、Java。用这些套件,确定用户资料是安全不会被窜改的。
IOE浏览器插件
由IOE团队开发的浏览器插件,它类似于以太仿中的MetaMask,可以当虚拟钱包,并且可以与前端Javascript Client Kit做沟通,来用户的数据传输更安全与便利。
代币发行细节
IOE代币
IOE代币为Intelligent OperaTIng System Exchange Token,简称“IOE币”,代币缩写为”IOE”,发行总量恒定为1亿个,且保证永不增发。IOE币是基于以太坊Ethereum发行的去中心化的区块链数字资产,它是基于以太坊区块
链的ERC 20标准代币。
发行方式
与透过IOE的Ethereum智能合约透过Eth做为担保与交换,ETH中的Ether与IOE币的汇率计算是透过方程式(方程式2)来做汇率计算,可以透过IOE的dApp网页,来进行购买或是买卖,不过这并不包含系统开发费与分润费。有关详细的操方可以参考官方的教学说明。
方程式2 IOE与Eth汇率交换
优势与特点
· 人数精简快速灵活的开发团队,采用Scurm敏捷式开发的团队。
· 突破内存块链无法与现今应用程序做整合的困境。
· 改变虚拟货币没有实际应用的问题,团队首要目标先来做实际应用。
· 短期改变游戏圈的消费生态,让游戏玩家有更有保障,让游戏开发商有更好的游戏推销周期。
· 开发商没有过高的门坎来转移目前的程序构架。
· 代币有透过Eth做担保。