1. Настройка рабочей среды и подключение зависимостей Create API
Настройка рабочей среды и подключение зависимостей Create API
Добро пожаловать в курс по разработке аддонов для мода Create! Если вы читаете эту статью, значит, вы готовы перейти от простого игрока к творцу, способному расширять границы возможного в Minecraft. Create — это не просто мод, это целая инженерная экосистема. Создание аддонов для него требует понимания того, как взаимодействовать с его API (Application Programming Interface).
В этой первой статье мы заложим фундамент: установим необходимый софт, развернем проект и научим его «видеть» код мода Create.
Необходимый инструментарий
Прежде чем писать код, нам нужно подготовить верстак. Для разработки модов под современные версии Minecraft (мы будем ориентироваться на версию 1.20.1, так как она является одной из самых стабильных для Create на данный момент) нам понадобятся следующие инструменты:
Установка Java Development Kit (JDK)
Minecraft написан на Java, и для разных версий игры требуются разные версии Java. Для версии 1.20.1 стандартом является Java 17.
> Важно использовать именно JDK, а не JRE. JDK (Development Kit) содержит инструменты для компиляции кода, в то время как JRE (Runtime Environment) позволяет только запускать программы.
Рекомендуется использовать дистрибутивы от Eclipse Adoptium, так как они наиболее стабильны для моддинга.
Выбор среды разработки (IDE)
IDE — это ваш главный инструмент, «умный блокнот», который будет подсказывать ошибки, автодополнять код и помогать в навигации. Существует два основных лидера:
* IntelliJ IDEA (рекомендуется) * Eclipse
В рамках этого курса мы будем использовать IntelliJ IDEA Community Edition. Она бесплатна, имеет отличную интеграцию с Gradle и Minecraft, а также более современный интерфейс.
!Схема необходимых компонентов для начала разработки: Java, IDE и Forge.
Создание проекта на базе Forge
Разработка аддона начинается с создания обычного мода. Мы будем использовать Minecraft Forge — самый популярный загрузчик модов, на котором базируется Create.
Шаг 1: Скачивание MDK
Шаг 2: Распаковка и импорт
MyCreateAddon).Open и укажите путь к файлу build.gradle в вашей папке.Open as Project.После этого IDE начнет процесс индексации и скачивания библиотек. Это может занять от 5 до 20 минут в зависимости от скорости вашего интернета. Gradle скачает Minecraft, декомпилирует его и подготовит среду.
Структура проекта
После завершения настройки вы увидите структуру папок слева. Нас интересуют следующие элементы:
* src/main/java — здесь будет лежать весь ваш Java-код.
* src/main/resources — здесь хранятся текстуры, модели и конфигурационные файлы.
* build.gradle — скрипт сборки проекта. Это «паспорт» вашего мода и инструкция для компилятора.
* gradle.properties — файл с переменными (версия мода, версия игры и т.д.).
Подключение Create API
Самый важный этап — объяснить нашему проекту, что мы хотим использовать код мода Create. Если мы этого не сделаем, мы не сможем обращаться к шестеренкам, конвейерам и кинетической энергии в нашем коде.
Для этого нам нужно отредактировать файл build.gradle.
Добавление репозитория
Gradle скачивает библиотеки из репозиториев. По умолчанию там есть только официальные сервера Minecraft и Forge. Нам нужно добавить репозиторий, где хранится Create.
Откройте build.gradle и найдите блок repositories. Добавьте туда ссылку на Maven-репозиторий tterrag (разработчика библиотек для Create):
Добавление зависимостей
Теперь, когда Gradle знает, где искать, нужно сказать ему, что искать. Найдите блок dependencies.
Нам нужно добавить сам Create и библиотеку Flywheel (движок рендеринга, который использует Create). Лучшей практикой является вынос версий в файл gradle.properties, но для простоты мы пропишем их напрямую или используем переменные, если они уже заданы.
Вставьте следующие строки в блок dependencies:
Разбор элементов:
* implementation — говорит Gradle, что эта библиотека нужна для компиляции и работы.
* fg.deobf — специальная команда ForgeGradle. Она «деосфусцирует» (расшифровывает) имена методов и полей в скачанном моде, чтобы вы видели понятные названия вроде getSpeed(), а не func_12345_a().
* slim — версия Create без встроенных библиотек (мы подключаем их отдельно для надежности).
Чтобы этот код заработал, вам нужно добавить соответствующие версии в файл gradle.properties. Откройте его и добавьте:
После внесения изменений обязательно нажмите кнопку Reload Gradle Changes (значок слона с синими стрелками) в правой панели IntelliJ IDEA.
!Визуализация процесса загрузки зависимостей через Gradle.
Настройка метаданных (mods.toml)
Последний штрих — настроить информацию о вашем моде. Она находится в файле src/main/resources/META-INF/mods.toml.
Найдите этот файл и измените следующие поля:
* modId: Уникальный идентификатор вашего мода (только латиница, нижний регистр, без пробелов). Например: my_create_addon.
* displayName: Красивое название, которое игроки увидят в меню модов.
* authors: Ваше имя.
* description: Краткое описание мода.
Также крайне важно добавить зависимость от Create в этом файле, чтобы игра не запускалась, если у пользователя не установлен Create. Найдите блок [[dependencies.modId]] (или создайте его) внизу файла:
Первый запуск
Теперь всё готово к первому тесту. Нам нужно убедиться, что игра запускается, и Create загружается вместе с нашим пустым аддоном.
Tasks -> forgegradle runs -> runClient.runClient.Запустится Minecraft. В главном меню нажмите кнопку Mods. В списке вы должны увидеть: * Minecraft * Forge * Create * Ваш аддон
Если вы видите этот список — поздравляю! Вы успешно настроили рабочую среду. Теперь ваш проект «знает» о существовании Create, и вы можете использовать его классы в своем коде.
Возможные проблемы
* Ошибка "Could not find method fg.deobf": Убедитесь, что вы не удалили плагин ForgeGradle в начале файла build.gradle.
* Игра крашится при запуске: Проверьте совместимость версий в gradle.properties. Версии Flywheel и Create должны строго соответствовать версии Minecraft.
* IntelliJ не видит классы Create: Попробуйте выполнить команду File -> Invalidate Caches / Restart.
В следующей статье мы перейдем к самому интересному — созданию нашего первого блока и регистрации его в системе Create.