|
首先需要说明的是,亡者之夜II的怪物并没有自定义的AI,也就是说J里面并没有特别对怪物设定单独的AI,所以所有怪物的攻击判定是按照魔兽默认的攻击顺序来进行的。
魔兽默认的攻击顺序优先级:
1、打正在攻击自己的单位
2、打离自己最近的单位
3、打血最少的单位
这是亡者里怪物攻击的最基本原则。
其次,我需要先列举一些WE设置里的一些项目的说明。
主动攻击范围 : 单位会对该范围内的敌人进行主动攻击. 另该值还起到限制射程的作用,单位射程不会大于其主动攻击范围.同时也影响到一些自动选取目标技能的施法距离,例如:召唤骷髅.
最小攻击范围 : 单位无法对小于该值的范围内的敌人进行主动攻击.
攻击 - 攻击范围 : 相当于射程,当如果主动攻击范围小于该值,则会取主动攻击范围作为射程.
攻击 - 攻击范围缓冲 : 近战单位攻击移动中的单位,因为发动攻击需要时间,目标可能跑出了射程以外,该值表示允许的缓冲范围值,只要目标没跑出该范围(射程+缓冲范围)则仍会受到伤害.
所谓怪物的视野是一个不确切的描述,因为视野是为玩家准备的,以便你能“真正的看见”地图上的东西。正确的描述就是主动攻击范围。除了追踪者和嗜血猎食者的主动攻击范围为4000外,其他的所有怪物的主动攻击范围为19999。而所有的怪物的最小攻击范围为0。
所以,亡2里所有怪物的攻击判定都一目了然了。19999的范围几乎是全地图了。当刷波时,怪物被放置到地图上以后,根据主动攻击范围的设置,加上魔兽默认的攻击顺序,怪物先找攻击自己的单位,没有就找离自己最近的单位,最后找血少的单位。
由于除侦查和外出埋包的火兵以外,所有玩家对于怪的相对位置基本一样,且侦查离大队伍的距离相对于怪物离队伍的距离有时候可以忽略不计,所以怪物会直接奔向大队伍。而通常指挥会要求队伍里某个人不读军衔而保持低血量,以保证在外侦查的安全,实际是在一个相对距离的情况下,怪物根据判定1和2,通常会直接找队伍而不去找侦查,且在3的判定下,侦查相对血量高而被攻击的概率小。
这就能解释一个问题,假设侦查在跑到4点方向高地旁的小路时刷波,上下两个路口都出怪,通常是去找侦查,而侦查在没有火力掩护的情况下通常必死的原因。因为在此时怪物离侦查的距离比离队伍的距离小,所以就算队伍存在血量少的情况,怪物也只会直接找侦查而不攻击队伍。
同时也说明一个问题,为什么刷鸟时侦查一般需要归队,因为鸟是直线飞向目标,所以此时存在侦查的位置在鸟和队伍之间的情况,此时侦查只能成为鸟的食物。
再说说追踪狗。由于4000的主动攻击范围设置,所以在队伍超出其攻击范围时,它不会一出来就直奔大队伍,此时表现出来的就是在地图上随机的游走(根据J中的设定,每20秒在地图上随机选择一个点并执行攻击的命令,相当于对战中的A过去)。当落单的侦查或者大队伍出现在4000攻击范围内时,追踪狗就会直奔目标。当然,4000的范围超过了1800的视野范围,所以给人一种追踪狗会直奔落单的侦查的错觉。
以下蓝色部分不具有理论支持,仅为猜想:
为什么在攻击判定下,被攻击的怪物行进中被单位挡住时会破坏原有的判定攻击被挡住的单位呢?可能是被阻挡的时候攻击判定会进行重新设定,此时优先攻击离的近的单位。这个有条件的话可以在对战中进行如下设定。玩家A控制近战单位1,用A键攻击某一点。玩家B控制远程单位2攻击单位1,此时根据攻击判定单位1应该会去攻击单位2,但是此时玩家B用单位3手动控制用走Z字挡住单位1的行进路线,若单位1放弃攻击单位2改为攻击单位3,则说明我的假设是正确的。
热狗的帖子里提到没子弹还能拉BOSS的问题。根据JASS里的设置,当你子弹数为0时单位的命令为:
1、 停顿0.1秒。
2、 执行攻击命令。
3、 执行换弹命令。
要注意的是,这个攻击命令并不是说真的进行攻击,而是发起这个指令,但由于子弹数为0,并不能正常的执行出攻击兵伤害的命令。但是还在攻击是事实,这也是为什么重用A键前进时没子弹在换弹时不会放弃攻击继续前进而是呆在原地的原因。至于这样能不能拉到怪,让有心人去验证吧。
其实亡者里并没有AI设定,所有的数据都在上面罗列出来了,就这么简单,至于游戏里出现的各种情况,请自行推理。
最后说个题外话。
为什么亡者II里没有出现怪物的攻击miss?
僵尸攻击范围为100,攻击范围缓冲为200,动画伤害点及动画回复点为0.3秒。也就是说,在僵尸发起攻击后,你要在0.3秒内跑出100的范围才能出现miss,也就是说你的速度需要达到333以上才行,所有兵种的基本速度不超过200,加上ZT加上勋章、军衔的奖励,最高也只能达到375,算上每个人的反应时间,要在僵尸作出攻击动作后跑出100范围让僵尸出现攻击miss的可能性几乎为0。胖子的攻击范围和攻击范围缓冲都为200,那么也许能出现miss,这点待验证。关键是你能在胖子出现攻击动作的0.5秒内作出反应开始跑吗?
[ 本帖最后由 YC 于 2009-7-26 18:49 编辑 ] |
|