Difference between revisions of "Luanti in der Schule/RaspberryPi-Server anlegen und einrichten"
Line 6: | Line 6: | ||
Zunächst sind die Abhängigkeiten zum Compilieren wie folgt zu installieren: | Zunächst sind die Abhängigkeiten zum Compilieren wie folgt zu installieren: | ||
− | sudo apt-get install build-essential libirrlicht-dev cmake libbz2-dev libpng-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev | + | sudo apt-get install build-essential libirrlicht-dev cmake libbz2-dev libpng-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev |
=== Herunterladen === | === Herunterladen === | ||
+ | Den Minetest Quellcode kann man auf verschiedene Arten herunterladen. Nachfolgend wird die Methode über git erklärt. | ||
+ | In diesem Fall wird mittels der git Option "--branch stable-0.4" der Quellcode des zum Zeitpunkt des Erstellens der Anleitung aktuelle Quellcode von Minetest heruntergeladen. | ||
+ | |||
+ | Den eigentlichen Minetest Quellcode abrufen: | ||
+ | |||
+ | git clone --branch stable-0.4 --depth 1 https://github.com/minetest/minetest.git | ||
+ | |||
+ | In das erstellte Verzeichnis wechseln: | ||
+ | |||
+ | cd minetest/ | ||
+ | |||
+ | Den Quellcode für das Basies Minetest-Spiel abrufen: | ||
+ | |||
+ | git clone --branch stable-0.4 --depth 1 https://github.com/minetest/minetest_game.git games/minetest_game | ||
=== Kompilieren === | === Kompilieren === | ||
+ | |||
+ | Anschließend festlegen was gebaut werden soll. In diesem Fall mit dem Minetest Server als Release-Version: | ||
+ | |||
+ | cmake . -DRUN_IN_PLACE=TRUE -DBUILD_SERVER=TRUE -DCMAKE_BUILD_TYPE="Release" | ||
+ | |||
+ | Das ganze dann schließlich kompilieren, was einige Zeit in Anspruch nimmt. Die Option "-j 4" legt fest das auf vier Prozessorkernen gleichzeitig kompiliert wird, was für den Raspberry 2 oder 3 Sinn macht: | ||
+ | |||
+ | make -j 4 | ||
+ | |||
+ | Sollte alles fehlerfrei durchgelaufen sein, befindet sich der fertig compilierte Minetest Server und Client im Unterverzeichnis bin. | ||
=== Starten === | === Starten === | ||
+ | |||
+ | Der Server kann dann, wenn man sich im bin Verzeichnis befindet, einfach wie folgt gestartet werden: | ||
+ | |||
+ | ./mintestserver | ||
== Ein erster Besuch == | == Ein erster Besuch == |
Revision as of 09:16, 9 October 2016
Server auf dem RaspberryPi installieren und starten
Prinzipiell ist das Herunterladen und Compilieren bereits im README auf der Minetest-Seite erklärt. https://github.com/minetest/minetest/blob/master/README.txt Nachfolgend ist aber nochmals aufgeführt wie man dies unter Raspbian (Jessie) durchführen kann.
Abhängigkeiten
Zunächst sind die Abhängigkeiten zum Compilieren wie folgt zu installieren:
sudo apt-get install build-essential libirrlicht-dev cmake libbz2-dev libpng-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev
Herunterladen
Den Minetest Quellcode kann man auf verschiedene Arten herunterladen. Nachfolgend wird die Methode über git erklärt. In diesem Fall wird mittels der git Option "--branch stable-0.4" der Quellcode des zum Zeitpunkt des Erstellens der Anleitung aktuelle Quellcode von Minetest heruntergeladen.
Den eigentlichen Minetest Quellcode abrufen:
git clone --branch stable-0.4 --depth 1 https://github.com/minetest/minetest.git
In das erstellte Verzeichnis wechseln:
cd minetest/
Den Quellcode für das Basies Minetest-Spiel abrufen:
git clone --branch stable-0.4 --depth 1 https://github.com/minetest/minetest_game.git games/minetest_game
Kompilieren
Anschließend festlegen was gebaut werden soll. In diesem Fall mit dem Minetest Server als Release-Version:
cmake . -DRUN_IN_PLACE=TRUE -DBUILD_SERVER=TRUE -DCMAKE_BUILD_TYPE="Release"
Das ganze dann schließlich kompilieren, was einige Zeit in Anspruch nimmt. Die Option "-j 4" legt fest das auf vier Prozessorkernen gleichzeitig kompiliert wird, was für den Raspberry 2 oder 3 Sinn macht:
make -j 4
Sollte alles fehlerfrei durchgelaufen sein, befindet sich der fertig compilierte Minetest Server und Client im Unterverzeichnis bin.
Starten
Der Server kann dann, wenn man sich im bin Verzeichnis befindet, einfach wie folgt gestartet werden:
./mintestserver
Ein erster Besuch
Wenn der Server ohne Fehler gestartet ist kann man einen ersten Besuch abstatten. Auch wenn man nun eine Welt erstellt hat, so geht es erst einmal nur um das Testen und die Einstellungen. Die endgültige Welt kann man von einer Einzelspieler-Welt kopieren, in der man einige Strukturen vorbereitet.
Um die Adresse des RasPis im lokalen Netz zu finden kann man in einer Konsole folgendes eingeben:
...
Und dann kann man sich zum Testen, vielleicht von seinem eigenen Rechner, auf dem RasPi-Server anmelden.
Rechte vergeben
Im Gegensatz zur Singleplayer-Welt, auf der man sich selber alle Rechte geben kann, muss man bei einem Server das über einen Eintrag in der der Datei "auth.txt" vornehmen, die im Verzeichnis der erstellten Welt zu finden sein sollte, wenn sich mindestens ein Spieler angemeldet hat.
Das Format für jede Zeile - also für jeden Spieler - ist das folgende:
name:hashed_password:privs
Das könnte zum Beispiel so aussehen:
celeron55:CcCUjNUDVJxmXmTHj+7WKHvA9Ds:interact,shout
- Das bedeutet, das der Spieler, der sich mit dem Namen celeron55 angemeldet hat, die Privilegien "interact" und "shout" hat. Er kann also mit anderen Spielern chatten und hat die Erlaubnis zum Bauen, Abbauen und Benutzen von Blöcken.
Wichtig für einen Admin, der sich im Spiel um die anderen Spieler und deren Rechte kümmern soll sind dann vermutlich die Moderatoren-Rechte, die im Wiki auf der Seite mit der Übersicht der Privilegien zu finden ist. Zum Anfang sollte reichen ...
interact,shout,privs
... und dann kann man sich selber über den Textbefehl im Spiel ...
/grant <Spielername> all
... alle fehlenden Rechte geben.
HINWEIS: Obwohl es in der Dokumentation nicht erwähnt wird, steht in der Datei "auth.txt" ganz am Ende der Zeile zu den Spielern hinter den Rechten noch eine Doppelpunkt mit einer Zahl. Die weiteren Privilegien müssen vor diesem Doppelpunkt ergänzt werden.
Bei weiteren Spielern hat nun der Moderator die Möglichkeit ihnen per Textbefehl die Rechte zu vergeben und man muss nicht in der Datei editieren.
WICHTIG: Privilegien können auch weggenommen werden, aber es gibt ein Spieler, dem man nicht die Rechte wegnehmen kann, was ja auch gut ist, denn dem Admin sollten die Rechte nicht entzogen werden können.
Der Spielername, bei dem das der Fall ist, wird im Minetest-Verzeichnis in der Datei minetest.conf
unter "Name" angegeben. Als Server-Admin sollte man auf jeden Fall zusehen, dass der Name dort steht und nur vertrauenswürdige Personen sollten an diese Datei herankommen.