<...> Variable
[...] Optionale Felder
{a|b|c|...} Entweder a oder b oder c oder ...
Alles andere sind Terminalzeichen
Das was jetzt dasteht wird gesendet bzw. empfangen. Mit Ausnahme der Fehler
Zu Senden:
NEU <Spieler Anzahl>
NAME <Spielname>
PASSWD <Passwort>
TIMEOUT <Timeout in Millisekunden>
Bestätigung:
SPIEL_ANGEMELDET(Disconnect)
Fehler:
FEHLER_NAME_VERGEBEN(Disconnect)
Zu Senden:
LIST
Bestätigung:
LISTE <anzahlSpiele>
<Name> <Angemeldete Spieler> <Spieleranzahl> {WARTET|GESTARTET|BEENDET}
<Name> <Angemeldete Spieler> <Spieleranzahl> {WARTET|GESTARTET|BEENDET}
...
ENDE
(Disconnect)
Fehler:
Keine(Disconnect)
Zu Senden:
JOIN <Spielname>
PASSWD <Passwort>
NAME <Spielername>
ALTER <Alter>
Bestätigung (an Alle):
SPIELER_ANGEMELDET <Spielername> <Alter>
Fehler:
FEHLER_NAME_VERGEBEN(Disconnect)
Zu Senden:
WATCH <Spielname>
NAME <Zuschauername>
Bestätigung (an Alle):
ZUSCHAUER_ANGEMELDET <Zuschauername>
Fehler:
Keine (Disconnect)
Wenn ein Zuschauer sich abmeldet oder dessen Netzwerkverbindung weg ist, bekommen alle Spieler und Zuschauer diese Nachricht.
Gesendet:
ZUSCHAUER_ABGEMELDET <Zuschauername>
Zu Senden:
PING
Bestätigung:
PONG
Fehler:
Keine (Disconnect)
Zu Senden:
STATUS <Spielname>
Bestätigung:
Ein Statusbericht für das Spiel, siehe unten.
Fehler:
ERROR 1029: Es gibt kein Spiel mit diesem Namen. (Disconnect)
Beschreibung: Wird ganz am Anfang gesendet damit jeder Spieler seinen Ritter platziert
Gesendet:
RITTER_SETZEN
Reaktion:
AKTION SETZE_RITTER_ERSTESMAL
X <x>
Y <y>
Bestätigung : Standard Aktionsbestätigung
Fehler: s.u.
Beschreibung: Wird vor jeder Phase einem Spieler gesendet
Gesendet:
KOENIG_SETZEN
Reaktion:
AKTION SETZE_KOENIG
FARBE <f>
X <x>
Y <y>
Bestätigung : Standard Aktionsbestätigung
Fehler: s.u.
Alle Spieler haben in dieser Runde ihre Züge abgegeben.
Gesendet:
ZUG_BEGINNT <Spielerfarbe>
Alle Spieler haben in dieser Runde ihre Züge abgegeben.
Gesendet:
ZUG_BEENDET <Spielerfarbe>
Alle Spieler haben in dieser Runde ihre Züge abgegeben.
Gesendet:
RUNDE_BEENDET
Das Spiel ist zu Ende.
Gesendet:
SPIEL_BEENDET
Beschreibung: Sobald ein Spieler einen Zug abgeben soll
bekommt er diese Nachricht. Für die Reaktion gilt: X ist horizontal, Y
vertikal. Wie es eben üblich ist ...
Gesendet:
ZUG_ABGEBEN
Reaktion:
ZUG
AKTION <Aktion>
[KARTE <Kartennummer>] -- Die komplette zweistellige Nummer
[X <x1> -- Wenn eine Positon benötigt wird
Y <y1>
[X <x2> -- Wenn eine zweite Position benötigt wird
Y <y2>]]
AKTION <Aktion>
.... -- Weitere Aktionen
ZUGENDE
Bestätigung :
Standardaktionsbestätigung für jede einzelne Aktion, zusätzlich Bestätigung
des Zugendes (siehe einzelne Aktionen für Details).
Fehler:
Zugfehler (Siehe einzelne Aktionen)
FEHLER_NICHT_VORHANDEN -- Die Aktion gibt es nicht
FEHLER_NICHT_AM_ZUG
FEHLER_TIMEOUT_UEBERSCHRITTEN -- kommt sobald er abgelaufen ist
FEHLER_ZUG_UNMOEGLICH -- Wenn undefinierter Zugfehler auftritt
Aktion(Aktionskarte,Spielerfarbe,x1,y1,x2,y2) entspricht:
AKTION
<aktuelle Aktion>
KARTE
<Aktionskarte> -- komplette
zweistellige Nummer
FARBE
<Spielerfarbe>
X <x1>
Y <y1>
X
<x2>
Y
<y2>
Beschreibung: Verwende Aktionspunkt um den Punktestand zu erhöhen
Zu Senden: Aktion()
Extra Bestätigung: Keine
Bestätigung an Alle: Aktion(Spielerfarbe)
Fehler:
FEHLER_ZU_WENIG_AKTIONSPUNKTE
Beschreibung: Setze einen neuen Ritter ein
Zu Senden: Aktion(x,y);
Extra Bestätigung: Keine
Bestätigung an Alle: Aktion(Spielerfarbe,x1,y1);
Fehler:
FEHLER_ZU_WENIG_AKTIONSPUNKTE
FEHLER_ZU_HOCH
FEHLER_FIGUR_VORHANDEN
FEHLER_UNBENACHBART
Beschreibung: Setze einen Baustein ein
Zu Senden: Aktion(x,y);
Extra Bestätigung: Keine
Bestätigung an Alle: Aktion(Spielerfarbe,x,y);
Fehler:
FEHLER_ZU_WENIG_AKTIONSPUNKTE
FEHLER_HAT_ZUWENIG_BAUSTEINE
FEHLER_BURGEIGENSCHAFT_VERLETZT
FEHLER_BURG_NEUBAU
Beschreibung: Versetze den König (nur nach Aufforderung)
Zu Senden: Aktion(x,y);
Extra Bestätigung: Keine
Bestätigung an Alle: Aktion(Spielerfarbe,x,y);
Fehler:
FEHLER_FIGUR_VORHANDEN
Beschreibung: Ziehe einen Ritter für einen Aktionspunkt
Zu Senden: Aktion(x1,y1,x2,y2);
Extra Bestätigung: Keine
Bestätigung an Alle: Aktion(Spielerfarbe,x1,y1,x2,y2);
Fehler:
FEHLER_ZU_WENIG_AKTIONSPUNKTE
FEHLER_ZU_HOCH
FEHLER_FIGUR_VORHANDEN
FEHLER_KEINE_FIGUR
FEHLER_ZUG_NICHT_GERADEAUS
FEHLER_ZUG_ZU_LANG
FEHLER_ZUG_DURCH_BURG_UNMOEGLICH
Beschreibung: Ziehe eine Aktionskarte
Zu Senden: Aktion();
Extra Bestätigung: KARTE <Kartennummer>
Bestätigung an Alle: Aktion(Spielerfarbe);
Fehler:
FEHLER_ZU_WENIG_AKTIONSPUNKTE
FEHLER_KEINE_KARTE_VORHANDEN
FEHLER_NUR_ZWEI_KARTEN
Beschreibung: Versetze einen Baustein (AK)
Zu Senden: Aktion(Karte,x1,y1,x2,y2);
Extra Bestätigung: Keine
Bestätigung an Alle: Aktion(Spielerfarbe,x1,y1,x2,y2);
Fehler:
FEHLER_HAT_AKTIONSKARTE_NICHT
FEHLER_BURGEIGENSCHAFT_VERLETZT
FEHLER_BURG_WIRD_GETRENNT
FEHLER_BURGEN_VERBUNDEN
FEHLER_BURG_NEUBAU
FEHLER_ZU_WENIG_BURGEN
Beschreibung: Ziehe einen Ritter Diagonal (AK)
Zu Senden: Aktion(Karte,x1,y1,x2,y2);
Extra Bestätigung: Keine
Bestätigung an Alle: Aktion(Spielerfarbe,x1,y1,x2,y2);
Fehler:
FEHLER_HAT_AKTIONSKARTE_NICHT
FEHLER_ZU_HOCH
FEHLER_FIGUR_VORHANDEN
FEHLER_KEINE_FIGUR
FEHLER_ZUG_ZU_LANG
Beschreibung: Ziehe in einer Burg auch aufwärts (AK)
Zu Senden: Aktion(Karte,x1,y1,x2,y2);
Extra Bestätigung: Keine
Bestätigung an Alle: Aktion(Spielerfarbe,x1,y1,x2,y2);
Fehler:
FEHLER_HAT_AKTIONSKARTE_NICHT
FEHLER_FIGUR_VORHANDEN
FEHLER_KEINE_FIGUR
FEHLER_ZUG_NICHT_GERADEAUS
FEHLER_ZUG_ZU_LANG
FEHLER_ZUG_DURCH_BURG_UNMOEGLICH
Beschreibung: Setze einen Baustein unter einen Ritter (AK)
Zu Senden: Aktion(Karte,x,y);
Extra Bestätigung: Keine
Bestätigung an Alle: Aktion(Spielerfarbe,x,y);
Fehler:
FEHLER_HAT_AKTIONSKARTE_NICHT
FEHLER_HAT_ZUWENIG_BAUSTEINE
FEHLER_ZUG_UNMOEGLICH
FEHLER_BURGEIGENSCHAFT_VERLETZT
Beschreibung: Versetze einen eigenen Ritter an eine andere Position (AK)
Zu Senden: Aktion(Karte,x1,y1,x2,y2);
Extra Bestätigung: Keine
Bestätigung an Alle: Aktion(Spielerfarbe,x1,y1,x2,y2);
Fehler:
FEHLER_HAT_AKTIONSKARTE_NICHT
FEHLER_FIGUR_VORHANDEN
FEHLER_KEINE_FIGUR
Beschreibung: Ziehe mit einem Ritter zwei Stufen nach oben (AK)
Zu Senden: Aktion(Karte,x1,y1,x2,y2);
Extra Bestätigung: Keine
Bestätigung an Alle: Aktion(Spielerfarbe,x1,y1,x2,y2);
Fehler:
FEHLER_HAT_AKTIONSKARTE_NICHT
FEHLER_ZU_HOCH
FEHLER_FIGUR_VORHANDEN
FEHLER_KEINE_FIGUR
FEHLER_ZUG_NICHT_GERADEAUS
FEHLER_ZUG_ZU_LANG
Beschreibung: Springe mit einem Ritter über ein Feld auf dem sich ein anderer befindet (AK)
Zu Senden: Aktion(Karte,x1,y1,x2,y2);
Extra Bestätigung: Keine
Bestätigung an Alle: Aktion(Spielerfarbe,x1,y1,x2,y2);
Fehler:
FEHLER_HAT_AKTIONSKARTE_NICHT
FEHLER_ZU_HOCH
FEHLER_FIGUR_VORHANDEN
FEHLER_KEINE_FIGUR
FEHLER_ZUG_NICHT_GERADEAUS
FEHLER_ZUG_ZU_LANG
Beschreibung: Setze Baustein aus allgemeinen Vorrat (AK)
Zu Senden: Aktion(Karte,x,y);
Extra Bestätigung: Keine
Bestätigung an Alle: Aktion(Spielerfarbe,x,y);
Fehler:
FEHLER_HAT_AKTIONSKARTE_NICHT
FEHLER_FIGUR_VORHANDEN
FEHLER_BURGEIGENSCHAFT_VERLETZT
FEHLER_BURG_NEUBAU
Beschreibung: Erstemal den Ritter setzen (Nur nach Aufforderung bei Spielbeginn)
Zu Senden: Aktion(x,y);
Extra Bestätigung: Keine
Bestätigung an Alle: Aktion(Spielerfarbe,x,y);
Fehler:
FEHLER_FIGUR_VORHANDEN
Beschreibung: Spiele die Karte die dir diese Runde Sechs Aktionspunkte gibt (AK)
Zu Senden: Aktion(Karte);
Extra Bestätigung: Keine
Bestätigung an Alle: Aktion(Spielerfarbe);
Fehler:
FEHLER_HAT_AKTIONSKARTE_NICHT
Beschreibung: Spiele die Karte die dir diese Runde Sieben Aktionspunkte gibt (AK)
Zu Senden: Aktion(Karte);
Extra Bestätigung: Keine
Bestätigung an Alle: Aktion(Spielerfarbe);
Fehler:
FEHLER_HAT_AKTIONSKARTE_NICHT
KARTE_VERSETZE_BAUSTEIN = 0
KARTE_ZIEHE_DIAGONAL = 1
KARTE_UNTERSCHIEBE_BAUSTEIN = 2
KARTE_VERSETZE_RITTER = 3
KARTE_ZIEHE_ZWEIEBENEN = 4
KARTE_ZIEHE_UEBER_RITTER = 5
KARTE_SETZE_BAUSTEIN_ALLGEMEIN = 6
KARTE_ZIEHE_DURCHTOR = 7
KARTE_SECHS_AKTIONSPUNKTE = 8
KARTE_SIEBEN_AKTIONSPUNKTE = 9
Die Kartennummer bekommt dann noch die Farbe, so dass sich Nummern zwischen 0 und 39 ergeben.
Diese beschreiben beliebige Textnachrichten zum Chatten, aber auch damit der Server gewisse Informationen verbreiten kann, wie zum Beispiel die Anmeldung eines neuen Spielers oder ähnliches.
Zu Senden:
NACHRICHT <Text>
Bestätigung an Alle:
NACHRICHT <Spielerfarbe> <Text>
Fehler: Keine
Zu Senden:
PING
Bestätigung:
PONG
Fehler:
Keine (Disconnect)
Dient dazu den aktuellen Spielstatus zu erfahren.
Zu senden:
STATUS
Bestätigung:
STATUS <Spielname> {WARTET|GESTARTET|BEENDET}
PHASE <aktuelle Phase>
RUNDE <aktuelle Runde>
ZUG <aktueller Zug>
ACTIVE <Spielername der am Zug ist>
TIMEOUT <Länge des Timeouts>
SPIELER <Anzahl Mitspieler>
<Spielernummer> <Spielername> <Spielerpunkte> <Spieleralter> <Burgen für Zug>
<Spielernummer> <Spielername> <Spielerpunkte> <Spieleralter> <Burgen für Zug>
...
ZUSCHAUER
<ZuschauerName>
...
STATUSENDE
Fehler: Keine
Dient dazu das aktuelle Spielfeld anzuzeigen.
Zu Senden:
PLAN
Bestätigung:
Die inneren Zahlen stehen für die Höhe, steht daneben ein Buchstabe, dann sagt dieser aus, was für ein Ritter (Orange,Blau,...) oder König draufsteht.
PLAN <Breite der quadratischen Matrix>
0
1 2 3 4 5
6 7
0 0
0 0 0 1 0
0 0
1 0
0 1K 0 0 0
0 0
2 0
0 1B 0 0 1O
1 0
3
1O 0 0 0 0
1 0 0
4
0 0 0 0 0
0 0 1
5
0 0 1 0 0
1 0 0
6
0 0 0 0 0
0 0 0
7
0 0 0 1 0
0 0 0
PLANENDE
Fehler: FEHLER_SPIEL_LAEUFT_NICHT
FEHLER_ZU_WENIG_AKTIONSPUNKTE |
1000 |
FEHLER_HAT_AKTIONSKARTE_NICHT |
1001 |
FEHLER_HAT_ZUWENIG_BAUSTEINE |
1002 |
FEHLER_ZUG_UNMOEGLICH |
1003 |
FEHLER_NICHT_IMPLEMENTIERT |
1004 |
FEHLER_ZU_HOCH |
1005 |
FEHLER_FIGUR_VORHANDEN |
1006 |
FEHLER_UNBENACHBART |
1007 |
FEHLER_KEINE_FIGUR |
1008 |
FEHLER_BURGEIGENSCHAFT_VERLETZT |
1009 |
FEHLER_ZUG_NICHT_GERADEAUS |
1010 |
FEHLER_ZUG_ZU_LANG |
1011 |
FEHLER_BURG_WIRD_GETRENNT |
1012 |
FEHLER_BURG_NEUBAU |
1013 |
FEHLER_ZU_WENIG_BURGEN |
1014 |
FEHLER_KEINE_KARTE_VORHANDEN |
1015 |
FEHLER_NICHT_AM_ZUG |
1016 |
FEHLER_NUR_ZWEI_KARTEN |
1017 |
FEHLER_ZUG_DURCH_BURG_UNMOEGLICH |
1018 |
FEHLER_NICHT_VORHANDEN |
1019 |
FEHLER_NAME_VERGEBEN |
1020 |
FEHLER_TIMEOUT_UEBERSCHRITTEN |
1021 |
FEHLER_UNGUELTIGE_NACHRICHT |
1022 |
FEHLER_ANZAHL_SPIELER |
1023 |
FEHLER_IN_ANMELDUNG |
1024 |
FEHLER_HAT_KEINE_RITTER_MEHR |
1025 |
FEHLER_SPIEL_LAEUFT_NICHT |
1026 |
FEHLER_KARTE_SCHON_GESPIELT |
1027 |
FEHLER_MAX_SPIELANZAHL_ERREICHT |
1028 |
FEHLER_SPIEL_NICHT_VORHANDEN |
1029 |
FEHLER_FALSCHES_PASSWORT |
1030 |
FEHLER_KARTE_PASST_NICHT |
1031 |
FEHLER_BURGEN_VERBUNDEN |
1032 |