Chunky: предгенерация мира на Minecraft-сервере — как заранее создать чанки и не лагать

Как установить Chunky через панель EGN, задать круг вокруг спавна, запустить и поставить на паузу предгенерацию, и почему это убирает лаги при исследовании.

Команда EGN 8 мин чтения
Chunky: предгенерация мира на Minecraft-сервере — как заранее создать чанки и не лагать
Содержание 23
  1. Коротко
  2. Зачем предгенерировать мир
  3. Шаги: установка через панель EGN
  4. Шаги: команды в консоли
  5. 1. Задайте центр
  6. 2. Задайте радиус
  7. 3. Запустите предгенерацию
  8. 4. Приостанавливайте при нагрузке
  9. 5. Отмена
  10. 6. Граница мира
  11. Сколько чанков получится
  12. Пример: как предгенерация меняет вечер
  13. Симптом → причина → решение
  14. Практические правила
  15. Если предгенерация идёт медленно
  16. Как проверить результат
  17. Частые ошибки
  18. Итог
  19. Вопросы и ответы
  20. Какие команды нужны для Chunky?
  21. На каких серверах работает Chunky?
  22. Можно ли остановить предгенерацию и продолжить позже?
  23. Сколько времени занимает предгенерация?

Игроки исследуют мир, и сервер на каждом новом чанке тратит время: генерирует рельеф, биомы, структуры и сохраняет результат. Чем дальше границы, тем чаще это происходит в самый неудобный момент — когда на сервере уже много людей. Решение — предгенерация: создать чанки заранее, в спокойное время, пока игроков нет. Для этого на Paper используют плагин Chunky.

Коротко

Chunky — плагин для Paper, Spigot, Fabric, Forge, NeoForge и Sponge, который заранее генерирует чанки в заданной области. Установите его через «Моды и плагины» в панели EGN, затем в консоли выполните /chunky center 0 0, /chunky radius 2000 и /chunky start. Радиус 2000 блоков даёт круг примерно 49 000 чанков.

Зачем предгенерировать мир

Когда игрок заходит в новый район, сервер делает сразу несколько тяжёлых вещей: считает рельеф, размещает деревни и структуры, создаёт сущности. Каждый такой чанк забирает время тика. Если игроков много и все идут в разные стороны, MSPT растёт, а игра подтормаживает.

Предгенерация переносит эту работу на момент, когда сервер пуст или малолюден. После этого игроки ходят по уже готовым чанкам, и подгрузка идёт быстро.

Есть и второй плюс: Chunky позволяет пересчитать карту без участия игроков и приостанавливать процесс, когда нагрузка выросла. Это важно, если сервер работает круглосуточно.

Шаги: установка через панель EGN

Chunky ставится как плагин, поэтому нужен сервер на Paper или Spigot. В панели откройте «Моды и плагины» → вкладку «Каталог». В поиске введите chunky.

Каталог «Моды и плагины» на Paper 1.21.1: поиск chunky выводит плагин Chunky от pop4959 и другие варианты
Каталог «Моды и плагины» на Paper 1.21.1: поиск chunky выводит плагин Chunky от pop4959 и другие варианты

Выберите Chunky (автор pop4959) и нажмите «Установить». Панель подберёт версию под ядро и версию игры. Если сервер уже работает, перезапустите его через кнопку в шапке раздела. Проверьте в логе строку о загрузке плагина Chunky.

В выдаче поиска рядом с Chunky будут Chunky Border (дополнение того же автора для границ мира) и ChunkyFast (отдельный проект-предгенератор). Для классической предгенерации по командам из этой статьи нужен именно Chunky.

Шаги: команды в консоли

Все команды выполняются в «Консоли» сервера. Ниже — порядок и синтаксис по официальной вики Chunky.

Команды Chunky: center, radius, start, pause, continue, cancel, progress, worldborder
Команды Chunky: center, radius, start, pause, continue, cancel, progress, worldborder

1. Задайте центр

Терминал
/chunky center 0 0

Координаты X и Z. Без них команда берёт текущую позицию игрока, который ввёл команду. Для спавна обычно удобно 0 0, но лучше проверить точку спавна в мире.

2. Задайте радиус

Терминал
/chunky radius 2000

Радиус в блоках. Для круга (и квадрата) второй радиус не нужен. Для прямоугольника или эллипса команда принимает два значения, форму задаёт /chunky shape: например /chunky shape rectangle, затем /chunky radius 2000 1000. Порядок генерации (concentric, loop) меняет /chunky pattern.

3. Запустите предгенерацию

Терминал
/chunky start

Chunky начнёт создавать чанки по выделенной области. Посмотреть ход можно командой /chunky progress: она показывает прогресс всех задач.

Круг предгенерации вокруг спавна: радиус 2000 блоков, около 49 000 чанков
Круг предгенерации вокруг спавна: радиус 2000 блоков, около 49 000 чанков

4. Приостанавливайте при нагрузке

Если на сервере начался пик, приостановите задачу:

Терминал
/chunky pause

Когда нагрузка спадёт, продолжите:

Терминал
/chunky continue

Прогресс сохраняется, поэтому пауза не сбрасывает работу.

5. Отмена

Терминал
/chunky cancel

Останавливает и удаляет текущие и сохранённые задачи, продолжить их через continue уже нельзя. Уже созданные чанки при этом остаются в мире; убрать лишнее позволяет /chunky trim (после него нужен перезапуск). Используйте cancel, если выбрали не тот радиус.

6. Граница мира

Если в мире уже стоит граница, Chunky берёт центр и радиус из неё (подойдёт и ваниллская граница):

Терминал
/chunky worldborder

Это удобно, когда вы сначала задали границу, а потом решили заполнить её чанками.

Сколько чанков получится

Чанк — квадрат 16 на 16 блоков. Радиус 2000 блоков от центра — это сторона квадрата 4000 блоков, то есть 250 чанков по каждой стороне. Всего в квадрате 250 × 250 = 62 500 чанков. Круг той же ширины вмещает примерно π × 125² ≈ 49 000 чанков.

Вот что это значит на практике:

Радиус, блоков Чанков в круге (≈) Замечание
500 3 100 Быстро, подходит для маленького сервера
1000 12 300 Стандартный старт на 5–10 игроков
2000 49 000 Большой мир, заметная нагрузка и время
5000 306 000 Долго; планируйте на ночь, с паузами

Расчёт грубый, но показывает порядок. Чем больше радиус, тем дольше генерация. Подбирайте радиус под то, куда реально ходят игроки, а не «на всякий случай».

Пример: как предгенерация меняет вечер

Условный пример. На сервере на 10 игроков новые районы генерируются прямо во время игры. В пиковый час MSPT поднимается до 60 мс, игроки жалуются на рывки при переходах. Администратор запускает предгенерацию на радиус 1500 блоков в ночное окно, например с 03:00 до 07:00 по Москве, и ставит паузу командой /chunky pause до утра. Днём те же переходы идут по готовым чанкам, MSPT держится ниже 50.

Если в ночное окно стоит перезапуск из «Расписаний», он оборвёт генерацию на полпути. Поставьте перезапуск на время, когда задача уже не идёт, или сделайте паузу перед ним. Прогресс сохранится, и продолжить можно будет командой /chunky continue.

Симптом → причина → решение

Симптом Вероятная причина Что сделать
Лаги при переходе в новый район Чанки не готовы Предгенерация в спокойное время
Генерация идёт, но MSPT растёт Задача слишком тяжёлая для текущей нагрузки /chunky pause, продолжить ночью
Команда не найдена Плагин не установлен или сервер не перезапущен Проверить каталог, перезапустить
Прогресс не двигается Задача на паузе или нагрузка /chunky progress, затем /chunky continue
Нужна другая область Выбран неверный радиус или центр /chunky cancel, затем заново
Мир заполнен, но места мало Радиус больше, чем нужно Оценить по таблице выше; лишние чанки не удалятся сами, их убирает /chunky trim

Практические правила

  • Сделайте бэкап мира до предгенерации. Chunky записывает много данных, и откат удобнее с копией. Бэкапы в панели — в разделе «Бэкапы».
  • Начинайте с меньшего радиуса и расширяйте, если игроки реально дошли до края.
  • Запускайте на пустом сервере или на ночь. Предгенерация — процесс долгий.
  • Следите за местом на диске. Тысячи чанков занимают заметный объём; сверяйте размер папки мира в «Файлах» с диском вашего тарифа.
  • Не ставьте радиус больше границы мира без понимания, что происходит за ней.

Если предгенерация идёт медленно

Скорость зависит от процессора, диска и того, сколько игроков в мире. Если прогресс идёт слишком медленно, проверьте четыре вещи.

Симптом Вероятная причина Что сделать
Прогресс застыл на одном проценте Задача на паузе или запись на диск /chunky progress, затем /chunky continue
Скорость падает при игроках Конкуренция за процессор Ставить на паузу в час пик
Диск занят на 100% Много записи одновременно Освободить место, остановить другие задачи
MSPT растёт во время задачи Радиус слишком большой для железа /chunky cancel, уменьшить радиус, запустить заново

Отменённая задача не продолжается: cancel удаляет и сохранённый прогресс. Для остановки «на потом» используйте pause.

Как проверить результат

После предгенерации откройте «Моды и плагины» → «Установлено» и убедитесь, что Chunky ещё стоит, если планируете повторять процесс. Затем зайдите на сервер и пройдите по старым маршрутам: переходы между чанками должны идти без подвисаний. Замерьте MSPT командой /spark tps в час пик и сравните с замером до предгенерации.

Не ожидайте мгновенного чуда. Предгенерация убирает пики при исследовании, но не лечит фермы и плагины. Для них нужен профиль spark и отдельная настройка.

Памятка по порядку действий:

  1. Бэкап через «Бэкапы».
  2. Установка Chunky через «Моды и плагины».
  3. /chunky center, /chunky radius, /chunky start.
  4. Пауза в пик, продолжение ночью.
  5. Замер MSPT до и после.

Частые ошибки

Задать радиус «на 10 000» сразу. Это сотни тысяч чанков. Генерация займёт много часов, а игроки могут никогда не дойти до края. Начните с 1000–2000.

Не проверить центр. Если центр далеко от спавна, чанки создаются не там, где ходят игроки.

Оставить задачу без паузы в час пик. Chunky нагружает сервер. В пиковое время её лучше приостанавливать.

Забыть про границу мира. Если границы нет, игроки уйдут за предгенерированную область, и там чанки снова будут создаваться на ходу.

Не следить за диском. Заполненный диск ломает сохранение мира. Проверяйте место до запуска.

Итог

Предгенерация убирает лаги при исследовании мира: чанки создаются заранее, в спокойное время. Установите Chunky через «Моды и плагины», задайте центр и радиус, запустите и при нагрузке ставьте на паузу. Радиус 2000 блоков даёт около 49 000 чанков, и это уже серьёзная задача. Перед запуском сделайте бэкап и проверьте место на диске.

Вопросы и ответы

Какие команды нужны для Chunky?

/chunky center 0 0, /chunky radius 2000, /chunky start. Для паузы — /chunky pause, для продолжения — /chunky continue.

На каких серверах работает Chunky?

По документации проекта — Spigot, Paper, Fabric, Forge, NeoForge и Sponge. На EGN ставится через «Моды и плагины» для Paper.

Можно ли остановить предгенерацию и продолжить позже?

Да. /chunky pause сохраняет прогресс, /chunky continue продолжает. /chunky cancel удаляет задачу без продолжения.

Сколько времени занимает предгенерация?

Зависит от радиуса, железа и нагрузки. Радиус 2000 блоков — это около 49 000 чанков, обычно несколько часов. Точное время смотрите в /chunky progress.

Сервер под Minecraft за пару минут — egnetwork.ru

Читать далее

Вся рубрика →