DevLog #7 – Persistence & Spawn Systems (Sept 28, 2025)
TL;DR
- Persistence Server fully live. Accounts, sessions, characters, and positional data persist.
- Spawn/Zone system implemented. Live entity creation, despawn, and tracking enabled.
- Account-to-Game flow connected: login → character → spawn → RiftStep movement.
- UE client parses snapshots; RiftStep tested from player input to world position with server-side validation.
- Per-client baselines live; bandwidth now scales predictably with RTT & entity activity.
Persistence Pipeline
- SQL Server: character data (ID, position, health, Will, status) persists across sessions.
- Session-to-Character bridge: account login → active character session → injected into world.
- Delta State Tracking: updated only on meaningful change, reducing persistence overhead.
Spawn System
- Zone-aware spawning implemented; RiftNet snapshot emitter filters entities based on Zone membership.
- RiftEntityManager tracks all entities, lifetime state, and ensures despawn logic triggers on logout.
- Server uses event-driven hooks for entity lifecycle (OnSpawn, OnDespawn, OnZoneEnter).
Combat + RiftStep
- Live movement → hit detection → combat resolution loop wired.
- RiftStep validated via server-authoritative raycasts (via Bullet for now).
- Basic enemy AI patrol behavior active for testing engagement logic.
Networking Enhancements
- Per-client snapshot baselines implemented; bandwidth now dynamic per client activity.
- RTT and RTO sampling now visible in client debug overlay.
- New snapshot diagnostic tools allow inspection of per-entity delta and history chain.
Web / Account System
account_detailsnow updates on login; no redirect required.- Session tokens now expire correctly on logout, and cleanup handled by server daemon.
- Character creation now routes through persistent endpoint; enforced naming rules + duplication lock-in place.
UE Client
- Client receives snapshots, interpolates RiftStep, renders entity health/state.
- Next: animations, visual hit effects, and skill casting.
- Client-side logs track performance metrics for each incoming frame.
What’s Next (→ Oct 10 Alpha Target)
- World object interactions (pickups, destructibles, trigger zones)
- First Crafting Node Prototype (harvest + inventory update)
- Local Chat Relay
- Enemy Aggro → Chase → Attack flow + Death/Respawn
- Character Creation UI polish and front-end zone selector