Half-Life 2: Deathmatch работает на выделенном сервере Source, поэтому, если вы когда-либо хостили игру на движке Source, всё покажется знакомым. Всю настройку держат две вещи: строка запуска, где задаются карта, режим и число игроков, и небольшой server.cfg для имени и паролей. Вот и всё целиком.
Установка сервера
Выделенный сервер HL2:DM это приложение 232370, и оно устанавливается анонимно. Вам не нужен вход в Steam, и вам не нужно владеть игрой на серверном аккаунте:
./steamcmd.sh +login anonymous \
+app_update 232370 validate \
+quitПапка игры это hl2mp, а конфиг, который она читает при загрузке:
<install>/hl2mp/cfg/server.cfgСтандартный server.cfg
Сюда идут только имя, пароли и правила. Карта и число игроков это аргументы запуска (ниже). Вставьте это и измените строки, помеченные CHANGE ME:
// --- Identity ---
hostname "My HL2:DM Server" // CHANGE ME
rcon_password "pick-a-long-secret" // CHANGE ME - admin console over RCON
// --- Lock it down ---
sv_password "" // set a word here = private, blank = open
sv_lan 0 // 0 = public/Steam, 1 = LAN only
sv_cheats 0
// --- Rules ---
mp_teamplay 0 // 0 = free-for-all, 1 = team deathmatch
mp_fraglimit 0 // end the map at n kills, 0 = no limit
mp_timelimit 20 // end the map after n minutes, 0 = no limitСтрока запуска
HL2:DM запускается через srcds_run в корне установки. Стартовая карта и лимит игроков задаются здесь в аргументах, а не в конфиге:
./srcds_run -game hl2mp -console \
-port 27015 \
+map dm_lockdown \
+maxplayers 16 \
+exec server.cfg- Стандартные карты это dm_lockdown, dm_overwatch, dm_powerhouse, dm_resistance, dm_runoff, dm_steamlab и dm_underpass. Любую из них можно указать здесь через +map.
- maxplayers 16 хорошее значение для HL2:DM. На стандартных картах при большем числе начинается хаос.
- Порт 27015 это игровой порт и порт запросов. Откройте его для UDP (и TCP, если используете RCON) в вашем файрволе.
Каждый сам за себя или командный бой
В HL2:DM для этого есть один переключатель: mp_teamplay. Установите 1 для командного боя или 0 для режима каждый сам за себя. Изменение вступает в силу при загрузке следующей карты, так что смените значение и выполните changelevel. Это вся система режимов, других официальных режимов нет.
Заметка про ботов
В HL2:DM нет встроенных ботов, поэтому серверу нужны реальные игроки, чтобы было весело. Это единственная причина хостить его где-то публично, а не на домашнем ПК: друзья могут зайти в любой момент, а вам не нужно держать свою машину включённой.