
Magma: универсальное ядро для Bukkit и Forge в одном решении
В сообществе Minecraft давно идет негласная война между любителями модов (Forge) и фанатами плагинов (Bukkit/Spigot/Paper). Первые привносят в игру новые измерения, машины и магию, в то время как вторые обеспечивают стабильность, защиту территорий и удобство администрирования.
Magma – это программное ядро, которое может поставить точку в этом споре, позволяя запускать моды и плагины одновременно на одном сервере. В этой статье мы разберем, как устроена Magma и почему она стала популярной в современных технических сборках.
Что такое Magma?
Magma – это серверное ядро с открытым исходным кодом, базирующееся на Forge и адаптированное для работы с API Spigot/Paper. Если говорить проще, оно берет за основу мощь Forge, позволяя игрокам заходить с модами и добавляет слой совместимости с Paper. Это дает возможность устанавливать плагины вроде WorldGuard, EssentialsX или LuckPerms.
В отличие от старых аналогов Cauldron или Thermos, Magma активно разрабатывается для популярных версий Minecraft, таких как 1.12.2, 1.16.5 и 1.18.2. По сути, это «прослойка», которая эмулирует Bukkit API внутри Forge-сервера. Благодаря этому плагины думают, что работают на обычном Spigot, а моды – что на обычном Forge.
Главные преимущества:
- Лучшее из двух миров: вам больше не нужно искать модную замену плагинам на приват территории. Вы просто берете привычный WorldGuard и ставите его рядом с Industrial Craft или Twilight Forest. Плагины на экономику, авто-сообщения и анти-чит работают бок о бок с глобальными модификациями.
- Производительность Paper: Magma наследует многие оптимизации ядра Paper. Это означает более эффективную работу с чанками, оптимизированный ИИ мобов и уменьшение нагрузки на процессор по сравнению с «чистым» Forge-сервером.
- Простота миграции: если у вас уже есть сервер на Forge, переход на Magma обычно занимает пару минут: достаточно заменить .jar файл ядра. Все ваши миры и конфиги модов останутся нетронутыми.
Magma обеспечивает полную совместимость с Forge-модами, Bukkit/Spigot/Paper-плагинами и модами, которые используют Mixin.
Но есть и ограничения: не все моды работают. Особенно часто проблемы возникают с теми, которые глубоко ломают клиентский рендер или кардинально меняют физику блоков.
Установка Magma – пошаговая инструкция
Установка Magma немного сложнее, чем стандартного Paper или Forge, но при соблюдении инструкции с ней справится даже новичок. Как и для любого современного сервера, крайне важно соблюдать соответствие. Для Magma 1.12.2 нужна Java 8, для 1.16.5 – Java 11, а для 1.18.2 и выше – Java 17.
Скачивание ядра
Первый шаг установки, для которого используется официальный сайт Magma: https://magmafoundation.org (будьте осторожны: есть много фейковых сайтов). Альтернатива – GitHub репозиторий MagmaFoundation/Magma.
Выберите версию под ваш клиент:
- Magma 1.12.2 – самая стабильная, подходит для старых модов (Thaumcraft, IC2, EnderIO);
- Magma 1.16.5 – средняя стабильность, много модов уже обновились;
- Magma 1.20.1 – экспериментальная версия, возможны баги.
Скачивайте файл с названием типа magma-1.12.2-1.0.0-server.jar (или magma-…-server.jar).
Создание папки сервера
Создайте новую папку, например MagmaServer. Поместите туда скачанный JAR-файл. Создайте текстовый файл start.bat (для Windows) или start.sh (Linux/Mac):
Windows (start.bat):
batch
@echo off
java -Xmx4096M -Xms1024M -jar magma-1.12.2-1.0.0-server.jar nogui
pause
Linux/Mac (start.sh):
bash
#!/bin/bash
java -Xmx4096M -Xms1024M -jar magma-1.12.2-1.0.0-server.jar nogui
Запустите. Сервер в первый раз сгенерирует папки: libraries, mods, plugins, config, world.
Принятие лицензионного соглашения
После первого запуска сервер остановится с ошибкой: нужно принять EULA. Откройте файл eula.txt, измените eula=false на eula=true.
Базовая настройка server.properties
Отредактируйте стандартные параметры:
- server-port=25565 (или другой);
- online-mode=true (если лицензия) или false (если пиратка);
- max-players=20.
Установка модов и плагинов
Моды (.jar) кладите в папку mods.
Плагины (.jar) кладите в папку plugins.
Некоторые моды требуют клиентскую установку. Игроки тоже должны будут поставить те же моды на свой клиент (с Forge).
Запустите сервер снова. В консоли вы увидите сначала загрузку Forge (модов), потом – Bukkit (плагинов). Если нет ошибок – все работает.

Настройка совместимости: какие моды и плагины не работают
Опыт показывает, что 80% модов работают без проблем. Но есть черный список:
Моды, которые гарантированно конфликтуют:
- OptiFine (серверная часть не нужна, клиентская – без проблем);
- Just Enough Items (JEI) – работает, но лишнее на сервере (это клиентский мод);
- Minecraft Coder Pack (MCP) – не нужен;
- любые моды, которые пытаются зарегистрировать свой протокол пакетов вне стандартного Forge (например, старые версии CustomNPCs).
Плагины, которые могут тормозить:
- WorldEdit – работает, но при массовых операциях с блоками из модов может вылететь;
- CoreProtect – работает, но логировать модные блоки нужно через отдельную настройку;
- PlotSquared – работает с костылями (нужно отключить проверку типов блоков).
Рекомендуемые плагины:
- LuckPerms (идеально, поддерживает модные группы);
- EssentialsX (почти все работает, кроме /item на модные предметы);
- Vault (экономика – да, но модные деньги не подхватит без моста);
- WorldGuard (флаги работают, но регионы с модными блоками – осторожно)
Оптимизация Magma (память, CPU, лаги)
Гибридное ядро жрет ресурсы. Снизить потребление можно различными способами.
Настройка параметров JVM (Java)
Используйте не стандартные флаги, а агрессивные:
java -Xmx6G -Xms4G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:+UnlockExperimentalVMOptions -XX:+AlwaysPreTouch -jar magma.jar nogui
- -Xmx6G – максимум 6 ГБ (для 20 игроков + 50 модов);
- -XX:+UseG1GC – сборщик мусора для больших хипов;
- -XX:+AlwaysPreTouch – зарезервировать всю память сразу (меньше лагов).
Файл magma.yml (конфигурация ядра)
Magma создает свой конфиг. Откройте config/magma.yml:
bukkit:
allow-bukkit-commands: true
allow-mod-block-interaction: true # Разрешить плагинам видеть модные блоки
forge:
reloadable-mods: false # Никогда не перезагружайте моды через /reload
allow-tweak-classes: true
Важнейший параметр: allow-mod-block-interaction: true. Без него WorldGuard не сможет защитить модные двери или сундуки.
Настройка bukkit.yml для гибрида
Добавьте в bukkit.yml:
chunk-gc:
period-in-ticks: 600
load-threshold: 500
world-settings:
default:
entity-activation-range:
animals: 16
monsters: 24
misc: 8
Это снизит активность мобов из модов, которые могут лагать.
Типичные проблемы и их решение
Проблема 1: Сервер падает при запуске с ошибкой ClassNotFoundException
Причина: Несовместимость версии мода и Forge внутри Magma.
Решение: Проверьте, для какой версии Forge собран мод. Magma для 1.12.2 использует Forge 14.23.5.2860. Обновите мод до совместимой версии.
Проблема 2: Плагин не видит блоки из мода (например, WorldGuard не защищает модный сундук)
Причина: Magma не передает Bukkit API информацию о модных блоках.
Решение: В magma.yml поставьте allow-mod-block-interaction: true и перезагрузите сервер. Если не помогло – используйте флаг -Dmagma.block-interaction=true в JVM.
Проблема 3: Огромные лаги при загрузке мира
Причина: Моды генерируют структуры (рудные жилы, деревья), а плагины пытаются их анализировать.
Решение: При первом запуске добавьте флаг -Dfml.queryResult=confirm. Или временно отключите плагины типа WorldGuard, пока мир не прогенерируется.
Проблема 4: Игроки не могут зайти, вылетает Internal Exception: java.io.IOException
Причина: У игроков нет нужных модов на клиенте.
Решение: Соберите папку mods с сервера и раздайте игрокам. Обязательно используйте тот же Forge на клиенте, что и на сервере (узнать можно в консоли при запуске).
Проблема 5: Плагин EssentialsX не выдает модные предметы через /give
Решение: Это ограничение самого Essentials. Используйте команду Forge /forge give <player> <modid:item> <amount>.
Альтернативы Magma
Прежде чем окончательно остановиться на Magma, стоит оценить альтернативы. На рынке гибридных ядер существует несколько проектов – живых, мертвых и «спящих». У каждого свои сильные и слабые стороны, а также своя аудитория.
- Magma – версии 1.12.2-1.20.1, средняя стабильность, активная поддержка;
- Mohist – высокая стабильность, больше настроек, но сложнее;
- CatServer – только 1.12.2, очень стабильный, но больше не развивается;
- Crucible – старая версия 1.7.10, проект заброшен;
- SpongeForge – работает только с модами, без поддержки Bukkit-плагинов.
Magma отлично подходит для новичков, простой конфиг, Mohist – для профессионалов, больше настроек, но сложнее, CatServer – для старых сборок 1.12.2 (очень стабилен).

Пошаговый пример
Для примера соберем реальный рабочий сервер с модами Thaumcraft и плагином GriefPrevention.
- Качаем Magma 1.12.2.
- Кладем в mods:
- Thaumcraft-1.12.2-6.1.BETA26.jar
- Baubles-1.12-1.5.2.jar
- JEI-1.12.2-4.15.0.jar
- Кладем в plugins:
- GriefPrevention-16.17.1.jar
- EssentialsX-2.20.1.jar
- LuckPerms-Bukkit-5.4.102.jar
В magma.yml включаем allow-mod-block-interaction: true. Запускаем. Заходим с клиента Forge 1.12.2 + те же моды. Проверяем – GriefPrevention защищает землю, Thaumcraft генерирует ауру, игроки получают приваты. Работает без вылетов.
Magma – это мощный, но требовательный инструмент. Он идеально подходит для небольших дружеских серверов (до 30 игроков), где хочется и моды, и плагины одновременно. Для крупных проектов (>100 игроков) лучше выбрать что-то одно: либо чистый Forge без плагинов, либо Paper с плагинами и датапаками, имитирующими моды. Теперь вы знаете, как запустить свой первый гибридный сервер. Удачи и меньше крашей!