Quake 3 dedicated server auf Oracle Cloud Free Tier Ampere Instanz – Splatter Forever

Bei Oracle gibt es umsonst** (**Man muss nur seine Kreditkartendaten hinterlegen) sogenannte „Cloud-Compute-Instanzen“. Neben ziemlich lahmen 1-Kern-AMD64 VMs gibt es auch relativ schnelle 4-Kern ARM (Ampere) Instanzen mit 24 GB RAM.
Was kann man damit machen? Zum Beispiel einen Quake 3 Dedicated Server betreiben. Oder gleich mehrere.
Auf meiner VM laufen aktuell 4 FFA-Server mit jeweils 31 Bots, die sich bis in alle Ewigkeit immer wieder in die ewigen Jagdgründe befördern:

qdm17 mit 31 bots – Video in voller Qualität
Meine 4 FFA-Server

Anleitung

Zunächst besorgt man sich Oracle Cloud Free Tier, startet eine Ampere (ARM)-Instanz und installiert Ubuntu Server drauf. Anleitungen gibt’s im Netz zuhauf.

Als nächstes muss man die Quake3-Executable für die ARM/AARCH64-Architektur kompilieren.
Das folgende Script benutzt dafür den source code von quake3e:

sudo apt update && sudo apt upgrade
# Install dependencies
sudo apt install libsdl2-dev make gcc libcurl4-openssl-dev mesa-common-dev
sudo apt install libxxf86dga-dev libxrandr-dev libxxf86vm-dev libasound-dev

cd
mkdir q3
cd q3
mkdir baseq3
cd baseq3
# Download pk0 - pk8.pk3 from public website
wget http://quake3.bomping.se/baseq3/pak0.pk3 --continue
wget http://quake3.bomping.se/baseq3/pak1.pk3 --continue
wget http://quake3.bomping.se/baseq3/pak2.pk3 --continue
wget http://quake3.bomping.se/baseq3/pak3.pk3 --continue
wget http://quake3.bomping.se/baseq3/pak4.pk3 --continue
wget http://quake3.bomping.se/baseq3/pak5.pk3 --continue
wget http://quake3.bomping.se/baseq3/pak6.pk3 --continue
wget http://quake3.bomping.se/baseq3/pak7.pk3 --continue
wget http://quake3.bomping.se/baseq3/pak8.pk3 --continue
cd
# get Quake3e source code and compile
git clone https://github.com/ec-/Quake3e
cd Quake3e
make USE_RENDERER_DLOPEN=0 RENDERER_DEFAULT=vulkan
make install DESTDIR=../q3 USE_RENDERER_DLOPEN=0 RENDERER_DEFAULT=vulkan


Nun muss man noch die Ports freischalten – Sowohl im Webinterface von Oracle Cloud als auch in der Firewall der Ubuntu-VM. Standardmäßig benutzt Quake 3 die Ports 27960 aufwärts, ich habe also 27960 – 27965 freigegeben – Diese Anleitung kann als Grundlage benutzt werden. Siehe Punkt 3 (create an ingress rule) sowie 4.8 (update firewall settings). Man muss die ports sowohl als TCP als auch als UPD freigeben.
Zuletzt startet man den Server – am besten mit einem Bash-Script, wie hier beschrieben.

Raspberry Pi 4 – Quake 3 mit Vulkan Renderer

Mit demselben Script erhält man auf einer Raspberry Pi4 übrigens einen Quake 3 Client mit Vulkan-Renderer! Dazu müssen noch die Vulkan-Treiber installiert werden:

sudo apt install mesa-vulkan-drivers

Quake 3 startet man dann wie folgt

q3/quake3e.arm +set r_ignorehwgamma 1

Die Console öffnet man mit SHIFT + ESC

Veröffentlicht am
Kategorisiert in Uncategorized

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert