deady1000
Posts: 20
Joined: Fri Oct 06, 2017 4:47 pm

Tutorial: Garry's Mod (TTT) Server / Half-Life2 Source Engine with SteamCMD on Raspberry Pi3

Mon Oct 16, 2017 9:00 pm

Dear community,

I'd like to give you some instructions if you want to install a HL2-Source-server like garry's mod or counterstrike: source on your RPI3.
If you speak german please read the german instructions below.

Raspberry Pi3 cannot run x86 applications. That is the reason why there is actually no steamcmd server.
But with software like "exagear" you can run those programs!

Demonstration first:
https://youtu.be/OW7ArmSgi68
Image

1.) Raspbian users skip step 2
2.) Ubuntu MATE users have to install Raspbian repositories
3.) Download exagear "sudo apt-get install exagear-desktop"
4.) Run exagear and activate your trial license! (or buy it for 19,95€ - worth it!)

When you now type "exagear" in your terminal you will be able to run x86 applications. :)
You have to do this everytime you open a new terminal!
Check your status with "arch" after typing "exagear".

5.) Install standard Linux-SteamCMD with exagear command
6.) Download your Source-Server (here GarrysMod: sh steamcmd.sh login anonymous force_install_dir /home/steam/GMod app_update 4020 validate)
7.) cd to GMod
8.) go to your Server.cfg in garrysmod cfg and change the default settings
9.) srcds_run -autoupdate -game garrysmod +map ttt_START-MAP +maxplayers 6 +gamemode terrortown +ip 00.00.00.00 -port 27015 +host_workshop_collection YOUR_COLLECTION -authkey AUTHKEYAUTHKEYAUTHKEY
10.) Your workshop-contents will be downloaded and the server will start

11.) open ports 27015 and 27005 for GMOD
12.) you can use Dyn-DNS services to get an own dynamic internet-adress

See for yourself:
https://youtu.be/uicdQMVGfgU
Image

This is running the server:
Image

This article may contain mistakes. Please tell me when you find some.
If you have questions please ask.

Thank you for reading!

__________________________________________________

Original german instructions:
Hallo liebe Community,

Ich möchte euch gern an einem kleinen Erfolg teilhaben lassen, falls ihr ein wenig Interesse habt.
Es heißt ja oft, dass der RPI3 keine Leistung hat um als Server für vollwertige Spiele zu fungieren,
jedoch wollte ich trotzdem mal sehen wie weit ich kommen kann.

Dabei ist mir aufgefallen, dass der RPI3 tatsächlich in der Lage ist, einen Garry's-Mod (Source-Engine) Onlineserver zu hosten!

Falls ihr es nicht kennen solltet: Es geht konkret um den Spiel-Mod Trouble in Terroristtown (kurz TTT, siehe Youtube).
Das Programm für den Server ist sowohl bei Linux, als auch Windows, SteamCMD / Source Dedicated Server (srcds).
Leider funktioniert dieses Programm nicht mit der ARMv7-Architektur des Raspberry Pi3.

Wenn in den Foren nicht schon allein wegen der fehlenden Leistung sämtliche Fragestellungen in diese Richtung abgeschmettert wurden, dann
wurde spätestens jetzt auf die Inkompatibilität hingewiesen.
Auch davon wollte ich nichts hören, deshalb bin ich nach kurzem Googeln auf die Software "EXAGEAR - Desktop" gestoßen.
Diese Software funktioniert nativ auf Raspbian und sie kann mit "sudo apt-get install exagear-desktop" installiert werden.
Da ich jetzt Ubuntu MATE installiert hatte, musste ich die Repositories von Raspbian hinzufügen.
Nachdem ich diverse hinzugefügt hatte, wurde dann der Befehl und damit das Paket erkannt.

Zuerst mal eine kleine Vorführung:
https://youtu.be/OW7ArmSgi68
Image

Herangehensweise:

1.) Ich nutze Ubuntu MATE (aktuellste Version)
2.) Paketquellen von Raspbian hinzufügen
3.) Exagear-Desktop installieren (mit obenstehendem Befehl, sonst bekommt man keine TRIAL-Version!!)
4.) Exagear ausführen und kostenlose Trial-Version aktivieren (zum Testen - Vollversion kostet 19,95€, ist das Geld aber wert)

Nachdem Exagear installiert ist kann man die Funktion überprüfen:

Öffnet ein Terminal und gebt ein "arch".
Es wird "ARMv7l" ausgegeben.
Im selben Fenster gibt man nun "exagear" ein und dann wieder "arch".
Es wird nun "i686" angezeigt, das Terminal kann nun Linux-x86-Programme ausführen! :)

5.) Nun die ganz normale SteamCMD-Linux-Version aus dem Internet herunterladen und über ein exagear-Terminal installieren (make).
6.) Steam-Spiel (NUMMER beachten) mit SteamCMD in einen Ordner herunterladen lassen
(in meinem Fall Garry's Mod über:
steamcmd.sh login anonymous force_install_dir /home/steam/GMod app_update 4020 validate)
7.) In den (hier) GMod-Ordner navigieren
8.) Im garrysmod Ordner noch unter "cfg" die Server.cfg Datei konfigurieren!
9.) srcds_run -autoupdate -game garrysmod +map ttt_ANFANGSKARTE +maxplayers 6 +gamemode terrortown +ip 00.00.00.00 -port 27015 +host_workshop_collection EURE_COLLECTION -authkey AUTHKEYAUTHKEYAUTHKEY
10.) Dann werden die Inhalte heruntergeladen und der Server gestartet

Man muss noch im Router die Ports 27015 und 27005 für je TCP und UDP freigeben.
Desweiteren kann man noch einen kostenlosen Dyn-DNS Anbieter wie zb. ddnss benutzen, damit eure Freunde direkt über die Internetadresse beitreten können!

Hier eine kleine Vorführung:
https://youtu.be/uicdQMVGfgU
Image

So klein und doch so groß:

Image

PS: Diesen Beitrag habe ich quasi "auf die Schnelle" verfasst, deshalb kann er einige Fehler enthalten.
Ich hoffe Ihr könnt mit der Idee etwas anfangen.

Bei Fragen versuche ich natürlich gern zu helfen.
Viel Spaß beim Ausprobieren!

LG
Last edited by deady1000 on Wed Oct 25, 2017 10:34 pm, edited 2 times in total.

berrymix
Posts: 13
Joined: Thu May 25, 2017 2:03 am
Location: Florida

Re: Tutorial: Garry's Mod (TTT) Server / Half-Life2 Source Engine with SteamCMD on Raspberry Pi3

Tue Oct 17, 2017 12:37 am

This is a really interesting post, I will try to see if it will work. :D

deady1000
Posts: 20
Joined: Fri Oct 06, 2017 4:47 pm

Re: Tutorial: Garry's Mod (TTT) Server / Half-Life2 Source Engine with SteamCMD on Raspberry Pi3

Sun Oct 22, 2017 3:57 pm

Optimizations:

I overclocked some things in /boot/config.txt:

Code: Select all

#OVERCLOCK
force_turbo=1
boot_delay=1

#CPU
arm_freq=1420
over_voltage=6

#RAM
sdram_freq=500
sdram_schmoo=0x02000020
over_voltage_sdram_p=6
over_voltage_sdram_i=4
over_voltage_sdram_c=4

#GPU
gpu_freq=500

#SD-Card-Overclock
dtparam=sd_overclock=84
CPU-oc gave me ~19% more performance which always are kept up because of "force_turbo=1".
SD-oc brought me from 22 MB/s to 36 MB/s so ~64% more performance here.
RAM-oc is not that important but maybe it helps.


Of course it is recommended that you use a case with a cooling fan and aluminium heatsinks for the cpu when you overclock it!
Under high load I had temperatures up to 75 degrees without overclocking (e.g. when I installed java).
Now with my fan it never goes over 40 degrees in idle and not over 50 degrees on load.
The fan is so quiet that you can't hear it (running with 3 instead of 5 volts).

Image

Return to “Off topic discussion”

Who is online

Users browsing this forum: No registered users and 9 guests