1. Pobierz serwer
W Linuksie serwer potrzebuje najpierw bibliotek 32-bitowych:
dpkg --add-architecture i386
apt update
apt install -y lib32gcc-s1 lib32stdc++6
# Windows
C:\steamcmd\steamcmd.exe +force_install_dir C:\gmod +login anonymous +app_update 4020 validate +quit
# Linux (jako użytkownik steam)
~/steamcmd/steamcmd.sh +force_install_dir ~/gmod +login anonymous +app_update 4020 validate +quit
2. Token Steam (GSLT)
Na stronie steamcommunity.com/dev/managegameservers utwórz token z App ID 4000. To ID gry, a nie serwera (4020): z 4020 token nie zadziała.
3. Uruchom serwer
# Windows
C:\gmod\srcds.exe -console -game garrysmod +gamemode sandbox +map gm_construct +maxplayers 16 +sv_setsteamaccount TWOJ_TOKEN
# Linux
~/gmod/srcds_run -game garrysmod +gamemode sandbox +map gm_construct +maxplayers 16 +sv_setsteamaccount TWOJ_TOKEN
Zmień sandbox na wybrany tryb gry: terrortown (TTT, dołączony do gry) albo pobrany tryb, na przykład DarkRP.
4. Kolekcje z Warsztatu Steam
Utwórz w Warsztacie Steam kolekcję ze swoimi mapami i dodatkami, a następnie dodaj do linii startowej:
+host_workshop_collection ID_KOLEKCJI
Serwer przy uruchomieniu pobiera i montuje całą zawartość kolekcji.
5. Nazwa, hasło i RCON
W pliku garrysmod/cfg/server.cfg:
hostname "Nasz serwer Garry's Mod"
sv_password ""
rcon_password "DLUGIE_HASLO"
6. Porty
Garry's Mod używa portu 27015 w UDP dla gry i w TCP dla RCON:
# Windows (PowerShell jako administrator)
New-NetFirewallRule -DisplayName "GMod UDP 27015" -Direction Inbound -Protocol UDP -LocalPort 27015 -Action Allow -Profile Any
New-NetFirewallRule -DisplayName "GMod TCP 27015" -Direction Inbound -Protocol TCP -LocalPort 27015 -Action Allow -Profile Any
# Linux
ufw allow 27015/udp
ufw allow 27015/tcp
Aby wejść: otwórz konsolę gry (klawisz ~) i wpisz connect TWOJE_IP:27015.