Server Side Systems

Server-side architecture for controllers, services, data contracts, and persistence boundaries.

System Surface Source of Truth Notes
HexMapController runtime orchestration /hexmap + /api/map/visual-state HexMapController + dc_campaign_dungeons.dungeon_data normalization Bootstraps authoritative map payload/state into drupalSettings for client rendering.
Dungeon generation API /api/campaign/{campaign_id}/dungeons/generate DungeonGeneratorController + DungeonGeneratorService Generates multi-level dungeon payloads and persists canonical dungeon/room records.
Room generation API /api/campaign/{campaign_id}/dungeons/{dungeon_id}/levels/{depth}/rooms RoomGeneratorController + RoomGeneratorService Generates room hexes/entities/entry-exit points and writes campaign room records.
GM location/room orchestration /api/campaign/{campaign_id}/gm/locations/request + /gm/rooms/request LocationGenerationController + MapGeneratorService + RoomGeneratorService Expands live campaigns with generated locations and updates navigation/room state.
Combat runtime APIs /api/combat/* + encounter action APIs CombatEncounterApiController + encounter phase handlers Maintains server-authoritative initiative, turn, and encounter progression.