ZernMC configs
Тюнинг под профиль: 4 vCPU / 8 GB RAM, 30–40 игроков, боевой сервер с
плагином, который спавнит много Display/Marker сущностей и частиц
(BlackKnife как референс).
Все файлы парциальные — Paper/Spigot дополняет недостающие ключи дефолтами, поэтому их можно копировать поверх существующих конфигов.
Куда класть
| Файл | Путь на сервере |
|---|---|
spigot.yml |
<сервер>/spigot.yml |
paper-world.yml |
<сервер>/<мир>/paper-world.yml — у каждого мира свой |
paper-global.yml |
<сервер>/config/paper-global.yml |
server.properties.patch |
ключи из него в <сервер>/server.properties |
Что где меняем и зачем
spigot.yml
view-distance 8 / simulation-distance 5— на 4 ядрах это самый ощутимый рычаг: симуляция шириной 10 стоит в разы дороже 5.entity-tracking-range.display 128 → 48— главный фикс. Display, ItemDisplay, TextDisplay, Marker шлются игрокам пачками; при спаме боеспособностей 128 это десятки пакетов на тик.misc 96 → 48,other 64 → 32,animals/monsters 96 → 64,players 128 → 96— то же, но по остальным типам.entity-activation-range— сужаем радиусы, в которых сущности вообще тикают;tick-inactive-villagers: false— самый частый выигрыш.ticks-per.hopper-check 1 → 8— хопперы по умолчанию проверяются каждый тик, 8 экономит заметно и не ломает фермы.merge-radius.item 0.5 → 2.5— меньше сущностей-дропа на земле.item-despawn-rate 6000 → 3000,arrow-despawn-rate 1200 → 300.mob-spawn-range 8 → 6,max-tnt-per-tick 100 → 30.
paper-world.yml
misc.redstone-implementation: ALTERNATE_CURRENT— быстрее распространение редстоуна. Ломает 0-tick и двери-контры, предупредить игроков перед включением.tick-rates— рост травы, обновление контейнеров, спавнеры в 3 тика.collisions.max-entity-collisions 8 → 5.environment.disable-thunder,optimize-explosions,max-block-ticks/max-fluid-ticksпополам.hopper.disable-move-event: true— ломает плагины, слушающиеInventoryMoveItemEvent(авто-сортировки, economy-логики).entities.spawning.spawn-limits— потолок мобов на чанк.
paper-global.yml
chunk-system.io-threads: 2,worker-threads: -1— не даём чанковой системе съесть 4 ядра.chunk-loading.advanced.player-max-concurrent-chunk-loads/generates— защита от флуда генерацией при скоростном облёте.
Что НЕ трогаем
- Moonrise (чанковая система) — уже многопоточный, отдельный патч не нужен.
wake-up-inactive.*— баланс, не перф.
Порядок применения
- Остановить сервер.
- Скопировать файлы.
paper-world.ymlположить в каждый мир:world/,world_nether/,world_the_end/.- Старт → в логе не должно быть
Error occurred while loadingпо этим файлам. - Проверить:
/paper entity(tracking ranges),sparkдля TPS/MSPT.