Установка Quake 3 сервера на Linux

  • 13.10.2015
  • 16 836
  • 7
  • 02.03.2021
  • 10
  • 10
  • 0
Установка Quake 3 сервера на Linux

Требования для сервера Quake 3

Для поднятия сервера по Quake 3 нам понадобится:

  1. Оригинальные файлы игры. Взять их можно с диска с игрой, с любого сервиса цифровой дистрибуции (Steam, GOG), или еще где.
  2. Рекомендуется не использовать оригинальные исполняемые файлы игры для поднятия сервера, а взять какие-нибудь модифицированные - например cnq3, ioquake 3, quake3e или еще какой. В данной статье в качестве примера будет использоваться quake3e (неофициальная пользовательская модификация оригинального кода). Скачать его можно по этой ссылке.

Настройка операционной системы

В качестве примера использовалась операционная система Debian 7 версии.

Если операционная система, где нужно поднять сервер по 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
Была ли эта статья Вам полезна?

Комментарии к статье (7)

    • flexx02

    Помогите плз клиент найти под винду, портейбл

      • Recluse

      Клиент Quake 3? Он не сохраняет ничего необходимого для работы в саму систему, вместо этого используя директорию где установлен, так что он изначально является "как портабельный".

    • Аноним

    что-то второй вариант сервера с OSP у меня не стартует

      • Recluse

      Какую ошибку пишет сервер?

    • vova

    Это не работает! Вы запускаете quake3e.exe - а это бинарник под винду

    /usr/local/games/quake3$ file quake3e.x64.exe
    quake3e.x64.exe: PE32+ executable (GUI) x86-64, for MS Windows

      • Recluse

      В архиве должны быть бинарные файлы как под Windows, так и под Linux. К слову, quake3e.x64.exe это клиент, а не исполняемый файл сервера.

    • StAss

    в фаерволе надо порт 27960 UDP ещё открыть чтобы все чотк было =)
    спасибо за мануал!

Добавить комментарий для vova

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Напоминаем Вам, что Ваше сообщение будет опубликовано только после проверки администратором сайта. Обычно это занимает 1-2 рабочих дня.