Konsitenzprüfungen einführen...
Verfasst: So 24. Aug 2014, 11:56
Moin...
Das Spiel befindet sich ja grade in einer großen Überarbeitungsphase, mit der die größten Probleme behoben werden sollen. Diese Probleme sind ja mit Masse durch schlechte Synchroonisation zwischen Client und Server zu erklären.
Ich schlage daher vor, das für ALLE Monster eine Reihe von Konsistenzprüfungen eingeführt werden, die auf dem Client ausgeführt werden und somit keinerlei Serverlast erzeugen. Erst wenn bei der Konsistenzprüfung etwas komisches festgestellt wird, stubst der Client selbstständig den Server an und fragt nach einer Synchronisation.. Diese ist an der Stelle ja dann sowieso erforderlich.
Wichtige Konsistenzprüfungen wären:
- Voodoo-doctor läuft herum UND ist im Status "trinkt Voodoo-Zeugs". Beides gleichzeitig ist unmöglich -> inkonsistent.
- Hexer läuft herum und "isst". Beides gleichzeitig ist unmöglich -> inkonsistent.
- Arbeiter steht an seiner Werkbank und Restzeit ist ohne Anzeige (=0). Gegenstand müsste fertig sein -> inkonsistent.
- Monster ist hungrig und steht am Esstisch und Essen wird im Lager angezeigt. Monster müsste essen -> inkonsistent.
- Monster hat negative Erfahrungspunkte. Monsterlevel stimmt offensichtlich nicht -> inkonsistent.
Durch solche Prüfungen könnte man die Situation deutlich entschärfen, ohne das man den ganzen Code neu schreiben muss, was nur ein großes Team mit ausgiebiger QA-Phase auch so hinkriegen kann, das es hinterher nicht einfach eine andere Liste von Fehlern gibt.
Das Spiel befindet sich ja grade in einer großen Überarbeitungsphase, mit der die größten Probleme behoben werden sollen. Diese Probleme sind ja mit Masse durch schlechte Synchroonisation zwischen Client und Server zu erklären.
Ich schlage daher vor, das für ALLE Monster eine Reihe von Konsistenzprüfungen eingeführt werden, die auf dem Client ausgeführt werden und somit keinerlei Serverlast erzeugen. Erst wenn bei der Konsistenzprüfung etwas komisches festgestellt wird, stubst der Client selbstständig den Server an und fragt nach einer Synchronisation.. Diese ist an der Stelle ja dann sowieso erforderlich.
Wichtige Konsistenzprüfungen wären:
- Voodoo-doctor läuft herum UND ist im Status "trinkt Voodoo-Zeugs". Beides gleichzeitig ist unmöglich -> inkonsistent.
- Hexer läuft herum und "isst". Beides gleichzeitig ist unmöglich -> inkonsistent.
- Arbeiter steht an seiner Werkbank und Restzeit ist ohne Anzeige (=0). Gegenstand müsste fertig sein -> inkonsistent.
- Monster ist hungrig und steht am Esstisch und Essen wird im Lager angezeigt. Monster müsste essen -> inkonsistent.
- Monster hat negative Erfahrungspunkte. Monsterlevel stimmt offensichtlich nicht -> inkonsistent.
Durch solche Prüfungen könnte man die Situation deutlich entschärfen, ohne das man den ganzen Code neu schreiben muss, was nur ein großes Team mit ausgiebiger QA-Phase auch so hinkriegen kann, das es hinterher nicht einfach eine andere Liste von Fehlern gibt.