塞尔达传说吧 关注:438,558贴子:3,604,280
  • 17回复贴,共1

王国之泪伤害精确计算

只看楼主收藏回复

在之前的帖子研究对物体的破坏时顺便(不得已)研究了一下伤害的计算攻击类型与物体破坏 。很多人计算伤害时就是一顿连乘,这样误差很大的。因为旷野之息和王国之泪的伤害是按特定顺序计算,每计算一步要先对结果进行舍入然后才计算下一步。王国之泪里多了个攻击力补正,双手剑1.05,枪0.75,产生了很多问题:这攻击补正要在何时计算,攻击力BUFF是否真的是加攻击力,要计算之后再进行攻击补正,还是就是个加伤要在之后计算。本帖将用游戏里实际测出的伤害数据对这些问题进行探究,找到正确的伤害计算方式。


IP属地:重庆来自Android客户端1楼2023-06-21 12:34回复
    王国之泪里目前没有怪物血量显示,但能够投掷材料一次只造成1点伤害。所以本帖将用攻击已知血量的怪物后砸苹果测剩余血量的方法来反推伤害。
    例子:蓝色波克布林72点生命值,无加成下用攻击力为10的单手剑攻击8次击杀,攻击7次后,砸两次苹果击杀。所以此单手剑一次攻击的伤害为(72-2)/7=10
    除了测试伤害过高外,本帖指定测试员为这只蓝色波克布林,72点生命值在入职时已通过砸苹果验证。测试完会回档,没有任何怪物受到伤害。


    IP属地:重庆2楼2023-06-21 12:35
    收起回复

      从测试数据可以看到攻击补正确实存在,且对双手剑是向上取整。接下来会用各种方式计算伤害,对比是否符合实测伤害,以找出正确的伤害计算方式。

      一顿连乘的算法第一个被淘汰,7.875再怎么舍入也到不了9,肯定在中间就进行了舍入,然后被后续计算放大。
      通过实测数据已经得出双手剑攻击补正计算结果是向上取整了,而根据攻击加成计算结果是向上还是向下取整,攻击补正和攻击加成计算的先后,列出了4种算法。
      在3级攻击力BUFF1.5倍加成下,算法2和算法3被淘汰。3级攻击力1.5倍加成算出的第一位小数不是0就是5,所以其它两种算法未分出胜负。而在2级攻击力BUFF1.3倍加成下算法1终于露出破绽而惜败,算法4获得最终胜利。
      所以攻击加成就跟其他加伤一样要在攻击补正后计算,计算结果向下取整。


      IP属地:重庆3楼2023-06-21 12:37
      回复
        双手剑攻击补正向上取整,枪的攻击补正就一定是向上取整吗?卓拉系列,格鲁德系列这种将改变攻击力面板的加成又改如何计算?

        这是被水粘湿下的卓拉枪伤害数据。在双手剑那里已验证正确性的“面板*补正向下取整*攻击加成向下取整”算法在未进行余料建造的第一组数据出了问题,竟然和得上无脑连乘的结果。当然不可能只有未余料建造时采用无脑连乘算法,将枪的攻击补正计算结果向下取整后计算结果就完全符合实测数据了。


        IP属地:重庆4楼2023-06-21 12:38
        回复
          所以有直接改变了面板攻击力的加成直接按变化后的面板计算攻击力补正,双手剑乘1.05向上取整,枪乘0.75向下取整。
          真的是这样吗?根据解包数据,武器有ShowAttack和BaseAttack,即面板攻击力和实际攻击力两个数据,实际攻击力大体是面板攻击力乘攻击补正。然而有2个数据例外:近卫双手剑✨,面板攻击力39,实际攻击力42;多节粗棒,面板攻击力19,基础攻击力21
          这两把双手剑的实际攻击力比计算1.05倍攻击补正后向上取整还多1,实际测试伤害确实多了1,加上攻击力为1的余料后伤害仍比计算结果多1,再加大攻击力才恢复正常。而把其它双手剑通过余料建造调整到对应的攻击力,伤害却是正常的。
          我暂时不能解释这种现象,攻击补正也只有按现有结论计算。


          IP属地:重庆5楼2023-06-21 12:40
          收起回复
            喜欢lz这种一丝不苟的探索态度


            IP属地:陕西来自手机贴吧6楼2023-06-21 14:29
            回复
              好贴


              IP属地:北京来自Android客户端8楼2023-06-21 14:54
              回复
                攻击补正我测的数据都是符合规律的,面板攻击力都可以直接拿来算,只有那两把双手剑特殊。
                先无视,有时间可能会测一下各种加成的计算顺序。
                有两种推测,一种是加成高的先算,一种是和旷野之息一样,先算骨套增伤这种常驻增伤,然后算攻击BUFF, 再算爆头这种条件增伤,最后算粉碎效果对岩石巨人1.5倍还有吉波得未脆化后的减伤这种攻击类型增伤和最终伤害修正。武器损坏应该是最终伤害乘2,本该是绑定武器碎裂特效的不知王国之泪抽了什么风改成了1耐久就能触发,还有据说投掷武器还会把攻击BUFF计算两次,回旋镖加上本身的投掷1.5倍伤害平白又多了一个乘区恐成最大赢家,实际如何有待测试


                IP属地:重庆来自Android客户端9楼2023-06-21 15:48
                收起回复
                  好帖


                  IP属地:北京来自Android客户端10楼2023-06-21 16:00
                  回复
                    这个游戏已经那啥了,大佬不能直接解包看代码里的伤害计算公式吗


                    IP属地:湖北11楼2023-06-21 16:06
                    回复
                      cy


                      IP属地:江苏来自Android客户端12楼2023-06-22 07:32
                      回复