怪物AI设计简述
怪物AI本质上是一个程序问题。从策划角度而言,设计者需了解怪物AI的整体设计流程,如此才能提出合理需求,确保游戏战斗的整体体验符合设计预期。毕竟,怪物AI是游戏战斗体验的重要组成部分。
在程序领域,谈及AI设计时,常会提及“行为树”“决策树”“有限状态机”等专业术语。对于未学习过相关知识的策划人员来说,不必为此担忧。接下来,我们将抛开这些程序名词,单纯从策划设计的角度梳理怪物AI的策划设计。若内容存在理解错误,欢迎大家指正,共同学习进步。
一、什么是怪物AI?
从策划层面理解,怪物的AI实际上是一种交互体验。具体而言,是指怪物或NPC等虚拟角色在面对玩家操纵的角色时,能够给出恰当的反应。在游戏设计中,并非怪物的AI越高、越真实就越好。游戏的目标是让玩家与怪物或NPC的交互产生近似真实的可对抗性,这种接近真实的对抗才是怪物AI设计的核心目的。通过这种设计,能够吸引玩家持续战斗,促使他们不断提升自身装备属性和能力,进一步投入到游戏对抗中。
怪物的强弱、智愚都是根据设计需求而定的。所以,怪物AI设计的目标是在与玩家的交互中实现可控性、平衡性和诱导性。
二、怪物的AI包括什么?
怪物的AI本质上是多种状态之间基于逻辑的合理转换,而这些状态是依据怪物本身的特点来设定的。下面以《暗黑破坏神2》的骷髅怪AI为例进行详细说明。
在《暗黑破坏神2》中,MonStats.txt文件里的aip1 - aip8列用于设定怪物的AI行为参数。其检定方式采用随机数,即随机选取一个0到100的数字,将其与表中的参数数字进行比较。若该随机数小于或等于表中的数值,则判定检定成功;反之,则判定失败。
(一)《暗黑破坏神2》骷髅怪AI分析
骷髅战士的AI表现较为迟钝。它在发现敌人后会尝试接近,当敌人进入攻击范围时则持续攻击,但常常会毫无缘由地停止动作一段时间,处于发呆状态。其具体的AI参数设定如下:
- 当肉搏范围内没有敌人时,继续接近敌人的几率。
- par1、par3检定失败后等待的时间(单位:帧)。
- 当肉搏范围内有敌人时,攻击敌人的几率。
- 攻击时,以A2代替A1的几率。 5 - 8. n/a
从上述参数可以看出,《暗黑破坏神2》中骷髅怪的行为方式较为简单,主要包括接近敌人、检定失败后等待以及攻击等几种状态。随机数判定后,骷髅怪只会在这些状态中做出相应的反应和交互。
实际上,《暗黑破坏神2》的AI设计思路主要是以随机数判断结合条件行为为主,这也是目前绝大多数游戏所采用的方式。这种设计思路的优点在于简单易维护,理解和调试相对轻松;但其缺点也十分明显,即容易导致怪物行为单调、千篇一律,因此对怪物设计和条件设定提出了更高的要求。
(二)拆解《暗黑破坏神3》AI的必要要素
1. 怪物AI的判定方式
通常采用随机数,也就是类似掷骰子的方式,这是一种较为常见的判定手法,用于判断AI是否开始执行相应的行为。
2. 怪物的范围设定
怪物的范围本质上就是其战斗范围,更精确地说,涵盖了怪物的听觉和视觉范围。具体可细分为战斗前和战斗中两个阶段:
- 战斗前:包括游荡范围、听觉警戒范围和视觉警戒范围。其中,听觉警戒范围为360度,视觉警戒范围在120到180度之间,二者的半径可以相同,也可以不同。
- 战斗中:分为追击范围、近战攻击范围、魔法攻击范围和呼喊范围。
设置这些范围是处理各种不同AI行为条件的基础。
3. AI行为条目
AI行为条目指的是怪物能够采取的行为策略。怪物从出生到死亡的整个过程构成了一个完整的流程。
- 出生阶段:对应战斗前的范围,怪物的状态可能包括游荡、巡逻、静止等,这些都属于第一类AI行为。
- 战斗阶段:怪物如何进入战斗,一般游戏会设定“仇恨值”或采用主被动设定。仇恨列表属于另一个系统,在此不做详细展开。对于AI而言,有了仇恨值,怪物就可以进行一系列基于仇恨的行为,如攻击、释放技能、决定是否追击、是否呼喊召唤支援等。
- 濒死阶段:当怪物的HP血量下降到一定程度时,会触发一些特殊行为,如溃败逃跑、呼叫救兵或使用特殊技能(如“自爆”)等。
以上是基于条件行为的基础怪物AI行为设计逻辑,属于较为基础且实用的AI设计方式。这种设计主要可以通过表格或文本来实现,具体的实现和调试需要策划人员与程序开发人员共同完成。
(三)怪物AI制作工具
随着游戏制作技术的不断发展,怪物AI的制作越来越趋向于工具化。以下为大家介绍两类常见的工具:
1. 基于编辑器的怪物AI编辑
例如暴雪通常会提供功能强大的游戏编辑器,其中包含专门用于怪物AI编辑的内容。以《星际争霸2》的编辑器为例,推荐大家学习使用,这里暂不详细介绍。
2. 怪物AI的行为树编辑
行为树是一种历史较为悠久的工具,许多商业引擎都支持行为树的编辑,如《孢子》(Spore)、《孤岛危机2》(Crysis2)等游戏都采用行为树来制作对应的AI模型。
策划人员在关注行为树时,需要留意不同颜色区分所代表的不同行为、条件和控制节点。行为树的优势在于它能够清晰地展示AI携带者从初始到最终实现行为的路径。通过多个节点和一系列控制条件,帮助AI携带者做出正确及时的选择,这个过程充满了趣味性。
与传统在Excel表上进行设计的方式相比,行为树无疑为怪物AI设计打开了新的局面。从根节点从左往右看,怪物的每一步选择和判断都有对应的行为分支进行控制,如同树枝般枝繁叶茂,每条分叉都对应着特定的行为和条件,通过多条分支的执行构建出一个完整的行为模型。
由于最终呈现的是怪物执行的行为结果,即行为节点的内容,而行为树在执行行为节点的判断和行为过程的控制方面具有更强的力度。它可以增加任意多的节点选择分支,为怪物的行动判断提供了更多可能性,便于制作人员理解,同时在程序处理上也具有显著优势,这里不再展开讨论。
总之,怪物AI制作是一个博大精深的领域,本文只是进行了粗浅的描述,希望能够起到抛砖引玉的作用,与各位爱好者共同探讨学习。