星际争霸吧 关注:278,064贴子:3,815,722

[讨论]神族被“破盾一击”时的伤害计算

只看楼主收藏回复

“破盾一击”是指神族的护盾值比较低,对方一次攻击就能同时伤害护盾和生命本体。按通行的说明,似乎是分三步计算:
1、伤害先减去“护盾的护甲”和“护盾值”;2、伤害再减去生命本体护甲值;3、伤害再计算百分比关系(比如爆炸攻击对小型单位50%伤害)


IP属地:江苏1楼2018-08-19 19:48回复
    但是实测,在50%的伤害关系下,似乎有1点伤害的偏差,不知何故,如下:
    龙骑20攻击 打2防2盾叉兵,剩8点盾后,破盾一击伤血3点,如果按(20-2-8-2)/2应该是4,
    龙骑20 打4防2盾叉兵,剩8点盾后,破盾一击伤血2点,如果按(20-2-8-4)/2应该是3,
    龙骑20 打4防3盾叉兵,剩11点盾后,破盾一击居然完全不伤血,如果按(20-3-11-4-11)/2应该是1,
    龙骑20 打2防0盾叉兵,剩2点盾后,破盾一击伤血7点,如果按(20-0-2-2)/2应该是8,
    坦克30 打2防0盾叉兵,剩2点盾后,破盾一击伤血12点,如果按(30-0-2-2)/2应该是13,
    坦克30 打2防2盾叉兵,剩6点盾后,破盾一击伤血9点,如果按(30-2-6-2)/2应该是10,


    IP属地:江苏2楼2018-08-19 19:49
    收起回复
      支持技术帖


      IP属地:重庆3楼2018-08-19 20:03
      回复
        我测试了下 这个是护盾不为0且是在回复过程中就会发生 不只是50%伤害的 我用鬼兵打XX也出现了这个情况
        我是用地图编辑器把XX初始防御改成0 用科学球震荡XX 然后等回复到2盾的时候打他 用龙骑打他他从100血变成92 然后又等2盾再打 变成83 而如果是用鬼兵(10点攻击力)这样打他 第一下是从100血变成93 第二下变成85
        就这么个情况 至于什么原因我也没头绪


        IP属地:上海4楼2018-08-20 00:15
        回复(4)
          星际的计算精确到0.5


          IP属地:北京来自Android客户端5楼2018-08-20 10:23
          收起回复


            IP属地:四川来自Android客户端6楼2018-08-20 10:37
            回复
              这贴真是清流


              IP属地:广东来自iPhone客户端7楼2018-08-20 10:44
              回复
                厉害了


                8楼2018-08-20 11:20
                回复
                  真是好贴啊,帮楼主顶顶。
                  理论上知道,但问一下楼主能否有什么办法将其用于实战?


                  9楼2018-08-20 14:11
                  收起回复
                    实际的血量和和显示的血量本来就有误差。比如,显示为10点血,实际的血量为9.01~9.99。护盾也是一样。伤害是用实际血量来计算的,你用显示的血量来判断,肯定有误差。


                    IP属地:上海10楼2018-08-20 20:30
                    收起回复
                      继续做测试,这次选取实际对战中最常见的雷车vs农民。
                      测试单位数据:
                      雷车一辆(1攻):攻击20+2=22;

                      神族农民(Probe)一个(0盾1防):护盾防御0,护盾值20;本体防御0+1=1,本体生命值20


                      IP属地:江苏11楼2018-08-21 19:11
                      回复
                        雷车先开一炮,按理论公式:攻击22,护盾吸收伤害20,本体护甲防御再减1,因此最终伤害为22-20-1=1。
                        实验农民剩余血量19,与理论相符:


                        IP属地:江苏12楼2018-08-21 19:14
                        回复
                          按S键,让雷车暂停攻击一小会,等农民回复到2盾的时候,再开炮。
                          【注意,已经下调到最慢速度反复测试,不存在被打的瞬间回复到3盾的疏漏情况,水友可以一起帮忙测试。】

                          按理论公式,【这次雷车的攻击还是22,减去护盾2,再减去护甲1,伤害为22-2-1=19,正好与农民的剩余生命值相等,农民应该挂掉】。
                          但实验结果却是,农民剩余1滴血,活了下来!


                          IP属地:江苏13楼2018-08-21 19:18
                          回复(6)
                            再顶顶顶


                            IP属地:四川来自Android客户端14楼2018-08-21 19:19
                            回复
                              误差的根源就在护盾的显示上。比如,叉叉的盾显示为8,你认为是8,其实,护盾的实际值在范围8.01~8.99之间。这多出来的小数部分,就等于多抗了1点血。


                              IP属地:上海15楼2018-08-21 20:43
                              回复(14)