feat: Add multiplayer networking architecture and documentation updates

- Updated Master Blueprint Index to include Multiplayer Networking support.
- Added detailed Multiplayer Networking sections across all developer documentation (01-11).
- Introduced authority maps, key patterns, and RPC guidelines for each system.
- Established a comprehensive multiplayer networking architecture document outlining core principles, replication strategies, and anti-cheat considerations.
- Enhanced UI documentation to clarify local-only behavior and binding to replicated dispatchers.
- Implemented client prediction strategies and RPC naming conventions for consistency across the framework.
This commit is contained in:
Lefteris Notas
2026-05-19 17:15:57 +03:00
parent b2b6e1e7c7
commit 8bc731e5ae
35 changed files with 1259 additions and 11 deletions

View File

@@ -146,4 +146,32 @@
---
## Multiplayer Networking
### Category Authority Map
| System | Authority | Replication |
|--------|-----------|-------------|
| `BPC_AdaptiveEnvironmentDirector` | Server coordinates | Atmosphere state replicates |
| `BPC_AtmosphereStateController` | Server sets tier | Clients play local audio/lighting per tier |
| `BPC_DifficultyManager` | Server adjusts | Difficulty params replicate |
| `BPC_FearSystem` | Server-authoritative | AI fear behavior runs on server |
| `BPC_ScareEventSystem` | Server triggers → Multicast | All clients play scare FX simultaneously |
| `BPC_RareEventSystem` | Server selects → Multicast | All clients see rare event |
| `BPC_LightEventController` | Server triggers | Replicated for synchronized lighting |
| `BPC_MemoryDriftSystem` | **Local only** | Hallucinations are per-player experience |
| `BPC_PacingDirector` | Server controls | Intensity band replicates |
| `BPC_PlaystyleClassifier` | Server classifies | Classification replicates |
| `BPC_PerformanceScaler` | **Local only** | Per-client hardware adaptation |
| `SS_AudioManager` | **Local playback** | Gameplay parameters (heart rate, tension) sync from server |
| `BP_RoomAudioZone` | **Local only** | Each client applies room acoustics based on their position |
| `BPC_ProceduralEncounter` | Server generates | Spawned actors replicate normally |
### Key Patterns
- **Atmosphere is server-controlled, locally rendered.** Server sets atmosphere tier → clients play local audio/lighting/FX.
- **Scare events are synchronized via multicast** — all players experience the scare at the same moment.
- **Per-player systems** (MemoryDrift, PerformanceScaler) are strictly local.
- **Audio is local playback** — only gameplay parameters sync from server; sound assets loaded locally.
---
*Developer Reference v1.0 — 10 Adaptive Systems. Companion to docs/blueprints/10-adaptive/ specs.*