本人算是游戏研发这个坑爹行业的业内人员吧,今年大四毕业其实也可以到DNF国服运营团队混日子,不过最终还是选择做研发就和这游戏的国服团队失之交臂了。现在做的项目其实也就是DNF和DN的杂交山寨,所以会去折腾这些玩意。
好了,黑喂狗,揍起来!
Part.1-深渊流程分析
基础的游戏设定看帖子的都比我懂就直接跳过。不献丑了
那就从进入深渊模式开始说起吧。
首先深渊肯定不是常规副本里加了个可以撸的管子那么简单,副本都是死的……进入深渊模式后,玩家向服务器请求的是另一个同难度同目标地下城的副本,这个副本完整的拷贝了正常副本的设定--除了撸管房-- 撸管房的场景与怪物有所重制,并且添加了一个可以撸的巨大管子。管子可以撸出两种难度,每种难度下有若干个APC组合。击破以后会掉落奖励。OK.深渊模式的副本就这么一回事。
重点来了,在玩家你向服务器请求深渊副本的时候,系统做了什么呢?
首先,系统会扣掉你一个红薯,没红薯?不好意思明儿个赶早……扣除红薯以后,玩家你开始读本,系统开始生成副本数据。这个时候就决定副本的管子里有什么玩意,不仅决定难度,还决定了APC组合。至于掉率……嘛,现在和我们无关。
众所周知,DNF是把大量数据放在客户端上进行运算的,服务器只处理极少数的请求。在单机副本里,网络延迟与神罗天征丝毫不会影响你SM怪物的流畅程度,只有怪物死亡掉落item与切房间的时候你才会切身实地的感受到"卡"的存在。
显然,管子里有多少NPC系统自己很清楚,当最后一个NPC乘风西去时,会即时演算一个掉落概率,也就是大家心向往之的蓝天白云。以上就是我们所深渊流程。了解这个流程以后。我们就可以进行下一步讨论了
PART.2-这蛋B的概率是谁决定的:
严格的来说,所谓游戏概率不存在随机。如果你在看到屏幕里的自己在蓝天白云下幸福的哼着小曲这样一幅温馨的画面,那大概是这么一回事
第一次概率计算:在你读深渊副本的时候,服务器会生成一个随机数写入你要进入的副本,这个随机数会控制你的深渊难度与出现的
问:这个随机数是怎么决定的呢?
答:读服务器时间,做一个函数的迭代,得到一个"数".以这个数为编号,在已经填好的表里查找到"另一个数","另一个数"就是所谓的随机数。表是什么样的表?是一张早就写好了的表,区别只是从哪开始读而已。
数是什么样的数?随机数是时间经过函数迭代以后在表上的位置的表现。
也就是说,你进深渊副本的难度与APC组合,其实是你从登录到进副本之间的"某一个系统时间"决定的。
第二次概率计算:在你击破最后一个深渊怪物的时候,客户端会向服务器额外的发送一次请求,这个请求的返回值就是玩家爆出几片蓝天几朵白云,每片天哥哥和每朵云妹妹分别长什么样。