-
Notifications
You must be signed in to change notification settings - Fork 1
Server
Der Server wird in Go (1.6) entwickelt. Daher muss zuerst Go installiert werden um den Server ausführen zu können.
Nachdem Go installiert und der GOPATH gesetzt wurde muss man im Go-Workspace einen Ordner "src" erstellen und kann dort den Bomberman-Server hineinklonen.
Beispiel-Workspace:
GOPATH ausgeben lassen:
$ echo $GOPATH
~/go/
$GOPATH/src/bomberman-server (bomberman-server-directory)
Anwendung bauen:
$ go install <bomberman-server-directory>
Server starten:
$ $GOPATH/bin/bomberman-server
Per Telnet auf Port 5000 verbinden.
Prinzipiell kann ein angemeldeter Bot/Spieler ein einfacher Telnet-Client sein der Befehle (Strings) an den Server überträgt.
Folgende Befehle kann der Server verarbeiten:
| Zeichen | Befehl | Kommentar |
|---|---|---|
| w | nach oben gehen | |
| a | nach links gehen | |
| s | nach unten gehen | |
| d | nach rechts gehen | |
| b[d] | Bombe i Felder in Richtung d werfen | bw für 1 Feld nach oben, b für eigenes Feld |
| n | nichts tun | |
| q | Verbindung zu Server trennen | |
| name:[str] | Spielernamen festlegen |
Bei ungültigen Befehlen geschieht nichts.
Ausnahmen:
Alle nichteindeutigen Befehle zum Werfen einer Bombe (z.B. b1n oder b2u) legen die Bombe stattdessen auf die eigene Position. Wenn die eigene Reichweite 4 beträgt, man aber z.B. b7w sendet wird die nächsthöchste Reichweite verwendet, also b4w.
Nachdem der Client eine Verbindung mit dem Server hergestellt hat bekommt er eine ID und einen Spielernamen mitgeteilt: "YourID:xxxxxxxx\nYourName:Player1\n".
Die ID ist ein 8-stelliger String der zur Identifikation des Clients dient.
Eine Sekunde nachdem sich alle Spieler verbunden haben beginnt das Spiel.
Spielernamen setzen
Bevor das eigentliche Spiel beginnt also nach Verbindungsherstellung zum Server kann man "name:[gewünschter Name]" an den Server senden um einen Spielernamen festzulegen.