战斗 AI
MCE 使用可插拔的策略模式来实现战斗 AI。AI 系统基于 BattleAI 基类和一系列 BattleAction 组件构建,可以组合它们来创建不同的难度级别和行为风格。
架构
AI 管线分为两层:
- BattleAI -- 接收当前战斗状态并返回
BattleAction的入口点。 - BattleAction 组件 -- 独立的决策单元,评估战斗的某一方面(例如"我应该使用效果拔群的招式吗?"或"我应该切换到抗性怪兽吗?")。
一个 BattleAI 实例持有一个有序的 BattleAction 组件列表。它按优先级顺序评估它们,第一个产生有效行动的组件获胜。
内置 AI 策略
MCE 附带多种可混合搭配的 AI 策略:
RandomBattleAI
最简单的 AI。每回合随机选择一个有效招式。
- 难度:非常简单
- 使用场景:野生遭遇、前期训练师
- 行为:从可用招式中随机选择。没有策略思考。
PerformEffectiveMove
选择对当前目标造成最有效伤害的招式。
- 难度:中等
- 使用场景:中期训练师、道馆馆主
- 行为:计算每个可用招式的属性克制并选择最佳招式。不考虑能力值变化或变化招式。
PerformRandomMove
类似于 RandomBattleAI 但带有加权招式选择。
- 难度:简单
- 使用场景:低等级训练师
- 行为:随机选择招式,略微偏好伤害招式而非变化招式。