游戏开发之AI的编写

   关于AI(人工智能)的编写,其实主要是将AI行为分类,然后根据不同情况对不同的AI 实体进行初始化。AI行为通过map来管理。
   在对AI 进行初始化后,那么单独用一个线程去跑所有AI,对每一个AI实体保持无限循环的状态(比如巡逻),直到它死亡。
   总的来说,就是使用状态机。不同的状态将导致怪物不同的行为。
   当有玩家 或者其他怪物进入视野后,需要广播坐标等信息给AI实体,调用AI的状态机入口,让AI实体去判断是否在攻击范围,是否攻击等等。
   关于仇恨,当然使用队列来控制。
   为了让AI更智能,需要一些概率事件,比如巡逻的范围指定最大和最小坐标,然后每次随机出一个两者之间的范围来巡逻。
   再更进一步,BOOS的设置,BOOS会拥有技能。
   而技能当然也用队列来控制,这样可以按顺序释放/随机释放/状态机控制施放。
   到这里,AI已经差不多了。

posted on 2013-06-04 00:27  百无禁忌  阅读(621)  评论(0编辑  收藏  举报

导航