FreeDoko kennt drei Arten von Nachrichten:
Einfache Nachrichten werden nur für die Verbindung genutzt.
Spezielle Nachrichten sind Nachrichten, die nichts mit dem Spiel an sich zu tun haben. Sie sind Hilfsmittel für die Kommunikation.
Alle Nachrichten die den Spielverlauf betreffen sind normale Nachrichten. Auch die Nachrichten zum Chatten fallen unter die normalen Nachrichten.
Die Zeit gibt an, zu welchem Zeitpunkt (bzgl. des absendenden Rechners) die Nachricht losgeschickt wurde. Sie kann z.B. verwendet werden, um die Rechner zu synchronisieren. Die Zeit wird bei jeder speziellen und normalen Nachricht mit übertragen.
Statt einer Zeit kann auch - verwendet werden, dann wird die Zeit ignoriert.
Eine Nachricht von FreeDoko besteht immer aus eine Zeile, d.h. sie endet mit einem Zeilenendezeichen (\n).
Eine einfache Nachricht besteht nur aus Text. Das erste Zeichen darf weder eine Ziffer noch ein Minuszeichen sein.
Beispiel: FreeDoko server
Eine spezielle Nachricht beginnt mit einem Stern, gefolgt von der Zeit, gefolgt von einem Doppelpunkt. Dahinter folgt der Nachrichteninhalt.
Beispiel: *12345.67: ping: 10
Eine spezielle Nachricht beginnt mit der Zeit, gefolgt von einem Doppelpunkt. Dahinter folgt der Nachrichteninhalt.
Beispiel: 12345.67: Name: Diether
Der Syntax der Zeit ist Sekunden.Milisekunden oder -.
Beispiel: 12345.67
Die normalen Nachrichten steuern den Spielverlauf. Daher werde diese nicht jederzeit akzeptiert. Außerdem gibt es noch die Unterscheidung zwischen Elter und Kind-Nachrichten.
Nachrichten, die vor dem Start des Turniers gesendet werden:
Nachrichten, die während eines Turniers gesendet werden:
Nachrichten, die während eines Spiels gesendet werden:
Elter | Kind | Nachricht |
---|---|---|
E | K | name |
E | K | chat |
E | K | ask |
E | player $Nummer: type | |
E | K | player $Nummer: name |
E | players switch | |
E | rules | |
E | rule | |
E | party start | |
E | party start round | |
E | party finish | |
E | K | gameplay action |
E | game: start | |
E | game: finish | |
E | game: close | |
E | game: startplayer | |
E | game: seed | |
E | game: hand $Player |
Nachfolgend ist eine beispielhafte Übersicht über die Kommunikation zwischen dem Elter und dem Kind.
Elter | Kind |
---|---|
Servertypinformation | |
Name | |
Name | |
Regeln | |
Spielernummer | |
Regeländerung | |
starte Turnier | |
starte Spiel | |
verteile Karten | |
Vorbehalte | |
Vorbehalt | |
Spieltyp (+ Solospieler, ...) | |
gespielte Karten | |
gespielte Karte | |
schließe Stich | |
Ansage | |
Ansage | |
Spielende | |
Turnierende | |
Verbindungsabbruch | Verbindungsabbruch |