Dirt Tools and Armor Reduced Strength (modified version of Dirt Tools and Armor mod specifically for Minecraft 1.7.10)
This mod was created (or, more accurately, altered) for use in my modpack Perfect Guy Craft, which is currently unreleased. The purpose of these alterations is to make the mod more realistic and fair. Originally, this mod was essentially a "cheat mod," with tools and armor that were stronger than their diamond counterparts. In this version, however, it's exactly what you'd expect: dirt tools are now even weaker than their wooden equivalents, and dirt armor is worse than leather! Once the mod is finished, it should function properly on its own and I will post a release here, as well as on CurseForge and Modrinth.
Special thanks to Hummel009 for allowing me to do this and helping me figure it out along the way. This would not be possible without him!
Dirt Tools and Armor - простенький мод, о котором мечтал каждый. Он добавляет меч, сет брони и инструменты из земли. Все предметы могут быть скрафчены в выживании и имеют характеристики алмазных.
Этот репозиторий обладает сложной иерархией. Он содержит:
- Актуальный проект, состоящий из 3 модулей (appForge, appFabric и appNeoForge). В этом случае папкой проекта является весь репозиторий целиком.
- Архивный проект Forge, состоящий из 14 модулей (1.3.2 - 1.20.6). В этом случае папкой проекта является папка appForgeArchive.
- Архивный проект Fabric, состоящий из 7 модулей (1.14.4 - 1.20.6). В этом случае папкой проекта является папка appFabricArchive.
- Архивный проект NeoForge, состоящий из 1 модуля (1.20.6). В этом случае папкой проекта является папка appNeoForgeArchive.
Так было сделано для более гибкой и легковесной работы без необходимости прогружать всё сразу.
| Версия Minecraft | Плагин сборки | JDK | Syntax |
|---|---|---|---|
| 1.3.2 - 1.6.4 | Voldeloom | 11 | 6 |
| 1.7.10 | RetroFuturaGradle | 8 | 8 |
| 1.8.9 - 1.12.2 | Essential Loom | 8 | 8 |
| 1.13.2 - 1.16.5 | ForgeGradle 6.X; FabricLoom | 8 | 8 |
| 1.17.1 | ForgeGradle 6.X; FabricLoom | 16 | 16 |
| 1.18.2 - 1.19.4 | ForgeGradle 6.X; FabricLoom | 17 | 17 |
| 1.20.6 и новее | ForgeGradle 6.X; FabricLoom; NeoGradle | 21 | 21 |
- Плагин сборки - инструментарий, который используется для работы с определённой версией игры. Принципы работы везде похожи, но отличия имеются. Об этом подробнее будет сказано ниже.
- JDK - это Java, которая нужна для работы с модом на этой версии игры: ею запускается игра, ею компилируется код. Она зависит от Mojang и менять её нельзя.
- Syntax - синтаксис Java, используемый в файлах с кодом. Программист не должен использовать синтаксис более новой версии, чем указан в таблице. Более старый - можно, но зачем?
Очевидно, что JDK и Syntax почти всегда совпадают, кроме версий с плагином Voldeloom. JDK 6 слишком стара для удобной работы с ней в 2024 году, поэтому Voldeloom использует JDK 11 с компиляцией в байткод 6.
Important
Раздел написан для новичков - пошагово и с расчётом на то, что на компьютере ничего не настроено и не установлено.
Первым делом нужно скачать репозиторий и разархивировать его в любое место на диске. Если всё сделано правильно, вы
должны увидеть несколько папок: appForge, appFabric и так далее.
У вас на компьютере уже могут находиться установленные JRE или JDK, но мы будем исходить из худшего и скачаем новые.
- Запустите IntelliJ IDEA.
- Нажмите сочетание клавиш
Ctrl + Alt + Shift + S. - В открывшемся окне в списке параметров слева нажмите
SDKs. Сверху нажмите+,Download JDK. - В открывшемся окне выберите вендора
Eclipse Temurin, а версию21. НажмитеDownload.`
Версия 21 выбрана неслучайно — на момент 2024 года это самая новая из LTS-версий Java. В долгосрочной перспективе её
брать лучше всего.
Если всё сделано правильно, то вы должны увидеть скачанную JDK в папке пользователя. В моём случае,
это C:\Users\Hummel009\.jdks.
У вас на компьютере уже могут быть сконфигурированы другие JRE и JDK. Чтобы не было конфликтов, мы удалим все старые настройки и поставим новые.
- Нажмите
Win + Rи введитеsystempropertiesadvanced. НажмитеOK. - В открывшемся окне нажмите
Переменные среды. - В открывшемся окне вы увидите два раздела - переменные среды для пользователя и для системы.
- Проверьте оба раздела на наличие там переменной с названием
JAVA_HOME.- Если она есть, дважды кликните по ней ЛКМ и введите в значение путь к скачанной ранее JDK. В моём случае,
это
C:\Users\Hummel009\.jdks\temurin-21. - Если её нет, создайте там переменную с таким именем и введите значение, как в пункте выше.
- Если их несколько, удалите все, кроме одной, а оставшуюся настройте, как в пункте выше.
- Если она есть, дважды кликните по ней ЛКМ и введите в значение путь к скачанной ранее JDK. В моём случае,
это
- Проверьте оба раздела на наличие там переменной с названием
Path. Она есть у каждого пользователя и представляет собой таблицу из путей.- Проверьте все пути в обеих переменных
Pathи удалите все строчки с упоминаниемJava,Oracle,jre,jdk. - Только в одной из двух переменных
Pathсоздайте новую строку и введите в неё%JAVA_HOME%\bin.
- Проверьте все пути в обеих переменных
- Проверьте оба раздела на наличие там переменной с названием
Note
После настройки сред иногда требуется перезагрузка компьютера, а иногда нет.
Попробуйте в любом месте компьютера открыть консоль Windows и введите команду java -version. Если всё сделано
правильно, то консоль выдаст что-то такое:
openjdk version "21.0.1" 2023-10-17
OpenJDK Runtime Environment Temurin-21.0.1+9 (build 21.0.1+9)
OpenJDK 64-Bit Server VM Temurin-21.0.1+9 (build 21.0.1+9, mixed mode, sharing)
Если же что-то пошло не так, попробуйте утилиту JarFix, она работает в один клик. Если и она не помогает, то вас спасёт только чистка реестра Windows. Но это для действительно тяжёлых случаев и вообще не рекомендуется новичкам.
Будем считать, что установка прошла успешно, и можно приступать к, собственно, работе с проектом. Но для начала определимся, какой из проектов нас интересует.
Как уже было сказано ранее, весь репозиторий - это один проект; appFabricArchive - второй проект;
appForgeArchive - третий проект; appNeoForgeArchive - четвёртый проект;
Итак, в сумме мы насчитали четыре проекта. Любой из них можно отдельно открыть в IntelliJ IDEA. Собственно, в зависимости от того, какой проект вы откроете, вы сможете редактировать ту или иную версию мода.
- Если вас интересует разработка под новейшую версию, не важно, Fabric, Forge или NeoForge, ваша цель - весь репозиторий.
- Если вас интересует разработка под более старые версии на Fabric, ваша цель -
appFabricArchive. - Если вас интересует разработка под более старые версии на Forge, ваша цель -
appForgeArchive. - Если вас интересует разработка под более старые версии на NeoForge, ваша цель -
appNeoForgeArchive.
Ещё раз, в виде образца рассуждений:
- Я хочу отредактировать мод для новейшей версии. Значит, папка проекта - весь репозиторий.
- Я хочу отредактировать мод для Forge 1.3.2. Эта версия лежит в
appForgeArchive. Значит, папка проекта -appForgeArchive. - Я хочу отредактировать мод для Fabric 1.19.4. Эта версия лежит в
appFabricArchive. Значит, папка проекта -appFabricArchive.
Теперь, когда вы знаете, какая папка проекта вас интересует, осталось определить, какой плагин сборки используется для выбранной версии игры. Дальше в инструкции будет фигурировать понятие папки проекта или просто папки - это и будет та самая папка, которую вы определили в абзаце выше.
Остался финальный штрих - открыть выбранную папку в среде разработки так, чтобы она сама установила всё необходимое и была готова к работе.
- Запустите IntelliJ IDEA.
- Откройте папку проекта:
File -> Open -> [выбираете папку] -> OK.
Сразу после открытия начнётся установка среды. Если от вас потребуется разрешение на скачивание файлов, дайте его. Спустя некоторое время все необходимые файлы скачаются, и среда будет готова к работе. Процесс может быть долгим, вплоть до нескольких часов, если интернет медленный. Скачаны будут гигабайты и гигабайты инструментов — не забывайте об этом, если у вас ограниченный трафик. Школьный/университетский Wi-Fi лучше не использовать, так как там зачастую сайты, связанные с Minecraft, находятся в чёрном списке.
В конечном итоге, если всё сделано правильно, то вы увидите проект без сообщений об ошибке и с подсветкой синтаксиса в файлах с кодом.
Если же что-то пошло не так (например, пропадал интернет, или ещё что-то помешало), запустите установку ещё раз. Это
можно сделать в меню Gradle внутри IntelliJ IDEA: View -> Tool Windows -> Gradle. Там сверху слева вы увидите значок
обновления (стрелка по кругу). Альтернативный вариант — удалить репозиторий, скачать его снова и открыть снова. Не
пугайтесь: всё, что успешно скачалось, снова скачиваться не будет. «Прогресс» не сбросится.
После установки среды весь необходимый инструментарий готов к работе. Инструментарий может немного отличаться в зависимости от того, какой плагин сборки использует данная версия. Согласно таблице из первого раздела, это может быть Voldeloom, RetroFuturaGradle, Essential Loom, ForgeGradle 6.X.
Большая часть функционала располагается в меню Gradle. Меню, как уже было сказано ранее, можно открыть следующим
образом: View -> Tool Windows -> Gradle.
Современный плагин для моддинга под Forge на очень старых версиях Minecraft. Самые важные функции:
- Запуск клиента из среды:
Меню Gradle -> Tasks -> volde.run -> runClient. - Запуск локального сервера из среды:
Меню Gradle -> Tasks -> modded minecraft -> runServer. К нему можно подключиться из клиента, введя в качестве адресаlocalhost.- Если подключиться не получилось, проверьте, чтобы сервер работал не в защищённом режиме. Для этого в папке
папка_проекта/run/server/server.propertiesнайдите строчкуonline-modeи укажите ему значениеfalse. - Сервер для версий 1.5.2 и 1.6.4 не работает. Это проблема Voldeloom.
- Если подключиться не получилось, проверьте, чтобы сервер работал не в защищённом режиме. Для этого в папке
- Компиляция мода в файл с расширением
.jar:Меню Gradle -> Tasks -> build -> build. После компиляции ваш мод появится в папкепапка_проекта/build/libs. Вас интересует тот файл, который без приписки-dev.jar.
Современный плагин для моддинга под Forge на популярнейших из относительно старых версий Minecraft. Самые важные функции:
- Генерация исходного кода Minecraft:
Меню Gradle -> Tasks -> modded minecraft -> setupDecompWorkspace. Эта функция исправляет проблему, из-за которой весь ваш код горит красным цветом после установки среды. - Запуск клиента из среды:
Меню Gradle -> Tasks -> modded minecraft -> runClient. - Запуск локального сервера из среды:
Меню Gradle -> Tasks -> modded minecraft -> runServer. К нему можно подключиться из клиента, введя в качестве адресаlocalhost.- При запуске сервера в консоли будет дважды требоваться ввод согласия или несогласия с параметрами.
Do you want to start the server in online-mode? Type 'y' to do so- введитеn.Do you accept the minecraft EULA? Type 'y' to do so- введитеy.
- При запуске сервера в консоли будет дважды требоваться ввод согласия или несогласия с параметрами.
- Компиляция мода в файл с расширением .jar:
Меню Gradle -> Tasks -> build -> build. После компиляции ваш мод появится в папкепапка_проекта/build/libs. Вас интересует тот файл, который без приписки-dev.jar.
Современный плагин для моддинга под Forge на относительно старых версиях Minecraft. Самые важные функции:
- Запуск клиента из среды здесь осуществляется кнопкой с зелёным треугольником в верхней части окна.
- Запуск локального сервера из среды тоже осуществляется кнопкой с зелёным треугольником в верхней части окна. К нему
можно подключиться из клиента, введя в качестве адреса
localhost.- Если подключиться не получилось, проверьте, чтобы сервер работал не в защищённом режиме. Для этого в папке
папка_проекта/run/server.propertiesнайдите строчкуonline-modeи укажите ему значениеfalse.
- Если подключиться не получилось, проверьте, чтобы сервер работал не в защищённом режиме. Для этого в папке
- Компиляция мода в файл с расширением
.jarосуществляется в папке проекта посредством двойного нажатия ЛКМ на файлbuild.bat. После компиляции ваш мод появится в папкепапка_проекта/build/libs.
Новейший плагин для моддинга под Forge на новых версиях Minecraft. Самые важные функции:
- Запуск клиента из среды:
Меню Gradle -> Tasks -> forgegradle runs -> runClient. - Запуск локального сервера из среды:
Меню Gradle -> Tasks -> forgegradle runs -> runServer. К нему можно подключиться из клиента, введя в качестве адресаlocalhost.- Первый запуск сервера будет неудачным, потому что не подписано соглашение EULA. После неудачного запуска откройте
папку
папка_проекта/runs/server/eula.txtи заменитеfalseнаtrue. - Если подключиться не получилось, проверьте, чтобы сервер работал не в защищённом режиме. Для этого в папке
папка_проекта/runs/server/server.propertiesнайдите строчкуonline-modeи укажите ему значениеfalse.
- Первый запуск сервера будет неудачным, потому что не подписано соглашение EULA. После неудачного запуска откройте
папку
- Компиляция мода в файл с расширением .jar:
Меню Gradle -> Tasks -> build -> build. После компиляции ваш мод появится в папкепапка_проекта/build/libs.
Новейший плагин для моддинга под NeoForge на новых версиях Minecraft. Самые важные функции:
- Запуск клиента из среды:
Меню Gradle -> Tasks -> neogradle/runs -> runClient. - Запуск локального сервера из среды:
Меню Gradle -> Tasks -> neogradle/runs -> runServer. К нему можно подключиться из клиента, введя в качестве адресаlocalhost.- Первый запуск сервера будет неудачным, потому что не подписано соглашение EULA. После неудачного запуска откройте
папку
папка_проекта/runs/server/eula.txtи заменитеfalseнаtrue. - Если подключиться не получилось, проверьте, чтобы сервер работал не в защищённом режиме. Для этого в папке
папка_проекта/runs/server/server.propertiesнайдите строчкуonline-modeи укажите ему значениеfalse.
- Первый запуск сервера будет неудачным, потому что не подписано соглашение EULA. После неудачного запуска откройте
папку
- Компиляция мода в файл с расширением .jar:
Меню Gradle -> Tasks -> build -> build. После компиляции ваш мод появится в папкепапка_проекта/build/libs.
Новейший плагин для моддинга под Fabric на новых версиях Minecraft. Самые важные функции:
- Запуск клиента из среды:
Меню Gradle -> Tasks -> fabric -> runClient. - Запуск локального сервера из среды:
Меню Gradle -> Tasks -> fabric -> runServer. К нему можно подключиться из клиента, введя в качестве адресаlocalhost.- Первый запуск сервера будет неудачным, потому что не подписано соглашение EULA. После неудачного запуска откройте
папку
папка_проекта/run/eula.txtи заменитеfalseнаtrue. - Если подключиться не получилось, проверьте, чтобы сервер работал не в защищённом режиме. Для этого в папке
папка_проекта/run/server.propertiesнайдите строчкуonline-modeи укажите ему значениеfalse.
- Первый запуск сервера будет неудачным, потому что не подписано соглашение EULA. После неудачного запуска откройте
папку
- Компиляция мода в файл с расширением .jar:
Меню Gradle -> Tasks -> build -> build. После компиляции ваш мод появится в папкепапка_проекта/build/libs.