DIY Lernprojekte
Aufgeschlossen bleiben und Neues erlernen, ist die beste Voraussetzung, um sich anzupassen, wenn die Welt sich ändert.
Was man heute dafür benötigt, sind
- ein Computer,
- ein Internetzugang und
- Zeit, um sich Wissen anzulesen.
Und noch mehr Zeit, um neues Wissen auszuprobieren. Und noch mehr Zeit, um zu scheitern. Und noch mehr Zeit, um aus Fehlern zu lernen.
Hier habe ich ein paar Beispiele dokumentiert, die keinen besonderen Anspruch verfolgen, für mich jedoch eine kleine Dokumentation darstellen, falls ich das eine oder andere wiederholen möchte.
- Details
- Category: DIY Lernprojekte
DayZ ist so ziemlich das Gleiche wie Minecraft, ein Server basiertes Multiplayer Spiel bei dem es darum geht kluge Entscheidungen zu treffen um a.) zu überleben und b.) zu sammeln und zu bauen.
Leider wird Crossplay nicht unterstützt, so dass der Game Server ausschließlich für die PC Version des Spiels gedacht ist.
Zielsetzung
- DayZ Server im LAN
- Autostart mit Server
- Auto update bei Server Start
- Server MOD installiert
- CF (Community Framework) https://steamcommunity.com/sharedfiles/filedetails/?id=1559212036
- Community-Online-Tools (COT) weblink:https://steamcommunity.com/sharedfiles/filedetails/?id=1564026768
- Admin Rechte für eigenen User
Bonusziel - Public Server
Voraussetzungen:
- Ubuntu Linux Server installiert (virtuelle Maschine (VM)
- remote Zugriff installiert
- Steam Account
- Steam User Name
- Steam User Passwort
- DayZ Spiel installiert auf PC (installiert über Steam)
Installation
Installationsanleitung von Bohemia Interactive auf: https://community.bistudio.com/wiki/DayZ:Hosting_a_Linux_Server
Die Installation der Serververzeichnisse erfolgt im Linux home Verzeichnis des angemeldeten Users.
Download SteamCMD:
sudo apt-get install lib32gcc-s1
Folgende Schritte ausführen:
mkdir -p ~/servers/steamcmd && cd ~/servers/steamcmd
curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -
Download DayZ Server Hinweis:
- Ersetze your_login, mit Deinem Steam login (Steam Usernamen).
- Aktualisieren des Servers erfolgt mit denselben Schritten wie die nachfolgende Installation
Mit Mods auf stable branch
Wir installieren mit der "stable branch" die Mods: Community Framework und Community Online Tools:
~/servers/steamcmd/steamcmd.sh +force_install_dir ~/servers/dayz-server/ +login your_login +app_update 223350 +workshop_download_item 221100 1559212036 +workshop_download_item 221100 1564026768 +quit
Dein Passwort wird nur beim ersten Mal abgefragt.
DayZ Server konfigurieren
cd ~/servers/dayz-server/
Dateiname:
serverDZ.cfg
Folgende Einträge bearbeiten
hostname = "Dein Server Name"; // Server name
description = "Deine Server Beschreibung"; // Kurzbeschreibung Deines Servers. Wird im Client Browser angezeigt, max Länge 255 Zeichen.
DayZ Server starten
Starten mit Mods
In diesem Beispiel wird der DayZ Server zusammen mit den zwei Mods Community Framework und Community Online Tools gestartet.
cd ~/servers/dayz-server/
ln -s ~/servers/dayz-server/steamapps/workshop/content/221100/1559212036 ~/servers/dayz-server/1559212036
ln -s ~/servers/dayz-server/steamapps/workshop/content/221100/1564026768 ~/servers/dayz-server/1564026768
ln -s ~/servers/dayz-server/steamapps/workshop/content/221100/1559212036/keys/* ~/servers/dayz-server/keys/
./DayZServer -config=serverDZ.cfg -port=2301 "-mod=1559212036;1564026768;" -BEpath=battleye -profiles=profiles -dologs -adminlog -netlog -freezecheck
Ctrl + C - zum Schließen des Serverprozesses.
DayZ Client starten
Unter dem Menüpunkt Server sollte im Tab LAN der Servername in der Serverliste (ungefiltert) angezeigt werden.
Mit DLCS und MODS einrichten und Beitreten anklicken.
COT konfigurieren und Admin Rechte vergeben
Wenn das erste Verbinden zum Server funktioniert, müssen wir den Server wieder verlassen und stoppen.
DayZ Client
Server verlassen
Linux Server prozess stoppen
Ctrl + C - zum Schließen des Serverprozesses.
oder, wenn Autostart eingerichtet ist:
sudo systemctl stop dayz-server
Nun müssen dem Player Admin Rechte vergeben und eine Schlüsseldatei kopiert werden.
Die Schlüsseldatei aus dem jeweiligen Mod "keys" Verzeichnis muss in das Dayz-Server "keys" Verzeichnis kopiert werden. Da COT und CF vom selben Entwickler sind sind beide Dateien identisch - es muss nur eine kopiert werden:
Quelle:
/home/username/servers/dayz-server/1559212036/keys
Dateiname: Jacob_Mango_V3.bikey
Ziel:
/home/username/servers/dayz-server/keys
Nun zu den COT Admin Rechten für unseren Spielcharakter auf unserem DayZ Server
/home/username/ = Persönlicher Ordner in Ubuntu Linux
/home/username/servers/dayz-server/profiles/PermissionsFramework/Players/ = hier befindet sich nach dem ersten Verbinden / Spielen eine *.json Datei
Der Dateiname entspricht der Steam User ID
Diese Datei mit einem Editor öffnen und zwischen den eckigen Klammern ein "admin" eintragen
{ "Roles": ["admin"] }
Jetzt kann der Dayz Server wieder gestartet werden.
Server Daemon mit Restart und Auto-Update
Erstellen des Scripts
-
- mit mods: nano ~/servers/dayz-server/update.sh
/home/your_username/servers/steamcmd/steamcmd.sh +force_install_dir /home/your_username/servers/dayz-server/ +login your_login +app_update 223350 +workshop_download_item 221100 1559212036 +workshop_download_item 221100 1564026768 +quit rm /home/your_username/servers/dayz-server/1559212036 /home/your_username/servers/dayz-server/1564026768 /home/your_username/servers/dayz-server/keys/Jacob_Mango_V3.bikey ln -s /home/your_username/servers/dayz-server/steamapps/workshop/content/221100/1559212036 /home/your_username/servers/dayz-server/1559212036 ln -s /home/your_username/servers/dayz-server/steamapps/workshop/content/221100/1564026768 /home/your_username/servers/dayz-server/1564026768 ln -s /home/your_username/servers/dayz-server/steamapps/workshop/content/221100/1559212036/keys/* /home/your_username/servers/dayz-server/keys/
- mit mods: nano ~/servers/dayz-server/update.sh
- Ctrl + O
- Ctrl + X
- sudo chmod +x ~/servers/dayz-server/update.sh
- sudo nano /etc/systemd/system/dayz-server.service
[Unit] Description=DayZ Dedicated Server Wants=network-online.target After=syslog.target network.target nss-lookup.target network-online.target [Service] ExecStartPre=/home/your_username/servers/dayz-server/update.sh ExecStart=/home/your_username/servers/dayz-server/DayZServer -config=serverDZ.cfg -port=2301 "-mod=1559212036;1564026768;" -BEpath=battleye -profiles=profiles -dologs -adminlog -netlog -freezecheck WorkingDirectory=/home/your_username/servers/dayz-server/ LimitNOFILE=100000 ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s INT $MAINPID User=your_username Group=users Restart=on-failure RestartSec=5s [Install] WantedBy=multi-user.target
- sudo systemctl daemon-reload
Daemon Commands
- sudo systemctl enable dayz-server - Einschalten Server Autostart wenn Betriebssystem startet.
- sudo systemctl disable dayz-server - Ausschalten Server Autostart wenn Betriebssystem startet.
- sudo systemctl start dayz-server - Server starten.
- sudo systemctl restart dayz-server - Server Restart.
- sudo systemctl stop dayz-server - Server stoppen.
- sudo systemctl status dayz-server - Server Status überprüfen.
Anmerkung
Der Autostart funktionierte bei mir zunächst nicht, weil das update script fehlschlug.
Als hotfix habe ich das updatescript in der datei dayz-server.service mit einer # auskommentiert.
Danach lief der Autostart.
Router Portfreigabe für Public-Server
DayZ nutzt oder reserviert folgende Ports die für den Zugriff aus dem Internet am eigenen Internet Router freigegeben, bzw. an die Server IP durchgereicht werden müssen.
- Spielport: 2302 UDP standardmäßig
- Reservierter Port: 2303 UDP standardmäßig
- BattlEye-Port: 2304 UDP standardmäßig
- RCON-Port: 2305 UDP standardmäßig
- Abfrageport: 27016 UDP standardmäßig
Zumindest der Spiel-Port, der Abfrage-Port und der BattlEye-Port sind erforderlich.
Der Abfrageport wird zum Suchen und Herstellen einer Verbindung zum Server in Steam verwendet. Der Spielport wird zum Suchen und Herstellen einer Verbindung zum Server im Spiel verwendet.
Beachte, dass der reservierte Port und der BattlEye-Port vom Server relativ zum Game-Port konfiguriert werden. Der reservierte Port ist also Game-Port + 1 und der BattlEye-Port ist Game-Port + 2.
Server Admin
Um einen Admin-Befehl zu nutzen, musst du die Konsole öffnen. Dies machst du, indem du die Chat-Taste drückst. Die folgenden Befehle kannst du dann eingeben und mit der “Enter”-Taste bestätigen. Ein Admin-Befehl startet immer mit dem “#”-Symbol.
- Hits: 910
- Details
- Category: DIY Lernprojekte
Wenn der Minecraft Bedrock Server läuft, sollen neben PC und Playstation auch die hauseigene Nintendo SWITCH, oder Gäste im Besitz einer Nintendo SWITCH mit installierten Minecraft zugreifen, bzw. in einer LAN-Party zusammenspielen können.
Was auf PC und Playstation noch einfach, gestaltet sich mit der SWITCH nur etwas komplizierter, aber machbar, wenn man weiß wie.
Voraussetzungen:
1x Switch
1x Minecraft für Switch
1x Microsoft Xbox Konto
1x Nintendo online Konto
1x Nintendo App zum Einstellen der Kinder-Konto-Beschränkungen (auf Smartphone zu installieren)
1x Freigabe Code zum Ändern der Nintendo Switch Netzwerkeinstellungen
Nehmen wir an auf der Switch läuft Minecraft und die Anmeldung am Microsoft Konto ist erfolgreich, nur der Minecraft Bedrock LAN Server ist nicht sichtbar.
Jetzt muss tatsächlich die (WLAN-) Netzwerk Konfiguration (DNS-Einstellungen) auf der Switch geändert werden, damit im Spiel eine zusätzliche Funktion zur Angabe der lokalen Bedrock Server IP angeboten wird.
Folgende Anleitung war hilfreich: https://www.youtube.com/watch?v=PGfwb4fsBlk
Verwendete DNS Einstellungen:
primärer Server: 104.238.130.180
sekundärer Server: 008.008.008.008
Alternative IP Adressen falls obige Einstellungen nicht funktionieren: https://github.com/Pugmatt/BedrockConnect#publicly-available-bedrockconnect-instances
- Hits: 1372
- Details
- Category: DIY Lernprojekte
Installations-Medien für Betriebssysteme wie Windows oder Linux werden oft im Format dateiname.ISO bereitgestellt. Rufus ist das Programm meiner Wahl, um unter Windows ein USB Speichermedium mit einem solchen ISO-File startfähig zu machen.
Link zu offiziellen Rufus Seite: https://rufus.ie/de/
- Hits: 396
- Details
- Category: DIY Lernprojekte
Um im eigenen Netzwerk unkompliziert Dateien zentral von allen virtuellen Maschinen (VM) und Endgeräten erreichbar abzulegen, gibt es verschiedene Lösungen.
Wer bereits eine Proxmox VE Umgebung am Laufen hat, kann diese Anforderung mit wenigen Handgriffen durch ein sogenanntes "Turnkey" Container-Template erreichen.
Es gibt eine interessante Anzahl von diesen schlüsselfertigen Container-Templates, für unterschiedliche Aufgaben.
https://www.youtube.com/watch?v=UnXxJMjW4LE
- Hits: 1028
- Details
- Category: DIY Lernprojekte
Auf Win client Minecraft (Bedrock) starten
eine Welt konfigurieren, erstellen und speichern
Welt bearbeiten, runterscrollen
Welt exportieren und lokal speichern
Export Datei .mcworld umbenennen in .zip
Datei *.zip entpacken
entpackte Struktur auf Minecraft Server übertragen
- Hochladen mit ftp Client auf ftp server
- von Minecraft VM mit ftp-client herunterladen in Minecraft Worlds Verzeichnis
auf Minecraft VM das server property file für neue Welt anpassen
Minecraft Server mit neuer Welt starten
- Hits: 1028