WorldGuard support for WDLCompanion: сохраняйте только свои регионы
Администрирование Minecraft-сервера всегда связано с поиском баланса между свободой игроков и защитой карты. С одной стороны, хочется дать пользователям возможность сохранять собственные постройки через World Downloader. С другой — нельзя допустить, чтобы кто-то утащил весь мир целиком. Плагин WorldGuard support for WDLCompanion: сохраняйте только свои регионы закрывает этот вопрос изящно: он привязывает разрешение на выгрузку чанков к владениям WorldGuard и автоматически фильтрует запросы клиента.
Зачем нужна интеграция WorldGuard и WDLCompanion
World Downloader — клиентский мод, который позволяет игроку сохранять фрагменты серверного мира локально. Серверная сторона контролируется плагином WDLCompanion: администратор может запретить или разрешить выгрузку определённых зон. Однако стандартные правила работают с координатами, а не с логикой приватных территорий. Когда на сервере активно используется WorldGuard, ручная настройка превращается в рутину.
Модификация WorldGuard support for WDLCompanion: сохраняйте только свои регионы добавляет новый тип чанк-оверрайда — Owned WorldGuard regions. Система сама определяет, пересекается ли запрашиваемый чанк с регионом, принадлежащим игроку, и принимает решение: отдать данные или заблокировать. Это особенно актуально для строительных и ролевых серверов, где у каждого пользователя есть собственный надел.
Принцип работы: проверка владения при каждом запросе
Когда клиент с World Downloader запрашивает чанки, WDLCompanion перехватывает эти запросы и сверяет их с конфигурацией. При использовании нового типа оверрайда плагин проверяет каждый чанк на пересечение с границами регионов WorldGuard. Далее в дело вступает параметр ownershipType, который определяет, кого считать авторизованным: только владельца, только участника или обоих.
Если условие выполняется — чанк отдаётся клиенту. Если нет — сохранение блокируется. Никакого ручного перечисления координат для каждого участка: настройка выполняется один раз и работает для всех текущих и будущих регионов.
Установка и совместимость версий
Процесс установки не требует специальных знаний. Убедитесь, что на сервере уже работают WDLCompanion и WorldGuard. Затем скачайте WorldGuard support for WDLCompanion: сохраняйте только свои регионы и поместите JAR-файл в папку plugins. После перезапуска сервера новый тип оверрайда появится в конфигурации WDLCompanion.
Плагин не создаёт собственных конфигурационных файлов и не требует дополнительных разрешений — всё управление ведётся через основной конфиг WDLCompanion. Для корректной работы убедитесь, что версии WorldGuard и WDLCompanion соответствуют версии вашего сервера Minecraft. Актуальные сборки поддерживают последние стабильные релизы игры, включая версии для популярных загрузчиков Bukkit и Spigot.
Настройка через конфигурацию WDLCompanion
Все параметры задаются в секции chunkOverrides файла конфигурации WDLCompanion. Добавьте запись с уникальным ключом, например worldGuard, и укажите тип Owned WorldGuard regions. Обязательно определите ownershipType — от этого зависит, какая степень владения требуется для разрешения выгрузки.
Минимальная конфигурация выглядит так:
- chunkOverrides:
- worldGuard:
- type: Owned WorldGuard regions
- ownershipType: ownerOrMember
- preservePolygons: false
Параметры ownershipType и preservePolygons
Параметр ownershipType принимает три значения. ownerOrMember — самый дружелюбный вариант: разрешение получают и владельцы, и участники региона. owner — доступ только для владельца. member — доступ исключительно для участников, без владельца; используется редко, но иногда бывает полезен.
Параметр preservePolygons отвечает за обработку регионов сложной формы. При значении false полигональные регионы расширяются до квадрата — это ускоряет проверки, но может захватить лишние чанки. При значении true плагин учитывает точные границы полигонов, что даёт максимальную аккуратность ценой небольшой дополнительной нагрузки на сервер. Для большинства проектов достаточно значения false.
Практический пример использования
Представьте сервер с сотнями приватных участков, размеченных WorldGuard. Раньше администратору приходилось вручную добавлять координаты каждого надела в конфиг WDLCompanion. Теперь достаточно один раз прописать тип Owned WorldGuard regions — и система сама определит, кому какие чанки отдавать.
Игрок, зашедший на свой участок, сможет сохранить его через World Downloader, а соседние территории останутся недоступными. Это экономит часы рутины и исключает ошибки, связанные с человеческим фактором. Плагин также поддерживает MCStats для сбора анонимной статистики; при желании отправку данных можно отключить в конфигурационном файле PluginMetrics, установив opt-out в true.
Вывод
WorldGuard support for WDLCompanion: сохраняйте только свои регионы — это компактный, но крайне полезный мост между двумя мощными инструментами. Он снимает головную боль при настройке прав на сохранение мира и делает взаимодействие игроков с сервером более честным и прозрачным. Открытый исходный код позволяет убедиться в безопасности плагина и при необходимости доработать его под свои нужды. Если вы хотите дать игрокам удобный способ сохранять собственные постройки, не открывая доступ ко всей карте, эта связка станет отличным дополнением к вашему серверу.