
Chunker
Быстрый и эффективный плагин для предварительной генерации мира на серверах Minecraft. Поддерживает Paper, Folia и другие форки, минимизирует откаты при сбоях.
Chunker - это плагин для Майнкрафт, который делает предварительную генерацию чанков (pre-generation) быстрой, надёжной и щадящей для сервера. Если вы когда-нибудь запускали прегенерацию на бумажном сервере и получали откат при падении - вы знаете, как это бесит. Chunker решает эту проблему: он не хранит в памяти тысячи чанков, а только минимальное состояние (текущую позицию итератора, прогресс и центр генерации). Даже если сервер крашнется, вы не потеряете кучу уже сгенерированных данных.
Плагин лучше всего работает на Paper и его форках (Pufferfish, Purpur, Leaf), потому что использует асинхронную загрузку чанков через CompletableFuture. На Folia - свой региональный планировщик. На других серверах - синхронный режим, но он всё равно есть.
Основные возможности
- Автоматический запуск - можно настроить
auto_run, чтобы генерация стартовала, когда на сервере нет игроков, и останавливалась, если кто-то заходит. - Гибкая настройка нагрузки - регулируйте
task_queue_timerиparallel_tasks_multiplierпод своё железо. - Поддержка всех измерений - Overworld, Nether, The End, можно задать радиус и центр.
- Режим safety - для консервативной, но более безопасной асинхронной генерации.
- Сброс прогресса - команда
/pregen resetдля перезапуска генерации в конкретном измерении.
Команды
Основные команды для работы:
/pregen <ParallelTasksMultiplier> <PrintUpdateDelay> <dimension> <Radius или "default"> [safety]
/pregenoff [dimension]
/pregen reset <dimension>
Примеры
/pregen 4 10s minecraft:overworld default- генерирует Overworld, 4 задачи за цикл, логи каждые 10 секунд, радиус по границе мира./pregen 6 5s minecraft:overworld 1000b- радиус 1000 блоков, округлено до полных регионов./pregen 16 5s minecraft:the_nether 2r safety- Незер, режим safety, 16 параллельных задач./pregen 1 12h minecraft:the_end 100r- Энд, 1 задача за цикл, логи раз в 12 часов./pregen reset minecraft:the_nether- сброс прогресса для Незера.
Параметры команд
- ParallelTasksMultiplier - количество задач за цикл. На Paper - асинхронные. Больше число - выше нагрузка на CPU, память и диск.
- PrintUpdateDelay - частота вывода прогресса (суффиксы
s,m,h). - dimension - измерение (табуляция работает).
- Radius - радиус с суффиксом:
b(блоки),c(чанки),r(регионы) илиdefault(граница мира). - safety - необязательный параметр для консервативного пути на Paper.
Дополнительные команды
/pregenoff [dimension]- остановить все задачи или конкретное измерение.
Права доступа (Permissions)
По умолчанию права у операторов.
chunker.pregen- доступ к/pregenchunker.pregenoff- доступ к/pregenoffchunker.reset- доступ к/pregen reset <dimension>chunker.*- все права Chunker
Конфигурация: settings.yml
# World Configuration for Chunker Plugin
# auto_run: true - запускать прегенерацию автоматически, когда на сервере нет игроков.
# task_queue_timer: скорость постановки чанков в очередь. Для современных AMD 5000 и Intel 13-го поколения рекомендуется 50-70.
# parallel_tasks_multiplier: количество асинхронных задач за цикл. 'auto' распределяет по числу потоков.
# print_update_delay: интервал вывода логов (s-секунды, m-минуты, h-часы). По умолчанию 5s.
# radius: радиус генерации (b-блоки, c-чанки, r-регионы) или 'default' до границы мира.
# center: центр спирали генерации. 'default' - центр границы мира или спавн, '~ ~' - текущий спавн, 'x z' - фиксированные координаты.
minecraft:overworld:
center: default
auto_run: false
task_queue_timer: 60
parallel_tasks_multiplier: auto
print_update_delay: 5s
radius: default
minecraft:the_nether:
center: default
auto_run: false
task_queue_timer: 60
parallel_tasks_multiplier: auto
print_update_delay: 5s
radius: default
minecraft:the_end:
center: default
auto_run: false
task_queue_timer: 60
parallel_tasks_multiplier: auto
print_update_delay: 5s
radius: default
Быстрые советы
- Начинайте с низкого
ParallelTasksMultiplier, потом повышайте, следя за CPU, памятью и диском. - Paper и Folia дают гораздо лучшую производительность, чем синхронная загрузка Bukkit.
- Используйте
print_update_delay10s или больше, чтобы не засорять логи. - Режим
safetyвключайте только если нужен консервативный путь генерации; для максимальной скорости его не ставьте.
Рекомендации по настройке сервера (Paper)
На серверах на базе Paper можно увеличить параллелизм генерации и ввода-вывода в paper-global.yml:
chunk-loading-advanced:
auto-config-send-distance: true
player-max-concurrent-chunk-generates: -1
player-max-concurrent-chunk-loads: -1
chunk-loading-basic:
player-max-chunk-generate-rate: -1.0
player-max-chunk-load-rate: -1.0
player-max-chunk-send-rate: -1.0
chunk-system:
gen-parallelism: default
io-threads: 16
worker-threads: 16
region-file-cache-size: 16
- Подстройте
io-threadsиworker-threadsпод количество потоков вашего CPU. - По умолчанию Paper может не использовать все ядра для чанков.
- Уменьшите
region-file-cache-size, если прегенерация идёт на свежем мире без игроков.
Chunker - это must-have для любого сервера, где вы хотите избавить игроков от лагов при исследовании новых территорий. Скачайте плагин Chunker, настройте авто-генерацию в свободное время и забудьте о проблемах с недоcгенерированными чанками.
