Плагин для серверов Майнкрафт, который защищает сервер от лаг-машин и перегруженных чанков. Он отслеживает нагрузку от редстоуна, воронок, поршней, появления мобов и физики блоков, замораживает проблемный чанк и сообщает его координаты администрации.
Возможности
- Для каждого чанка считается оценка нагрузки за заданный промежуток времени. Вес редстоуна, воронок, поршней, появления мобов и физики блоков настраивается отдельно.
- Чанк замораживается, только если превышает порог несколько раз подряд: разовый всплеск от взрыва или запуска фермы не должен привести к блокировке.
- В замороженном чанке отменяются выбранные события, а остальной мир продолжает работать. Состояние заморозки сохраняется после перезапуска.
- Администраторы получают в чат и консоль координаты, мир, причину блокировки и имя последнего игрока, строившего рядом. Уведомления можно отправлять в Discord через вебхук.
- Доверенные фермы можно добавить в белый список, а отдельные миры — исключить из проверки. Режим отладки помогает увидеть оценку нагрузки обычных ферм.
- При включённой автоочистке плагин после задержки может удалить сущности, блоки лаг-машины или попытаться восстановить чанк. Именные и приручённые мобы, игроки и типы из
keep.typesпри очистке сущностей сохраняются.
Автоочистка выключена по умолчанию. Действия machines и regenerate удаляют блоки, поэтому сначала настройте порог срабатывания и белый список.
Команды
Основная команда — /chunkguard; алиасы: /cg и /lagshield.
/cg list— показать замороженные чанки./cg tp <id>— телепортироваться к замороженному чанку./cg unfreeze <id or all>— разморозить один чанк или все./cg whitelist add [world cx cz]— добавить чанк в белый список./cg whitelist remove [world cx cz]— убрать чанк из белого списка./cg whitelist list— показать белый список./cg status— вывести краткое состояние./cg reload— перезагрузить конфиг.
Права
chunkguard.admin— доступ ко всем командам.chunkguard.alert— получение уведомлений.
Оба права по умолчанию выданы только операторам.
Настройка
В конфиге задаются длина окна window-ticks, порог threshold, число последовательных превышений strikes-required, веса событий в weights и отслеживаемые события в monitor.
Раздел freeze определяет время заморозки и события, которые отменяются в проблемном чанке. В auto включается автоочистка и выбираются её действия: entities, machines и regenerate. Для проверки обычных ферм включите debug: true, посмотрите значения в консоли и установите threshold заметно выше них. Сообщения в конфиге изначально написаны на русском.
Требования
Плагин работает на Paper, Purpur, Spigot, Bukkit и Folia, требует Java 17. Он использует базовый Bukkit API и не зависит от других плагинов.
