Est-il Op?
-
Donc, mon nouveau code:
package diabolicatrix.base; import cpw.mods.fml.common.network.simpleimpl.IMessage; import cpw.mods.fml.common.network.simpleimpl.IMessageHandler; import cpw.mods.fml.common.network.simpleimpl.MessageContext; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.server.MinecraftServer; public class PacketOp implements IMessage { @Override public void fromBytes(ByteBuf buf) {} @Override public void toBytes(ByteBuf buf) {} public static class Handler implements IMessageHandler <packetop, imessage="">{ private boolean isOp; @Override public IMessage onMessage(PacketOp message, MessageContext ctx) { EntityPlayerMP player = ctx.getServerHandler().playerEntity; System.out.println("Message Reçu"); if(MinecraftServer.getServer().getConfigurationManager().func_152596_g(player.getGameProfile())) { System.out.println("op"); Minecraft.getMinecraft().displayGuiScreen(new GuiMouseOver("OP!!")); } else { System.out.println("player"); Minecraft.getMinecraft().displayGuiScreen(new GuiMouseOver("Player!!")); } return null; } } }Mon client est parfait si le allow cheats est à off, ça affiche player sinon ça affiche op.
Mon server crash et je ne comprend pas…
[22:16:21] [Server thread/ERROR] [FML]: The following problems were captured during this phase [22:16:21] [Server thread/ERROR] [FML]: Caught exception from t4 java.lang.NoClassDefFoundError: Lnet/minecraft/client/Minecraft; at java.lang.Class.getDeclaredFields0(Native Method) ~[?:1.8.0_51] at java.lang.Class.privateGetDeclaredFields(Unknown Source) ~[?:1.8.0_51] at java.lang.Class.getDeclaredField(Unknown Source) ~[?:1.8.0_51] at cpw.mods.fml.common.ProxyInjector.inject(ProxyInjector.java:43) ~[ProxyInjector.class:?] at cpw.mods.fml.common.FMLModContainer.constructMod(FMLModContainer.java:512) ~[FMLModContainer.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_51] at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[guava-17.0.jar:?] at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[guava-17.0.jar:?] at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:212) ~[LoadController.class:?] at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:190) ~[LoadController.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_51] at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[guava-17.0.jar:?] at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[guava-17.0.jar:?] at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:119) [LoadController.class:?] at cpw.mods.fml.common.Loader.loadMods(Loader.java:513) [Loader.class:?] at cpw.mods.fml.server.FMLServerHandler.beginServerLoading(FMLServerHandler.java:87) [FMLServerHandler.class:?] at cpw.mods.fml.common.FMLCommonHandler.onServerStart(FMLCommonHandler.java:314) [FMLCommonHandler.class:?] at net.minecraft.server.dedicated.DedicatedServer.startServer(DedicatedServer.java:120) [DedicatedServer.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:445) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:752) [MinecraftServer$2.class:?] Caused by: java.lang.ClassNotFoundException: net.minecraft.client.Minecraft at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:191) ~[launchwrapper-1.12.jar:?] at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_51] at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_51] … 32 more Caused by: java.lang.RuntimeException: Attempted to load class net/minecraft/client/Minecraft for invalid side SERVER at cpw.mods.fml.common.asm.transformers.SideTransformer.transform(SideTransformer.java:50) ~[forgeSrc-1.7.10-10.13.4.1481-1.7.10.jar:?] at net.minecraft.launchwrapper.LaunchClassLoader.runTransformers(LaunchClassLoader.java:279) ~[launchwrapper-1.12.jar:?] at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:176) ~[launchwrapper-1.12.jar:?] at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_51] at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_51] … 32 more [22:16:21] [Server thread/ERROR]: Encountered an unexpected exception cpw.mods.fml.common.LoaderException: java.lang.NoClassDefFoundError: Lnet/minecraft/client/Minecraft; at cpw.mods.fml.common.LoadController.transition(LoadController.java:163) ~[LoadController.class:?] at cpw.mods.fml.common.Loader.loadMods(Loader.java:544) ~[Loader.class:?] at cpw.mods.fml.server.FMLServerHandler.beginServerLoading(FMLServerHandler.java:87) ~[FMLServerHandler.class:?] at cpw.mods.fml.common.FMLCommonHandler.onServerStart(FMLCommonHandler.java:314) ~[FMLCommonHandler.class:?] at net.minecraft.server.dedicated.DedicatedServer.startServer(DedicatedServer.java:120) ~[DedicatedServer.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:445) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:752) [MinecraftServer$2.class:?] Caused by: java.lang.NoClassDefFoundError: Lnet/minecraft/client/Minecraft; at java.lang.Class.getDeclaredFields0(Native Method) ~[?:1.8.0_51] at java.lang.Class.privateGetDeclaredFields(Unknown Source) ~[?:1.8.0_51] at java.lang.Class.getDeclaredField(Unknown Source) ~[?:1.8.0_51] at cpw.mods.fml.common.ProxyInjector.inject(ProxyInjector.java:43) ~[ProxyInjector.class:?] at cpw.mods.fml.common.FMLModContainer.constructMod(FMLModContainer.java:512) ~[FMLModContainer.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_51] at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[guava-17.0.jar:?] at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[guava-17.0.jar:?] at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:212) ~[LoadController.class:?] at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:190) ~[LoadController.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_51] at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[guava-17.0.jar:?] at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[guava-17.0.jar:?] at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:119) ~[LoadController.class:?] at cpw.mods.fml.common.Loader.loadMods(Loader.java:513) ~[Loader.class:?] … 5 more Caused by: java.lang.ClassNotFoundException: net.minecraft.client.Minecraft at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:191) ~[launchwrapper-1.12.jar:?] at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_51] at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_51] at java.lang.Class.getDeclaredFields0(Native Method) ~[?:1.8.0_51] at java.lang.Class.privateGetDeclaredFields(Unknown Source) ~[?:1.8.0_51] at java.lang.Class.getDeclaredField(Unknown Source) ~[?:1.8.0_51] at cpw.mods.fml.common.ProxyInjector.inject(ProxyInjector.java:43) ~[ProxyInjector.class:?] at cpw.mods.fml.common.FMLModContainer.constructMod(FMLModContainer.java:512) ~[FMLModContainer.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_51] at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[guava-17.0.jar:?] at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[guava-17.0.jar:?] at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:212) ~[LoadController.class:?] at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:190) ~[LoadController.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_51] at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[guava-17.0.jar:?] at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[guava-17.0.jar:?] at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:119) ~[LoadController.class:?] at cpw.mods.fml.common.Loader.loadMods(Loader.java:513) ~[Loader.class:?] … 5 more Caused by: java.lang.RuntimeException: Attempted to load class net/minecraft/client/Minecraft for invalid side SERVER at cpw.mods.fml.common.asm.transformers.SideTransformer.transform(SideTransformer.java:50) ~[forgeSrc-1.7.10-10.13.4.1481-1.7.10.jar:?] at net.minecraft.launchwrapper.LaunchClassLoader.runTransformers(LaunchClassLoader.java:279) ~[launchwrapper-1.12.jar:?] at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:176) ~[launchwrapper-1.12.jar:?] at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_51] at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_51] at java.lang.Class.getDeclaredFields0(Native Method) ~[?:1.8.0_51] at java.lang.Class.privateGetDeclaredFields(Unknown Source) ~[?:1.8.0_51] at java.lang.Class.getDeclaredField(Unknown Source) ~[?:1.8.0_51] at cpw.mods.fml.common.ProxyInjector.inject(ProxyInjector.java:43) ~[ProxyInjector.class:?] at cpw.mods.fml.common.FMLModContainer.constructMod(FMLModContainer.java:512) ~[FMLModContainer.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_51] at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[guava-17.0.jar:?] at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[guava-17.0.jar:?] at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:212) ~[LoadController.class:?] at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:190) ~[LoadController.class:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_51] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_51] at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[guava-17.0.jar:?] at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[guava-17.0.jar:?] at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[guava-17.0.jar:?] at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:119) ~[LoadController.class:?] at cpw.mods.fml.common.Loader.loadMods(Loader.java:513) ~[Loader.class:?] … 5 more [22:16:21] [Server thread/ERROR]: This crash report has been saved to: C:\Users\alexy\Desktop\Forge\eclipse\.\crash-reports\crash-2015-07-28_22.16.21-server.txt [22:16:21] [Server thread/WARN] [FML]: Can't revert to frozen GameData state without freezing first. [22:16:21] [Server thread/INFO] [FML]: Applying holder lookups [22:16:21] [Server thread/INFO] [FML]: Holder lookups applied [22:16:21] [Server thread/INFO] [FML]: The state engine was in incorrect state ERRORED and forced into state SERVER_STOPPED. Errors may have been discarded. [22:16:21] [Server thread/INFO] [FML]: The state engine was in incorrect state ERRORED and forced into state AVAILABLE. Errors may have been discarded. Java HotSpot(TM) Client VM warning: Using incremental CMS is deprecated and will likely be removed in a future release ```</packetop,> -
La classe Minecraft n’existe pas côté client.
Tu dois faire comme ça :@Override public IMessage onMessage(PacketOp message, MessageContext ctx) { EntityPlayerMP player = ctx.getServerHandler().playerEntity; System.out.println("Message Reçu"); if(MinecraftServer.getServer().getConfigurationManager().func_152596_g(player.getGameProfile())) { System.out.println("op"); return new PacketOpenAdminGui("OP!!"); } else { System.out.println("player"); return new PacketOpenAdminGui("Player!!"); } return null; }Ensuite tu créé une classe PacketOpenAdminGui dans laquelle tu fais passer la variable string et dans le handle (qui sera donc côté client cette fois) tu fais l’action du openGui.
-
Ton premier code est correct.
Juste le nom de paquet qui est a changer pour éviter les confusion.
Le premier paquet que tu envoie sert a dire au serveur que tu souhaite ouvrir un GUI mais qu’il te faut plus d’information. Donc un bon nom de paquet serait par exemple “PacketAskForGui” ou un truc du genre.Coté serveur, le handler reçoit le paquet.
La mission du handler ici, c’est de répondre au client.
Donc le handler doit vérifier que le joueur est OP, et lui retourner un paquet avec cette information.
Ta classe Handler implémente IMessageHandler avec 2 types générique <laclassdupacketreçu, laclassdupacketrenvoié=“”>Donc dans ton Handler il faut que tu remplace IMessage par la class d’un nouveau paquet.
On appellera cette classe PacketOpenGui mais le nom n’a pas d’importance tant que ça reste logique.
C’est la ou tu dois avec un attribut boolean isOp, c’est dans ton PacketOpenGui.Donc dans le Handler, tu crées une nouvelle instance de ton PacketOpenGui et au lieu de faire un return null, tu retournes ton objet PacketOpenGui.
Assure toi d’avoir bien enregistré le packet avec network.registerMessage();
Incrémente le discriminant (l’id du packet) de 1 et change la side, puisque cette fois ci c’est le client qui reçoit le packet.
Donc Side.Client.Dans ton PacketOpenGui.Handler tu vérifies le contenue de ton PacketOpenGui, et tu ouvre le GUI que tu veux en conséquence.</laclassdupacketreçu,>
-
[11:51:27] [Server thread/ERROR] [FML]: FMLIndexedMessageCodec exception caught io.netty.handler.codec.DecoderException: java.lang.InstantiationException: diabolicatrix.base.PacketOpenPlayerMenu at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:99) ~[MessageToMessageDecoder.class:?] at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) ~[MessageToMessageCodec.class:?] at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:337) [DefaultChannelHandlerContext.class:?] at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:323) [DefaultChannelHandlerContext.class:?] at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:785) [DefaultChannelPipeline.class:?] at io.netty.channel.embedded.EmbeddedChannel.writeInbound(EmbeddedChannel.java:169) [EmbeddedChannel.class:?] at cpw.mods.fml.common.network.internal.FMLProxyPacket.processPacket(FMLProxyPacket.java:86) [FMLProxyPacket.class:?] at net.minecraft.network.NetworkManager.processReceivedPackets(NetworkManager.java:241) [NetworkManager.class:?] at net.minecraft.network.NetworkSystem.networkTick(NetworkSystem.java:182) [NetworkSystem.class:?] at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:726) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:614) [MinecraftServer.class:?] at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:118) [IntegratedServer.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:485) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:752) [MinecraftServer$2.class:?] Caused by: java.lang.InstantiationException: diabolicatrix.base.PacketOpenPlayerMenu at java.lang.Class.newInstance(Unknown Source) ~[?:1.8.0_51] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:75) ~[FMLIndexedMessageToMessageCodec.class:?] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:17) ~[FMLIndexedMessageToMessageCodec.class:?] at io.netty.handler.codec.MessageToMessageCodec$2.decode(MessageToMessageCodec.java:81) ~[MessageToMessageCodec$2.class:?] at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89) ~[MessageToMessageDecoder.class:?] … 13 more Caused by: java.lang.NoSuchMethodException: diabolicatrix.base.PacketOpenPlayerMenu.<init>() at java.lang.Class.getConstructor0(Unknown Source) ~[?:1.8.0_51] at java.lang.Class.newInstance(Unknown Source) ~[?:1.8.0_51] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:75) ~[FMLIndexedMessageToMessageCodec.class:?] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:17) ~[FMLIndexedMessageToMessageCodec.class:?] at io.netty.handler.codec.MessageToMessageCodec$2.decode(MessageToMessageCodec.java:81) ~[MessageToMessageCodec$2.class:?] at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89) ~[MessageToMessageDecoder.class:?] … 13 more [11:51:27] [Server thread/ERROR] [FML]: SimpleChannelHandlerWrapper exception io.netty.handler.codec.DecoderException: java.lang.InstantiationException: diabolicatrix.base.PacketOpenPlayerMenu at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:99) ~[MessageToMessageDecoder.class:?] at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) ~[MessageToMessageCodec.class:?] at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:337) [DefaultChannelHandlerContext.class:?] at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:323) [DefaultChannelHandlerContext.class:?] at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:785) [DefaultChannelPipeline.class:?] at io.netty.channel.embedded.EmbeddedChannel.writeInbound(EmbeddedChannel.java:169) [EmbeddedChannel.class:?] at cpw.mods.fml.common.network.internal.FMLProxyPacket.processPacket(FMLProxyPacket.java:86) [FMLProxyPacket.class:?] at net.minecraft.network.NetworkManager.processReceivedPackets(NetworkManager.java:241) [NetworkManager.class:?] at net.minecraft.network.NetworkSystem.networkTick(NetworkSystem.java:182) [NetworkSystem.class:?] at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:726) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:614) [MinecraftServer.class:?] at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:118) [IntegratedServer.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:485) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:752) [MinecraftServer$2.class:?] Caused by: java.lang.InstantiationException: diabolicatrix.base.PacketOpenPlayerMenu at java.lang.Class.newInstance(Unknown Source) ~[?:1.8.0_51] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:75) ~[FMLIndexedMessageToMessageCodec.class:?] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:17) ~[FMLIndexedMessageToMessageCodec.class:?] at io.netty.handler.codec.MessageToMessageCodec$2.decode(MessageToMessageCodec.java:81) ~[MessageToMessageCodec$2.class:?] at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89) ~[MessageToMessageDecoder.class:?] … 13 more Caused by: java.lang.NoSuchMethodException: diabolicatrix.base.PacketOpenPlayerMenu.<init>() at java.lang.Class.getConstructor0(Unknown Source) ~[?:1.8.0_51] at java.lang.Class.newInstance(Unknown Source) ~[?:1.8.0_51] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:75) ~[FMLIndexedMessageToMessageCodec.class:?] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:17) ~[FMLIndexedMessageToMessageCodec.class:?] at io.netty.handler.codec.MessageToMessageCodec$2.decode(MessageToMessageCodec.java:81) ~[MessageToMessageCodec$2.class:?] at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89) ~[MessageToMessageDecoder.class:?] … 13 more [11:51:27] [Server thread/ERROR] [FML]: There was a critical exception handling a packet on channel T4Channel io.netty.handler.codec.DecoderException: java.lang.InstantiationException: diabolicatrix.base.PacketOpenPlayerMenu at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:99) ~[MessageToMessageDecoder.class:?] at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) ~[MessageToMessageCodec.class:?] at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:337) ~[DefaultChannelHandlerContext.class:?] at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:323) ~[DefaultChannelHandlerContext.class:?] at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:785) ~[DefaultChannelPipeline.class:?] at io.netty.channel.embedded.EmbeddedChannel.writeInbound(EmbeddedChannel.java:169) ~[EmbeddedChannel.class:?] at cpw.mods.fml.common.network.internal.FMLProxyPacket.processPacket(FMLProxyPacket.java:86) [FMLProxyPacket.class:?] at net.minecraft.network.NetworkManager.processReceivedPackets(NetworkManager.java:241) [NetworkManager.class:?] at net.minecraft.network.NetworkSystem.networkTick(NetworkSystem.java:182) [NetworkSystem.class:?] at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:726) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:614) [MinecraftServer.class:?] at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:118) [IntegratedServer.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:485) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:752) [MinecraftServer$2.class:?] Caused by: java.lang.InstantiationException: diabolicatrix.base.PacketOpenPlayerMenu at java.lang.Class.newInstance(Unknown Source) ~[?:1.8.0_51] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:75) ~[FMLIndexedMessageToMessageCodec.class:?] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:17) ~[FMLIndexedMessageToMessageCodec.class:?] at io.netty.handler.codec.MessageToMessageCodec$2.decode(MessageToMessageCodec.java:81) ~[MessageToMessageCodec$2.class:?] at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89) ~[MessageToMessageDecoder.class:?] … 13 more Caused by: java.lang.NoSuchMethodException: diabolicatrix.base.PacketOpenPlayerMenu.<init>() at java.lang.Class.getConstructor0(Unknown Source) ~[?:1.8.0_51] at java.lang.Class.newInstance(Unknown Source) ~[?:1.8.0_51] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:75) ~[FMLIndexedMessageToMessageCodec.class:?] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:17) ~[FMLIndexedMessageToMessageCodec.class:?] at io.netty.handler.codec.MessageToMessageCodec$2.decode(MessageToMessageCodec.java:81) ~[MessageToMessageCodec$2.class:?] at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89) ~[MessageToMessageDecoder.class:?] … 13 more [11:51:27] [Server thread/INFO]: Player497 lost connection: TextComponent{text='A fatal error has occured, this connection is terminated', siblings=[], style=Style{hasParent=false, color=null, bold=null, italic=null, underlined=null, obfuscated=null, clickEvent=null, hoverEvent=null}} [11:51:27] [Server thread/INFO]: Player497 left the game [11:51:27] [Server thread/INFO]: Stopping singleplayer server as player logged out [11:51:27] [Server thread/INFO]: Stopping server [11:51:27] [Server thread/INFO]: Saving players [11:51:27] [Server thread/INFO]: Saving worlds [11:51:27] [Server thread/INFO]: Saving chunks for level 'New World'/Overworld [11:51:27] [Server thread/INFO]: Saving chunks for level 'New World'/Nether [11:51:27] [Server thread/INFO]: Saving chunks for level 'New World'/The End [11:51:27] [Server thread/INFO] [FML]: Unloading dimension 0 [11:51:27] [Server thread/INFO] [FML]: Unloading dimension -1 [11:51:27] [Server thread/INFO] [FML]: Unloading dimension 1 [11:51:27] [Server thread/INFO] [FML]: Applying holder lookups [11:51:27] [Server thread/INFO] [FML]: Holder lookups applied [11:51:34] [Client thread/INFO]: Connecting to localhost, 25565 [11:51:37] [Server thread/INFO]: Starting integrated minecraft server version 1.7.10 [11:51:37] [Server thread/INFO]: Generating keypair [11:51:37] [Server thread/INFO] [FML]: Injecting existing block and item data into this server instance [11:51:37] [Server thread/INFO] [FML]: Applying holder lookups [11:51:37] [Server thread/INFO] [FML]: Holder lookups applied [11:51:37] [Server thread/INFO] [FML]: Loading dimension 0 (New World) (net.minecraft.server.integrated.IntegratedServer@4d22e9) [11:51:37] [Server thread/INFO] [FML]: Loading dimension 1 (New World) (net.minecraft.server.integrated.IntegratedServer@4d22e9) [11:51:37] [Server thread/INFO] [FML]: Loading dimension -1 (New World) (net.minecraft.server.integrated.IntegratedServer@4d22e9) [11:51:37] [Server thread/INFO]: Preparing start region for level 0 [11:51:38] [Server thread/INFO]: Changing view distance to 8, from 10 [11:51:38] [Netty Client IO #3/INFO] [FML]: Server protocol version 2 [11:51:38] [Netty IO #3/INFO] [FML]: Client protocol version 2 [11:51:38] [Netty IO #3/INFO] [FML]: Client attempting to join with 4 mods : t4@1.0.1,FML@7.10.99.99,Forge@10.13.4.1481,mcp@9.05 [11:51:38] [Netty IO #3/INFO] [FML]: Attempting connection with missing mods [] at CLIENT [11:51:38] [Netty Client IO #3/INFO] [FML]: Attempting connection with missing mods [] at SERVER [11:51:38] [Server thread/INFO] [FML]: [Server thread] Server side modded connection established [11:51:38] [Server thread/INFO]: Player497[local:E:8e75903f] logged in with entity id 940 at (-75.98172863943033, 63.0, 307.58688578944117) [11:51:38] [Server thread/INFO]: Player497 joined the game [11:51:38] [Client thread/INFO] [FML]: [Client thread] Client side modded connection established [11:51:42] [Server thread/ERROR] [FML]: FMLIndexedMessageCodec exception caught io.netty.handler.codec.DecoderException: java.lang.InstantiationException: diabolicatrix.base.PacketOpenPlayerMenu at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:99) ~[MessageToMessageDecoder.class:?] at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) ~[MessageToMessageCodec.class:?] at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:337) [DefaultChannelHandlerContext.class:?] at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:323) [DefaultChannelHandlerContext.class:?] at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:785) [DefaultChannelPipeline.class:?] at io.netty.channel.embedded.EmbeddedChannel.writeInbound(EmbeddedChannel.java:169) [EmbeddedChannel.class:?] at cpw.mods.fml.common.network.internal.FMLProxyPacket.processPacket(FMLProxyPacket.java:86) [FMLProxyPacket.class:?] at net.minecraft.network.NetworkManager.processReceivedPackets(NetworkManager.java:241) [NetworkManager.class:?] at net.minecraft.network.NetworkSystem.networkTick(NetworkSystem.java:182) [NetworkSystem.class:?] at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:726) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:614) [MinecraftServer.class:?] at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:118) [IntegratedServer.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:485) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:752) [MinecraftServer$2.class:?] Caused by: java.lang.InstantiationException: diabolicatrix.base.PacketOpenPlayerMenu at java.lang.Class.newInstance(Unknown Source) ~[?:1.8.0_51] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:75) ~[FMLIndexedMessageToMessageCodec.class:?] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:17) ~[FMLIndexedMessageToMessageCodec.class:?] at io.netty.handler.codec.MessageToMessageCodec$2.decode(MessageToMessageCodec.java:81) ~[MessageToMessageCodec$2.class:?] at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89) ~[MessageToMessageDecoder.class:?] … 13 more Caused by: java.lang.NoSuchMethodException: diabolicatrix.base.PacketOpenPlayerMenu.<init>() at java.lang.Class.getConstructor0(Unknown Source) ~[?:1.8.0_51] at java.lang.Class.newInstance(Unknown Source) ~[?:1.8.0_51] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:75) ~[FMLIndexedMessageToMessageCodec.class:?] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:17) ~[FMLIndexedMessageToMessageCodec.class:?] at io.netty.handler.codec.MessageToMessageCodec$2.decode(MessageToMessageCodec.java:81) ~[MessageToMessageCodec$2.class:?] at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89) ~[MessageToMessageDecoder.class:?] … 13 more [11:51:42] [Server thread/ERROR] [FML]: SimpleChannelHandlerWrapper exception io.netty.handler.codec.DecoderException: java.lang.InstantiationException: diabolicatrix.base.PacketOpenPlayerMenu at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:99) ~[MessageToMessageDecoder.class:?] at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) ~[MessageToMessageCodec.class:?] at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:337) [DefaultChannelHandlerContext.class:?] at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:323) [DefaultChannelHandlerContext.class:?] at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:785) [DefaultChannelPipeline.class:?] at io.netty.channel.embedded.EmbeddedChannel.writeInbound(EmbeddedChannel.java:169) [EmbeddedChannel.class:?] at cpw.mods.fml.common.network.internal.FMLProxyPacket.processPacket(FMLProxyPacket.java:86) [FMLProxyPacket.class:?] at net.minecraft.network.NetworkManager.processReceivedPackets(NetworkManager.java:241) [NetworkManager.class:?] at net.minecraft.network.NetworkSystem.networkTick(NetworkSystem.java:182) [NetworkSystem.class:?] at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:726) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:614) [MinecraftServer.class:?] at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:118) [IntegratedServer.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:485) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:752) [MinecraftServer$2.class:?] Caused by: java.lang.InstantiationException: diabolicatrix.base.PacketOpenPlayerMenu at java.lang.Class.newInstance(Unknown Source) ~[?:1.8.0_51] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:75) ~[FMLIndexedMessageToMessageCodec.class:?] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:17) ~[FMLIndexedMessageToMessageCodec.class:?] at io.netty.handler.codec.MessageToMessageCodec$2.decode(MessageToMessageCodec.java:81) ~[MessageToMessageCodec$2.class:?] at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89) ~[MessageToMessageDecoder.class:?] … 13 more Caused by: java.lang.NoSuchMethodException: diabolicatrix.base.PacketOpenPlayerMenu.<init>() at java.lang.Class.getConstructor0(Unknown Source) ~[?:1.8.0_51] at java.lang.Class.newInstance(Unknown Source) ~[?:1.8.0_51] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:75) ~[FMLIndexedMessageToMessageCodec.class:?] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:17) ~[FMLIndexedMessageToMessageCodec.class:?] at io.netty.handler.codec.MessageToMessageCodec$2.decode(MessageToMessageCodec.java:81) ~[MessageToMessageCodec$2.class:?] at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89) ~[MessageToMessageDecoder.class:?] … 13 more [11:51:42] [Server thread/ERROR] [FML]: There was a critical exception handling a packet on channel T4Channel io.netty.handler.codec.DecoderException: java.lang.InstantiationException: diabolicatrix.base.PacketOpenPlayerMenu at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:99) ~[MessageToMessageDecoder.class:?] at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) ~[MessageToMessageCodec.class:?] at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:337) ~[DefaultChannelHandlerContext.class:?] at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:323) ~[DefaultChannelHandlerContext.class:?] at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:785) ~[DefaultChannelPipeline.class:?] at io.netty.channel.embedded.EmbeddedChannel.writeInbound(EmbeddedChannel.java:169) ~[EmbeddedChannel.class:?] at cpw.mods.fml.common.network.internal.FMLProxyPacket.processPacket(FMLProxyPacket.java:86) [FMLProxyPacket.class:?] at net.minecraft.network.NetworkManager.processReceivedPackets(NetworkManager.java:241) [NetworkManager.class:?] at net.minecraft.network.NetworkSystem.networkTick(NetworkSystem.java:182) [NetworkSystem.class:?] at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:726) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:614) [MinecraftServer.class:?] at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:118) [IntegratedServer.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:485) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:752) [MinecraftServer$2.class:?] Caused by: java.lang.InstantiationException: diabolicatrix.base.PacketOpenPlayerMenu at java.lang.Class.newInstance(Unknown Source) ~[?:1.8.0_51] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:75) ~[FMLIndexedMessageToMessageCodec.class:?] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:17) ~[FMLIndexedMessageToMessageCodec.class:?] at io.netty.handler.codec.MessageToMessageCodec$2.decode(MessageToMessageCodec.java:81) ~[MessageToMessageCodec$2.class:?] at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89) ~[MessageToMessageDecoder.class:?] … 13 more Caused by: java.lang.NoSuchMethodException: diabolicatrix.base.PacketOpenPlayerMenu.<init>() at java.lang.Class.getConstructor0(Unknown Source) ~[?:1.8.0_51] at java.lang.Class.newInstance(Unknown Source) ~[?:1.8.0_51] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:75) ~[FMLIndexedMessageToMessageCodec.class:?] at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:17) ~[FMLIndexedMessageToMessageCodec.class:?] at io.netty.handler.codec.MessageToMessageCodec$2.decode(MessageToMessageCodec.java:81) ~[MessageToMessageCodec$2.class:?] at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:89) ~[MessageToMessageDecoder.class:?] … 13 more [11:51:42] [Server thread/INFO]: Stopping server [11:51:42] [Server thread/INFO]: Saving players [11:51:42] [Server thread/INFO]: Saving worlds [11:51:42] [Server thread/INFO]: Saving chunks for level 'New World'/Overworld [11:51:42] [Server thread/INFO]: Saving chunks for level 'New World'/Nether [11:51:42] [Server thread/INFO]: Saving chunks for level 'New World'/The End [11:51:43] [Server thread/INFO] [FML]: Unloading dimension 0 [11:51:43] [Server thread/INFO] [FML]: Unloading dimension -1 [11:51:43] [Server thread/INFO] [FML]: Unloading dimension 1 [11:51:43] [Server thread/INFO] [FML]: Applying holder lookups [11:51:43] [Server thread/INFO] [FML]: Holder lookups appliedMon PacketOp:
package diabolicatrix.base; import cpw.mods.fml.common.network.simpleimpl.IMessage; import cpw.mods.fml.common.network.simpleimpl.IMessageHandler; import cpw.mods.fml.common.network.simpleimpl.MessageContext; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.server.MinecraftServer; public class PacketOp implements IMessage { @Override public void fromBytes(ByteBuf buf) {} @Override public void toBytes(ByteBuf buf) {} public static class Handler implements IMessageHandler <packetop, packetopenplayermenu="">{ private boolean isOp; @Override public PacketOpenPlayerMenu onMessage(PacketOp message, MessageContext ctx) { EntityPlayerMP player = ctx.getServerHandler().playerEntity; System.out.println("Message Reçu"); if(MinecraftServer.getServer().getConfigurationManager().func_152596_g(player.getGameProfile())) { System.out.println("op"); return new PacketOpenPlayerMenu(true); } else { System.out.println("player"); return new PacketOpenPlayerMenu(false); } } } }Mon packopenplayer…:
package diabolicatrix.base; import cpw.mods.fml.common.network.simpleimpl.IMessage; import cpw.mods.fml.common.network.simpleimpl.IMessageHandler; import cpw.mods.fml.common.network.simpleimpl.MessageContext; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; public class PacketOpenPlayerMenu implements IMessage { public static boolean isOp; public PacketOpenPlayerMenu(boolean b) { this.isOp = b; } @Override public void fromBytes(ByteBuf buf) {} @Override public void toBytes(ByteBuf buf) {} public static class Handler implements IMessageHandler <packetopenplayermenu, imessage="">{ @Override public IMessage onMessage(PacketOpenPlayerMenu message, MessageContext ctx) { if(isOp) { Minecraft.getMinecraft().displayGuiScreen(new GuiMouseOverOp()); } else { Minecraft.getMinecraft().displayGuiScreen(new GuiMouseOver()); } return null; } } } ```</packetopenplayermenu,></packetop,></init></init></init></init></init></init> -
Il te manque un constructeur vide dans la classe PacketOpenPlayerMenu. Pour tous les paquets il faut toujours un constructeur vide.
Ajoutes :
public PacketOpenPlayerMenu() {
}
Et ta variable isOp ne devrait pas être static, dans le handler tu dois utiliser message.isOp au lieu de isOp. -
ça ne crash plus mais j’ai aucune réponse comme si le packetop ne recoit plus le packet
-
Mets des System.out.println(“blabla”); par-ci par là pour regarder si ça s’exécute ou pas.
-
Ma touche est détectée mais le packet n’est pas reçu
-
Tu as bien enregistré les paquets ?
-
Ouais
-
Envoi classe principale (celle avec le network), la classe du paquet et l’envoi du paquet.
-
J’envoie demain, je n’ai pas accès à mon ordi c’est pour ça que je ne l’ai pas encore donné
-
Dans ton PacketOpenPlayerMenu, les méthodes fromBytes(ByteBuf buf) et toBytes(ByteBuf buf) ne doivent pas être vide.
Relis le tutoriel.
Pourquoi as-tu utilisé static pour ton boolean isOp ? -
C’était pas volontaire, c’est eclipse qui me l’avait proposé, je l’ai enlevé après. Sinon, je de nouveau accès à mon ordi j’édit dans 2 min pour les codes.
-
C’était pas volontaire, c’est eclipse qui me l’avait proposé, je l’ai enlevé après. Sinon, je de nouveau accès à mon ordi j’édit dans 2 min pour les codes.
PS: qu’est-ce que j’utilise dans le fromByte?
Edit:
Main:
network = NetworkRegistry.INSTANCE.newSimpleChannel("T4Channel"); network.registerMessage(PacketOp.Handler.class, PacketOp.class, 0, Side.SERVER); network.registerMessage(PacketOpenPlayerMenu.Handler.class, PacketOpenPlayerMenu.class, 0, Side.CLIENT);PacketOp:
package diabolicatrix.base; import cpw.mods.fml.common.network.simpleimpl.IMessage; import cpw.mods.fml.common.network.simpleimpl.IMessageHandler; import cpw.mods.fml.common.network.simpleimpl.MessageContext; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.server.MinecraftServer; public class PacketOp implements IMessage { @Override public void fromBytes(ByteBuf buf) {} @Override public void toBytes(ByteBuf buf) {} public static class Handler implements IMessageHandler <packetop, packetopenplayermenu="">{ private boolean isOp; @Override public PacketOpenPlayerMenu onMessage(PacketOp message, MessageContext ctx) { EntityPlayerMP player = ctx.getServerHandler().playerEntity; System.out.println("Message Reçu"); if(MinecraftServer.getServer().getConfigurationManager().func_152596_g(player.getGameProfile())) { System.out.println("op"); return new PacketOpenPlayerMenu(true); } else { System.out.println("player"); return new PacketOpenPlayerMenu(false); } } } }PacketOpenPlayerMenu:
package diabolicatrix.base; import cpw.mods.fml.common.network.ByteBufUtils; import cpw.mods.fml.common.network.simpleimpl.IMessage; import cpw.mods.fml.common.network.simpleimpl.IMessageHandler; import cpw.mods.fml.common.network.simpleimpl.MessageContext; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; public class PacketOpenPlayerMenu implements IMessage { public boolean isOp; public PacketOpenPlayerMenu(boolean b) { this.isOp = b; } public PacketOpenPlayerMenu() { } @Override public void fromBytes(ByteBuf buf) { } @Override public void toBytes(ByteBuf buf) {} public static class Handler implements IMessageHandler <packetopenplayermenu, imessage="">{ @Override public IMessage onMessage(PacketOpenPlayerMenu message, MessageContext ctx) { if(message.isOp) { Minecraft.getMinecraft().displayGuiScreen(new GuiMouseOverOp()); } else { Minecraft.getMinecraft().displayGuiScreen(new GuiMouseOver()); } return null; } } } ```</packetopenplayermenu,></packetop,> -
Çà veut dire que t’as essayé d’appeler la valeur de façon statique. Or tu dois avoir un booléen par joueur
-
Ouais, pour le static, ça va mais pour les codes, j’ai edit mon message précédent, pour le formbyte et tobyte qu’est-ce que je dois mettre pour un boolean?
-
Incrémente le discriminant pour ton channel. Mets ta variable isOp en private.
Dans fromByte, tu as un ByteBuffer plein avec lequel tu remplis les attributs de ton objet.
Dans toByte, tu as un ByteBuffer vide que tu dois remplir avec les attributs de ton objet.
Je ne peux que te conseiller d’apprendre le Java car je ne pense pas que tu ai un bagage assez suffisant pour faire du modding Minecraft correctement. Je ne te dis pas ça pour te décourager mais au contraire, ça va t’éviter de patauger dans la boue pour chaques nouveautés et tu coderas beaucoup plus vite. -
Pour l’incrémentation c’était une erreur d’inattention sinon je ne comprend pas très bien l’utilité de frombyte/tobyte et ce qui faut que je mettes dedans, pour la vitesse j’ai aucun problème que ça me prenne 3 ans, ça ne me dérange pas :P. J’aime mieux apprendre avec quelque chose de concret comme Minecraft que de me mettre sur OpenClassroom et faire une calculatrice… :s
package diabolicatrix.base; import cpw.mods.fml.common.network.simpleimpl.IMessage; import cpw.mods.fml.common.network.simpleimpl.IMessageHandler; import cpw.mods.fml.common.network.simpleimpl.MessageContext; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.server.MinecraftServer; public class PacketOp implements IMessage { @Override public void fromBytes(ByteBuf buf) {} @Override public void toBytes(ByteBuf buf) {} public static class Handler implements IMessageHandler <packetop, packetopenplayermenu="">{ private boolean isOp; @Override public PacketOpenPlayerMenu onMessage(PacketOp message, MessageContext ctx) { EntityPlayerMP player = ctx.getServerHandler().playerEntity; System.out.println("Message Reçu"); if(MinecraftServer.getServer().getConfigurationManager().func_152596_g(player.getGameProfile())) { System.out.println("op"); return new PacketOpenPlayerMenu(true); } else { System.out.println("player"); return new PacketOpenPlayerMenu(false); } } } }Mon code fonctionne jusqu’ici, si le joueur est op, ça ecrit op sinon player mais le packetopenplayermenu ne récupère pas le true ou le false donc c’est toujours le menu player qui ouvre.</packetop,>
-
Pour le paquet qui vient du client, y’a pas besoin d’y insérer des données. En revanche il faut écrire ton booléen dans ton autre paquet : fromBytes et toBytes sont comme les NBT, une fonction lit, l’autre écrit, regarde le tuto de blackout.