Open Arena rcon via Shell

Hat man einen dedicated Server für Open Arena aufgesetzt, so lässt sich dieser im Client über die Command Console mithilfe von rcon steuern – oder man gibt die Befehle direkt im Prozess des Servers (oa_ded) ein.
Was kann man nun tun wenn man von einem anderen Prozess aus Befehle an den Server schicken möchte, oder dieser beispielsweise als Hintergrundprozess ohne Shell läuft?

Zuerst einmal netcat installieren, falls nicht bereits geschehen.
Der Trick bei der Sache ist nun, dass jedes Kommando vier non-breaking-spaces (255) vorangestellt bekommt. Daher bietet es sich an ein kleines Shell-Script zu erstellen, welches einem das Gepfriemel abnimmt:

#!/bin/bash
echo $'\377'$'\377'$'\377'$'\377'"rcon $2 $3" | nc -uw0 $1 27960

Damit lässt sich der Server nun relativ bequem von der Shell aus steuern:

chmod +x rcon.sh
./rcon.sh 127.0.0.1 meinRconPasswort "say Hello"
Hello

Natürlich kann man somit auch zum Beispiel die aktuelle Map wechseln, und generell das Geschehen auf dem Server sehr schön scripten.

Kommentare (0)

Wenn Sie möchten können Sie einen Kommentar hinterlassen!
Felder mit einem Stern (*) sind Pflichtfelder.

wird nicht veröffentlicht
Durch das Anhaken dieser Checkbox erklären Sie sich mit der Speicherung Ihrer Daten durch diese Webseite einverstanden. Um Kommentare anzeigen zu können speichert diese Webseite den angegebenen Namen, die E-Mail Adresse, die angegebene Webseite, den Kommentartext sowie den Zeitstempel. Auf Wunsch können Sie Ihre Kommentare später wieder löschen lassen. Detaillierte Informationen finden Sie in meiner Datenschutz-Erklärung.