Гайд Создание Intellij Ready src

Начинающий
Статус
Оффлайн
Регистрация
28 Июл 2020
Сообщения
53
Реакции[?]
2
Поинты[?]
2K

Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:

  • бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
  • маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
  • приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
  • обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.

Спасибо!

Данный гайд подойдет вам в следующих случаях:
  • Если у вас каким то чудом появилась джарка forge / fabric клиента без обфускации.
  • Вы потеряли сурс своего собственного клиента и есть только скомпилированный вариант.
Конкретно в данном гайде будет описано как превратить Forge клиент не имеющий обфускации (В нашем примере PrivatBuy), для Fabric процесс аналогичен но необходимо использовать другие материалы (не предоставлю хихих).

Необходимый софт:
Загрузка софта и подготовка клиента:

Для восстановления сурса для начало нам необходимо избавиться от маппингов для чего нам необходим MinecraftDeobfuscator3000 и пакет маппингов предоставленный выше.

Теперь создадим на рабочем столе папку в которой и будем производить всю работу по восстановлению сурса, в моем случае PrivateBuy
1731038448412.png


Теперь открываем нашу папку и переносим в нее скачанные нами файлы:

  • 2D-Render-Util-1.16-forge-1.16.5
  • Font-And-Icon-Renderer-1.16-forge-1.16.5
  • Mappings
  • Minecraft-Deobfuscator3000-1.2.3
  • PrivatBuy
Потрачу чуть чуть времени на обьяснение зачем нам нужны RenderUtils и Font Renderer, открыв .jar файл мы можем лицезреть пакет dev.sxmurxy.renderutil и dev.sxmurxy.template - Это и есть наши шрифты и рендер, фиксить все классы рендера от ошибок после декомпиляции - бессмысленно, так что проще взять с гита и подкорректировать под наши задачи.

Открываем Minecraft-Deobfuscator-3000:

Открыв папку мы наблюдаем 2 файла .exe и .jar
1731039007460.png

Сначала пробуем запустить .exe, получилось - секс переходим к некст, если не получилось то запускай джарку через java -jar в консоль.

1731039085525.png

Открыв программу мы видим достаточно интуитивно понятный интерфейс, сначала выбераем кнопку с иконкой папки у первой строки и открываем наши скачанные маппинги как папку!

1731039171821.png


После выбора строка горит серым - вы на правильном пути, теперь выбираем джарку, тут нам нужна кнопочка с иконкой файла у второй строки.

1731039232604.png

Выбираем .jar файл чита который разбираем и жмем на кнопку Deobfuscate в нижней части программы.

1731039303695.png

И ждем пока не пройдет процесс деобфускации.

Собираем рендер и шрифты в одно целое.

Открываем 2D-Render-Util как Intellij Project

1731039784867.png

Теперь заходим в папку с шрифтами, идем по пути \src\main\java\dev\sxmurxy и копируем оттуда папку template,идем обратно в рендер утилс и вставляем папку в \src\main\java\dev\sxmurxy


Должна получиться вот такая картина:
1731039930998.png


Заходим в папку template и удаляем оттуда TemplateMod.java
Теперь заходим в Intellij и чистим класс RenderUtilMod нам нужно оставить только то что на скрине
1731040092385.png
На этом подготовка утилок закончена!

Идем в папку куда у нас декомпилировалась наша джарка, копируем оттуда папку examplemod и вставляем ее в папку к сурсу рендер утилок
1731040243927.png
Должно получится что-то такое. Теперь наша задача зарегистрировать наш декомпиллированный мод. Идем обратно в RenderUtilMod.java и пишем следующий код


RenderUtilMod.java:
package dev.sxmurxy.renderutil;


import examplemod.Client;
import examplemod.Key.Keys;
import examplemod.Module.imlp.WaterMark;
import examplemod.Module.imlp.telegramListener;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent;
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;

@Mod(RenderUtilMod.MOD_ID)
public class RenderUtilMod implements Wrapper {
   
    public static final String MOD_ID = "renderutil";
    public static final String FONT_DIR = "/assets/template/font/";
    public RenderUtilMod() {
        FMLJavaModLoadingContext.get().getModEventBus().addListener(this::setup);
        MinecraftForge.EVENT_BUS.register(new Keys());
        MinecraftForge.EVENT_BUS.register(new telegramListener());
        MinecraftForge.EVENT_BUS.register(new WaterMark());
    }

    private void setup(FMLCommonSetupEvent event) {
        MinecraftForge.EVENT_BUS.register(this);
        Client.startup();
    }
}
По сути на этом моменте мы почти полностью сделали риди сурс, но осталась еще пара моментов.

Заходим в папку к нашему декомпилу и копируем assets, и вставляем их в ресурсы наших рендер утилок с заменой.
1731040458387.png

На этом моменте мы уже можем попробовать запустить клиент, но скорее всего у вас будет около 10 ошибок связанных с багами декомпиляции, думаю их решение подсказывать не надо поскольку для этого нужны чисто базовые знания Java core.

На этом все! В данном гайде мы разобрали как можно перевести Forge модификацию в сурс.

Данный гайд подойдет для новичка который вообще не смыслит в том как происходит декомпиляция и подобное, если найдете какие то ошибки - пишите исправлю поскольку гайд писался в 7 утра а я еще не ложился. Всем пакааа<3
 

Вложения

Начинающий
Статус
Оффлайн
Регистрация
14 Окт 2024
Сообщения
5
Реакции[?]
0
Поинты[?]
0
Данный гайд подойдет вам в следующих случаях:
  • Если у вас каким то чудом появилась джарка forge / fabric клиента без обфускации.
  • Вы потеряли сурс своего собственного клиента и есть только скомпилированный вариант.
Конкретно в данном гайде будет описано как превратить Forge клиент не имеющий обфускации (В нашем примере PrivatBuy), для Fabric процесс аналогичен но необходимо использовать другие материалы (не предоставлю хихих).

Необходимый софт:
Загрузка софта и подготовка клиента:

Для восстановления сурса для начало нам необходимо избавиться от маппингов для чего нам необходим MinecraftDeobfuscator3000 и пакет маппингов предоставленный выше.

Теперь создадим на рабочем столе папку в которой и будем производить всю работу по восстановлению сурса, в моем случае PrivateBuy
Посмотреть вложение 289862


Теперь открываем нашу папку и переносим в нее скачанные нами файлы:

  • 2D-Render-Util-1.16-forge-1.16.5
  • Font-And-Icon-Renderer-1.16-forge-1.16.5
  • Mappings
  • Minecraft-Deobfuscator3000-1.2.3
  • PrivatBuy
Потрачу чуть чуть времени на обьяснение зачем нам нужны RenderUtils и Font Renderer, открыв .jar файл мы можем лицезреть пакет dev.sxmurxy.renderutil и dev.sxmurxy.template - Это и есть наши шрифты и рендер, фиксить все классы рендера от ошибок после декомпиляции - бессмысленно, так что проще взять с гита и подкорректировать под наши задачи.

Открываем Minecraft-Deobfuscator-3000:

Открыв папку мы наблюдаем 2 файла .exe и .jar
Посмотреть вложение 289863

Сначала пробуем запустить .exe, получилось - секс переходим к некст, если не получилось то запускай джарку через java -jar в консоль.

Посмотреть вложение 289864

Открыв программу мы видим достаточно интуитивно понятный интерфейс, сначала выбераем кнопку с иконкой папки у первой строки и открываем наши скачанные маппинги как папку!

Посмотреть вложение 289865


После выбора строка горит серым - вы на правильном пути, теперь выбираем джарку, тут нам нужна кнопочка с иконкой файла у второй строки.

Посмотреть вложение 289866

Выбираем .jar файл чита который разбираем и жмем на кнопку Deobfuscate в нижней части программы.

Посмотреть вложение 289867

И ждем пока не пройдет процесс деобфускации.

Собираем рендер и шрифты в одно целое.

Открываем 2D-Render-Util как Intellij Project

Посмотреть вложение 289868

Теперь заходим в папку с шрифтами, идем по пути \src\main\java\dev\sxmurxy и копируем оттуда папку template,идем обратно в рендер утилс и вставляем папку в \src\main\java\dev\sxmurxy


Должна получиться вот такая картина:
Посмотреть вложение 289870


Заходим в папку template и удаляем оттуда TemplateMod.java
Теперь заходим в Intellij и чистим класс RenderUtilMod нам нужно оставить только то что на скрине
Посмотреть вложение 289871
На этом подготовка утилок закончена!

Идем в папку куда у нас декомпилировалась наша джарка, копируем оттуда папку examplemod и вставляем ее в папку к сурсу рендер утилок
Посмотреть вложение 289872
Должно получится что-то такое. Теперь наша задача зарегистрировать наш декомпиллированный мод. Идем обратно в RenderUtilMod.java и пишем следующий код


RenderUtilMod.java:
package dev.sxmurxy.renderutil;


import examplemod.Client;
import examplemod.Key.Keys;
import examplemod.Module.imlp.WaterMark;
import examplemod.Module.imlp.telegramListener;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent;
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;

@Mod(RenderUtilMod.MOD_ID)
public class RenderUtilMod implements Wrapper {
  
    public static final String MOD_ID = "renderutil";
    public static final String FONT_DIR = "/assets/template/font/";
    public RenderUtilMod() {
        FMLJavaModLoadingContext.get().getModEventBus().addListener(this::setup);
        MinecraftForge.EVENT_BUS.register(new Keys());
        MinecraftForge.EVENT_BUS.register(new telegramListener());
        MinecraftForge.EVENT_BUS.register(new WaterMark());
    }

    private void setup(FMLCommonSetupEvent event) {
        MinecraftForge.EVENT_BUS.register(this);
        Client.startup();
    }
}
По сути на этом моменте мы почти полностью сделали риди сурс, но осталась еще пара моментов.

Заходим в папку к нашему декомпилу и копируем assets, и вставляем их в ресурсы наших рендер утилок с заменой.
Посмотреть вложение 289873

На этом моменте мы уже можем попробовать запустить клиент, но скорее всего у вас будет около 10 ошибок связанных с багами декомпиляции, думаю их решение подсказывать не надо поскольку для этого нужны чисто базовые знания Java core.

На этом все! В данном гайде мы разобрали как можно перевести Forge модификацию в сурс.

Данный гайд подойдет для новичка который вообще не смыслит в том как происходит декомпиляция и подобное, если найдете какие то ошибки - пишите исправлю поскольку гайд писался в 7 утра а я еще не ложился. Всем пакааа<3
1. Куча важных моментов упущена - что делать если что-то пойдет не так фруз как обычно не сказал
 
Начинающий
Статус
Оффлайн
Регистрация
28 Июл 2020
Сообщения
53
Реакции[?]
2
Поинты[?]
2K
1. Куча важных моментов упущена - что делать если что-то пойдет не так фруз как обычно не сказал
Очень много вариантов как что может произойти, это не полноценный туториал как в сурсы клиент вернуть а просто демонстрация того как это делаю я
 
Сверху Снизу