魔塔吧 关注:65,672贴子:2,167,777
  • 13回复贴,共1

请教一个【永不复还】伤害计算的问题

只看楼主收藏回复

事情是这样的 今天我遇到AB两种情况
A.4回合盾击,某怪(小恶魔)对我的伤害是7731
B.5回合盾击,某怪(小恶魔)对我的伤害是7666
我觉得奇怪的点在于
照理来讲应该只有一种情况才对.(A和B都是盾击回合没有触发相位先锋加防加闪避)
为何会出现伤害不同这种情况呢。



说明一下AB两种情况我的装备和能力都没有进行过任何改变
我的等级是蓝玉职业者
血量是16363/30810.回血速率是+30/t
攻1999.防1376.攻速210%.护甲19(-53.3%减伤).
装备着相位先锋
技能就相位先锋加防加闪避前3回合。
然后敌人是小恶魔
技能就只有[野兽直觉]:每回合被攻击会发起一次必中的反击。
希望有人能帮我解答一下为何会出现两种情况(B情况)


IP属地:上海1楼2020-12-02 23:21回复
    不知道,盲猜是相位闪避持续是2-4回合,或者是由于第四回合炖鸡自己没有攻击所以没有被反击,所以伤害高了点


    IP属地:北京来自Android客户端2楼2020-12-02 23:46
    回复
      你可以算一下看看伤害怎么来的可能就知道了


      IP属地:江苏来自Android客户端3楼2020-12-03 00:18
      回复
        攻速1.45,所以第五回合会进行两次攻击,触发两次反击,第四回合只会进行一次,应该是这个原因


        4楼2020-12-03 08:59
        收起回复
          猜测是你第五回合可以闪避一次攻击但正好是被必中攻击打中了白丢失这一次闪避机会


          IP属地:浙江来自Android客户端5楼2020-12-03 10:29
          回复
            攻速和闪避直接按数学期望计算了,不存在某个回合刚好闪避或多A一下的情况。


            IP属地:福建6楼2020-12-03 12:59
            回复
              第四回合的一次反击打在了第三回合的先锋盾附魔上,这是从数值上比较合理的解释,代码怎么搞成这样的我还没看懂


              IP属地:上海8楼2020-12-06 03:12
              回复
                给我的思路吧,第一种情况应该是3攻击➕盾击➕攻击➕攻击,吃了五次反击,第二种4攻击➕盾击➕攻击,吃了四次反击


                IP属地:浙江来自Android客户端9楼2020-12-06 10:34
                回复
                  if @mequip.include?(21) #相位鞋
                  #持续3回合的增益buff,第五个参数确定是否为增益状态
                  #主要针对在怪物回合数防御的要+1
                  @mdebuff.push([3+1,1,24,0,true])
                  @mmiss*=0.76
                  end
                  if @mequip.include?(33) #先锋盾(巨岩)
                  @mdebuff.push([3+1,2,24,0,true])
                  @md*=1.1
                  end
                  if @mequip.include?(42) && $game_variables[181][42]==-1 #勇气勋章
                  @mdebuff.push([5+1,3,24,@rtarget,true])
                  @oldmshield-=7
                  @mshield=@actor.rshield(@oldmshield)
                  @oldeshield[@rtarget]-=7
                  @eshield[@rtarget]=@actor.rshield(@oldeshield[@rtarget])
                  end
                  还有
                  when 123 #幽魂形态
                  return true if @mbkb>0
                  @mdebuff.push([4+1,4,24,0,true])
                  @mcanattack=1 if @mcanattack<1 #无法攻击
                  for q in 0...@elist.size
                  @ecanattack[q]=1 if @ecanattack[q]<1 #迫使敌人无法攻击(无视魔免)
                  end
                  @mskilldef*=2 #受魔法伤害加倍
                  @mturn+=1
                  return my_skill if @mturn<@mfight.size
                  这几件装备的效果的回合数都+1了
                  而实际效果是在+1回合的攻回合保留,防回合消失
                  猜测反击伤害产生于攻回合,计算的是攻回合的属性,但是我还没理清这个代码
                  数值上倒是说得通,盾击使得该回合少吃一次反击
                  (野兽直觉和反击是两个技能,野兽直觉每回合最多反击一次,反击才是按玩家攻速反击)
                  5回合盾击就是4回合吃反击
                  巨岩附魔减少的伤害就是1376*0.1*(1-53.3%)=64.2592
                  和你图上的7731-7666=65差不多,差零点几应该是游戏里的整数有近似
                  4回合盾击就是5回合吃反击,没有巨岩附魔的收益
                  应该是玩家先攻导致的回合数计算问题,不知道有没有懂的再深入解释一下


                  IP属地:上海10楼2020-12-06 14:54
                  回复