我承认我非常蛋疼...一开始并没有决定做这个,但是一旦开始考虑以后发现这是一个挺有意思的数学问题,所以花了一晚上的时间推导了公式(我的大学概率论老师要知道了肯定泪流满面),然后编写了程序,作图,分析。
这里讨论的内容是任意单发暴击武器vs任意怪物血量的效果。数学理论部分就不写了,光要把公式和算法全都写清楚估计又要花掉一晚上的时间..而且我想写了也没人看,所以直接给结果。

关于这张表怎么看,直接给一个例子解释就会觉得很简单。首现说明这里给的都是满暴击下的结果(即80%几率出5倍伤害)。假设我们选择vss和蜘蛛,先上wiki查出vss单发非暴击伤害值(17),然后查出蜘蛛血量(300),计算两者的比值300/17=17.64,17.64满足大于17小于等于18,属于区间(17 18],那就在表格里找到这一行,得到结果为:40.96%几率4枪,32.77%几率5枪,24.58%几率6枪,1.23%几率7枪,0.34%几率8枪,0.09%几率9枪,0.03%几率10枪(所以如果你要是真遇到7枪以上才打爆那恭喜你你中奖了),最后两列给出的是加权平均值和标准差,至此得出预期4.876枪解决战斗。关于标准差,可以当成是武器稳定性的考量(标准差大说明数据离散,即你用较少枪数和较多枪数解决战斗的可能性都很大)。
这个表里的给出的攻击次数期望值要比直接用怪物血量除以4.2倍基本伤害得出的数据更准确,因为我在推导公式时考虑了所有可能发生的情况,即包括无伤害溢出和有任何伤害溢出的结果。当然我不敢打包票说我的计算100%肯定是正确的,不过我验算了完整版表格每一行的几率总和,得出全部为100%(完整版表格同时包括了攻击次数17-40的概率分部,但是表里的数据说明在怪物血量不大于40倍基本攻击的情况下,超过16下再解决战斗的情况可以说已经完全不可能发生了,所以这里全省略)。另外我用穷举法笔算了区间(0,6]的的所有概率分部,得出结果与程序结果相同,因此我对这张表的正确性还是有自信的。
数字密密麻麻的看起来很累,所以我做了一张图更直观一点

这个图基本上和上面那个表是一模一样的,唯一的区别是这里用颜色区分不同格子的概率值,颜色越亮说明概率越高(白色100%,黑色0%)。绿色的线即为上表中每一行最后的平均值的位置(读横坐标的时候注意一下是取连续坐标的取值而不是格子)。如果上面那个表能看懂那么这张图应该完全没问题。NOA我把它作为number of attacks缩写,即攻击次数;DPH为damage per hit,即单发伤害。从这张图很直观可以看到,攻击越弱的武器发挥越不稳定,概率分布越往下越发散,从而导致了期望值进一步增加。
最后来张有意思的,这张图标注了所有狙击步枪(1秒1发的步枪)vs触手妹所处的位置,武器前面方括号是技能需求,后面圆括号里标的分别是弹夹大小和弹药种类,所有信息一目了然。

这里讨论的内容是任意单发暴击武器vs任意怪物血量的效果。数学理论部分就不写了,光要把公式和算法全都写清楚估计又要花掉一晚上的时间..而且我想写了也没人看,所以直接给结果。

关于这张表怎么看,直接给一个例子解释就会觉得很简单。首现说明这里给的都是满暴击下的结果(即80%几率出5倍伤害)。假设我们选择vss和蜘蛛,先上wiki查出vss单发非暴击伤害值(17),然后查出蜘蛛血量(300),计算两者的比值300/17=17.64,17.64满足大于17小于等于18,属于区间(17 18],那就在表格里找到这一行,得到结果为:40.96%几率4枪,32.77%几率5枪,24.58%几率6枪,1.23%几率7枪,0.34%几率8枪,0.09%几率9枪,0.03%几率10枪(所以如果你要是真遇到7枪以上才打爆那恭喜你你中奖了),最后两列给出的是加权平均值和标准差,至此得出预期4.876枪解决战斗。关于标准差,可以当成是武器稳定性的考量(标准差大说明数据离散,即你用较少枪数和较多枪数解决战斗的可能性都很大)。
这个表里的给出的攻击次数期望值要比直接用怪物血量除以4.2倍基本伤害得出的数据更准确,因为我在推导公式时考虑了所有可能发生的情况,即包括无伤害溢出和有任何伤害溢出的结果。当然我不敢打包票说我的计算100%肯定是正确的,不过我验算了完整版表格每一行的几率总和,得出全部为100%(完整版表格同时包括了攻击次数17-40的概率分部,但是表里的数据说明在怪物血量不大于40倍基本攻击的情况下,超过16下再解决战斗的情况可以说已经完全不可能发生了,所以这里全省略)。另外我用穷举法笔算了区间(0,6]的的所有概率分部,得出结果与程序结果相同,因此我对这张表的正确性还是有自信的。
数字密密麻麻的看起来很累,所以我做了一张图更直观一点

这个图基本上和上面那个表是一模一样的,唯一的区别是这里用颜色区分不同格子的概率值,颜色越亮说明概率越高(白色100%,黑色0%)。绿色的线即为上表中每一行最后的平均值的位置(读横坐标的时候注意一下是取连续坐标的取值而不是格子)。如果上面那个表能看懂那么这张图应该完全没问题。NOA我把它作为number of attacks缩写,即攻击次数;DPH为damage per hit,即单发伤害。从这张图很直观可以看到,攻击越弱的武器发挥越不稳定,概率分布越往下越发散,从而导致了期望值进一步增加。
最后来张有意思的,这张图标注了所有狙击步枪(1秒1发的步枪)vs触手妹所处的位置,武器前面方括号是技能需求,后面圆括号里标的分别是弹夹大小和弹药种类,所有信息一目了然。

