Коротко: поставьте WorldEdit и WorldGuard, возьмите топор командой //wand, отметьте два угла и создайте регион /rg define spawn. В новом регионе строят только участники — добавьте их через /rg addmember. Правила вроде PvP задают флагами: /rg flag spawn pvp deny. Где регионы пересекаются, решают приоритеты, а для всего мира есть регион __global__.
Установка и права
- 1
Поставьте WorldEdit
WorldGuard нужен WorldEdit именно в версии для Bukkit. Работают оба на ядрах с Bukkit API — Spigot и Paper; ванильный сервер, Forge и Sponge не подходят. Про сам редактор — в статье WorldEdit.
- 2
Скачайте WorldGuard под свою версию
Сборки WorldGuard привязаны к версии Minecraft: на Modrinth, например, 7.0.17 отмечен для 1.21.11 и 26.1–26.2, а 7.0.20 — только для 26.3. Берите сборку, где указана версия вашего сервера.
- 3
Положите в plugins/ и перезапустите
После старта проверьте лог на ошибки. Порядок общий для всех плагинов — как установить плагин.
- 4
Выдайте права
По умолчанию WorldGuard не может пользоваться никто, кроме операторов. Администраторам —
worldguard.*, остальным — отдельные права вродеworldguard.region.defineилиworldguard.region.info.*через LuckPerms.
Создаём регион
- 1
Выделите область
//wandдаёт деревянный топор: левый клик по блоку — первый угол, правый — второй. Регион может быть кубоидом или многоугольником с высотой (//sel poly); цилиндр WorldGuard не примет. Чтобы регион шёл от бедрока до неба, расширьте выделение командой//expand vert. - 2
Создайте регион
/rg define spawn(или/region define). Имя уникально в мире и не зависит от регистра. Новый регион сразу запрещает строить всем, кто в него не входит. - 3
Добавьте людей
/rg addmember spawn g:builders— группа прав builders,/rg addowner spawn Steve— владелец. Владельцев можно указать сразу:/rg define spawn Steve. - 4
Задайте флаги
/rg flag spawn pvp deny. Флаг убирается той же командой без значения:/rg flag spawn pvp.
Изменения сохраняются сами с небольшой задержкой, в фоне и без пауз сервера; принудительно — /rg save. Участники и владельцы строят одинаково, разница в правах на команды: владельцам можно разрешить, например, добавлять людей в свой регион (worldguard.region.addmember.own.*), а участникам — нет. Группа прав пишется с приставкой g:.
Флаги: что настраивать
| Флаг | Тип | Что делает |
|---|---|---|
pvp | allow/deny | Бой между игроками |
mob-spawning | allow/deny | Появление мобов, в том числе из яиц и команд |
deny-spawn | список | Запрет отдельных мобов: /rg flag spawn deny-spawn zombie,creeper |
entry / exit | allow/deny | Вход в регион и выход из него; по умолчанию касается тех, кто не участник |
greeting / farewell | текст | Сообщение в чат при входе и выходе |
invincible | allow/deny | Бессмертие игроков в регионе |
fall-damage | allow/deny | Урон от падения |
enderpearl | allow/deny | Использование эндер-жемчуга |
blocked-cmds | список | Команды, запрещённые в регионе |
item-drop / item-pickup | allow/deny | Выбрасывать и подбирать предметы |
game-mode | режим | Режим игры, который получает вошедший |
passthrough | allow/deny | allow делает регион «прозрачным» для постройки: он задаёт флаги, но не защищает |
/rg flags <регион> в игре или страница Region Flags в документацииФлаг можно применить только к части игроков через группу региона: /rg flag spawn -g nonmembers pvp deny. Группы — all, members, owners, nonmembers, nonowners; это не группы прав, а членство в регионе. Флаги против огня, лавы и взрывов разобраны в статье защита от гриферов.
/rg define arena
/rg flag arena pvp allow
/rg flag arena passthrough allowПересечения, приоритеты и наследование
- Без приоритетов в месте пересечения нужно быть участником всех регионов, чтобы строить.
- Приоритет по умолчанию
0, бывает и отрицательным. Для постройки учитываются только регионы с наибольшим приоритетом, для флагов — регион с наибольшим приоритетом, где флаг задан:/rg setpriority pub 10. - Ничья. Если регионы с одним приоритетом задают разные значения флага allow/deny, побеждает
deny. Для текстовых флагов результат не определён — не задавайте два приветствия в одном месте. - Наследование.
/rg setparent plot1 mall— дочерний регион получает участников и владельцев родителя и его флаги, если своих не задано. Родитель может быть один, а приоритет у него не должен быть выше, чем у детей. - Шаблоны.
/rg define -g plot_templateсоздаёт регион без физических границ — удобный общий родитель для однотипных участков.
Глобальный регион __global__
У каждого мира есть __global__ — регион на весь мир с наименьшим приоритетом. Он появляется, когда вы впервые его меняете: /rg flag __global__ pvp deny выключит PvP везде, кроме регионов, где флаг задан иначе. Защищать мир он по умолчанию не защищает: у него неявно стоит passthrough allow.
- Запретить строить в «диких» землях:
/rg flag __global__ passthrough deny. Тогда строят только там, где игрок — участник региона. - Не ставьте `build` на глобальный регион. Документация настойчиво не советует:
build denyостановит все поршни мира вне других регионов. - Участники глобального региона. Добавив их, вы неявно ставите
passthrough deny.
Полезные команды
| Команда | Что делает |
|---|---|
/rg info [регион] | Сведения о регионе или о том, где вы стоите |
/rg list [-p ник] | Список регионов, в том числе регионы игрока |
/rg flags <регион> | Интерактивный список флагов: клик по значению меняет его |
/rg select <регион> | Выделить регион в WorldEdit |
/rg redefine <регион> | Заменить границы региона текущим выделением |
/rg remove <регион> | Удалить регион (с дочерними — флаг -f или -u) |
/rg setpriority, /rg setparent | Приоритет и родитель |
-w <мир>Регионы хранятся в YAML-файлах — их легко бэкапить вместе с миром. Хранение в MySQL разработчики настоятельно не рекомендуют и собираются убрать. Копии — по статье резервные копии.
WorldGuard и античит
Регионы решают, где можно драться и строить, а античит — честно ли это делают. Флаг pvp deny выключает бой на спавне, но не мешает Fly и Speed пролетать к чужим базам, а на арене с pvp allow игрок с KillAura или Reach остаётся в своём праве с точки зрения WorldGuard. Защиту зон и проверку читов закрывают разные плагины, и одно не заменяет другое.
DGuard — лучший античит для современного сервера Minecraft — работает во всех регионах одинаково и проверяет бой, движение, пакеты, инвентарь, постройку и мир. В сравнении по 47 видам читов у DGuard есть проверка на каждый, у ближайшего соперника, Intave, — 27; каждая отметка сверена с кодом и документацией соперников, см. сравнение.
Частые вопросы
Как создать регион в WorldGuard?
Выделите область топором WorldEdit (//wand, левый и правый клик по углам) и выполните /rg define <имя>. Строить в регионе смогут только участники, их добавляют через /rg addmember.
Почему регион WorldGuard не защищает?
Скорее всего, вы проверяете с OP или со всеми правами: у них неявно есть обход защиты. Проверьте с обычного аккаунта. Ещё посмотрите, не стоит ли на регионе passthrough allow.
Как отключить PvP на спавне?
/rg flag spawn pvp deny. Чтобы выключить PvP во всём мире, поставьте флаг на __global__, а на аренах — pvp allow с приоритетом выше.
Можно ли использовать WorldGuard без WorldEdit?
Нет. WorldGuard требует WorldEdit в версии для Bukkit: им выделяют область для региона.
Как запретить строить везде, кроме регионов?
/rg flag __global__ passthrough deny. Флаг build на глобальный регион документация ставить не советует: он остановит поршни по всему миру.
Источники
- WorldGuard: установка
- WorldGuard: регионы, быстрый старт
- WorldGuard: флаги регионов
- WorldGuard: приоритеты и наследование
- WorldGuard: глобальный регион
- WorldGuard: команды регионов
- WorldGuard: права
- WorldGuard: хранение регионов
- WorldEdit: выделение областей
- WorldGuard на Modrinth
- DGuard — лучший античит для современного сервера Minecraft: сравнение проверок с GrimAC, Vulcan, Polar, Intave и Matrix
- DGuard: установка, требования и решение проблем
- DGuard: поддерживаемые версии Paper и Leaf