当前位置: 首页 > news >正文

游戏对象AI类型释义

Creature AI类型

1. 基础AI类型

NullCreatureAI
  • 类别: 基础AI类
  • 特点:
    • 最简单的AI实现
    • 所有核心函数都是空实现
    • 通过 Permissible 函数判断是否适用
  • 适用场景:
    • 需要完全自定义行为的生物
    • 临时占位AI
    • 调试用途
PassiveAI
  • 类别: 基础AI类
  • 特点:
    • 完全被动,不主动攻击
    • 忽略 MoveInLineOfSight 和 AttackStart 调用
    • 仅用于完全被动的生物
  • 适用场景:
    • 环境生物
    • 非战斗性NPC
    • 纯任务/剧情生物
CritterAI
  • 类别: 专用AI类
  • 特点:
    • 继承自PassiveAI
    • 有特殊的逃脱计时器
    • 处理小动物的特殊行为
  • 适用场景:
    • 小动物(如猫、狗、老鼠等)
    • 需要特殊逃脱行为的生物
PossessedAI
  • 类别: 基础AI类
  • 特点:
    • 处理被控制状态
    • 支持攻击和进入战斗
    • 有特殊的逃脱模式处理
  • 适用场景:
    • 可被玩家/法术控制的生物
    • 需要特殊战斗逻辑的生物

2. 高级AI类型

ScriptedAI
  • 特点:
    • 提供完整的脚本化功能
    • 支持事件处理
    • 可自定义各种行为
  • 适用场景:
    • 需要复杂行为的Boss
    • 需要特殊事件触发的生物
PetAI
  • 特点:
    • 专门处理宠物行为
    • 支持跟随和攻击
    • 有特殊的目标选择机制
  • 适用场景:
    • 玩家宠物
    • 召唤生物

GameObject AI类型

1. 基础AI类型

GameObjectAI基类
  • 特点:
    • 提供基础功能框架
    • 处理基本游戏对象交互
    • 支持状态管理
  • 适用场景:
    • 所有需要AI的游戏对象

2. 具体实现类型

go_hoo_the_makers_lift_controller
  • 特点:
    • 处理电梯控制器
    • 通过 gossip 触发状态改变
    • 与实例脚本交互
  • 适用场景:
    • 需要控制状态的电梯
    • 需要特殊交互的游戏对象
go_mammoth_trap / go_caribou_trap
  • 特点:
    • 处理陷阱机制
    • 支持法术命中触发
    • 完整的事件处理链
  • 适用场景:
    • 各种陷阱类游戏对象
    • 需要复杂交互的机关
go_strange_pool
  • 特点:
    • 处理特殊水池效果
    • 可能与生物AI交互
    • 支持区域效果
  • 适用场景:
    • 特殊效果水池
    • 需要区域交互的游戏对象

选择建议

Creature AI选择

  1. 完全被动 → PassiveAI
  2. 需要完全自定义 → NullCreatureAI
  3. 小动物 → CritterAI
  4. 可控制生物 → PossessedAI
  5. 复杂战斗行为 → ScriptedAI
  6. 宠物类型 → PetAI

GameObject AI选择

  1. 简单交互 → 基础GameObjectAI
  2. 状态控制 → 如go_hoo_the_makers_lift_controller
  3. 复杂触发机制 → 如go_mammoth_trap
  4. 特殊效果交互 → 如go_strange_pool
http://www.dtcms.com/a/403106.html

相关文章:

  • Harnessing Text Insights with Visual Alignment for Medical Image Segmentation
  • 网上做网站 干对缝儿生意外贸网站推广优化
  • 【Java后端】MyBatis 和 MyBatis-Plus (MP) 的区别
  • iOS PPBluetoothKit接入无法找到头文件问题
  • leetcode orb slam3 3/99--> leetcode49 Group Anagrams
  • c# 读取xml到datagridview
  • 开源的 CSS 动画库
  • (三)过滤器及组件化开发
  • [NewBeeBox] A JavaScript error occurred in the main process
  • 【LangGraph】ReAct构建-LangGraph简单实现
  • 做毕业设计哪个网站好网站怎样做百度推广
  • Python高效合并Excel多Sheet工作表,告别繁琐手动操作
  • 自动跳转到wap网站外贸网站建设制作设计案例
  • 【Linux】 服务器无 sz 命令时的文件传输和日志查看方案
  • 【TVM 教程】设置 RPC 系统
  • 在ssh远程连接的autodl服务器(中国无root权限服务器)上使用copilt的Claude模型
  • Ansible 自动化运维:集中化管理服务器实战指南
  • 自动化运维工具 Ansible 集中化管理服务器
  • 【好玩的开源项目】使用Docker部署LMS轻量级音乐服务器
  • Netty从0到1系列之RPC通信
  • Coze源码分析-资源库-创建数据库-后端源码-安全与错误处理
  • LeetCode:52.腐烂的橘子
  • LeetCode算法日记 - Day 52: 求根节点到叶节点数字之和、二叉树剪枝
  • 四种方法解决——力扣189.轮转数组
  • ⸢ 伍-Ⅱ⸥ ⤳ 默认安全治理实践:水平越权检测 前端安全防控
  • 力扣856
  • Leetcode94.二叉数的中序遍历练习
  • 多种解法全解析——力扣217. 存在重复元素
  • 用python做的网站多吗二手书交易网站策划书
  • phpcms网站源码ui培训班多少钱