AIData: AbsolutelyAttack
Part of CombatState. AbsolutelyAttack defines high-priority attacks that can interrupt other behaviors. It contains its own work list (reusing the same Work type as Attack) plus two interrupt mechanisms: CutAllBehavior and CutNextAttack.
Structure
Section titled “Structure”absolutelyAttack├── workList│ └── Work [multiple]├── cutAllBehaviors│ └── CutAllBehavior [multiple]└── cutNextAttacks └── CutNextAttack [multiple]WorkList
Section titled “WorkList”Reuses the same Work type as Attack. See that page for the full property reference.
CutAllBehavior
Section titled “CutAllBehavior”Interrupts all current behaviors when conditions are met. Triggers based on HP ratio and combat time.
| Property | Type | Since | Description |
|---|---|---|---|
id | int | v92 | Unique identifier |
workId | int | v92 | Work ID to execute from the absolutelyAttack workList |
coolTime | int | v92 | Cooldown between triggers |
defenceCount | int | v92 | Required hit count before triggering |
minHpRatio | string | v92 | Minimum HP ratio condition |
maxHpRatio | string | v92 | Maximum HP ratio condition |
minCombatTime | string | v92 | Minimum combat time condition |
maxCombatTime | string | v92 | Maximum combat time condition |
CutNextAttack
Section titled “CutNextAttack”Interrupts only the next queued attack. Lighter-weight than CutAllBehavior.
| Property | Type | Since | Description |
|---|---|---|---|
id | int | v92 | Unique identifier |
workId | int | v92 | Work ID to execute from the absolutelyAttack workList |
coolTime | int | v92 | Cooldown between triggers |
preProcess | string | v92 | Pre-processing condition |
DSL Example
Section titled “DSL Example”ai: create: - huntingZoneId: 9001 id: 600 name: "boss_with_interrupts" combatState: enable: true checkInterval: 1000 absolutelyAttack: workList: - id: 1 desc: "Emergency stomp" normalBehaviorId: 5001 normalBehaviorType: "skill" angerBehaviorId: 5002 angerBehaviorType: "skill" - id: 2 desc: "Counter slash" normalBehaviorId: 5003 normalBehaviorType: "skill" angerBehaviorId: 5004 angerBehaviorType: "skill" cutAllBehaviors: - id: 1 workId: 1 coolTime: 30000 minHpRatio: "0.0" maxHpRatio: "0.5" minCombatTime: "10000" cutNextAttacks: - id: 1 workId: 2 coolTime: 15000 preProcess: "checkTargetDistance"