Создание модификаций с помощью Forge/1.7+

Здесь находятся инструкции по созданию модификаций, работающие для версии 1.7+

Подготовка среды и настройка

Сначала подготовим среду для работы с кодом Minecraft.

Forge

Собственно, для создания модификаций нужен Forge. Скачать его можно здесь с пометкой Mdk или с пометкой Src (для версий 1.8/1.7). Теперь создайте любую папку там, где вам удобно (в примере это D:\MCModding), в ней будет находиться Forge и модификация. В эту папку распакуйте содержимое архива с Forge. Вы увидите следующее:

Распакованное содержание Forge.png

С 15 января 2020 года Maven больше не поддерживает протокол HTTP и требует использовать HTTPS, поэтому для создание модификаций под версию 1.7.10 необходимо в файле gradle/wrapper/gradle-wrapper.properties изменить значение параметра distributionUrl:

distributionUrl=https\://services.gradle.org/distributions/gradle-2.6-bin.zip

Среда разработки

Теперь нам нужно установить Forge, который при установке также произведёт декомпиляцию и деобфускацию кода Minecraft, чтобы сразу можно было начать создание модификации. Для этого необходимо установить Java Development Kit (JDK), скачав с официального сайта Oracle. При этом JDK должен быть одной версии с Java(JRE)

При первой установке JDK проверьте, чтобы у вас в ⊞ Win+PauseBreak->Дополнительные параметры->Переменные среды: в JAVA_HOME указан путь к папке c JDK (по-умолчанию: «C:\Program Files\Java\jre1.8.0_241») и в Path был указан путь к bin-папке JDK после точки с запятой (по-умолчанию: «C:\Program Files\Java\jdk1.8.0_241\bin»).

Затем необходимо выполнить одну из следующих команд (замените eclipse на idea, если вы используете IntelliJ IDEA):

Первая предпочтительней, так как в отличие от второй команды, подготавливает рабочее пространство с возможностью просмотра исходного кода Minecraft во время разработки. То есть вы всегда сможете посмотреть, как работает генерация мира, анимация движений, применение эффектов и т. д. Таким образом можно создавать модификации, не опираясь на руководства, которых может и не быть на конкретную цель.

Если вы являетесь пользователем операционной системы Linux, нужно прописать следующие строки в терминале:

Чтобы выполнить команду, можно создать в папке .bat-файл с выбранной вами командой (но обычно он там уже есть) и запустить его. Также вместо всего этого можно запустить командную строку в этой папке (например, нажать ⇧ Shift+ПКМ по этой папке и выбрать «Открыть окно команд») и выполнить выбранную команду.

Выполнение команды займёт какое-то время, после чего должно появиться сообщение рода Build Successful.

Пример результата выполнения команды:[1]
gradlew.bat setupDecompWorkspace eclipse

Если же появляется какая-либо ошибка:

Настройка Eclipse

Нужно настроить Eclipse для работы с Minecraft. Первым делом зайдите в него. Он предложит выбрать рабочую директорию (Workspace). Введите туда путь к папке «eclipse» в папке (Путь к папке должен содержать только английские буквы), куда вы распаковали содержимое Forge и поставьте галочку для того чтоб окно больше не появлялось. В примере это «D:\MCModding\eclipse». Если всё прошло успешно, то слева в Eclipse вы увидите раскрывающееся меню Minecraft, а снизу не увидите красных ошибок.

Интерфейс Eclipse после правильной установки.

Настройка IntelliJ IDEA

Если вместо Eclipse Вы решили использовать IntelliJ IDEA, то после того как вы установите ее, в стартовом окне в правом нижнем углу нажмите на кнопку "Configure", откройте вкладку "Project Defaults" и выберите пункт "Project Structure" или в главном меню нажмите комбинацию клавиш (Ctrl+Alt+Shift+S).

Стартовая страница IntelliJ IDEA

В открывшемся окне нажмите на красную надпись "No SDK", для контекстного меню и выберите пункт с вашей версией JDK. (Если же в меню нет вашей версии JDK нажмите "Add SDK" и укажите путь. В нашем случае это C:\Program Files\Java\jdk1.8.0_241 )

IntelliJ IDEA .png

После этого можно воспользоваться двумя способами:

Первый способ:

После того, как Forge скомпилирован и установлен, необходимо запустить IDEA, и в появившемся окне нажать 'Import Project'. После чего выбираем в папке «D:\MCModding» файл build.gradle. В появившемся окне Вам предложат выбрать способ компиляции (рекомендуется оставить значение Use default gradle wrapper.) В строчке ниже выберите Ваш JAVA_HOME. В пункте «Формат проекта» нужно обязательно выбрать «.ipr (file based)». В противном случае, придётся подключать все библиотеки и настраивать запуск самостоятельно. После всего этого нажмите OK. Ждите, пока сборка скомпилируется.

В случае, если ваша IntelliJ IDEA установлена правильно и она различает формат *.ipr, вы можете просто дважды нажать по файлу <НазваниеПроекта>.ipr в директории вашего MCP. IDEA все сделает за вас.

Второй способ:

После того, как вы распаковали файлы в «D:\MCModding», сразу запускайте IntelliJ IDEA. В появившемся окне нажать 'Import Project'. После чего выбираем в папке «D:\MCModding» файл build.gradle.

Если IDEA указывает на старую версию Gradle, нужно обновить ее на более новую. Для этого запустите консоль с директорией к папке с Forge (щелкните ⇧ Shift+ПКМ по папке с Forge > Открыть консоль команд) и выполните следующую команду:

Список всех версий можно посмотреть на официальном сайте.

Потребуется подождать пару минут, пока среда разработки полностью все выполнит и импортирует. После завершения процесса откройте меню "View" в верхней части экрана и выберите пункты "Tools Windows > Gradle". У вас откроется окно с Gradle задачами. Переходим в раздел Tasks > forgegradle.

Окно с Gradle задачами

Окно Gradle

Выполните task setupDecompWorkspace. После его выполнения запустите genIntellijRuns

Готово. Мы проделали все то же самое, что и в первом способе, только без использования консоли, а это может быть большим плюсом для новичков.

Запуск

После выполнения выше перечисленных действий, в верхней части экрана перейдите в раздел "Run" и выберите пункт "Run configurations". По очереди выберите "Minecraft Client" и "Minecraft Server" и уже в правой части окна, в раскрывающемся списке "Use classpath of module" выберите тот пункт, который заканчивается на _main. Теперь вы можете запустить клиент или сервер и удостовериться, что все работает.

Настройка запуска

Поздравляем! Вы успешно настроили среду для того, чтобы начать писать модификации при помощи нее.

Основные уроки

  1. Директория Eclipse (Установка среды)
  2. Главный класс
  3. Блок
  4. Предмет
  5. Крафт
  6. Компиляция
  7. Генерация
  8. Прокси и инстанция
  9. Моб

Дополнительные уроки

  1. Локализация названий в игре
  2. Дроп определённого предмета при разрушении блока
  3. Разносторонняя текстура блока
  4. Собственная вкладка в Творческом режиме
  5. Обновление Forge
  6. Обновление ForgeGradle
  7. Свой материал для инструмента
  8. Создание брони
  9. Свой материал для брони
  10. Генерация предметов в контейнерах натуральных структур
  11. Атрибуты для моба
  12. Интеллект для моба
  13. Свой скин при моддинге

Примечания

  1. При первом выполнении лог может быть длиннее.
В данной статье используются материалы из статьи «Создание модификаций с помощью Forge/1.7+» с вики-сайта Minecraft Wiki, расположенного на Фэндоме, и они распространяются согласно лицензии Creative Commons Attribution-Share Alike. Авторы статьи.