MFF

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

    Détecter le nombres de cliques/seconde

    Planifier Épinglé Verrouillé Déplacé Sans suite
    1.7.10
    62 Messages 9 Publieurs 11.5k 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.
    • BrokenSwingB Hors-ligne
      BrokenSwing Moddeurs confirmés Rédacteurs
      dernière édition par

      Oui c’est sûr comportementalement tu peux le voir même sans être directement dans sa vue

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

        Je fais souvent des mouvements aléatoires quand je mine, c’est pas pour autant que je xray 😉

        Pour le nombre de clicks par seconde, en utilisant LWJGL tu devrais pouvoir compter ça (Tu choppe l’event de click gauche, et tu incrémente un compteur que tu remets a 0 chaque seconde). Après, qu’un joueur fasse 20 ou 8 milliards de clicks a la seconde… aucune différence!
        Le jeu tourne sous 20 ticks, donc il ne pourra gérer que 20 clicks en une seconde, grand maximum.

        En utilisant LWJGL et des packets, tu aura un comptage de clicks côté client, et non serveur, ce qui permet de savoir le nombre réel de clicks que la machine reçoit, et le packets sert juste a faire passer ça niveau serveur.

        Faire des anticheats c’est TRES difficile. C’est comme essayer de déminer une bombe qui va pousser tes mains dès que tu essaie de la toucher. Un cheat travaille contre un anticheat, et fait tout pour le neutraliser

        "If you have a comprehensive explanation for everything then it decreases uncertainty and anxiety and reduces your cognitive load. And if you can use that simplifying algorithm to put yourself on the side of moral virtue then you’re constantly a good person with a minimum of effort."
        ― Jordan B. Peterson

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

          Gugu tu peux regarder shootbox (probleme eclipse je t’expliquerais directement dessus si tu peux)
          Je veux bien pour les moment au hasard mais faut avoir une limite si tu mine comme de la me… et que tu trouve que du diams ya un probleme quelque part non ?

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

            Juste la méthode du render
            Minecraft.getMinecraft().setRenderViewEntity(p.getDisplayName());
            S’utilise comment ?

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

              Il te suffit de placer l’entité en paramètre :

              Minecraft.getMinecraft().setRenderViewEntity(Entity entity);
              

              Tu as sûrement un objet de type EntityPlayer dans ton cas

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

                quoi va ou ? xD

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

                  Dans tu gui quand le joueur clique sur je ne sais pas quoi tu met cette fonction avec le joueur que tu veux “espionner” en paramètre, et tu met bien un condition ```java
                  if(world.isRemote)

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

                    Je veux dire par la que je met quoi en paramètre : entityplayer x2 Entity = espion ou espionner ?

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

                      Minecraft.getMinecraft().setRenderViewEntity(La personne à espionner);
                      
                      1 réponse Dernière réponse Répondre Citer 0
                      • GuguG Hors-ligne
                        Gugu
                        dernière édition par

                        Essaie de tester avec tes joueurs dans des zones assez éloignées, voir si les chunks se chargent bien quand tu change de vue.

                        "If you have a comprehensive explanation for everything then it decreases uncertainty and anxiety and reduces your cognitive load. And if you can use that simplifying algorithm to put yourself on the side of moral virtue then you’re constantly a good person with a minimum of effort."
                        ― Jordan B. Peterson

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

                          De toute façon c’est un GUI s’ouvre au clic droit sur un joueur donc le chunk sera chargé vu qu’il sera à côté

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

                            Pas très pratique niveau discrétion!

                            "If you have a comprehensive explanation for everything then it decreases uncertainty and anxiety and reduces your cognitive load. And if you can use that simplifying algorithm to put yourself on the side of moral virtue then you’re constantly a good person with a minimum of effort."
                            ― Jordan B. Peterson

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

                              Alors pour pouvoir remplacer le NetHandler d’un joueur sur le serveur, ce qui permet d’intercepter/modifier tout comportement du joueur :
                              Il faut d’abord utiliser l’event de connection d’un joueur sur le serveur :

                              @SubscribeEvent
                                  public void onPlayerLoginOnServer(PlayerEvent.PlayerLoggedInEvent event) 
                                  {
                              
                              CustomNetHandlerServer.applyPatches((EntityPlayerMP) event.player); //On va remplacer le NetHandlerPlayServer vanilla dans cette fonction
                              
                              }
                              

                              Donc dans une nouvelle classe CustomNetHandlerServer (ou un autre nom) extends NetHandlerPlayServer :

                              
                              private final MinecraftServer serverController; //Cette variable est en private dans le NetHandlerPlayServer on doit donc la mettre ici
                              
                              public CustomNetHandlerServer(MinecraftServer server, NetworkManager networkManagerIn, EntityPlayerMP playerIn)
                              {
                              super(server, networkManagerIn, playerIn);
                              this.serverController = server;
                              }
                              
                              public static void applyPatches(EntityPlayerMP player)
                              {
                                      NetHandlerPlayServer old= player.playerNetServerHandler;
                                      CustomNetHandlerServer newHandler = fromNetHandlerPlayServer(old); //Va permettre d'obtenir un net handler à partir des informations de l'ancien
                                      player.playerNetServerHandler = newHandler; //On l'attribue au joueur
                              }
                              
                              private static CustomNetHandlerServer fromNetHandlerPlayServer(NetHandlerPlayServer play)
                              {
                              CustomNetHandlerServer handler= new CustomNetHandlerServer(MinecraftServer.getServer(), play.netManager, play.playerEntity); //On créée notre handler
                              handler.setPlayerLocation(play.playerEntity.posX, play.playerEntity.posY, play.playerEntity.posZ, play.playerEntity.cameraYaw, play.playerEntity.cameraPitch); //Et on lui donne les informations de l'ancien
                              return handler;
                              }
                              
                              

                              Puis après, il suffit de faire ctrl+space dans cette nouvelle classe et de prendre la fonction qui correspond à ce qu’on veut modifier et la réécrire.
                              Et aussi, ne pas oublier de register l’event (event Forge).

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

                                techniquement je peux definir en tant que test player1 et player2 ?
                                Broken gui quand je fais ‘u’ et je marque dans textbox pseudo et je le surveille

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

                                  Définir quoi en tant que test player 1 et 2 ?

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

                                    sur eclipse deux java appli joueurnanana et joueurninini et faire dans le code que quand playernanana fais ‘u’ je vois playerninini

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

                                      Il faut que tu récupères le EntityPlayer de playerninini et que tu fasses Minecraft.getMinecraft().setRenderViewEntity(playerninini);
                                      Je regarde comment get le EntityPlayerSP d’un autre joueur du côté client.

                                      EDIT : Alors il faut que tu obtiennes le entityID du joueur sur le serveur ```java

                                      MinecraftServer.getServer().getConfigurationManager().getPlayerByUsername(“un nom”).getEntityId();

                                      Puis tu dois envoyer un [packet](https://www.minecraftforgefrance.fr/showthread.php?tid=1118) au joueur qui veut avoir la vue d'un autre avec cet entity id, à la réception du packet, tu fais ```java
                                      Minecraft.getMinecraft().setRenderViewEntity(Minecraft.getMinecraft().theWorld.getEntityById(l'id reçu));
                                      

                                      Pas besoin de faire un null check, Minecraft le fait pour toi mais par contre tu peux vérifier que l’entité qui correspond à l’id est bien instanceof EntityOtherPlayerMP pour être sur que ce soit l’id du joueur et pas d’un poulet.

                                      Il est possible/probable qu’il y ait une autre méthode mais celle là marchera très bien.

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

                                        PAS LES PACKETS NONNNNNNNNNNNNN
                                        Aymeric j’ai suvis ton truc j’y comprend rien mais bon xD
                                        Juste j’ai 
                                        Executes a container/inventory slot manipulation as indicated by the packet. Sends the serverside result if they didn’t match the indicated result and prevents further manipulation by the player until he confirms that it has the same open container/inventory

                                        C’est ça qu’il faut prendre =p?

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

                                          package fr.Mosca421.Arthania.View;
                                          
                                          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 fr.Mosca421.Arthania.Arthania;
                                          import io.netty.buffer.ByteBuf;
                                          
                                          public class View implements IMessage {
                                          
                                              private String text;
                                          
                                              public View() { }
                                          
                                              public View(String text) {
                                                  this.text = text;
                                              }
                                          
                                              @Override
                                              public void fromBytes(ByteBuf buf) {
                                                  text = ByteBufUtils.readUTF8String(buf);
                                              }
                                          
                                              @Override
                                              public void toBytes(ByteBuf buf) {
                                                  ByteBufUtils.writeUTF8String(buf, text);
                                              }
                                          
                                              public static class Handler implements IMessageHandler <view, imessage="">{
                                          
                                                  @Override
                                                  public IMessage onMessage(View message, MessageContext ctx) {
                                                      System.out.println(String.format("Received %s from %s", message.text, ctx.getServerHandler().playerEntity.getDisplayName()));
                                                      Arthania.networkWrapper.sendToServer(new View("View"));
                                                      Arthania.networkWrapper.sendTo(new SomeMessage(), somePlayer);
                                                      return null; // no response in this case
                                                  }
                                              }
                                          }
                                          

                                          Alors la je vais pas vous mentir je vois plus quoi faire quand j’ai ça pour vous dire j’ai une erreur que je sais meme pas comment régler
                                          J’aime pas du tout se systeme de packets =/</view,>

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

                                            Ou est le problème ?

                                            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
                                            • 4
                                            • 2 / 4
                                            • Premier message
                                              Dernier message
                                            Design by Woryk
                                            ContactMentions Légales

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB