当玩家面对能力强大的怪物时,有些往往耐不住性子,使用修改器从事"违法"活动.有些游戏公司为了避免这种现象,让怪物的能力在某种程度上依据玩家的属性变化而变化,其后果是:玩家发现使用修改器后效果不明显,觉得这种垃圾游戏再玩也没意思
我比较看好未来的AI发展,因为笔者有幸参加了"人脑思维结构体"的研究,深知道,电脑与人脑的唯一区别只是一个是生物体,可以发生化学变化,而电脑不能.但是未来的光脑可以通过改变内部光传播路径来模拟人脑里的化学变化引起的结构升级,从而真正使"机器"模拟了大脑.
那么在今天的机器基础上,如何尽可能模仿一些高级的思维活动呢?这将使游戏怪物NPC在很大程度上呈现出新的面貌.
国内外的诸多MMO/RPG,对于怪物,往往是单一的列表记录方式,保存下每个怪物类的指针,每个地图一个表.这种表大都以链表方式,也有用树结构的.相对来说,用图结构的非常少了,原因不在图结构相对复杂,开发维护难度稍大.而是程序员,策划员们并不对AI做过高要求,使用简单列表方式足以.
一般的简单单体AI活动,如少血逃跑,仇恨攻击,以及根据对方位置选择技能等,使用列表完全够了.而且速度很快.然后更高级的团队攻击,互助攻击,阵法,优先截路,列表虽然可以做,但要承受每秒上万次不厌其烦的搜索,比对.这时,图式记录的重要性凸显出来.
一般的做法是,在最初放置怪物的时候,根据怪物的视野范围,将该范围内的怪物于之建立联系,这种联系是双向的.从而形成整个怪物网络,任何一个怪物有何举动,如移动,被攻击,或死亡,其周围的怪物都很容易得到消息,进而选择营救或逃跑.
这种网路是带权的,权值就是怪物间的距离.
更高级的做法是把玩家,NPC,怪物,都放到同一网络.好处是,怪物与玩家之间可以交流更多的信息,从而怪物的决策更灵活.
关于怪物的决策,如果简单的做,可以直接列举一堆情况,一一比对.如果往复杂的做,那么规则,定义,重构器,匹配器,索引器,等一堆高级方法也同样可行,这是一种最新的很接近大脑原理的编程方法(BTP),篇幅有限,不详述.
下面给出游戏需要的AI的大致目录:
1.自动寻找目标,可以根据目标强弱选择回避或攻击或偷袭
2.攻击过程,可以根据目标的表现(位置,血量,当前技能,负重,装备)选择不同技能
3.当目标做出非战斗动作时(如逃走),可以根据自身情况选择继续战斗或逃走,或召集其他怪物加入战斗
4.目标聊天或喊话发言时,能大致捕获其主要内容,根据厉害程度,对应发言,并选择逃走或召集怪物
5.可以根据周围环境,将目标引向有利于自身的方向
6.可以做出迷惑性动作,(诈死),伺机偷袭
7.可以自动与周围怪物结队,共同战斗,知道解救和自保
8.知道如何破坏目标所结队伍(如优先摧毁有加血技能的目标)
9.如果因为目标某些因素,自己无能力战胜,能寻找有能力的怪物(如相克相生关系)
10.可以利用地势,环境,天气,占据有利因素,发动进攻
11.对目标有记忆功能,可以复仇,等
12.可以学习,猜测目标动作,并针对性攻击
在AI领域,<CS 2.0><哥特王朝><刀剑封魔录>(这个勉强算上)等一批游戏以及走的很远了,但离上述12个目标还差距巨大.AI的完善不是一两家公司可以独完的,更需要交流和合作,也许现在公司出于技术保密,并不希望公开其AI算法.但当BTP日趋完善之后,AI编程将变的十分容易.公司之间的对比便转向创意和平衡设计.
--------------------------------------------------------------------------
BTP编程因为尚在研究修改阶段,尚未最终确定,但以很明确的显示,他的AI编程已经颠覆了大部分现有的方法.这里迫于一些不可不担心的问题,没有过多介绍.读者见谅
--------------------------------------------------------------------------
blog: wocdev.blog.sohu.com
e-mail: woc2006@163.com
欢迎交流 |