[Гайд][Легко][1.6+] Модификация чужого кода при запуске (трансфомеры)

GoogleTan

Картошка :3
1,354
43
310
На 1.15 много чего перекопали и сломалась хук либа. Порт будет? Если да, то когда его ждать?
 

will0376

Токсичная личность
2,058
55
572
Есть ли вариант обфу накинуть на хуклибу?
Пробовал прогуардом - любой пакет под обфой вызывает:
Java:
[WARNING] Can not find target method of hook AsmHook: net.minecraftforge.fml.common.Loader#<обф название метода injectData>([Ljava/lang/Object;) ->
 ru.will0376.gNgOrHHeugIepICpgpZdMAwrYhJyLHhoxNFRpRfeSQyZKTBlQlgAmVAhvCpLIibsKNaBEBgDWAcPNAwlHmQinNWJGCnOVfMfTdCTPfwLoMTrZFcbbElQWRqrTovZBEEl
 #VzKjDCtafvLEtMEFJZNRliEERwtmjdqshNBmokuakmQxgBlmhWllSDVmKxkGRmDZmCzLmBfefZuafEuMIMbwZjzdnwmHbZLdfbdlsiwiCIQdAbVEooxSDAfjGJlNcpBJ
 (Lnet/minecraftforge/fml/common/Loader;[Ljava/lang/Object;)V, ReturnCondition=NEVER, ReturnValue=VOID, InjectorFactory: gloomyfolken.hooklib.asm.HookInjectorFactory$MethodEnter, CreateMethod = false
Пока что вынес хуклибу ЗА пределы мода и обфы(но мне это пока что не подходит для прода)
 

tox1cozZ

aka Agravaine
8,454
598
2,890
Ты бы еще больше слово в маппингах сделал, бахни 512 символов, почему так мало?)
В аннотации есть параметр targetMethod, руками туда название метода впиши. Тогда при ремаппе имени метода хука ничего не сломается.
 

will0376

Токсичная личность
2,058
55
572
Ты бы еще больше слово в маппингах сделал, бахни 512 символов, почему так мало?)
пока что 128, хотел 4к сделать :D(и кстати, сделаю, когда хуки будут работать)
есть параметр targetMethod
Стоит. Но не помогло.
Я так и не пойму, откуда он net.minecraftforge.fml.common.Loader# находит?
 

tox1cozZ

aka Agravaine
8,454
598
2,890
пока что 128, хотел 4к сделать :D(и кстати, сделаю, когда хуки будут работать)
Зачем? Ты размер мода увеличиваешь в раза два как минимум этим. Обычные маппинги a b c намного лучше. В любом случае кому нужно сможет легко это снять.

Блин, фиг знает тогда. У меня вроде работало.
 

will0376

Токсичная личность
2,058
55
572
Блин, фиг знает тогда. У меня вроде работало.
вот и я удивляюсь.
1) ставлю версию без обфы - нормально грузится.
2) ставлю версию, где хуклиба вынесена за обфу - грузится
3) ставлю версию, где все под обфой - обсёр
 
5,018
47
783
Привет! Делал все как обычно, все зависимости прописал, пути тоже, в манифест прописал. Но почему то после компиляции хук работать перестает. В чем проблема?
Что надо могу скинуть.
 
5,018
47
783
В логе билда никаких ошибок, кроме ругания на русские символы в описании, нет. Все отлично билдится. Просто потом после компиляции, хук не применяется
 
5,018
47
783
Да, я понял уже. Он пишет вот, что не находит класса, что странно, так как класс есть и называется точно также.

Java:
[03:00:07] [main/WARN] [FML]: Found FMLCorePluginContainsFMLMod marker in modid-1.0.jar. This is not recommended, @Mods should be in a separate jar from the coremod.
[03:00:07] [main/ERROR] [FML]: Coremod CGMAHookLoader: Unable to class load the plugin name.of.CGMAHookLoader
java.lang.ClassNotFoundException: name.of.CGMAHookLoader
    at java.net.URLClassLoader.findClass(URLClassLoader.java:382) ~[?:1.8.0_251]
    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:117) ~[launchwrapper-1.12.jar:?]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:418) ~[?:1.8.0_251]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[?:1.8.0_251]
    at java.lang.Class.forName0(Native Method) ~[?:1.8.0_251]
    at java.lang.Class.forName(Class.java:348) ~[?:1.8.0_251]
    at net.minecraftforge.fml.relauncher.CoreModManager.loadCoreMod(CoreModManager.java:527) [forge-1.12.2-14.23.5.2847.jar:?]
    at net.minecraftforge.fml.relauncher.CoreModManager.discoverCoreMods(CoreModManager.java:451) [forge-1.12.2-14.23.5.2847.jar:?]
    at net.minecraftforge.fml.relauncher.CoreModManager.handleLaunch(CoreModManager.java:265) [forge-1.12.2-14.23.5.2847.jar:?]
    at net.minecraftforge.fml.relauncher.FMLLaunchHandler.setupHome(FMLLaunchHandler.java:107) [forge-1.12.2-14.23.5.2847.jar:?]
    at net.minecraftforge.fml.relauncher.FMLLaunchHandler.setupClient(FMLLaunchHandler.java:81) [forge-1.12.2-14.23.5.2847.jar:?]
    at net.minecraftforge.fml.relauncher.FMLLaunchHandler.configureForClientLaunch(FMLLaunchHandler.java:42) [forge-1.12.2-14.23.5.2847.jar:?]
    at net.minecraftforge.fml.common.launcher.FMLTweaker.injectIntoClassLoader(FMLTweaker.java:141) [forge-1.12.2-14.23.5.2847.jar:?]
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:115) [launchwrapper-1.12.jar:?]

bandicam 2020-08-01 11-10-57-183.jpg
 
5,018
47
783
так я наконец во многом разобрался, но в итоге класс наконец то майном был замечен, но с крашем.
Что енто такое?

Java:
[14:41:38] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.fml.common.launcher.FMLTweaker
[14:41:38] [main/INFO] [LaunchWrapper]: Using primary tweak class name net.minecraftforge.fml.common.launcher.FMLTweaker
[14:41:38] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.FMLTweaker
[14:41:38] [main/INFO] [FML]: Forge Mod Loader version 14.23.5.2847 for Minecraft 1.12.2 loading
[14:41:38] [main/INFO] [FML]: Java is Java HotSpot(TM) 64-Bit Server VM, version 1.8.0_251, running on Windows 10:amd64:10.0, installed at C:\Users\LegendGamer\AppData\Roaming\.tlauncher\jre\win64
[14:41:38] [main/WARN] [FML]: The coremod FMLCorePlugin (net.minecraftforge.fml.relauncher.FMLCorePlugin) is not signed!
[14:41:38] [main/WARN] [FML]: The coremod FMLForgePlugin (net.minecraftforge.classloading.FMLForgePlugin) is not signed!
[14:41:38] [main/INFO] [FML]: Searching C:\Users\LegendGamer\AppData\Roaming\.minecraft\home\Forge-1.12\mods for mods
[14:41:38] [main/WARN] [FML]: Found FMLCorePluginContainsFMLMod marker in GunsAddon-1.0.jar. This is not recommended, @Mods should be in a separate jar from the coremod.
[14:41:38] [main/INFO] [FML]: [HOOKLIB]  Obfuscated: true
[14:41:38] [main/ERROR] [LaunchWrapper]: Unable to launch
java.lang.RuntimeException: An error occurred trying to configure the Minecraft home at C:\Users\LegendGamer\AppData\Roaming\.minecraft\home\Forge-1.12 for Forge Mod Loader
    at net.minecraftforge.fml.relauncher.FMLLaunchHandler.setupHome(FMLLaunchHandler.java:111) ~[forge-1.12.2-14.23.5.2847.jar:?]
    at net.minecraftforge.fml.relauncher.FMLLaunchHandler.setupClient(FMLLaunchHandler.java:81) ~[forge-1.12.2-14.23.5.2847.jar:?]
    at net.minecraftforge.fml.relauncher.FMLLaunchHandler.configureForClientLaunch(FMLLaunchHandler.java:42) ~[forge-1.12.2-14.23.5.2847.jar:?]
    at net.minecraftforge.fml.common.launcher.FMLTweaker.injectIntoClassLoader(FMLTweaker.java:141) ~[forge-1.12.2-14.23.5.2847.jar:?]
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:115) [launchwrapper-1.12.jar:?]
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
Caused by: java.lang.ExceptionInInitializerError
    at java.lang.Class.forName0(Native Method) ~[?:1.8.0_251]
    at java.lang.Class.forName(Class.java:348) ~[?:1.8.0_251]
    at net.minecraftforge.fml.relauncher.CoreModManager.loadCoreMod(CoreModManager.java:527) ~[forge-1.12.2-14.23.5.2847.jar:?]
    at net.minecraftforge.fml.relauncher.CoreModManager.discoverCoreMods(CoreModManager.java:451) ~[forge-1.12.2-14.23.5.2847.jar:?]
    at net.minecraftforge.fml.relauncher.CoreModManager.handleLaunch(CoreModManager.java:265) ~[forge-1.12.2-14.23.5.2847.jar:?]
    at net.minecraftforge.fml.relauncher.FMLLaunchHandler.setupHome(FMLLaunchHandler.java:107) ~[forge-1.12.2-14.23.5.2847.jar:?]
    ... 5 more
Caused by: java.lang.NullPointerException
    at net.minecraftforge.fml.common.asm.transformers.DeobfuscationTransformer.<init>(DeobfuscationTransformer.java:61) ~[forge-1.12.2-14.23.5.2847.jar:?]
    at gloomyfolken.hooklib.minecraft.HookLoader.<clinit>(HookLoader.java:23) ~[HookLoader.class:?]
    at java.lang.Class.forName0(Native Method) ~[?:1.8.0_251]
    at java.lang.Class.forName(Class.java:348) ~[?:1.8.0_251]
    at net.minecraftforge.fml.relauncher.CoreModManager.loadCoreMod(CoreModManager.java:527) ~[forge-1.12.2-14.23.5.2847.jar:?]
    at net.minecraftforge.fml.relauncher.CoreModManager.discoverCoreMods(CoreModManager.java:451) ~[forge-1.12.2-14.23.5.2847.jar:?]
    at net.minecraftforge.fml.relauncher.CoreModManager.handleLaunch(CoreModManager.java:265) ~[forge-1.12.2-14.23.5.2847.jar:?]
    at net.minecraftforge.fml.relauncher.FMLLaunchHandler.setupHome(FMLLaunchHandler.java:107) ~[forge-1.12.2-14.23.5.2847.jar:?]
    ... 5 more
[14:41:38] [main/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]: net.minecraftforge.fml.relauncher.FMLSecurityManager$ExitTrappedException
[14:41:38] [main/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]:     at net.minecraftforge.fml.relauncher.FMLSecurityManager.checkPermission(FMLSecurityManager.java:49)
[14:41:38] [main/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]:     at java.lang.SecurityManager.checkExit(SecurityManager.java:761)
[14:41:38] [main/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]:     at java.lang.Runtime.exit(Runtime.java:107)
[14:41:38] [main/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]:     at java.lang.System.exit(System.java:971)
[14:41:38] [main/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]:     at net.minecraft.launchwrapper.Launch.launch(Launch.java:138)
[14:41:38] [main/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:1052]:     at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
 
5,018
47
783
Решено, нужно было обновить либу.
 
250
12
24
Получаю краш в скомпилированном моде, на версии 1.12.2.
Не могу разобраться в чем проблема. Прошу помощи
Java:
2021-03-08 02:32:15,681 main ERROR Error processing element Queue ([Appenders: null]): CLASS_NOT_FOUND
2021-03-08 02:32:15,787 main ERROR Unable to locate appender "ServerGuiConsole" for logger config "root"
[02:32:15] [main/INFO] [LaunchWrapper]: Loading tweak class name net.minecraftforge.fml.common.launcher.FMLTweaker
[02:32:15] [main/INFO] [LaunchWrapper]: Using primary tweak class name net.minecraftforge.fml.common.launcher.FMLTweaker
[02:32:15] [main/INFO] [LaunchWrapper]: Calling tweak class net.minecraftforge.fml.common.launcher.FMLTweaker
[02:32:15] [main/INFO] [FML]: Forge Mod Loader version 14.23.5.2855 for Minecraft 1.12.2 loading
[02:32:15] [main/INFO] [FML]: Java is Java HotSpot(TM) 64-Bit Server VM, version 1.8.0_281, running on Windows 10:amd64:10.0, installed at C:\Program Files\Java\jre1.8.0_281
[02:32:15] [main/INFO] [FML]: Searching C:\Users\alfon\AppData\Roaming\.minecraft\mods for mods
[02:32:16] [main/WARN] [FML]: Found FMLCorePluginContainsFMLMod marker in modid-1.0.jar. This is not recommended, @Mods should be in a separate jar from the coremod.
[02:32:16] [main/ERROR] [LaunchWrapper]: Unable to launch
java.lang.RuntimeException: An error occurred trying to configure the Minecraft home at C:\Users\alfon\AppData\Roaming\.minecraft for Forge Mod Loader
    at net.minecraftforge.fml.relauncher.FMLLaunchHandler.setupHome(FMLLaunchHandler.java:111) ~[forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraftforge.fml.relauncher.FMLLaunchHandler.setupClient(FMLLaunchHandler.java:81) ~[forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraftforge.fml.relauncher.FMLLaunchHandler.configureForClientLaunch(FMLLaunchHandler.java:42) ~[forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraftforge.fml.common.launcher.FMLTweaker.injectIntoClassLoader(FMLTweaker.java:141) ~[forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:115) [launchwrapper-1.12.jar:?]
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
Caused by: java.lang.NoClassDefFoundError: net/minecraft/block/properties/IProperty
    at java.lang.Class.forName0(Native Method) ~[?:1.8.0_281]
    at java.lang.Class.forName(Unknown Source) ~[?:1.8.0_281]
    at net.minecraftforge.fml.relauncher.CoreModManager.loadCoreMod(CoreModManager.java:527) ~[forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraftforge.fml.relauncher.CoreModManager.discoverCoreMods(CoreModManager.java:451) ~[forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraftforge.fml.relauncher.CoreModManager.handleLaunch(CoreModManager.java:265) ~[forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraftforge.fml.relauncher.FMLLaunchHandler.setupHome(FMLLaunchHandler.java:107) ~[forge-1.12.2-14.23.5.2855.jar:?]
    ... 5 more
Caused by: java.lang.ClassNotFoundException: net.minecraft.block.properties.IProperty
    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:191) ~[launchwrapper-1.12.jar:?]
    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_281]
    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_281]
    at java.lang.Class.forName0(Native Method) ~[?:1.8.0_281]
    at java.lang.Class.forName(Unknown Source) ~[?:1.8.0_281]
    at net.minecraftforge.fml.relauncher.CoreModManager.loadCoreMod(CoreModManager.java:527) ~[forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraftforge.fml.relauncher.CoreModManager.discoverCoreMods(CoreModManager.java:451) ~[forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraftforge.fml.relauncher.CoreModManager.handleLaunch(CoreModManager.java:265) ~[forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraftforge.fml.relauncher.FMLLaunchHandler.setupHome(FMLLaunchHandler.java:107) ~[forge-1.12.2-14.23.5.2855.jar:?]
    ... 5 more
Caused by: java.lang.NullPointerException
    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:182) ~[launchwrapper-1.12.jar:?]
    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_281]
    at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_281]
    at java.lang.Class.forName0(Native Method) ~[?:1.8.0_281]
    at java.lang.Class.forName(Unknown Source) ~[?:1.8.0_281]
    at net.minecraftforge.fml.relauncher.CoreModManager.loadCoreMod(CoreModManager.java:527) ~[forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraftforge.fml.relauncher.CoreModManager.discoverCoreMods(CoreModManager.java:451) ~[forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraftforge.fml.relauncher.CoreModManager.handleLaunch(CoreModManager.java:265) ~[forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraftforge.fml.relauncher.FMLLaunchHandler.setupHome(FMLLaunchHandler.java:107) ~[forge-1.12.2-14.23.5.2855.jar:?]
    ... 5 more
Exception in thread "main" [02:32:16] [main/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:-1]: net.minecraftforge.fml.relauncher.FMLSecurityManager$ExitTrappedException
[02:32:16] [main/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:-1]:     at net.minecraftforge.fml.relauncher.FMLSecurityManager.checkPermission(FMLSecurityManager.java:49)
[02:32:16] [main/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:-1]:     at java.lang.SecurityManager.checkExit(Unknown Source)
[02:32:16] [main/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:-1]:     at java.lang.Runtime.exit(Unknown Source)
[02:32:16] [main/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:-1]:     at java.lang.System.exit(Unknown Source)
[02:32:16] [main/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:-1]:     at net.minecraft.launchwrapper.Launch.launch(Launch.java:138)
[02:32:16] [main/INFO] [STDERR]: [java.lang.ThreadGroup:uncaughtException:-1]:     at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
Here I am!
[VersionManager] Refreshing versions locally...
[VersionManager] Versions has been refreshed (5 ms)
[Launcher] Launcher exited.
[Launcher] Minecraft closed with exit code: 1
flush now
flush now
 
808
3
124
1. За порядком загрузки классов всё же придется следить. Если вы загрузите ваш класс с хуками раньше, чем начнет грузиться майнкрафт, то вызовете этим загрузку классов майна в неподходящий момент и всё сломается.
1.1. Не надо пытаться объединить HookLoader и класс с хуками. HookLoader грузится до начала загрузки майна, контейнер с хуками - после!
1.2 Не надо пытаться написать что-то вроде registerHookContainer(MyHooks.class.getName()). Это тоже вызовет загрузку класса с хуками раньше чем надо.

Без кода непонятно что именно произошло, но что-то из этой серии. На регистрации хуков пытается загрузиться класс net.minecraft.block.properties.IProperty, но на момент регистрации грузить классы кубача еще нельзя. Кинь код HookLoader'a.
 
250
12
24
Код тот что был в либе
Java:
package gloomyfolken.hooklib.minecraft;

import java.util.Map;

import gloomyfolken.hooklib.asm.AsmHook;
import gloomyfolken.hooklib.asm.ClassMetadataReader;
import gloomyfolken.hooklib.asm.HookClassTransformer;
import net.minecraftforge.fml.common.asm.transformers.DeobfuscationTransformer;
import net.minecraftforge.fml.relauncher.IFMLLoadingPlugin;

public abstract class HookLoader implements IFMLLoadingPlugin {

    private static DeobfuscationTransformer deobfuscationTransformer;

    private static ClassMetadataReader deobfuscationMetadataReader;

    static {
        deobfuscationMetadataReader = new DeobfuscationMetadataReader();
    }

    public static HookClassTransformer getTransformer() {
        return PrimaryClassTransformer.instance.registeredSecondTransformer ?
                MinecraftClassTransformer.instance : PrimaryClassTransformer.instance;
    }

    public static void registerHook(AsmHook hook) {
        getTransformer().registerHook(hook);
    }

    public static void registerHookContainer(String className) {
        getTransformer().registerHookContainer(className);
    }

    public static ClassMetadataReader getDeobfuscationMetadataReader() {
        return deobfuscationMetadataReader;
    }
    
    static DeobfuscationTransformer getDeobfuscationTransformer() {
        if (HookLibPlugin.getObfuscated() && deobfuscationTransformer == null) {
            deobfuscationTransformer = new DeobfuscationTransformer();
        }
        return deobfuscationTransformer;
    }

    public String[] getLibraryRequestClass() {
        return null;
    }

    public String getAccessTransformerClass() {
        return null;
    }

    @Override
    public String[] getASMTransformerClass() {
        return null;
    }

    @Override
    public String getModContainerClass() {
        return null;
    }

    @Override
    public String getSetupClass() {
        return null;
    }

    @Override
    public void injectData(Map<String, Object> data) {
        registerHooks();
    }

    protected abstract void registerHooks();
}
 
250
12
24
Возможно я дурачок и надо было этот

Java:
package gloomyfolken.hooklib.example;

import gloomyfolken.hooklib.minecraft.HookLoader;
import gloomyfolken.hooklib.minecraft.PrimaryClassTransformer;

public class ExampleHookLoader extends HookLoader {

    @Override
    public String[] getASMTransformerClass() {
        return new String[]{PrimaryClassTransformer.class.getName()};
    }

    @Override
    public void registerHooks() {
        registerHookContainer("gloomyfolken.hooklib.example.AnnotationHooks");
    }
}
 
250
12
24
Теперь другое пишет совсем

Java:
[04:47:39] [main/WARN] [FML]: Found FMLCorePluginContainsFMLMod marker in modid-1.0.jar. This is not recommended, @Mods should be in a separate jar from the coremod.
[04:47:39] [main/WARN] [FML]: The coremod gloomyfolken.hooklib.example.AnnotationHooks does not have a MCVersion annotation, it may cause issues with this version of Minecraft
[04:47:39] [main/WARN] [FML]: The coremod AnnotationHooks (gloomyfolken.hooklib.example.AnnotationHooks) is not signed!
[04:47:39] [main/ERROR] [FML]: Coremod AnnotationHooks: The plugin gloomyfolken.hooklib.example.AnnotationHooks is not an implementor of IFMLLoadingPlugin
java.lang.ClassCastException: gloomyfolken.hooklib.example.AnnotationHooks cannot be cast to net.minecraftforge.fml.relauncher.IFMLLoadingPlugin
    at net.minecraftforge.fml.relauncher.CoreModManager.loadCoreMod(CoreModManager.java:594) [forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraftforge.fml.relauncher.CoreModManager.discoverCoreMods(CoreModManager.java:451) [forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraftforge.fml.relauncher.CoreModManager.handleLaunch(CoreModManager.java:265) [forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraftforge.fml.relauncher.FMLLaunchHandler.setupHome(FMLLaunchHandler.java:107) [forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraftforge.fml.relauncher.FMLLaunchHandler.setupClient(FMLLaunchHandler.java:81) [forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraftforge.fml.relauncher.FMLLaunchHandler.configureForClientLaunch(FMLLaunchHandler.java:42) [forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraftforge.fml.common.launcher.FMLTweaker.injectIntoClassLoader(FMLTweaker.java:141) [forge-1.12.2-14.23.5.2855.jar:?]
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:115) [launchwrapper-1.12.jar:?]
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
Вроде и понимаю что я что-то делаю не так, но в упор не вижу истины ._.
 
Сверху