Данная тема будет полезна тем, кто не нашёл самостоятельно как настроить карты, списки, смену, голосования или кто «читает книгу и видит фигу».
ВАЖНО! Перед тем как что-либо делать с сервером, убедитесь что не включены никакие плагины для голосования или смены карт, если у Вас установлен Sourcemod. Частой проблемой является включенный по-умолчанию плагин nextmap.smx.
1. Добавление и ротация карт, с голосованием и без:
Рассмотрим на примере «Обычного» (casual) режима сервера (тут внимательно, если Вам нужен другой режим, то выбирайте «конфиг» Вашего режима). Вы выбрали сервер, оплатили сервер, привязали ключ от аккаунта, произвели предварительные настройки из панели управления и запустили сервер.
Из «коробки» вы получаете 7 конфигурационных файлов, которые нас интересуют: server.cfg, gamemodes.txt, gamemodes_casual_server.cfg, gamemodes_server.txt, maplist.txt, mapcycle.txt, autoexec.cfg, webapi_authkey.txt.
Файлы server.cfg и gamemodes_casual_server.cfg – основные «конфиги», в них записываются переменные настроек сервера (переменными называются сами команды записываемые в такие файлы). Раньше был один «конфиг» для всего, но у нас много режимов в игре, разделены, просто знайте gamemodes_casual_server.cfg продолжение server.cfg, не будет разницы куда добавить нужную вам переменную, если её нет изначально в стандартном «конфиге», главное не два раза. Рекомендую server.cfg не трогать, а всё настроить и добавлять в gamemodes_casual_server.cfg.
Файлы gamemodes.txt и gamemodes_server.txt – это уже настройки режимов, допустимых чисел игроков на режим, какие карты использовать, в каком порядке, какое оружие допускать в бой, как действовать в определённом режиме.
Файлы maplist.txt и mapcycle.txt – это списки карт вашего сервера, которыми он будет пользоваться в зависимости от ваших настроек.
Файл autoexec.cfg понадобится, если нужно правильно поставить карты из мастерской. Как это сделать смотрите здесь: Установка карт из Workshop
Файл webapi_authkey.txt пустой, в него нужно вписать ключ от мастерской, это делается один раз на все коллекции: Зарегистрировать ключ Steam Web API
Записанные хостингом настройки нужных нам переменных, которые мы получаем при первом удачном запуске «Обычного» режима такие:
mp_match_can_clinch 1 – если у вас 15 раундов, то при наборе больше половины (8 раунов) эта команда побеждает, т.к. у другой команды нет возможности отыграться;
mp_maxrounds 15 – количество раундов на карту;
mp_timelimit 0 – время на карту, если установлено число раундов, то время указывать нельзя (ставить 0 нужно), это две взаимоисключающие команды.
А вот чего там не написано, но нужно не в стандартном варианте для настройки:
mp_endmatch_votenextmap 1 – отвечает за голосование в конце матча, если у вас 15 раундов, то после 15 раундов будет голосование в течении 20 секунд за выбор карты, для отключения нужно поставить ноль (0);
mp_endmatch_votenextleveltime 20 – те самые 20 секунд времени голосования;
mp_endmatch_votenextmap_keepcurrent 1 – позволяет включить принудительно в список сыгранную только что карту или предоставить всё воле случая, если поставить значение ноль (0);
mp_match_end_changelevel 1 – отвечает за «автосмену» карты в конце матча, данная переменная пользуется вашим mapcycle.txt, если он пустой, то не произойдёт смены карты на другую, а запустит заново текущую, при включенном голосовании можно переменную оставить;
mp_match_end_restart 1- отвечает за рестарт текущей карты, при значении единица смены карты не происходит, текущая карта не перезапускается, а просто всех игроков отправляет в меню выбора команды и обнуляет счёт, полезна для тех у кого одна карта на сервере, у кого есть предел по раундам или по времени на матч и кто не хочет перезагружать карту полностью.
Почему я написал «записанные хостингом», потому что абсолютно все переменные используются на сервере, даже если их нет в «конфиге». Если их там нет, то они просто имеют стандартные значения для своего режима. А когда записываем, то выводим их из невидимости.
Теперь, немного черпнув информации, рассмотрим способы установки карт:
1. На хостинге MyArena.ru после установки сервера устанавливают абсолютно все стандартные карты режимов. Для просмотра идёте в «Панель управления» => «Карты» => «Все карты на сервере», собственно вот и первый способ обрисовывается, можете удалить ненужные карты. Можете пройти во вкладку рядом «Установить карты», пройти в нужный раздел и выбрать карту, которые предлагает хостинг. Карты при такой установки просто скачиваются в папку maps вашего сервера.
2. Можете сами скачать карту откуда угодно, с помощью FileZilla открыть ваши файлы сервера и скопировать карту в папку maps.
3. Есть возможность поставить карту из Workshop (мастерская Steam), плюсы от такой установки в том, что если карты обновляются, то и на сервере тоже, так же в списке поиска серверов людям понятно, что карта из мастерской. Внимательно читайте здесь: Установка карт из Workshop
Функционал мастерской и карт добавленных обычным способом взаимоисключающий - невозможно смешать карты! Либо Вы устанавливаете карты вручную в папку maps, либо используете мастерскую и тогда карты все должны быть из мастерской.
Ну и собственно рассмотрим частные случаи на примере режима «Обычный»:
1. «Мне всё нравится, но хочу оставить 5 карт на сервере».
2. «Я хочу одну карту крутить на сервере всегда».
3. «Я хочу одну карту без перезагрузки».
4. «Я хочу поставить все карты из мастерской и с голосованием».
5. «Я хочу смешать карты из мастерской с обычными картами и чтоб с голосованием».
6. «Я хочу поставить обычный de_dust2 днём и de_dust2_night ночью с перезагрузкой одной карты после матча на ней, голосование не нужно».
7. «Я хочу поставить обычный de_dust2 днём и de_dust2_night ночью с рестартом, голосование не нужно».
8. «Я хочу поставить 3 карты днём и 3 другие карты ночью с полным рестартом, голосование нужно».
Кто пользуется плагинами «сорсмод» или хочет «админкой» менять карту, то нужно тогда прописывать карты в mapcycle, maplist, admins_mapist, но можете схитрить и не писать workshop\11111\de_syperdust, а просто de_superdust, важна правильная запись лишь в том случае, если две карты мастерской имеют одинаковый индекс (название .bsp), т.е. de_dust2_winter от одного автора и от другого писать нужно workshop/54555/de_dust2_winter и workshop/1112546/de_dust2_winter - тогда не будет ошибок, но останется ошибка радара, если карты на сервере играются подряд, то радар остаётся от сыгранной ранее карты того же индекса. Рекомендую в админ-меню (adminmenu_maplist.ini) написать без дополнительных записей, если нет повторов, а в остальные файлы писать полную.
2. Как перейти от настроенного голосования CS:GO к голосованию SourceMOD:
Ядро SourceMod позволяет настроить голосования своими методами, в наше поле зрения должны попасть стандартные плагины идущие с ядром:
- mapchooser.smx - это основа голосований, в основном чтобы голосование в конце карты запускалось, ставится в обязательном порядке для rockthevote и nominations;
- nextmap.smx - плагин последовательного запуска карт, в принципе не нужен, в СS:GO есть переменная аналог mp_match_end_changelevel 1;
- nominations.smx - плагин предложения карты на следующий матч в общем голосовании;
- randomcycle.smx - случайный порядок списка карт;
- rockthevote.smx - возможность игроков вынудить сервер сменить карту.
Всё очень просто (читайте инструкцию, с начала, там о всех файлах и переменных подробно):
1. Устанавливаем значение стандартного голосования (выключаем его):
mp_endmatch_votenextmap 0
2. Идём в плагины. По умолчанию некоторые плагины выключены, нам нужно из папки disabled в директории плагинов Вашего сервера перетащить нужные и перезапустить сервер. Например для сервера с rtv и nominate нужно что бы включены были: mapchooser.smx, nominations.smx и rockthevote.smx;
3. Важно что бы Ваши maplist.txt, mapcycle.txt были настроены, в них нужно прописать карты:
- в случае карт мастерской нужно писать так:
workshop/4545309/de_dust2
workshop/23244453/de_dust
workshop/7834253/de_dust_winter
- в случае карт загруженных обычным способом:
de_dust2
de_dust
de_dust_winter
3. Стандартные голосования:
sv_allow_votes
Включает или отключает возможность голосования на сервере. Значение по умолчанию — 1 (включено).
sv_vote_allow_spectators
Разрешает или запрещает участие в голосовании наблюдателей. Значение по умолчанию — 0 (запрещено).
sv_vote_failure_timer
Время (в секундах), по прошествии которого голосование может быть снова начато, если оно провалилось в предыдущий раз. Значение по умолчанию — 300 (5 минут).
sv_vote_issue_kick_allowed
Включает или отключает возможность голосования за отключение (в простой речи: кик) игрока. Значение по умолчанию — 0 (отключено).
sv_vote_kick_ban_duration
Время (в минутах), по прошествии которого игрок сможет вернутся на сервер, если его выгнали. Значение по умолчанию — 1. Значение 0 отключает эту функцию. В таком случае изгнанный игрок сможет почти сразу вернутся.
sv_vote_issue_nextlevel_allowed
Включает или отключает возможность начать голосование за выбор следующей карты. Значение по умолчанию — 1 (разрешено).
sv_vote_issue_nextlevel_allowextend
Разрешает или запрещает голосовать за продление текущей карты. Значение по умолчанию — 1 (разрешено).
sv_vote_issue_nextlevel_choicesmode
Разрешает или запрещает игрокам выбирать следующую карту из списка карт с наименьшим игровым временем. Значение по умолчанию 1 (разрешено).
sv_vote_issue_changelevel_allowed
Разрешает или запрещает сменить текущую карту сразу после окончания голосования. Значение по умолчанию 0 (запрещено).
sv_vote_issue_restart_game_allowed
Включает или отключает возможность голосования за переигрывание раунда. Значение по умолчанию 1 (включено).
sv_vote_issue_scramble_teams_allowed
Включает или отключает возможность голосования за смешивание команд. Значение по умолчанию 1 (включено).
После установки «сорсмода» рекомендую перед каждой переменной добавлять sm_cvar - вообще нужна для заблокированных переменных, когда сервер включен, запускает их в принудительном порядке, как Вы бы от имени администратора сервера это сами сделали.
4. Немного о VDS (все вопросы лучше задавать в специальном разделе форума):
Пример корректного запуска CS:GO как для стандартных карт, так и для карт мастерской на VDS с включением RCON-команд:
srcds -game csgo -console -usercon +game_type 0 +game_mode 0 +mapgroup mg_active +map de_dust2
На VDS вы так же можете создать autoexec.cfg и записать карты мастерской, но параметры запуска не изменяете, карта автоматически переключится с de_dust2 на ту что указана в autoexec.cfg (повторюсь это нужно чтобы сервер в процессе скачивания карты или проблем знал куда переключиться). Или если используете например Linux Game Server Manager, то там в основном "конфиге" запуска добавляются записи для мастерской и так же не изменяются параметры запуска, они уже вписаны в строку запуска как для простых карт, так и для обычных, только карты мастерской не включатся, пока не будут заполнены соответствующие поля в этом "конфиге", а как только они будут заполнены, то стандартные карты во внимание сервером приниматься не будут.
UPD: Особых изменений нет, записал в самом начале предупреждение.
Сообщение отредактировал Dreizehnt: 03 Май 2017 - 19:19