Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hummel009/legendary-item
Мод "Legendary Item" для Minecraft 1.3.2 - 1.21.1
https://github.com/hummel009/legendary-item
fabric forge game gradle java minecraft minecraft-mod mod
Last synced: 1 day ago
JSON representation
Мод "Legendary Item" для Minecraft 1.3.2 - 1.21.1
- Host: GitHub
- URL: https://github.com/hummel009/legendary-item
- Owner: Hummel009
- License: gpl-3.0
- Created: 2020-07-09T18:23:31.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-10-27T19:10:43.000Z (19 days ago)
- Last Synced: 2024-10-27T23:38:41.409Z (19 days ago)
- Topics: fabric, forge, game, gradle, java, minecraft, minecraft-mod, mod
- Language: Java
- Homepage:
- Size: 40.1 MB
- Stars: 3
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Legendary Item - простенький мод, который добавляет множество артефактов "Властелина колец" в Minecraft. В основном это
оружие, а также аркенстон и сильмарилль. Почти все оружия имеют особый рендеринг: в инвентаре они имеют одну текстуру, а
в руке от первого и третьего лица - другую, увеличенную. Так оружие смотрится эпичнее. Мод рассматривается как
тематические дополнение к моду "Властелин колец", хотя мод независим и не требует установки каких-либо других модов.## Общая информация
Этот репозиторий обладает сложной иерархией. Он содержит:
* Актуальный проект, состоящий из 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` и так далее.### Установка нужных версий JDK
У вас на компьютере уже могут находиться установленные JRE или JDK, но мы будем исходить из худшего и скачаем новые.
* Запустите IntelliJ IDEA.
* Нажмите сочетание клавиш `Ctrl + Alt + Shift + S`.
* В открывшемся окне в списке параметров слева нажмите `SDKs`. Сверху нажмите `+`, `Download JDK`.
* В открывшемся окне выберите вендора `Eclipse Temurin`, а версию `21`. Нажмите `Download`.`Версия `21` выбрана неслучайно — на момент 2024 года это самая новая из LTS-версий Java. В долгосрочной перспективе её
брать лучше всего.Если всё сделано правильно, то вы должны увидеть скачанную JDK в папке пользователя. В моём случае,
это `C:\Users\Hummel009\.jdks`.### Конфигурация переменных сред Windows
У вас на компьютере уже могут быть сконфигурированы другие JRE и JDK. Чтобы не было конфликтов, мы удалим все старые
настройки и поставим новые.* Нажмите `Win + R` и введите `systempropertiesadvanced`. Нажмите `OK`.
* В открывшемся окне нажмите `Переменные среды`.
* В открывшемся окне вы увидите два раздела - переменные среды для пользователя и для системы.
* Проверьте оба раздела на наличие там переменной с названием `JAVA_HOME`.
* Если она есть, дважды кликните по ней ЛКМ и введите в значение путь к скачанной ранее JDK. В моём случае,
это `C:\Users\Hummel009\.jdks\temurin-21`.
* Если её нет, создайте там переменную с таким именем и введите значение, как в пункте выше.
* Если их несколько, удалите все, кроме одной, а оставшуюся настройте, как в пункте выше.
* Проверьте оба раздела на наличие там переменной с названием `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`.### Voldeloom
Современный плагин для моддинга под 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`.### RetroFuturaGradle
Современный плагин для моддинга под 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`.### Essential Loom
Современный плагин для моддинга под Forge на относительно старых версиях Minecraft. Самые важные функции:
* Запуск клиента из среды здесь осуществляется кнопкой с зелёным треугольником в верхней части окна.
* Запуск локального сервера из среды тоже осуществляется кнопкой с зелёным треугольником в верхней части окна. К нему
можно подключиться из клиента, введя в качестве адреса `localhost`.
* Если подключиться не получилось, проверьте, чтобы сервер работал не в защищённом режиме. Для этого в папке
`папка_проекта/run/server.properties` найдите строчку `online-mode` и укажите ему значение `false`.
* Компиляция мода в файл с расширением `.jar` осуществляется в папке проекта посредством двойного нажатия ЛКМ на
файл `build.bat`. После компиляции ваш мод появится в папке `папка_проекта/build/libs`.### ForgeGradle 6.X
Новейший плагин для моддинга под 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`.
* Компиляция мода в файл с расширением .jar: `Меню Gradle -> Tasks -> build -> build`. После компиляции ваш мод появится
в папке `папка_проекта/build/libs`.### NeoGradle
Новейший плагин для моддинга под 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`.
* Компиляция мода в файл с расширением .jar: `Меню Gradle -> Tasks -> build -> build`. После компиляции ваш мод появится
в папке `папка_проекта/build/libs`.### FabricLoom
Новейший плагин для моддинга под Fabric на новых версиях Minecraft. Самые важные функции:
* Запуск клиента из среды: `Меню Gradle -> Tasks -> fabric -> runClient`.
* Запуск локального сервера из среды: `Меню Gradle -> Tasks -> fabric -> runServer`. К нему можно подключиться
из клиента, введя в качестве адреса `localhost`.
* Первый запуск сервера будет неудачным, потому что не подписано соглашение EULA. После неудачного запуска откройте
папку `папка_проекта/run/eula.txt` и замените `false` на `true`.
* Если подключиться не получилось, проверьте, чтобы сервер работал не в защищённом режиме. Для этого в папке
`папка_проекта/run/server.properties` найдите строчку `online-mode` и укажите ему значение `false`.
* Компиляция мода в файл с расширением .jar: `Меню Gradle -> Tasks -> build -> build`. После компиляции ваш мод появится
в папке `папка_проекта/build/libs`.