Перестал работать класстрансформер на замену класса RenderPlayer

Версия Minecraft
1.6.4

jopi

Попрошайка
1,421
30
260
Перестал работать класстрансформер на замену класса RenderPlayer,
Юзаю RenderPlayerAPI и Crafting Dead(его я и ремонтирую), т.к. в крафтинг деад сломался трансформер классов, в среде когда я изменил дефолтный класс всё работает, но когда дело доходит до компиляции и трансформера, ничего не патчится и не работает, классы и скриншоты ниже.

Классы:

Код:
package com.ferullogaming.craftingdead.core;

import java.io.File;
import java.io.InputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
import net.minecraft.launchwrapper.IClassTransformer;

public class CDAClassTransformer implements IClassTransformer {
   public byte[] transform(String arg0, String arg1, byte[] arg2) {
      if (arg0.equals("bhj")) {
         CDADummyContainer.log("PATCHING! RenderPlayer: " + arg0);
         return this.patchClassInJar(arg0, arg2, arg0, CDAFMLLoadingPlugin.location);
      } else if (arg0.equals("bbj")) {
         CDADummyContainer.log("PATCHING! ModelBiped: " + arg0);
         return this.patchClassInJar(arg0, arg2, arg0, CDAFMLLoadingPlugin.location);
      } else if (arg0.equals("bfe")) {
          CDADummyContainer.log("PATCHING! something bfe: " + arg0);
          return this.patchClassInJar(arg0, arg2, arg0, CDAFMLLoadingPlugin.location);
       } else {
         return arg2;
      }
   }

   public byte[] patchClassInJar(String name, byte[] bytes, String ObfName, File location) {
      try {
         ZipFile zip = new ZipFile(location);
         ZipEntry entry = zip.getEntry(name.replace('.', '/') + ".class");
         if (entry == null) {
            System.out.println(name + " not found in " + location.getName());
         } else {
            InputStream zin = zip.getInputStream(entry);
            bytes = new byte[(int)entry.getSize()];
            zin.read(bytes);
            zin.close();
            System.out.println("[CDAftermathCore]: Class " + name + " patched!");
         }

         zip.close();
         return bytes;
      } catch (Exception var8) {
         throw new RuntimeException("Error overriding " + name + " from " + location.getName(), var8);
      }
   }
}

Код:
package com.ferullogaming.craftingdead.core;

import com.google.common.eventbus.Subscribe;
import cpw.mods.fml.common.DummyModContainer;
import cpw.mods.fml.common.LoadController;
import cpw.mods.fml.common.ModMetadata;
import cpw.mods.fml.common.event.FMLConstructionEvent;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import java.util.Arrays;
import net.minecraftforge.event.EventBus;

public class CDADummyContainer extends DummyModContainer {
   public CDADummyContainer() {
      super(new ModMetadata());
      ModMetadata meta = this.getMetadata();
      meta.modId = "CDAftermathCore";
      meta.name = "Dayz";
      meta.version = "1.0.0";
      meta.credits = "Id like to thank F3RULLO14 for being so sexy";
      meta.authorList = Arrays.asList("F3RULLO14", "FXG");
      meta.description = "";
      meta.url = "http://";
      meta.updateUrl = "";
      meta.screenshots = new String[0];
      meta.logoFile = "";
   }

   @Subscribe
   public boolean registerBus(EventBus bus, LoadController controller) {
      return false;
   }

   @Subscribe
   public void modConstruction(FMLConstructionEvent evt) {
   }

   @Subscribe
   public void preInit(FMLPreInitializationEvent evt) {
   }

   @Subscribe
   public void init(FMLInitializationEvent evt) {
   }

   @Subscribe
   public void postInit(FMLPostInitializationEvent evt) {
   }

   public static void log(String par1) {
      System.out.println("[DAYZ] " + par1);
   }
}

Код:
package com.ferullogaming.craftingdead.core;

import cpw.mods.fml.relauncher.IFMLLoadingPlugin;
import cpw.mods.fml.relauncher.IFMLLoadingPlugin.MCVersion;
import java.io.File;
import java.util.Map;

@MCVersion("1.6.4")
public class CDAFMLLoadingPlugin implements IFMLLoadingPlugin {
   public static File location;

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

   public String[] getASMTransformerClass() {
      return new String[]{CDAClassTransformer.class.getName()};
   }

   public String getModContainerClass() {
      return CDADummyContainer.class.getName();
   }

   public String getSetupClass() {
      return null;
   }

   public void injectData(Map data) {
      location = (File)data.get("coremodLocation");
   }
}

Скриншоты:
До:
2018-12-09_15.45.44.pngПосле рекомпиляции:2018-12-09_15.39.34.png
 
7,099
324
1,510

jopi

Попрошайка
1,421
30
260
@hohserg1 я уже смотрел, у меня другая вариация трансформера там потому-что F3RULLO14 делал, да и мне нужно желательно без всяких API как gloomyfolken'a. У меня просто проблема что не патчится, имена разные, обычные и обф
 
7,099
324
1,510
Чтобы в собранном работало должно быть все обф. Хуклиба это делает автоматически, потому и советую
 
3,005
192
592
А ты уверен, что в компил виде принимаются значения из обфы?
На 1.12 - я юзаю нормальные названия классов, ибо фордж снимает обфу.
 
3,005
192
592
Сверху