Не работает код на сервере

Версия Minecraft
1.12.2
API
Forge

sk9zist :l

Исправился
981
18
157
Задумка такая: стрела останавливаеться (медленно, 3-5 секунд до полной остановки, но этого хватает чтобы она не успела задеть тебя) при подлёте к игроку, если у него в инвентаре есть мой предмет в состоянии active. В тестовом клиенте (запуск из eclipse) - всё работает. А вот если поставить мод на сервер - там уже это не будет работать. Ниже приложен код всего, что связано с этим (предмет, хук):
Hooks.java:
public class Hooks
{
    @Hook(injectOnExit = true, returnCondition = ReturnCondition.ALWAYS)
    public static void onUpdate(EntityArrow fb)
    {
        if(variables.s == true)
        {
            double r = 4.5;
            EntityPlayer targetEntity = (EntityPlayer) fb.world.findNearestEntityWithinAABB(EntityPlayer.class, fb.getEntityBoundingBox().grow(r), fb);
            
            if(targetEntity != null)
            {
                fb.motionX *= (double)14.0F / (1 * 20);
                fb.motionY = 0;
                fb.motionZ *= (double)14.0F / (1 * 20);
            }
        }
    }
}
TestItem.java:
public class TestItem extends Item{
    public TestItem(String name, int maxStackSize){
        setUnlocalizedName(name);
        setRegistryName(name);
        setMaxStackSize(maxStackSize);
    }
    
    public ActionResult<ItemStack> onItemRightClick(World worldIn, EntityPlayer playerIn, EnumHand handIn)
    {
        //if(playerIn.getHeldItem(handIn).hasTagCompound() == false)
        //{
        //    NBTTagCompound nbt = new NBTTagCompound();
        //    nbt.setBoolean("s", true);
        //    playerIn.getHeldItem(handIn).setTagCompound(nbt);
        //} else {
        //    if(playerIn.getHeldItem(handIn).getTagCompound().getBoolean("s") == true)
        //    {
        //        playerIn.getHeldItem(handIn).getTagCompound().setBoolean("s", false);
        //    }
        //    if(playerIn.getHeldItem(handIn).getTagCompound().getBoolean("s") == false)
        //    {
        //        playerIn.getHeldItem(handIn).getTagCompound().setBoolean("s", true);
        //    }
        //}
        
        if(!worldIn.isRemote)
        {
            if(variables.s == true)
            {
                variables.s = false;
            } else {
                variables.s = true;
            }
        }
        return new ActionResult<ItemStack>(EnumActionResult.PASS, playerIn.getHeldItem(handIn));
    }
    
    @SideOnly(Side.CLIENT)
    public boolean hasEffect(ItemStack par1ItemStack)
    {
        if(variables.s == true)
        {
            return true;
        } else {
            return false;
        }
    }

}
 

sk9zist :l

Исправился
981
18
157
которая меняется у ВСЕГО СЕРВЕРА при нажатии ПКМ предметов.
Я знаю. Можешь посмотреть закоменченный код - там я сделал через nbt. В коде хука этого правда уже нет, но я проверял через нбт - всё также не работало. И вообще, у меня были трудности при получении nbt предмета в коде хука... (так как небыло игрока, у которого проверять инвентарь, но я всё же сделал получение игрока из findNearestEntity вокруг стрелы, прочел инвентарь и нашёл переменную) Я думаю что проблема тут как раз таки с кодом хука. Или в том, что он почему-то не работает на сервере
 
Последнее редактирование:

sk9zist :l

Исправился
981
18
157
Да. Выполняется на сервере, клиенте. Проблема в том, что во варианте с нбт - стрела не останавливается если предмет уже активирован. Нужно активировать его пока она летит. Иначе - не сработает. ( это так работать не должно )
А еще эффект пропадает при переключении на другую ячейку хотбара
 

sk9zist :l

Исправился
981
18
157
Вот старый код:
TestItem.java:
public class TestItem extends Item{
    public TestItem(String name, int maxStackSize){
        setUnlocalizedName(name);
        setRegistryName(name);
        setMaxStackSize(maxStackSize);
    }
  
    public static void onArrowStopping(EntityPlayer targetEntity, EntityArrow fb)
    {
        EntityPlayer playerIn = targetEntity;
        ItemStack stack = targetEntity.getHeldItemMainhand();
        if(stack.hasTagCompound() == true)
        {
            for (int i = 0; i <= 36; i++)
            {
                if(playerIn.inventory.getStackInSlot(i).getItem() == ItemsReg.TestItem)
                {
                    stack = playerIn.inventory.getStackInSlot(i);
                }
            }
          
            if(stack.getTagCompound().getBoolean("s") == true)
            {
                fb.motionX *= (double)14.0F / (1 * 20);
                fb.motionY = 0;
                fb.motionZ *= (double)14.0F / (1 * 20);
            }
        }
    }
  
    public ActionResult<ItemStack> onItemRightClick(World worldIn, EntityPlayer playerIn, EnumHand handIn)
    {
        if(!playerIn.getEntityData().hasKey("damager"))
        {
            playerIn.getEntityData().setBoolean("damager", true);
        } else {
            if(playerIn.getEntityData().getBoolean("damager") == true)
            {
                playerIn.getEntityData().setBoolean("damager", false);
            } else {
                playerIn.getEntityData().setBoolean("damager", true);
            }
        }
      
        if(playerIn.getHeldItem(handIn).hasTagCompound() == false)
        {
            NBTTagCompound nbt = new NBTTagCompound();
            nbt.setBoolean("s", true);
            playerIn.getHeldItem(handIn).setTagCompound(nbt);
        } else {
            if(playerIn.getHeldItem(handIn).getTagCompound().getBoolean("s") == true)
            {
                playerIn.getHeldItem(handIn).getTagCompound().setBoolean("s", false);
            }
            if(playerIn.getHeldItem(handIn).getTagCompound().getBoolean("s") == false)
            {
                playerIn.getHeldItem(handIn).getTagCompound().setBoolean("s", true);
            }
        }
        return new ActionResult<ItemStack>(EnumActionResult.PASS, playerIn.getHeldItem(handIn));
    }
}
Hooks.java:
public class Hooks
{
    @Hook(injectOnExit = true, returnCondition = ReturnCondition.ALWAYS)
    public static void onUpdate(EntityArrow fb)
    {
        //if(GlobalVars.s == true)
        //{
            double r = 4.5;//6.5F; - 3.5
            EntityPlayer targetEntity = (EntityPlayer) fb.world.findNearestEntityWithinAABB(EntityPlayer.class, fb.getEntityBoundingBox().grow(r), fb);
          
            if(targetEntity != null)
            {
                if(targetEntity.getEntityData().hasKey("damager") && targetEntity.getEntityData().getBoolean("damager") == true)
                {
                    TestItem.onArrowStopping(targetEntity, fb);
                }
            }
        //}
    }
}
Подсветку предмета с nbt я сделать не смог, он просто не светится. Поэтому эту часть убрал, однако это минус варианта с nbt
 
Последнее редактирование:

sk9zist :l

Исправился
981
18
157
variables.s
И на сервере и на клиенте?
Видимо, выполняется только на сервере. Как это исправить?
Проверял вот так:
Hooks.java:
public class Hooks
{
    @Hook(injectOnExit = true, returnCondition = ReturnCondition.ALWAYS)
    public static void onUpdate(EntityArrow fb)
    {
        if(variables.s == true)
        {
            double r = 4.5;
            EntityPlayer targetEntity = (EntityPlayer) fb.world.findNearestEntityWithinAABB(EntityPlayer.class, fb.getEntityBoundingBox().grow(r), fb);
            
            if(targetEntity != null)
            {
                if (targetEntity.world.isRemote) {
                    if(GlobalVars.s1 == false)
                    {
                        System.out.println("client");
                        GlobalVars.s1 = true;
                    }
                }
                if (!targetEntity.world.isRemote) {
                    if(GlobalVars.s1 == false)
                    {
                        System.out.println("server");
                        GlobalVars.s1 = true;
                    }
                }
                
                fb.motionX *= (double)14.0F / (1 * 20);
                fb.motionY = 0;
                fb.motionZ *= (double)14.0F / (1 * 20);
            }
        }
    }
}
сделал переменную s1 только для того, чтобы выводилось один раз.
 

sk9zist :l

Исправился
981
18
157
И забудь о них НАВСЕГДА.
Я и хочу забыть) Они только проблемы создают, только перед этим мне надо переписать еще один код, который я делал с ними.
только нужно еще это нбт синхронизировать пакетом с клиентом.
как?
 

sk9zist :l

Исправился
981
18
157
Т.е. нужна своя пакетная система?
 

VeniVidiVici

Санта Барбарис
327
15
198
В чём смысл такого кода? Оплата построчная?
@SideOnly(Side.CLIENT) public boolean hasEffect(ItemStack par1ItemStack) { if(variables.s == true) { return true; } else { return false; } }

Почему не так например?
Java:
@SideOnly(Side.CLIENT)
public boolean hasEffect(ItemStack par1ItemStack)
{
    return variables.s;
}
 

sk9zist :l

Исправился
981
18
157

sk9zist :l

Исправился
981
18
157
Кароче сделал через НБТ.
TestItem.java:
public class TestItem extends Item{
    public TestItem(String name, int maxStackSize){
        setUnlocalizedName(name);
        setRegistryName(name);
        setMaxStackSize(maxStackSize);
    }
   
    public ActionResult<ItemStack> onItemRightClick(World worldIn, EntityPlayer playerIn, EnumHand handIn)
    {
        if(!playerIn.getEntityData().hasKey("damager"))
        {
            playerIn.getEntityData().setBoolean("damager", true);
        } else {
            if(playerIn.getEntityData().getBoolean("damager") == true)
            {
                playerIn.getEntityData().setBoolean("damager", false);
            } else {
                playerIn.getEntityData().setBoolean("damager", true);
            }
        }
       
        if(playerIn.getHeldItem(handIn).hasTagCompound() == false)
        {
            NBTTagCompound nbt = new NBTTagCompound();
            nbt.setBoolean("s", true);
            playerIn.getHeldItem(handIn).setTagCompound(nbt);
        } else {
            if(playerIn.getHeldItem(handIn).getTagCompound().getBoolean("s") == true)
            {
                playerIn.getHeldItem(handIn).getTagCompound().setBoolean("s", false);
            } else {
                playerIn.getHeldItem(handIn).getTagCompound().setBoolean("s", true);
            }
        }
       
        return new ActionResult<ItemStack>(EnumActionResult.PASS, playerIn.getHeldItem(handIn));
    }
   
    @SideOnly(Side.CLIENT)
    public boolean hasEffect(ItemStack par1ItemStack)
    {
        boolean s = false;
        if(par1ItemStack.hasTagCompound())
        {
            s = par1ItemStack.getTagCompound().getBoolean("s");
        }
        return s;
    }
}
Hooks.java:
@Hook(injectOnExit = true, returnCondition = ReturnCondition.ALWAYS)
    public static void onUpdate(EntityArrow fb)
    {
        EntityPlayer targetEntity = (EntityPlayer) fb.world.findNearestEntityWithinAABB(EntityPlayer.class, fb.getEntityBoundingBox().grow(4,5), fb);
       
        if(targetEntity != null)
        {
            if(targetEntity.getEntityData().hasKey("damager") && targetEntity.getEntityData().getBoolean("damager") == true)
            {
                fb.motionX *= (double)14.0F / (1 * 20);
                fb.motionY = 0;
                fb.motionZ *= (double)14.0F / (1 * 20);
               
                EntityPlayer playerIn = targetEntity;
                ItemStack stack = targetEntity.getHeldItemMainhand();
                if(stack.hasTagCompound() == true)
                {
                    for (int i = 0; i <= 36; i++)
                    {
                        if(playerIn.inventory.getStackInSlot(i).getItem() == ItemsReg.TestItem)
                        {
                            stack = playerIn.inventory.getStackInSlot(i);
                        }
                    }
                   
                    if(stack.getTagCompound().getBoolean("s") == true)
                    {
                        fb.motionX *= (double)14.0F / (1 * 20);
                        fb.motionY = 0;
                        fb.motionZ *= (double)14.0F / (1 * 20);
                    }
                }
            }
        }
    }
Если что там не правильно сделал, можете поправить? В запуске из eclipse всё работает. Сейчас скомпилирую и проверю на сервере
 
Последнее редактирование:

sk9zist :l

Исправился
981
18
157
Да, я уже сам понял)
Переделано:
Hooks.java:
@Hook(injectOnExit = true, returnCondition = ReturnCondition.ALWAYS)
    public static void onUpdate(EntityArrow fb)
    {
        EntityPlayer targetEntity = (EntityPlayer) fb.world.findNearestEntityWithinAABB(EntityPlayer.class, fb.getEntityBoundingBox().grow(4,5), fb);
      
        if(targetEntity != null)
        {
            if(targetEntity.getEntityData().hasKey("damager") && targetEntity.getEntityData().getBoolean("damager") == true)
            {
                if(!targetEntity.world.isRemote)
                {
                    System.out.println("server");
                }
                if(targetEntity.world.isRemote)
                {
                    System.out.println("client");
                }
                
                fb.motionX *= (double)14.0F / (1 * 20);
                fb.motionY = 0;
                fb.motionZ *= (double)14.0F / (1 * 20);
            }
        }
    }
Протестировал на сервере. По логам видно, что хук срабатывает только на клиенте, на сервере ничего не выводиться, хотя должно выводиться "server". В логах клиента же вывод есть (выводиться "client")
Почему так?

Вот лог запуска сервера:
Java:
(17:10:44|INFO|LaunchWrapper): Loading tweak class name net.minecraftforge.fml.common.launcher.FMLServerTweaker
(17:10:44|INFO|LaunchWrapper): Using primary tweak class name net.minecraftforge.fml.common.launcher.FMLServerTweaker
(17:10:44|INFO|LaunchWrapper): Calling tweak class net.minecraftforge.fml.common.launcher.FMLServerTweaker
(17:10:44|INFO|FML): Forge Mod Loader version 14.23.5.2836 for Minecraft 1.12.2 loading
(17:10:44|INFO|FML): Java is OpenJDK 64-Bit Server VM, version 1.8.0_275, running on Linux:amd64:5.10.38-0-lts, installed at /usr/lib/jvm/java-1.8-openjdk/jre
(17:10:44|INFO|FML): Apache Maven library folder was not in the format expected. Using default libraries directory.
(17:10:44|INFO|FML): Full: /home/Ghost/TestMods/libraries/maven-artifact-3.5.3.jar
(17:10:44|INFO|FML): Trimmed: /home/ghost/testmods/
(17:10:44|WARN|FML): The coremod FMLCorePlugin (net.minecraftforge.fml.relauncher.FMLCorePlugin) is not signed!
(17:10:44|WARN|FML): The coremod FMLForgePlugin (net.minecraftforge.classloading.FMLForgePlugin) is not signed!
(17:10:44|WARN|FML): The coremod TableclothPlugin (tablecloth.server.TableclothPlugin) is not signed!
(17:10:44|INFO|FML): Searching /home/Ghost/TestMods/./mods for mods
(17:10:44|WARN|FML): Found FMLCorePluginContainsFMLMod marker in MyMod-0.0.1.jar. This is not recommended, @Mods should be in a separate jar from the coremod.
(17:10:44|WARN|FML): The coremod com.mymod.HooksLoader does not have a MCVersion annotation, it may cause issues with this version of Minecraft
(17:10:44|WARN|FML): The coremod HooksLoader (com.mymod.HooksLoader) is not signed!
(17:10:44|INFO|LaunchWrapper): Loading tweak class name net.minecraftforge.fml.common.launcher.FMLInjectionAndSortingTweaker
(17:10:44|INFO|LaunchWrapper): Loading tweak class name net.minecraftforge.fml.common.launcher.FMLDeobfTweaker
(17:10:44|INFO|LaunchWrapper): Calling tweak class net.minecraftforge.fml.common.launcher.FMLInjectionAndSortingTweaker
(17:10:44|INFO|LaunchWrapper): Calling tweak class net.minecraftforge.fml.common.launcher.FMLInjectionAndSortingTweaker
(17:10:44|INFO|LaunchWrapper): Calling tweak class net.minecraftforge.fml.relauncher.CoreModManager$FMLPluginWrapper
(17:10:45|FATAL|FML): The binary patch set is missing, things are not going to work!
(17:10:48|ERROR|FML): FML appears to be missing any signature data. This is not a good thing
(17:10:48|INFO|LaunchWrapper): Calling tweak class net.minecraftforge.fml.relauncher.CoreModManager$FMLPluginWrapper
(17:10:48|INFO|LaunchWrapper): Calling tweak class net.minecraftforge.fml.relauncher.CoreModManager$FMLPluginWrapper
(17:10:49|INFO|LaunchWrapper): Calling tweak class net.minecraftforge.fml.relauncher.CoreModManager$FMLPluginWrapper
(17:10:49|INFO|STDOUT): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:debug:20]: [DEBUG] Parsing hooks container hrmhooks.hooklib.minecraft.SecondaryTransformerHook
(17:10:49|INFO|FML): [HOOKLIB]  Obfuscated: true
(17:10:49|INFO|STDOUT): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:debug:20]: [DEBUG] Parsing hooks container com.mymod.Hooks
(17:10:49|INFO|LaunchWrapper): Calling tweak class net.minecraftforge.fml.common.launcher.FMLDeobfTweaker
(17:10:49|INFO|STDOUT): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:debug:20]: [DEBUG] Injecting hooks into class net.minecraftforge.fml.common.Loader
(17:10:50|INFO|STDOUT): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:debug:20]: [DEBUG] Patching method net.minecraftforge.fml.common.Loader#injectData([Ljava/lang/Object;)
(17:10:50|INFO|STDOUT): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:30]: [SEVERE] Can not load obfuscated method names
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]: java.io.IOException: Methods dictionary not found
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at hrmhooks.hooklib.minecraft.MinecraftClassTransformer.loadMethodNames(MinecraftClassTransformer.java:52)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at hrmhooks.hooklib.minecraft.MinecraftClassTransformer.<init>(MinecraftClassTransformer.java:35)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at java.lang.Class.newInstance(Class.java:442)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at net.minecraft.launchwrapper.LaunchClassLoader.registerTransformer(LaunchClassLoader.java:88)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at hrmhooks.hooklib.minecraft.SecondaryTransformerHook.injectData(SecondaryTransformerHook.java:16)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at net.minecraftforge.fml.common.Loader.injectData(Loader.java)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at java.lang.reflect.Method.invoke(Method.java:498)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at net.minecraftforge.fml.common.launcher.FMLDeobfTweaker.injectIntoClassLoader(FMLDeobfTweaker.java:58)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at net.minecraft.launchwrapper.Launch.launch(Launch.java:115)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at java.lang.reflect.Method.invoke(Method.java:498)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at net.minecraftforge.fml.relauncher.ServerLaunchWrapper.run(ServerLaunchWrapper.java:78)
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]:     at net.minecraftforge.fml.relauncher.ServerLaunchWrapper.main(ServerLaunchWrapper.java:38)
(17:10:51|INFO|LaunchWrapper): Loading tweak class name net.minecraftforge.fml.common.launcher.TerminalTweaker
(17:10:51|INFO|LaunchWrapper): Calling tweak class net.minecraftforge.fml.common.launcher.TerminalTweaker
(17:10:54|INFO|LaunchWrapper): Launching wrapped minecraft {net.minecraft.server.MinecraftServer}
(17:10:58|WARN|net.minecraft.server.MinecraftServer): Could not access google services. Check your internet connection. The server will shut down in 30 minutes.
(17:11:18|INFO|net.minecraft.server.dedicated.DedicatedServer): Starting minecraft server version 1.12.2
(17:11:18|INFO|FML): MinecraftForge v14.23.5.2836 Initialized
(17:11:18|INFO|FML): Starts to replace vanilla recipe ingredients with ore ingredients.
(17:11:19|INFO|FML): Invalid recipe found with multiple oredict ingredients in the same ingredient...
(17:11:20|INFO|FML): Replaced 1227 ore ingredients
(17:11:20|INFO|FML): Config directory created successfully
(17:11:21|INFO|FML): Searching /home/Ghost/TestMods/./mods for mods
(17:11:24|INFO|FML): Forge Mod Loader has identified 6 mods to load
(17:11:25|INFO|FML): Attempting connection with missing mods [minecraft, mcp, FML, forge, eventhelper, artefacts] at CLIENT
(17:11:25|INFO|FML): Attempting connection with missing mods [minecraft, mcp, FML, forge, eventhelper, artefacts] at SERVER
(17:11:27|INFO|FML): Processing ObjectHolder annotations
(17:11:27|INFO|FML): Found 1168 ObjectHolder annotations
(17:11:27|INFO|FML): Identifying ItemStackHolder annotations
(17:11:27|INFO|FML): Found 0 ItemStackHolder annotations
(17:11:27|INFO|FML): Configured a dormant chunk cache size of 0
(17:11:28|INFO|FML): Applying holder lookups
(17:11:28|INFO|FML): Holder lookups applied
(17:11:28|INFO|FML): Applying holder lookups
(17:11:28|INFO|FML): Holder lookups applied
(17:11:28|INFO|FML): Applying holder lookups
(17:11:28|INFO|FML): Holder lookups applied
(17:11:28|INFO|FML): Applying holder lookups
(17:11:28|INFO|FML): Holder lookups applied
(17:11:28|INFO|FML): Injecting itemstacks
(17:11:28|INFO|FML): Itemstack injection complete
(17:11:28|INFO|net.minecraft.server.dedicated.DedicatedServer): Loading properties
(17:11:28|WARN|net.minecraft.server.MinecraftServer): Could not access google services. Check your internet connection. The server will shut down in 30 minutes.
(17:11:28|INFO|): Could not access google services. Check your internet connection. The server will shut down in 30 minutes.
(17:11:28|INFO|net.minecraft.server.dedicated.DedicatedServer): Default game type: SURVIVAL
(17:11:31|INFO|Minecraft): This server is running Tablecloth version 1.12.2-2836 (MC: 1.12.2) (Implementing API version 1.12.2-R0.1-SNAPSHOT)
(17:11:31|INFO|): Server Ping Player Sample Count: 12
(17:11:31|INFO|Minecraft): Using 4 threads for Netty based IO
(17:11:31|INFO|Minecraft): Debug logging is enabled
(17:11:32|INFO|net.minecraft.server.dedicated.DedicatedServer): Generating keypair
(17:11:32|INFO|net.minecraft.server.dedicated.DedicatedServer): Starting Minecraft server on *:25565
(17:11:33|INFO|net.minecraft.network.NetworkSystem): Using epoll channel type
(17:11:33|WARN|net.minecraft.server.dedicated.DedicatedServer): **** SERVER IS RUNNING IN OFFLINE/INSECURE MODE!
(17:11:33|WARN|net.minecraft.server.dedicated.DedicatedServer): The server will make no attempt to authenticate usernames. Beware.
(17:11:33|WARN|net.minecraft.server.dedicated.DedicatedServer): While this makes the game possible to play without internet access, it also opens up the ability for hackers to connect with any username they choose.
(17:11:33|WARN|net.minecraft.server.dedicated.DedicatedServer): To change this, set "online-mode" to "true" in the server.properties file.
(17:11:34|INFO|FML): Applying holder lookups
(17:11:34|INFO|FML): Holder lookups applied
(17:11:34|INFO|FML): Injecting itemstacks
(17:11:34|INFO|FML): Itemstack injection complete
(17:11:35|INFO|FML): Forge Mod Loader has successfully loaded 6 mods
(17:11:35|INFO|net.minecraft.server.dedicated.DedicatedServer): Preparing level "world"
(17:11:38|INFO|Minecraft): -------- World Settings For [world] --------
(17:11:38|INFO|Minecraft): Custom Map Seeds:  Village: 10387312 Feature: 14357617 Monument: 10387313 Slime: 987234911
(17:11:38|INFO|Minecraft): Mob Spawn Range: 3
(17:11:38|INFO|Minecraft): Cactus Growth Modifier: 50%
(17:11:38|INFO|Minecraft): Cane Growth Modifier: 99%
(17:11:38|INFO|Minecraft): Melon Growth Modifier: 99%
(17:11:38|INFO|Minecraft): Mushroom Growth Modifier: 50%
(17:11:38|INFO|Minecraft): Pumpkin Growth Modifier: 50%
(17:11:38|INFO|Minecraft): Sapling Growth Modifier: 40%
(17:11:38|INFO|Minecraft): Wheat Growth Modifier: 99%
(17:11:38|INFO|Minecraft): NetherWart Growth Modifier: 80%
(17:11:38|INFO|Minecraft): Vine Growth Modifier: 99%
(17:11:38|INFO|Minecraft): Cocoa Growth Modifier: 80%
(17:11:38|INFO|Minecraft): Entity Activation Range: An 3 / Mo 8 / Mi 2 / Tiv false
(17:11:38|INFO|Minecraft): Hopper Transfer: 24 Hopper Check: 24 Hopper Amount: 3
(17:11:38|INFO|Minecraft): Random Lighting Updates: false
(17:11:38|INFO|Minecraft): Structure Info Saving: true
(17:11:38|INFO|Minecraft): Max TNT Explosions: 100
(17:11:38|INFO|Minecraft): Tile Max Tick Time: 10ms Entity max Tick Time: 20ms
(17:11:38|INFO|Minecraft): Zombie Aggressive Towards Villager: false
(17:11:38|INFO|Minecraft): Nerfing mobs spawned from spawners: false
(17:11:38|INFO|Minecraft): View Distance: 6
(17:11:38|INFO|Minecraft): Allow Zombie Pigmen to spawn from portal blocks: true
(17:11:38|INFO|Minecraft): Arrow Despawn Rate: 900
(17:11:38|INFO|Minecraft): Experience Merge Radius: 4.0
(17:11:38|INFO|Minecraft): Item Despawn Rate: 6000
(17:11:38|INFO|Minecraft): Item Merge Radius: 6.0
(17:11:38|INFO|Minecraft): Entity Tracking Range: Pl 40 / An 18 / Mo 25 / Mi 8 / Other 45
(17:11:39|INFO|FML): Loading dimension 0 (world) (net.minecraft.server.dedicated.DedicatedServer@56340fcd)
(17:11:41|INFO|FML): Disconnecting Player: Server is still starting on Spigot+Forge 1.12.2 by CKATEPTb

(17:11:42|INFO|net.minecraft.advancements.AdvancementList): Loaded 488 advancements
(17:11:46|INFO|Minecraft): -------- World Settings For [DIM-1] --------
(17:11:46|INFO|Minecraft): Custom Map Seeds:  Village: 10387312 Feature: 14357617 Monument: 10387313 Slime: 987234911
(17:11:46|INFO|Minecraft): Mob Spawn Range: 3
(17:11:46|INFO|Minecraft): Cactus Growth Modifier: 50%
(17:11:46|INFO|Minecraft): Cane Growth Modifier: 99%
(17:11:46|INFO|Minecraft): Melon Growth Modifier: 99%
(17:11:46|INFO|Minecraft): Mushroom Growth Modifier: 50%
(17:11:46|INFO|Minecraft): Pumpkin Growth Modifier: 50%
(17:11:46|INFO|Minecraft): Sapling Growth Modifier: 40%
(17:11:46|INFO|Minecraft): Wheat Growth Modifier: 99%
(17:11:46|INFO|Minecraft): NetherWart Growth Modifier: 80%
(17:11:46|INFO|Minecraft): Vine Growth Modifier: 99%
(17:11:46|INFO|Minecraft): Cocoa Growth Modifier: 80%
(17:11:46|INFO|Minecraft): Entity Activation Range: An 3 / Mo 8 / Mi 2 / Tiv false
(17:11:46|INFO|Minecraft): Hopper Transfer: 24 Hopper Check: 24 Hopper Amount: 3
(17:11:46|INFO|Minecraft): Random Lighting Updates: false
(17:11:46|INFO|Minecraft): Structure Info Saving: true
(17:11:46|INFO|Minecraft): Max TNT Explosions: 100
(17:11:46|INFO|Minecraft): Tile Max Tick Time: 10ms Entity max Tick Time: 20ms
(17:11:46|INFO|Minecraft): Zombie Aggressive Towards Villager: false
(17:11:46|INFO|Minecraft): Nerfing mobs spawned from spawners: false
(17:11:46|INFO|Minecraft): View Distance: 6
(17:11:46|INFO|Minecraft): Allow Zombie Pigmen to spawn from portal blocks: true
(17:11:46|INFO|Minecraft): Arrow Despawn Rate: 900
(17:11:46|INFO|Minecraft): Experience Merge Radius: 4.0
(17:11:46|INFO|Minecraft): Item Despawn Rate: 6000
(17:11:46|INFO|Minecraft): Item Merge Radius: 6.0
(17:11:46|INFO|Minecraft): Entity Tracking Range: Pl 40 / An 18 / Mo 25 / Mi 8 / Other 45
(17:11:46|INFO|FML): Loading dimension -1 (DIM-1) (net.minecraft.server.dedicated.DedicatedServer@56340fcd)
(17:11:47|INFO|Minecraft): -------- World Settings For [DIM1] --------
(17:11:47|INFO|Minecraft): Custom Map Seeds:  Village: 10387312 Feature: 14357617 Monument: 10387313 Slime: 987234911
(17:11:47|INFO|Minecraft): Mob Spawn Range: 3
(17:11:47|INFO|Minecraft): Cactus Growth Modifier: 50%
(17:11:47|INFO|Minecraft): Cane Growth Modifier: 99%
(17:11:47|INFO|Minecraft): Melon Growth Modifier: 99%
(17:11:47|INFO|Minecraft): Mushroom Growth Modifier: 50%
(17:11:47|INFO|Minecraft): Pumpkin Growth Modifier: 50%
(17:11:47|INFO|Minecraft): Sapling Growth Modifier: 40%
(17:11:47|INFO|Minecraft): Wheat Growth Modifier: 99%
(17:11:47|INFO|Minecraft): NetherWart Growth Modifier: 80%
(17:11:47|INFO|Minecraft): Vine Growth Modifier: 99%
(17:11:47|INFO|Minecraft): Cocoa Growth Modifier: 80%
(17:11:47|INFO|Minecraft): Entity Activation Range: An 3 / Mo 8 / Mi 2 / Tiv false
(17:11:47|INFO|Minecraft): Hopper Transfer: 24 Hopper Check: 24 Hopper Amount: 3
(17:11:47|INFO|Minecraft): Random Lighting Updates: false
(17:11:47|INFO|Minecraft): Structure Info Saving: true
(17:11:47|INFO|Minecraft): Max TNT Explosions: 100
(17:11:47|INFO|Minecraft): Tile Max Tick Time: 10ms Entity max Tick Time: 20ms
(17:11:47|INFO|Minecraft): Zombie Aggressive Towards Villager: false
(17:11:47|INFO|Minecraft): Nerfing mobs spawned from spawners: false
(17:11:47|INFO|Minecraft): View Distance: 6
(17:11:47|INFO|Minecraft): Allow Zombie Pigmen to spawn from portal blocks: true
(17:11:47|INFO|Minecraft): Arrow Despawn Rate: 900
(17:11:47|INFO|Minecraft): Experience Merge Radius: 4.0
(17:11:47|INFO|Minecraft): Item Despawn Rate: 6000
(17:11:47|INFO|Minecraft): Item Merge Radius: 6.0
(17:11:47|INFO|Minecraft): Entity Tracking Range: Pl 40 / An 18 / Mo 25 / Mi 8 / Other 45
(17:11:47|INFO|FML): Loading dimension 1 (DIM1) (net.minecraft.server.dedicated.DedicatedServer@56340fcd)
(17:11:47|INFO|net.minecraft.server.MinecraftServer): Preparing start region for level 0 (Seed: -3836219653212427154)
(17:11:48|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 1%
(17:11:49|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 3%
(17:11:50|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 4%
(17:11:52|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 5%
(17:11:53|INFO|FML): Disconnecting Player: Server is still starting on Spigot+Forge 1.12.2 by CKATEPTb

(17:11:53|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 6%
(17:11:54|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 7%
(17:11:55|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 8%
(17:11:57|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 9%
(17:11:58|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 9%
(17:11:59|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 11%
(17:12:00|INFO|FML): Disconnecting Player: Server is still starting on Spigot+Forge 1.12.2 by CKATEPTb

(17:12:00|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 12%
(17:12:00|INFO|FML): Disconnecting Player: Server is still starting on Spigot+Forge 1.12.2 by CKATEPTb

(17:12:01|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 13%
(17:12:02|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 14%
(17:12:03|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 16%
(17:12:04|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 17%
(17:12:05|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 19%
(17:12:06|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 21%
(17:12:07|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 23%
(17:12:08|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 25%
(17:12:09|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 27%
(17:12:10|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 28%
(17:12:10|INFO|FML): Disconnecting Player: Server is still starting on Spigot+Forge 1.12.2 by CKATEPTb

(17:12:11|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 29%
(17:12:12|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 31%
(17:12:13|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 33%
(17:12:14|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 36%
(17:12:15|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 38%
(17:12:16|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 40%
(17:12:17|INFO|FML): Disconnecting Player: Server is still starting on Spigot+Forge 1.12.2 by CKATEPTb

(17:12:18|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 42%
(17:12:19|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 45%
(17:12:20|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 46%
(17:12:21|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 48%
(17:12:22|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 51%
(17:12:23|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 53%
(17:12:24|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 55%
(17:12:25|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 58%
(17:12:26|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 60%
(17:12:27|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 62%
(17:12:28|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 64%
(17:12:29|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 67%
(17:12:30|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 69%
(17:12:31|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 71%
(17:12:32|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 73%
(17:12:33|INFO|FML): Disconnecting Player: Server is still starting on Spigot+Forge 1.12.2 by CKATEPTb

(17:12:33|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 75%
(17:12:34|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 77%
(17:12:35|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 78%
(17:12:37|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 80%
(17:12:38|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 82%
(17:12:39|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 84%
(17:12:40|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 86%
(17:12:41|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 87%
(17:12:42|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 89%
(17:12:43|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 91%
(17:12:44|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 93%
(17:12:45|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 95%
(17:12:47|INFO|net.minecraft.server.MinecraftServer): Preparing spawn area: 97%
 
(17:10:49|INFO|STDOUT): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:debug:20]: [DEBUG] Parsing hooks container com.mymod.Hooks
(17:10:49|INFO|LaunchWrapper): Calling tweak class net.minecraftforge.fml.common.launcher.FMLDeobfTweaker
(17:10:49|INFO|STDOUT): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:debug:20]: [DEBUG] Injecting hooks into class net.minecraftforge.fml.common.Loader
(17:10:50|INFO|STDOUT): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:debug:20]: [DEBUG] Patching method net.minecraftforge.fml.common.Loader#injectData([Ljava/lang/Object;)
(17:10:50|INFO|STDOUT): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:30]: [SEVERE] Can not load obfuscated method names
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]: java.io.IOException: Methods dictionary not found

Вот же ошибка.
Он зашел в твой мод за @Hook атрибутом.
Далее попытался вставить хук и сдохло все.
 

sk9zist :l

Исправился
981
18
157
(17:10:50|INFO|STDOUT): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:30]: [SEVERE] Can not load obfuscated method names
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]: java.io.IOException: Methods dictionary not found
(17:10:50|INFO|STDERR): [hrmhooks.hooklib.asm.HookLogger$SystemOutLogger:severe:36]: at hrmhooks.hooklib.minecraft.MinecraftClassTransformer.loadMethodNames(MinecraftClassTransformer.java:52)

Ну тут смотри, нет таблицы методов.
Чтото походу плохо декомпилировалось из исходников.
Сложно так сходу сказать, явно тут нужны знания исходников или этой hooklib

(17:10:49|INFO|FML): [HOOKLIB] Obfuscated: true

еще такая строчка. Обфускация включена. Может это как то относится к таблице методов.
 
Сверху