AI,也就是人工智能,用在游戏中,指Npc的行动规则。具体来说,就是Npc什么时候走,什么时候停;什么时候打怪,什么时候逃跑;什么时候用X技能,什么时候支援同伴。我们这里只讨论怪物AI,因为一般情况下,策划只需要描述怪物的AI,友好Npc仅仅只是站着不动或是闲逛,或是由任务脚本控制。这些在任务中讨论。
就目前的MMORPG而言,Npc的AI主要包括两个部分,寻路和行动。寻路一般使用A*算法,由专门的程序员完成;而行动相对比较简单,与系统相关性比较强,需要策划提出需求,也就是策划通常所称的“做AI”。
做AI有两种方式,一种是策划写描述,程序总结;还有一种是程序指导,策划直接写AI伪码。个人倾向于后一种方式,因为这样策划可以直接写清楚自己心里的想法,修改也方便;前一种,如果策划能清楚地描述出自己所需要的AI,并且总结出来,与程序沟通清楚,也不错。当然,如果策划懂程序,直接写AI就完了,又方便效率又高。
总之无论是哪种办法,策划都需要了解写作AI的思路。对于程序而言,策划想要游戏中的怪物怎么活动无关紧要,只要策划能讲清楚逻辑是怎样的就可以了。首先是怪物作出特定动作的条件,比如,HP小于上限的30%;然后需要说明该条件下怪物要作出怎样的行为,比如,向重生点移动。合起来就是怪物HP小于上限的30%时,向重生点移动。
不过这只是怪物的一个行为而已,离完整的AI为时尚早。了解了程序最基本的要求,策划这时需要归纳最初所设定的怪物的种种行动。比如,怪物行为有多少种,技能有多少种,有哪些种类是一致的,进行一下分类,攻击类,补血类,加速类等,有哪些效果需要处理,有哪些状态需要处理。
“条件”部分,不同的游戏会有蛮大的差别,根据策划在其它方面的综合考量,比如怪物类型、习性等,综合确定条件。比如可以设定有些怪物只在“HP少于上限的30%时”才为自己补血,也可以设定为只在“HP少于上限的10%时”才为自己补血。条件结果都确认了,就用上面的这种条件、结果格式把归纳出来的怪物所有行动都描述出来。
下一步是确定优先级别。因为AI是顺序执行的一组句子,当一个条件满足的时候就会跳出执行AI的循环,重新开始一轮循环。就好比在一个人世的轮回中,已经确定笔者有胸部,那笔者就是女人而非男人,于是循环马上结束,不考虑成为猪或者是神仙的可能性,转而开始下一轮循环。如果行动的条件发生重复,导致在一个条件下,有不确定多个结果(视脚本的执行顺序而定)。例如,HP小于等于HP上限的30%时向重生点移动;怪物隐身时站在原地不动。这两个句子条件可能同时发生,既HP小于等于HP上限的30%,又隐身。这时AI只能按照执行句子的顺序来确定究竟发生哪种情况,所以可能发生策划意料之外的结果。确定优先级别就是确定哪个句子应当先执行。
到这一步,描述的工作已经基本做完了,可以交给程序做然后测试。如果是直接写脚本的话,还需要再抽象一下,把优先级和句子合到一起形成大的AI循环。AI循环的目标就是控制从怪物生成到再生的全部行为。只要前面小的抽象和优先级做得好,合成倒不是什么问题。
以下是一个AI流程的举例:
初始的描述:某怪物,不主动寻找敌人,没有敌人则在一定范围内随机移动,遭到攻击则增加仇恨,检查攻击者距离并进行攻击,不在攻击范围内则追击,如果移动到达最远移动范围,则返回重生点。
细化的描述:某怪物,被动攻击,闲逛,追击,无技能
条件结果描述:遭到攻击时攻击仇恨表上第一位的玩家;
非战斗时闲逛(移动与Idle交替进行);
战斗时攻击对象不在攻击范围内则向其移动;
战斗时使用普通攻击;
优先级设定:无(因为不存在交叉的情形)
伪码: IF ( 活着 & 非战斗状态 )
{
闲逛;
IF ( 遭到攻击 )
{
进入战斗状态;
增加仇恨;
}
}
ELSE IF ( 战斗状态 )
{
攻击仇恨列表上第一位的玩家;
IF( 目标不在攻击范围内 )
向目标移动;
}
考虑一个略复杂AI的话,还需要进行目标处理(效果、状态处理)、边界处理(如果离开了一定范围该怎么办)、技能选择(使用什么技能)等。寻路由于已有成熟算法,无需由策划考虑,除非有特殊需求。这些特殊处理,只要AI合成完成后加入即可。
通常来说,总会有一些效果、状态会影响到怪物的目标,比如不能移动的效果,如果策划想要怪物在不能移动时攻击最靠近它的玩家,就需要在AI中加入目标处理的部分。这些目标的变化全部用条件语句来表示,插入到战斗状态下,攻击之前即可。上例中的“攻击仇恨列表上第一位的玩家”,在不影响其它目标的前提下也可以分成两句,即“目标为仇恨列表上第一名的玩家”和“攻击目标”。通常情况下目标更改的语句不应在执行完毕之后跳出循环,否则可能导致不符合策划预期,也就是会出现怪物一直在确定目标,就是迟迟不肯动手的情形。
边界处理是考虑到怪物会有个活动范围,比如水里的怪不会往岸上跑,万一跑到城市里面或是新手区,玩家怎么办?同时也有一些技术上限制的原因。所有涉及到移动的地方都要插入对边界的处理。这个处理通常不在AI里面做,但策划在描述的时候需要讲清楚。
技能选择据说是AI中最复杂的部分。其实只要对技能的抽象做得好,这个倒不是大问题,关键还是要与其它部分配合并充分抽象,形成一个“聪明”的AI,介个要求就比较高。总之技能选择也是攻击中的一部分,因为普通攻击也是技能的一种。只要条件不要发生冲突,技能选择应该也不难。
目前来讲,游戏中实现的只是最基本,最简单的AI。理论上,AI可以更加复杂,实现更多的功能,用通俗的说法来讲,就是提供“AI引擎”。
比如说,一个“智能的”游戏Npc,它应该能实时感受周围环境的变化。这一点游戏有做,但在多高的级别上感受周围环境却是一个问题。大部分游戏的Npc都只是在一个较低的层级进行探测,只了解自己周围有限半径内发生的事情,对于世界范围的一般缺乏响应,需要手动操作。
智能Npc还应该能够对环境采取行动,包括为进一步得到信息所采取的行动。在游戏中,Npc所能采取的行动往往是一个有限的,专门为其指定的可选集。本质而言这种做法没有错,但限制了Npc的智能程度。如果Npc可以使用游戏中所有的行动,且能够拓展原来不存在的行动,那可就太棒了。不过这涉及到很多方面的难题,比如搜集信息所需要的搜索工具,学习能力等。这些想法可以通过折衷的办法做变通实现,但毫无疑问,游戏的整体结构会发生变化。
还有一个重要问题是AI必须面对的,也就是“动机”、“信念”问题。智能的Npc应该有自己的“动机”以及“信念”,这些会指导Npc行动。但问题是“动机”及“信念”可能跟“目标”和“环境”矛盾,因此设计和实现上存在较多困难。
上文所谈到的AI,主要以MMORPG中的怪物为例所进行的简单制作,涉及到其它类型的游戏,比如动作、格斗类,AI则更加复杂,不过道理都是一样的吧。希望能在今后的制作过程中与诸位读者一同探索AI更多的奥秘。
分享到:
相关推荐
【研究报告--漫谈人工智能与教育变革】 随着科技的飞速发展,人工智能(AI)已经渗透到各个领域,教育也不例外。这份研究报告深入探讨了人工智能如何在教育领域引发变革,旨在为教育创新提供理论支持和实践指导。 ...
在游戏开发领域,人工智能(AI)系统的应用日益广泛,尤其是在生存类游戏中,如《求生之路》系列。本文将深入探讨该系列游戏中的AI系统,揭示其如何为玩家带来逼真的游戏体验。 首先,我们来看看AI在《求生之路》中...
标题《漫谈:人工智能的“能”与“智”》和描述中的内容指出,文档主要探讨了人工智能(AI)技术在现代生活中的应用、能力和智慧,并对智能技术的伦理和社会影响进行了深入讨论。文章通过多种实例来阐释人工智能的...
漫谈中小学人工智能教育.pdf
"投研漫谈(一):多因子和人工智能谁是“正规军”?~兼谈金融预测框架" 本文主要讨论了多因子模型和人工智能在金融预测框架中的应用和比较。文章首先介绍了资产定价中心公式的理论基础,并阐述了随机折现因子的...
漫谈人工智能武器.pdf
《漫谈中小学人工智能教育》 随着科技的飞速发展,人工智能(AI)已经渗透到我们生活的各个领域,教育也不例外。中小学阶段的人工智能教育,旨在为青少年打下坚实的科技基础,培养他们的创新思维和问题解决能力,以...
### 软件工程思想漫谈--林锐 #### 关键知识点提炼 ##### 1. 软件工程的历史背景与发展 - **60年代初期的软件开发**:早期的程序设计是由少数技术高超的人士进行的,他们的程序设计方式随意性强,缺乏统一的标准与...
投研漫谈系列之金融预测框架的探讨是一篇深入分析金融投资领域中多因子模型与人工智能(AI)技术运用的报告。它提出了一个核心问题:在金融预测领域,多因子模型和人工智能技术谁更具优势,并探讨了两者的内在联系和...
随着人工智能技术的进步,图书馆中的机械设备也会随之发展,以适应新的技术要求。例如,基于RFID系统优化提升图书馆智能服务,不仅可以提高图书管理的效率,还可以为读者提供更为便捷的自助服务。 图书馆作为人类...
人工智能(AI)作为一种前沿技术,已经逐渐渗透至农业这一传统行业中,开启了智慧农业的新纪元。随着技术的不断发展和应用的逐步深入,人工智能为农业领域带来的变革和创新效应正变得愈加明显。 首先,人工智能在...
人工智能(Artificial Intelligence, AI)在初中信息技术教学中的实践价值日益凸显,这是基于当前教育信息化2.0行动计划的背景下,教育理念与技术的深度融合。随着5G时代的到来,信息技术的地位越发重要,人工智能...
打造人工智能时代的最强计算引擎——深度学习框架演进漫谈 从视觉计算近期进展“管窥”AI之ABCDE 从点击率提升到用户长期行为优化:浅谈人工智能技术在电商搜索的落地应用 TutorABC如何利用大数据和AI提升学习效果 ...
数据分析是现代商业、科学和社会科学研究中的关键组成部分,它涉及到对大量数据的深入探索,以揭示隐藏的模式、趋势和关联,从而...随着数据量的持续增长和人工智能的进步,数据分析将在未来继续发挥至关重要的作用。
元宇宙的核心在于通过先进的数字技术,如区块链、5G、虚拟现实(VR)、人工智能(AI)、物联网(IoT)、数字孪生和边缘计算等,打破现实与虚拟的界限,创造一个融合现实与数字的全新空间。在这个空间里,人们可以...
它集成了区块链、5G、虚拟现实、人工智能、物联网、数字孪生和边缘计算等尖端技术,旨在打破现实世界与虚拟世界的界限,让人们在数字空间中实现更深度的互动和体验。 元宇宙的本质是人机协同进化的高级阶段,它有望...
...