本帖最后由 呆呆星人 于 2011-4-24 16:20 编辑 对于一个游戏而言,我们需要的游戏对手当然是越来越强,在人与人对战的游戏中,这方面倒是无须多做(所以制作对战游戏为何来的更快),但是在人与电脑的对站立,我们则需要设计一个拥有活性思维的电脑对手,而不是一个让我们活活虐待的靶子,所以,对于我们制作游戏来说,则不得不考虑这个问题,久而久之,也就形成了我们所说的人工智能——AI (Adequate Intake)。 游戏的AI设计,一般来说对于游戏的类型也有不同的分类,( ACT - AVG - RPG - STG - ARPG - SLG - RTS - FTG等..),其中AVG、RPG、STG相信我们大部分的爱好者能轻松完全掌握,并且能设定出优良的AI,但是从ARPG开始,我们可爱的怪物们,将逐渐拥有拟人的AI,如集合,偷袭,逃跑,寻找同伴,破招,收招等,这一类AI,设计起来,对于我们刚入手的gm爱好者来说,则会有一定的难度了。 那么,我们就这样止步不前了吗?其实不然,GM的强大功能,让我们制作这些AI也是毫不费力,那么,今天我们就来做一个拥有连环动作的AI吧。开始我们自然需要设计一个对象,暂且就叫他obj_Mon,我们接下来,将会赋予它智慧,它在我们的程序下,会变得像一个胆小的地精;目前这个AI的执行效果大概为: 1、当它在直径200范围发现了玩家,则会采取进攻,当然他附近50范围内的同伴,也会同他一起进攻; 2、内当它在和玩家搏斗的时候,在HP少于30%的时候,则会判定附近的同伴是否大于2(包括自己),如果只剩自己则会逃跑; 3、逃跑的路线,如果附近375范围内拥有同伴,则会跑向同伴,移动速度只有之前的70%,并且发出呼救; 4、逃跑的路线,如果附近375范围内没有同伴,则会随机选择一个路线逃跑,移动速度只有之前的40%(绝望囧)。 看起来这个AI,是不是感觉很麻烦呢?其实这套AI,在很多游戏里,都得到了广泛的应用,我们现在就来完成它的设计: 首先,obj_Mon就是怪物啦,他负责接收任何Ai信号,当然如果很多对象需要用到这个AI的时候,我们不妨做脚本让他作为一个模块,这里我们主要讲述的是如何制作AI,所以这步就略过哦(偷笑...),我们现在来设定一些需要用上的变量: 1、攻击力 atk 2、体力 HP 3、移动速度 Spd 4、攻击检测范围 Chg_rog 5、寻找友军范围 Fnd_rog 6、逃跑血量 EscapeHP 7、助攻范围 Alies_rog 8、攻击范围 Atk_rog 9、攻击速度 ASpd 10、是否已经开始进攻 Battle 11、攻击目标的ID 12、追击范围bra_rog 设定好以上的参数以后,我们就可以开始设计程序,可以把这些语句写在step里,这样就可以随时检测到游戏的数据,当然,有的朋友也希望在一个固定的时间扫描一次,我们就可以使用到alarm定时器啦,这里我们采用的是即时扫描。 在step里,我们的程序将分为这2个判断组: //进攻判断 (程序见源程序) //逃跑判断 (程序见源程序) 这样再加上一些其他的参数,我们就能完整的设定好这个AI了哦 以上便是这一期的内容,以后也将不定期做出其他AI的制作,非常感谢大家的支持。 --------------------------------- 注: 文章的对象例子里不明白的,请参考范尼斯的心nearest。 gm原程序下载地址: http://d.namipan.com/d/a81afea6c ... faa83d31eff8d020300 --------------------------------- 简单看看,感觉也许对新人有点价值吧,至少新人知道有哪些条目可以用 |
-
2011-10-31
-
2011-10-26
-
2011-10-18
TA的作品
TA的主页
你可能喜欢
全部评论1