64 lines
3.9 KiB
Markdown
64 lines
3.9 KiB
Markdown
# 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.*` — баланс, не перф.
|
||
|
||
## Порядок применения
|
||
1. Остановить сервер.
|
||
2. Скопировать файлы.
|
||
3. `paper-world.yml` положить в **каждый** мир: `world/`, `world_nether/`, `world_the_end/`.
|
||
4. Старт → в логе не должно быть `Error occurred while loading` по этим файлам.
|
||
5. Проверить: `/paper entity` (tracking ranges), `spark` для TPS/MSPT. |