欢迎光临散文网 会员登陆 & 注册

【bug分析】为什么军械库的支援词条会给弩炮加攻?

2020-06-10 18:20 作者:等--等灯等灯  | 我要投稿

2020年6月10日危机合约轮换图开启的军械库东中

出现了支援的加攻词条会给弩炮加攻的情况

被致命弩炮,协同战术军械词条加攻后达到1400攻击力的弩炮

然而,同样原理的高价值目标的降攻词条不会给弩炮降攻
所以来分析下原因

首先,很多人说的“弩炮是我方单位”是绝对不对的
从拆包结果来看,弩炮属于敌方阵营单位。即使单从逻辑分析,因阵营筛选产生的bug也绝不应该在两个原理相同的词条(支援军械和高价值目标)下表现出不同的情况。

弩炮的拆包,sideType=2代表其属于敌方阵营(因此不会使小刻清道夫天赋失效)


那么原因是什么呢?

危机合约的词条中筛选的“敌方”“我方”并非指阵营,而是指实体类型
比较直观的说,就是能够放置,不会运动的属于character类型(下有派生类token,trap等);而拥有路径,会向目标点移动的属于enemy类型。
弩炮,冰晶等虽然属于敌方阵营,但却是character类型实体。所以可以成为对character类型词条的作用对象
词条的对象是词条的第一道筛选。可以依照词条的不同作用于,character类实体,enemy类实体,关卡选项,关卡数据,地图。

第二道筛选来自词条的selector,可以筛选职业,部署位,实体,技能,地砖id等。
所以来看看今天两个词条的selector

支援词条的selector,注意professionMask
降攻词条的selector,注意professionMask

可以很明显地看到两个词条在professionMask筛选上的不同

professionMask指的是职业筛选,是一种二进制掩码
每一位代表一个职业,一共10位。从1到10位依次对应:WARRIOR(近卫),SNIPER(狙击),TANK(重装),MEDIC(医疗),SUPPORT(辅助),CASTER(术师),SPECIAL(特种),TOKEN(召唤物),TRAP(机关),PIONEER(先锋)

筛选的时候会将professionMask与筛选目标的职业取AND逻辑,看看结果是不是等于筛选目标的职业

767=1023-256

其中第9位(即256)代表TRAP

很明显,军械库的降攻词条相对于加攻词条去掉了对于TRAP职业的筛选
而弩炮,冰晶等地图机关通通属于TRAP职业

bug的原因已经很明显了,即军械库东支援词条没有去掉对于地图机关职业的筛选

为什么会这样呢
翻看别的地图词条,可以发现降攻词条的职业筛选全是1023(即全部)

6月9日开放的59区的降攻词条

也就是说,大概鹰角在测试军械库地图后,发现了弩炮会被降攻词条降攻的问题,于是给军械库的降攻词条专门做了一定的调整,使其能够不影响弩炮。
然而很明显,他们忘了调(估计也没有测试)支援词条......


本文原载于NGA:https://bbs.nga.cn/read.php?tid=22116275

作者为本人

本文以CC BY-NC-SA 4.0协议发布

【bug分析】为什么军械库的支援词条会给弩炮加攻?的评论 (共 条)

分享到微博请遵守国家法律