Document Batch 4A Pass 8 animation archaeology: AnimNotify callbacks and ability cleanup wiring.
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>
This commit is contained in:
@@ -6,8 +6,8 @@
|
||||
- **Inspection method:** Read-only AssetTools + BlueprintTools + ObjectTools; connected subgraphs on all five playables + base correlation.
|
||||
- **Last updated:** 2026-07-16
|
||||
- **Current phase:** Phase 1 — Static Architecture
|
||||
- **Last completed pass:** Pass 6 (Batch 3)
|
||||
- **Next pass expected to contribute:** Batch 4 Pass 7 / Pass 8
|
||||
- **Last completed pass:** Pass 8 (Batch 4A)
|
||||
- **Next pass expected to contribute:** Pass 7 / Pass 4 / Pass 9 when authorized
|
||||
|
||||
## Draft tracking
|
||||
|
||||
@@ -17,18 +17,16 @@
|
||||
- Shared input / RPC / death / HUD / multicast architecture
|
||||
- Interface BPI_PlayerCharacter surface
|
||||
- Override matrix (which Server_Ability events children implement)
|
||||
- **Pass 6:** Full Ability 001–004 path reconstruction per character — see `05-LegacyAbilityArchitecture.md`
|
||||
- Charge / DivineCircle / Whirlwind / UseAbility hit paths inventoried
|
||||
- Montage dependency seeds — see `10-AnimationDependencies.md`
|
||||
- Pass 6 Ability 001–004 path reconstruction
|
||||
- **Pass 8:** AnimBP/Montage/AnimNotify callback wiring — see `10-AnimationDependencies.md`
|
||||
|
||||
### Pending sections
|
||||
- AnimNotify → UseAbility wiring (Pass 8)
|
||||
- Weapon component deep dive if separate assets exist beyond overlaps
|
||||
- Gunslinger intended design (no static implementation)
|
||||
|
||||
### Evidence still required
|
||||
- Exact who calls UseAbility* (likely AnimNotify — Pass 8)
|
||||
- PlayerDeath callers beyond Amazonian ReceiveAnyDamage
|
||||
- Notify trigger times (Manual Editor)
|
||||
- Interrupt cleanup if AN_AttackComplete skipped
|
||||
|
||||
---
|
||||
|
||||
@@ -103,10 +101,11 @@ Base Begin stubs PrintString `"Override Ability N"`. Base End stubs empty.
|
||||
|-------|--------|
|
||||
| Graphs | UCS, EventGraph, GetPlayerPaladinREF, PlayerHitCheck |
|
||||
| Local vars | Ability001Montages, ChargeStartLoc, ChargeFinishLoc, IsCharging, IsBlocking |
|
||||
| AnimBP | ABP_Paladin |
|
||||
| Ability events implemented | Server_001 Begin; 002 Begin+End; 003 Begin; 004 Begin; UseAbility001/004; Charge; Client_Charge |
|
||||
| AnimBP | ABP_Paladin (`.../Paladin/ABP_Paladin`) — Locomotion: Idle/WalkRun/Charge/Block/Death |
|
||||
| Ability events | Server_001 Begin; 002 Begin+End; 003 Begin; 004 Begin; UseAbility001/004; Charge; Client_Charge |
|
||||
| Parent Call on Ability overrides | **No** |
|
||||
| Pass 6 status | 001 Implemented; 002 Partial (block); 003 Implemented (charge+damage); 004 Implemented (empty particle template) |
|
||||
| Pass 8 | AN_Ability_001/004 + AN_AttackComplete on montages; IsBlocking drives Block state |
|
||||
|
||||
### Amazonian
|
||||
|
||||
@@ -114,9 +113,10 @@ Base Begin stubs PrintString `"Override Ability N"`. Base End stubs empty.
|
||||
|-------|--------|
|
||||
| Graphs | UCS, EventGraph, GetPlayerAmazonREF, PlayerHitCheck |
|
||||
| Local vars | DynamicMaterials, Ability001Montage, PerformingWhirlwind |
|
||||
| AnimBP (deps) | ABP_Amazon |
|
||||
| AnimBP (deps) | ABP_Amazon — Locomotion Idle/WalkRun/Death only |
|
||||
| Ability events | Server_001 Begin; UseAbility001; ReceiveAnyDamage |
|
||||
| Pass 6 status | 001 Implemented (= known working melee); 002–004 inherited stubs; PerformingWhirlwind never Set |
|
||||
| Pass 8 | AN_Ability_001 + AN_AttackComplete on all four attack montages; whirlwind not in AnimBP |
|
||||
|
||||
### Cleric
|
||||
|
||||
@@ -127,6 +127,7 @@ Base Begin stubs PrintString `"Override Ability N"`. Base End stubs empty.
|
||||
| Ability events | Server_001–004 Begin; Server_003 End; UseAbility002/004; ConcentrateHandle; EndConcentrate |
|
||||
| Parent Call on Ability overrides | **No** |
|
||||
| Pass 6 status | 001 Partial (montage only); 002 Partial heal (empty particle); 003 Implemented DivineCircle; 004 Broken spawn + mana bypass |
|
||||
| Pass 8 | AN_Ability_001/003 dead (UseAbility unimplemented); 002/004 notify-live; ABP Divine Circle state; AN_AttackComplete on all ability montages |
|
||||
|
||||
### Wizard
|
||||
|
||||
@@ -137,6 +138,7 @@ Base Begin stubs PrintString `"Override Ability N"`. Base End stubs empty.
|
||||
| Ability events | **None** implemented (BeginPlay/Tick/Overlap only) |
|
||||
| BeginPlay Parent | **No** (skips base InitialSpawnLocation set) |
|
||||
| Pass 6 status | 001–004 inherited PrintString stubs; NS_Wizard_Ability001 / GE_Wizard_DefaultAttributes / BP_PlayerProjectile unwired |
|
||||
| Pass 8 | ABP_Wizard locomotion+death only; **no** Wizard montages in class folder |
|
||||
|
||||
### Gunslinger
|
||||
|
||||
@@ -148,6 +150,7 @@ Base Begin stubs PrintString `"Override Ability N"`. Base End stubs empty.
|
||||
| Dependencies | Only BP_PlayerCharacterBase |
|
||||
| BeginPlay/Tick/Overlap | Call Parent |
|
||||
| Pass 6 status | 001–004 inherited PrintString stubs; no weapon/projectile/AnimBP/GE |
|
||||
| Pass 8 | Confirmed: no AnimBP dependency; no shared attack montage path |
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user