|
|
这本身就是个overkill概念..是玩家操作的结果..(既攻击动作产生后不可取消) 很多RPG里也有这样的概念...
说到超杀管理..我笑了....对于不清楚血量的敌人攻击..你还要AI帮你管理??难道AI还要计算自己的攻击力,敌人的防御力,敌人剩余的血量来分配吗???你们当程序员都没事做了??
程序结构就那么简单...攻击命令出现..攻击目标存在且在攻击范围内(即可攻击状态..目标无敌有两中分歧..一种属于不可攻击..一种属于可攻击但无效状态..) 则进行攻击指令..
攻击有单位攻击的频率(1秒攻击1次还是2秒攻击1次)..从攻击开始到作用到目标需要的时间(不需要时间(往往指不考虑距离因素)还是需要时间作用(距离(一般指飞行武器速度例如导弹..)..单位本身的攻击指令启动后到达有效输出攻击的时间(抬斧子..砍下...的前大半段,有些做的再好些的会到斧子举到顶上再次判断目标是否存在..就是所谓的二次判断逻辑,更加强调了攻击启动时间以及中期的攻击取消))由于这部分才导致大部分玩家以为哪些游戏存在这超杀管理...(程序员们都吃饱了??)
事实是逻辑很简单..符合攻击条件的单位会开始攻击(分为启动后可取消以及启动后不可取消两种,上面已经提到过斧子的例子)...星际和SPC2以及任何RTS是完全一样的...
那些说坦克的超杀管理..是因为SC里坦克开炮有个转炮台时间远远长与开炮后产生作用的时间(或者开炮和目标产生作用根本就是同时进行)导致其余单位还在转炮台时目标已经消失,所以其余单位炮台转到一半后符合攻击的A目标消失自动开始转向B目标或者直接没有其余目标后处于待机状态..
这里的一次判断逻辑是否成立(目标可攻击)..启动攻击行为(转炮台对准敌人) 二次判断目标是否属于可攻击状态开炮(产生攻击效果)...
有些游戏这方面做的不细腻导致模型的动作画面和实际的杀伤输出不同步才会导致今天这么多无聊人事在这讨论超杀管理这如此牛比的话题.. |
|