Скачиваем Forge Src, и распаковываем в удобное нам место. После заходим в папочку forge и запускаем install.cmd. Дальше он все сделает за нас. Скачает MCP, Minecraft и декомпилирует его. Как по мне, сделали очень удобно, убраны лишние действия, как было в ранних версиях.
После этого, делаем все как раньше. Запускаем Eclipse и выбираем начальный «Workspace». Вот такой был путь у меня E:Modingforgemcp, у вас должен быть схожий. Думаю разберетесь. И да, не забудьте поменять [JavaSE-1.6] на [JavaSE-1.7], все это делается так.
Нажимаем правой кнопкой на «JRE System Library» далее вылетает контекстное меню и там вы нажимаете на «Properties». Дальше сами разберетесь.
Нажимаем правой кнопкой по src, потом New->Package, пишем имя, у меня будет net.testmod.mod. Создали папку, теперь создаем базу правой кнопкой по net.testmod.mod и New->Class, называем его, у меня будет testbase.java
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.EventHandler;
Создаем сервер майнкрафт с модами на ядре forge!
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.event.FMLServerStartingEvent;
import cpw.mods.fml.common.network.NetworkMod;
Текстуры пихать туда: forgemcpsrcminecraftassetstestbasetexturesblocks
В нашем файле testbase
После надписи:
public class testbase
Вписываем вот такую строку:
public static Item TestItem;
Разбор:
public static Item «TestItem» — testItem название нашего предмета в коде( не в игре)
package net.testmod.mod;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.util.List;
import net.minecraft.client.renderer.texture.IconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagString;
import net.minecraft.util.EnumChatFormatting;
import net.minecraft.util.StatCollector;
import net.minecraft.world.World;
Теперь разберём безформенный крафт, в котором не надо соблюдать позиций предметов так же как и в крафте миски с супом:
GameRegistry.addShapelessRecipe(new ItemStack(testbase.TestBlock, 1), new Object[] );
Тут всё ещё проще:
Мы просто указываем что нужно скинуть в верстак.
Теперь перейдём к печке:
GameRegistry.addSmelting(Block.dirt.blockID, new ItemStack(testblock.TestBlock, 1), 1.0F);
(Block.dirt.blockID, new ItemStack(TutBase.TutBlock, 1)
Тут сказанно что мы плавим обычную землю в наш TestBlock и получаем из 1 земли 1 TestBlock.
1.0F
Это кол-во опыта за переплавку.
Ну вот и всё, успехов в моддинге!
📘 КАК УСТАНОВИТЬ И СКАЧАТЬ FORGE НА ЛИЦЕНЗИЮ МАЙНКРАФТ?
Источник: www.minezone.pro
Forge-воркспейс для разработки модов на 1.7.10/1.12.2
Штош, в данной теме хотелось бы представить вашему вниманию пару базовых сетапов воркспейса для разработки модов с Forge, для 1.7.10 и 1.12.2 соответственно. Идея их — расширить и исправить официальные аналоги, поставляемые Forge. На текущий момент они размещены в публичном доступе на Github, где я их, к тому же, периодически обновляю:
Если вы соизволите пройтись до репозитория и почитать англоязычный README-файлик интересующего вас сетапа, то в принципе вся остальная информация в этом подобии гайда вам не очень-то и нужна. Но если вы всё-таки не соизволите, или хочется побольше деталей — их я сейчас и попытаюсь изложить.
Forge Workspace Setup: Standalone 1.7.10
Облагороженная и исправленная версия последнего официального сетапа, скачать который можно тут. На текущий момент официальная версия более не работает в стандартной конфигурации, ввиду изменений на репозиториях Forge. Наша кастомная версия включает исправления этой самой конфигурации, и немного расширяет сам концепт.
Спойлер: Ну давай посмотрим шо там имеется
- Используется кастомная версия ForgeGradle. Обеспечивает компатибельность с Gradle 5.+, исправляет целый ряд багов и даже имеет дополнительные фичи. Подробнее о ней будет отдельно чуть ниже;
- Используется кастомный maven-репозиторий для подключения всех базовых зависимостей;
- Билдскрипт по дефолту устанавливает совместимость с Java 8 и UTF-8 кодировку для всех файлов.
- По дефолту используется Gradle 5.6.4;
- Билдскрипт содержит таски для сборки dev и sources артефактов мода, и автоматически выполняет их при выполнении команды gradlew build ;
- Все данные в файле mcmod.info заполняются при копировании в процессе билдинга. Служит как демонстрация возможности расширения текстовых файлов при билдинге, а также в качестве примера объявления свойств в gradle.properties ;
- Пример подключения другого мода в качестве зависимости к проекту, в виде локального файла.
- В главном классе создаётся базовый логгер;
- Включает пример регистрации SimpleNetworkWrapper ‘а, а также пример пакета, который сервер отсылает каждому клиенту при входе. При получении выводит сообщение в чат игроку, чисто чтобы показать, что пакет успешно достиг точки назначения;
- Имеет единственный метод, взаимодействующий с Baubles — BaublesHelper#hasEquipped . Служит в качестве демонстрации что наш пример с зависимостью от локального модфайла, которым в данном случае является модфайл Baubles, действительно работает;
- Версия мода в главном классе ( ExampleMod.VERSION ) определена как токен, который автоматически заменяется версией проекта при сборке;
- Включает базовую реализацию CommonProxy/ClientProxy , которая также служит как пример имплементации IGuiHandler ;
- Включает базовый обработчик событий, с единственным ресивером для события EntityJoinWorldEvent ;
- Демонстрирует как создать файл конфигурации с использованием предоставляемой кузней Configuration ;
- Создаёт кастомную вкладку в креативном инвентаре.
- Убедитесь что у вас установлена JDK 8 (не просто JRE), и что переменная JAVA_HOME задана в вашей системе, указывая на расположение этой самой JDK;
- Скачайте сетап в качестве архива (клац), создайте папку, которая послужит воркспейсом для вашего конкретного мода, и распакуйте туда содержимое папки ForgeWorkspaceSetup-1.7.10-standalone из архива;
- Откройте в этой папке командную строку, и выполните команду gradlew setupDecompWorkspace . По завершению выполните специфичную для вашей IDE команду, которая сгенирует проект под эту самую IDE — gradlew eclipse или gradlew idea ;
- Если используете Eclipse, не забудьте что воркспейс нужно открыть выбрав папку eclipse внутри папки с воркспейсом в качестве расположения Eclipse-воркспейса. Если используете Idea. не знаю, вам виднее как быть;
- Как будет нужда, используйте gradlew build для сборки .jar-файла с вашим модом. По завершению выполнения он очутится в папке build/libs вашего воркспейса.
Forge Workspace Setup: Standalone 1.12.2
Ещё одна облагороженная и исправленная версия, но уже для 1.12.2; последняя официальная версия — тут. Критических исправлений здесь не так густо, но без кастомного форка ForgeGradle уже не обошлось. Хотя в отличии от 1.7.10, 1.12.2 сейчас является основным приоритетом инициативы RetroGradle, направленной на поддержание работоспособности старых версий Forge (за дополнительной информацией — сюда), на фоне богатой истории косяков полагаться на ребят из кузни уже не особо хочется. Да и концепт всегда есть куда расширить.
Спойлер: Ну давай посмотрим шо там имеется
- По дефолту используется Gradle 4.9.0;
- Используется кастомный форк ForgeGradle 2.3. Хотя ForgeGradle 3.+ уже частично поддерживает проекты на 1.12.2, в нём отсутствует враппер GradleStart , который на версиях 1.12.2 и ранее выполняет функции поиска и загрузки кормодов на classpath’е. Без него кормоды эффективно неспособны загружаться в среде разработки, что является критической проблемой для многих проектов;
- По дефолту установлены маппинги mcp_stable_39 , зарекомендовавшие себя как лучшее доступное для 1.12 издание;
- Возвращена папка eclipse с её встроенным воркспейсом и конфигурациями запуска для Eclipse-проектов;
- Установлена UTF-8 кодировка для всех файлов;
- Билдскрипт содержит таски для сборки dev и sources артефактов мода, и автоматически выполняет их при выполнении команды gradlew build ;
- Все данные в файле mcmod.info заполняются при копировании в процессе билдинга. Служит как демонстрация возможности расширения текстовых файлов при билдинге, а также в качестве примера объявления свойств в gradle.properties ;
- Пример подключения другого мода в качестве зависимости к проекту, в виде локального файла.
- В главном классе создаётся базовый логгер;
- Включает пример регистрации SimpleNetworkWrapper ‘а, а также пример пакета, который сервер отсылает каждому клиенту при входе. При получении выводит сообщение в чат игроку, чисто чтобы показать, что пакет успешно достиг точки назначения;
- Имеет единственный метод, взаимодействующий с Baubles — BaublesHelper#hasEquipped . Служит в качестве демонстрации что наш пример с зависимостью от локального модфайла, которым в данном случае является модфайл Baubles, действительно работает;
- Версия мода в главном классе ( ExampleMod.VERSION ) определена как токен, который автоматически заменяется версией проекта при сборке;
- Включает базовую реализацию CommonProxy/ClientProxy , которая также служит как пример имплементации IGuiHandler ;
- Включает базовый обработчик событий с парой ресиверов;
- Демонстрирует как создать файл конфигурации с использованием предоставляемой кузней Configuration ;
- Создаёт кастомную вкладку в креативном инвентаре.
- Убедитесь что у вас установлена JDK 8 (не просто JRE), и что переменная JAVA_HOME задана в вашей системе, указывая на расположение этой самой JDK;
- Скачайте сетап в качестве архива (клац), создайте папку, которая послужит воркспейсом для вашего конкретного мода, и распакуйте туда содержимое папки ForgeWorkspaceSetup-1.12.2-standalone из архива;
- Откройте в этой папке командную строку, и выполните команду gradlew setupDecompWorkspace . По завершению выполните специфичную для вашей IDE команду, которая сгенирует проект под эту самую IDE — gradlew eclipse или gradlew idea ;
- Если используете Eclipse, не забудьте что воркспейс нужно открыть выбрав папку eclipse внутри папки с воркспейсом в качестве расположения Eclipse-воркспейса. Если используете Idea. не знаю, вам виднее как быть;
- Как будет нужда, используйте gradlew build для сборки .jar-файла с вашим модом. По завершению выполнения он очутится в папке build/libs вашего воркспейса.
Повесть о кастомных форках ForgeGradle:
Многим из вас, вероятно, уже доводилось сталкиваться с проблемами в работе последней официальной версии ForgeGradle 1.2. Если нет, можете почитать вот этот тред: Разобраться с forge
Пару примеров из собственной практики:
Причина у всех этих проблем одна — огромный болт, который Forge традиционно кладут на поддержку старых версий. Справедливости ради, их конечно тоже можно понять; да и с появлением инициативы RetroGradle появилась и надежда, что когда-то её длань дойдёт и до версии 1.7.10. Но так как всем нам нужно делать свою работу, и едва ли мы можем позволить себе сидеть сложа руки, блаженно предаваясь светлым надеждам — придётся как-то справляться с этим самим.
Используемый в 1.7.10 сетапе форк ForgeGradle, который я пассивно мейнтейню уже какое-то время, представляет собой одно из возможных решений. Поглядеть на него вы можете здесь: juanmuscaria/ForgeGradle
- Внесён ряд изменений для совместимости с Gradle 5.+. К сожалению, ввиду этих изменений утрачена совместимость с граблями третьей и более ранних версий; но судя по тестам, с четвёртыми всё ещё работает исправно. Имейте ввиду, что Gradle 6.+ также не поддерживается;
- Исправлены встроенные ссылки на ряд репозиториев и артефактов, из-за которых в некоторых случаях фейлился сетап проекта (как на скринах выше);
- Исправлен нерабочий линк на versions.json при проверке маппингов, и добавлен репозиторий MCP Archive для обеспечения их доступности в будущем;
- Слегка костыльные поправки, вносимые в файл .classpath при генерации Eclipse-проекта. Исправляет проблемы с дубликацией указаний путей к папкам исходников/ресурсов;
- Кэш ресурсов и скомпилированных классов чистится перед каждой компиляцией. Исправляет «застревание» удалённых классов и замещённых токенов при билдинге;
- Используется исправленная версия jAstyle, устраняющая проблему с избыточными табами в статических внутренних классах;
- Привязываемые к рекомпилированному артефакту со сплавленным кодом Minecraft/Forge исходники форматируются в соответствии с Java-конвенциями (а не C#-конвенциями, как раньше).
- Исправлен нерабочий линк на versions.json при проверке маппингов, и добавлен репозиторий MCP Archive для обеспечения их доступности в будущем;
- Убрано предупреждение об использовании устаревшей версии ForgeGradle с просьбой мигрировать на ForgeGradle 5 (так как ни одна версия FG выше второй до сих пор не имеет полной совместимости с 1.12);
- Исправлено предупреждение вида «This mapping stable_39 was designed for MC 1.12! Use at your own peril» в случае маппингов для 1.12, так как все версии маппингов доступные на 1.12.2 имеют целевую версию 1.12;
- Убрана автогенерация .launch -конфигураций при выполнении таска gradlew eclipse , так как необходимость в них устраняется присутствием папки eclipse в сетапе.
Автор Aizistral Просмотры 6,755 Первый выпуск 19 Июл 2021 Обновление 22 Янв 2022 Оценка 0.00 звёзд 0 оценок
Источник: forum.mcmodding.ru
Скачать Minecraft Forge
Важнейший мод, позволяющий устанавливать многие другие моды, а так же создавать свои собственные. Minecraft Forge помогает избежать конфликтов между другими существующими модами.
Если ты собираешься устанавливать в игру различные моды (а ты, наверняка, рано или поздно, захочешь это сделать), скачай Minecraft Forge для своей версии Minecraft на этой страничке.
Подробнее о том, как установить Minecraft Forge ты всегда сможешь прочитать на этой странице
Скачать Minecraft Forge для различных версий игры:
Minecraft Forge 1.7.10
[wpfilebase tag=file tpl=simple /]
Minecraft Forge 1.7.2
[wpfilebase tag=file tpl=simple /]
Minecraft Forge 1.6.4
[wpfilebase tag=file tpl=simple /]
Minecraft Forge 1.5.2
[wpfilebase tag=file tpl=simple /]
Источник: how-minecraft.ru