Half-Life Deathmatch: Source este clasicul deathmatch din Half-Life 1 reconstruit pe acelasi motor Source ca HL2:DM. Gazduirea lui este apropiata de HL2:DM cu doua diferente pe care merita sa le stii din start: se instaleaza ca doua app-uri, iar o instalare noua se blocheaza la pornire pana cand adaugi un symlink. Ambele sunt tratate mai jos.
Instaleaza serverul (doua app-uri)
HLDM:Source este motorul multiplayer HL2:DM (app 232370) care ruleaza continutul Half-Life 1 (app 360). Instaleaza-le pe ambele, anonim, in acelasi folder:
./steamcmd.sh +login anonymous \
+app_update 232370 validate \
+app_update 360 validate \
+quitFolderul jocului este hl1mp, iar configuratia pe care o citeste la pornire este:
<install>/hl1mp/cfg/server.cfgCapcana: symlink-ul server_srv.so
Acesta este cel care ii incurca pe oameni. Motorul dedicat incarca codul jocului dintr-un fisier numit server_srv.so, dar HLDM:Source livreaza doar server.so. Fara alias, serverul da segfault chiar in momentul in care porneste, cu o eroare ServerDLL_Load si niciun mesaj clar. Solutia este un singur symlink langa fisierul real din hl1mp/bin:
cd <install>/hl1mp/bin
ln -sf server.so server_srv.soFa asta o singura data dupa instalare. Este inofensiv sa il rulezi din nou, asa ca este sigur sa il pui intr-un script de pornire care ruleaza inainte de srcds.
Linia de lansare
Acelasi wrapper srcds_run ca la HL2:DM, indreptat catre folderul de joc hl1mp. Harta de start si limita de jucatori sunt argumente:
./srcds_run -game hl1mp -console \
-port 27015 \
+map crossfire \
+maxplayers 16 \
+exec server.cfg- Hartile standard sunt crossfire (clasica, cu butonul de bomba nucleara), boot_camp, bounce, datacore, frenzy, lambda_bunker, rapidcore, snarkpit, stalkyard, subtransit si undertow.
- maxplayers 16 se potriveste hartilor standard. crossfire si stalkyard raman distractive cu un server plin.
- Portul 27015 este portul de joc si de interogare. Deschide UDP (si TCP pentru RCON) in firewall.
Un server.cfg standard
Numele, parolele si regulile merg in hl1mp/cfg/server.cfg. Free-for-all vs echipe este mp_teamplay, acelasi comutator ca la 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 limitNu exista boti functionali pentru aceasta versiune, asa ca are nevoie de jucatori reali. Este la cel mai bun nivel cu cativa prieteni pe crossfire.