Files
realms-in-ruin-dev/Documentation/Archaeology/07-AbilityMigrationMatrix.md
T
tedwardsandCursor aa0058a018 Document Pass 11 Phase 1 synthesis and close static archaeology.
Add executive summary and ability migration matrix; finalize evidence index, runtime validation plan, and Phase 1 handoff.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-16 23:40:52 -07:00

59 KiB
Raw Blame History

07 — Ability Migration Matrix

Status: Complete

  • Scope: Final per-character and shared-system ability migration matrix for Phase 1 → Phase 2 handoff. Documentation only.
  • Inspection method: Synthesis of docs 05, 08, 10, 06, 03, 11, 01. No new Unreal archaeology except continuity.
  • Evidence classifications used: Observed Implementation, Documented Intent, Observed Runtime Behavior, Inferred, Unknown.
  • Tool or visibility limitations: CustomEvent Reliability = Unknown — Tool Limitation; notify trigger times = Requires Manual Editor Inspection.
  • Last updated: 2026-07-16
  • Current phase: Phase 1 — Static Architecture (complete)
  • Last completed pass: Pass 11
  • Next pass expected to contribute: Phase 2A/2B when authorized

Disposition vocabulary (only)

  • Preserve behavior, migrate implementation
  • Reconstruct legacy behavior first, then migrate
  • Replace directly with GAS
  • Replace directly with native/shared framework
  • Retain as cosmetic-only path
  • Remove obsolete or dead path
  • Defer pending runtime validation
  • Defer pending design decision

How to read rows

Every row fills all required fields. Where a value does not apply: Not applicable. Where static tools cannot resolve: Unknown — Tool Limitation or Requires Runtime Inspection. Where no interaction exists: None observed.

Network path shorthand: Client IA → Server_Ability_*_Begin → [child] → Multicast_PlayMontage → AN → Authority UseAbility* / SetIsAttacking.

Shared parent path: /Game/_Main/Blueprints/Characters/PlayerCharacters/BP_PlayerCharacterBase


Shared systems

S1 — BP_PlayerCharacterBase input routing

Field Content
Character/system BP_PlayerCharacterBase
Slot shared
Current status Active
Exact entry point IA_Ability_001004 Started → Server_Ability_N_Begin; Completed/Canceled → Server_Ability_N_End
Parent behavior Not applicable (root BP of playables)
Network path Client Enhanced Input → Server custom events
Reliability Unknown — Tool Limitation
Validation Not applicable at routing layer
Resource source Not applicable
Cost mutation None observed
Gameplay output Routes to Begin/End only
Authority location Server (Begin/End events)
Animation dependency None observed at routing layer
Cleanup/end behavior End events exist; base bodies empty
Connected assets /Game/_Main/Blueprints/Player/Inputs/ IMC/IA deps on base
Deprecated dependencies None observed at routing layer
GAS interaction None observed
Known static defect None at routing; Ends mostly empty (Incomplete Refactor)
Runtime question Requires Runtime Inspection — input binding completeness per class
Migration disposition Replace directly with native/shared framework
Prerequisites Phase 2A SoT; 2B activation contract
Migration complexity Medium
Priority P0
Evidence confidence High
Evidence source 05 Shared architecture; 08 Ability flow

S2 — Base Ability 001004 Begin stubs

Field Content
Character/system BP_PlayerCharacterBase
Slot 001004 Begin
Current status Stub
Exact entry point Server_Ability_001004_Begin
Parent behavior Not applicable
Network path Client IA → Server Begin → PrintString "Override Ability N"
Reliability Unknown — Tool Limitation
Validation None observed
Resource source None observed
Cost mutation None observed
Gameplay output PrintString only
Authority location Server
Animation dependency None observed
Cleanup/end behavior Not applicable
Connected assets BP_PlayerCharacterBase EventGraph
Deprecated dependencies None observed
GAS interaction None observed
Known static defect Stub used by Wizard/Gunslinger/Amazonian 002004
Runtime question Not applicable
Migration disposition Replace directly with GAS
Prerequisites 2B shared activation
Migration complexity Low
Priority P1
Evidence confidence High
Evidence source 05 Shared architecture

S3 — Base Ability 001004 End stubs

Field Content
Character/system BP_PlayerCharacterBase
Slot 001004 End
Current status Stub
Exact entry point Server_Ability_001004_End
Parent behavior Not applicable
Network path Client IA Completed/Canceled → Server End → then unconnected
Reliability Unknown — Tool Limitation
Validation None observed
Resource source None observed
Cost mutation None observed
Gameplay output None observed
Authority location Server
Animation dependency None observed
Cleanup/end behavior Missing (empty)
Connected assets BP_PlayerCharacterBase EventGraph
Deprecated dependencies None observed
GAS interaction None observed
Known static defect Incomplete Refactor — cleanup via AN_AttackComplete instead
Runtime question Requires Runtime Inspection — release-cancel mid-ability
Migration disposition Replace directly with native/shared framework
Prerequisites 2B cleanup contract
Migration complexity Medium
Priority P1
Evidence confidence High
Evidence source 05 Shared architecture; 10 cleanup

S4 — Multicast_PlayMontage

Field Content
Character/system BP_PlayerCharacterBase
Slot shared
Current status Active
Exact entry point Multicast_PlayMontage
Parent behavior Not applicable
Network path Server child → Multicast → PlayMontage on Mesh
Reliability Unknown — Tool Limitation
Validation Not applicable
Resource source Not applicable
Cost mutation None observed
Gameplay output Montage playback; enables AnimNotifies
Authority location Multicast (presentation); gameplay via notify Authority gates
Animation dependency Caller-supplied montage asset
Cleanup/end behavior OnCompleted/OnBlendOut/OnInterrupted unwired
Connected assets BP_PlayerCharacterBase; character montages
Deprecated dependencies None observed
GAS interaction None observed
Known static defect Networking Risk — gameplay depends on notify evaluation; interrupt may skip AN_AttackComplete
Runtime question Requires Runtime Inspection — interrupt cleanup; server notify fire
Migration disposition Replace directly with native/shared framework
Prerequisites 2B authority/cleanup contracts
Migration complexity High
Priority P0
Evidence confidence High
Evidence source 05; 10 Shared animation architecture

S5 — PlaySFX

Field Content
Character/system BP_PlayerCharacterBase
Slot shared
Current status Active
Exact entry point Multicast_PlaySFX / PlaySFX helper
Parent behavior Not applicable
Network path Server/caller → Multicast SFX
Reliability Unknown — Tool Limitation
Validation Not applicable
Resource source Not applicable
Cost mutation None observed
Gameplay output Audio presentation
Authority location Multicast / client presentation
Animation dependency None observed
Cleanup/end behavior Not applicable
Connected assets BP_PlayerCharacterBase
Deprecated dependencies None observed
GAS interaction None observed
Known static defect None observed
Runtime question Requires Runtime Inspection — audibility on clients
Migration disposition Retain as cosmetic-only path
Prerequisites None observed
Migration complexity Low
Priority P3
Evidence confidence High
Evidence source 05 Shared architecture

S6 — Multi_SpawnParticle

Field Content
Character/system BP_PlayerCharacterBase
Slot shared
Current status Partial
Exact entry point Multi_SpawnParticle
Parent behavior Not applicable
Network path Multicast particle spawn
Reliability Unknown — Tool Limitation
Validation Not applicable
Resource source Not applicable
Cost mutation None observed
Gameplay output Particle presentation
Authority location Multicast
Animation dependency Optional with ability montages
Cleanup/end behavior Not applicable
Connected assets BP_PlayerCharacterBase; callers Paladin 004 / Cleric 002 with empty EmitterTemplate
Deprecated dependencies None observed
GAS interaction None observed
Known static defect Partially Implemented FX hole on Paladin 004 / Cleric 002
Runtime question Requires Runtime Inspection — particle visibility
Migration disposition Retain as cosmetic-only path
Prerequisites Per-ability FX asset assignment
Migration complexity Low
Priority P3
Evidence confidence High
Evidence source 05 Authority findings

S7 — PlayerDeath

Field Content
Character/system BP_PlayerCharacterBase
Slot death
Current status Active
Exact entry point PlayerDeath; Client_PlayerDeath; HandleDeath
Parent behavior Not applicable
Network path Server death → Client_PlayerDeath presentation
Reliability Unknown — Tool Limitation
Validation IsDead / health checks (call-site dependent)
Resource source DEPRECATED health where callers write it (Amazonian AnyDamage)
Cost mutation Sets IsDead / death presentation
Gameplay output Death state; ABP IsDead → Death
Authority location Server + Client presentation
Animation dependency ABP Death states (per character)
Cleanup/end behavior Server_RespawnPlayer path exists
Connected assets BP_PlayerCharacterBase; character ABPs
Deprecated dependencies DEPRECATED_CurrentHealth (Amazonian inbound)
GAS interaction None observed (ASC Health not bridged)
Known static defect Incomplete Refactor — dual health sources
Runtime question Requires Runtime Inspection — death reachability vs ASC Health
Migration disposition Reconstruct legacy behavior first, then migrate
Prerequisites 2A shared death/damage SoT
Migration complexity High
Priority P0
Evidence confidence High
Evidence source 05; 08; 06

S8 — Server_RespawnPlayer

Field Content
Character/system BP_PlayerCharacterBase / PC_Character
Slot death
Current status Active but Unverified
Exact entry point Server_RespawnPlayer; PlayerRespawn BPI
Parent behavior Not applicable
Network path Server respawn
Reliability Unknown — Tool Limitation
Validation Not fully inventoried beyond event presence
Resource source Requires Runtime Inspection
Cost mutation Requires Runtime Inspection
Gameplay output Respawn pawn/location
Authority location Server
Animation dependency Not applicable
Cleanup/end behavior HUD re-init expected via Possessed delay path
Connected assets BP_PlayerCharacterBase; PC_Character
Deprecated dependencies Possible DEPRECATED HUD re-init
GAS interaction None observed
Known static defect Requires Runtime Inspection for attribute reset
Runtime question Requires Runtime Inspection — Overlay recreation after respawn
Migration disposition Reconstruct legacy behavior first, then migrate
Prerequisites 2A death + 2E HUD
Migration complexity Medium
Priority P1
Evidence confidence Medium
Evidence source 03 PC_Character; 08 Possessed; 11

S9 — Legacy resource validation

Field Content
Character/system BP_PlayerCharacterBase + children
Slot shared
Current status Deprecated but Connected
Exact entry point FCanUseMana; DEPRECATED_*ManaCost / Damage / Health comparisons
Parent behavior Inherited by children
Network path Server ability bodies
Reliability Not applicable
Validation Gate !CurrentlyAttacking && !IsDead; FCanUseMana (where wired)
Resource source DEPRECATED_* floats
Cost mutation Subtract/compare DEPRECATED mana/health
Gameplay output Gate ability execution
Authority location Server
Animation dependency None observed
Cleanup/end behavior Not applicable
Connected assets BP_PlayerCharacterBase variables
Deprecated dependencies All DEPRECATED_* resource vars
GAS interaction None observed — ASC not read
Known static defect Incomplete Refactor — dual with ASC
Runtime question Requires Runtime Inspection — potion ASC vs DEPRECATED combat
Migration disposition Reconstruct legacy behavior first, then migrate
Prerequisites 2A canonical SoT
Migration complexity Very High
Priority P0
Evidence confidence High
Evidence source 05 Resource inventory; 06 boundary

S10 — Legacy HUD update

Field Content
Character/system BP_PlayerCharacterBase → BPI_PlayerController
Slot HUD
Current status Present but Unconnected
Exact entry point Server_UpdateHUD → UpdatePlayerHUD
Parent behavior Base calls; Amazonian after damage
Network path Server → PC UpdatePlayerHUD
Reliability Unknown — Tool Limitation
Validation Not applicable
Resource source DEPRECATED health/mana %
Cost mutation None observed
Gameplay output Intended HUD refresh — receiver unimplemented
Authority location Server caller; PC receiver missing
Animation dependency None observed
Cleanup/end behavior Not applicable
Connected assets BP_PlayerCharacterBase; BPI_PlayerController; PC_Character
Deprecated dependencies DEPRECATED health/mana
GAS interaction Conflicts with Overlay ASC path — no sync
Known static defect Incomplete Refactor — UpdatePlayerHUD bIsImplemented=false
Runtime question Requires Runtime Inspection — confirm no-op
Migration disposition Remove obsolete or dead path
Prerequisites 2A SoT + Overlay consolidation
Migration complexity Medium
Priority P1
Evidence confidence High
Evidence source 05; 11; 03

S11 — AnimNotify UseAbility routing

Field Content
Character/system Shared AN_Ability_001004
Slot shared
Current status Active
Exact entry point AN_Ability_00N Received_Notify → BPI UseAbility00N(GetOwner)
Parent behavior Not applicable
Network path Multicast montage → notify on evaluating machines → Authority Switch in UseAbility*
Reliability Not applicable (notify)
Validation Inside UseAbility* Authority gates
Resource source Per-ability DEPRECATED damage/heal
Cost mutation Per-ability
Gameplay output Damage / heal / spawn
Authority location Notify may fire multi-machine; gameplay Authority-gated
Animation dependency Montage embedded notifies
Cleanup/end behavior Paired with AN_AttackComplete
Connected assets /Game/_Main/Blueprints/Characters/PlayerCharacters/PlayerCharacterRelated/AN_Ability_001004
Deprecated dependencies Per-ability DEPRECATED damage
GAS interaction None observed
Known static defect Networking Risk — server must evaluate montage notifies
Runtime question Requires Runtime Inspection — multi-machine duplicate fire
Migration disposition Replace directly with native/shared framework
Prerequisites 2B hit-window contract
Migration complexity High
Priority P0
Evidence confidence High
Evidence source 10 AnimNotify inventory; 05 Pass 8 note

S12 — AN_AttackComplete cleanup

Field Content
Character/system Shared AN_AttackComplete
Slot shared
Current status Active
Exact entry point AN_AttackComplete → BPI SetIsAttacking → Authority clears CurrentlyAttacking / CanMove
Parent behavior Not applicable
Network path Multicast montage notify → Authority SetIsAttacking
Reliability Not applicable
Validation Authority
Resource source Not applicable
Cost mutation Clears CurrentlyAttacking
Gameplay output Attack lockout release
Authority location Authority inside SetIsAttacking
Animation dependency Must fire at montage end notify
Cleanup/end behavior Primary cleanup for notify-driven attacks
Connected assets /Game/_Main/Blueprints/Characters/PlayerCharacters/PlayerCharacterRelated/AN_AttackComplete
Deprecated dependencies None observed
GAS interaction None observed
Known static defect If interrupt skips notify, CurrentlyAttacking may stick (Inferred)
Runtime question Requires Runtime Inspection — interrupted montage cleanup
Migration disposition Replace directly with native/shared framework
Prerequisites 2B interruption rules
Migration complexity Medium
Priority P0
Evidence confidence High
Evidence source 10; 05

Player_Paladin

Path: /Game/_Main/Blueprints/Characters/PlayerCharacters/PlayerCharacterClasses/Paladin/Player_Paladin

P-001 — Ability 001

Field Content
Character/system Paladin
Slot 001
Current status Implemented
Exact entry point Server_Ability_001_Begin; UseAbility001 via AN_Ability_001
Parent behavior Bypassed (no Parent call)
Network path Client IA → Server Begin → Multicast_PlayMontage → AN_Ability_001 → Authority BoxOverlap ApplyDamage
Reliability Unknown — Tool Limitation
Validation NOT CurrentlyAttacking AND NOT IsDead
Resource source None (no mana cost)
Cost mutation None observed
Gameplay output ApplyDamage(DEPRECATED_Ability001Damage)
Authority location Server Begin; Authority UseAbility001
Animation dependency Attack_A/B/C/D_Fast_Montage + AN_Ability_001 + AN_AttackComplete
Cleanup/end behavior AN_AttackComplete; no local End
Connected assets .../Paladin/AnimMontages/Attack_{A,B,C,D}_Fast_Montage; AN_Ability_001; AN_AttackComplete
Deprecated dependencies DEPRECATED_Ability001Damage
GAS interaction None observed
Known static defect No enemy health consumer (enemy-side defect); interrupt cleanup risk
Runtime question Requires Runtime Inspection — hit registration vs enemy
Migration disposition Preserve behavior, migrate implementation
Prerequisites 2A damage SoT; 2B framework; enemy reception for end-to-end
Migration complexity Medium
Priority P1
Evidence confidence High
Evidence source 05 Player_Paladin; 10

P-002 — Ability 002

Field Content
Character/system Paladin
Slot 002
Current status Partial
Exact entry point Server_Ability_002_Begin; Server_Ability_002_End
Parent behavior Bypassed
Network path Client IA → Server Begin (block state); End clears state
Reliability Unknown — Tool Limitation
Validation Gate attacking/dead
Resource source None observed
Cost mutation None observed
Gameplay output IsBlocking true; ABP Block; hit absorb untraced
Authority location Server
Animation dependency ABP_Paladin Block via IsBlocking (no Montage)
Cleanup/end behavior Server_Ability_002_End clears attacking/CanMove/IsBlocking
Connected assets /Game/_Main/Animations/PlayerCharacters/Human/CharacterClasses/Paladin/ABP_Paladin
Deprecated dependencies None observed
GAS interaction None observed (State.Blocking tag unused)
Known static defect Partial — presentation only
Runtime question Requires Runtime Inspection — does block absorb damage?
Migration disposition Reconstruct legacy behavior first, then migrate
Prerequisites 2A damage rules; design for block absorb
Migration complexity High
Priority P2
Evidence confidence High
Evidence source 05 Paladin Ability 002; 10

P-003 — Ability 003

Field Content
Character/system Paladin
Slot 003
Current status Implemented
Exact entry point Server_Ability_003_Begin; Charge; Client_Charge; ChargeBox overlap
Parent behavior Bypassed
Network path Client IA → Server Begin → FCanUseMana → Charge + Client_Charge; ChargeBox Authority ApplyDamage
Reliability Unknown — Tool Limitation
Validation Gate + FCanUseMana
Resource source DEPRECATED_Ability003ManaCost
Cost mutation FCanUseMana / DEPRECATED mana
Gameplay output ApplyDamage(DEPRECATED_Ability003Damage) via ChargeBox
Authority location Server + Client_Charge presentation
Animation dependency ChargeTimeline (not Montage); ABP Charge via IsCharging
Cleanup/end behavior Not notify-driven; timeline/end path
Connected assets Player_Paladin Charge nodes; ABP_Paladin
Deprecated dependencies DEPRECATED_Ability003ManaCost; DEPRECATED_Ability003Damage
GAS interaction None observed
Known static defect Client_Charge numeric details Unknown — Tool Limitation
Runtime question Requires Runtime Inspection — charge distance/damage timing
Migration disposition Preserve behavior, migrate implementation
Prerequisites 2A mana SoT; 2B
Migration complexity High
Priority P1
Evidence confidence High
Evidence source 05 Paladin Ability 003

P-004 — Ability 004

Field Content
Character/system Paladin
Slot 004
Current status Implemented
Exact entry point Server_Ability_004_Begin; UseAbility004 via AN_Ability_004
Parent behavior Bypassed
Network path Client IA → Server Begin → FCanUseMana → Multicast_PlayMontage → AN → Authority AoE
Reliability Unknown — Tool Limitation
Validation Gate + FCanUseMana
Resource source DEPRECATED_Ability004ManaCost
Cost mutation FCanUseMana
Gameplay output Authority AoE ApplyDamage(DEPRECATED_Ability004Damage); empty particle
Authority location Server Begin; Authority UseAbility004
Animation dependency Paladin_Ability004_Montage; AN_Ability_004; AN_AttackComplete; NS_Paladin_Ability004 may exist on montage
Cleanup/end behavior AN_AttackComplete
Connected assets .../Paladin/AnimMontages/Abilities/Paladin_Ability004_Montage
Deprecated dependencies DEPRECATED_Ability004ManaCost; DEPRECATED_Ability004Damage
GAS interaction None observed
Known static defect Multi_SpawnParticle EmitterTemplate empty (FX hole)
Runtime question Requires Runtime Inspection — AoE radius/damage
Migration disposition Preserve behavior, migrate implementation
Prerequisites 2A; 2B; optional FX fill
Migration complexity Medium
Priority P1
Evidence confidence High
Evidence source 05 Paladin Ability 004; 10

P-melee — Basic attack

Field Content
Character/system Paladin
Slot melee
Current status Implemented
Exact entry point Same as Ability 001
Parent behavior Bypassed
Network path Same as Ability 001
Reliability Unknown — Tool Limitation
Validation Same as Ability 001
Resource source None
Cost mutation None observed
Gameplay output Same as Ability 001
Authority location Same as Ability 001
Animation dependency Same as Ability 001
Cleanup/end behavior Same as Ability 001
Connected assets Same as Ability 001
Deprecated dependencies DEPRECATED_Ability001Damage
GAS interaction None observed
Known static defect Same as Ability 001
Runtime question Same as Ability 001
Migration disposition Preserve behavior, migrate implementation
Prerequisites Same as Ability 001
Migration complexity Medium
Priority P1
Evidence confidence High
Evidence source 05 Basic attack =001

P-passive — Passive

Field Content
Character/system Paladin
Slot passive
Current status Missing
Exact entry point None observed
Parent behavior Not applicable
Network path Not applicable
Reliability Not applicable
Validation Not applicable
Resource source Not applicable
Cost mutation None observed
Gameplay output None observed
Authority location Not applicable
Animation dependency None observed
Cleanup/end behavior Not applicable
Connected assets None observed
Deprecated dependencies None observed
GAS interaction None observed
Known static defect None observed
Runtime question Not applicable
Migration disposition Defer pending design decision
Prerequisites Design decision
Migration complexity Low
Priority P3
Evidence confidence High
Evidence source 05 Passive Missing

P-death — Death

Field Content
Character/system Paladin
Slot death
Current status Inherited
Exact entry point Inherited PlayerDeath (no local AnyDamage)
Parent behavior Inherited
Network path Base death path
Reliability Unknown — Tool Limitation
Validation Base
Resource source DEPRECATED health if damaged via shared path
Cost mutation Base
Gameplay output Base death
Authority location Server
Animation dependency ABP_Paladin Death
Cleanup/end behavior Base respawn
Connected assets ABP_Paladin
Deprecated dependencies Possible DEPRECATED health
GAS interaction None observed
Known static defect Dual health SoT
Runtime question Requires Runtime Inspection — how Paladin takes lethal damage
Migration disposition Reconstruct legacy behavior first, then migrate
Prerequisites 2A
Migration complexity Medium
Priority P1
Evidence confidence Medium
Evidence source 05 Death Inherited

P-HUD — HUD/resource integration

Field Content
Character/system Paladin
Slot HUD
Current status Inherited
Exact entry point Inherited Server_UpdateHUD; native InitOverlay
Parent behavior Inherited
Network path Base DEPRECATED path + ASC Overlay
Reliability Unknown — Tool Limitation
Validation Not applicable
Resource source DEPRECATED floats + ASC attrs
Cost mutation None observed
Gameplay output Dual unsynchronized UI paths
Authority location Mixed
Animation dependency None observed
Cleanup/end behavior Not applicable
Connected assets WBP_Overlay; WBP_PlayerHUD
Deprecated dependencies DEPRECATED health/mana
GAS interaction Overlay ASC only
Known static defect Dual HUD Incomplete Refactor
Runtime question Requires Runtime Inspection — Overlay vs combat resources
Migration disposition Reconstruct legacy behavior first, then migrate
Prerequisites 2A; 2E HUD
Migration complexity High
Priority P1
Evidence confidence High
Evidence source 05; 06; 11

Player_Amazonian

Path: /Game/_Main/Blueprints/Characters/PlayerCharacters/PlayerCharacterClasses/Amazonian/Player_Amazonian

A-001 — Ability 001

Field Content
Character/system Amazonian
Slot 001
Current status Implemented
Exact entry point Server_Ability_001_Begin; UseAbility001 via AN_Ability_001
Parent behavior Bypassed
Network path Client IA → Server Begin → Multicast_PlayMontage → AN → Authority BoxOverlap ApplyDamage
Reliability Unknown — Tool Limitation
Validation Gate attacking/dead
Resource source None
Cost mutation None observed
Gameplay output ApplyDamage(DEPRECATED_Ability001Damage)
Authority location Server Begin; Authority UseAbility001
Animation dependency A_Hu_F_Combat_2H_Attack* montages; AN_Ability_001; AN_AttackComplete
Cleanup/end behavior AN_AttackComplete
Connected assets .../Amazon/AnimMontages/A_Hu_F_Combat_2H_Attack01_Montage (+ Attack02, Attack_Base, Attack)
Deprecated dependencies DEPRECATED_Ability001Damage
GAS interaction None observed
Known static defect Interrupt cleanup risk; enemy reception missing for end-to-end
Runtime question Observed Runtime Behavior: known working melee — preserve as reference
Migration disposition Preserve behavior, migrate implementation
Prerequisites 2A; 2B — use as Phase 2C reference
Migration complexity Medium
Priority P0
Evidence confidence High
Evidence source 05 Amazonian; 08 Observed Runtime Behavior

A-002 — Ability 002

Field Content
Character/system Amazonian
Slot 002
Current status Stub
Exact entry point Inherited Server_Ability_002_Begin
Parent behavior Inherited stub
Network path Client IA → Server PrintString
Reliability Unknown — Tool Limitation
Validation None observed
Resource source None observed
Cost mutation None observed
Gameplay output PrintString only
Authority location Server
Animation dependency None observed
Cleanup/end behavior Base empty End
Connected assets None observed
Deprecated dependencies None observed
GAS interaction None observed
Known static defect Stub
Runtime question Not applicable
Migration disposition Replace directly with GAS
Prerequisites 2B; design decision for slot content
Migration complexity Low
Priority P2
Evidence confidence High
Evidence source 05 Amazonian 002004 Stub

A-003 — Ability 003

Field Content
Character/system Amazonian
Slot 003
Current status Stub
Exact entry point Inherited Server_Ability_003_Begin
Parent behavior Inherited stub
Network path Client IA → Server PrintString
Reliability Unknown — Tool Limitation
Validation None observed
Resource source None observed
Cost mutation None observed
Gameplay output PrintString only
Authority location Server
Animation dependency None observed
Cleanup/end behavior Base empty End
Connected assets None observed
Deprecated dependencies None observed
GAS interaction None observed
Known static defect Stub; PerformingWhirlwind may have been intended (Present but Unconnected)
Runtime question Defer pending design decision — whirlwind intent
Migration disposition Replace directly with GAS
Prerequisites 2B; design for whirlwind
Migration complexity Low
Priority P2
Evidence confidence High
Evidence source 05; whirlwind note

A-004 — Ability 004

Field Content
Character/system Amazonian
Slot 004
Current status Stub
Exact entry point Inherited Server_Ability_004_Begin
Parent behavior Inherited stub
Network path Client IA → Server PrintString
Reliability Unknown — Tool Limitation
Validation None observed
Resource source None observed
Cost mutation None observed
Gameplay output PrintString only
Authority location Server
Animation dependency None observed
Cleanup/end behavior Base empty End
Connected assets None observed
Deprecated dependencies None observed
GAS interaction None observed
Known static defect Stub
Runtime question Not applicable
Migration disposition Replace directly with GAS
Prerequisites 2B; design decision
Migration complexity Low
Priority P2
Evidence confidence High
Evidence source 05 Amazonian Stub

A-melee — Basic attack

Field Content
Character/system Amazonian
Slot melee
Current status Implemented
Exact entry point Same as Ability 001
Parent behavior Bypassed
Network path Same as Ability 001
Reliability Unknown — Tool Limitation
Validation Same as Ability 001
Resource source None
Cost mutation None observed
Gameplay output Same as Ability 001
Authority location Same as Ability 001
Animation dependency Same as Ability 001
Cleanup/end behavior Same as Ability 001
Connected assets Same as Ability 001
Deprecated dependencies DEPRECATED_Ability001Damage
GAS interaction None observed
Known static defect Same as Ability 001
Runtime question Observed Runtime Behavior: known working
Migration disposition Preserve behavior, migrate implementation
Prerequisites Same as Ability 001
Migration complexity Medium
Priority P0
Evidence confidence High
Evidence source 05; 08

A-passive — Passive / Whirlwind

Field Content
Character/system Amazonian
Slot passive
Current status Partial
Exact entry point PerformingWhirlwind Get (AnyDamage gate); never Set
Parent behavior Not applicable
Network path None observed for activation
Reliability Not applicable
Validation PlayerHitCheck when whirlwind (getter only)
Resource source Not applicable
Cost mutation None observed
Gameplay output None observed (setter unconnected)
Authority location Unknown — never activated
Animation dependency Not in AnimBP/montages
Cleanup/end behavior Missing
Connected assets Player_Amazonian variable only
Deprecated dependencies None observed
GAS interaction None observed
Known static defect Present but Unconnected setter
Runtime question Defer pending design decision
Migration disposition Defer pending design decision
Prerequisites Design; then reconstruct or remove
Migration complexity Medium
Priority P3
Evidence confidence High
Evidence source 05 Whirlwind; 10

A-death — Death

Field Content
Character/system Amazonian
Slot death
Current status Partial
Exact entry point ReceiveAnyDamage → subtract DEPRECATED_CurrentHealth → Server_UpdateHUD → PlayerDeath if ≤0
Parent behavior Local override path to base PlayerDeath
Network path Damage → local health → PlayerDeath
Reliability Unknown — Tool Limitation
Validation PlayerHitCheck when whirlwind
Resource source DEPRECATED_CurrentHealth
Cost mutation Writes DEPRECATED_CurrentHealth
Gameplay output Death when ≤0
Authority location Server/local AnyDamage path
Animation dependency ABP_Amazon Death
Cleanup/end behavior Base
Connected assets Player_Amazonian ReceiveAnyDamage; ABP_Amazon
Deprecated dependencies DEPRECATED_CurrentHealth
GAS interaction None observed — ASC Health unsynced
Known static defect Partial legacy health; dual SoT
Runtime question Requires Runtime Inspection — ASC vs DEPRECATED death
Migration disposition Reconstruct legacy behavior first, then migrate
Prerequisites 2A SoT
Migration complexity High
Priority P0
Evidence confidence High
Evidence source 05 Amazonian Death

A-HUD — HUD/resource integration

Field Content
Character/system Amazonian
Slot HUD
Current status Active
Exact entry point Server_UpdateHUD after damage; native InitOverlay
Parent behavior Calls shared base HUD
Network path Server_UpdateHUD (receiver unimplemented) + Overlay
Reliability Unknown — Tool Limitation
Validation Not applicable
Resource source DEPRECATED health + ASC
Cost mutation None observed
Gameplay output Dual path; legacy receiver dead
Authority location Mixed
Animation dependency None observed
Cleanup/end behavior Not applicable
Connected assets WBP_Overlay; base HUD
Deprecated dependencies DEPRECATED_CurrentHealth
GAS interaction Overlay ASC
Known static defect UpdatePlayerHUD unimplemented
Runtime question Requires Runtime Inspection
Migration disposition Reconstruct legacy behavior first, then migrate
Prerequisites 2A; 2E
Migration complexity Medium
Priority P1
Evidence confidence High
Evidence source 05 Amazonian HUD Active; 11

Player_Cleric

Path: /Game/_Main/Blueprints/Characters/PlayerCharacters/PlayerCharacterClasses/Cleric/Player_Cleric

C-001 — Ability 001

Field Content
Character/system Cleric
Slot 001
Current status Partial
Exact entry point Server_Ability_001_Begin; AN_Ability_001 → UseAbility001 unimplemented
Parent behavior Bypassed
Network path Client IA → Server Begin → Multicast_PlayMontage → AN (dead receiver)
Reliability Unknown — Tool Limitation
Validation Gate attacking/dead; CanMove false
Resource source None
Cost mutation None observed
Gameplay output Montage only — no hit
Authority location Server Begin
Animation dependency Cleric_PrimaryAttack_* montages; AN_Ability_001; AN_AttackComplete
Cleanup/end behavior AN_AttackComplete still clears attacking
Connected assets Cleric primary attack montages; AN_Ability_001
Deprecated dependencies None for damage (missing)
GAS interaction None observed
Known static defect Notify Present; Receiver Unimplemented
Runtime question Requires Runtime Inspection — montage-only feel
Migration disposition Reconstruct legacy behavior first, then migrate
Prerequisites Implement UseAbility001 or redesign; 2B
Migration complexity Medium
Priority P1
Evidence confidence High
Evidence source 05 Cleric Ability 001; 10

C-002 — Ability 002

Field Content
Character/system Cleric
Slot 002
Current status Partial
Exact entry point Server_Ability_002_Begin; UseAbility002 via AN_Ability_002
Parent behavior Bypassed
Network path Client IA → Server Begin → FCanUseMana → Multicast → AN → Authority heal
Reliability Unknown — Tool Limitation
Validation Gate + FCanUseMana
Resource source DEPRECATED_Ability002ManaCost
Cost mutation FCanUseMana
Gameplay output RecoverPlayerHealth(DEPRECATED_Ability002Damage as heal amount); empty particle
Authority location Authority UseAbility002
Animation dependency Cleric_Ability002_Montage; AN_Ability_002; AN_AttackComplete
Cleanup/end behavior AN_AttackComplete
Connected assets .../Cleric/AnimMontages/Abilities/Cleric_Ability002_Montage
Deprecated dependencies DEPRECATED_Ability002ManaCost; DEPRECATED_Ability002Damage; DEPRECATED_RecoverPlayerHealth
GAS interaction None observed
Known static defect FX hole (empty particle)
Runtime question Requires Runtime Inspection — heal amount / target
Migration disposition Reconstruct legacy behavior first, then migrate
Prerequisites 2A heal SoT; 2B
Migration complexity Medium
Priority P1
Evidence confidence High
Evidence source 05 Cleric Ability 002

C-003 — Ability 003

Field Content
Character/system Cleric
Slot 003
Current status Implemented
Exact entry point Server_Ability_003_Begin/End; ConcentrateHandle; EndConcentrate
Parent behavior Bypassed
Network path Client IA → Server Begin → mana≥cost → DivineCircleActive + SetTimer 0.25 ConcentrateHandle → ApplyDamage; End → EndConcentrate
Reliability Unknown — Tool Limitation
Validation Mana≥cost
Resource source DEPRECATED_Ability003ManaCost
Cost mutation Mana compare/cost
Gameplay output ApplyDamage in timer; ABP Divine Circle
Authority location Server timer
Animation dependency Cleric_Ability003_Montage (timer byproduct); ABP Divine Circle; AN_Ability_003 vestigial
Cleanup/end behavior Server_Ability_003_End → EndConcentrate
Connected assets Cleric_Ability003_Montage; ABP_Cleric
Deprecated dependencies DEPRECATED_Ability003ManaCost; damage vars
GAS interaction None observed
Known static defect AN_Ability_003 → UseAbility003 dead/vestigial
Runtime question Requires Runtime Inspection — tick damage rate
Migration disposition Preserve behavior, migrate implementation
Prerequisites 2A; 2B; remove vestigial notify or wire intentionally
Migration complexity High
Priority P1
Evidence confidence High
Evidence source 05 Cleric Ability 003; 10

C-004 — Ability 004

Field Content
Character/system Cleric
Slot 004
Current status Partial
Exact entry point Server_Ability_004_Begin; UseAbility004 via AN_Ability_004
Parent behavior Bypassed
Network path Client IA → Server Begin → FCanUseMana called but Branch Condition=literal true → Multicast → AN → SpawnActor
Reliability Unknown — Tool Limitation
Validation Gate; mana bypassed
Resource source DEPRECATED_Ability004ManaCost unused
Cost mutation Bypassed (literal true)
Gameplay output SpawnActor Class empty — broken
Authority location Authority UseAbility004
Animation dependency Cleric_Ability004_Montage; AN_Ability_004; AN_AttackComplete
Cleanup/end behavior AN_AttackComplete
Connected assets Cleric_Ability004_Montage
Deprecated dependencies DEPRECATED_Ability004ManaCost unused
GAS interaction None observed
Known static defect Existing Baseline Defect — mana bypass + empty SpawnActor
Runtime question Requires Runtime Inspection — confirms no projectile
Migration disposition Reconstruct legacy behavior first, then migrate
Prerequisites Design projectile class; fix mana gate; 2B
Migration complexity High
Priority P1
Evidence confidence High
Evidence source 05 Cleric Ability 004

C-melee — Basic attack

Field Content
Character/system Cleric
Slot melee
Current status Partial
Exact entry point Ability 001 montage path
Parent behavior Bypassed
Network path Same as Ability 001
Reliability Unknown — Tool Limitation
Validation Same as Ability 001
Resource source None
Cost mutation None observed
Gameplay output Missing hit
Authority location Server Begin only
Animation dependency PrimaryAttack montages
Cleanup/end behavior AN_AttackComplete
Connected assets Cleric_PrimaryAttack_*
Deprecated dependencies None observed
GAS interaction None observed
Known static defect Same as Ability 001
Runtime question Requires Runtime Inspection
Migration disposition Reconstruct legacy behavior first, then migrate
Prerequisites Same as Ability 001
Migration complexity Medium
Priority P1
Evidence confidence High
Evidence source 05 Basic attack Partial

C-passive — Passive

Field Content
Character/system Cleric
Slot passive
Current status Missing
Exact entry point None observed
Parent behavior Not applicable
Network path Not applicable
Reliability Not applicable
Validation Not applicable
Resource source Not applicable
Cost mutation None observed
Gameplay output None observed
Authority location Not applicable
Animation dependency None observed
Cleanup/end behavior Not applicable
Connected assets Unused locals EnemyFound/ClosestEnemy/IsBlocking declared
Deprecated dependencies None observed
GAS interaction None observed
Known static defect Unused locals (Technical Debt)
Runtime question Not applicable
Migration disposition Defer pending design decision
Prerequisites Design
Migration complexity Low
Priority P3
Evidence confidence High
Evidence source 05 Passive Missing

C-death — Death

Field Content
Character/system Cleric
Slot death
Current status Inherited
Exact entry point Inherited PlayerDeath
Parent behavior Inherited
Network path Base
Reliability Unknown — Tool Limitation
Validation Base
Resource source Base DEPRECATED/ASC dual
Cost mutation Base
Gameplay output Base death
Authority location Server
Animation dependency ABP_Cleric Death
Cleanup/end behavior Base
Connected assets ABP_Cleric
Deprecated dependencies Possible DEPRECATED health
GAS interaction None observed
Known static defect Dual SoT
Runtime question Requires Runtime Inspection
Migration disposition Reconstruct legacy behavior first, then migrate
Prerequisites 2A
Migration complexity Medium
Priority P1
Evidence confidence Medium
Evidence source 05 Death Inherited

C-HUD — HUD/resource integration

Field Content
Character/system Cleric
Slot HUD
Current status Inherited
Exact entry point Inherited Server_UpdateHUD; InitOverlay
Parent behavior Inherited
Network path Dual path
Reliability Unknown — Tool Limitation
Validation Not applicable
Resource source DEPRECATED + ASC
Cost mutation None observed
Gameplay output Dual unsynchronized
Authority location Mixed
Animation dependency None observed
Cleanup/end behavior Not applicable
Connected assets WBP_Overlay; GE_Cleric_DefaultAttributes 0 referencers
Deprecated dependencies DEPRECATED mana/health
GAS interaction Overlay ASC; orphan GE
Known static defect Dual HUD; orphan default GE
Runtime question Requires Runtime Inspection
Migration disposition Reconstruct legacy behavior first, then migrate
Prerequisites 2A; 2E
Migration complexity High
Priority P1
Evidence confidence High
Evidence source 05; 06; 11

Player_Wizard

Path: /Game/_Main/Blueprints/Characters/PlayerCharacters/PlayerCharacterClasses/Wizard/Player_Wizard

W-001 through W-004 — Abilities (identical stub profile)

Field Content
Character/system Wizard
Slot 001 / 002 / 003 / 004 (same)
Current status Stub
Exact entry point Inherited Server_Ability_*_Begin only
Parent behavior Inherited
Network path Client IA → Server PrintString
Reliability Unknown — Tool Limitation
Validation None observed
Resource source None observed
Cost mutation None observed
Gameplay output PrintString only
Authority location Server
Animation dependency None observed (no Wizard ability montages)
Cleanup/end behavior Base empty End
Connected assets None for abilities; Present but Unconnected: NS_Wizard_Ability001, GE_Wizard_DefaultAttributes, BP_PlayerProjectile
Deprecated dependencies None in ability graphs
GAS interaction None observed (orphan GE not applied)
Known static defect No Server_Ability child implementations
Runtime question Defer pending design decision — do not infer from orphans
Migration disposition Replace directly with GAS
Prerequisites 2B; design decision for spell kit
Migration complexity High
Priority P2
Evidence confidence High
Evidence source 05 Player_Wizard

W-melee — Basic attack

Field Content
Character/system Wizard
Slot melee
Current status Stub
Exact entry point Inherited Ability 001 stub
Parent behavior Inherited
Network path PrintString
Reliability Unknown — Tool Limitation
Validation None observed
Resource source None observed
Cost mutation None observed
Gameplay output PrintString only
Authority location Server
Animation dependency None observed
Cleanup/end behavior Base empty End
Connected assets None observed
Deprecated dependencies None observed
GAS interaction None observed
Known static defect Stub
Runtime question Not applicable
Migration disposition Replace directly with GAS
Prerequisites 2B; design
Migration complexity Medium
Priority P2
Evidence confidence High
Evidence source 05

W-passive — Passive

Field Content
Character/system Wizard
Slot passive
Current status Missing
Exact entry point None observed
Parent behavior Not applicable
Network path Not applicable
Reliability Not applicable
Validation Not applicable
Resource source Not applicable
Cost mutation None observed
Gameplay output None observed
Authority location Not applicable
Animation dependency None observed
Cleanup/end behavior Not applicable
Connected assets Unused locals EnemyFound, IsBlocking, ClosestEnemy
Deprecated dependencies None observed
GAS interaction None observed
Known static defect Unused locals
Runtime question Not applicable
Migration disposition Defer pending design decision
Prerequisites Design
Migration complexity Low
Priority P3
Evidence confidence High
Evidence source 05

W-death — Death

Field Content
Character/system Wizard
Slot death
Current status Inherited
Exact entry point Inherited PlayerDeath; BeginPlay no Parent (skips InitialSpawnLocation)
Parent behavior Tick/Overlap call Parent; BeginPlay bypasses
Network path Base
Reliability Unknown — Tool Limitation
Validation Base
Resource source Base
Cost mutation Base
Gameplay output Base death
Authority location Server
Animation dependency ABP_Wizard Death
Cleanup/end behavior Base
Connected assets ABP_Wizard
Deprecated dependencies Possible DEPRECATED health
GAS interaction None observed
Known static defect BeginPlay skips Parent InitialSpawnLocation
Runtime question Requires Runtime Inspection — respawn location
Migration disposition Reconstruct legacy behavior first, then migrate
Prerequisites 2A; fix BeginPlay Parent call
Migration complexity Medium
Priority P2
Evidence confidence High
Evidence source 05; 08 Wizard BeginPlay

W-HUD — HUD/resource integration

Field Content
Character/system Wizard
Slot HUD
Current status Inherited
Exact entry point Inherited dual HUD
Parent behavior Inherited
Network path Dual path
Reliability Unknown — Tool Limitation
Validation Not applicable
Resource source DEPRECATED + ASC
Cost mutation None observed
Gameplay output Dual unsynchronized
Authority location Mixed
Animation dependency None observed
Cleanup/end behavior Not applicable
Connected assets WBP_Overlay; GE_Wizard_DefaultAttributes unreferenced
Deprecated dependencies DEPRECATED floats
GAS interaction Overlay ASC
Known static defect Dual HUD; orphan GE
Runtime question Requires Runtime Inspection
Migration disposition Reconstruct legacy behavior first, then migrate
Prerequisites 2A; 2E
Migration complexity Medium
Priority P2
Evidence confidence High
Evidence source 05; 06

W-orphans — Unconnected spell content (not ability slots)

Field Content
Character/system Wizard
Slot shared (orphans)
Current status Present but Unconnected
Exact entry point None observed
Parent behavior Not applicable
Network path Not applicable
Reliability Not applicable
Validation Not applicable
Resource source Not applicable
Cost mutation None observed
Gameplay output None observed
Authority location Not applicable
Animation dependency None observed
Cleanup/end behavior Not applicable
Connected assets NS_Wizard_Ability001; GE_Wizard_DefaultAttributes; BP_PlayerProjectile
Deprecated dependencies None observed
GAS interaction Orphan GE Present but Unreferenced
Known static defect Must not define final ability from these alone
Runtime question Defer pending design decision
Migration disposition Defer pending design decision
Prerequisites Design review
Migration complexity Medium
Priority P3
Evidence confidence High
Evidence source 05 Unwired assets

Player_Gunslinger

Path: /Game/_Main/Blueprints/Characters/PlayerCharacters/PlayerCharacterClasses/Gunslinger/Player_Gunslinger

G-001 through G-004 — Abilities

Field Content
Character/system Gunslinger
Slot 001 / 002 / 003 / 004 (same)
Current status Stub
Exact entry point Inherited Server_Ability_*_Begin
Parent behavior Inherited; BeginPlay/Tick/Overlap call Parent
Network path Client IA → Server PrintString
Reliability Unknown — Tool Limitation
Validation None observed
Resource source None observed
Cost mutation None observed
Gameplay output PrintString only
Authority location Server
Animation dependency None observed (no AnimBP)
Cleanup/end behavior Base empty End
Connected assets IsDataOnly=True; deps = base only
Deprecated dependencies None observed
GAS interaction None observed; no GE_Gunslinger
Known static defect Data-only; missing from character select
Runtime question Not applicable until selectable
Migration disposition Replace directly with GAS
Prerequisites Char-select entry (2E); 2B framework; design kit
Migration complexity Very High
Priority P2
Evidence confidence High
Evidence source 05 Gunslinger; 08; 11

G-melee — Basic attack

Field Content
Character/system Gunslinger
Slot melee
Current status Stub
Exact entry point Inherited stub
Parent behavior Inherited
Network path PrintString
Reliability Unknown — Tool Limitation
Validation None observed
Resource source None observed
Cost mutation None observed
Gameplay output PrintString only
Authority location Server
Animation dependency None observed
Cleanup/end behavior Base empty End
Connected assets None observed
Deprecated dependencies None observed
GAS interaction None observed
Known static defect Stub
Runtime question Not applicable
Migration disposition Replace directly with GAS
Prerequisites Design; 2B
Migration complexity High
Priority P2
Evidence confidence High
Evidence source 05

G-passive — Passive

Field Content
Character/system Gunslinger
Slot passive
Current status Missing
Exact entry point None observed
Parent behavior Not applicable
Network path Not applicable
Reliability Not applicable
Validation Not applicable
Resource source Not applicable
Cost mutation None observed
Gameplay output None observed
Authority location Not applicable
Animation dependency None observed
Cleanup/end behavior Not applicable
Connected assets None observed
Deprecated dependencies None observed
GAS interaction None observed
Known static defect None observed
Runtime question Not applicable
Migration disposition Defer pending design decision
Prerequisites Design
Migration complexity Low
Priority P3
Evidence confidence High
Evidence source 05

G-death — Death

Field Content
Character/system Gunslinger
Slot death
Current status Inherited
Exact entry point Inherited PlayerDeath
Parent behavior Inherited (Parent called on BeginPlay)
Network path Base
Reliability Unknown — Tool Limitation
Validation Base
Resource source Base
Cost mutation Base
Gameplay output Base death
Authority location Server
Animation dependency Inherited base only (no AnimBP)
Cleanup/end behavior Base
Connected assets None character-specific
Deprecated dependencies Possible DEPRECATED health
GAS interaction None observed
Known static defect No AnimBP death presentation
Runtime question Requires Runtime Inspection if ever playable
Migration disposition Reconstruct legacy behavior first, then migrate
Prerequisites 2A; AnimBP creation
Migration complexity High
Priority P2
Evidence confidence Medium
Evidence source 05; 10 Gunslinger none

G-HUD — HUD/resource integration

Field Content
Character/system Gunslinger
Slot HUD
Current status Inherited
Exact entry point Inherited dual HUD
Parent behavior Inherited
Network path Dual path
Reliability Unknown — Tool Limitation
Validation Not applicable
Resource source DEPRECATED + ASC
Cost mutation None observed
Gameplay output Dual unsynchronized
Authority location Mixed
Animation dependency None observed
Cleanup/end behavior Not applicable
Connected assets WBP_Overlay; no GE_Gunslinger
Deprecated dependencies DEPRECATED floats
GAS interaction Overlay ASC; Missing default GE
Known static defect No GE_Gunslinger; not in select UI
Runtime question Requires Runtime Inspection if selectable
Migration disposition Reconstruct legacy behavior first, then migrate
Prerequisites 2A defaults; 2E select UI
Migration complexity Medium
Priority P2
Evidence confidence High
Evidence source 05; 06; 11

Character reconstruction order (Phase 2C)

Evidence supports: Amazonian Ability 001 → Paladin → Cleric → Wizard → Gunslinger.

Order Why
1 Amazonian 001 Observed Runtime Behavior reference; simplest Implemented melee
2 Paladin Largest Implemented set to preserve
3 Cleric Richest surface + known defects; reconstruct before migrate
4 Wizard Stubs + design-gated orphans
5 Gunslinger Data-only + missing select UI

Shared-framework migration disposition summary

Concern Disposition
Input → activation Replace directly with native/shared framework
Cost / cooldown / targeting Replace directly with native/shared framework (then GAS)
Multicast-driven gameplay Replace directly with native/shared framework
AnimNotify hit timing Preserve behavior references; migrate off cosmetic multicast evaluation
Dual resources Reconstruct SoT first (2A)
Legacy HUD Remove obsolete or dead path after Overlay consolidation
PrintString stubs Replace directly with GAS
Cosmetic SFX/VFX helpers Retain as cosmetic-only path