# Master Blueprint Index — UE5 Modular Game Framework **Version:** 3.4 | **Generated:** 2026-05-22 | **Total Files:** 147 numbered + 1 starter + 1 supplementary (149 total specs) | **C++:** 27 source files (15 full + 10 stubs + 2 utility) This document is the canonical index of every Blueprint specification file in the framework. Each entry links to its full spec document and includes: file name, asset type, parent class, purpose summary, and key dependencies. ### Companion Documents | Document | Path | Purpose | |----------|------|---------| | **Remaining BP Build Order** | [`../checklists/remaining-blueprint-build-order.md`](../checklists/remaining-blueprint-build-order.md) | Prioritized list of every BP asset to build, with C++ status per system | | **C++/BP Status Grid** | [`../checklists/cpp-blueprint-status.md`](../checklists/cpp-blueprint-status.md) | Complete 135-system grid: C++ status, BP spec status, remaining assets | | **C++ Integration Guide** | [`../developer/cpp-integration-guide.md`](../developer/cpp-integration-guide.md) | Per-C++-class setup steps, usage patterns, BP child requirements | | **Prototype Setup Guide** | [`../developer/project-prototype-guide.md`](../developer/project-prototype-guide.md) | Step-by-step from blank project to working prototype | --- ## Directory Map ``` docs/blueprints/ ├── INDEX.md ← THIS FILE ├── TEMPLATE.md ← Spec template v2.0 ├── AUDIT_REPORT.md ← Clean slate audit │ ├── 00-project-setup/ ← Project Setup & Starter Assets (1 file) │ └── GI_StarterGameInstance.md ← Minimal GameInstance; tag validation entry point ├── 01-core/ ← Foundation (7 files + 11 Data Table CSVs + 1 Macro Library) │ ├── data-tables/ ← Per-category Gameplay Tag Data Tables (NEW — replaces DT_ProjectTags.csv) │ │ ├── DT_Tags_Player.csv (34 tags) │ │ ├── DT_Tags_Interaction.csv (36 tags) │ │ ├── DT_Tags_Item.csv (26 tags) │ │ ├── DT_Tags_Narrative.csv (48 tags) │ │ ├── DT_Tags_AI.csv (23 tags) │ │ ├── DT_Tags_Save.csv (22 tags) │ │ ├── DT_Tags_Environment.csv (30 tags) │ │ ├── DT_Tags_Combat.csv (26 tags) │ │ ├── DT_Tags_State.csv (39 tags) │ │ ├── DT_Tags_Audio.csv (30 tags) │ │ └── DT_Tags_Achievement.csv (20 tags) │ └── DT_ProjectTags.csv [DEPRECATED — migration reference only] ├── 02-player/ ← Player State & Embodiment (8 files) ├── 03-interaction/ ← Interaction & World Manipulation (8 files) ├── 04-inventory/ ← Inventory, Items & Collectibles (11 files) ├── 05-saveload/ ← Save, Load, Persistence & Death Loop (9 files) ├── 06-ui/ ← UI, Menus & Diegetic Presentation (14 files) ├── 07-narrative/ ← Narrative, Dialogue, Objective & Choice (11 files) ├── 08-weapons/ ← Weapon, Equipment & Damage (11 files) ├── 09-ai/ ← AI, Perception & Encounters (9 files) ├── 10-adaptive/ ← Adaptive Environment, Atmosphere & Scare (15 files) ├── 11-meta/ ← Achievements, Progression & Meta (2 files) ├── 12-settings/ ← Settings, Accessibility & Platform (2 files) ├── 13-polish/ ← Tutorial, Loading, Credits, Debug (9 files) ├── 14-data-assets/ ← Data Asset definitions (16 files) ├── 15-input/ ← Enhanced Input System (1 file) ├── 16-state/ ← State Management (2 files) └── 17-capture/ ← Planar Capture System (12 files) ``` --- ## Full Index — Sorted by File Number | # | File Name | Asset Type | Parent Class | Short Purpose | Category | |---|-----------|-----------|-------------|---------------|----------| | — | [`GI_StarterGameInstance`](00-project-setup/GI_StarterGameInstance.md) | `GI_` Game Instance | `GameInstance` | Minimal GameInstance; loads DA_GameTagRegistry, validates tags, broadcasts OnFrameworkReady | 00-project-setup | | 01 | [`01_DA_GameTagRegistry`](01-core/01_DA_GameTagRegistry.md) | `DA_` Data Asset | `PrimaryDataAsset` | Central gameplay tag registry; maps tags to data/assets | 01-core | | 02 | [`02_FL_GameUtilities`](01-core/02_FL_GameUtilities.md) | `FL_` Function Library | `BlueprintFunctionLibrary` | Shared utility functions (logging, tag queries, math) | 01-core | | — | [`02a_ML_GameUtilities`](01-core/02a_ML_GameUtilities.md) | `ML_` Macro Library | `MacroLibrary` | **BP-Only companion:** 24 macros (no C++ required) — subsystem access, math, tags, text, screen, debug | 01-core | | 03 | [`03_I_InterfaceLibrary`](01-core/03_I_InterfaceLibrary.md) | `I_` Interface | `Interface` | All framework interfaces (I_Damageable, I_Interactable, I_Persistable, etc.) | 01-core | | 04 | [`04_GI_GameFramework`](01-core/04_GI_GameFramework.md) | `GI_` Game Instance | `GameInstance` | Application kernel; owns subsystems, game phases, platform init | 01-core | | 05 | [`05_GM_CoreGameMode`](01-core/05_GM_CoreGameMode.md) | `GM_` Game Mode | `GameModeBase` | Core game mode; spawns player, sets default classes, pause control | 01-core | | 06 | [`06_GS_CoreGameState`](01-core/06_GS_CoreGameState.md) | `GS_` Game State | `GameStateBase` | Shared game state; tracks global flags, phase, timer | 01-core | | 07 | [`07_DA_ItemData`](01-core/07_DA_ItemData.md) | `DA_` Data Asset | `PrimaryDataAsset` | Base item data asset; inherited by all item types | 01-core | | — | — | — | — | — | — | | 08 | [`08_BPC_HealthSystem`](02-player/08_BPC_HealthSystem.md) | `BPC_` Component | `ActorComponent` | Player health, damage resistance, death trigger, healing | 02-player | | 09 | [`09_BPC_StaminaSystem`](02-player/09_BPC_StaminaSystem.md) | `BPC_` Component | `ActorComponent` | Stamina pool, sprint/action drain, exhaustion states, regen | 02-player | | 10 | [`10_BPC_StressSystem`](02-player/10_BPC_StressSystem.md) | `BPC_` Component | `ActorComponent` | Psychological stress, tiers (Calm→Catatonic), hallucinations | 02-player | | 11 | [`11_BPC_MovementStateSystem`](02-player/11_BPC_MovementStateSystem.md) | `BPC_` Component | `ActorComponent` | Movement mode + posture tracking; GASP liaison; footsteps | 02-player | | 12 | [`12_BPC_HidingSystem`](02-player/12_BPC_HidingSystem.md) | `BPC_` Component | `ActorComponent` | Hide/peek/breath-hold; LOS checks; stress decay while hidden | 02-player | | 13 | [`13_BPC_EmbodimentSystem`](02-player/13_BPC_EmbodimentSystem.md) | `BPC_` Component | `ActorComponent` | First-person body mesh, arm IK, visibility modes, overlays | 02-player | | 14 | [`14_BPC_CameraStateLayer`](02-player/14_BPC_CameraStateLayer.md) | `BPC_` Component | `ActorComponent` | Camera FOV/offset/rotation layers for all states (combat, hide, inspect) | 02-player | | 15 | [`15_BPC_PlayerMetricsTracker`](02-player/15_BPC_PlayerMetricsTracker.md) | `BPC_` Component | `ActorComponent` | Tracks player metrics: accuracy, deaths, playstyle ratios | 02-player | | — | — | — | — | — | — | | 16 | [`16_BPC_InteractionDetector`](03-interaction/16_BPC_InteractionDetector.md) | `BPC_` Component | `ActorComponent` | Raycast-based interaction detection, hold/press, prompt display | 03-interaction | | 17 | [`17_I_HidingSpot`](03-interaction/17_I_HidingSpot.md) | `I_` Interface | `Interface` | Interface for hideable world objects (lockers, cover, grass) | 03-interaction | | 18 | [`18_BPC_DiegeticDisplay`](03-interaction/18_BPC_DiegeticDisplay.md) | `BPC_` Component | `ActorComponent` | In-world screen displays (wristwatch, monitors, holograms) | 03-interaction | | 19 | [`19_BP_DoorActor`](03-interaction/19_BP_DoorActor.md) | `BP_` Actor | `Actor` | Physical door with open/close/lock/barricade/trap states | 03-interaction | | 20 | [`20_BP_PuzzleDeviceActor`](03-interaction/20_BP_PuzzleDeviceActor.md) | `BP_` Actor | `Actor` | Puzzle device base; state machine, solution checking, reward | 03-interaction | | 21 | [`21_BPC_ContextualTraversalSystem`](03-interaction/21_BPC_ContextualTraversalSystem.md) | `BPC_` Component | `ActorComponent` | Contextual vault/mantle/slide/squeeze/climb via Motion Warping | 03-interaction | | 22 | [`22_BPC_PhysicsDragSystem`](03-interaction/22_BPC_PhysicsDragSystem.md) | `BPC_` Component | `ActorComponent` | Grab, drag, and release physics objects | 03-interaction | | 23 | [`23_BPC_UsableWorldObjectSystem`](03-interaction/23_BPC_UsableWorldObjectSystem.md) | `BPC_` Component | `ActorComponent` | Generic world object use (levers, valves, buttons, panels) | 03-interaction | | — | — | — | — | — | — | | 24 | [`24_BPC_ContainerInventory`](04-inventory/24_BPC_ContainerInventory.md) | `BPC_` Component | `ActorComponent` | World container inventory (chests, drawers, cabinets, safes) | 04-inventory | | 25 | [`25_BP_ItemPickup`](04-inventory/25_BP_ItemPickup.md) | `BP_` Actor | `Actor` | Physical item pickup in world with bob/rotate, pickup animation | 04-inventory | | 26 | [`26_BPC_ActiveItemSystem`](04-inventory/26_BPC_ActiveItemSystem.md) | `BPC_` Component | `ActorComponent` | Quick-slot item management; contextual item use | 04-inventory | | 27 | [`27_BPC_CollectibleTracker`](04-inventory/27_BPC_CollectibleTracker.md) | `BPC_` Component | `ActorComponent` | Collectible tracking; found count, set bonuses, reward unlocks | 04-inventory | | 28 | [`28_BPC_ConsumableSystem`](04-inventory/28_BPC_ConsumableSystem.md) | `BPC_` Component | `ActorComponent` | Consumable use (health packs, syringes, temporary buffs) | 04-inventory | | 29 | [`29_BPC_DocumentArchiveSystem`](04-inventory/29_BPC_DocumentArchiveSystem.md) | `BPC_` Component | `ActorComponent` | Document/journal archive; read, categorize, flag as important | 04-inventory | | 30 | [`30_BPC_EquipmentSlotSystem`](04-inventory/30_BPC_EquipmentSlotSystem.md) | `BPC_` Component | `ActorComponent` | Equipment slots (weapon, armor, tool); equip/unequip validation | 04-inventory | | 31 | [`31_BPC_InventorySystem`](04-inventory/31_BPC_InventorySystem.md) | `BPC_` Component | `ActorComponent` | Core inventory grid; add/remove/sort/stack/weight management | 04-inventory | | 32 | [`32_BPC_ItemCombineSystem`](04-inventory/32_BPC_ItemCombineSystem.md) | `BPC_` Component | `ActorComponent` | Item combination crafting; recipe validation, result generation | 04-inventory | | 33 | [`33_BPC_JournalSystem`](04-inventory/33_BPC_JournalSystem.md) | `BPC_` Component | `ActorComponent` | Quest/objective journal; active quests, completed, failed | 04-inventory | | 34 | [`34_BPC_KeyItemSystem`](04-inventory/34_BPC_KeyItemSystem.md) | `BPC_` Component | `ActorComponent` | Key item tracking; use-on-target, consumed-on-use | 04-inventory | | — | — | — | — | — | — | | 35 | [`35_SS_SaveManager`](05-saveload/35_SS_SaveManager.md) | `SS_` Subsystem | `GameInstanceSubsystem` | Save/load subsystem; slot management, serializer, manifest | 05-saveload | | 36 | [`36_I_Persistable`](05-saveload/36_I_Persistable.md) | `I_` Interface | `Interface` | Persistence interface for any actor that saves state | 05-saveload | | 37 | [`37_BP_Checkpoint`](05-saveload/37_BP_Checkpoint.md) | `BP_` Actor | `Actor` | Checkpoint actor; respawn point, activation, save-on-touch | 05-saveload | | 38 | [`38_BPC_AltDeathSpaceSystem`](05-saveload/38_BPC_AltDeathSpaceSystem.md) | `BPC_` Component | `ActorComponent` | Alternate death/void space; enter, explore, find exit | 05-saveload | | 39 | [`39_BPC_DeathHandlingSystem`](05-saveload/39_BPC_DeathHandlingSystem.md) | `BPC_` Component | `ActorComponent` | Death orchestrator; outcome determination, animation, respawn | 05-saveload | | 40 | [`40_BPC_PersistentCorpseSystem`](05-saveload/40_BPC_PersistentCorpseSystem.md) | `BPC_` Component | `ActorComponent` | Corpse persistence across death/respawn/level transitions | 05-saveload | | 41 | [`41_BPC_PersistentWorldStateRecorder`](05-saveload/41_BPC_PersistentWorldStateRecorder.md) | `BPC_` Component | `ActorComponent` | Records world state changes (doors, items, enemies) for save | 05-saveload | | 42 | [`42_BPC_PlayerRespawnSystem`](05-saveload/42_BPC_PlayerRespawnSystem.md) | `BPC_` Component | `ActorComponent` | Respawn logic; checkpoint resolution, state restoration | 05-saveload | | 43 | [`43_BPC_RunHistoryTracker`](05-saveload/43_BPC_RunHistoryTracker.md) | `BPC_` Component | `ActorComponent` | Run/session history; death count, time, checkpoint progression | 05-saveload | | — | — | — | — | — | — | | 44 | [`44_SS_UIManager`](06-ui/44_SS_UIManager.md) | `SS_` Subsystem | `GameInstanceSubsystem` | UI subsystem; menu stack, context-based UI switching, input mode | 06-ui | | 45 | [`45_WBP_AccessibilityUI`](06-ui/45_WBP_AccessibilityUI.md) | `WBP_` Widget | `UserWidget` | Accessibility settings UI; subtitles, colorblind, controller | 06-ui | | 46 | [`46_WBP_DiegeticHUDFrame`](06-ui/46_WBP_DiegeticHUDFrame.md) | `WBP_` Widget | `UserWidget` | Diegetic in-world HUD frame (on wristwatch, helmet, etc.) | 06-ui | | 47 | [`47_WBP_HUDController`](06-ui/47_WBP_HUDController.md) | `WBP_` Widget | `UserWidget` | Root HUD widget; manages all HUD sub-widgets | 06-ui | | 48 | [`48_WBP_InteractionPromptDisplay`](06-ui/48_WBP_InteractionPromptDisplay.md) | `WBP_` Widget | `UserWidget` | Interaction prompt popup; shows key, description, hold progress | 06-ui | | 49 | [`49_WBP_InventoryMenu`](06-ui/49_WBP_InventoryMenu.md) | `WBP_` Widget | `UserWidget` | Inventory grid UI; drag-drop, sort, examine, equip, drop | 06-ui | | 50 | [`50_WBP_JournalDocumentViewer`](06-ui/50_WBP_JournalDocumentViewer.md) | `WBP_` Widget | `UserWidget` | Document/journal viewer; pages, font styles, highlights | 06-ui | | 51 | [`51_WBP_MainMenu`](06-ui/51_WBP_MainMenu.md) | `WBP_` Widget | `UserWidget` | Main menu; new game, continue, load, settings, quit | 06-ui | | 52 | [`52_WBP_MenuFlowController`](06-ui/52_WBP_MenuFlowController.md) | `WBP_` Widget | `UserWidget` | Menu state machine; manages menu transitions and back navigation | 06-ui | | 53 | [`53_WBP_NotificationToast`](06-ui/53_WBP_NotificationToast.md) | `WBP_` Widget | `UserWidget` | Toast notification; objective update, item found, achievement | 06-ui | | 54 | [`54_WBP_ObjectiveDisplay`](06-ui/54_WBP_ObjectiveDisplay.md) | `WBP_` Widget | `UserWidget` | Active objective HUD element; shows current quest/objective | 06-ui | | 55 | [`55_WBP_PauseMenu`](06-ui/55_WBP_PauseMenu.md) | `WBP_` Widget | `UserWidget` | Pause menu; resume, settings, save, load, quit to menu | 06-ui | | 56 | [`56_WBP_ScreenEffectController`](06-ui/56_WBP_ScreenEffectController.md) | `WBP_` Widget | `UserWidget` | Full-screen effects; damage vignette, stress, healing, flash | 06-ui | | 57 | [`57_WBP_SettingsMenu`](06-ui/57_WBP_SettingsMenu.md) | `WBP_` Widget | `UserWidget` | Settings menu; audio, video, controls, gameplay, accessibility | 06-ui | | — | — | — | — | — | — | | 58 | [`58_BPC_NarrativeStateSystem`](07-narrative/58_BPC_NarrativeStateSystem.md) | `BPC_` Component | `ActorComponent` | Narrative state machine; flags, milestones, chapter progression | 07-narrative | | 59 | [`59_BPC_ObjectiveSystem`](07-narrative/59_BPC_ObjectiveSystem.md) | `BPC_` Component | `ActorComponent` | Objective tracker; activate, complete, fail, branching objectives | 07-narrative | | 60 | [`60_BPC_DialoguePlaybackSystem`](07-narrative/60_BPC_DialoguePlaybackSystem.md) | `BPC_` Component | `ActorComponent` | Dialogue playback; line queue, VO, subtitles, auto-advance | 07-narrative | | 61 | [`61_BPC_DialogueChoiceSystem`](07-narrative/61_BPC_DialogueChoiceSystem.md) | `BPC_` Component | `ActorComponent` | Dialogue choices; present, select, filter by flags, consequence | 07-narrative | | 62 | [`62_BPC_BranchingConsequenceSystem`](07-narrative/62_BPC_BranchingConsequenceSystem.md) | `BPC_` Component | `ActorComponent` | Narrative consequence execution; state changes, item grants, triggers | 07-narrative | | 63 | [`63_BPC_TrialScenarioSystem`](07-narrative/63_BPC_TrialScenarioSystem.md) | `BPC_` Component | `ActorComponent` | Timed trial/puzzle scenario; begin, evaluate, success/fail | 07-narrative | | 64 | [`64_BPC_CutsceneBridge`](07-narrative/64_BPC_CutsceneBridge.md) | `BPC_` Component | `ActorComponent` | Cutscene bridge; play, skip, milestone flags, camera transfer | 07-narrative | | 65 | [`65_BPC_LoreUnlockSystem`](07-narrative/65_BPC_LoreUnlockSystem.md) | `BPC_` Component | `ActorComponent` | Lore/journal entry unlock; trigger, categorize, notify | 07-narrative | | 66 | [`66_DA_NarrativeDataAssets`](07-narrative/66_DA_NarrativeDataAssets.md) | `DA_` Data Asset | `PrimaryDataAsset` | Narrative data assets (DialogueData, CutsceneData, ScenarioData) | 07-narrative | | 67 | [`67_BP_NarrativeTriggerVolume`](07-narrative/67_BP_NarrativeTriggerVolume.md) | `BP_` Actor | `TriggerVolume` | Narrative trigger volume; sets flags, starts dialogue/scene | 07-narrative | | 68 | [`68_BPC_EndingAccumulator`](07-narrative/68_BPC_EndingAccumulator.md) | `BPC_` Component | `ActorComponent` | Ending tracker; accumulates ending conditions, determines outcome | 07-narrative | | — | — | — | — | — | — | | 69 | [`69_BP_WeaponBase`](08-weapons/69_BP_WeaponBase.md) | `BP_` Actor | `Actor` | Weapon base actor; fire, equip, holster, FX, audio | 08-weapons | | 70 | [`70_BPC_AmmoComponent`](08-weapons/70_BPC_AmmoComponent.md) | `BPC_` Component | `ActorComponent` | Ammo pool; reserve/loaded, ammo types, pickup | 08-weapons | | 71 | [`71_BPC_CombatFeedbackComponent`](08-weapons/71_BPC_CombatFeedbackComponent.md) | `BPC_` Component | `ActorComponent` | Combat feedback; hit markers, kill confirm, damage direction | 08-weapons | | 72 | [`72_BPC_DamageReceptionSystem`](08-weapons/72_BPC_DamageReceptionSystem.md) | `BPC_` Component | `ActorComponent` | Damage reception; calculate, resist, apply, stagger, knockdown | 08-weapons | | 73 | [`73_BPC_DeathCauseTracker`](08-weapons/73_BPC_DeathCauseTracker.md) | `BPC_` Component | `ActorComponent` | Death cause logging; killing blow, killer identity, damage type | 08-weapons | | 74 | [`74_BPC_FirearmSystem`](08-weapons/74_BPC_FirearmSystem.md) | `BPC_` Component | `ActorComponent` | Firearm specialization; fire modes, chamber check, aim down sights | 08-weapons | | 75 | [`75_BPC_HitReactionSystem`](08-weapons/75_BPC_HitReactionSystem.md) | `BPC_` Component | `ActorComponent` | Hit reaction; directional flinch, stagger, knockdown animations | 08-weapons | | 76 | [`76_BPC_MeleeSystem`](08-weapons/76_BPC_MeleeSystem.md) | `BPC_` Component | `ActorComponent` | Melee weapon; combos, hit detection, block, parry, riposte | 08-weapons | | 77 | [`77_BPC_RecoilSystem`](08-weapons/77_BPC_RecoilSystem.md) | `BPC_` Component | `ActorComponent` | Recoil; camera spring arm offset, pattern, recovery | 08-weapons | | 78 | [`78_BPC_ReloadSystem`](08-weapons/78_BPC_ReloadSystem.md) | `BPC_` Component | `ActorComponent` | Reload; tactical/empty reload, notifies, interrupt | 08-weapons | | 79 | [`79_BPC_ShieldDefenseSystem`](08-weapons/79_BPC_ShieldDefenseSystem.md) | `BPC_` Component | `ActorComponent` | Shield defense; block, durability, break, stun | 08-weapons | | — | — | — | — | — | — | | 80 | [`80_BP_EnemyBase`](09-ai/80_BP_EnemyBase.md) | `BP_` Actor | `Character` | Enemy base character; health, combat, patrol, death | 09-ai | | 81 | [`81_BP_PatrolPath`](09-ai/81_BP_PatrolPath.md) | `BP_` Actor | `Actor` | Patrol path spline; waypoints, wait times, loop | 09-ai | | 82 | [`82_BPC_AlertSystem`](09-ai/82_BPC_AlertSystem.md) | `BPC_` Component | `ActorComponent` | AI alert system; suspicious→alerted→combat states | 09-ai | | 83 | [`83_BPC_AIStateMachine`](09-ai/83_BPC_AIStateMachine.md) | `BPC_` Component | `ActorComponent` | AI state machine; Patrol/Search/Combat/Flee transitions | 09-ai | | 84 | [`84_AI_BaseAgentController`](09-ai/84_AI_BaseAgentController.md) | `AI_` Controller | `AIController` | Base AI controller; behavior tree runner, perception init | 09-ai | | 85 | [`85_BB_AgentBoard`](09-ai/85_BB_AgentBoard.md) | `BB_` Blackboard | `BlackboardData` | AI blackboard definition; all keys for enemy AI | 09-ai | | 86 | [`86_BPC_AIMemorySystem`](09-ai/86_BPC_AIMemorySystem.md) | `BPC_` Component | `ActorComponent` | AI memory; last known locations, threat history, investigation | 09-ai | | 87 | [`87_BPC_AIPerceptionSystem`](09-ai/87_BPC_AIPerceptionSystem.md) | `BPC_` Component | `ActorComponent` | AI perception; sight, hearing, damage sense, team awareness | 09-ai | | 88 | [`88_BPC_BehaviourVariantSelector`](09-ai/88_BPC_BehaviourVariantSelector.md) | `BPC_` Component | `ActorComponent` | Behavior variant selection; weighted random from DA_BehaviourVariant set | 09-ai | | — | — | — | — | — | — | | 89 | [`89_BPC_DifficultyManager`](10-adaptive/89_BPC_DifficultyManager.md) | `BPC_` Component | `ActorComponent` | Dynamic difficulty; metric-based scaling, adaptive tuning | 10-adaptive | | 90 | [`90_BPC_FearSystem`](10-adaptive/90_BPC_FearSystem.md) | `BPC_` Component | `ActorComponent` | Fear system (AI + player); fear states, cower, flee | 10-adaptive | | 91 | [`91_BPC_PerformanceScaler`](10-adaptive/91_BPC_PerformanceScaler.md) | `BPC_` Component | `ActorComponent` | Performance scaling; LOD, spawn distance, effect quality | 10-adaptive | | 92 | [`92_BPC_ProceduralEncounter`](10-adaptive/92_BPC_ProceduralEncounter.md) | `BPC_` Component | `ActorComponent` | Procedural encounter generation; difficulty-based spawn groups | 10-adaptive | | 93 | [`93_BPC_AdaptiveEnvironmentDirector`](10-adaptive/93_BPC_AdaptiveEnvironmentDirector.md) | `BPC_` Component | `ActorComponent` | Adaptive environment; room mutation, event coordination | 10-adaptive | | 94 | [`94_BPC_AtmosphereStateController`](10-adaptive/94_BPC_AtmosphereStateController.md) | `BPC_` Component | `ActorComponent` | Atmosphere state; room tone, tension, mood | 10-adaptive | | 95 | [`95_BPC_AudioAtmosphereController`](10-adaptive/95_BPC_AudioAtmosphereController.md) | `BPC_` Component | `ActorComponent` | Audio atmosphere; ambient layer crossfade, dynamic mixing | 10-adaptive | | 96 | [`96_BPC_LightEventController`](10-adaptive/96_BPC_LightEventController.md) | `BPC_` Component | `ActorComponent` | Light event; flicker, dim, color shift, strobe | 10-adaptive | | 97 | [`97_BPC_MemoryDriftSystem`](10-adaptive/97_BPC_MemoryDriftSystem.md) | `BPC_` Component | `ActorComponent` | Memory drift; visual/audio/dialogue distortions based on stress | 10-adaptive | | 98 | [`98_BPC_PacingDirector`](10-adaptive/98_BPC_PacingDirector.md) | `BPC_` Component | `ActorComponent` | Pacing director; intensity bands, encounter frequency, music | 10-adaptive | | 99 | [`99_BPC_PlaystyleClassifier`](10-adaptive/99_BPC_PlaystyleClassifier.md) | `BPC_` Component | `ActorComponent` | Playstyle classifier; Aggressive/Stealthy/Explorer/Balanced | 10-adaptive | | 100 | [`100_BPC_RareEventSystem`](10-adaptive/100_BPC_RareEventSystem.md) | `BPC_` Component | `ActorComponent` | Rare event system; weighted selection, trigger, cooldown | 10-adaptive | | 101 | [`101_BPC_ScareEventSystem`](10-adaptive/101_BPC_ScareEventSystem.md) | `BPC_` Component | `ActorComponent` | Scare event system; jump scares, anticipation, recovery | 10-adaptive | | — | — | — | — | — | — | | 102 | [`102_BPC_ProgressStatTracker`](11-meta/102_BPC_ProgressStatTracker.md) | `BPC_` Component | `ActorComponent` | Progress stats; total playtime, collectibles, achievements progress | 11-meta | | 103 | [`103_SS_AchievementSystem`](11-meta/103_SS_AchievementSystem.md) | `SS_` Subsystem | `GameInstanceSubsystem` | Achievement subsystem; unlock, notify, platform integration | 11-meta | | — | — | — | — | — | — | | 104 | [`104_BPC_AccessibilitySettings`](12-settings/104_BPC_AccessibilitySettings.md) | `BPC_` Component | `ActorComponent` | Accessibility; subtitles, colorblind, controller remap, difficulty | 12-settings | | 105 | [`105_SS_SettingsSystem`](12-settings/105_SS_SettingsSystem.md) | `SS_` Subsystem | `GameInstanceSubsystem` | Settings subsystem; persistent settings, apply, reset, platform | 12-settings | | — | — | — | — | — | — | | 106 | [`106_BPC_AnalyticsTracker`](13-polish/106_BPC_AnalyticsTracker.md) | `BPC_` Component | `ActorComponent` | Analytics; event tracking, session metrics, telemetry | 13-polish | | 107 | [`107_BPC_DevCheatManager`](13-polish/107_BPC_DevCheatManager.md) | `BPC_` Component | `ActorComponent` | Developer cheats; god mode, noclip, give item, teleport | 13-polish | | 108 | [`108_BPC_ErrorHandler`](13-polish/108_BPC_ErrorHandler.md) | `BPC_` Component | `ActorComponent` | Error handler; crash logging, error display, recovery | 13-polish | | 109 | [`109_BPC_FPSCounter`](13-polish/109_BPC_FPSCounter.md) | `BPC_` Component | `ActorComponent` | FPS counter; display, min/max/avg tracking | 13-polish | | 110 | [`110_BPC_LoadingScreen`](13-polish/110_BPC_LoadingScreen.md) | `BPC_` Component | `ActorComponent` | Loading screen; progress bar, tips, background | 13-polish | | 111 | [`111_BPC_TutorialSystem`](13-polish/111_BPC_TutorialSystem.md) | `BPC_` Component | `ActorComponent` | Tutorial system; contextual prompts, progression, dismiss | 13-polish | | 112 | [`112_WBP_CreditsScreen`](13-polish/112_WBP_CreditsScreen.md) | `WBP_` Widget | `UserWidget` | Credits screen; scroll, skip, post-credit scene trigger | 13-polish | | 113 | [`113_WBP_DebugMenu`](13-polish/113_WBP_DebugMenu.md) | `WBP_` Widget | `UserWidget` | Debug menu; state viewer, log, performance, cheats | 13-polish | | 114 | [`114_WBP_SplashScreen`](13-polish/114_WBP_SplashScreen.md) | `WBP_` Widget | `UserWidget` | Splash screen; studio logo, engine logo, skip | 13-polish | | — | — | — | — | — | — | | 115 | [`115_DA_AdaptationRule`](14-data-assets/115_DA_AdaptationRule.md) | `DA_` Data Asset | `PrimaryDataAsset` | Difficulty adaptation rule data | 14-data-assets | | 116 | [`116_DA_AtmosphereProfile`](14-data-assets/116_DA_AtmosphereProfile.md) | `DA_` Data Asset | `PrimaryDataAsset` | Atmosphere profile; audio, lighting, fog, post-process | 14-data-assets | | 117 | [`117_DA_BehaviourVariant`](14-data-assets/117_DA_BehaviourVariant.md) | `DA_` Data Asset | `PrimaryDataAsset` | AI behavior variant; attack patterns, patrol style, aggression | 14-data-assets | | 118 | [`118_DA_DataAssetArchitecture`](14-data-assets/118_DA_DataAssetArchitecture.md) | — | — | Data asset architecture overview (all DA_ types) | 14-data-assets | | 119 | [`119_DA_EncounterData`](14-data-assets/119_DA_EncounterData.md) | `DA_` Data Asset | `PrimaryDataAsset` | Encounter definition; enemy groups, spawn rules, difficulty | 14-data-assets | | 120 | [`120_DA_EquipmentConfig`](14-data-assets/120_DA_EquipmentConfig.md) | `DA_` Data Asset | `PrimaryDataAsset` | Equipment configuration; weapon stats, armor, haptics | 14-data-assets | | 121 | [`121_DA_HapticProfile`](14-data-assets/121_DA_HapticProfile.md) | `DA_` Data Asset | `PrimaryDataAsset` | Haptic/force feedback profile | 14-data-assets | | 122 | [`122_DA_InteractionData`](14-data-assets/122_DA_InteractionData.md) | `DA_` Data Asset | `PrimaryDataAsset` | Interaction definition; prompt text, duration, icon, conditions | 14-data-assets | | 123 | [`123_DA_ObjectiveData`](14-data-assets/123_DA_ObjectiveData.md) | `DA_` Data Asset | `PrimaryDataAsset` | Objective/quest data; description, prerequisites, rewards | 14-data-assets | | 124 | [`124_DA_PuzzleData`](14-data-assets/124_DA_PuzzleData.md) | `DA_` Data Asset | `PrimaryDataAsset` | Puzzle definition; solution, steps, hints, rewards | 14-data-assets | | 125 | [`125_DA_RareEvent`](14-data-assets/125_DA_RareEvent.md) | `DA_` Data Asset | `PrimaryDataAsset` | Rare event definition; weight, conditions, effects | 14-data-assets | | 126 | [`126_DA_RoomMutation`](14-data-assets/126_DA_RoomMutation.md) | `DA_` Data Asset | `PrimaryDataAsset` | Room mutation; layout change, object swap, lighting | 14-data-assets | | 127 | [`127_DA_ScareEvent`](14-data-assets/127_DA_ScareEvent.md) | `DA_` Data Asset | `PrimaryDataAsset` | Scare event definition; type, anticipation, payoff | 14-data-assets | | 128 | [`128_SS_EnhancedInputManager`](15-input/128_SS_EnhancedInputManager.md) | `SS_` Subsystem | `GameInstanceSubsystem` | Enhanced input manager; context switching, rebinding, platform profiles | 15-input | | 129 | [`129_DA_InputMappingProfile`](14-data-assets/129_DA_InputMappingProfile.md) | `DA_` Data Asset | `PrimaryDataAsset` | Input mapping profile per platform (PC, Xbox, PS5) | 14-data-assets | | — | — | — | — | — | — | | 130 | [`130_BPC_StateManager`](16-state/130_BPC_StateManager.md) | `BPC_` Component | `ActorComponent` | Central state authority; action gating, overlay, GASP liaison, vital signs | 16-state | | 131 | [`131_DA_StateGatingTable`](16-state/131_DA_StateGatingTable.md) | `DA_` Data Asset | `PrimaryDataAsset` | All state gating rules (37 action rules); designer-editable | 16-state | | 132 | [`132_SS_AudioManager`](10-adaptive/132_SS_AudioManager.md) | `SS_` Subsystem | `GameInstanceSubsystem` | Single audio entry point; 4 MetaSound buses, room zones, settings | 10-adaptive | | 133 | [`133_BP_RoomAudioZone`](10-adaptive/133_BP_RoomAudioZone.md) | `BP_` Actor | `TriggerVolume` | Room audio zone; auto-switches reverb on overlap via push/pop stack | 10-adaptive | | 134 | [`134_DA_AudioSettings`](14-data-assets/134_DA_AudioSettings.md) | `DA_` Data Asset | `PrimaryDataAsset` | Audio bus configs, volume defaults, ducking, pool limits | 14-data-assets | | 135 | [`135_DA_RoomAcousticPreset`](14-data-assets/135_DA_RoomAcousticPreset.md) | `DA_` Data Asset | `PrimaryDataAsset` | Room acoustic profile; 7 presets (Outdoor, SmallRoom, Cave, etc.) | 14-data-assets | | — | — | — | — | — | — | | 136 | [`136_BPC_PlanarCapture`](17-capture/136_BPC_PlanarCapture.md) | `BPC_` Component | `ActorComponent` | Core capture: SceneCapture2D lifecycle, camera math, RT management, horror ring buffer | 17-capture | | 137 | [`137_BP_PlanarCaptureActor`](17-capture/137_BP_PlanarCaptureActor.md) | `BP_` Actor | `Actor` | Placeable surface actor: mesh, MDI, proximity trigger, manager registration | 17-capture | | 138 | [`138_SS_PlanarCaptureManager`](17-capture/138_SS_PlanarCaptureManager.md) | `SS_` Subsystem | `WorldSubsystem` | Global budget manager: surface scoring, quality tier assignment, RT pool | 17-capture | | 139 | [`139_BP_Mirror`](17-capture/139_BP_Mirror.md) | `BP_` Actor | `BP_PlanarCaptureActor` | Standard mirror: Mode=Mirror, dirt/steam/condensation layers, aging | 17-capture | | 140 | [`140_BP_Portal`](17-capture/140_BP_Portal.md) | `BP_` Actor | `BP_PlanarCaptureActor` | Portal surface: Mode=Portal, linked target, teleport on overlap, clip plane | 17-capture | | 141 | [`141_BP_Monitor`](17-capture/141_BP_Monitor.md) | `BP_` Actor | `BP_PlanarCaptureActor` | Security screen: Mode=Monitor, fixed camera, 5fps, scanlines | 17-capture | | 142 | [`142_BP_HorrorMirror`](17-capture/142_BP_HorrorMirror.md) | `BP_` Actor | `BP_Mirror` | Horror mirror: wrong reflection, delayed frame, text reveal, scare events | 17-capture | | 143 | [`143_BP_FakeWindow`](17-capture/143_BP_FakeWindow.md) | `BP_` Actor | `BP_PlanarCaptureActor` | Architectural fake window: Mode=FakeWindow, sublevel, weather overlay | 17-capture | | 144 | [`144_M_CaptureSurface_Master`](17-capture/144_M_CaptureSurface_Master.md) | `M_` Material | `Material` | Master unlit material: 9-layer stack (RT, condensation, dirt, steam, horror) | 17-capture | | 145 | [`145_MPC_CaptureSurface`](17-capture/145_MPC_CaptureSurface.md) | MPC | `MaterialParameterCollection` | Global MPC: 10 scalar params (SteamIntensity, DirtOpacity, MirrorDarkness, etc.) | 17-capture | | 146 | [`146_DA_PlanarCaptureProfile`](17-capture/146_DA_PlanarCaptureProfile.md) | `DA_` Data Asset | `PrimaryDataAsset` | Per-surface capture config: mode, quality overrides, actor lists | 17-capture | | 147 | [`147_MI_MirrorInstances`](17-capture/147_MI_MirrorInstances.md) | `MI_` Instances | `M_CaptureSurface_Master` | 7 pre-configured material instances (Clean/Dirty/Steam/Horror/Portal/Monitor/FakeWindow) | 17-capture | --- ## Asset Type Summary | Prefix | Type | Count | |--------|------|-------| | `BPC_` | Blueprint Component | 80 | | `BP_` | Blueprint Actor | 11 | | `WBP_` | Widget Blueprint | 14 | | `DA_` | Data Asset | 19 | | `SS_` | GameInstance Subsystem | 7 | | `GI_` | Game Instance | 2 | | `GM_` | Game Mode | 1 | | `GS_` | Game State | 1 | | `I_` | Interface | 3 | | `FL_` | Function Library | 1 | | `AI_` | AI Controller | 1 | | `BB_` | Blackboard | 1 | | `E_` | Enum | 5 | | **Total** | | **158** | --- ## Dependency Map (Which Systems Talk to Which) Below are the most cross-referenced systems — these are the ones the State Manager must coordinate: | System | Referenced By (Inbound) | |--------|------------------------| | `BPC_HealthSystem` (08) | StateManager (death binding), DeathHandling, HitReaction, DamageReception, CombatFeedback, StressSystem | | `BPC_MovementStateSystem` (11) | StateManager, GASP AnimBP, Stamina, Camera, InteractionDetector, AudioAtmosphere | | `BPC_HidingSystem` (12) | StateManager, AIPerception, StressSystem, CameraStateLayer | | `BPC_DeathHandlingSystem` (39) | HealthSystem, StateManager, AltDeathSpace, Corpse, Respawn, RunHistory, UIManager | | `SS_EnhancedInputManager` (128) | StateManager (context changes), all WBP_ menus, PlayerController | | `BPC_StateManager` (130) | EVERY system (central query point) | | `SS_AudioManager` (132) | ALL systems that play audio, BP_RoomAudioZone, WBP_SettingsMenu, BPC_StateManager (heart rate → audio) | | `ABP_GASP` (external) | StateManager (overlay + action intensity), MovementState, Hiding, Stamina, Embodiment | --- ## Alphabetical Quick-Find | Asset Name | # | Asset Name | # | Asset Name | # | |-----------|----|-----------|----|-----------|----| | `AI_BaseAgentController` | 84 | `BP_ItemPickup` | 25 | `BPC_PlayerMetricsTracker` | 15 | | `BB_AgentBoard` | 85 | `BP_NarrativeTriggerVolume` | 67 | `BPC_PlayerRespawnSystem` | 42 | | `BP_Checkpoint` | 37 | `BP_PatrolPath` | 81 | `BPC_ProceduralEncounter` | 92 | | `BP_DoorActor` | 19 | `BP_PuzzleDeviceActor` | 20 | `BPC_ProgressStatTracker` | 102 | | `BP_EnemyBase` | 80 | `BP_WeaponBase` | 69 | `BPC_RareEventSystem` | 100 | | `BPC_AccessibilitySettings` | 104 | `BPC_ActiveItemSystem` | 26 | `BPC_RecoilSystem` | 77 | | `BPC_AdaptiveEnvironmentDirector` | 93 | `BPC_AIMemorySystem` | 86 | `BPC_ReloadSystem` | 78 | | `BPC_AIPerceptionSystem` | 87 | `BPC_AIStateMachine` | 83 | `BPC_RunHistoryTracker` | 43 | | `BPC_AlertSystem` | 82 | `BPC_AltDeathSpaceSystem` | 38 | `BPC_ScareEventSystem` | 101 | | `BPC_AmmoComponent` | 70 | `BPC_AnalyticsTracker` | 106 | `BPC_ShieldDefenseSystem` | 79 | | `BPC_AtmosphereStateController` | 94 | `BPC_BehaviourVariantSelector` | 88 | `BPC_StateManager` | 130 | | `BPC_AudioAtmosphereController` | 95 | `BPC_BranchingConsequenceSystem` | 62 | `BPC_StressSystem` | 10 | | `BPC_CameraStateLayer` | 14 | `BPC_CollectibleTracker` | 27 | `BPC_TrialScenarioSystem` | 63 | | `BPC_CombatFeedbackComponent` | 71 | `BPC_ConsumableSystem` | 28 | `BPC_TutorialSystem` | 111 | | `BPC_ContainerInventory` | 24 | `BPC_ContextualTraversalSystem` | 21 | `BPC_UsableWorldObjectSystem` | 23 | | `BPC_CutsceneBridge` | 64 | `BPC_DamageReceptionSystem` | 72 | `DA_AdaptationRule` | 115 | | `BPC_DeathCauseTracker` | 73 | `BPC_DeathHandlingSystem` | 39 | `DA_AtmosphereProfile` | 116 | | `BPC_DevCheatManager` | 107 | `BPC_DialogueChoiceSystem` | 61 | `DA_BehaviourVariant` | 117 | | `BPC_DialoguePlaybackSystem` | 60 | `BPC_DiegeticDisplay` | 18 | `DA_DataAssetArchitecture` | 118 | | `BPC_DifficultyManager` | 89 | `BPC_DocumentArchiveSystem` | 29 | `DA_EncounterData` | 119 | | `BPC_EmbodimentSystem` | 13 | `BPC_EndingAccumulator` | 68 | `DA_EquipmentConfig` | 120 | | `BPC_EquipmentSlotSystem` | 30 | `BPC_ErrorHandler` | 108 | `DA_HapticProfile` | 121 | | `BPC_FearSystem` | 90 | `BPC_FirearmSystem` | 74 | `DA_InputMappingProfile` | 129 | | `BPC_FPSCounter` | 109 | `BPC_HealthSystem` | 8 | `DA_InteractionData` | 122 | | `BPC_HidingSystem` | 12 | `BPC_HitReactionSystem` | 75 | `DA_ItemData` | 7 | | `BPC_InteractionDetector` | 16 | `BPC_InventorySystem` | 31 | `DA_NarrativeDataAssets` | 66 | | `BPC_ItemCombineSystem` | 32 | `BPC_JournalSystem` | 33 | `DA_ObjectiveData` | 123 | | `BPC_KeyItemSystem` | 34 | `BPC_LightEventController` | 96 | `DA_PuzzleData` | 124 | | `BPC_LoadingScreen` | 110 | `BPC_LoreUnlockSystem` | 65 | `DA_RareEvent` | 125 | | `BPC_MeleeSystem` | 76 | `BPC_MemoryDriftSystem` | 97 | `DA_RoomMutation` | 126 | | `BPC_MovementStateSystem` | 11 | `BPC_NarrativeStateSystem` | 58 | `DA_ScareEvent` | 127 | | `BPC_ObjectiveSystem` | 59 | `BPC_PacingDirector` | 98 | `DA_StateGatingTable` | 131 | | `BPC_PerformanceScaler` | 91 | `BPC_PersistentCorpseSystem` | 40 | | | | `BPC_PersistentWorldStateRecorder` | 41 | `BPC_PhysicsDragSystem` | 22 | | | | `FL_GameUtilities` | 2 | `GI_GameFramework` | 4 | | | | `GI_StarterGameInstance` | — | `GI_GameTagRegistry` | 1 | `GM_CoreGameMode` | 5 | | `DA_GameTagRegistry` | 1 | `GM_CoreGameMode` | 5 | | | | `GS_CoreGameState` | 6 | `HidingSpot` | 17 | | | | `I_InterfaceLibrary` | 3 | `I_Persistable` | 36 | | | | `SS_AchievementSystem` | 103 | `SS_EnhancedInputManager` | 128 | | | | `SS_SaveManager` | 35 | `SS_SettingsSystem` | 105 | | | | `SS_UIManager` | 44 | `WBP_AccessibilityUI` | 45 | | | | `WBP_CreditsScreen` | 112 | `WBP_DebugMenu` | 113 | | | | `WBP_DiegeticHUDFrame` | 46 | `WBP_HUDController` | 47 | | | | `WBP_InteractionPromptDisplay` | 48 | `WBP_InventoryMenu` | 49 | | | | `WBP_JournalDocumentViewer` | 50 | `WBP_MainMenu` | 51 | | | | `WBP_MenuFlowController` | 52 | `WBP_NotificationToast` | 53 | | | | `WBP_ObjectiveDisplay` | 54 | `WBP_PauseMenu` | 55 | | | | `WBP_ScreenEffectController` | 56 | `WBP_SettingsMenu` | 57 | | | | `WBP_SplashScreen` | 114 | `BP_RoomAudioZone` | 133 | `DA_AudioSettings` | 134 | | `DA_RoomAcousticPreset` | 135 | `SS_AudioManager` | 132 | | | --- *Master Blueprint Index v3.4 — The single reference document for every file in the framework. Now 147 files with State Management, MetaSounds Audio, Multiplayer Networking, and Planar Capture System support.* --- ## Multiplayer Networking See [`docs/architecture/multiplayer-networking.md`](../architecture/multiplayer-networking.md) for the full networking architecture specification. All blueprint specs include replication stubs, Server RPCs, and authority patterns. Developer docs include Multiplayer Networking sections per category.