Squad map

Материал из Википедия XLGAMES.PRO
Перейти к навигации Перейти к поиску

Squad — настройка голосования за карту и режим (LayerList_Vote)

Этот гайд показывает, какие файлы и параметры нужно изменить, чтобы:

  • Включить голосование после каждого матча.
  • Сформировать пул карт/слоёв, из которых движок будет собирать список.
  • Ограничить долю Invasion, Seed и т.п.
  • Избежать повторов одинаковых карт.

0. Где «крутить рычаги»

Цель Файл Ключевые параметры
Включить само голосование Server.cfg UseVoteLayer = true
MapRotationMode = LayerList_Vote – современный и предпочтительный метод
Задать список слоёв LayerVoting.cfg
LayerVotingLowPlayers.cfg
LayerVotingNight.cfg
по одной строке = один слой (например AlBasrah_RAAS_v1)
Балансировать режимы в списке VoteConfig.cfg GameModeChoices, GameModeSkipRounds, UniqueMap
Жёстко исключить слои ExcludedLayers.cfg любая строка – слой, который никогда не попадёт в голосование

1. Включаем систему голосования

«Старый» флаг
UseVoteLayer=true      ; позволяет игрокам голосовать за слой
Голосование за следующий список карт режимов в конце раунда (UseVoteLayer)
Рекомендуемый способ (с версии Squad 7.2) — LayerList_Vote
MapRotationMode=LayerList_Vote   ; сервер после каждого матча формирует список и запускает голосование

При этом UseVoteLayer можно оставить false — сам режим LayerList_Vote уже включает механику голосования.

Включаем LayerList_Vote

2. Формируем пул слоёв

  • LayerVoting.cfg — основной список (полный онлайн).
  • LayerVotingLowPlayers.cfg — когда онлайн ниже, чем LowPlayerCountThreshold.
  • LayerVotingNight.cfg — активируется по времени (см. VoteConfig.cfg → NightTime).

Каждая строка — ID слоя:

AlBasrah_RAAS_v1
AlBasrah_AAS_v1
AlBasrah_Invasion_v2  ; не хотите Invasion — просто не добавляйте здесь

Любой слой, попавший в ExcludedLayers.cfg, никогда не окажется в списке.

3. Балансируем режимы

3.1 Лимит карточек режима — GameModeChoices

LayerOptionsNumber=6        ; вариантов на экране

; <режим> <максимум>
GameModeChoices=AAS 2, RAAS 2, Invasion 1, TerritoryControl 1, Seed 0, Skirmish 0
  • Если сумма лимитов = LayerOptionsNumber, вы точно контролируете распределение.*

3.2 «КД» режима — GameModeSkipRounds

GameModeSkipRounds=AAS 0, RAAS 0, Invasion 3, TerritoryControl 1

Здесь Invasion не появится раньше, чем через 3 матча после предыдущего.

4. Дополнительные мелочи

Параметр Что делает
MapSkipRounds / LayerSkipRounds Исключает только что сыгранную карту/слой
UniqueMap=true Запрещает дубли карт (даже с разными режимами)
LayerOptionsNumber Рекомендуется 4-6 вариантов — золотая середина

5. Мини-пример VoteConfig.cfg

; === Список на экране ===
LayerOptionsNumber=6
GameModeChoices=AAS 2, RAAS 2, Invasion 1, TerritoryControl 1
UniqueMap=true

; === Анти-повторы ===
MapSkipRounds=1
LayerSkipRounds=1
GameModeSkipRounds=AAS 0, RAAS 0, Invasion 3, TerritoryControl 1

; === Таймеры голосования ===
LayerVoteDuration=60
TeamVote_Duration=45
DisplayVotes=true

6. Чек-лист перед рестартом

  • Server.cfgMapRotationMode=LayerList_Vote и/или UseVoteLayer=true.
  • В каждом LayerVoting*.cfg нет нежелательных Invasion-слоёв.
  • VoteConfig.cfg настроен: GameModeChoices + GameModeSkipRounds.
  • Перезапустили сервер: новые настройки подтягиваются только при старте карты.