Half-Life уже больше 20 лет и эта игра продолжает радовать фанатов серии. Если вы хотите поностальгировать и окунуться в эпоху классических многопользовательских шутеров тех лет, то вам пригодится сервер. Можно конечно воспользоваться готовым решением: подключиться к любому свободному серверу для дезматчей, а можно сделать свой сервер, который будет предназначен только для вас и ваших друзей.
Несмотря на то что для классической Half-Life можно скачать Dedicated Server прямо из библиотеки игр, он не работает с последней версией игры. Однако именно в этой статье я и расскажу, как правильно создать сервер и поиграть на нем с вашими друзьями.
Кстати, если вы хотите пройти сюжет Half-Life в кооперативе, то вам пригодится эта полезная статья.
Устанавливаем SteamCMD и Half-Life Dedicated Server
- Скачиваем архив консоли с официального сайта SteamCMD.
- Создаем в любом месте папку с именем SteamCMD и распаковываем туда
steamcmd.exe
- Запускаем
steamcmd.exe
и ждем пока распакуются все необходимые данные. - После того, как консоль закончит распаковку, пишем команду:
login anonymous
- После подключения к серверу Steam, пишем следующую команду:
app_update 90 validate
- Как только консоль остановится и выдаст ошибку (Error!) повторно вводим команду:
app_update 90 validate
- Повторяем процедуру (3-5 раз) до тех пор, пока консоль не напишет:
Success! App 90 fully installed
- Внутри папки SteamCMD открываем путь
/steamapps/common/Half-life
и создаем там текстовый файл с любым именем. - В текстовый файл вставляем строку:
hlds.exe -console -game valve +maxplayers 32 +map crossfire -ip 192.168.1.1 +port 27015
- Сохраняем текстовый файл в формате
.bat
Port-forwarding через роутер для доступа к онлайну
Чтобы другие игроки со всего мира могли найти ваш сервер и подключиться к нему, вам необходимо открыть некоторые порты в настройках маршрутизатора. Моделей этих роутеров полно: TP-Link, Xiaomi, Asus и т.д, поэтому личный кабинет и некоторые настройки могут отличаться.
Рекомендую воспользоваться инструкцией к вашей модели роутера, чтобы попасть в административную панель (обычно по адресу 192.168.0.1 по заводскому логину и паролю) и найдите там опцию Port-forwarding/Перенаправление.
Далее вам необходимо добавить несколько правил (rules) для каждого протокола и указать нужный порт. Вот их список: TCP: 27015 UDP: 27015 UDP: 27020, UDP: 26900
Сохраняем все правила и перезагружаем роутер. Это можно сделать через веб-интерфейс роутера, или “физически”.
Тестирование подключения
- Запускаем сервер через созданный
.bat
файл (из папки SteamCMD). - Узнаем свой публичный IP через любой детектор, например, What is My IP Address. Для игры по локальной сети достаточно найти свой IP в консоли сервера (строка Server IP Address). Можно также воспользоваться командой
ipconfig
в Комадной строке, но это долго… - Заходим в Half-Life и открываем консоль (клавиша ~).
- Пишем команду:
connect
и добавляем после нее свой IP-адрес из консоли сервера или сайта-детектора. - Жмем Enter и мы попадаем на свой сервер. Если игра выдает ошибку: STEAM validation rejected, то вам необходимо перезапустить сервер и попробовать подключиться еще раз.
Если сервер не могут найти другие игроки
Если вы можете подключиться на свой сервер, то можно считать, что вы успешно создали свой сервер! Однако это лишь пол беды. Для того чтобы другие игроки смогли найти и подключиться к вам, вы должны были сделать Portfowarding из предыдущего раздела.
Если вы выполнили все шаги, но другие игроки так и не могут подключиться к вам, то возможно вы где-то допустили ошибку в настройках роутера. Либо ваш провайдер (в редких случаях) может запрещать подобные действия.
Но отчаиваться не стоит. Вам может помочь программа для создания виртуальных сетей – Hamachi LogMeIn. Можно воспользоваться и Radmin VPN, но Hamachi более популярный и с ним меньше хлопот. Процесс настройки достаточно простой:
- Скачиваем Hamachi и создаем аккаунт на сайте.
- Запускаем программу и включаем сеть по иконке Вкл.
- Переходим во вкладку Сеть (Network) и создаем новую сеть – пишем туда любое имя и пароль.
- Скидываем имя и пароль друзьям для подключения к существующей т.е. вашей сети.
- Вы и ваши друзья будут видеть виртуальный IP-адрес сети, в которой они находятся. Копируйте этот адрес и вставляйте в консоль игры, например,
connect 25.94.175.103
Основные команды
- changelevel <name> – меняет карту по-указанному ID, например,
c1a1, crossfire, disposal
- maxplayers 2-32 – меняет количество разрешенных игроков на сервере
- sv_maxspeed 600 – изменяет скорость бега с которой может бегать игрок
- hostname “name” – меняет имя сервера в поиске и таблице счета
- sv_password “123” – добавляет пароль для входа на сервер. (оставьте кавычки пустыми, чтобы сделать игру без пароля)
- quit – выключить сервер (игроки увидят сообщение, что сервер отключился)
- kick <nickname> – выкинуть игрока с сервера
FAQ
Как безопасно выключить сервер?
- Напишите в консоли сервера команду
quit
Где поменять имя сервера?
- Переходим в папку
steamcmd\steamapps\common\Half-Life\valve
и открываем файлserver.cfg
- Меняем имя сервера в строке
hostname "server-name"
- Имя сервера также можно поменять этой же командой в консоли (потребуется перезайти)
Где поменять количество игроков на сервере?
- Находим .bat файл (который запускает сервер) и редактируем его любым текстовым редактором
- Меняем число в
+maxplayers 32
например на+maxplayers 8
- Количество игроков также можно поменять этой же командой в консоли
Как подключиться на свой сервер?
- В консоли после запуска сервера будет указан ваш локальный IP-адрес (Server IP address)
- Открываем консоль в игре (клавиша ~) и вводим команду:
connect
и за ней ваш IP-адрес - Для игры по интернету вам необходимо узнать свой публичный IP (например при помощи сайта What is My IP Address) и также открыть порты в настройках маршрутизатора, чтобы ваш сервер был виден онлайн
- Необходимые порты для открытия: TCP: 27015 UDP: 27015 UDP: 27020, UDP: 26900
При входе на сервер выдает ошибку: STEAM validation rejected
- Перезапустите сервер и попробуйте подключиться еще раз
Где поменять ротацию карт на сервере? (для модов)
- Переходим в папку
steamcmd\steamapps\common\Half-Life\valve
и открываем файл mapcycle.txt - Вводим имена карт по ID, чтобы добавить их в ротацию на сервер
Можно ли создать свою виртуальную сеть для игры на сервере?
- Да. Hamachi и Radmin VPN можно использовать для многопользовательской игры. Эти программы особенно пригодятся вам, если вы не хотите или не можете открыть порты в настройках маршрутизатора.
- Всем игрокам необходимо сначала зайти в виртуальную сеть по IP и затем указывать его для подключения на сервер
Могу ли я поиграть Half-Life на пиратке?
- Да, но этот способ здесь не рассматривается
Можно ли с этим сервером пройти сюжетную кампанию Half-Life?
- Нет. Хотя этот сервер и может загружать карты из сюжета, он не предназначен для этого.
- Рекомендую вместо этого попробовать бесплатный мод Sven-Coop, либо ремейк Black Mesa с этим гайдом.