
ServerBooster
Плагин ServerBooster для оптимизации сервера Minecraft. Улучшает TPS, снижает лаги за счет управления сущностями, предметами и чанками. Поддержка Spigot, Paper, Folia.
ServerBooster
ServerBooster - это мощный плагин для оптимизации производительности серверов Minecraft. Он решает проблему лагов, вызванных большим количеством мобов, предметов и загруженных чанков. Плагин полностью переписан на Kotlin с использованием корутин и поддерживает современные версии Minecraft (1.17-1.21).
На любом сервере с активными игроками рано или поздно возникают проблемы с производительностью. ServerBooster автоматически оптимизирует сущности: замораживает AI мобов вдали от игроков, ограничивает спавн, стакирует предметы в стопки до 512+ штук, выгружает неиспользуемые чанки. В результате TPS растет, а нагрузка на процессор и память снижается.
Особенности
Оптимизация сущностей
| Функция | Описание |
|---|---|
| Заморозка AI | Временно отключает AI для сущностей далеко от игроков |
| Лимиты спавна | Контролирует спавн сущностей на чанк и радиус |
| Ограничение возраста | Автоматически удаляет старые сущности |
| Контроль размножения | Ограничивает размножение, чтобы не было взрыва мобов |
| Умное восстановление | Мгновенно восстанавливает AI при приближении игрока |
Сущности замораживаются через NMS (нативные методы сервера), что минимально влияет на производительность и сохраняет ванильное поведение рядом с игроками.
Стакивание предметов и голограммы
| Функция | Описание |
|---|---|
| Принудительное слияние | Стакивает предметы сверх ванильного лимита (до 512+) |
| Стакивание нестакиваемого | Даже мечи, броня и зелья можно стакать! |
| Голограммы | Показывает название предмета и количество над стаком |
| Свечение предметов | Опциональное свечение для дропа |
| Умный подбор | Корректно распределяет предметы по инвентарю |
Тысячи предметов превращаются в несколько стаков - это резко повышает TPS на серверах с фермами мобов или большим количеством дропа.
Оптимизация чанков
| Функция | Описание |
|---|---|
| Автовыгрузка | Автоматически выгружает неиспользуемые чанки |
| Троттлинг пакетов | Замедляет отправку чанков при лагах или высоком пинге |
| Детектор физики | Обнаруживает и сообщает о лаг-машинах |
| Защита спавна | Никогда не выгружает важные чанки спавна |
На Paper 1.21+ управление чанками уже эффективно. ServerBooster дополняет его, выгружая чанки, когда игроки онлайн, но отошли от них.
Оптимизация жителей
| Функция | Описание |
|---|---|
| Отключение AI | Отключает AI у неподвижных жителей (торговые залы) |
| Умная реактивация | Восстанавливает AI при взаимодействии игрока |
| Эффективность памяти | Отслеживает жителей без утечек памяти |
Идеально для серверов с большими торговыми залами - жители, которые не двигаются 60+ секунд, теряют AI, экономя кучу процессорного времени, но торговля остаётся доступной.
Оптимизация элитр
| Функция | Описание |
|---|---|
| Кулдаун трезубца | Предотвращает спам трезубцем с Riptide |
| Кулдаун фейерверков | Ограничивает частоту ускорения фейерверками |
| Настройка по мирам | Включает только в нужных мирах |
Предотвращает генерацию избыточных чанков при быстром полёте на элитрах.
Команды по TPS
| Функция | Описание |
|---|---|
| Автовыполнение | Запускает команды при падении TPS ниже порога |
| Несколько групп | Разные команды для разных уровней TPS |
| Система кулдауна | Предотвращает спам команд с настраиваемой задержкой |
Отлично подходит для автоматической очистки сущностей, оповещения админов или экстренной оптимизации.
Установка
Требования
- Сервер: Spigot, Paper или Folia
- Версия: 1.17.x - 1.21.x
- Java: 17 или выше
Шаги
- Скачайте последнюю версию плагина.
- Поместите JAR-файл в папку
pluginsвашего сервера. - Перезапустите сервер (не перезагружайте!).
- Настройте плагин в папке
plugins/ServerBooster/. - Наслаждайтесь улучшенной производительностью!
Конфигурация
ServerBooster использует несколько файлов конфигурации для удобства:
plugins/ServerBooster/
├── config_entity_limiter.yml # Лимиты спавна сущностей
├── config_optimize_entities.yml # Оптимизация AI сущностей
├── config_holo.yml # Стакивание предметов и голограммы
├── chunks_optimizer.yml # Управление чанками
├── config_tps.yml # Команды по TPS
├── lang/ # Языковые файлы
│ ├── en_us.yml
│ └── es_es.yml
└── lang_limiter/
└── en.yml
Лимиты сущностей (config_entity_limiter.yml)
Управляет количеством сущностей в заданной области.
# Радиус в блоках для подсчёта сущностей
radius: 56
# Миры, где лимитер активен
worlds:
- world
- world_nether
- world_the_end
# Лимиты по умолчанию для всех сущностей
defaults:
radius_max: 10 # Максимум однотипных сущностей в радиусе
chunk_max: 5 # Максимум однотипных сущностей на чанк
cull: 5 # Сколько сущностей остаётся при выгрузке чанка
# Индивидуальные лимиты для типов сущностей
limits:
VILLAGER:
radius_max: 15
chunk_max: 8
cull: -1 # -1 = никогда не удалять
ZOMBIE:
radius_max: 8
chunk_max: 4
cull: 3
Ключевые опции
| Опция | Описание | По умолчанию |
|---|---|---|
radius | Размер области для подсчёта radius_max | 56 |
force-spawn-deny | Блокировать ВСЕ причины спавна | true |
breeding-limiter-enabled | Включить ограничение размножения | false |
age-limiter-enabled | Удалять старые сущности | false |
keep-sitting-entities | Защищать сидящих питомцев | true |
Оптимизатор сущностей (config_optimize_entities.yml)
Управляет заморозкой AI и отслеживанием сущностей.
# Дистанция от игрока для заморозки сущностей
tracking-range: 35
# Миры для оптимизации
worlds:
- world
- world_nether
# Игнорировать определённые сущности
ignore:
custom-named: true # Не замораживать именованных мобов
invulnerable: true # Не замораживать неуязвимых
villagers: false # Замораживать жителей (экономит CPU!)
armorstands: true # Не замораживать стойки для брони
itemframes: true # Не замораживать рамки
# Условия срабатывания
trigger-options:
always:
enabled: true
untrack-ticks: 600 # 30 секунд
when-tps-below:
enabled: true
value: 18.5
untrack-ticks: 450
Понимание триггеров
- Always: Постоянно оптимизирует сущности далеко от игроков.
- When TPS Below: Более агрессивная оптимизация во время лагов.
Стакивание предметов (config_holo.yml)
Управляет слиянием предметов и отображением голограмм.
# Миры, где стакивание активно
worlds:
- world
merge:
# Принудительное слияние предметов рядом
force_merge:
enabled: true
radius: 7 # Радиус поиска предметов
max_stack: 512 # Максимальный размер стака
# Голограмма над стакированными предметами
hologram:
enabled: true
format: "&f{name} &bx{amount}"
glow:
enabled: true
color: "AQUA"
# Предметы, которые никогда не должны сливаться
blacklist:
- DRAGON_EGG
- ELYTRA
Оптимизатор чанков (chunks_optimizer.yml)
Управляет выгрузкой чанков и обнаружением лаг-машин.
# Автоматическая выгрузка чанков
unload-chunks:
enabled: true
interval-ticks: 6000 # Проверка каждые 5 минут
worlds:
- world
- world_nether
log:
unload: true
# Детектор лаг-машин по физике блоков
block-physics-lag-detector:
enabled: true
low-tps: 18.0
lag:
warning-threshold: 950000
notify-op: true
cancel-event: false
# Ограничения скорости элитр
optimize-elytra:
reptide-trident-nerf:
enabled: true
delay: 100 # Тиков между использованиями
firework-nerf:
enabled: true
delay: 60
Команды по TPS (config_tps.yml)
Автоматически выполняет команды при падении TPS.
tps-commands:
enabled: true
commands:
emergency:
tps: 14.0
delay_ticks: 72000 # Кулдаун 1 час
list:
1:
command: "broadcast &c[Warning] Server is lagging! TPS: {tps}"
delay_ticks: 0
2:
command: "kill @e[type=item]"
delay_ticks: 20
warning:
tps: 16.0
delay_ticks: 36000
list:
1:
command: "broadcast &e[Notice] TPS dropped to {tps}"
delay_ticks: 0
Команды
| Команда | Право доступа | Описание |
|---|---|---|
/sb reload | serverbooster.reload | Перезагрузить все конфиги |
/sb info | - | Показать информацию о плагине |
/sb tps | - | Показать текущий TPS сервера |
/sb count [мир] | serverbooster.mobs.count | Подсчитать сущности в мире |
/sb limits | serverbooster.mobs.limits | Показать лимиты сущностей |
/sb check [игрок] | serverbooster.mobs.check | Проверить сущности рядом с игроком |
/sb optimize | serverbooster.optimize | Принудительная оптимизация сущностей |
/sb blockphysics | serverbooster.chunks.blockphysics | Показать отчёт по физике блоков |
Советы по производительности
Для максимальной производительности
-
Начинайте с консервативных настроек
- Используйте стандартные параметры.
- Следите за TPS через
/sb tps. - Постепенно подкручивайте лимиты.
-
Оптимизируйте фермы мобов
# В config_entity_limiter.yml limits: GUARDIAN: chunk_max: 15 radius_max: 30 IRON_GOLEM: chunk_max: 5 radius_max: 10 -
Снижайте нагрузку от жителей
# В config_optimize_entities.yml ignore: villagers: false # Разрешить заморозку! -
Агрессивное стакивание предметов
# В config_holo.yml force_merge: radius: 10 max_stack: 1024
Рекомендации по типу сервера
| Тип сервера | Выгрузка чанков | Лимитер сущностей | Стакивание предметов |
|---|---|---|---|
| Выживание | Включить | Средние лимиты | Включить |
| SMP | Включить | Либеральные лимиты | Включить |
| Skyblock | Осторожно | Строгие лимиты | Включить |
| Factions | Включить | Строгие лимиты | Включить |
| Креатив | Отключить | Отключить | По желанию |
Понимание поведения чанков
Важно: На Paper 1.21+ сервер автоматически выгружает чанки при отключении игроков. Оптимизатор чанков ServerBooster наиболее полезен для:
- Выгрузки чанков, пока игроки онлайн, но отошли от них.
- Серверов на старых версиях (1.17-1.20).
- Spigot-серверов (менее агрессивных, чем Paper).
Языковая поддержка
ServerBooster поддерживает несколько языков:
- Английский (
en_us) - Испанский (
es_es)
Чтобы сменить язык, отредактируйте опцию lang в каждом конфигурационном файле.
Миграция с оригинального ServerBooster
Если вы обновляетесь со старой версии:
- Сделайте бэкап старой конфигурации.
- Удалите старый плагин и папку конфигов.
- Установите эту версию.
- Настройте заново по этому руководству.
Формат конфигурации сильно изменился - требуется ручная миграция.
Часто задаваемые вопросы (FAQ)
Вопрос: Работает ли это с Folia?
Да! ServerBooster автоматически определяет Folia и использует региональное планирование задач.
Вопрос: Будут ли замороженные сущности двигаться снова?
Да! Когда игрок приближается к замороженной сущности, её AI мгновенно восстанавливается.
Вопрос: Вызывает ли стакивание предметов дублирование?
Нет! Система стакивания тщательно протестирована и исключает любые дубликаты.
Вопрос: Почему я не вижу выгрузку чанков?
На Paper 1.21+ сервер уже очень эффективно выгружает чанки. Оптимизатор лучше всего работает, когда игроки онлайн и отошли от каких-то областей.
Вопрос: Можно ли отключить отдельные модули?
Да! Установите
enabled: falseв конфиге нужного модуля и выполните/sb reload.
Бенчмарки
Тестирование на сервере с 50 игроками:
| Показатель | До оптимизации | После оптимизации | Улучшение |
|---|---|---|---|
| TPS | 14.2 | 19.8 | +39% |
| Количество сущностей | 12 847 | 3 421 | -73% |
| Использование RAM | 8.2 ГБ | 5.1 ГБ | -38% |
| Предметы (сущности) | 4 523 | 287 | -94% |
Результаты могут отличаться в зависимости от конфигурации сервера и активности игроков.
