《星际战甲》夜灵兆力使伤害机制详解
星际战甲是目前全球非常火爆的刷刷游戏,游戏采用以战甲代替职业的设定,玩家选择不同的战甲,每个战甲的攻击方式和技能都不同。吸引了大批玩家前来游玩,很多玩家想知道星际战甲夜灵兆力使伤害机制怎么样的,下面就一起来看看夜灵兆力使伤害机制攻略。
《星际战甲》夜灵兆力使伤害机制详解
对于兆力使伤害机制,我之前一度以经验公式约75%总体减伤来计算,在做RivenMirror的过程中,使用该算法发现数据与实际偏差较大。查阅资料后发现又有非暴击减伤这个现象的存在。于是决定深入研究一下兆力使的伤害机制。
经过长达3天数十个晚上的测试之后,基本摸清了目前兆力使伤害的机制,谨以此文分享一下此类测试的基本步骤。
黑盒测试
首先采集样本,一开始的思路是使用兰卡,因为纯元素伤害的关系,计算简便,并且实际测试中不会受射速等额外影响,同时搭配龙甲和开镜连击可进一次门就获取8组以上的数据,测试相对高效简便。
第一次测试获取的数据如下:
首先研究非暴击伤害
可以看到前几组的数据基本是呈线性变化的,而在之后又似乎有一个未知因素在阻止伤害的线性增长。
将伤害从高到低排序,并与计算的理论伤害并排排放之后,可以发现在理论伤害的300伤害以下时,实际伤害随理论伤害等比例增长,比例系数为0.4,可以猜想boss存在一个全局60%减伤,并且在理论伤害超过300之后呈现出非线性的趋势。
于是提出新的猜想,将理论高于300的数值减去300之后与实际伤害减去300之后的数值比较。结果发现此时两者之间又是等比增长关系,比例系数为0.1。
至此我们可以得出非暴击伤害的基本计算公式如下:
非暴击伤害 = 理论伤害 × 0.4 (理论伤害 ≤ 300)
非暴击伤害 = [(理论伤害 - 300) × 0.1 + 300] × 0.4 (理论伤害 > 300)
向暴击伤害推广
现在我们得到了非暴击伤害的公式,那么暴击的情况呢?
将暴击时的理论伤害代入后得到以下表格,
发现似乎又变成了毫无规律的情况,经过多次尝试,将理论暴击伤害再乘2之后,又得到了下表,看来这回是正确了。
那么暴击情况下的公式即为:
暴击伤害 = 理论伤害 × 2 × 0.4 (理论伤害 × 2 ≤ 300)
暴击伤害 = [(理论伤害 × 2 - 300) × 0.1 + 300] × 0.4 (理论伤害 × 2 > 300)
继续推广
这回测试了伊格尼斯亡魂(代表了无多重射线类武器),斯特拉迪瓦(代表了全自动和半自动步枪),楞次弓(代表了大范围AOE武器和弓箭),恐惧(代表了普通弓箭),猛虎Prime(代表了霰弹枪),雷克斯双枪Prime(代表了手枪单发武器),食人鱼Prime(代表了手枪霰弹),原子矿融炮(代表了手枪射线), 轻灵月神双枪(代表了手枪速射武器)。
发现在上了射速mod之后,可见很明显的伤害下降,同时在喷火器的测试中,发现多重收益也不如预期,结论是之前的公式还需要完善,因为有了之前的经验,这里将之前超过后开始减伤的理论伤害大小叫做阈值,之前的阈值是300(大概跟护甲减伤公式中的300有关吧),猜测这个阈值会根据射速和多重来改变。
拟以下公式:
非狙击枪伤害阈值 = 300 ÷ 射速 ÷ 多重倍率
其中多重倍率只存在于喷火器这种不会增加实际弹片数量的武器中,这个数字只可能是整数,如果只使用分裂膛室,则这个数字有90%的几率为2,10%的几率为1。
带入实际数据验算(如下),发现基本符合规律,误差基本在2%之内,可以认为是游戏计算时与理论存在精度差异。
至此兆力使伤害的机制基本摸清了。接下来是总结。
总结
非暴击减伤确实存在吗?
存在。
因为这种特殊算法,在伤害趋近无限大时,非暴击伤害有总体1 - 0.4 × 0.1 = 96%的减伤率,而暴击伤害有总体1 - 0.4 × 0.1 × 2 = 92%的减伤率。虽然以目前的伤害大小,这个减伤率是远远达不到的,但客观上非暴击伤害乘暴击倍率确实会比暴击伤害要少不超过50%的伤害(在正常伤害的情况下在40%左右)。
这种机制带来了什么?
同时由于射速对阈值的影响,部分高射速低伤害的武器也是不存在打关节的可能性,要打关节只能依靠高DPS的武器。
由于此减伤是以每个弹头来进行计算的,因此自带多弹片的武器在打BOSS时也有一定优势。
应用
在裂罅之镜的武器配装功能中已经内置了这种特殊算法,在幻影装置中选择Orokin敌人的兆力使骨液即可正确的模拟伤害,如下图:
拓展
实际上新版的免疫血胞体和遗迹Lephantis的伤害模式也类似,但其阈值较低且不受射速影响,规避方法与夜灵不同,请期待下一篇机制研究文章。