Установка сервера HL (Windows)
Содержание
Неообходимые программы
- HLDS Update Tool - программа для загрузки сервера с серверов Steam
- Metamod-P - это библиотека (DLL) для подгружения дополнительных плагинов (например Amx Mod X)
- DProto - плагин Metamod для создания мултипротокольности
Выбор игры
Смотрите здесь Информация о играх для HLDS Update Tool
В данной вики установка будет рассматриваться на примере Half-Life
Загрузка сервера
Для начала нужно загрузить сам HLDS Update Tool. Для этого заходим сюда, идем в самый низ и видим надпись "Инструменты", наводим на нею мышь и тыкаем на надпись "Windows HLDS Update Tool". После загрузки файла, его надо установить. Dыбираем место куда будем ставить сервер.. для примера возьмем папку "C:/HLDS/" Запускаем его и ставим в C:\HLDS\Updater . После установки необходимо создать *.BAT файл с текстом
@start HldsUpdateTool.exe -command update -game valve -dir C:\HLDS -verify_all
Разберем батник по порядку @ - в начале, обозначает что эта строчка не отобразится в консоли сmd; start обозначает что батник запустит приложение, а сам не будет его ждать и закроется; hldsupdatetool.exe - приложение открываемое батником
-command update параметр команды, update обозначает обновление, если другие параметры не указаны то прога обновит сама себя.
-game valve если указан, то будет обновляться\загружаться игра, указанная в параметре..(указывать название директории игры, написана здесь)
-dir C:\HLDS директория куда будет качатся сервер, или где он будет обновляться.
C:\HLDS означает то что он будет грузится в папку HLDS на диске C:
-verify_all означает что программа сначала проверит все файлы, прежде чем что-то загружать.
Итак, заполнили все параметры, переходим к загрузке. При старте нашего батника, некоторое время он будет обновлять программу и загрузит нам в папку такие файлы как ClientRegistry.blob и HldsUpdateTool_35.mst в это время в консоли буду такие надписи:
Checking bootstrapper version ... Getting version 48 of Steam HLDS Update Tool Downloadnig. . . . . . . . . .
потом, прога начнет загружать сервер
Checking bootstrapper version ... Updating Installation
и пошли-поехали строчки с названием файлов. Все, консоль вырубилась., ПОЗДРАВЛЯЮ ВАС!, ВЫ УДАЧНО ЗАГРУЗИЛИ СЕРВЕР!)
Установка Metamod-P
Для начала необходимо загрузить его. Переходим сюда и загружаем его. Теперь его надо установить. Для этого создаем в папке мода (в нашем случае valve) папку addons\metamod\dlls. В папку dlls кидаем файл metamod.dll В папке metamod создаем файл plugins.ini Затем открываем файл liblist.gam в папке мода и вы должны будите видить примерно это:
// Valve Game Info file // These are key/value pairs. Certain mods will use different settings. // game "Half-Life" startmap "c0a0" trainmap "t0a0" mpentity "info_player_deathmatch" gamedll "dlls\hl.dll" gamedll_linux "dlls/hl_i386.so" secure "1" type "singleplayer_only"
Вам надо заменить строку gamedll "xxx" на gamedll "addons\metamod\dlls\metamod.dll" (где xxx - что угодно) Все, Metamod установлен!
Запуск сервера
Предлагаю вам универсальный способ запуска: необходимо создать *.bat файл со следующим соддержанием
@echo off cls title StartUp :hlds echo (%time%) HLDS Started... reg add "HKCU\Software\Valve\Steam\ActiveProcess" /v SteamClientDll /t REG_SZ /d "" /f start /wait hlds.exe -console +maxplayers 32 -game valve +map crossfire +ip 0.0.0.0 +port 27015 echo n| goto hlds echo (%time%) HLDS Crashed, restarting... goto hlds
Итак, вам надо настраивать 7 строку, я её обясню:
start /wait hlds.exe -console +maxplayers 32 -game valve +map crossfire +ip 0.0.0.0 +port 27015
start /wait - запуск exe файла с небольшой задержкой
hlds.exe -console - запуск сервера в консольном режиме
+maxplayers 32 - максимальное кол-во игроков, в данном случае 32
-game valve - папка с игрой (модом)
+map crossfire - запустить с картой crossfire
+ip - если у вас несколько сетевых карт, то сервер будет доступен из всех
+port - порт сервера, в данном случае стандартный (27015)
Данный батник также защищает сервер от ошибки "Unable initalize Steam." и при вылете он сам перезагрузится.
Установка DProto
Все, сервер готов к запуску, но к нему можно подключится только с лицензии. Для решения этой проблемы был создан плагин для Меnамода - DProto. Скачать его можно отсюда. Для его установки нужно скопировать файл dproto.cfg в папку мода, файл \bin\Windows\dproto.dll в "папка мода\addons\dproto", открыть файл addons\metamod\plugins.ini и дописать
win32 addons\dproto\dproto.dll
Настройка конфигов
По умолчанию в сервере используются два конфига server.cfg(папка с модом) и valve.rc(папка valve) их мы и разберем. Итак. hlds/valve/valve.rc
// load the base configuration //exec default.cfg s_refgain 0.4 s_refdelay 4 s_occfactor 0.25 s_verbwet 0.25 s_distance 60 // load the language configuration exec language.cfg // Setup custom controller exec joystick.cfg // run a user script file if present exec autoexec.cfg // // stuff command line statements // stuffcmds
сюда добавляем те команды, что будут применяться на сервер в самом начале(до загрузки карты) такие как
mp_teamplay 1 mp_teamlist "robo;scientist"
также можно установить свою гравитацию
sv_gravity
свою скорость
sv_maxspeed
и другие команды...
<папка мода(в данном случае valve)>\server.cfg
// Use this file to configure your DEDICATED server. // This config file is executed on server startup. // disable autoaim sv_aim 0 // player bounding boxes (collisions, not clipping) sv_clienttrace 3.5 // disable clients' ability to pause the server pausable 0 // default server name. Change to "Bob's Server", etc. // hostname "Half-Life" // maximum client movement speed sv_maxspeed 270 // load ban files exec listip.cfg exec banned.cfg
здесь также устанавливаются конфиги. Заметьте! "//" обозначает комментарий т.е эта строчка не будет использована.
hostname "Skrit's Half-Life Server" // название вашего сервера!
эти конфиги применяются каждый раз при смене карты.
Заключение
Все, сервер установлен. Спасибо за чтение. Источник: Lambda-Wiki