942 B
942 B
07 — Game-State-Baum
Type: grilling Status: open Blocked by: 01, 02
Question
Wie sieht der Weltzustand als Rust-Datenstruktur aus?
Entschieden ist: ein Game-Ownership-Baum mit Verweisen über IDs oder Indizes, kein ECS. Zu klären:
- Was besitzt was? Wo leben Held, aktuelle Etage, Räume, Gegner, Bodenloot, Questfortschritt?
- Trennung von unveränderlichen Definitionen (aus Mods geladen) und veränderlichem Laufzeitzustand: zwei getrennte Strukturen, oder eine mit Verweisen in den Katalog?
- Referenzform:
String-ID überall, oder beim Laden zuusize-Index auflösen? Was kostet das beim Speichern? - Wo werden aktive Statuseffekte gehalten — am Träger oder in einer zentralen Liste?
- Welche Operation kämpft absehbar mit dem Borrow-Checker (Gegner greift Held an, während beide im selben
Gamehängen), und wie wird das aufgelöst?
Ergebnis: Skizze der Structs mit Besitzverhältnissen und Referenzform.