Установка Quake 3 сервера на Linux
- Recluse
- 13.10.2015
- 17 439
- 7
- 02.03.2021
- 10
- 10
- 0
Требования для сервера Quake 3
Для поднятия сервера по Quake 3 нам понадобится:
- Оригинальные файлы игры. Взять их можно с диска с игрой, с любого сервиса цифровой дистрибуции (Steam, GOG), или еще где.
- Рекомендуется не использовать оригинальные исполняемые файлы игры для поднятия сервера, а взять какие-нибудь модифицированные - например cnq3, ioquake 3, quake3e или еще какой. В данной статье в качестве примера будет использоваться quake3e (неофициальная пользовательская модификация оригинального кода). Скачать его можно по этой ссылке.
Настройка операционной системы
Если операционная система, где нужно поднять сервер по Quake 3, является 64 разрядной, а вы планируете запускать сервер для 32 разрядной системы, то необходимо выполнить следующую команду:
dpkg --add-architecture i386
Которая добавит в систему поддержку исполняемых файлов архитектуры i386 (32 битной).
Далее выполняем обновление базы доступных пакетов:
aptitude update
Теперь устанавливаем необходимые библиотеки:
aptitude install ia32-libs-i386
Устанавливаем программу screen для более приятного и удобного администрирования сервером:
aptitude install screen
Установка и настройка сервера
Создаем папку под сервер - например по пути /usr/local/games/quake3.
Далее:
- Копируем папку baseq3, где должны быть следующие файлы:
- pak0.pk3
- pak1.pk3
- pak2.pk3
- pak3.pk3
- pak4.pk3
- pak5.pk3
- pak6.pk3
- pak7.pk3
- pak8.pk3
- В корневой директории нужен только исполняемый файл выделенного сервера - quake3e.ded (или quake3e.ded.x64).
Кроме того, если стоит задача поднять сервер по какому-либо моду - например CPMA (Challenge Promode Arena - мод, на котором проходили все турниры последних лет, является заменой OSP), то необходимо:
- Скачать дистрибутив cpma (ссылка) и его официальный маппак, который необходим для работы - ссылка;
- Копируем содержимое архива в папку с сервером - папки baseq3 и cpma.
Теперь можно запустить сервер:
screen -d -m -A -S quake3_27960 /usr/local/games/quake3/quake3e.ded +set dedicated 2 +set net_ip ваш_ип +set net_port 27960 +set fs_basepath /usr/local/games/quake3 +set fs_homepath /usr/local/games/quake3/27960 +set fs_cdpath /usr/local/games/quake3 +set fs_game cpma +set vm_game 2 +set sv_maxclients 16 +exec server.cfg +map cpm22
Краткое описание того, что понаписано в параметрах запуска выше:
screen -m -A -S quake3_27960 - запускаем screen сессию, с именем quake3_27960. Теперь при рабочем сервере мы всегда можем на неё зайти, и посмотреть, что там происходит.
Делается это следующей командой
screen -x quake3_27960
Выйти из сессии screen без её закрытия можно клавишами ctrl + A + D.
set dedicated 2 - запускает сервер в выделенном режиме;
net_ip - задает ip адрес, который будет использоваться для работы сервера;
net_port - задает используемый сервером порт;
fs_basepath - указывает папку в которой лежат файлы игры;
fs_homepath - указывает директорию, которая будет использоваться запущенным сервером для хранения логов или конфигов - очень удобно, если планируется запускать несколько серверов с одного исполняемого файла;
fs_cdpath - аналогична fs_basepath;
fs_game - указывает папку с используемым модом (если не планируется использование мода, то данная команда не нужна);
vm_game 2 - команда, которая необходима для корректной работы сервера cpma;
sv_maxclients 16 - максимальное количество клиентов на сервере;
map cpm22 - запускаемая карта по умолчанию, можно изменить на любую другую.
Если нужно запустить два сервера, то строка запуска должна выглядеть следующим образом:
screen -d -m -A -S quake3_27961 /usr/local/games/quake3/quake3e.ded +set dedicated 2 +set net_ip 46.38.51.104 +set net_port 27961 +set fs_basepath /usr/local/games/quake3 +set fs_homepath /usr/local/games/quake3/27961 +set fs_cdpath /usr/local/games/quake3 +set fs_game cpma +set vm_game 2 +set sv_maxclients 16 +exec server.cfg +map cpm22
Добавить комментарий