
StoryForge is a self-sustaining world simulation platform built on the premise that the best storytelling emerges from systems, not scripts. The architecture spans five layers: a Bevy/Rust ECS simulation core that runs authoritative world state with full autonomy for NPC agents, a Go orchestrator that routes sim intents to frontends and manages real-time state, a Python MCP server exposing characters and lore to LLMs, a perception pipeline that parses appearance and action events into structured logs, and a data layer anchored by MongoDB for persistence, Qdrant for semantic retrieval over memories and lore, and NATS for event streaming.

On the frontend, a Kotlin/Paper Minecraft client renders the world and decision prompts for players, while a Fabric client mod visualizes HUD elements and perception events. The system generates structured intents at the simulation layer, routes them through orchestration, and frontends consume them to drive player experience. Memory is vector-searchable. Lore is queryable. Characters maintain state across sessions with full relationship graphs.
The result is a world that feels genuinely alive where NPC behavior emerges from underlying systems rather than predetermined scripts, where player decisions ripple through a persistent, interconnected simulation, and where the line between authored narrative and emergent storytelling dissolves entirely. Every interaction is grounded in world state. Every consequence is real.