Pterohost docs

Хостинг Minecraft с модами: выбор сервера, RAM, ядра

Как выбрать хостинг под модовый сервер Minecraft: Forge, Fabric, NeoForge, расчёт RAM, JVM-флаги Aikar, мониторинг лагов через /tps и /spark.

Модовый сервер Minecraft - это совсем другая нагрузка по сравнению с ванильным или Paper. Сотни модов, тысячи сущностей, сложные механики - всё это требует продуманного выбора железа, лоадера и JVM-настроек. Разберём, как подобрать хостинг под модпак и не получить TPS 5 на 10 игроках.

Лоадеры модов: Forge, Fabric, NeoForge

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

Forge

Старейший лоадер, существует с 2011 года. Под него написано подавляющее большинство классических модов: IndustrialCraft, BuildCraft, Thaumcraft, Tinkers’ Construct, Applied Energistics. Если вы играли в крупный модпак до 2022 года - почти наверняка это был Forge.

Особенности:

  • огромная база модов;
  • тяжёлый старт сервера (загрузка сотен модов занимает 1-3 минуты);
  • высокое потребление RAM;
  • иногда более медленные обновления под новые версии Minecraft.

Fabric

Лёгкий и быстрый лоадер, появился в 2018 году. Изначально - вокруг оптимизационных модов (Sodium, Lithium, Phosphor) и быстрых сборок.

Особенности:

  • меньшее потребление RAM;
  • быстрый запуск;
  • меньше “тяжёлых” модов вроде Mekanism (но они уже подтягиваются);
  • быстрее обновляется под новые версии Minecraft.

NeoForge

Форк Forge, появился в 2023 году после раскола сообщества. Активно развивается, многие новые моды (Create 6+, Mekanism 11+) уже выходят под NeoForge.

Особенности:

  • совместимость с большинством старых Forge-модов;
  • более активная разработка по сравнению с оригинальным Forge;
  • становится стандартом для версий 1.21+.

Hybrid: Mohist, Arclight, Magma

Если очень нужны и моды, и Bukkit-плагины, есть гибридные сборки. Это специальные сборки сервера, которые умеют запускать Forge-моды и работать как Paper-сервер для плагинов. Минусы: повышенный расход RAM, возможные конфликты, нестабильность под нагрузкой.

Нагрузка от модов: что реально жрёт ресурсы

Не все моды одинаково тяжёлые. Условно можно разделить их на категории:

КатегорияПримерыНагрузка
КосметикаJEI, Xaero, PatchouliНизкая
QoL/оптимизацияLithium, Starlight, FerriteCoreСнижают
Контент-модыTwilight Forest, AetherСредняя
ТехномодыMekanism, Create, Industrial ForegoingВысокая
МагияBotania, Ars Nouveum, Blood MagicСредняя
БиомыBiomes O’ Plenty, TerralithВысокая при генерации
Анимации/сущностиAlex’s Mobs, Mowzie’s MobsВысокая при онлайне
Чанк-генераторыQuark, YUNG’s, Repurposed StructuresВысокая при генерации

Самые тяжёлые - моды с большим количеством тикающих сущностей (Industrial Foregoing с тысячами машин у каждого игрока) и моды с активной генерацией мира (Terralith добавляет десятки биомов).

Расчёт RAM под модпак

Самая частая ошибка - “взять 8 ГБ, как все советуют”. На современных сборках этого мало.

Базовая формула:

RAM = 2048 МБ (пустой сервер)
    + количество_модов * 100 МБ
    + количество_игроков * 80 МБ
    + 1024 МБ (запас на GC)

Примеры:

МодпакМодыИгрокиRAM минимумRAM рекомендация
Small KubeJS5054 ГБ6 ГБ
Medieval RPG100108 ГБ10 ГБ
All the Mods 102801014 ГБ16-20 ГБ
GregTech New Horizons400518 ГБ20-24 ГБ
Create: Astral2201514 ГБ18 ГБ

Дополнительные нюансы расчёта - в материале сколько RAM нужно серверу.

Слишком много RAM - тоже плохо

Если выделить 32 ГБ на модпак, которому нужно 12 - GC будет работать дольше при каждой сборке. Это приведёт к редким, но длинным фризам (так называемые GC pauses на 2-5 секунд). Оптимально - выделять с запасом 20-30%, не больше.

Выбор CPU для модового сервера

Модовый сервер ещё сильнее зависит от частоты CPU, чем ванильный. Тикование сущностей, расчёт капсул машин, обработка миксинов - всё это идёт в один поток.

Рекомендации:

  • частота от 4.5 ГГц в boost - минимум;
  • современная архитектура (Zen 4/5, Raptor Lake) - предпочтительно;
  • большой L3-кэш помогает (Ryzen X3D-серия особенно хороша);
  • 4-8 ядер достаточно, больше - не даёт прироста на одиночном сервере.

Сравнение популярных CPU для серверов и их влияние на TPS - в гайде по ядрам и процессорам.

Pterohost - игровой хостинг с DDoS-защитой L4+L7, NVMe и 24/7 поддержкой. Промокод 4START даёт -20% на первый заказ. Заказать Minecraft хостинг

JVM-флаги: Aikar’s Flags

Aikar’s Flags - набор параметров JVM, разработанный разработчиком Paper для серверов Minecraft. Они настраивают сборщик мусора G1GC так, чтобы паузы были короче и реже.

Базовый набор для сервера от 8 ГБ RAM:

java -Xms12G -Xmx12G \
  -XX:+UseG1GC \
  -XX:+ParallelRefProcEnabled \
  -XX:MaxGCPauseMillis=200 \
  -XX:+UnlockExperimentalVMOptions \
  -XX:+DisableExplicitGC \
  -XX:+AlwaysPreTouch \
  -XX:G1NewSizePercent=30 \
  -XX:G1MaxNewSizePercent=40 \
  -XX:G1HeapRegionSize=8M \
  -XX:G1ReservePercent=20 \
  -XX:G1HeapWastePercent=5 \
  -XX:G1MixedGCCountTarget=4 \
  -XX:InitiatingHeapOccupancyPercent=15 \
  -XX:G1MixedGCLiveThresholdPercent=90 \
  -XX:G1RSetUpdatingPauseTimePercent=5 \
  -XX:SurvivorRatio=32 \
  -XX:+PerfDisableSharedMem \
  -XX:MaxTenuringThreshold=1 \
  -Dusing.aikars.flags=https://mcflags.emc.gs \
  -Daikars.new.flags=true \
  -jar server.jar nogui

Ключевое:

  • -Xms и -Xmx равны - избегаем динамического роста heap;
  • G1NewSizePercent=30 для серверов от 12 ГБ (для 4-8 ГБ ставят 40);
  • G1HeapRegionSize=8M для крупных heap.

Для серверов меньше 8 ГБ RAM флаги слегка отличаются - на сайте mcflags.emc.gs есть генератор под нужный размер heap.

Какую Java брать

  • Minecraft 1.16.5 и ниже - Java 8 или 11;
  • Minecraft 1.17 - Java 16;
  • Minecraft 1.18-1.20 - Java 17;
  • Minecraft 1.21+ - Java 21.

Сборки от Adoptium (Eclipse Temurin) - стандарт. Не используйте Oracle JDK без понимания лицензии.

Установка Forge-сервера пошагово

  1. Создание папки. Создайте отдельный каталог для сервера, например forge-server-1.20.1.

  2. Скачивание installer. Зайдите на files.minecraftforge.net, выберите версию (Recommended), скачайте forge-X.X.X-installer.jar.

  3. Запуск инсталлера. В терминале:

    java -jar forge-1.20.1-47.3.0-installer.jar --installServer

    Инсталлер скачает Minecraft-jar, библиотеки и создаст run.sh / run.bat.

  4. EULA. При первом запуске сервер создаст eula.txt. Откройте и поменяйте eula=false на eula=true.

  5. Запуск. На Linux:

    bash run.sh

    На Windows: run.bat.

  6. Установка модов. Положите .jar файлы модов в папку mods/. На сервере должны быть те же моды, что и у игроков, иначе при подключении будет ошибка “Modded mismatch”.

  7. Перезапуск и тест. Подключитесь с клиентским Forge той же версии и теми же модами.

На хостингах с Pterodactyl весь процесс сводится к выбору версии Forge из выпадающего списка - инсталлер и запуск автоматизированы.

Мониторинг лагов: /tps, /spark, /forge tps

Когда что-то идёт не так, нужно понимать что именно.

/tps

Стандартная команда (если у вас Paper или гибрид):

/tps
TPS from last 1m, 5m, 15m: 19.8, 18.5, 17.2

TPS 20 - идеал. Ниже 18 - заметные подтормаживания. Ниже 15 - сервер тормозит ощутимо.

/forge tps

На чистом Forge:

/forge tps
Overall: Mean tick time: 60.123 ms. Mean TPS: 16.6
minecraft:overworld: Mean tick time: 45.2 ms. Mean TPS: 20.0

Покажет нагрузку по каждому измерению отдельно.

/spark

Универсальный инструмент. Устанавливается как мод (под Forge/Fabric) или плагин. Основные команды:

  • /spark tps - расширенный TPS;
  • /spark profiler - запуск профайлера на 60 секунд;
  • /spark profiler --stop - остановка и генерация ссылки на отчёт;
  • /spark heapsummary - анализ heap.

Отчёты spark показывают, какие конкретно методы каких модов жрут ваш CPU.

Observable

Мод-альтернатива spark для Fabric и Forge. Удобный UI прямо в игре.

Если сервер регулярно лагает, не пропустите гайд по решению лагов и общую оптимизацию сервера.

Чек-лист оптимизации модового сервера

  1. Pre-generate world. Используйте моды Chunky или Chunk-Pregenerator, чтобы заранее сгенерировать чанки в радиусе 5000 блоков от спавна. Снимает огромную нагрузку.

  2. Оптимизация-моды. Lithium (Fabric), Starlight, FerriteCore, Krypton, ModernFix - снижают потребление RAM и CPU.

  3. Конфиги тяжёлых модов. Industrial Foregoing, Create, Mekanism - у всех есть конфиги для лимита машин на чанк. Урезайте лимиты, если игроки строят гигантские заводы.

  4. view-distance и simulation-distance. В server.properties уменьшите до 8/6. Подробнее - в гайде по server.properties.

  5. Лимит сущностей. Многие моды добавляют моба-фермы. Используйте Mob Stacking-моды или лимиты Forge на сущностей в чанке.

  6. Регулярные рестарты. Раз в 12-24 часа автоматический рестарт чистит память от утечек.

  7. Удалите неиспользуемые моды. Часто в модпаках есть моды, которые никто не использует. Каждый удалённый мод - это меньше тика и меньше RAM.

Pterohost - игровой хостинг с DDoS-защитой L4+L7, NVMe и 24/7 поддержкой. Промокод 4START даёт -20% на первый заказ. Заказать Minecraft хостинг

FAQ

Какой лоадер выбрать: Forge, Fabric или NeoForge? Forge - больше всего модов, Fabric - быстрее и легче, NeoForge - будущее экосистемы Forge. Для новой сборки на 1.21+ берите NeoForge или Fabric.

Сколько RAM нужно для модового сервера? По формуле: 2 ГБ базы + 100 МБ × количество модов + 80 МБ × игроков. Для модпака из 200 модов на 10 игроков - 14-16 ГБ.

Что такое JVM-флаги Aikar? Набор параметров запуска Java, оптимизирующий G1GC для Minecraft. Стабилизирует TPS на серверах с большим heap.

Почему модовый сервер лагает на мощном железе? Обычно из-за конкретных модов (биомы, техномоды). Используйте /spark profiler для поиска источника.

Как установить Forge-сервер? Скачать installer, запустить с —installServer, согласиться с EULA, запустить run.sh. На хостинге - через готовый Egg одной кнопкой.

Можно ли использовать Paper-плагины на Forge? Через гибриды Mohist/Arclight/Magma, но стабильность ниже чистого Forge.