在写之前,先对昨天寻路插件再做一些补充,因为该插件不是很完善,所以当我发现有不能满足需求的时候,就会试图更改源代码,或增加接口来符合我的需求。
昨天补充了一条是 自身转向代码,今天补充另外一条,是及时改变路向。我们发现原始插件改变路向,必须要等角色到达目标点才能再做改变,我们在ai中希望是,当目标点改变,角色在半道就要改变新方向。
好了,解决该问题的方法很简单,只需要如下方法
public void OnStopFind() { m_bNavRequestCompleted = true; }
这行代码 在 目标寻路、随机寻路、跟随寻路 这三个类都添加进去,就可以了。
下面继续研究 ai 人工智能 。
ai 智能等级:
目前定义五级,分别如下:
固定点 固定方向 发现碰撞 射击! 这种好比是 大门前两个喷火龙,当有人 踩到陷阱,就发射。智商太低为1,我们找到规律基本无视它.
固定点 360° 方向,发现碰撞 射击! 这类 经常出现在 塔防中,比如箭塔炮塔,他们不会动,但有敌人经过 射程内 都会不停射击。 智商定义2。
移动点 360°,发现碰撞 射击,发现碰撞远离 跟踪。 这类 大部分 都是 小兵,如红警 帝国时代 里面的 小兵,平时站在不动,但有敌人来 就会 跟着并射击,直到打死对方。当然如果敌人 跑得太快 他们也不会一直跟踪。所以 智商只有3.
移动点 360°,发现碰撞射击,发现有敌人,主动搜索并跟踪。 这类 就是 将领 级别了。玩过部落战争的朋友 都知道,兵一放到 敌人阵营,就会自己主动攻击,他们不需要你告诉他 打谁,他会自己安排 打人流程。所以 这类智商 比较高 ,同时也是大家都喜欢玩 这类游戏的原因,智商 定义 4.
移动点 360°,发现碰撞射击,发现有敌人,研究其 是否打的过,如果难度高,指挥 其他同伙进攻。这类智商是最高的,目前我没有发现有哪类游戏中有,好比一个兵,他们会主动找敌人,他们会选择好打的先打,他们发现难打的,会先停下来 等待同伴一起上。 智商定义 5.
下面的 章节 我将开始以这 五级的智商来做 ai。之前为何选择SimplePath 也是看中了 他可以做到 第五级 的智商。