ra3日冕mod吧 关注:255贴子:415
  • 22回复贴,共1

发个不知道有没有人发过的bug如下图,最左侧的波塞冬只有尾部

只看楼主收藏回复

发个不知道有没有人发过的bug
如下图,最左侧的波塞冬只有尾部有密集阵近防炮,中间的波塞冬只有俩主炮,右侧的波塞冬有全部武器。
好像是被超时空传送的波塞冬有概率丢失副武器。


IP属地:河南来自Android客户端1楼2022-08-23 21:39回复
    大概是传送不同步


    IP属地:湖北来自Android客户端2楼2022-08-23 22:08
    收起回复
      花了点时间看了一下,先解释一下bug原因,再给出个修复方案
      首先,bug 重现(用的是我自己的技术验证代码,有点丑勿喷


      IP属地:浙江3楼2022-08-24 01:30
      回复
        分析:通过技能释放图标可以知道子炮台会受到超时空传送影响(如下图),且在传送后听到了标枪兵(这里用作子炮台)的死亡语音,因此可以推测是因为子炮台(标枪兵)属性中有INFANTRY(步兵),因而受到超时空传送秒杀步兵机制的影响。因此,修改超时空传送的相应机制可能可以避免子炮台受到该机制影响


        IP属地:浙江4楼2022-08-24 01:35
        回复
          修复方案:查看超时空传送的源代码,看到步兵秒杀机制如下

          在这里我们发现了一个对象过滤器(ObjectFilter),因此我们只需要一个状态来区分正常步兵和子炮台即可。而恰巧,这个状态存在甚至可以自定义。

          因此,只需要在超时空传送的代码中排除带有该状态的步兵即可。修改后代码如下:


          IP属地:浙江5楼2022-08-24 01:45
          回复
            修复后的结果
            技能释放

            技能释放完成

            可以看到所有的子炮台(标枪兵)都在,且没有受到影响


            IP属地:浙江6楼2022-08-24 01:47
            收起回复
              光荣子炮台被超时空秒杀



              IP属地:浙江7楼2022-09-26 00:54
              回复
                xdm赶快把这帖顶上去,刑部也就知道的多一点


                IP属地:安徽来自Android客户端8楼2023-01-03 12:53
                回复