Chunky: предгенерация мира на сервере

Сервер

Игроки уходят исследовать новые земли — и сервер начинает лагать. Причина не в модах: сервер создаёт чанки прямо в момент движения. Chunky решает это, генерируя мир заранее.

Процесс предгенерации чанков в консоли сервера Если сервера ещё нет — гайд по запуску сервера.

Зачем нужна предгенерация

Создание нового чанка — одна из самых тяжёлых операций сервера, особенно со сложной генерацией из модов вроде Terralith. Когда игрок бежит вперёд, сервер лихорадочно строит мир перед ним, и TPS проседает у всех.

Предгенерация переносит эту работу на время, когда никто не играет. Мир создаётся один раз, дальше игроки просто по нему ходят.

Основные команды

КомандаЧто делает
/chunky radius 5000Задать радиус в блоках
/chunky center 0 0Центр области
/chunky world minecraft:overworldВыбрать измерение
/chunky startЗапустить генерацию
/chunky pauseПриостановить
/chunky continueПродолжить с места остановки
/chunky progressПоказать прогресс

Прогресс сохраняется: можно остановить, перезапустить сервер и продолжить с той же точки.

Какой радиус выбрать

РадиусДля чегоОриентир по месту
1000–2000Небольшой приватный серверНемного
5000Средний сервер с друзьямиЗаметно
10000+Публичный проектМного, десятки гигабайт

Главное предупреждение: сгенерированный мир занимает место на диске. Радиус в 10000 блоков — это огромная площадь, и на хостинге с ограниченным диском вы можете упереться в лимит. Начинайте с меньшего и расширяйте по надобности.

Не забудьте Незер и Край

Частая ошибка: предгенерировать только Обычный мир. Незер используется как транспорт, и лаги там не менее заметны. Задайте world для каждого измерения отдельно.

Учтите масштаб: в Незере один блок равен восьми в Обычном мире, поэтому радиус там нужен в восемь раз меньше. Расчёт координат — в калькуляторе, механика в статье про порталы.

Когда запускать

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

Порядок для нового сервера

  1. Определитесь с сидом и настройками мира — менять потом будет поздно.
  2. Поставьте все моды на генерацию до первого запуска.
  3. Запустите предгенерацию нужного радиуса во всех измерениях.
  4. Дождитесь окончания.
  5. Открывайте сервер для игроков.

Такой порядок избавляет от большинства лагов исследования на всё время жизни проекта.

Что делать, если лаги остались

Значит причина не в генерации. Найти настоящую поможет профилировщик — про него в гайде по Spark.

Частые вопросы

Зачем нужна предгенерация чанков?

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

Какой радиус выбрать?

1000–2000 для приватного сервера, 5000 для среднего, 10000+ для публичного. Учтите, что сгенерированный мир занимает место на диске, и на хостинге можно упереться в лимит.

Нужно ли предгенерировать Незер?

Да, его часто забывают. Но радиус там нужен в восемь раз меньше: один блок Незера равен восьми в Обычном мире.

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

Да, прогресс сохраняется. Командой pause останавливаете, continue продолжаете с той же точки даже после перезапуска сервера.

Читайте также