Half-Life Deathmatch: Source es el clásico combate a muerte de Half-Life 1 reconstruido sobre el mismo motor Source que HL2:DM. Alojarlo es parecido a HL2:DM con dos diferencias que conviene conocer de entrada: se instala como dos apps, y una instalación nueva se cierra al arrancar hasta que añades un enlace simbólico. Ambas se cubren abajo.
Instala el servidor (dos apps)
HLDM:Source es el motor multijugador de HL2:DM (app 232370) ejecutando el contenido de Half-Life 1 (app 360). Instala ambos, de forma anónima, en la misma carpeta:
./steamcmd.sh +login anonymous \
+app_update 232370 validate \
+app_update 360 validate \
+quitLa carpeta del juego es hl1mp, y la configuración que lee al arrancar es:
<install>/hl1mp/cfg/server.cfgEl truco: el enlace simbólico server_srv.so
Este es el que desconcierta a la gente. El motor dedicado carga el código del juego desde un archivo llamado server_srv.so, pero HLDM:Source solo incluye server.so. Sin el alias, el servidor sufre un segfault en el momento en que arranca, con un error ServerDLL_Load y sin mensaje claro. La solución es un único enlace simbólico junto al archivo real en hl1mp/bin:
cd <install>/hl1mp/bin
ln -sf server.so server_srv.soHaz esto una vez después de instalar. Ejecutarlo de nuevo es inofensivo, así que es seguro ponerlo en un script de arranque que se ejecute antes de srcds.
La línea de arranque
El mismo envoltorio srcds_run que HL2:DM, apuntando a la carpeta del juego hl1mp. El mapa inicial y el límite de jugadores son argumentos:
./srcds_run -game hl1mp -console \
-port 27015 \
+map crossfire \
+maxplayers 16 \
+exec server.cfg- Los mapas de serie son crossfire (el clásico, con el botón de la bomba nuclear), boot_camp, bounce, datacore, frenzy, lambda_bunker, rapidcore, snarkpit, stalkyard, subtransit y undertow.
- maxplayers 16 le va bien a los mapas de serie. crossfire y stalkyard siguen siendo divertidos con el servidor lleno.
- El puerto 27015 es el puerto de juego y de consulta. Abre UDP (y TCP para RCON) en tu firewall.
Un server.cfg básico
El nombre, las contraseñas y las reglas van en hl1mp/cfg/server.cfg. Todos contra todos frente a equipos es mp_teamplay, el mismo interruptor que 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 limitNo hay bots que funcionen para esta versión, así que necesita jugadores reales. Está en su mejor momento con unos cuantos amigos en crossfire.