Сегодня речь пойдет об установке и первом запуске чистого сервера Counter-Strike 1.6 при помощи официальной утилиты SteamCMD.
Все операции в статье происходят от имени пользователя hlds (см. предыдущие статьи).

В прошлых статьях

Установка SteamCMD

Утилита SteamCMD служит для получения различного рода приложений с серверов Steam, в том числе игровых серверов.
За последние годы в этом плане ничего не изменилось:
Создадим каталог для данного скрипта и скачаем его:

$ mkdir ~/SteamCMD
$ cd ~/SteamCMD
$ wget http://media.steampowered.com/client/steamcmd_linux.tar.gz

Теперь разархивируем полученный файл, сделаем его исполняемым и запустим:

$ tar xfz steamcmd_linux.tar.gz
$ rm steamcmd_linux.tar.gz
$ chmod +x steamcmd.sh
$ ./steamcmd.sh

Скрипт скачает недостающие ему файлы и скупо поприветствует нас строкой

Steam>

Таким образом он даст знать, что готов выполнять наши указания.

Установка сервера Counter-Strike 1.6

Для начала авторизируемся с логином anonymous (данного стандартного логина будет достаточно для скачивания сервера cs1.6):

Steam>login anonymous

Сообщим, где у нас будет находиться наш игровой сервер:

Steam>force_install_dir ../hlds

Ну и начнем скачивания нашего ненаглядного:

Steam>app_update 90

Здесь 90 — номер нашего приложения — сервера Counter-Strike 1.6
Команда по непонятным мне причинам постоянно вываливается с ошибкой. Раньше я уповал на то что сервера перегружены. Ну не могут же они быть перегружены 365 суток в году.
В любом случае на второй-третий раз измором берем (только что автор этих строк два часа повторял попытки нервно куря сигарету за сигаретой, так что запасаемся терпением) и получаем необходимый радостный результат:

Success! App '90' fully installed.

Кто-то из вас улыбнется, автор же сделал круг в припрыжку по офису от радости что наконец то случилось чудо, теперь выходим из SteamCMD и шаманим дальше.

Steam>quit

А дальше — проще..

Базовая настройка сервера Counter-Strike 1.6

Переходим в каталог, куда устанавливался сервер и производим тестовый запуск:

$cd ../hlds
$ ./hlds_run -game cstrike +ip 0.0.0.0 +maxplayers 20 +map de_dust2

Если сервер проругался следующим образом

/home/hlds/.steam/sdk32/steamclient.so
with error:
/home/hlds/.steam/sdk32/steamclient.so: cannot open shared object file: No such file or directory
Looking up breakpad interfaces from steamclient
Calling BreakpadMiniDumpSystemInit

То фикс ошибки не сложный:

$ mkdir ~/.steam
$ ln -s ~/SteamCMD/linux32 ~/.steam/sdk32

Теперь осталось создать пустые файлы для бан-листов:

$ touch ~/hlds/cstrike/listip.cfg
$ touch ~/hlds/cstrike/banned.cfg

Теперь в логах будет лишь красоваться ошибка о том, что Вы заразы не запустили стим клиент:

[S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed.

Но вот работе сервера это никак не помешает.

Чистый сервер у нас теперь есть.
Вскоре начнем обвешивать сервер всякими вкусностями, а вот там обещаю поведать Вам то, о чем в русскоязычном интернете умалчивают.

Сделай приятное автору - поделись статьей в социальной сети.