novalogic吧 关注:209贴子:2,966
  • 3回复贴,共1

设计令人信服的DF系列AI

只看楼主收藏回复

这篇文章写于DFLW出品之后,在当时DF系列的AI设计还是比较不错的,不多和现在的各类游戏比起来,要落后了很多,而真正让人慢慢开始感到DF系列AI落后的情况还是从DFBHD开始,因为从这个年代开始很多 游戏的AI设计伴随引擎的进步开始迅猛发展,而DF系列甚至之后的JO等等,一直在多人游戏是上下功夫,而对于这个系列的AI及物理特效则完全没有提升,于是在这个世界上没有进步的后果就是退步。
本篇的目的则是分析探讨如何在现有引擎条件的范围内将AI设计的能令人信服。
阅读本篇须掌握DF系列的任务编辑器操作:


IP属地:上海1楼2014-12-23 11:29回复
    我一直认为DFX后的敌人特别弱智。。。


    IP属地:北京来自手机贴吧3楼2014-12-23 20:57
    收起回复
      调整AI的一些途径
      DF的AI真的就那么低下吗?难道在与游戏者机会均等的条件下难度就无法提高了吗?答案是可以得,在已有条件下还是能够做出一些不错的AI控制,但是作为df系列基础来说,则是比较繁琐的。
      DF既然以模拟真实作为主要方式,所以必须将正常现实情况下所发生的事作一个比较,这样的分析能符合客观规律。
      先按照常例来分析以下:假设有3个士兵在巡逻,突然一声枪响,其中一个人中弹倒下,另两个人在真实情况下会怎样呢?首先是先保护自己,这也是人的本能反应。所以这两人第一个选择是卧倒或者就近寻找掩体保护自己;但我们也并不排除另一中可能,如果两个人中有一个胆小的,被突如其来的袭击吓糟了,呆在那里不动了。不过这种情况较少,因为作为士兵或恐怖分子来说他们的心理素质还是不错的。
      从以上分析还可以得到另一个答案:作为一个正常的人面对死亡是有恐惧感的。世界上没有不怕死的人,就算有也是有原因的,除非脑子不正常。
      人类对死亡的恐惧所表现出来的行为和人类所固有的反应,作为电脑是很难模仿的。那么DF模仿到什么地步了呢?可以通过其自带的任务编辑器来说明这个问题。
      首先要声名的是DF中AI设计最独特的地方在于在同一场景内控制的AI较其它游戏多,说白了游戏者在同一时间内不是与一个人对战,而是与一群人对战,而且这一群人必须有各自的行动作战方式,这就带来了一个新问题:必须同时精确的设计每一个NPC的AI,所以这个工作十分烦琐。
      在DF2中,在插入AI的目录上有这样一种NPC,就是带HIP参数的。

      带HIP参数会有什么样的动作呢?有机会做个这样一个实验:同时插入一个带HIP的AI和一个普通的AI,将START PLAYER标记放在离这两个AI较远的地方(必须可清晰看到这两个AI的行动),然后编译成BMS文件进入游戏,注意两个NPC的行动并没什么异常,接着你对天鸣枪(随便朝那里鸣枪,只要不伤害两个AI),这时情况有变,其中一个原地下蹲并做出防御姿势,而另一个开始朝有枪声的地方走去。再接下来,你立刻利用地形隐藏起来,并观察这个行走AI的行动,在他没有发现任何可疑情况的条件下,他可一直不停的走下去。当走过刚才鸣枪地点一段距离后,你再鸣枪,再观察其行动,他又走回来了。现在可以知道带HIP参数的意义了吧,这是一种跟踪技术,是提高AI的方法,这样可以简化一些AI的行动路线的设置(因为DF是开阔地形,而且控制人数较多,地形和建筑设置的随意性,所以除了防守的人员外,只要有行动的AI都必须设定行动路线)。然而在DFLW中取消了该项设置,因为这个参数的添加会增加一些预想不到的麻烦:DF的地形是有起伏的,如果遇到地势落差较大而且地势陡峭的地形,游戏者可以饶过这个地形从另一个地方攀上去,而AI不会,它只会在山脚底下傻奔,这个现象在DF2中经常看到,更有趣的是当前面有东西如建筑等东西阻挡时,这个NPC会顶这这个建筑或其它东西傻奔,对与地形与室内战更趋复杂的DFLW来说实在派不上多大用处。
      刚才提到了关于AI行动路线的设置。行动路线的设置是很重要的,这与“雷神竞技场”有很大区别。前面提到过“雷神竞技场”这类射击游戏中AI的行动路线受到场地限制,而且游戏者所面对的人数及少,又由于游戏的随机性,所以没必要设定也无法设定行动路线。而DF就不同了,游戏者面对的AI较多,而且作战场地毫无限制,如果不给这些AI设定行动路线,将会发生以下结果:1、有HIP参数的AI毫不怕死的冲向发出枪声的地方。2、普通NPC傻傻的呆在原地,游戏者只要一把狙击枪在较远的地方一个一个的瞄掉这些活靶子而轻松的结束整个任务,那么这个任务的设计也是毫无意义的。当然设定行动路线并不仅仅是让这些AI能够动起来,更进一步讲是让他们更聪明一些,让游戏更有一些生机:设定行动路线可以让各AI之间进行相互跑位协同作战;设定多变行动路线可以提高游戏者瞄准的难度;设定行动路线可让突发的事件增多。何以见得呢?来几个例子来说明:狙击手最喜欢的目标是固定目标,如果是在运动中也希望是相对均速的直线运动目标,如果AI运动带有曲线性,射击难度是否提高了呢?答案是肯定的。不过AI不会自己跑Z字 型,所以必须设定其独特的Z字型行动路线;在一个基地中有多名NPC在行走,突然遭到袭击,其中一人倒下,按照前面所说这些人必须寻找掩体保护自己,AI不会自己找掩体,所以必须设定行动路线,先观察一下离各个AI最近的掩体,然后制定其奔跑方向和地点,这时AI行为的可信度提高了,不信你试试看:当你射击发出声音后保证基地内的AI跑的连一个人影也没有;如果你在搜索每一个房间,当从侧面靠近一算门时突然有人从屋内冲出向你开枪,你是不是感到很紧张呢?当然AI不会主动冲出来,所以要设置行动路线,不过在这里光有行动路线还是不够,因为这个行动路线是预制的,没有事件激发是不会发生的,这时可以这样设置:现在建筑的门前区域设置一个事件激发区域,然后在EVENT(事件生成器)编辑这样一段语句:如果游戏者进入这个时间激发区域,躲在房内AI按照编号N的行动路线行动(这是翻译句,在正式编辑中请按照相关语句编辑)。怎么样!酷吧!到这里你们是否觉得这些AI有点聪明了。
      前面提到当人遇到袭击的时候会采取就近寻找掩体或卧倒,卧倒PRONE也是AI的一个重要选项。当遇到紧急情况和遭到袭击时将其设置为卧倒无疑是提高AI的有效手段。

      与行动另一个密切相关的AI选项就是GUADING(防御)。防御选项的设置十分重要,在前面提到的带HIP参数的NPC,就算设定了行动路线,他们遇到情况开始会自说自化的向其他地方跑去,这样就需要打开其防御选项让其按照行动路线走,当走到规定地点时用EVENT编辑器关闭这个选项,从新恢复其HIP功能,这样做的好处在于帮助NPC饶过障碍。普通NPC虽然不会跑的那么快,但也有跟踪功能,不过不是很明显,在一般情况下没必要设定防御,因为普通NPC不会一边移动一边攻击对方,在遇到袭击是会停下来还击一下然后在前进,不过将其设置在建筑内就不行了,其行动会让他跑进建筑的死角,直到被入房的游戏者打死,所以说在建筑内或在固定区域的普通NPC防御选项还是要打开的。

      红色警戒(RED ALERT),这个选项在AI的属性中是没有设定的,但可以通过EVENT编辑器调用(DFLW的特别版本任务编辑器提供这个设定)。为什么要有RED ALERT设定?没有这个设定,游戏中AI在紧急情况下会采取各种响应的动作,如作好射击准备、卧倒等等,但是过了一段时间他们又会放下武器度起了方步,一副休闲的样子,这俨然与事实不符。打开这个设定后可以让NPC一直保持高度戒备状态。

      从以上分析可以看出,这里所让DF中AI提高是建立在现实的基础上,而不是无谓的提高,同样AI的武器射击精度也必须遵循这个原则。那么如何正确的设定武器射击精度呢?DF中的武器射击精度是这样规定的,总系数为100%,100%的设定就是说AI射击命中度很高,基本上是在距其150米的距离左右3发子弹即可击毙游戏者;射击精度最差为1%,这个精度可想而知了,也就是面对面的在AI面前,对方还有可能打偏3、4枪。我们假设AIC都是训练有数的恐怖分子或军职人员,按照现实情况该如何设置他们的射击精度呢?先从所用武器来分析:首先提到的是步枪AK-47,AK-47的特点是火力猛,精度差,合理的射击精度应调整到30%-40%,同样机枪M-249也可以使用这个精度;三角洲利器M-4,由于在游戏中配以4倍的望远镜,所以是射击精度相对AK-47高,但也不能太高,否则狙击枪的射击精度就没有特点了,故其设定在60%-70%左右;射击精度最高的要属BARRATT和M40,要体现狙击枪的特色和狙击手的个性选择其精度应在90%-100%;冲锋枪的射击精度应设置高于AK-47低于M-4,是因为其射击精度高但射击有效距离短的原应(通常冲锋枪的有效射击距离为200米);手枪的有效距离为50米,所以它的精度可以控制在1%到10%左右。以上的设定当然也不是绝对的,还要根据设计者对任务安排的需要而定。
      最后提一个与任务编辑器无关的话题----队伍编制设置的问题:DF比较接近模拟现实世界,所以认真的任务编制也应向拟真靠拢,而不是编辑不符合现实的AI,那么队伍编制的设定有什么重要呢?大家想想一支队伍要是全部由狙击手组成可能吗?一支队伍全是酒囊饭袋可能另游戏索然无味。所以一个正确的队伍配置也是很重要的。
      经过上面的分析,大家可能要问了:为什么DF的自带任务中的AI如此的底下,这个回答就麻烦了,一个是引擎基础问题,另一个可能就是NOVALOGIC也觉得逐个设置AI是件麻烦的事情,所以到后来几部更是明显。
      经过分析,当你在编辑一个任务的时候,是否在导演一场由自己创作的电影呢?虽然表面上是游戏者与电脑的战争,其实是游戏者与任务编制人员之间的斗智。


      IP属地:上海6楼2014-12-25 11:39
      回复