28 lines
934 B
Markdown
28 lines
934 B
Markdown
# Arkitektur (MVP)
|
|
|
|
## Moduler
|
|
- `core_admin`: global drift/admin, health, valideringer
|
|
- `lobby`: session creation/join, player presence
|
|
- `fupogfakta`: game rules, rounds, scoring (spil 1)
|
|
- `realtime`: websocket events + state sync
|
|
- `voice`: fælles voice-acting/TTS interface
|
|
|
|
## Auth & sessions
|
|
- Login (username/password) kræves for at oprette/hoste spil
|
|
- Deltagelse i kørende spil sker via session-kode
|
|
|
|
## Voice-acting (platformkrav)
|
|
- Alle spil skal kunne afspille voice lines via fælles interface
|
|
- Voice er modulært pr. spil (ikke hardcoded)
|
|
|
|
## Realtidsmodel
|
|
- Host-screen og mobilklienter forbinder via websocket
|
|
- Autoritativ game state ligger server-side
|
|
- Klienter sender intents (`submit_lie`, `submit_guess`)
|
|
- Server broadcaster state transitions
|
|
|
|
## Datamodel-principper
|
|
- Score beregnes server-side
|
|
- Hver scoreændring gemmes i `ScoreEvent`
|
|
- Runde-konfiguration gemmes per session (points ikke hardcoded)
|