MFF

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

    [1.7.2 ++] Le network

    Planifier Épinglé Verrouillé Déplacé Le réseau
    1.11.x1.12.x1.7.x1.8.x1.9.x
    66 Messages 20 Publieurs 40.0k Vues 4 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.
    • JackCarterSmithJ Hors-ligne
      JackCarterSmith
      dernière édition par

      @‘SCAREX’:

      https://www.youtube.com/watch?v=YlQBEuEkBso
      Youtube Video

      Merci mais j’avais bien regardé ces vidéos (elles me parlaient beaucoup plus que le reste des explications).
      Peut être que je me perds dans la façon dont est fait un packet ? D’une façon est ce que les packets sont en faites une boite dans lequel on mets des données sérialisées avec l’instruction ‘toByte’ avant d’être envoyé à un récepteur spécifique, qui à sont tour extraira les données pour les traiter, est-ce bien cela ?

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

        Globalement un paquet est une sorte de boîte où tu y enregistres des bits que tu envoies au joueur ou au serveur et ensuite les bits sont lus de façon à récupérer les variables derrières pour les traiter

        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
        • DeletedD Hors-ligne
          Deleted
          dernière édition par

          Je pense que tu voulais dire des bits ?

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

            @‘SCAREX’:

            Globalement un paquet est une sorte de boîte où tu y enregistres des bits que tu envoies au joueur ou au serveur et ensuite les bits sont lus de façon à récupérer les variables derrières pour les traiter

            Et est-ce qu’il est possible de convertir une table de bits en bits pour être intégrer au message ou ça ne doit être que certains types de données uniquement ? Ce que je comptais faire, c’était de faire passer une table dans les paquets dont la première valeur serait le ‘id d’action’, une fois extrait par la classe message via la fonction onMessage(), il n’aura plus qu’à vérifier qu’elle est l’action à faire via une boucle conditionnel en ‘case’.
            Je souhaiterais connaitre votre avis sur cette idée.

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

              Tu peux écrire tout ce que tu veux, le seul truc c’est qu’il faut écrire dans l’ordre et lire dans le même ordre, tu peux très bien écrire une liste de bits, dans le tutoriel robin montre comment écrire une liste

              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
              • JackCarterSmithJ Hors-ligne
                JackCarterSmith
                dernière édition par

                @‘SCAREX’:

                Tu peux écrire tout ce que tu veux, le seul truc c’est qu’il faut écrire dans l’ordre et lire dans le même ordre, tu peux très bien écrire une liste de bites, dans le tutoriel robin montre comment écrire une liste

                Je vais les revoir à nouveaux, prendre des notes et mettre tous ça aux clairs se serra peut être plus simple.
                Merci.

                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

                  Un petit e en trop transforme complètement le sens d’un mot.
                  Que viennent faire des pénis dans cette discussion ? C’est bits, pas bites x)
                  Je modifies toutes ces fautes x)
                  On est sur minecraft forge france ici, pas sur p***hub.com

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

                    @‘Plaigon’:

                    Je pense que tu voulais dire des bits ?

                    @‘robin4002’:

                    Un petit e en trop transforme complètement le sens d’un mot.
                    Que viennent faire des pénis dans cette discussion ? C’est bits, pas bites x)
                    Je modifies toutes ces fautes x)
                    On est sur minecraft forge france ici, pas sur p***hub.com

                    Je devrais avoir honte, l’important était de savoir de quoi on parler sans sous entendu ^^
                    En revoyant la vidéo, j’avais pas remarquer le passage sur le channel de paquet… Je fais bien de noter 😛

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

                      Après quelques nouveaux essais pour tenter de faire communiquer une suite d’entier via les paquets, je retombe sans cesse sur cette erreur que j’ai du mal à comprendre :

                      [13:33:24] [Client thread/ERROR] [FML]: FMLIndexedMessageCodec exception caught
                      io.netty.handler.codec.DecoderException: java.lang.NullPointerException
                      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.client.multiplayer.PlayerControllerMP.updateController(PlayerControllerMP.java:317) [PlayerControllerMP.class:?]
                      at net.minecraft.client.Minecraft.runTick(Minecraft.java:1693) [Minecraft.class:?]
                      at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1039) [Minecraft.class:?]
                      at net.minecraft.client.Minecraft.run(Minecraft.java:962) [Minecraft.class:?]
                      at net.minecraft.client.main.Main.main(Main.java:164) [Main.class:?]
                      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_91]
                      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
                      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
                      at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
                      at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
                      at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
                      at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source) [start/:?]
                      at GradleStart.main(Unknown Source) [start/:?]
                      Caused by: java.lang.NullPointerException
                      at fr.jackcartersmith.ob.OBNetworkClient.fromBytes(OBNetworkClient.java:28) ~[OBNetworkClient.class:?]
                      at cpw.mods.fml.common.network.simpleimpl.SimpleIndexedCodec.decodeInto(SimpleIndexedCodec.java:17) ~[SimpleIndexedCodec.class:?]
                      at cpw.mods.fml.common.network.simpleimpl.SimpleIndexedCodec.decodeInto(SimpleIndexedCodec.java:7) ~[SimpleIndexedCodec.class:?]
                      at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:77) ~[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:?]
                      … 20 more
                      [13:33:24] [Client thread/ERROR] [FML]: SimpleChannelHandlerWrapper exception
                      io.netty.handler.codec.DecoderException: java.lang.NullPointerException
                      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.client.multiplayer.PlayerControllerMP.updateController(PlayerControllerMP.java:317) [PlayerControllerMP.class:?]
                      at net.minecraft.client.Minecraft.runTick(Minecraft.java:1693) [Minecraft.class:?]
                      at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1039) [Minecraft.class:?]
                      at net.minecraft.client.Minecraft.run(Minecraft.java:962) [Minecraft.class:?]
                      at net.minecraft.client.main.Main.main(Main.java:164) [Main.class:?]
                      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_91]
                      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
                      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
                      at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
                      at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
                      at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
                      at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source) [start/:?]
                      at GradleStart.main(Unknown Source) [start/:?]
                      Caused by: java.lang.NullPointerException
                      at fr.jackcartersmith.ob.OBNetworkClient.fromBytes(OBNetworkClient.java:28) ~[OBNetworkClient.class:?]
                      at cpw.mods.fml.common.network.simpleimpl.SimpleIndexedCodec.decodeInto(SimpleIndexedCodec.java:17) ~[SimpleIndexedCodec.class:?]
                      at cpw.mods.fml.common.network.simpleimpl.SimpleIndexedCodec.decodeInto(SimpleIndexedCodec.java:7) ~[SimpleIndexedCodec.class:?]
                      at cpw.mods.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:77) ~[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:?]
                      … 20 more
                      

                      Voici le bout de code concerné :

                         private List <integer>dataArray;
                      
                         public OBNetworkClient() {}
                      
                         public OBNetworkClient(List <integer>dataArray) {
                             this.dataArray = dataArray;
                         }
                      
                         @Override
                         public void fromBytes(ByteBuf buf){
                             for (int i = 0; i < 5; i++){
                                 this.dataArray.add(buf.readInt());
                             }
                         }
                      
                         @Override
                         public void toBytes(ByteBuf buf){
                             for (int i = 0; i < 5; i++){
                                 buf.writeInt(this.dataArray.get(i));
                             }
                         }
                      

                      Quelqu’un aurait-il une idée sur le problème ?

                      (Je suppose que le programme essaie de lire une valeur Int dans le flux, mais comme elle est absente pour je ne sais qu’elle raison, il lit du null)</integer></integer>

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

                        Dans ta fonction fromBytes, tu essayes d’ajouter ce que tu lis à la liste dataArray, sauf que cette liste est égale à null.

                        Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                        AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                        Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                        Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

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

                          @‘AymericRed’:

                          Dans ta fonction fromBytes, tu essayes d’ajouter ce que tu lis à la liste dataArray, sauf que cette liste est égale à null.

                          Je viens de changer

                          private List <integer>dataArray;
                          

                          par

                          private List <integer>dataArray = new ArrayList<integer>();
                          

                          Je n’ai plus l’erreur, merci.

                          EDIT: Je vais chercher encore un peu avant de demander de l’aide ^^</integer></integer></integer>

                          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 peux envoyer la classe complète du paquet ?

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

                              @‘robin4002’:

                              Tu peux envoyer la classe complète du paquet ?

                              package fr.jackcartersmith.ob;
                              
                              import java.util.ArrayList;
                              import java.util.List;
                              
                              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 fr.jackcartersmith.ob.blocks.ExtenderTileEntity;
                              import fr.jackcartersmith.ob.blocks.OverriderBlockTileEntity;
                              import fr.jackcartersmith.ob.interfaces.PhotonRecieving;
                              import fr.jackcartersmith.ob.interfaces.PhotonSending;
                              import io.netty.buffer.ByteBuf;
                              import net.minecraft.entity.player.EntityPlayerMP;
                              
                              public class OBNetworkClient implements IMessage
                              {
                                 private List <integer>dataArray = new ArrayList<integer>();
                              
                                 public OBNetworkClient() {}
                              
                                 public OBNetworkClient(List <integer>dataArray) {
                                     this.dataArray = dataArray;
                                 }
                              
                                 @Override
                                 public void fromBytes(ByteBuf buf){
                                     for (int i = 0; i < 5; i++){
                                         this.dataArray.add(buf.readInt());
                                     }
                                 }
                              
                                 @Override
                                 public void toBytes(ByteBuf buf){
                                     for (int i = 0; i < 5; i++){
                                         buf.writeInt(this.dataArray.get(i));
                                     }
                                 }
                              
                                 public static class Handler implements IMessageHandler<obnetworkclient, imessage="">{
                                     int function;
                                     int x;
                                     int y;
                                     int z;
                                     int data_value;
                              
                                     @Override
                                     public IMessage onMessage(OBNetworkClient message, MessageContext ctx){
                                         try{
                                             this.function = message.dataArray.get(0);
                                             this.x = message.dataArray.get(1);
                                             this.y = message.dataArray.get(2);
                                             this.z = message.dataArray.get(3);
                                             this.data_value = message.dataArray.get(4);
                                         }catch(Exception var8){
                                             var8.printStackTrace();
                                             return null;
                                         }
                              
                                         System.out.println(this.function);
                                         System.out.println(this.x);
                                         System.out.println(this.y);
                                         System.out.println(this.z);
                                         System.out.println(this.data_value);
                              
                                         try{                
                                             if (this.function == 1){
                                                 EntityPlayerMP player = ctx.getServerHandler().playerEntity;
                                                 OverriderBlockTileEntity overrider = (OverriderBlockTileEntity)player.worldObj.getTileEntity(this.x, this.y, this.z);
                              
                                                 if (overrider != null && overrider instanceof OverriderBlockTileEntity){
                                                     overrider.currentCharge = this.data_value;
                                                 }
                                             }
                              
                                             if (this.function == 3){
                                                 EntityPlayerMP player = ctx.getServerHandler().playerEntity;
                                                 ExtenderTileEntity extender = (ExtenderTileEntity)player.worldObj.getTileEntity(this.x, this.y, this.z);
                              
                                                 if (extender instanceof ExtenderTileEntity){
                                                     extender.currentCharge = this.data_value;
                                                 }
                                             }
                              
                                             if (this.function == 5){
                                                 EntityPlayerMP player = ctx.getServerHandler().playerEntity;
                                                 OverriderBlockTileEntity overrider = (OverriderBlockTileEntity)player.worldObj.getTileEntity(this.x, this.y, this.z);
                              
                                                 if (overrider instanceof OverriderBlockTileEntity){
                                                     overrider.shotsLeft = this.data_value;
                                                 }
                                             }
                              
                                             if (this.function == 7)
                                             {
                                                 EntityPlayerMP player = ctx.getServerHandler().playerEntity;
                                                 PhotonSending ext2 = (PhotonSending)player.worldObj.getTileEntity(this.x, this.y, this.z);
                              
                                                 if (ext2 instanceof PhotonSending)
                                                 {
                                                     ext2.setOutputRate(this.data_value);
                                                 }
                                             }
                              
                                             if (this.function == 9)
                                             {
                                                 EntityPlayerMP player = ctx.getServerHandler().playerEntity;
                                                 PhotonSending ext2 = (PhotonSending)player.worldObj.getTileEntity(this.x, this.y, this.z);
                              
                                                 if (ext2 instanceof PhotonSending)
                                                 {
                                                     ext2.setScaledOutput(this.data_value);
                                                 }
                                             }
                              
                                             if (this.function == 11)
                                             {
                                                 EntityPlayerMP player = ctx.getServerHandler().playerEntity;
                                                 PhotonSending ext2 = (PhotonSending)player.worldObj.getTileEntity(this.x, this.y, this.z);
                              
                                                 if (ext2 instanceof PhotonSending)
                                                 {
                                                     ext2.setListSize(this.data_value);
                                                 }
                                             }
                              
                                             if (this.function == 13)
                                             {
                                                 EntityPlayerMP player = ctx.getServerHandler().playerEntity;
                                                 PhotonRecieving ext3 = (PhotonRecieving)player.worldObj.getTileEntity(this.x, this.y, this.z);
                              
                                                 if (ext3 instanceof PhotonRecieving)
                                                 {
                                                     ext3.setScaledOutput(this.data_value);
                                                 }
                                             }
                              
                                             if (this.function == 15)
                                             {
                                                 EntityPlayerMP player = ctx.getServerHandler().playerEntity;
                                                 PhotonRecieving ext3 = (PhotonRecieving)player.worldObj.getTileEntity(this.x, this.y, this.z);
                              
                                                 if (ext3 instanceof PhotonRecieving)
                                                 {
                                                     ext3.setPowerIncoming(this.data_value);
                                                 }
                                             }
                              
                                             if (this.function == 17)
                                             {
                                                 EntityPlayerMP player = ctx.getServerHandler().playerEntity;
                                                 PhotonRecieving ext3 = (PhotonRecieving)player.worldObj.getTileEntity(this.x, this.y, this.z);
                              
                                                 System.out.println("DefenderPacket17Received!");
                              
                                                 if (ext3 instanceof PhotonRecieving)
                                                 {
                                                     ext3.setCurrentCharge(this.data_value);
                                                 }
                                             }
                              
                                             if (this.function == 19)
                                             {
                                                 System.out.println("DefenderPacket19Received!");
                                                 EntityPlayerMP player = ctx.getServerHandler().playerEntity;
                                                 player.worldObj.playSoundEffect((double)this.x, (double)this.y, (double)this.z, "ob:defenderLock", 1.0F, 1.0F);
                                             }
                              
                                             return null;
                                         }catch (Exception var7){
                                             var7.printStackTrace();
                                             return null;
                                         }
                                     }
                                 }
                              }
                              
                              

                              @robin4002: Dans ta vidéo tu parles que selon si on est du coté client ou serveur du paquet, la déclaration ci-dessous est différente ? Si oui en quel(s) point(s) ?

                              EntityPlayerMP player = ctx.getServerHandler().playerEntity;
                              ```</obnetworkclient,></integer></integer></integer>
                              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

                                ctx.getServerHandler() n’est pas possible côté client.

                                Côté client il faut utiliser Minecraft.getMinecraft().thePlayer pour avoir le joueur.

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

                                  @‘robin4002’:

                                  ctx.getServerHandler() n’est pas possible côté client.

                                  Côté client il faut utiliser Minecraft.getMinecraft().thePlayer pour avoir le joueur.

                                  C’est corrigé, ça marche enfin ^^

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

                                    Bonjour, j’aiemrais récupré la liste des GameProfile du server pour l’afficher sur un GUI, sauf que avec le fromBytes, on ne peut mettre que int String bytes ect… mais pas GameProfile[] quellequ’un aurais une idée de comment faire?

                                    Cordialement, le membre ayant le pseudo "ph1823"

                                    Ma chaîne YouTube: https://www.youtube.com/c/ph1823
                                    Mon Twitter : https://twitter.com/ph1823
                                    Des jeux vidéo moin chers? Alors check ici : http://bit.ly/instaceph ou ici : http://bit.ly/g2aph

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

                                      Tu envoie un tableau de String contenant l’username, un tableau de string contenant les UUID (GameProfile.getId().toString()) puis quand tu récupère les tableaux tu peux utiliser :

                                      
                                      GameProfile profile = new GameProfile(UUID.fromString(uuidString), username);
                                      
                                      
                                      1 réponse Dernière réponse Répondre Citer 0
                                      • Phenix246P Hors-ligne
                                        Phenix246 Rédacteurs
                                        dernière édition par

                                        Il va falloir sérialiser et désérialiser l’objet, en gros envoyer chaque propriété de l’objet, un petit exemple pour les BlockPos : https://github.com/Leviathan-Studio/LS-Lib/blob/master/src/main/java/com/leviathanstudio/lib/common/network/ByteBufUtil.java#L46-L68

                                        Mais la question à te poser est : Est-ce que j’ai besoin des toutes les informations du GameProfile, si c’est juste pour afficher les pseudo, envoie juste les pseudos

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

                                          sa sert à quoi le network du mod? j’ai pas compris

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

                                            a faire communiquer le server et le client entre eux

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB