MFF

    Minecraft Forge France
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes
    • Forge Events
      • Automatique
      • Foncé
      • Clair
    • S'inscrire
    • Se connecter

    Est-il Op?

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    42 Messages 4 Publieurs 10.0k Vues 1 Watching
    Charger plus de messages
    • Du plus ancien au plus récent
    • Du plus récent au plus ancien
    • Les plus votés
    Répondre
    • Répondre à l'aide d'un nouveau sujet
    Se connecter pour répondre
    Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
    • robin4002R Hors-ligne
      robin4002 Moddeurs confirmés Rédacteurs Administrateurs
      dernière édition par

      public T4EventHandler eh;
      ça c’est bon pour causer un npe.
      Ce n’est pas comme ça que tu dois faire, tu dois renvoyer un paquet réponse.
      Et le crash que tu nous as envoyé n’a aucun rapport avec ton code, c’est le lib openAL (pour le son) qui crash.

      1 réponse Dernière réponse Répondre Citer 0
      • RedRelayR Hors-ligne
        RedRelay Moddeurs confirmés
        dernière édition par

        La dernière fois que j’ai eu cette erreur “Failed to write core dump” c’est parce que je n’allouer pas assez de mémoire a Java au démarrage. Mais comme l’a dit Robin, ça n’a rien a voir avec ton mod.

        Tes attributs dans ton packet handler ne servent à rien.
        Tu manques d’optimisation.
        Je pense que tu n’as pas compris la séparation Client/Server de Minecraft ni le fonctionnement des paquets.

        Suit mon tuto étape par étape, je vais te guider si tu veux.
        Commence par envoyer un simple paquet du client vers le serveur qui lui dit : “Je veux savoir si je suis op”.
        Ce paquet n’a pas besoin de contenir des informations.
        Met juste un System.out.println(“Paquet reçu”) lorsque le serveur reçoit ce paquet.

        Post ton code, je t’explique la suite après. On va faire étape par étape.

        –------------------------------------------------------------------------------------
        Si tu trouves mon intervention pertinente, n'hésite pas a m…

        1 réponse Dernière réponse Répondre Citer 0
        • DiabolicaTrixD Hors-ligne
          DiabolicaTrix Correcteurs Moddeurs confirmés
          dernière édition par

          Pour le crash j’avais bien vu que ca n’était pas un crash normal mais bon.

          Donc j’ai fait comme tu as dit: j’ai suivi le tutoriel et ça fonctionne(je println quand je reçois le packet)

          Mon 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;
          
          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="">{
          
          @Override
          public IMessage onMessage(PacketOp message, MessageContext ctx) {
          System.out.println("Message Reçu");
          return null;
          }
          
          }
          
          }
          
          

          Le event handle:

          package diabolicatrix.base;
          
          import java.util.Iterator;
          
          import cpw.mods.fml.common.eventhandler.EventPriority;
          import cpw.mods.fml.common.eventhandler.SubscribeEvent;
          import cpw.mods.fml.common.gameevent.InputEvent.KeyInputEvent;
          import cpw.mods.fml.relauncher.Side;
          import cpw.mods.fml.relauncher.SideOnly;
          import diabolicatrix.base.proxy.ClientProxy;
          import diabolicatrix.base.Base;
          import ibxm.Player;
          import net.minecraft.client.Minecraft;
          import net.minecraft.client.entity.EntityClientPlayerMP;
          import net.minecraft.client.entity.EntityOtherPlayerMP;
          import net.minecraft.client.gui.FontRenderer;
          import net.minecraft.command.ICommandSender;
          import net.minecraft.entity.EntityLiving;
          import net.minecraft.entity.player.EntityPlayer;
          import net.minecraft.entity.player.EntityPlayerMP;
          import net.minecraft.client.gui.GuiLabel;
          import net.minecraft.client.gui.GuiScreen;
          import net.minecraft.server.MinecraftServer;
          import net.minecraft.server.management.ServerConfigurationManager;
          import net.minecraft.server.management.UserListOpsEntry;
          import net.minecraft.world.World;
          import net.minecraftforge.client.event.RenderGameOverlayEvent;
          import net.minecraftforge.client.event.RenderGameOverlayEvent.ElementType;
          
          public class T4EventHandler {
          
          private MinecraftServer mcs;
          private Minecraft mc;
          
          @SubscribeEvent
          @SideOnly(Side.CLIENT)
          public void onKeyInput(KeyInputEvent event) {
          if (ClientProxy.overMouse.isPressed()) {
          if (Minecraft.getMinecraft().objectMouseOver.entityHit instanceof EntityLiving) {
          Base.instance.network.sendToServer(new PacketOp());
          //Minecraft.getMinecraft().displayGuiScreen(new GuiMouseOver());
          }
          }
          }
          
          }
          
          

          Mon main:

          network = NetworkRegistry.INSTANCE.newSimpleChannel("T4Channel");
          network.registerMessage(PacketOp.Handler.class, PacketOp.class, 0, Side.SERVER);
          

          PS: je crois que j’ai signalé ton message, je cherchais le + :P</packetop,>

          1 réponse Dernière réponse Répondre Citer 0
          • SCAREXS Hors-ligne
            SCAREX
            dernière édition par

            Il te reste juste à renvoyer au client un autre paquet contenant un booléen pour savoir si oui ou non le joueur est op. Mais je te conseille plutôt d’envoyer des informations qui exécuteront la tâche voulut si le joueur est op. Car c’est très simple ensuite de cheater avec ton mod si t’utilises les paquet pour savoir si le joueur est op.

            Site web contenant mes scripts : http://SCAREXgaming.github.io

            Pas de demandes de support par MP ni par skype SVP.
            Je n'accepte sur skype que l…

            1 réponse Dernière réponse Répondre Citer 0
            • DiabolicaTrixD Hors-ligne
              DiabolicaTrix Correcteurs Moddeurs confirmés
              dernière édition par

              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,>
              1 réponse Dernière réponse Répondre Citer 0
              • robin4002R Hors-ligne
                robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                dernière édition par

                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.

                1 réponse Dernière réponse Répondre Citer 0
                • RedRelayR Hors-ligne
                  RedRelay Moddeurs confirmés
                  dernière édition par

                  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,>

                  –------------------------------------------------------------------------------------
                  Si tu trouves mon intervention pertinente, n'hésite pas a m…

                  1 réponse Dernière réponse Répondre Citer 0
                  • DiabolicaTrixD Hors-ligne
                    DiabolicaTrix Correcteurs Moddeurs confirmés
                    dernière édition par

                    [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 applied
                    
                    

                    Mon 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>
                    1 réponse Dernière réponse Répondre Citer 0
                    • robin4002R Hors-ligne
                      robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                      dernière édition par

                      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.

                      1 réponse Dernière réponse Répondre Citer 0
                      • DiabolicaTrixD Hors-ligne
                        DiabolicaTrix Correcteurs Moddeurs confirmés
                        dernière édition par

                        ça ne crash plus mais j’ai aucune réponse comme si le packetop ne recoit plus le packet

                        1 réponse Dernière réponse Répondre Citer 0
                        • robin4002R Hors-ligne
                          robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                          dernière édition par

                          Mets des System.out.println(“blabla”); par-ci par là pour regarder si ça s’exécute ou pas.

                          1 réponse Dernière réponse Répondre Citer 0
                          • DiabolicaTrixD Hors-ligne
                            DiabolicaTrix Correcteurs Moddeurs confirmés
                            dernière édition par

                            Ma touche est détectée mais le packet n’est pas reçu

                            1 réponse Dernière réponse Répondre Citer 0
                            • robin4002R Hors-ligne
                              robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                              dernière édition par

                              Tu as bien enregistré les paquets ?

                              1 réponse Dernière réponse Répondre Citer 0
                              • DiabolicaTrixD Hors-ligne
                                DiabolicaTrix Correcteurs Moddeurs confirmés
                                dernière édition par

                                Ouais

                                1 réponse Dernière réponse Répondre Citer 0
                                • SCAREXS Hors-ligne
                                  SCAREX
                                  dernière édition par

                                  Envoi classe principale (celle avec le network), la classe du paquet et l’envoi du paquet.

                                  Site web contenant mes scripts : http://SCAREXgaming.github.io

                                  Pas de demandes de support par MP ni par skype SVP.
                                  Je n'accepte sur skype que l…

                                  1 réponse Dernière réponse Répondre Citer 0
                                  • DiabolicaTrixD Hors-ligne
                                    DiabolicaTrix Correcteurs Moddeurs confirmés
                                    dernière édition par

                                    J’envoie demain, je n’ai pas accès à mon ordi c’est pour ça que je ne l’ai pas encore donné

                                    1 réponse Dernière réponse Répondre Citer 0
                                    • RedRelayR Hors-ligne
                                      RedRelay Moddeurs confirmés
                                      dernière édition par

                                      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 ?

                                      –------------------------------------------------------------------------------------
                                      Si tu trouves mon intervention pertinente, n'hésite pas a m…

                                      1 réponse Dernière réponse Répondre Citer 0
                                      • DiabolicaTrixD Hors-ligne
                                        DiabolicaTrix Correcteurs Moddeurs confirmés
                                        dernière édition par

                                        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.

                                        1 réponse Dernière réponse Répondre Citer 0
                                        • DiabolicaTrixD Hors-ligne
                                          DiabolicaTrix Correcteurs Moddeurs confirmés
                                          dernière édition par

                                          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,>
                                          1 réponse Dernière réponse Répondre Citer 0
                                          • SCAREXS Hors-ligne
                                            SCAREX
                                            dernière édition par

                                            Çà veut dire que t’as essayé d’appeler la valeur de façon statique. Or tu dois avoir un booléen par joueur

                                            Site web contenant mes scripts : http://SCAREXgaming.github.io

                                            Pas de demandes de support par MP ni par skype SVP.
                                            Je n'accepte sur skype que l…

                                            1 réponse Dernière réponse Répondre Citer 0
                                            • 1
                                            • 2
                                            • 3
                                            • 1 / 3
                                            • Premier message
                                              Dernier message
                                            Design by Woryk
                                            ContactMentions Légales

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB