2hours.gg/

Herní servery na hodiny. Plať jen za to, co odehraješ.

Jak nastavit dedikovaný server Half-Life Deathmatch: Source

Half-Life Deathmatch: Source je klasický deathmatch z Half-Life 1 přestavěný na stejném enginu Source jako HL2:DM. Hostování se velmi podobá HL2:DM se dvěma rozdíly, které je dobré znát předem: instaluje se jako dvě aplikace a čerstvá instalace při startu spadne, dokud nepřidáte jeden symlink. Obojí je popsáno níže.

Instalace serveru (dvě aplikace)

HLDM:Source je multiplayerový engine HL2:DM (aplikace 232370) spouštějící obsah Half-Life 1 (aplikace 360). Nainstalujte obojí anonymně do stejné složky:

./steamcmd.sh +login anonymous \
  +app_update 232370 validate \
  +app_update 360 validate \
  +quit

Složka hry je hl1mp a konfigurace, kterou při startu načítá, je:

<install>/hl1mp/cfg/server.cfg

Háček: symlink server_srv.so

Tohle je to, co lidi mate. Dedikovaný engine načítá herní kód ze souboru s názvem server_srv.so, ale HLDM:Source dodává pouze server.so. Bez tohoto aliasu server spadne se segfaultem hned při startu, s chybou ServerDLL_Load a bez jasného hlášení. Řešením je jediný symlink vedle skutečného souboru v hl1mp/bin:

cd <install>/hl1mp/bin
ln -sf server.so server_srv.so

Udělejte to jednou po instalaci. Opětovné spuštění nic nezkazí, takže je bezpečné to vložit do spouštěcího skriptu, který běží před srcds.

Spouštěcí řádek

Stejný wrapper srcds_run jako u HL2:DM, namířený na herní složku hl1mp. Počáteční mapa a limit hráčů jsou argumenty:

./srcds_run -game hl1mp -console \
  -port 27015 \
  +map crossfire \
  +maxplayers 16 \
  +exec server.cfg
  • Výchozí mapy jsou crossfire (klasika s tlačítkem na atomovku), boot_camp, bounce, datacore, frenzy, lambda_bunker, rapidcore, snarkpit, stalkyard, subtransit a undertow.
  • maxplayers 16 vyhovuje výchozím mapám. crossfire a stalkyard zůstávají zábavné i s plným serverem.
  • Port 27015 je herní a dotazovací port. Otevřete ve firewallu UDP (a TCP pro RCON).

Základní server.cfg

Název, hesla a pravidla patří do hl1mp/cfg/server.cfg. Free-for-all vs týmy řídí mp_teamplay, stejný přepínač jako u HL2:DM:

hostname "My HLDM:Source Server"     // CHANGE ME
rcon_password "pick-a-long-secret"   // CHANGE ME
sv_password ""                       // a word here = private, blank = open
sv_lan 0
mp_teamplay 0                        // 0 = free-for-all, 1 = team deathmatch
mp_fraglimit 0                       // kills to end the map, 0 = no limit
mp_timelimit 20                      // minutes to end the map, 0 = no limit

Pro tuto verzi nejsou žádní funkční boti, takže potřebuje skutečné hráče. Nejlepší je s pár přáteli na crossfire.

Viz také

← Zpět na všechny návody