Интеграции защиты CannonRTP
CannonRTP может проверять кандидатов на посадку через несколько плагинов защиты перед добавлением в очередь.
Поддерживаемые интеграции
Текущие мягкие зависимости:
- WorldGuard
- Towny
- Lands
- GriefPrevention
- HuskTowns
- HuskClaims
Они объявлены как softdepend в plugin.yml. CannonRTP работает без любого из них.
Как работают проверки защиты
- Адаптеры проверяются в фиксированном порядке: WorldGuard, Towny, Lands, GriefPrevention, HuskTowns, HuskClaims.
- Первый адаптер, заблокировавший точку, останавливает проверку и становится указанной причиной.
- Если адаптер отключён в конфигурации или плагин не установлен, он пропускается.
- Если API защиты выдаёт ошибку, CannonRTP блокирует эту посадку по умолчанию.
Глобальный переключатель безопасности для ошибок API:
landing.failOpenOnProtectionErrors
По умолчанию: false
При установке в true CannonRTP позволит продолжить посадку, когда плагин защиты не может быть безопасно опрошен.
Команда /wc probe
Администраторы могут встать в любом месте и выполнить /wc probe, чтобы проверить, проходит ли это место все проверки защиты. Результат сообщает, какой плагин заблокировал место и почему, или подтверждает его корректность.
Пути конфигурации
Все переключатели защиты находятся под protection.* в plugins/CannonRTP/config.yml.
Поведение по плагинам
WorldGuard
Ключи конфигурации:
protection.worldGuard.enabledprotection.worldGuard.allowGlobalRegionOnlyprotection.worldGuard.allowBuildAllowedRegionsprotection.worldGuard.allowPassthroughRegions
Поведение по умолчанию:
- включён по умолчанию
- точки, покрытые только
__global__, разрешены по умолчанию - регионы с
build=ALLOWразрешены по умолчанию - регионы с
passthrough=ALLOWразрешены по умолчанию - другие совпадающие защищённые регионы блокируются
Towny
Ключи конфигурации:
protection.towny.enabledprotection.towny.allowWildernessprotection.towny.allowNationZonesprotection.towny.allowClaimedTownBlocks
Поведение по умолчанию:
- включён по умолчанию
- дикая местность разрешена
- зоны наций заблокированы
- заявленные городские блоки заблокированы
Lands
Ключи конфигурации:
protection.lands.enabledprotection.lands.allowUnclaimedAreasprotection.lands.allowClaimedAreas
Поведение по умолчанию:
- включён по умолчанию
- незаявленные территории разрешены
- заявленные территории заблокированы
GriefPrevention
Ключи конфигурации:
protection.griefPrevention.enabledprotection.griefPrevention.allowWildernessprotection.griefPrevention.allowAdminClaimsprotection.griefPrevention.allowPlayerClaims
Поведение по умолчанию:
- включён по умолчанию
- дикая местность разрешена
- административные заявки заблокированы
- заявки игроков заблокированы
HuskTowns
Ключи конфигурации:
protection.huskTowns.enabledprotection.huskTowns.allowWildernessprotection.huskTowns.allowAdminClaimsprotection.huskTowns.allowRegularClaimsprotection.huskTowns.allowFarmClaimsprotection.huskTowns.allowPlotClaims
Поведение по умолчанию:
- включён по умолчанию
- дикая местность разрешена
- административные заявки заблокированы
- обычные городские заявки заблокированы
- фермерские заявки заблокированы
- заявки участков заблокированы
HuskClaims
Ключи конфигурации:
protection.huskClaims.enabledprotection.huskClaims.allowWildernessprotection.huskClaims.allowAdminClaimsprotection.huskClaims.allowPlayerClaims
Поведение по умолчанию:
- включён по умолчанию
- дикая местность разрешена
- административные заявки заблокированы
- заявки игроков заблокированы
Прочая валидация всё ещё применяется
Интеграции защиты — лишь часть валидации посадки. Точка может быть отклонена, потому что:
- она за пределами границы мира
- нет безопасной поверхности
- пространство ног или головы заблокировано
- местность совпадает со списками опасных материалов
Отчёты об ошибках
Когда пушка исчерпывается (не может найти достаточно корректных точек до тайм-аута поиска), вывод статуса и сообщения для игроков включают разбивку наиболее частых причин отклонения. Если большинство отклонений вызвано защищённой территорией, это будет указано. Это помогает администраторам диагностировать, не слишком ли строги настройки защиты для их сервера.