User Stories zu TicTacToe (Server + manueller Spieler)
1. Tic-Tac-Toe soll verteilt implementiert werden. Es gibt einen
Server und mehrere manuelle Spieler (Clients)
2. Schwarz (X) fängt immer das Spiel an
- Wie soll die Zuweisung von Schwarz/Weiss erfolgen?
Zufällig? Chronologisch?
- Momentan egal. Wird wichtig, wenn wir Turnierregeln
einführen.
3. In der Loginphase nimmt der Server Spieler an
4. In der Spielphase startet der Server einen Thread pro Spiel
- Sollte es mehr als ein Spiel geben?
- Nein. In diesem Praktikum konzentrieren wir uns auf die
automatischen Spieler. Ohne Turnierregeln ist das tatsächlich
langweilig: Momentan ist nur jeweils ein Spiel gefordert. Wer
vorausarbeiten will, kann die angemeldeten Spieler paarweise
zueinander zuordnen. Die Spiele finden dabei (pro Runde) gleichzeitig
statt.
- Erweiterungen für mehr menschlichen Komfort kommen noch
(Lobby, kontinuierliches Anmelden).
5. Ein manueller Spieler wird über die Konsole bedient
- GUI kommt noch.
- Falsche Eingaben des Benutzers werden vom manuellen Spieler
abgefangen.
6. Es wird das standardisierte PlayerInterface-Protokoll
verwendet
- Was passiert wenn der Client komplett falsche
(unparsbare) Daten zurückliefert?
- Das ist ein Protokollfehler. Das Spiel wird sofort
beendet. Derjenige der Spieler, der den Fehler gemacht hat, hat das
Spiel verloren.
- Was passiert bei fehlerhaften Zügen, Timeout,
Disconnects?
- Das sind, wie im vorhergehenden Eintrag, Protokollfehler.
- Soll der Server während der Spielphase weiterhin
Spieler annehmen?
- Es soll niemand neues zugelassen werden, aber es dürfen
Spieler wieder online gehen, die zwischendurch offline waren (wegen
eines Crashs o.ä.).
- Nach beendetem Spiel: disconnecten beide Clients oder
können sie gleich ein weiteres Spiel beginnen?
- Sie stehen für beliebig viele Spiele zur Verfügung (momentan
noch nicht so wichtig, aber bei Reversi wird es Turniere geben). Bei
Reversi: Am Ende eines Turnieres disconnectet der Server alle Clients.
History
- 2006-11-28: Klarstellung bei (4).