Quake 3 arena steam linux

ramer

Делай добро и бросай его в воду

(убей всех людей)

Quake 3 Arena сервер на Linux

Культовая компьютерная игра в жанре многопользовательского шутера от первого лица, изданная компанией id Software 2 декабря 1999 года, третья в серии игр Quake и первая, не имеющая полноценного однопользовательского режима.

Disclaimer

Этот документ предоставляется «как есть». Автор не несёт ответственности за любой вред (моральный или физический), который может быть нанесён оборудованию или людям в результате прочтения этого документа.

Системные требования

Linux с ядром версии 2.2.9 или выше, glibc-2.1 или выше
Процессор от Pentium II 266MHz
128 MB памяти
500 MB места на жестком диске
Соединение с интернетом и/или выход в локальную сеть

Если вы хотите играть с того же компьютера, на котором запущен сервер — требования к компьютеру будут намного выше.

Дистрибутив

Поставьте ваш любимый дистрибутив Linux. Какой именно — практически не имеет значения. Главное — проследите, чтобы это была одна из последних его версий. Инструкции по установке вы всегда можете получить на сайте выбранного дистрибутива. Для новичков могу порекомендовать Slackware, SuSE, Red Hat.

Установка quake3

Лирическое отступление о правах доступа
В Linux права доступа организованы отлично от того, что вы могли видеть раньше в других ОС. Существует суперпользователь (root), и права доступа для него не проверяются. То есть root имеет полный доступ ко всей системе. Для каждого файла существуют три правила доступа: владелец (owner), группа пользователей (group), и все остальные (others). В каждом из этих правил есть права на чтение файла (read), запись в него (write), и запуск файла на исполнение (execute).

Мы будем проводить установку из-под пользователя root, а запуск сервера из-под обычного пользователя (назовём его «user»).

Установка дистрибутива quake3
Скачать дистрибутив можно с разных серверов. Он включает в себя только обновления и исполняемые файлы для запуска клиента и сервера под нужной нам ОС. Эти файлы распространяются совершенно бесплатно, и мы возьмём их с официального сервера id Software. Размер инсталлятора — около 30 МБ.

# wget ftp://ftp.idsoftware.com/idstuff/quake3/l inux/linuxq3apoint-1.32b-3.x86.run

Даём скачанному файлу права для запуска. Запускаем его.

# chmod +x linuxq3apoint-1.32b-3.x86.run
# ./linuxq3apoint-1.32b-3.x86.run

В зависимости от того, в каком режиме (графическом или консольном) вы работаете, вы увидите различное представление одного и того же инсталлятора.

Устанавливая quake3, убедитесь, что выделена опция «Dedicated server«.

Установка карт, модов, дополнений
Как говорилось выше — в релизе есть далеко не всё, что нам надо. Папку baseq3 можно взять с официального диска с игрой. Не бойтесь переписать её поверх той, что была только что поставлена. Все остальные файлы и папки — osp, cpma — можно взять из любой работающей копии игры (моды обычно распространяются бесплатно).

В дальнейшем будем считать, что Quake III установлен в /usr/local/games/quake3

Запуск сервера

Дальнейшие действия проводим из-под аккаунта обычного пользователя. Хотя мы и полностью уверены, что quake3 не нанесёт никакого вреда системе, будучи запущенным от суперпользователя, но всегда, когда расширенные права не нужны, лучше ими не пользоваться.

Читайте также:  Чтение com порта windows

Простейший случай
Заходим в /usr/local/games/quake3, и запускаем сервер с нужными нам параметрами.

$ cd /usr/local/games/quake3
$ ./q3ded +set fs_game osp +set sv_strictauth 0 +set sv_pure 0 +map q3dm6

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

О хранении файлов и логов сервера
Linux Quake III хранит файлы совсем не так, как его windows-версия. Если в windows всё хранится в том месте, куда проинсталлирована игра, то в Linux есть два места, откуда можно брать конфиги, моды и прочие нужные файлы. Первое — как всегда. Второе — домашняя директория пользователя. В ней при первом запуске создается директория «.q3a«.

Допустим, вы запустили сервер с модом osp, и выполняете на сервере конфиг myServer.cfg. Вы пишете в консоли сервера «exec myServer.cfg«. Сервер ищет его в следующем порядке:

Если вы (в той же ситуации) записываете конфиг командой «writeconfig newServer.cfg«, то он будет записан только в «/home/user/.q3a/osp/newServer.cfg«.

Регистр символов имеет значение. Конфиги myserver.cfg и myServer.cfg — совершенно разные файлы. По той же причине файл pak0.PK3 не будет найден, и сервер вылетит с ошибкой.

Пути надо писать только с использованием прямого слеша (/).

/usr/local/games/quake3 — правильно.
usrlocalgamesquake3 — ошибка.

Тонкая настройка

Скрипт для запуска
Вам наверняка надоест каждый раз печатать кучу параметров для командной строки сервера. Этот процесс можно легко автоматизировать, создав простой скрипт. У пользователя нет прав писать в директорию /usr/local/games/quake3, поэтому создадим скрипт в домашней директории. Назовём его q3.sh (не забудьте дать ему права на исполнение). Содержимое должно быть таким:

./q3ded +set com_hunkmegs 32 +set net_port 27960 +set dedicated 1 +set vm_game 2 +set vm_cgame 2 +set vm_ui 2 +set fs_game osp
+set sv_strictAuth 0 +set sv_punkbuster 0 +set sv_lanForceRate 1 +set sv_maxrate 15000 +exec 1v1.cfg

Во второй строке мы переходим в то место, где лежат файлы для сервера. q3ded ищет файлы данных в домашней директории, затем в текущей директории. Поэтому нам надо перейти туда, чтобы программа всё нашла.

Для переноса параметров на новую строку можно поставить обратный слеш в конце предыдущей строки.

Продвинутые параметры
Чего не хватает в простом скрипте? Во-первых, при закрытии консоли, в которой скрипт был запущен, закроется и сервер. Это неудобно, если вы хотите, чтобы ваш сервер работал 24/7. Во-вторых, если таки скриптом мы запустим два сервера, то их логи будут писаться в один и тот же файл. Впоследствии их будет невозможно разобрать.

Первая проблема решается очень просто. Мы будем запускать сервер в фоновом режиме. Предварительно надо убедиться, что в конфигах и параметрах командной строки есть всё, что нам нужно. В конфиге необходимо прописать rconPassword, потому что это будет единственный способ управления сервером. Сервер запускается в фоновом режиме добавлением » #!/bin/bash

start)
nice -n 0 ./q3ded +cvar_restart
+set com_hunkmegs 32
+set net_port 27960
+set dedicated 1
+set vm_game 2
+set vm_cgame 2
+set vm_ui 2
+set fs_game osp
+set fs_homepath /home/quake3/.q3a-server1
+set sv_strictAuth 0
+set sv_punkbuster 0
+set sv_lanForceRate 1
+set sv_maxrate 15000
+exec 1v1.cfg >&/dev/null &
exit
;;
stop)
killall q3ded
;;
*)
echo «Usage: »
exit 1
esac
exit 0

Теперь сервер запускается и останавливается командами:

$ /home/user/q3.sh start
$ /home/user/q3.sh stop

Эти команды ничего не выводят на экран. О деятельности сервера можно судить по логам, которые находятся в /home/user/.q3a-server1/osp/games.log. Соответственно, конфиги сервера теперь надо класть в его новую домашнюю директорию, то есть /home/user/.q3a-server1/osp.

Читайте также:  Как начать переустановку windows

Запуск нескольких серверов
В этом случае имеет смысл изменить названия исполняемых файлов, которые запускаются скриптом. Нужно создать файлы q3ded.somethingnew, которые будут содержать то же, что и исходный q3ded. Сделаем это с помощью механизма «символических ссылок».

# cd /usr/local/games/quake3
# ln -s q3ded q3ded.27961

Это удобно тем, что если вам понадобится изменить q3ded (например, при выходе новой версии), то будет достаточно изменить только один файл, а все ссылки на него менять не надо. Кроме того, такой метод сохраняет место на жестком диске.

Не забудьте изменить q3ded на q3ded.27961 в двух местах в скрипте, который запускает сервер. Также можно сменить порт, домашнюю директорию и конфиг для каждого из скриптов.

Клиенты не могут приконнектиться к серверу.
Проверьте, чему равны переменные sv_pure, sv_punkbuster, sv_strictauth. Их лучше всего выставлять равными нулю.

Проверьте, работает ли на компьютерах firewall. Возможно, сервер работает корректно, но Linux не принимает соединения на 2796x порты. Также могут быть проблемы с подключением к интернету как на клиенте, так и на сервере.

Добавляем мод Excessive Plus.
Скачать мод можно отсюда.
Посмотреть все фичи мода — здесь.
На момент написания статьи свежая версия мода 2.0a.

Источник

Установка Quake в Linux

Данный текст не ориентирован на какой-либо конкретный Linux-дистрибутив. Все нижеописанное вполне легко проделывается в большинстве современных видов Linux. Возможно некоторое различие в способе ввода команд от имени суперпользователя, Поэтому эти команды приведены в общем виде с соответсвующими прмечаниями.

Установка Quake

Т.к. Официальных версий первого Quake для Linux-платформы не существует, нам придется воспользоваться одним из лучших (а на мой взгляд — лучшим) портов — DarkPlaces.

Итак, для начала идем на официальный сайт DP, точнее в его Downloads-раздел Оттуда скачиваем последний имеющийся стабильный релиз. Приверженцы работы в консоли запросто могут это сделать вот так:

wget http://icculus.org/twilight/darkplaces/files/darkplacesengine20081004.zip

После этого распаковываем архив в необходимый нам катлог. Например в /usr/local/games/dp/

После этого переходим в домашнюю директорию пользователя, и создаем там катлог для хранения оригинальных pak-файлов и конфигов.

cd /home/username/

mkdir .darkplaces

Во вновь созданном каталоге создаем катлог id1, в который переносим файлы pak0.pak и pak1.pak с оригианльного CD Quake (либо из другого места, в котором у вас хранятся оные файлы).

cp /path/to/files/pak*.pak

В принципе это все, можно запускать игру. Для этого переходим в катлог, куда был распакован архив darkplacesengine20081004.zip и запускаем игру одним из следующих файлов:

Установка Quake 2

Из стабильно работающих на современных Linux-дистрибутивах портов можно выделить два — Yamagi Quake 2 и Quake 2 XP.

Первый из них почти ничем не отличается от ванильного Квейка 2 — добавлена поддержка архитектуры x86_64, переписана система сохранения игры. OpenGL-рендер использует SDL для инициализации и поддерживает большие разрешения экрана.

А вот Quake 2 XP — тут как раз много улучшений в графической части. Небольшая выдрежка из официального FAQ:

Quake2xp это графический порт оригинального Quake II использующий возможности новых видео карт nvidia и ati с поддержкой OpenGL 2.0, интегрированные решения на картах intel и sis НЕ ПОДДЕРЖИВАЮТСЯ! Порт может работать на последних интегрированных решениях от intel, но по причине общей тормознутости-обрезанности поддержка не осуществляется.

Готовых пакетовпод основные Linux-дистрибутивы (пока ещё) нет, так что придётся собирать из исходников — краткая инструкция по сборке Quake 2 XP — в этой сатье.

Установка Quake 3

Установка оригинального Quake 3 в Linux в целом не является сложной процедурой. Даже на современных 64-х разрядных дистрибутивах. Итак, приступим.

Для начала сходим на FTP-сервер id Software, и заберем оттуда последний апдейт Linux-версии Quake 3 Arena.

Читайте также:  Обновился до windows 10 1607

wget ftp://ftp.idsoftware.com/idstuff/quake3/linux/linuxq3apoint-1.32b-2.x86.ru

После этого присваиваем скачанному атрибут исполняемого а затем запускаем его::

chmod +x linuxq3apoint-1.32b-2.x86.run

./linuxq3apoint-1.32b-2.x86.run

Запускать необходимо с привелегиями суперпользовтеля (root), хотя если вы собираетесь ставить игру в свой домашний катлог — можно запустить и с правами обычного пользователя.

ВАЖНО: Для пользователей 64-х разрядных систем перед данным шагом необходимо установить 32-х разрядные библиотеки. Иначе установшик Quake 3 мягко вас пошлет, сославшись на некорректные версии библиотек. Так что ищите в репозитариях своего любимого дистрибутива пакет ia32-libs. И инталлятор Quake 3 запускайте командой:

linux32 ./linuxq3apoint-1.32b-2.x86.run

Программа установки задаст вам несколько вопросов насчет лицензии (принимаем ясное дело), пути установки игры, создания символической ссылки (оставляем по умолчанию /ur/local/bin/). Попросит также выбрать необходимые компоненты, вы можете не ставить файлы выделенного сервера, мода Team Arena, если не собираетесь их использовать.

После того как необходимые файлы будут скопированы, игра спросит — желаем ли мы запустить её. Откажемся, ведь у нас ещё нет самого главного файла — pak0.pk3. Копируем данный файл из того источника, в котором он у вас находится (папка на NTFS-разделе, оригинальный CD).Если игра была установлена не в домашний катлог, а к примеру в /usr/local/games/quake3/, то копирование выполняем от имени суперпользователя.

cp /path/to/filw/pak0.pk3 /usr/local/games/quake3/baseq3/pak0.pk3

И только пос этого запускаем игру, используя консольную команду quake3.

#1 | profile — 09 декабря 2008 в 12:39

альтернативой Darkplaces может стать квейкворлд версия
идете на сайт nquake.com и качаете линукс весию)

#2 | NIGHT [unreg] — 16 февраля 2009 в 01:40

Установил Q3 примерно так, как тут и описано.
Проблема, в игре нет звука.

#3 | Dvemer [unreg] — 10 мая 2009 в 14:48

to NIGNT
сначала надо получить доступ к /dev/dsp об этом написано в README-linux.txt (см в папке с игрой после установки)
если есть доступ к /dev/dsp , но нет звука, то надо сделать от рута что-то вроде echo «quake3.x86 0 0 direct» >/proc/asound/card0/pcm0p/oss

#4 | hatred [unreg] — 05 мая 2010 в 10:55

Если хав-ту все ещё поддерживается пара ремарков: группа icculus сделала и порт движка Q2: http://icculus.org/quake2/ не пробовал, хотя в AUR (пользовательский репозиторий дистрибутива ArchLinux, пользователем которого я являюсь) есть для него правила сборки. Сам же использовал порт проекта QuakeForge:
http://quakeforge.net, единственно, проект долгое время не подавал признаков жизни, сейчас вроде опять ожил, но актуальные версии только в исходниках и в svn, вчера буквально собрал компилятором gcc 4.5.0 для первого Quake. Для второго там подпроект Quake2Forge но в том же svn. Там же в SVN есть что-то для Quake3 (насколько мне известно, оно тоже теперь открыто). В свое время играл именно на этих движках: есть софтверный и OpenGL рендер, и различные варианты вывода графики: от fbdev (без иксов, хотя вроде только софтварный рендер будет) до sdl и glx.

#5 | DOOMer — 05 мая 2010 в 14:35

Про QuakeForge я слышал, и Q2Forge пытался собирать (через PKGBUILD bp того же AUR-а)/ Yj yjhvfkmyj jy e vtyz yt pfd`kcz? r cj;fktyb./

p.s А можешь написать небольшой обзор Quake Forge (не процесс сборки, а описание того что из себя порт представаляет)?

#6 | Квакер [unreg] — 15 сентября 2011 в 22:06

люди подскажите где скачать/как сделать самому читы для Quake 3 в Arch Linux (для Linux)

#7 | LumazeR [unreg] — 19 марта 2012 в 19:13

Спасибо за инструкцию

#8 | викор [unreg] — 06 января 2013 в 22:40

С празником! Подскожите как новечку как можно бес проблем устанавить игрушку

Источник

Оцените статью