Files
Cielonos/docs/AI_Boss_铁骑士架构设计.md
SoulliesOfficial f26f9fd374 爆更
2026-03-20 12:07:44 -04:00

146 lines
11 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Boss 级敌人概念与 AI 架构设计案:【铁骑士 - 埃癸斯】(Iron Knight 'Aegis')
## 1. 基础信息设定 (Basic Profile)
- **代号/命名**:【铁骑士 - 埃癸斯】(Iron Knight 'Aegis') / 或者可称为“圣盾百夫长”。
- **外观形态**:手持重剑与大盾的人形机械构造体,装甲厚重,具有强烈的压迫感。
- **定位**:重装型 Boss。以“攻防转换的节奏感”和“惩罚玩家的贪刀”为核心设计语言。
- **移动能力**:中等移速(依靠沉稳的步法和短促的盾牌推进,不会频繁全地图瞬移)。
## 2. 核心战斗机制逻辑梳理 (Core Combat Mechanics)
为了方便后续 AI 行为树设计师(或者程序)开展工作,我们将该 Boss 的战斗逻辑拆解为以下几个博弈循环:
### 2.1 【防反与断奏】(Block & Interrupt)
- **触发条件**AI 侦测到玩家正在高频使用“轻攻击 (Light Attack)”且自己没有处于硬直阶段。
- **行为表现**:埃癸斯迅速举盾,如果玩家的轻攻击砍在盾牌上,玩家的攻击会被立刻“弹刀”中断(伴随强烈的火花与音效)。
- **后续派生(致命追击)**:在成功弹刀中断玩家后,埃癸斯有高概率接上一记迅猛的**“无情追击 (Relentless Pursuit)”**(例如:盾牌格挡后立刻接一个霸体的突刺)。
### 2.2 【高风险追击与虚弱惩罚】(High-Risk Pursuit & Vulnerability)
- **承接上述派生**:当埃癸斯发动“无情追击”时,这正是玩家反击的绝佳时机!
- **玩家应对**:如果玩家通过极限反应对这记突刺进行了“完美闪避 (Perfect Dodge)”或“完美格挡/弹反 (Parry)”。
- **Boss 惩罚状态**:突刺落空的埃癸斯会因为用力过猛,核心过载,陷入一个持续数秒的**“虚弱状态 (Weakness Buff)”**(不仅停止行动,可能还会附带易伤效果)。在这个动作窗口期内,玩家可以疯狂输出。
### 2.3 【重装蓄力与硬核打断】(Heavy Charge & Heavy Counter)
- **触发条件** Boss 的常规攻击手段不仅限于连招,它会在特定距离或连招收尾时,准备释放一记**“毁灭性蓄力重击”**。
- **行为表现**:巨剑充能或盾牌发光,拥有**较长的前摇预警**。
- **博弈拆招**:此时普通的轻攻击打在它身上形同刮痧(由于超级护甲的存在)。但是,如果玩家敏锐地抓准时机,在它出手前的蓄力阶段,使用**“重攻击 (Heavy Attack)”或更高阶的主武器技能**精准命中它,即可将这股蓄力强行打断,不仅化解危机,甚至能将其打出巨大的后仰硬直。
## 3. 战斗环境、阶段转化与虚弱收益界定
### 3.1 战斗场地 (Arena)
战斗发生于宽阔的“城市主干道”可以视为开阔且平坦的竞技场。AI 的行为树逻辑重心需全盘倒向与玩家的正面距离博弈、压迫与牵制。
### 3.2 二阶段变阵 (Phase 2 Adjustment)
在生命值下降到阈值(例如 50%)时,进入由行为树变量驱动的“二阶段”。
- **动作池扩充**:解锁更多的高阶攻击动作或连招派生(例如在原先的一记扫击后,新增一段强制衔接的重劈连段)。
- **压制力提升**技能与追击的内置冷却Cooldown Variables缩短。
### 3.3 核心“虚弱状态”收益界定 (The 'Weakness' Penalty)
- **常态霸体防线 (Default Hyper-Armor)**在正常战斗循环中Boss 享有“超级护甲”,常规的普通攻击打在它身上形同刮痧,无法打断其行为。
- **虚弱剥权(破防硬直)**:当玩家通过完美操作使 Boss 失衡,致其陷入“虚弱状态 (Weakness Buff)”时,其常驻霸体被强制剥夺!此时,玩家使用轻力度的攻击命中,只要满足突破阈值,也能强行打出 Boss 的“受击反馈GetHit动画”。甚至可将其打入连续硬直进行割草般的爆发输出。
## 4. 攻击招式池的分类与行为树策略分配 (Move-Set & BT Strategy)
基于目前的动作素材与全新的“能量 (Energy)”体系,我们将通过 **距离判定 (Distance)****冷却 (Cooldown)**,与 **能量值 (Energy)** 三维指标来分配动作触发优先级。
### 4.1 核心资源:能量系统 (Energy System)
- Boss 拥有一套动态回复的能量系统,高危/高收益的“杀招”不仅需要 `CheckCooldown`(冷却),还需要 `CheckEnergy`
- 如果 Boss 能量充足它会优先使用极具压迫感且范围巨大的攻击一旦能量耗尽它只能降级使用“基础平A”或“低位走位/招架”争取回复能量的时间。这本身就为玩家提供了一层“撑过爆发期,迎来反打期”的隐性宏观回合节奏感。
### 4.2 远距离 (10米以上) - 压迫与拉近
- **【高能量局】蓄力剑技 A剑气波/长距离直线突刺)**:消耗大量能量,释放前摇长但带有强烈突进或远程压迫感的致命打击,破坏玩家风筝流战术。
- **【低能量局】单次攻击 A持盾滑步跳砸**:作为兜底突进动作,仅消耗基本能量拉近距离。
### 4.3 中距离 (4米 - 10米) - 游斗与破绽诱导
中距离是 ARPG 最精髓的博弈区间,是决定双方动作的重要起爆点。
- **【防守端】蓄力盾技 A防反姿态/能量爆发)**:低耗能甚至能回复能量。原地举盾,如果玩家手贱打上去,则吸收玩家伤害并蓄能反击。
- **【高优/高能】蓄力剑技 B大范围旋风斩/重劈)**:耗能大,压迫感极强。
- **【常规/低能】单次攻击 B、C大范围横扫/前压横斩)**:不需要太多能量,利用带有少量前压位移的扫击逼迫玩家走位。
### 4.4 近距离 (4米以内) - 高压强攻与节奏拆解
- **【满配爆发】连招池(连招 A/B/C/D**:近战最高优先级。依赖高额能量,对玩家进行不间断压制。通过 `Selector` 利用权重轮流抽取。
- **【防身脱战】蓄力盾技 B原地践踏/震地爆)**:当玩家连击极其猛烈或自身需要快速缓解近身压力时释放。
- **【断节奇招】单次攻击 D、E快速上挑/侧踢)**:极快帧率的小动作,低消耗。在玩家闪避掉连招以为安全时,突然出招打断玩家的反击节奏。
### 4.5 蓄力剑技 C 的特殊留用(终极底牌)
作为二阶段的专属,或者当玩家陷入异常(如被击倒)时,消耗全部能量释放的终极大招。
## 5. 高阶行为树底层重构设计图 (BT Architecture: Interrupt-Driven)
彻底废弃传统的“移动一会 -> 发呆等计时器 -> 攻击”的回合制顺序树。改为使用由 **Conditional Aborts (条件打断)****冷却/能量双检 (CD & Energy Check)** 驱动的“抢占式 (Interrupt-driven)”设计。
### 设计原则:
1. **最高层使用 Priority Selector**:左侧永远是攻击技能池(高优先级),右侧是移动走位池(低优先级)。
2. **条件截断 (Conditional Abort)**:攻击技能上方悬挂 `Check Cooldown``Check Energy` 联合 `Within Range`。一旦左侧亮绿灯(攻击 CD 转好,且有蓝,且玩家在此招式范围内),无论右侧当前在干什么(无论是在周旋还是在追逐),全部立刻打断,瞬间出刀!
3. **取消兜底倒计时**:无需 `Wait` 节点控制移动。距离远自然会触发“远距离攻击条件”来惩罚玩家,而不是走到玩家脸上才算作打完。
### Behavior Designer 逻辑蓝图 (Mermaid 排版)
```mermaid
graph TD
Root[Selector] --> AttackTree[Selector\n高优先级攻击池\n<打断监听Lower Priority>]
Root --> MoveTree[Selector\n低优先级走位池]
%% 攻击子树展开
AttackTree --> CloseRange[Sequence\n近战距离检测 < 4m]
AttackTree --> MidRange[Sequence\n中距离检测 4-10m]
AttackTree --> FarRange[Sequence\n远距离检测 > 10m]
%% 近战攻击逻辑 (加入能量与CD判定)
CloseRange --> CheckNearRange{"Conditional\nDistance < 4m\nAbort Type: Lower Priority"}
CloseRange --> ActionNear["Selector\n(依CD与Energy向下分发)"]
ActionNear --> HighEnergyNear[Sequence\n【高能量连招】]
HighEnergyNear --> CheckEnNear{"CheckEnergy\n&& CheckCooldown"}
HighEnergyNear --> ConsEnNear["ConsumeEnergy"]
HighEnergyNear --> CastNearCombo["Action: Cast Combo A/B/C/D"]
ActionNear --> LowEnergyNear[Sequence\n【低能量单发】]
LowEnergyNear --> CheckLowNear{"CheckCooldown"}
LowEnergyNear --> CastNearSingle["Action: 单发侧踢/快挑"]
%% 中距离攻击逻辑
MidRange --> CheckMidRange{"Conditional\nDistance 4-10m\nAbort Type: Lower Priority"}
MidRange --> ActionMid["Selector\n(依CD与Energy分发)"]
ActionMid --> HighEnergyMid[Sequence\n【高能蓄力剑】]
HighEnergyMid --> CheckEnMid{"CheckEnergy\n&& CheckCooldown"}
HighEnergyMid --> ConsEnMid["ConsumeEnergy"]
HighEnergyMid --> CastMidSkill["Action: Cast 旋风斩"]
ActionMid --> GuardMid[Sequence\n【防守姿态积攒】]
GuardMid --> CheckCdMid{"CheckCooldown"}
GuardMid --> CastMidShield["Action: Cast 蓄力盾防反"]
%% 远配攻击逻辑
FarRange --> CheckFarRange{"Conditional\nDistance > 10m\nAbort Type: Lower Priority"}
FarRange --> ActionFar["Selector"]
ActionFar --> HighEnergyFar[Sequence\n【高能突进斩】]
HighEnergyFar --> CheckEnFar{"CheckEnergy..."}
HighEnergyFar --> ConsEnFar["ConsumeEnergy"]
HighEnergyFar --> CastFarSkill["Action: 剑气/突击"]
%% 移动走位子树展开
MoveTree --> EscapeMove[Sequence\n极近距离防猝死]
MoveTree --> StrafeMove[Sequence\n中距离周旋博弈]
MoveTree --> PursueMove[Sequence\n远距离强力追赶]
EscapeMove --> CondEsc{"Distance < 3m\n(防穿模/拉扯)"}
EscapeMove --> ActEsc["Action: 持盾后撤步 (Block & Retreat)"]
StrafeMove --> CondStr{"Distance 3-6m"}
StrafeMove --> ActStr["Action: 左右游走测距 (Strafe)"]
PursueMove --> CondPur{"Distance > 6m"}
PursueMove --> ActPur["Action: 大步追寻 (Precise Pursue)"]
%% 连线注释与排版调整
classDef conditional fill:#6b3e2e,stroke:#fff,color:#fff
classDef sequence fill:#3e6b4e,stroke:#fff,color:#fff
classDef selector fill:#3e4c6b,stroke:#fff,color:#fff
classDef action fill:#2e5c6b,stroke:#fff,color:#fff
class Root,AttackTree,MoveTree,ActionNear,ActionMid,ActionFar selector
class CloseRange,MidRange,FarRange,HighEnergyNear,LowEnergyNear,HighEnergyMid,GuardMid,HighEnergyFar,EscapeMove,StrafeMove,PursueMove sequence
class CheckNearRange,CheckMidRange,CheckFarRange,CheckEnNear,CheckLowNear,CheckEnMid,CheckCdMid,CheckEnFar,CondEsc,CondStr,CondPur conditional
class ConsEnNear,CastNearCombo,CastNearSingle,ConsEnMid,CastMidSkill,CastMidShield,ConsEnFar,CastFarSkill,ActEsc,ActStr,ActPur action
```
### 核心解说:
通过这样的设计,**右侧的 `MoveTree`(移动池)永远是“垫底”的默认状态**。只要 Boss 能量没满且所有攻击都在 CD 中,甚至与玩家拉平到了安全距离,他就只会执行后退防守或左右微步周旋。
而一旦**随着时间推移,他的能量槽转好,或者某个强力大连招的 CD 完毕**(并伴随着距离判定 `Within Range` 的满足),左侧强大的 `Conditional Aborts` 就会**立即打断哪怕只跑了一半的移动动画**,令铁骑士如饿虎扑食般猛然发难!这正是硬核动作游戏能够创造极强反馈与压迫感的顶层逻辑秘密。