Agent 可行性方案
怪物类型
普通怪:刷新规则、
巡逻、仇恨、掉落
巡逻、仇恨、掉落
精英/BOSS:
技能循环、阶段切换
技能循环、阶段切换
特殊怪:
NPC守卫、事件怪
NPC守卫、事件怪
AI行为
系统
系统
行为树:
状态节点、条件分支
状态节点、条件分支
仇恨系统:
目标切换、脱战规则
目标切换、脱战规则
寻路系统:
NavMesh、障碍绕行
NavMesh、障碍绕行
战斗
逻辑
逻辑
技能释放:
连招、CD、打断
连招、CD、打断
属性计算:
伤害公式、Buff叠加
伤害公式、Buff叠加
掉落系统:
概率、保底、品质
概率、保底、品质
服务器
逻辑
逻辑
刷新管理:
定时刷新、条件触发
定时刷新、条件触发
AI计算:
CPU密集、负载均衡
CPU密集、负载均衡
功能测试
冒烟/回归/兼容
客户端性能测试
服务端压测/协议
人工测试为主
Agent辅助:行为树覆盖率统计
【20%】
怪物行为树逻辑需人工
设计边界场景触发:
· 新BOSS技能机制验证
· 行为树边界条件触发
(卡墙、追击上限、
仇恨溢出)
· 特殊环境下AI表现
(地形卡点、高低差)
· 技能表现主观评审
· 多怪物协同AI验证
Agent统计哪些行为分支
从未被触发过
QA:边界场景设计
程序:行为树单元测试
TestAgent (SDD-func call)
Bug Agent (Log+ctx+KB)
40%
批量构造行为触发组合,
暴力遍历行为树分支:
· 仇恨切换:多目标
交替攻击→验证目标切换
· 寻路障碍:不同地形
条件下寻路验证
· 技能连招:各技能组合
释放→CD→打断验证
TestAgent (SDD-func call)
Bug Agent (Log+ctx+KB)
55%
· 刷新规则:定时/条件
触发刷新验证
· 掉落正确性:概率统计、
保底机制、品质分布
· 属性计算:伤害公式
大量样本验证
· 阵营切换:敌对/中立
状态验证
· 脱战回血:超距离脱战
→回满血→重置仇恨
性能问题定位
Profile tools自动化分析
Tracy
55%
TestAgent
(脚本驱动
长时间战斗)
(脚本驱动
长时间战斗)
· 大量怪物同屏
帧率采集
· 长时间战斗
内存泄漏检测
Bug Agent
(airperf
+context
+KB)
(airperf
+context
+KB)
55%
· 50+怪物同屏帧率
· 特效密集战斗帧率
· 怪物刷新瞬间卡顿
· AI寻路计算性能开销
· 长时间挂机战斗内存
⚠️ 大量怪物同屏是帧率
杀手,需自动化长时间
跑数据
· 特效密集战斗帧率
· 怪物刷新瞬间卡顿
· AI寻路计算性能开销
· 长时间挂机战斗内存
⚠️ 大量怪物同屏是帧率
杀手,需自动化长时间
跑数据
性能回归
TestAgent (SDD-protocol call)
Bug Agent for loadlab analysis
60%
· 批量刷怪协议压测
· 大量怪物AI并发
计算CPU压力
· 怪物仇恨/寻路
高并发验证
· 刷新点高密度压测
· 掉落计算并发安全
· 怪物相关DB读写回归
⚠️ 服务端AI计算是CPU大户,
大量怪物并发验证服务器
算力瓶颈
人工测试
TestAgent (bot orchestration)
Bug Agent (Log+context+KB)
30%
Bug Agent (Log+context+KB)
30%
· 怪物AI与地形/环境/天气等系统的交叉影响验证
· 历史版本已有怪物的行为回归验证
· 服务器BOT长时间刷怪战斗稳定性验证
70%
· 历史版本已有怪物的行为回归验证
· 服务器BOT长时间刷怪战斗稳定性验证
70%
↑
验证原有功能正常
🎯 G66 怪物及AI模块 · Agent 测试核心维度总结
| 🔬 测试核心 | 行为树驱动:刷新 → 巡逻/待机 → 发现目标 → 仇恨锁定 → 技能释放 → 脱战/死亡 对应GM指令链: monster 怪物ID → eai 0/1 → ~#0.camp → sbuff 0 验证状态 |
|---|---|
| 📋 典型用例 | 自动化 行为树分支覆盖率遍历 自动化 仇恨切换/寻路验证 自动化 掉落概率大样本统计 自动化 同屏怪物性能采集 |
| 🛠️ Agent 策略 | Step 1 GM刷怪:monster 怪物ID 距离 阵营 Step 2 控制AI:eai 0 关AI / allsb 停AI Step 3 查属性:~#0.attrs.to_named_dict() Step 4 批量验证:findentity {'monster_id':xxx} |
| ✅ 可覆盖 | 100% 刷新规则(定时/条件触发) 100% 掉落概率验证(大样本统计) 100% 属性/伤害公式计算 100% 同屏性能数据采集 |
| ❌ 不可覆盖 | 人工 BOSS新技能机制设计验证 人工 行为树边界场景设计 人工 特殊地形AI表现 人工 多怪物协同AI体验评审 |
| ⚡ 折中方案 | 折中 行为树覆盖 → Agent批量构造仇恨/寻路/技能组合,暴力遍历分支 折中 地形卡点 → goto x y z + monster ID 定点刷怪验证 折中 AI表现 → 行为树覆盖率统计,标注未触发分支,人工重点验证 |
Agent 路线说明:
Test Agent:以驱动游戏根据用例自主执行步骤为目标
- SDD-func call(批量触发行为状态):封装怪物行为触发接口,批量构造仇恨切换/寻路障碍/技能连招等组合
怪物模块适用:暴力遍历行为树分支最高效,Agent批量构造触发条件,统计覆盖率
G66 GM指令支撑:
monster/slayall/eai/allsb
findentity/buff/cast
refresh/rgroup/hpsign
怪物模块适用:暴力遍历行为树分支最高效,Agent批量构造触发条件,统计覆盖率
G66 GM指令支撑:
monster/slayall/eai/allsb
findentity/buff/cast
refresh/rgroup/hpsign
- 脚本驱动(长时间战斗):自动化长时间挂机战斗,持续采集帧率/内存数据
怪物模块适用:50+怪物同屏压力测试、长时间战斗内存泄漏检测
怪物模块适用:50+怪物同屏压力测试、长时间战斗内存泄漏检测
Bug Agent:
- LOG+context+KB:通过战斗日志+行为树执行log分析异常行为
怪物模块适用:AI卡死分析、仇恨异常追踪、技能释放错误定位
怪物模块适用:AI卡死分析、仇恨异常追踪、技能释放错误定位
- loadlab analysis:压测大量怪物AI并发计算的服务器算力瓶颈
怪物模块适用:服务端AI计算是CPU大户,大量怪物并发验证算力瓶颈
怪物模块适用:服务端AI计算是CPU大户,大量怪物并发验证算力瓶颈
📌 G66 怪物及AI核心结论:
· 功能测试:20% Agent(行为树覆盖率统计)
· 冒烟/回归/兼容:40% Agent
· 客户端性能:55% Agent
· 服务端压测:60% Agent
Agent批量构造仇恨/寻路/技能组合暴力遍历行为树最高效;大量怪物同屏是帧率杀手,需自动化长时间跑数据
Agent核心策略:
GM刷怪 → 控制AI开关 → 批量触发行为 → 统计覆盖率
边界场景靠人工设计,Agent统计未触发分支
· 功能测试:20% Agent(行为树覆盖率统计)
· 冒烟/回归/兼容:40% Agent
· 客户端性能:55% Agent
· 服务端压测:60% Agent
Agent批量构造仇恨/寻路/技能组合暴力遍历行为树最高效;大量怪物同屏是帧率杀手,需自动化长时间跑数据
Agent核心策略:
GM刷怪 → 控制AI开关 → 批量触发行为 → 统计覆盖率
边界场景靠人工设计,Agent统计未触发分支