четверг, 15 мая 2008 г.

Установка сервера Counter-Strike: Source (Global Offensive) на Linux Ubuntu

Предисловие

К моему удивлению, в интернете крайне мало вменяемых руководств по установке Dedicated Server (выделенного сервера) игры Counter-Strike на Linux. Несколько методов у меня не сработали, или сервер глючил, в итоге нашел руководство, которое у меня заработало. Адаптированная его версия перед вами.
Важное примечание: нижеследующее руководство подойдет для практически всех игр от Valve, у которых есть отдельный модуль Dedicated Server. Тоесть это — Counter-Strike: Source, Counter-Strike: Global Offensive, Half-Life 2: Deathmatch, Left 4 Dead и т.п., полный список в оффициальной вики Valve здесь. И еще один момент — я описываю, как ставить лицензионный сервер для игры по Steam! Школьники с No-steam сборками, мой вам совет: кончайте бухать ягу, и накопите чертовых 200 рублей себе на лицензионную игру. Ну может, 300. :)

Подготовка

Для установки нам потребуется, по сути, любой Linux с примерно 3 ГБ места для установки программы сервера. В конкретно моем случае я использовал Ubuntu Server 12.04.4 LTS. Описанные команды также подойдут для всех debian-подобных дистрибутивов в точности, и с мелкими корректировками для всех остальных. Приветствуются начальные знания по работе с консолью (копировать-вставить-создать папку-удалить файл-просмотр папки-установка приложения и т.п.), так будет проще вам понимать, что именно вы делаете, где это все будет лежать и каким образом запускаться.
В моем случае мы начинаем с только что установленной системы и горящей перед глазами консолью. Мы вошли в систему под своим пользователем. Естественно, напрямую из-под root’a мы ничего не делаем. Выделенное в цитату — одна целая команда, которую пишем в консоль. Если в цитате  несколько строк — это несколько команд, пишем первую строку, жмем Enter, пишем следующую строку, также Enter.

Установка

Первым делом проверяем, что система обновлена:
sudo apt-get update
Затем:
sudo apt-get upgrade
В моем случае система была 64-битной, а сам сервер игры — 32-битный. Поэтому, устанавливаем библиотеки для запуска 32-разрядных приложений (Если ваша система 32-битная, этот шаг пропускаем):
sudo apt-get install lib32gcc1 libc6-i386
Добавляем отдельного пользователя, под которым будет запускаться сервер. Так правильно и так безопаснее. Назовем его «steam»:
sudo adduser steam
Попросит задать ему пароль — задаем какой-нибудь попроще, чтобы вы не забыли. Попросит заполнить имя, телефон, адрес и т.п. — оставляем пустыми. Далее, заходим под только что созданным пользователем:
su steam
При этом директория, в которой мы находимся, останется от предыдущего пользователя. Нужно перейти в нашу директорию и создать там папку с названием «steamcmd» и перейти в нее:
cd ..
cd steam
mkdir steamcmd
cd steamcmd
Далее нам нужно скачать, собственно архив с командной оболочкой Steam, через которую чуть погодя скачаем сам сервер. Пишем:
wget http://media.steampowered.com/installer/steamcmd_linux.tar.gz
Скачаться должно быстро, файл небольшой — 3 МБ. Разархивируем:
tar -xvzf steamcmd_linux.tar.gz
Если все прошло успешно — выведется список распакованных файлов. Удаляем более не требующийся нам скачанный архив:
rm steamcmd_linux.tar.gz
Запускаем консольный Steam:
./steamcmd.sh
Он тут же обновится. Если запуск прошел успешно, вы увидите перед собой консоль самого Steam’а (начинается с «Steam>»). В этой консоли мы пишем:
login anonymous
Так мы войдем под гостевым доступом к сервисам скачки серверов. В итоге выполнения должен выдать «…Success». Потом прописываем заранее папку, куда будет ставиться, собственно наш сервер Counter-Strike. Первый важный момент, где нужно быть внимательным. Название папки «css» в команде ниже, нужно заменить на «cs_go», если вы ставите Global Offensive. Я буду ставить Counter-Strike: Source, поэтому папка будет называться «css»:
force_install_dir ./css/
Следующий важный момент. Пишем команду для начала скачивания сервера. Она содержит в себе так называемый app_id, тоесть уникальный идентификатор (номер из цифр) игрового сервера, который мы будем качать. Для CS: Source, app_id равен 232330, для CS:GO — 740. Я ставлю CS:Source, поэтому моя команда выглядит так:
app_update 232330 validate
Соответственно, в случае с GO, меняете на 740 число. После ввода этой команды, начнется процесс скачивания самих файлов сервера. Для Counter-Strike: Source этот размер примерно 2.5 ГБ, для Global Offensive наверняка больше, так что будьте осторожны с траффиком. Данный процесс может быть реально долгим, все зависит от скорости вашего интернета. У меня скачалось примерно за минут 20. При успешном скачивании выведет: «Success! App app_id fully installed». Возвращаемся в консоль сервера, написав:
quit
clear
Теперь мы вышли из стима, очистили экран и перед нами терминал сервера. Создадим главный конфигурационный файл server.cfg:
cd css
cd cstrike
cd cfg
nano server.cfg
Логично размышляющий читатель, наверно сам понял, что если он ставит GO, то вместо «css» в командах он пишет «cs_go». После выполнения всего, что я писал выше, перед вами откроется некое подобие «блокнота» в консольном виде. Это наполнение нашего конфигурационного файла. Сейчас туда ничего писать не нужно, просто сохраним его — Ctrl+O и закроем блокнот на Ctrl+X. В будущем, отредактировав этот файл, можно будет устанавливать переменные сервера. Например «bot_difficulty», «sv_gravity» и кучу других.
Возвращаемся на два каталога назад, в папку «css». Из нее мы следующим шагом запустим сервер:
cd ..
cd ..
Пробный запуск! Команда ниже относится к Counter-Strike: Source, если вы ставите Global Offensive, смотрите список стартовых команд тут. Пишем:
./srcds_run -console -game cstrike -maxplayers 20 -port 27015 +map de_dust
Это, как вы сами поняли уже ( я надеюсь) запустит сервер с такими параметрами: карта de_dust, максимум игроков — 20, порт сервера — 27015. При загрузке сервер выводит очень много логов, скорее всего первое вы даже не успеете прочитать, как быстро и много их будет. В конце загрузки в терминал выведется: «VAC cecure mode is activated», что значит что наш сервер успешно запустился.

Заключение

В заключении еще пара важных вещей. Для игры по интернету, на фаерволе вашего сервера должны быть открыты порты от 27000 до 27040 включительно, и TCP и UDP протоколы. Как пробрасывать порты в линуксе и на роутерах, ищите в интернете.
Следущим шагом после установки Dedicated Server, будет настройка конфигурационных файлов в папке /css/cfg/. Примеры настроек легко гуглятся. Также, я очень советую сразу поставить аддон для сервера — Mani Admin Plugin. Он значительно расширит административные функции и упростит администрирование сервера. Если данная статья будет полезной для народа, могу написать и руководство по установке Mani. Пишите комменты! :)

Комментариев нет:

Отправить комментарий