Resolves UseAbility* callers via shared AN_Ability notifies, qualifies Pass 6 ability statuses, and records AnimBP/Montage dependencies without modifying Unreal assets. Co-authored-by: Cursor <cursoragent@cursor.com>
4.9 KiB
4.9 KiB
13 — Unknowns and Runtime Questions
Status: Draft
- Scope: Unresolved questions after Batches 1–3 and Batch 4A Pass 8.
- Inspection method: Consolidation of Batches 1–3 + Pass 8 animation archaeology.
- Evidence classifications used: Observed Implementation, Documented Intent, Observed Runtime Behavior, Inferred, Unknown.
- Tool or visibility limitations: Semantic Search unavailable; CustomEvent FunctionFlags unread; Montage Notifies array / times unreadable; AnimGraph DSL empty; no PIE.
- Last updated: 2026-07-16
- Current phase: Phase 1 — Static Architecture
- Last completed pass: Pass 8 (Batch 4A)
- Next pass expected to contribute: Pass 7 / 4 / 9 when authorized
Draft tracking
Completed sections
- Batch 1–3 unknowns and resolutions
- Pass 8 resolutions: UseAbility* callers; Amazonian melee anim path; Cleric dead notifies; cleanup via AN_AttackComplete; PerformingWhirlwind not animation-driven
Pending sections
- Frontend/session/enemy AI (Pass 4 / 9)
- GE/cue inventory (Pass 7)
- Runtime test procedures
Evidence still required
- Notify trigger times (Manual Editor)
- Interrupt vs AN_AttackComplete behavior (PIE)
- Live ASC vs DEPRECATED HUD coexistence (PIE)
Resolved in Batch 2–3 (unchanged)
See prior tables in git history / Batch 3 handoff. Key: legacy IA→Server_Ability_*; DefaultAttributes=None; WBP_PlayerHUD is AHUD.
Resolved in Batch 4A (Pass 8)
| Question | Resolution | Classification | Doc |
|---|---|---|---|
| Who calls UseAbility*? | AN_Ability_001–004 AnimNotify BPs → BPI interface on montage owner |
Observed Implementation | 10, 05 |
| Paladin 001 damage via anim callback? | Yes — AN_Ability_001 during Attack_* montages |
Observed Implementation | 10 |
| Paladin block Montage/notify? | No Montage; ABP Block from IsBlocking; End clears |
Observed Implementation | 10 |
| Paladin charge Montage cleanup? | No — ChargeTimeline / ability logic | Observed Implementation | 10 |
| Amazonian working melee anim path? | Begin → Multicast → AN_Ability_001 → UseAbility001 → Authority damage; AN_AttackComplete clears |
Observed Implementation + Observed Runtime Behavior | 10 |
| Weapon collision notify windows? | Not observed — overlaps inside UseAbility* | Observed Implementation (absence) | 10 |
| PerformingWhirlwind set by anim? | No — not in ABP/montages; still Get-only | Observed Implementation | 10 |
| Cleric 001 hidden notify gameplay? | Notify present; UseAbility001 unimplemented — dead |
Observed Implementation | 10 |
| Cleric 002/003/004 anim dependency? | 002/004 notify-driven; 003 timer + vestigial AN_Ability_003; ABP Divine Circle | Observed Implementation | 10 |
| Wizard spell via anim callbacks? | No Wizard montages; ABP locomotion only | Observed Implementation | 10 |
| Gunslinger shared AnimBP/Montage? | No AnimBP dependency | Observed Implementation | 10 |
| CurrentlyAttacking clear on montage complete? | Via AN_AttackComplete → SetIsAttacking; interrupt Unknown |
Observed Implementation / Unknown interrupt | 10 |
| Death anim invoke destroy/respawn? | No — ABP Death presentation; PlayerDeath on character | Observed Implementation | 10 |
Confirmed static defects with runtime questions
| Confirmed finding | Issue | Runtime question |
|---|---|---|
| Enemy ASC vs GetASC | Incomplete Refactor | PIE impact |
| Dual HUD paths | Incomplete Refactor | Which drives bars? |
| DefaultAttributes unused | Partially Implemented | Spawn attribute source? |
| Cleric 004 empty SpawnActor + mana bypass | Existing Baseline Defect | PIE behavior |
| Gameplay hit windows depend on Multicast montage notify eval on server | Technical Debt / static risk | Does server always evaluate notifies? |
| Interrupt may skip AN_AttackComplete | Incomplete Refactor | Stuck CurrentlyAttacking? |
| Cleric AN_Ability_001 / 003 dead receivers | Existing Baseline Defect / Technical Debt | Cosmetic-only primary attack? |
Requires further inspection
| Question | Method | Priority |
|---|---|---|
| Notify trigger times / sections | Manual Editor | Medium |
| Interrupt cleanup | PIE | High |
| GE/cue referencers | Pass 7 | High |
| Enemy BP AI | Pass 9 | High |
| Sessions / frontend | Pass 4 | Medium |
| Paladin block absorb (PlayerHitCheck) | Graph walk (non-anim) | Medium |
Tool and environment limitations
| Item | Impact |
|---|---|
Montage Notifies property unreadable |
Times Unknown; presence via deps |
| AnimNotifyList registry tag empty for BP notifies | Do not trust tag alone |
| AnimGraph / transition DSL empty | State drivers via EventGraph + VariableGet |
| CustomEvent Reliable flags | Unknown |
| No PIE in Batch 4A | Runtime deferred |
Priority order for later verification
- Pass 7 — GE/cue/tag inventory
- Pass 9 — enemy Blueprint AI
- Pass 4 — sessions / frontend
- Controlled PIE — dual HUD, notify interrupt, server montage eval, Cleric 001/004