本文网游非指传统网游,而是MC这种局域网游戏或其它能适应的网络形式
先来一段视频,以分形随机生成的世界——
虽然并不排除上面这个视频是经作者筛选后呈现的个例效果的可能,但至少以MC来看,利用算法来生成复杂变化的游戏世界是可行的。
不多说的,直入主题——
一、如何将地图生成嵌入区块链:
区块链中,最费算力的部分就是为了使其账单具有特殊性而设置的哈希“找平”,只要将哈希换作MC生成地图用到的seed,将“找平”换作区块之间的平滑计算,就能将地图生成的函数嵌入到区块链中,继而实现对区块链“浪费”的算力的利用。
但以上并没有结束,在区块链与seed生成地图的结合中有一个重要障碍是必须要解决的——维度差异,区块链中只有上下游概念,而若是将其结合到地图生成中,对于两个甚至三个方向的2D、3D空间将束手无策。对此我并没能想到一个好的解决办法,只提供一个比较暴力的模式:建立区块数据库和多链条分叉。首先建立一个储存以坐标储存区块的数据库(可以建立在区块链网络中),记录区块的是否已经生成等信息,然后在原点设置原始区块,每当地图生成出现一个新方向时就延伸出支链,由于地图探索是必定有行进路线的,所以这样可以确保地图的连续性,只是这样还有个小问题,当遇到传送等跨越空间的行进路线时,会无法形成链条而必须产生一个新的原始区块,但也不影响实现。
以上,便是将地图生成嵌入区块链的方法。
二、如何将游戏多样性需要人工实现的束缚解开:
答案很简单:模块化,下面是一个将游戏内容模块化的例子。
A、如何将魔法模块化:
魔法模块化分三步。
1、创造基本的元素和物质,并给其设定属性,如:元素A、B、C、D,物质以太,A会激活以太,以太激活会根据周围元素发光。
2、建立魔法定律,如:A和B接触会快速弹开,C吸引A,D强力吸引B
3、建立解析魔法公式的函数
只需要三步,就出现了一个拥有无数可能的魔法系统,比如制作一个魔法,先编魔法公式:
施法动作第一步寻找并沟通C,(多线程,与沟通C同时进行)寻找并沟通D;
第二步使C环绕周围一圈,使D环绕周围一圈;
第三步将C移动到一个目标位置,将D移动到相同的一个目标位置。结束动作无。
魔法公式完成后输入解析函数,得出结果{动画:光球膨胀,效果:无,可持续:不,施法消耗:(假装写了),哈希:A23D},实验下效果然后命名“闪光术”。
之后这个魔法释放时就只需要调用结果值,在吟唱的时候通过魔法的值来加载动画和产生效果,像是魔法手只要设置一个会对任何物质产生吸附力的元素E,然后在魔法公式里施法动作让E对假象目标包围,结束动作散去E,解析结果值就是{动画:无,效果:目标坐标锁定跟随施法点,可持续:可,施法消耗:(假装写了),哈希:1BC4}。
而只要基础的元素和定律够多,魔法的可能也就越多,假设前面的魔法手是魔法工会通用教材里教的,那或许还会有个大法师的弟子可以教你一个减少精神力消耗但难度增加的复合法术版本,法术一是将去除物质重力的元素F附加在目标上,法术二是沟通对物质产生斥力的元素G靠近目标,效果看上去也是个魔法手。
B、模块与模块之间的结合:
魔法模块完成后,游戏中的其它模块比如AI与之结合的效果:
魔法施放,发送“施法”的事件,神牧接收到事件后触发“寻找黑暗的踪迹”的AI,检索魔法的值中有没有“黑暗元素”,有“黑暗元素”再根据其数量判断是否触发神牧“发现黑暗的踪迹”的AI,如果触发,是玩家就给个字幕“发现了一丝黑暗的气息”,是NPC就给两个“关注打斗”,“寻找施法者”的AI。
如此只要合理安排,设计好框架后整个游戏的内容就会是以往数倍甚至更多工作量才能做成的效果。
三、如何将区块链货币结合到游戏中:
如今热点上的区块链都是一个类型——数字货币,数字货币之所以风行的关键原因就在于其安全性,实际上,数字货币只是一个简单的数值,除了被用来兑换现金担当一个波动的“¥”符号外,诸如经验值,物品,声望等游戏中各种常见系统都能以区块链技术实现。
第一部分已经将地图生成嵌入了区块链中,而现在要做的是将嵌入了地图生成的区块链结合到游戏中。MC中探图的意义在于寻找珍惜资源,网游中开荒的意义在于获取特殊奖励,只要按照现有模式,将嵌入地图生成的区块链的产出货币兑现奖励,就能保证玩家不会对探索新区块感觉乏味。
数字货币的一大特点“稀缺性”也是能好好利用的地方,将“稀缺性”与游戏放到一起,不难联想到“神器”这两个字,对于数字货币在“稀缺性”上是将每个区块产出逐步减半的做法,在游戏中可以做出符合需求的调整。而除了成为“神器”外,产出的数字货币还能有很多身份,如“怪物”、“NPC”、“灵气”、“声望”、“经验”等等。
在传统游戏中,一个区域里怪物数量都是有上限的,同时一定范围内怪物水平也都是有上限的,新手出现在新手村,只有小块活动区域,同时怪物集中并且实力底下,等到成长期活动范围就会越来越大,而怪物实力也随之增强同时分隔距离逐渐变大(直到一个上限)。如果是作为一个生存游戏,探索地图需要食物和打怪的话,那么玩家能到达的最远距离(区块链的长度)是与其发展水平成正比的,所以只要按照累加的数字货币为怪物等级总和来生成怪物,就能将难度适应好玩家成长。
即使是因跑图而落下战斗力的玩家也不用担心,只要因为当总等级提高时,野外的范围也变得更大了,而且随着高等级怪物的出现,势必会减少低等级怪物的经验,就像高等级副本出现但低等级副本还是会继续存在的。但是如果玩家疯狂探索地图而毫不发展战斗力,最终BOSS(相对的)遍地,随手一发就将玩家秒回家,也会促使玩家主动发展以求自保,可以在某种程度上控制玩家的发展节奏。
NPC在游戏中也总是随着玩家的发展水平由低到高逐步出现,而将新区块中出现的NPC的等级设为累计的数字货币总和一定比例范围内总和,便同样能控制好游戏的节奏。
灵气与怪物相仿,只是控制刷出的不是怪物,而是各种材料。
至于“声望”就很容易理解了,跑出一个新区块就给玩家一点声望,以此来显示其作为“探险家”的成就。
以上,一些关于区块链沙盒网游的想法。
暂无关于此日志的评论。