2016-11-23 10:59发布:一游网
更可信的御魂生成原理 ...
服务器端全栈程序猿路过,说下我的看法。
一个算法的设计,是要按照实际的需求来做的。比如阴阳师的御魂系统,必然要设计两个请求,一个用于在掉落御魂时生成御魂数据给客户端,一个用于在升级御魂时进行加属性操作,再将结果返回给客户端。
那么问题来了,这两种请求,那个更多呢?
答案应该显而易见吧,肯定是掉落远大于升级。
那么,为了服务器端的性能,应该设计为能更快的计算掉落结果,而不是更快的进行升级计算。或者说,不能为了更快的计算升级,而牺牲掉落时的运算性能。
最快的掉落计算,其实只需要随机出一个御魂的初始属性,就OK,完全没有必要去计算出全部的属性,浪费cpu不说,而且还会使每条御魂的数据更大,浪费存储,毕竟一个区的御魂总数是极其庞大的,每多一个字节,都会是一笔开销。
说到这里我想大家应该能明白吧。
我并非黄易的工程师,但是如果这个模块是我的团队来做,那么楼主所说的前提这种方案,是必然会被我毙掉的。
不过也不能排除黄易真是这么设计的,也许有我没考虑到的因素。
实际上,我这个研究跟这个前提无关,影响计算的只有两种强化机制
但实际上,这两种机制虽然在概率上分析有出入,但是对大体结论是不影响的
两种强化机制的说明:
实际上,关于御魂强化的原理应该有两种:
第一种是我说的,御魂在生成的时候是+15的,随机抹去5次属性,然后展现+0的御魂给玩家,玩家每次强化就是随机挑选一条属性。,然后系统将这个属性强化一次。
第二种是,御魂生成的时候是+0的,以及附加的五次强化点数,每次强化则是随机挑选一次强化点数并实现,这样计算就是40%(2/5)
一、先从简单地讨论起现在假设一个六星御魂,主属性不重要,副属性为天生四条,所谓被抹去次数可以理解为被强化的次数,总和为5
副属性 | 速度 | 属性A | 属性B | 属性C |
被抹去次数 | 2 | 1 | 1 | 1 |
那么强化的过程就是在这四个属性中随机选一条属性还原,强化一次,任意一条属性被强化的概率是25%(1/4)
强化两次不同结果的概率为
第一次强化速度 | 第一次强化属性ABC | |
第二次强化速度 | 1/16 | 1/4 |
第二次属性ABC | 3/16 | 1/2 |
可以看到,假如一个御魂天生只能被强化两次速度,强化两次都是速度的概率只有6.25%(1/16),接近于小概率事件了。
直到这里,是dalao @氪金氪金氪 的研究
这里我就先不放dalao的结论,原因后面再说,接下来继续看。
我们再看看以下两种情况
御魂A | 速度2 | 属性A2 | 属性B1 |
御魂B | 速度2 | 属性A3 |
两次都强化到速度的概率分别11.11%和25%所谓属性A2代表的意思是属性A能被强化2次
事实上,御魂B这种情况是极其罕见的。或者说我根本没见过。
然后御魂A的情况则是大家很容易遇到的,而且11.11%这样的数字其实概率还是很小的。
而御魂A强化两次,只有一次加到速度,这样的概率是50%(=2/9+1/9+1/6)这样倒是很常见
这时候御魂的样子会有两种可能,为了更好说明情况,这里我套入常见的数字
情况1 | 情况2 |
速度+4 | 速度+4 |
暴击+4% | 暴击+2% |
攻击加成+2% | 攻击加成+4% |
第三次强化到速度的概率分别33.33%和50%,看到这里,你就发现概率很大了对不对。
这里我直接甩计算结果了,
假如一个御魂可以强化3次速度,强化2次只加一次速度的概率是27.8%,再强化一次加到速度的概率是50%,这个概率是不是跟上面的某种情况很相似啊
假设一个御魂可以强化4次速度,强化2次只加一次速度的概率是50%,再强化一次加到速度的概率是100%,这种情况极其罕见!因为头两次都加到速度的概率也是50%!
也就是说,+6只加一次速度,+9的任意一种情况都很常见,假如你因为+9又加了一次速度就上15,付出的成本和风险是不成正比的!
那么这里结论来了!
第一个结论,也是 @氪金氪金氪 的结论,是给追求速度强化三次或者以上的dalao们,你们的目标是,对于一个天生 3个 3个或者4个副属性带速度的御魂,直接+6,没有遇到两次加速度的,直接放弃。
第二个结论,是我的结论,是写给没有得到六星二号位速度的萌新的,
前期,只强化副属性3条带速度的御魂,只强化到+6,就不用再强化了,速度加两次的锁上等有资金直接上15。这样配上2号位速度的散件山兔可以到达115+36+4*5=171,这就是标准的入门级山兔的速度
中期,是指你能稳定farm困难十六为标准,刷一套171速度的招财猫,这样的御魂,非常有用,因为魂十拉条太快会被插队!!!拉条保持168-171是最稳定的不会被插队的,而且保证所有DPS和山兔都是同步的,也就是自己的式神不会被山兔套圈。
后期,是指你的主力输出到达六星,是的,刷困难十六不需要六星就可以做到,这个时候,你就用结论1的方法堆一个极速的散件镰鼬吧。
为什么这么说?你萌新拉条堆那么高速打斗技就为了那点勾玉?你下个副本山兔那么快就是为了套自己DPS的圈然后丢两个环?那个钱拿去赌商店135号位的收益要大得多,你的辅助御魂15了吗?你的主力六星了吗?
为什么说茨木后期疲软就是因为茨木害怕的不是高速拉条而是高星级满御魂的辅助!!!
一只168的山兔足够你刷通全游戏的PVE,稳定farm魂十,只有稳定farm魂十才有机会拿到六星高速的御魂。肉的山兔和座敷和高DPS的输出才是魂十稳定的保证。