高级AI记录笔记(三)

学习位置

添加伤害系统

  • AI死亡与受击事件

  • 角色的死亡事件
  • 远程AI的攻击系统替换成写好的伤害系统
  • 近战AI的攻击事件
  • AI控制器中修改攻击函数,当前攻击目标存在的时候就攻击当前目标,当前目标不存在就攻击新的目标

让AI可以相互攻击

  • 这个关于行为树的逻辑并不多,全是伤害系统的判定
  • 添加了一个判断当前AI是否死亡的服务器
  • 远程攻击AI的行为树
  • 近战攻击的AI行为树

让主角拥有法术攻击

  • 自备主角的动画
  • 新建主角的状态切换,进入魔法攻击状态与默认状态

添加十字准星UI




  • 只有进入法术攻击状态才会显示这个UI

添加一个攻击组件

  • 添加一个攻击组件

  • 改一下远程AI的攻击检测,直接在我们创建的这个攻击组件中更改,然后将这个组件添加到AI基类中
  • 在击组件中添加一个事件用来开火
  • 然后在AI基类蓝图中添加这个攻击组件
  • 此时远程AI的攻击传递就可以使用我们刚才写的攻击组件中的发射子弹事件了

让玩家可以魔法攻击

  • 给玩家蓝图添加我们写的攻击组件,然后创建一个事件用来播放魔法攻击蒙太奇,与调用我们攻击组件的伤害传递

  • 创建一个布尔变量用来停止魔法攻击时还可以移动的情况,在移动蓝图哪添加一个判断,当前是否可以移动,默认是可以移动的
  • 魔法攻击时不能移动,等魔法攻击的蒙太奇播放完或者失败之后才可以移动
  • 只有在魔法攻击状态才能进行魔法攻击

让近战AI可以格挡玩家的魔法攻击

  • 新建一个AI格挡的枚举类型

  • 在伤害系统接口中添加一个当前是否在攻击的函数
  • 在玩家蓝图实现接口
  • 在法球攻击中设置攻击变量
  • AI基类中也实现一下这个攻击函数接口函数
  • 远程AI攻击中设置攻击变量
  • 添加一个装饰器用来判断是否有目标在正在攻击它们
  • 在近战AI中创建一个开始格挡与结束格挡的事件,以及伤害系统中正在格挡的事件调用

  • 创建一个格挡的任务
  • 行为树


  • 如果想让AI不要过早格挡,可以将玩家魔法球攻击的变量往攻击蒙太奇之后调整,这样AI的装饰器也能晚一点通知AI执行格挡任务
  • 开启玩家或者远程AI的这个攻击系统通知伤害的格挡,不然近战AI伤害系统接收不到格挡的变量判断
  • 让玩家切换状态可以改变一下摄像机的方位,切换丝滑一些


修复一些bug

当伤害敌人时没有获取玩家的Target目标

  • 因为我们没有连接伤害系统中的造成伤害的原因,所以在攻击AI时它没有获取到新的攻击目标

修复玩家可以一直重复攻击状态

  • 在玩家魔法攻击位置那添加一个DoOnce,等攻击完成后进行重置

修复目标死亡后敌人切换状态

  • 原因是在AI控制器中,设置攻击状态时,没有判断当前目标是否死亡就执行了设置攻击状态,只有目标存在且没有死亡才会设置攻击状态

AI被攻击后格挡还是会滑步,设置停止移动

  • 因为行为树中虽然设立格挡时变为Idle状态,但是因为会有一定加速度,所以还是会移动,在格挡处设置停止移动就行

魔法球攻击阻挡远程AI视线

  • 魔法球攻击会阻挡远程AI的视线,让远程AI会躲避玩家的魔法球攻击,因为远程AI的EQS检测总是试图保持在玩家的视线范围之内,而魔法球会阻挡AI视线,让AI以外看不到目标了,所以就尝试移动
  • 将魔法球蓝图的碰撞视线改为不可见就行

让主角的血条UI设置到屏幕左下方而不是在头上

  • 在十字准心UI中添加血条UI,绑定函数进行数据互联





给玩家添加受击反应

修复魔法球攻击的偏差问题

  • 我们用射线检测来判定击中的物体选择是否是直接命中目标还是慢慢命中到攻击的终点
相关推荐
算家计算1 分钟前
字节开源代码模型——Seed-Coder 本地部署教程,模型自驱动数据筛选,让每行代码都精准落位!
人工智能·开源
伪_装8 分钟前
大语言模型(LLM)面试问题集
人工智能·语言模型·自然语言处理
gs8014015 分钟前
Tavily 技术详解:为大模型提供实时搜索增强的利器
人工智能·rag
music&movie30 分钟前
算法工程师认知水平要求总结
人工智能·算法
明月醉窗台43 分钟前
qt使用笔记二:main.cpp详解
数据库·笔记·qt
虾球xz1 小时前
CppCon 2015 学习:CLANG/C2 for Windows
开发语言·c++·windows·学习
量子位1 小时前
苹果炮轰推理模型全是假思考!4 个游戏戳破神话,o3/DeepSeek 高难度全崩溃
人工智能·deepseek
黑鹿0221 小时前
机器学习基础(四) 决策树
人工智能·决策树·机器学习
Fxrain1 小时前
[深度学习]搭建开发平台及Tensor基础
人工智能·深度学习
szxinmai主板定制专家1 小时前
【飞腾AI加固服务器】全国产化飞腾+昇腾310+PCIe Switch的AI大模型服务器解决方案
运维·服务器·arm开发·人工智能·fpga开发