Как сделать quake сервер

Как сделать quake сервер

Quake 3 Arena 1.32
OSP modification 1.03a

2) Запуск с ярлыка или с использованием конфига?

Решать вам, однако я бы советовал запускать именно с конфигом. Потому что в конфиге можно прописать только серверные переменные и потом с легкостью их менять.
Конфиги, сделанные профессионалами с сайта Cyberfight и слегка подправленные мной:
Duel
Team Deathmatch

3) Создание ярлыка для запуска сервера.

Для запуска сервера нужно создать ярлык для quake3.exe и изменить его следующим образом:
quake3.exe +set fs_game osp +set sv_strictAuth 0 +set dedicated 1 +set sv_punkbuster 0 +set sv_lanForceRate 0 +set net_port 27961 +exec duel.cfg

Давайте разберемся что здесь для чего:
+set dedicated 1 — запускает quake3 в консольном режиме, то есть в виде выделенного сервера.
+set fs_game osp — указывает на то, что мы запускаем мод в данном случае ОСП.
+exec duel.cfg — вызывает конфиг для дуэльного сервера.
+set sv_strictAuth 0 — вырубает проверку cd-key.
+set sv_punkbuster 0 — вырубает Punkbuster.
+set net_port 27961 — указавает к какому порту коннектиться к вашему серваку. Очень полезно, если вы хотите запустить 2 сервера одновременно(для этого назначте разнае порты).
Я советую просто все эти переменные прописать в вашем серверном конфиге.

Однако я немного усовершенствовал процесс запуска сервера создав CMD файл(аналог bat файла):
start /high quake3.exe +set dedicated 1 +set fs_game osp +exec duel.cfg

start /high — это приоритет, с которым запускается quake3.exe(работает только в Windows2000/XP), сделано для удобства(если не назначать приоритет, то при большом количестве игроков у создавшего сервер будут лаги).

Что такое CMD файл(Для тех, кто не знает).

Как создать .cmd файл? Очень просто, для этого вам надо создать текстовый документ и сменить его расширение с .txt на .cmd
Поместите ваш .cmd файл в папку, где у вас quake3.exe и можете отправить ярлык для него на рабочий стол(для удобства).

4) Что сделать, чтобы сервер не требовал CD-KEY?

Прошустрить все используемые конфиги и изменить/добавить указанные ниже переменные:

set cl_punkbuster «0»
set sv_punkbuster «0»
set server_ospauth «0»
set g_needpass «0»
set sv_pure «0»
set sv_strictAuth «0»

Также в ваших конфигах должны быть переназначены Master серверы:

seta sv_master1 «»
seta sv_master2 «»
seta sv_master3 «»
seta sv_master4 «»
seta sv_master5 «»
seta sv_master6 «»
seta sv_master7 «»

Вы видели на Playground или Demos мониторинги? Так вот, ничего тут сложного.
Создайте html файл с содержимым:

И всё! Только для нормальной работы вам надо скачать плагин к IE 5.5+ и этот reg файлик.
Адрес сервера, как вы наверное догадались есть ни что иное, как: name=»playground.ru:27960»
Вот немного усовершенствованный пример.

ВНИМАНИЕ! Обнаружилась фигня:)

На пропатченных виндах(все обновления до 24 августа 2003 года), если смотреть через Internet Explorer 6, то ничего не показывается(скорее всего мелкософт опять позащищался от дыр, наделав кучу новых багов! Поэтому я рекомендую всем переходить на Оперу 7.11!

Ну наконец-то вы запустили сервер! Теперь надо сообщить свой IP адрес игрокам и подключаться:)
Немного теории:
IP адреса бывают статическими и динамическими.
Статический IP адрес не меняется никогда. Обычно у владельцев LAN, DSL, ISDN
Динамический IP адрес изменяется при каждом логине. В основном у владельцев модемов.

Как определить свой IP адрес(для Windows XP):
У вас наверное имеется значок в виде двух мониторчиков на таскбаре? Откройте окно состояния и зайдите в Details(Дополнительно):

Client IP adress(IP адрес клиента) и есть ваш IP адрес.
Сообщите всем игрокам свой адрес по ICQ или еще как-нибудь.
Подключайтесь к серверу введя в консоли такую строку:
/connect yout_ip:your_port
где:
your_ip — ваш IP адрес(в моем случае будет 195.190.96.38)
your_port — ваш порт(помните переменную net_port, в моем случае это 27961).
Заметьте, что если вы создаете инетовский сервер, и тоже подключаетесь по модему, то IP адрес всегда будет меняться, чего не происходит при подключении по локальной сети или DSL, где IP адрес статический!

7) Великая штука remote console! Очень удобная вещь! Особенно когда влом возиться с callvote. позволяет управлять вашим сервером удаленно, то есть играя с клиента можно без проведения голосований менять переменные, кикать игроков и т.д.
Использование:
/rcon password command «param»
Где:
password — ваш пароль, указывается в серверном конфиге переменной rconPassword «yourpassword»
command — команда, которую необходимо выполнить на сервере.
param — параметры команды
Читайте также:  Как сделать honor 10i

Примеры:
/rcon 1 kick uNkind
/rcon 1 map pro-q3dm6
/rcon 1 sv_pure «1»

На этом пожалуй я закончу изучение серваков для Quake 3. В следующей статье я рассмотрю вопрос сбора статистики игроков, установки Voodoo stats на web сервер с использованием Apache, PHP и MySQL.

Сайт лучше всего просматривать в разрешении 800х600.
copyright© 2003 by XM software =))

Источник

Настройка сервера Quake Live — пошаговое руководство

Quake 3, как много в этом звуке…

За последние 16 лет, с момента выхода первой версии, q3 изменился не сильно. Не поймите неправильно — игра менялась. Развились и канули в лету турнирные моды (Привет, osp, cmpa — мы вас помним!), родился quake live в браузере, перебрался в steam, нативный клиент для линукс. Чемпионатов стало меньше, игроков на серверах — тоже.

Но бесшабашная динамика осталась практически неизменной. В современной инкарнации, Quake Live — всё та же старая-добрая игра, вобравшая в себя все лучшие наработки за прошедшие годы.

Чего стоит только сервер minqlx, написанный на python, с поддержкой плагинов и кросс-серверной статистикой на qlstats.net, и огромный marketplace в стиме с дополнительными режимами игры, картами, звуками.

И хоть серверов сейчас намного больше, чем игроков — данный очерк скорее претендует на демонстрацию возможностей, и не призывает их бездумно плодить. Но, если вы просто хотите свой небольшой сервер для игры с друзьями долгими зимними вечерами, и не знали с чего начать, или Вам просто интересно, как сейчас происходит процесс установки — добро пожаловать под кат!

Инструкция актуальна для Ubuntu Server от 14.04 и выше. (в других дистрах установка minqlx может быть усложнена отсутствием python35 из коробки).

Начнём с тривиальных вещей — поставим полезный софт, откроем порты на firewall. Команды вводятся от имени root.

порты udp использует сервер игры, tcp — сервер статистики qlstats

Установим дополнительный софт и зависимости

Очередь за установкой собственно сервера Quake Live через Стим

После недолгого ожидания, сервер загружен в папку ql и готов к работе. Но самое интересное только начинается — для полноценной работы понадобится установить и настроить minqlx. Список команд сервера доступен на GitHub.

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

После установки сервера — логично поставить плагины. Не буду описывать их все, остановлюсь на тех, что качаются отдельно и не входят в стандартную поставку:

branding — изменение надписей, которые показываются при подключении к серверу.
q3resolver — сопоставление старых названий карт из q3 с новыми названиями, работает только для dm и ctf карт, но можно вписать дополнительные, или задать свои шорткаты.
ratinglimiter — позволит ограничить вход на сервер игрокам с рейтингом ниже или выше заданного; для использования в конфиге должен быть включен модуль balance.
changemap — меняет карту на заданную в конфиге, когда на сервере никого нет.
pingspec — вежливо просит покинуть сервер (kick) игроков с пингом выше заданного значения.
clanspinner — свистелка для анимации клантега, просто чтобы показать, что это возможно 🙂
autorestart — перегружает сервер в заданное время, когда на нём нет игроков.
custom_vote — накладывает ограничения на определённые режимы голосования в игре.

Дело за малым — создаём файл для запуска сервера

Обратите внимание, конфиг сервера должен находиться в папке ./baseq3/

Имя конфига — server-1.cfg для сервера на порту 27960, server-2.cfg для сервера на порту 27961 и т.д. Количество запущенных серверов регулируется через supervisor, об этом ниже.

Сперва нужно подготовить файл access.txt и вписать в него 17-значный стим-id (тот, что в урл при переходе на ваш профиль в стим) с указанием предоставить админ-доступ.

Делается это очень просто:

В этом же файле можно прогнать неугодных (чтобы забанить игрока — нужно написать id|ban), или поощрить достойных (id|mod — модератор).

Читайте также:  Как сделать вырезные наклейки

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

Файлы можно подключать прямо во время игры:

но в этом случае ql будет их искать в папке /home/ql/номерпорта/baseq3

Чтобы сервер работал — нужен конфиг:

Осталось совсем немного! На всякий случай, переопределим владельца в папке /home/ql:

Сервер настроен, осталось убедиться, что он будет работать всегда, когда потребуется. Не зря же мы ставили supervisor?

данный конфиг запустит 3 инстанса quake live с портами 27960, 27961, 27962, и будет перезапускать их в случае зависания, а так же запускать при перезагрузке сервера. Для управления вручную используется supervisorctl start/stop/restart all/ql_1

Ну и напоследок — если хотите, чтобы статистика на вашем сервере собиралась и учитывалась — зарегистрируйте сервера на сайте qlstats.net:8084/servers.html, используя пароль из скрипта запуска start_server.sh, строка zmq_stats_password.

Чуть не забыл! Для добавления контента, отредактируйте файл /home/ql/baseq3/workshop.txt.

Контент вот здесь. Айди проще всего скопировать из url понравившегося дополнения. Кстати, тут есть старый добрый дефраг со всеми возможными картами 😉

Не забудьте перезапустить сервера после добавления новинок!

Пожалуй, на этом всё. Надеюсь, эта информация будет полезной — полноценного howto по установке серверов Quake Live на русском я не встречал, что и сподвигло на написание этой заметки.

Данные настройки позволяют серверу кроме всего прочего работать со статистикой игроков, просмотр во время игры — при помощи команды !elo. Рейтинг высчитывается автоматически, на основании всех игр на всех серверах, поставляющих статистику на qlstats.net.

До 1500 — обычные игроки, от 1600 и выше — те, кто играют почаще и получше, от 2000 — профи и киборги-убийцы, отдавшие богу квейка мозг , сердце, и большую часть свободного времени 🙂

Некоторые технически продвинутые читатели с недоумением подумают — зачем всё это, если есть докер, и будут отчасти правы. Отчасти потому, что найденные мною образы меня не устроили. Инструкция писалась по мере настройки собственного сервера, как основа для собственного образа.

Источник

Как сделать quake сервер

Краткая инфа по выделенному серверукомандам консоли в Q3A.

dedicated server полезен для сервера, который будет управляться в интернете или LAN в течение долгих периодов времени и/или испытывать высокое число клиентов.

Стартуем сервак:
Чтобы стартовать сервер который не сообщается с главным сервером, используйте команду: quake3.exe +set dedicated 1 Чтобы стартовать сервер который сообщается с главным сервером и уведомляет его о присутствии , используйте команду: quake3.exe +set dedicated 2

Опции командной строки:
com_hunkmegs
com_hunkmegs — размещает некоторое количество оперативной памяти для карты и загрузки предметов.По умолчанию — 56 необходимо для клиента , но это просто убийство для dedicated сервера и трата памяти сервера. Для обычного использования free for all, tournament maps, и team deathmatch, использование com_hunkmegs 16 успешно. Только используя tournament карты , com_hunkmegs 12 может быть достаточно. Capture The Flag требует как минимум com_hunkmegs 26 .
ПРИМЕЧАНИЕ: сделанные игроком или внешние карты могут требовать более высоких значений.Если вы получаете сообщение: ERROR: Hunk_Alloc failed попробуйте увеличивать значение кратно 2 пока карта не загрузится успешно. Использование: +set com_hunkmegs Пример: quake3.exe +set dedicated 1 +set com_hunkmegs 16

net_ip Если вы играете на нескольких серверах ,и значение IP не то которое вы хотели бы использовать как сервер, команда net_ip должна быть использована. Она должна быть написана в консоли в такой форме: Использование: +set net_ip Пример: quake3.exe +set dedicated 1 +set net_ip 192.168.0.0

net_port Изменение порта используемого по умолчанию требует использования команды net_port в консоли. . Это полезно для управления многими серверами на том же самом компьютере или создании серверанесколько более частного. Порт по умолчанию 27960 увеличивается автоматически на 1, если другой сервер стартовал с без конкретного порта. Использование: +set net_port

Пример: quake3.exe +set dedicated 1 +set net_port 27961

Файлы конфигурации:
Чтобы упростить настройки сервера , могут быть созданы несколько файлов конфигурации для разных типов игры . Вы можете изменять каждый файл конфигурации в соответствии с получившимся результатом. Вы можете запустить каждый файл конфигурации набрав: exec

Читайте также:  Как легко сделать трек

Эти настройки уже есть в игре.Они настроены оптимально (по мнению создателей) для каждого вида игры:
Free For All — quake3.exe +set dedicated 1 +set com_hunkmegs 16 +exec ffa.config
Tournament — quake3.exe +set dedicated 1 +set com_hunkmegs 12 +exec tourney.config
Team Deathmatch — quake3.exe +set dedicated 1 +set com_hunkmegs 16 +exec teamplay.config
Capture The Flag — quake3.exe +set dedicated 1 +set com_hunkmegs 26 +exec ctf.config

Настройки сервера:
Настройки сервера это единственные используемые только на сервере и могут быть использованы в консоли или командной линии. Использование в командной линии требует +set перед вводом каждой команды. Пример: +set sv_maxclients 16

sv_maxclients
sv_maxclients – устанавливает максимальное число клиентов на сервере.по умолчанию — 8. Значение может быть увеличено для больших free for all, team deathmatch,или CTF карт.
Использование: sv_maxclients

sv_privatePassword
sv_privatePassword
– устанавливает пароль на сервере чтобы только клиенты знающие пароль могли подключиться к серверу . Клиенты используют команду /password. По умолчанию пароль не стоит.
Используйте sv_privatePassword «» для отключения пароля. Использование: sv_privatePassword » «.

sv_hostname
sv_hostname
— устанавливает имя сервера которое будет показываться в списке серверов.
Использование: sv_hostname » «.

sv_master1
sv_master1
— устанавливает первый главный сервер с которым сообщается ваш. По умолчанию master3.idsoftware.com и его НЕ РЕКОМЕНДУЕТСЯ ИЗМЕНЯТЬ. Дополнительные серверы могут быть добавлены с помощью команды sv_master2 through 5 command. Макс. число дополнительных серверов – 5.
Использование: sv_master2

sv_pure
sv_pure
— контролирует crc/zip проверку pk3 файлов чтобы убедиться что pk3 файлы не были модифицированы для применения кодов и других целей. Файлы pk3 клиента должны совпадать с файлами сервера. По умолчанию 1. — чтобы отключить проверку Использование: sv_pure

Команды консоли сервера:
Команды консоли сервера используются на консоли самого сервера или удаленной консоли.

status
status
– показывает номер игрока, счет, пинг, ник игрока, IP адрес клиента, и порт. Номер клиента используется командой kick. Использование: status

kick
kick – выбивает какого-либо игрока с сервера.Используется для выбивания надоедливых игроков. Чтобы выбить игрока сначала нужно узнать его номер командой status.
Использование: kick

capturelimit
capturelimit – устанавливает число захватов флага которое нужно набрать для победы. Имеет значение только в CTF.
Использование : capturelimit

fraglimit
fraglimit — устанавливает число фрагов которое нужно набрать для победы.Значение 0–без фраглимита.
Использование : fraglimit

timelimit
timelimit – Время игры на уровне. 0- убрать timelimit.
Использование : timelimit

rconpassword
rconpassword – установка пароля для удаленной консоли чтобы пользователи могли изменять установки сервера без прямого доступа к консоли сервера. По умолчанию 0.
Использование : rconpassword

killserver
killserver – закончить работу сервера.
Использование : killserver

Команды игры:
Вообще, все команды игры должны быть введены после того, как уровень загружается в файле config или в консоли. Исключения – это g_gametype и g_motd.

g_warmup
g_warmup – устанавливает время тренировки перед tournament матчем. По умолчанию — 20 сек.
Использование : g_warmup

g_friendlyFire
g_friendlyFire — определяет, могут ли игроки повреждать их собственных товарищей по команде .0- повреждения отключены ; 1 – повреждения включены. Не имеет значения в free-for-all и tournament матчах.
Использование : g_friendlyFire 1

g_gametype
g_gametype – определяет тип игры.
0 — free for all.
1 — tournament 1 на 1.
2 — Single Player (одиночная игра с ботами на последовательное прохождение все уровней)
3 — team deathmatch.
4 — CTF.
Использование : g_gametype

g_motd
g_motd – Сообщение дня (Message Of The Day). Клиенты могут видеть его при подключении.
Использование : g_motd » «

g_log
g_log – имя .log файла сервера.По умолчанию — games.log и он не нуждается в редактировании пока не будет запущено несколько серверов на одном компьютере.
Использование: g_log

g_quadfactor
g_quadfactor – используется для изменения увеличения повреждений в результате подбора quad damage. По умолчанию – в 3 раза.
Использование: g_quadfactor

g_syncronousclients
g_syncronousclients – синхронизирует всех клиентов для записи демок.По умолчанию 0 для более плавной игры. 1 для разрешения записи демок.
Использование: g_syncronousclients 0

g_weaponsrespawn
g_weaponsrespawn – время с момента подбора оружия до его восстановления.
Использование: g_weaponrespawn

g_allowvote
g_allowvote – позволяет игрокам на сервере вызывать голосование и голосовать за изменения включая: карту, рестарт карты, выбить игрока, g_gametype .По умолчанию 1 (вкл.). 0 – выкл.
Использование : g_allowvote 1

Источник

Поделиться с друзьями
Ответ и точка