feat: Implement BPC_PlatformServiceAbstraction for unified platform detection and SDK routing

- Added BPC_PlatformServiceAbstraction to centralize platform detection and SDK routing for achievements, cloud saves, and overlays.
- Updated dependencies across various systems to utilize the new platform service for consistent platform handling.
- Deprecated old platform enums in favor of a unified EPlatformFamily enum.
- Enhanced documentation for affected systems to reflect changes in platform handling and dependencies.
This commit is contained in:
Lefteris Notas
2026-05-22 18:22:42 +03:00
parent dc9c1a6b98
commit 15d6e88780
12 changed files with 439 additions and 25 deletions

View File

@@ -1,6 +1,6 @@
# Master Blueprint Index — UE5 Modular Game Framework
**Version:** 3.6 | **Generated:** 2026-05-22 | **Total Files:** 149 numbered + 1 starter + 2 supplementary (152 total specs) | **C++:** 27 source files (15 full + 10 stubs + 2 utility)
**Version:** 3.7 | **Generated:** 2026-05-22 | **Total Files:** 150 numbered + 1 starter + 2 supplementary (153 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.
@@ -25,7 +25,7 @@ docs/blueprints/
├── 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)
├── 01-core/ ← Foundation (8 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)
@@ -72,6 +72,7 @@ docs/blueprints/
| 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 |
| 150 | [`150_BPC_PlatformServiceAbstraction`](01-core/150_BPC_PlatformServiceAbstraction.md) | `BPC_` Component | `ActorComponent` | Central platform authority; unified platform detection, SDK routing, achievement/cloud/overlay | 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 |
@@ -237,7 +238,7 @@ docs/blueprints/
| Prefix | Type | Count |
|--------|------|-------|
| `BPC_` | Blueprint Component | 82 |
| `BPC_` | Blueprint Component | 83 |
| `BP_` | Blueprint Actor | 11 |
| `WBP_` | Widget Blueprint | 14 |
| `DA_` | Data Asset | 20 |
@@ -250,7 +251,7 @@ docs/blueprints/
| `AI_` | AI Controller | 1 |
| `BB_` | Blackboard | 1 |
| `E_` | Enum | 5 |
| **Total** | | **161** |
| **Total** | | **162** |
---
@@ -268,7 +269,8 @@ Below are the most cross-referenced systems — these are the ones the State Man
| `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) |
| `BPC_HapticsController` (148) | HealthSystem, FirearmSystem, MeleeSystem, ScareEventSystem, PhysicsDrag, MovementState, ReloadSystem, DeathHandling, Staminasystem, StateManager → heartbeat, AccessibilitySettings |
| `BPC_RenderPipelineManager` (149) | PerformanceScaler (delegates CVars), SettingsSystem (quality persistence), PlanarCaptureManager (budget adjustment), SettingsMenu (upscaler query), AtmosphereController |
| `BPC_RenderPipelineManager` (149) | PerformanceScaler (delegates CVars), SettingsSystem (quality persistence), PlanarCaptureManager (budget adjustment), SettingsMenu (upscaler query), PlatformServiceAbstraction (platform detection) |
| `BPC_PlatformServiceAbstraction` (150) | ALL systems (central platform query), RenderPipelineManager, EnhancedInputManager, HapticsController, AchievementSystem, SaveManager, SettingsSystem, UIManager |
| `ABP_GASP` (external) | StateManager (overlay + action intensity), MovementState, Hiding, Stamina, Embodiment |
---
@@ -331,7 +333,7 @@ Below are the most cross-referenced systems — these are the ones the State Man
---
*Master Blueprint Index v3.6 — The single reference document for every file in the framework. Now 149 files + 2 supplementary with State Management, MetaSounds Audio, Multiplayer Networking, Planar Capture System, Haptics Controller, and Render Pipeline Manager support.*
*Master Blueprint Index v3.7 — The single reference document for every file in the framework. Now 150 files + 2 supplementary with unified platform authority (PlatformServiceAbstraction), State Management, MetaSounds Audio, Multiplayer Networking, Planar Capture System, Haptics Controller, and Render Pipeline Manager support.*
---