MOMENT ich würde nicht pauschal sagen, dass eine DB die relationale Datenschemas für ein Spiel unbedingt overkill wäre. Gut für Optionen etc pp. würde ich auch eher xml, ini, plaintext usw. empfehlen, aber gerade für den Spielstand habe ich doch die relationalen DBs lieb gewonnen, weil egal welche Variante man nimmt um die Daten ohne relationale Beziehungen abzuspeichern, läuft man Gefahr, dass böse Fehler passieren die man mit z.b. einer SQL DB vermeiden kann (wenn sie das entsprechend unterstützt).
Weil ansonsten kann es leicht passieren, dass man entweder z.b. für einen gegnertypen jedesmal das gleiche reinschreiben muss werden sich nicht gerade großartig von den Werten unterscheiden), oder man irgendwelche eindeutigen Kennungen einführen muss, die dann aber ggf an vielen Stellen geändert werden müssen, falls sich die Kennung ändert. Hier kann eine entsprechende DB schon helfen indem sie entsprechende Aktionen verhindert oder die Updates entsprechend verbreitet.
Wem das zu theoretisch war:
1. Option - alles ohne Verweise speichern bedeutet
Haus(name="erstes Haus", modell = "haus.x", hps = 400, preis = 800)
Haus(name="zweites Haus", modell = "haus.x", hps = 400, preis = 800)
<- viel Redundanz
2. Option - verweise einbauen
Haustyp(typ = "standardhaus", modell = "haus.x", hps = 400, preis = 800)
Haus(name="erstes Haus", typ = "standardhaus")
Haus(name="zweites Haus", typ = standardhaus")
<- vermeidung von Redundanz, aber was wenn sich der Typname ändert oder nicht mehr existiert?
3.Option - relationale DB nutzen
ähnlich wie 2. nur dass die DB entweder eine Veränderung verhindern oder entsprechende Einträge löschen kann, was viele Fehler vermeiden KANN (nicht muss).
Also je nachdem würde ich raten, einfach mal zu schauen, wie wichtig sowas wie "leicht zu ändern", "einfach zu handhaben", "wenig overhead" und "vorhandene vorkenntnisse" sind und entsprechend abzuwägen. Wobei ich als Argumente gegen eine DB nur das Erlernen von SQL, die installation einer entsprechende DB (was aber bei SQLite je entfällt) bzw. das Unvermögen die Daten per Editor zu ändern wirklich respektieren würde.
Wer willig ist SQL zu lernen oder es schon kann und Daten speichern will, die keine Optionen etc sind, dem rate ich zu einer DB
.