- Настройка состоит из четырех шагов: JDK, шаблон мода, ваши соответствия и Gradle.
- Плагин Fabric Build Plugin скачивает Minecraft и настраивает задачи запуска для вас.
- Вам никогда не нужно устанавливать Gradle самостоятельно: шаблон поставляется с обёрткой.
- Несоответствие версий в
gradle.properties— наиболее частая причина сбоя нового проекта.
Настройка среды разработки для Fabric состоит из четырех шагов: установка JDK, начало работы с официальным шаблоном мода, выбор мэппингов (обычно Yarn), а затем запуск задач Gradle, которые скачивают Minecraft и запускают тестового клиента. Плагин сборки выполняет большую часть работы. Совместите версии JDK и Minecraft в самом начале, и остальное пойдет как по маслу.
Где используется Opal
Opal — это Fabric мод с движком скриптов GraalVM JavaScript, поэтому вы можете расширять его с помощью скриптов, не настраивая полный инструментарий модов. Если вы просто хотите установить и запустить его, следуйте руководству по настройке; чтобы начать писать скрипты, обратитесь к документации по скриптам.
Что вам понадобится в первую очередь
Вам понадобятся три вещи, прежде чем писать код: Java Development Kit, IDE и Git.
- JDK. Подберите версию, соответствующую той, для которой вы разрабатываете Minecraft. Более новые версии Minecraft требуют более новые JDK, поэтому проверьте требования к версии перед началом работы.
- IDE. IntelliJ IDEA или Eclipse подойдут. Большинство разработчиков Fabric используют IntelliJ, поскольку интеграция Gradle и декомпилятора работает более плавно.
- Git. Вам потребуется клонировать шаблонный репозиторий и отслеживать свои изменения.
Вы не устанавливаете Gradle самостоятельно. Шаблон поставляется со скриптом Gradle wrapper, который при первом запуске скачивает нужную версию.
Шаг за шагом
Установите JDK
Установите JDK, соответствующую вашей целевой версии Minecraft, и укажите на нее в вашей IDE.
Получите шаблон мода-примера
Выберите ваши соответствия
gradle.propertiesСоздать источники и запустить
Откройте проект в вашей IDE, дождитесь синхронизации Gradle, затем запустите genSources для декомпиляции Minecraft с использованием имен Yarn. Запустите задачу runClient, чтобы запустить клиент разработки с вашей модом.
Что делает плагин сборки для вас
Плагин Gradle для Fabric загружает Minecraft, пересобирает его в соответствии с выбранными вами картами и настраивает конфигурации запуска. Вы настраиваете его через небольшой блок в build.gradle.
| Вы задаете | Где | Что контролирует |
|---|---|---|
| Версия Minecraft | gradle.properties | Против какой версии игры вы компилируете |
| Версия загрузчика | gradle.properties | Версия Fabric Loader, на котором работает ваш мод |
| Версия Yarn | gradle.properties | Имена карт, используемые в вашем исходном коде |
| Зависимости | build.gradle | Fabric API и любые библиотеки |
Следите за согласованностью трех версий в gradle.properties. Несоответствие между версией Minecraft и версией карт Yarn — наиболее распространенная причина, по которой новый проект не удается синхронизировать.
Почему важны карты здесь
Minecraft распространяется в обфусцированном виде, поэтому его классы имеют имена вроде a.a.a. Yarn переводит их в читаемые имена и лежит поверх стабильного промежуточного слоя. Когда вы запускаете genSources, плагин сборки декомпилирует игру, используя имена Yarn, чтобы вы могли читать и ссылаться на код Minecraft напрямую. При компиляции вашего мода он пересобирает ваш код с именами Yarn обратно в промежуточный слой, чтобы готовый jar работал на любой соответствующей установке независимо от переименований карт.
Когда проект не будет построен
- Синхронизация Gradle завершается с ошибкой сразу после импорта: обычно версии Minecraft, загрузчика и Yarn в файле
gradle.propertiesне совпадают. Установите известные совместимые версии. - Неверная версия Java: сборка жалуется на неподдерживаемую версию файла класса, когда ваша JDK старше, чем требуется для Minecraft. Установите более новую JDK и укажите проект на нее.
- Нет декомпилированных исходников для чтения: запустите
genSourcesи перезагрузите. Первый запуск занимает некоторое время, так как он декомпилирует всю игру. runClientничего не делает: дайте начальной синхронизации Gradle завершиться, прежде чем выполнять какие-либо задачи. Конфигурации запуска генерируются во время синхронизации.
Часто задаваемые вопросы
Нет. Шаблон примера Fabric включает Gradle wrapper, который при первом запуске загружает нужную версию Gradle. Используйте ./gradlew вместо системной установки Gradle.
Используйте официальный шаблон мода. В нём уже настроены плагин сборки, Yarn mappings и задачи выполнения, поэтому вы можете пропустить утомительную настройку и сразу приступить к написанию кода.
Yarn является настройкой по умолчанию в Fabric и поставляется с задокументированными именами, поэтому это самый простой выбор. Вы можете собирать с использованием официальных mappings от Mojang, но шаблон настроен для Yarn из коробки.
Тую, которую требует ваша целевая версия Minecraft. Более новые версии требуют более новые JDK, поэтому проверьте версию перед установкой и укажите в вашей IDE эту JDK.
Он декомпилирует Minecraft, используя выбранные вами Yarn-отображения, чтобы вы могли читать код игры и обращаться к её классам по понятным именам во время разработки.