Файл spigot.yml создаётся при первом запуске Spigot, Paper или Purpur и содержит то, чего нет ни в server.properties, ни в bukkit.yml: радиусы активации энтити, объединение дропа, тикинг предметов и десятки мелких переключателей. Настройка spigot.yml — второй по эффективности шаг после лимитов спавна, и на серверах с большим количеством мобов и предметов она даёт больше, чем смена железа.
Ниже — только параметры, которые действительно влияют на производительность, с рабочими значениями.
Структура файла spigot.yml и правила настройки
spigot.yml делится на две части:
settings:— глобальные настройки сервераworld-settings:— настройки миров, гдеdefault:применяется ко всем, а блок с именем мира переопределяет их точечно
world-settings:
default:
entity-activation-range:
animals: 16
world_nether:
entity-activation-range:
animals: 8Правки делаются на остановленном сервере, отступы — только пробелы. Часть значений подхватывается командой /spigot reload, но полный рестарт надёжнее.
entity-activation-range: главный параметр
Радиус в блоках, внутри которого энтити получают полный тик. За его пределами мобы «замирают»: не двигаются и не считают ИИ, но остаются в мире.
entity-activation-range:
animals: 16
monsters: 24
raiders: 64
misc: 8
water: 8
villagers: 16
flying-monsters: 32
wake-up-inactive:
animals-max-per-tick: 4
animals-every: 1200
animals-for: 100
monsters-max-per-tick: 8
monsters-every: 400
monsters-for: 100Значения по умолчанию по справочнику PaperMC: animals 32, monsters 32, raiders 64, misc 16, water 16, villagers 32, flying-monsters 32. Для большинства серверов это избыточно. Рабочий набор для выживания:
| Категория | По умолчанию | Для выживания | Комментарий |
|---|---|---|---|
animals | 32 | 12–16 | Коровы и овцы не должны думать за 32 блока |
monsters | 32 | 20–24 | Ниже 16 игроки заметят, что мобы «просыпаются» слишком близко |
misc | 16 | 4–8 | Вагонетки, лодки, стойки для брони, дроп |
villagers | 32 | 16 | Ниже ломается торговля и механики деревень |
raiders | 64 | 64 | Не трогайте, рейды сломаются |
На сервере с большими фермами снижение animals с 32 до 16 обычно даёт 2–4 TPS без единой жалобы от игроков.
merge-radius: объединение дропа
Предметы на земле — вторая по тяжести категория после мобов. Каждый лежащий предмет тикает.
merge-radius:
item: 3.5
exp: 4.0В актуальных версиях по умолчанию item: 0.5, а exp: -1 (объединение опыта при появлении выключено); в старых конфигах можно встретить 2.5 и 3.0. Поднятие до 3.5–4.0 объединяет дроп в стаки в большем радиусе и заметно снижает количество энтити на дроп-фермах и после массовых ивентов.
Выше 5.0 не ставьте: предметы начнут визуально «прыгать» друг к другу через стены и падать в лаву.
mob-spawn-range
mob-spawn-range: 6Радиус в чанках, в котором вокруг игрока пытаются спавниться мобы. По умолчанию 8, безопасно снижается до 6 — мобов вокруг игрока не станет меньше, но сервер перестанет считать спавн в дальних чанках, которые игрок всё равно не увидит.
Работает в связке с spawn-limits из bukkit.yml — их разбор в отдельном разделе.
Тикинг предметов и стрел
item-despawn-rate: 6000
arrow-despawn-rate: 300
trident-despawn-rate: 1200item-despawn-rate — сколько тиков предмет лежит на земле до исчезновения. 6000 = 5 минут, стандарт. На серверах с большим онлайном имеет смысл снизить до 3000 (2,5 минуты): мусора на земле станет вдвое меньше. Игроков предупредите заранее, иначе будут жалобы на потерянные вещи.
arrow-despawn-rate: 300 вместо 1200 убирает лес из стрел на PvP-аренах и после ивентов.
view-distance и simulation-distance
view-distance: default
simulation-distance: defaultПо умолчанию значения берутся из server.properties, и правильнее менять их там — параметры разобраны в разделе про настройку server.properties и в статье про настройку view-distance.
Смысл переопределять здесь есть только для отдельного мира: например, на арене или в лобби поставить 6, а в основном выживании оставить 10.
world-settings:
lobby:
view-distance: 6
simulation-distance: 4hopper и редстоун
hopper-transfer: 8
hopper-check: 8
hopper-amount: 1Воронки — классический источник лагов на технических серверах. По умолчанию hopper-transfer: 8, hopper-check: 1. hopper-check: 8 вместо 1 в восемь раз снижает частоту проверок содержимого. Сортировщики при этом работают медленнее, но заметно это только на очень плотных системах.
Если сервер построен вокруг ферм и автоматизации, лучше оставить значения по умолчанию и компенсировать другим — про такой профиль есть отдельный материал про технический сервер.
Раздел settings
settings:
bungeecord: false
save-user-cache-on-stop-only: false
timeout-time: 60
restart-on-crash: true
netty-threads: 4
attribute:
maxHealth:
max: 2048.0bungeecord: true включается только если сервер стоит за прокси. Про сборку сети — в статье про BungeeCord и Velocity. На одиночном сервере это дыра в безопасности: с включённым режимом любой может подключиться под чужим ником.
save-user-cache-on-stop-only: true снижает дисковые операции на серверах с большим числом уникальных игроков.
netty-threads: 4 — сетевые потоки. Поднимать выше числа ядер бессмысленно.
restart-on-crash работает только вместе с настроенным restart-script; надёжнее держать перезапуск снаружи через systemd — как это сделать, описано в статье про автозапуск сервера.
Готовый набор для выживания на 30–50 слотов
world-settings:
default:
mob-spawn-range: 6
item-despawn-rate: 4000
arrow-despawn-rate: 300
merge-radius:
item: 3.5
exp: 4.0
entity-activation-range:
animals: 16
monsters: 24
raiders: 64
misc: 8
water: 8
villagers: 16
flying-monsters: 32
hopper-check: 4
max-entity-collisions: 2max-entity-collisions: 2 вместо 8 — ещё одна недооценённая правка. Она ограничивает, сколько столкновений считается для каждой сущности, и сильно помогает на серверах, где мобов сгоняют в кучу (фермы, загоны, PvP-свалки). На Paper этот параметр задаётся в paper-world-defaults.yml (секция collisions), а max-tick-time из spigot.yml Paper вообще не использует.
Порядок оптимизации
spigot.yml — третий шаг, а не первый:
server.properties— дистанции прорисовки и симуляцииbukkit.yml— лимиты и частота спавнаspigot.yml— радиусы активации, merge-radius, деспавнpaper-world-defaults.yml— тонкая настройка Paper, описана в соседнем разделе
После каждого шага смотрите /tps и профиль через /spark profiler в вечерний пик, а не в пустом мире. Изменения, внесённые пачкой, невозможно оценить.
Полная последовательность действий по производительности — в разделе про оптимизацию сервера и в статье как оптимизировать сервер Minecraft.
Чего делать не стоит
- Копировать чужой
spigot.ymlцеликом: конфиг под технический сервер убьёт выживание и наоборот - Ставить
entity-activation-rangeниже 8 — мобы начнут «оживать» прямо перед лицом игрока - Отключать
warn-on-overloadвbukkit.yml, чтобы не видеть предупреждений: проблема не исчезнет - Менять
max-tick-timeв надежде убрать лаги — это не ускорение, а обрезание тика, которое ломает механики
Если после всех правок TPS в пике всё равно ниже 18, вы упёрлись в процессор — что именно смотреть при выборе, описано в статье про процессор для игрового сервера, а готовые конфигурации есть на странице тарифов.