Как сделать ротацию карт на сервере TF2
Собственный mapcyclefile для Team Fortress 2: порядок CP, KOTH и Payload, условия окончания и проверка голосований.
В TF2 ротация может смешивать карты разных режимов, потому что режим задаётся самой картой. cp_dustbowl, koth_viaduct и pl_badwater дают разные правила матча. Поле «Карта» выбирает первую карту после запуска, а mapcyclefile определяет последующую последовательность; эти настройки не заменяют друг друга.

Порядок действий
Проверьте три карты вручную
Убедитесь, что нужные BSP установлены, и проверьте changelevel для каждой карты на пустом сервере. При игре с ботами тестируйте не только загрузку, но и движение к цели. Карта, которая подходит людям, не обязательно одинаково хорошо поддерживается искусственным интеллектом.
Создайте собственный список
Запишите имена без .bsp в tf/community-mapcycle.txt, по одному на строку. В подключённом tf/cfg/community.cfg задайте mapcyclefile community-mapcycle.txt. Собственное имя файла помогает отличить ваши правила от файлов поставки и от списков, которые использует установленный плагин голосования.
Согласуйте окончание игр
Выберите подходящий mp_timelimit и проверьте другие ограничения матча, например число раундов или побед. Не ожидайте одинаковой длительности от CP, KOTH и Payload: у них разные стадии и условия победы. На тесте дождитесь нормального окончания игры, чтобы проверить автоматический переход, а не только changelevel.
Как проверить результат
Запросите mapcyclefile, а после завершения матча проверьте следующую карту через status. Сделайте полный круг хотя бы из двух пунктов. Перезапуск процесса начнётся с поля «Карта» в панели — это не ошибка ротации. Если после голосования выбирается другая карта, выясните, какой механизм формирует варианты голосования.