MFF

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

    Modifier le nombre de ticks de la journée et de la nuit

    Planifier Épinglé Verrouillé Déplacé Sans suite
    1.6.2
    26 Messages 8 Publieurs 11.4k 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.
    • 0nit0 Hors-ligne
      0nit
      dernière édition par

      désoler j’ai rien trouver d’autres 😕

      Mes tutoriels:

      >! \[1.6.x\] - Le kit d'outils
      >! \[1.6.x\] - Les recettes du four

      1 réponse Dernière réponse Répondre Citer 0
      • jglrxavpokJ Hors-ligne
        jglrxavpok Modérateurs
        dernière édition par

        Dans WorldInfo.java, tu devrais avoir ceci:

        private long worldTime;
        

        Avec la réflexion (Java, pas de ton cerveau… quoi qu’il faut bien l’utiliser ici ^^'), tu devrais pouvoir détecter si c’est la nuit ou le jour et accélérer/ralentir artificiellement le temps du monde

        Modérateur sur MFF. 
        Mon Github: http://github.com/jglrxavpok
        Mon compte Steam si vous voulez jouer à CS:GO ou TF2 avec moi: https://steamcommunity.com/id/jglrxavpok/

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

          Petit cours sur les ticks :

          Dans Minecraft, il y a DEUX types de ticks :

          Les ticks du jeu
          Les “redstone ticks”

          Le tick du jeu représente 0.05 secondes ( 20 ticks = 1 seconde )
          Le “redstone tick” représente 0.1 seconde ( 10 redstone ticks = 1 seconde ).

          "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
          • AxaurusA Hors-ligne
            Axaurus
            dernière édition par

            @‘jglrxavpok’:

            Dans WorldInfo.java, tu devrais avoir ceci:

            private long worldTime;
            

            Avec la réflexion (Java, pas de ton cerveau… quoi qu’il faut bien l’utiliser ici ^^'), tu devrais pouvoir détecter si c’est la nuit ou le jour et accélérer/ralentir artificiellement le temps du monde

            Salut
            Merci, mais je ne peux pas(enfin……, je ne pense pas)
            Car, chaque “truc”(pas explicite) est dans Minecraft.java
            Par exemple :

            ObfuscationReflectionHelper.setPrivateValue(SoundManager.class, mc.sndManager, 999999999, "ticksBeforeMusic", "");
            

            Ici, sndManager est dans le fichier Minecraft.java

            J’ai donc chercher le worldinfo, mais il n’y a pas

            Donc si vous pouvez m’aider, merci d’avance

            1 réponse Dernière réponse Répondre Citer 0
            • jglrxavpokJ Hors-ligne
              jglrxavpok Modérateurs
              dernière édition par

              Chaque “truc” est dans Minecraft.java…

              Minecraft est looooooooooooooooooooooooooooooooooooooooooooooooin d’avoir une seule classe qui dirige tout (parce que Notch/Dinner bone/jeb_ savent coder un minimum). Et WorldInfo est dans les instances de World 😉

              Modérateur sur MFF. 
              Mon Github: http://github.com/jglrxavpok
              Mon compte Steam si vous voulez jouer à CS:GO ou TF2 avec moi: https://steamcommunity.com/id/jglrxavpok/

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

                Salut
                Donc logiquement, dans la reflection de Forge, il devrait y avoir un truc en rapport avec worldinfo quand je met world et que je met un point après.
                Mais quand je met le point, le seul truc que ça met, c’est MAX_ENTITY_RADIUS
                J’ai donc marquer worldclient après le point, mais ils me disent de le mettre en public(je le fait juste pour tester). Mais une fois que je l’ai mis en public, ils me disent que ce field n’existe pas.
                Donc du coup, je suis bloquer

                Voilà la ligne :

                ObfuscationReflectionHelper.setPrivateValue(WorldInfo.class, World., 0, "ceci_n'est_pas_un_field", "");
                
                
                1 réponse Dernière réponse Répondre Citer 0
                • jglrxavpokJ Hors-ligne
                  jglrxavpok Modérateurs
                  dernière édition par

                  Ne jamais, au grand JAMAIS, modifier le code source de Minecraft si tu utilises Forge, autant coder en Vanilla sinon.
                  De plus, le field worldInfo EXISTE dans World. Je suis pas sûr-sûr que tu connaisses vraiment le principe de la POO (& de la réflexivité.)
                  Et il faut que tu ais une instance (variable) de World.

                  Ce forum n’étant pas un forum d’apprentissage du java, donc je te redirige donc vers OpenClassroom (anciennement siteduzero.com😞
                  http://fr.openclassrooms.com/informatique/cours/apprenez-a-programmer-en-java

                  Ah aussi, je sens que je vais le répéter, le re-répéter et le re-re-répéter sur le forum… Mais Java est sensible à la casse! wordInfo n’a rien à voir avec worldinfo ou WorldInfo (pareil WORLDINFO).

                  Modérateur sur MFF. 
                  Mon Github: http://github.com/jglrxavpok
                  Mon compte Steam si vous voulez jouer à CS:GO ou TF2 avec moi: https://steamcommunity.com/id/jglrxavpok/

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

                    J’ai trouver avec la reflection.
                    Mais le problème, c’est que quand je met ça :

                    if(mc.theWorld.getWorldTime() == 600)
                    {
                    ObfuscationReflectionHelper.setPrivateValue(WorldInfo.class, mc.theWorld.getWorldInfo(), 15000, "worldTime", "");
                    }
                    

                    en jeu, quand c’est à 600 ticks, ça met à 15000 ticks; mais ça remet à 601 ticks juste après.

                    Donc je ne sais pas comment faire.
                    Logiquement, ça reste la nuit(à partir de 15000 ticks) et bah non

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

                      Peut être une ligne à mettre pour que ça reste à l’heure que j’ai dit

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

                        Aucune idées, mais je vais regarder de mon coté.
                        Il faudrait faire que si le tick est entre 600 et 15000 il le mette a 15000+(x-600)
                        x = nombre de tick actuel, mais cela risque de crée un décalage.___Essaie avec un NBTTag:

                        
                        NBTTagCompound nbtTag = new NBTTagCompound();
                        nbtTag.setLong("Time", 15000);
                        


                        Mettez à jours vers la dernière version stable (1.8.9 voir même…

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

                          Salut
                          Merci de ta réponse, mais …
                          Voilà le code :

                          if(mc.theWorld.getWorldTime() == 600)
                          {
                          NBTTagCompound nbtTag = new NBTTagCompound();
                          nbtTag.setLong("Time", 15000);
                          }
                          

                          J’ai tester et ça n’a pas marcher. J’ai donc tester de mettre “worldTime” au lieu de “Time” : ça n’a pas marché.
                          J’ai tester de mettre ce code avec l’obfuscation de forge(que vous pouvez retrouver à la page 2) : ça n’a pas marché.

                          Donc si quelqu’un à une idée…
                          Merci d’avance

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

                            Personne ne sait ?
                            Sinon, ce n’est pas grave je ne modifierai pas le jour et la nuit

                            1 réponse Dernière réponse Répondre Citer 0
                            • Superloup10S Hors-ligne
                              Superloup10 Modérateurs
                              dernière édition par

                              Sinon regarde comment la boussole et le capteur de soleil détectent les changements d’heure.

                              Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

                              Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

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

                              MINECRAFT FORGE FRANCE © 2024

                              Powered by NodeBB