AI 人工智能 探索 (四)
在写之前,先对昨天寻路插件再做一些补充,因为该插件不是很完善,所以当我发现有不能满足需求的时候,就会试图更改源代码,或增加接口来符合我的需求。
昨天补充了一条是 自身转向代码,今天补充另外一条,是及时改变路向。我们发现原始插件改变路向,必须要等角色到达目标点才能再做改变,我们在ai中希望是,当目标点改变,角色在半道就要改变新方向。
好了,解决该问题的方法很简单,只需要如下方法
public void OnStopFind()
{
m_bNavRequestCompleted = true;
}
这行代码 在 目标寻路、随机寻路、跟随寻路 这三个类都添加进去,就可以了。
下面继续研究 ai 人工智能 。
ai 智能等级:
目前定义五级,分别如下:
固定点 固定方向 发现碰撞 射击! 这种好比是 大门前两个喷火龙,当有人 踩到陷阱,就发射。智商太低为1,我们找到规律基本无视它.
固定点 360° 方向,发现碰撞 射击! 这类 经常出现在 塔防中,比如箭塔炮塔,他们不会动,但有敌人经过 射程内 都会不停射击。 智商定义2。
移动点 360°,发现碰撞 射击,发现碰撞远离 跟踪。 这类 大部分 都是 小兵,如红警 帝国时代 里面的 小兵,平时站在不动,但有敌人来 就会 跟着并射击,直到打死对方。当然如果敌人 跑得太快 他们也不会一直跟踪。所以 智商只有3.
移动点 360°,发现碰撞射击,发现有敌人,主动搜索并跟踪。 这类 就是 将领 级别了。玩过部落战争的朋友 都知道,兵一放到 敌人阵营,就会自己主动攻击,他们不需要你告诉他 打谁,他会自己安排 打人流程。所以 这类智商 比较高 ,同时也是大家都喜欢玩 这类游戏的原因,智商 定义 4.
移动点 360°,发现碰撞射击,发现有敌人,研究其 是否打的过,如果难度高,指挥 其他同伙进攻。这类智商是最高的,目前我没有发现有哪类游戏中有,好比一个兵,他们会主动找敌人,他们会选择好打的先打,他们发现难打的,会先停下来 等待同伴一起上。 智商定义 5.
下面的 章节 我将开始以这 五级的智商来做 ai。之前为何选择SimplePath 也是看中了 他可以做到 第五级 的智商。
AI 人工智能 探索 (四)的更多相关文章
- AI 人工智能 探索 (七)
我简单画了一幅图,来讲下 ai 中的设计模式.图形中的这些人物,我想大家都能看的明白. 当 盗贼出现,人们发现了他们,就 呼叫 主类,然后主类再 通知 下面对应的管理局,然后管理局再 分配人手过去 ...
- AI 人工智能 探索 (六)
这次我为 角色 attribute 添加了 多个属性 其中 att 是 好人 坏人 等属性, 显然 数字不同 就要打起来. grade 是智商属性 ,今天先做了 3的智商.也就是小兵智商.碰到就打 逃 ...
- AI 人工智能 探索 (五)
我们把做好的 角色 拖到 内存池,如图所示,这样我们可以动态生成角色并给予他 寻路目标. //逗留碰撞 void OnTriggerStay(Collider other) { if (other.t ...
- AI 人工智能 探索 (三)
三类子弹的设计 using UnityEngine; using System.Collections; public class AI : AssembleModel { private Hasht ...
- AI 人工智能 探索 (二)
完整被动技能代码 using UnityEngine; using System.Collections; public class AI : MonoBehaviour { private Hash ...
- AI 人工智能 探索 (十)
呼叫事件图形结构如下 蓝色代表 警察局 红色代表警察 黄色代表 死亡人 蓝色球代表呼救人 黑色代表 敌人 警察目标是 攻击 黑色人,但 路中 会碰到 黄色人,如果警察有 救人功能 则会先救人去医院再看 ...
- AI 人工智能 探索 (九)
链接:http://pan.baidu.com/s/1c0AM3g0 密码:uccw 今天补充 创建物体 移动物体 ,当点击创建后 ,会出来一个 上图的 ui,他跟随 物体,当你把物体拖动到 指定的地 ...
- AI 人工智能 探索 (八)
绑定下,用来释放内存 布局框架.链接:http://pan.baidu.com/s/1eQzSXZO 密码:25ir 这次 我采用 ngui 来设定界面.除工具栏模块外,其他各类ui模块都是 内存池动 ...
- AI 人工智能 探索 (一)
碰撞检测 //逗留碰撞 void OnTriggerStay (Collider other) { if (other.transform.name == name) { //检测距离 //根据距离 ...
随机推荐
- 【Loadrunner】初学Loadrunner——录制脚本、回放、以及优化
一.脚本录制(录制) 打开Loadrunner > 选择创建/编辑脚本 > NewScript > 选择协议(单协议.多协议) > Strart Recording >选 ...
- 一把刀终极配置Win7/8版 v2.0 绿色版
软件名称: 一把刀终极配置Win7/8版 软件语言: 简体中文 授权方式: 免费软件 运行环境: Win8 / Win7 软件大小: 1.3MB 图片预览: 软件简介: 一把刀终极配置 For Win ...
- unity 退到桌面的 OnApplicationPause
void OnApplicationFocus( bool isFocus ) { // Debug.Log("--------OnApplicationPause---" + i ...
- 批量去除office超链接
mac下: fn+shift+comman+F9 windows下:control+shift+F9
- centos 安装ftp服务器
CentOS下搭建FTP服务器简单记录. 1.安装vsftpd yum install vsftpd 2.编辑iptablesvi /etc/sysconfig/iptables -A INPUT - ...
- CodeForces 567C Geometric Progression 类似dp的递推统计方案数
input n,k 1<=n,k<=200000 a1 a2 ... an 1<=ai<=1e9 output 数组中选三个数,且三个数的下标严格递增,凑成形如b,b*k,b* ...
- 一个有用的shell脚本
#!/bin/bash #if [ $1 -eq null ]; then # echo "please input params1!" # exit #fi #if [ $2 - ...
- Struts2--课程笔记1
第一个Struts程序: 在开发Struts程序之前,首先要导入额外的jar包,基本需求的是14个jar包,关于14个ja包是什么,有什么作用,此处不讲述. 还要配置web.xml文件,注册Strut ...
- Chapter 2 Open Book——8
But as far as I could tell, life worked that way most of the time. 但是即使我这么说,生活大多数时间还是这样的. 但就我所能告诉你的, ...
- hibernate对象的状态以及生命周期
瞬时状态:session中没有,数据库中没有 持久状态:session中有,数据库中有 游离状态:session中没有,数据库中有 get和load都是用来提取数据的 get和load的区别: get ...