MFF

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

    Générer une structure

    Planifier Épinglé Verrouillé Déplacé La génération & les dimensions
    1.7.x
    67 Messages 21 Publieurs 32.2k 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.
    • FlowF Hors-ligne
      Flow
      dernière édition par

      Merci j’ai trouver je pense voici pour ceux que cela intéresse 😄

      http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-tools/1263960-1-3-2-updated-metadata-support-simple-schematic

      Oui ce gif est drôle.

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

        ça ne marcheras pas, ce logiciel était prévu dans la partie bonus avant de me rendre compte qu’il ne marche pas en 1.7 😞

        Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
        Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

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

          Le logiciel fonctionne, il donne juste du code erroné car il n’a pas été mis à jour depuis longtemps.

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

            Le code est vraiment érroné où il suffit juste de changer la fonction (les coordonnées et les blocs y sont) ?

            Mes mods :

            >! GGButtonMod : http://minecraftforgefrance.fr/showthread.php?tid=1280
            CraftYourMenu : http://minecraftforgefrance.fr/showth…

            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

              Changer la fonction + ajouter ,3

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

                Existe t-il d’autres logiciels pour la conversion de Shematics en JAVA compatible avec la 1.7 ?

                Oui ce gif est drôle.

                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

                  Je ne crois pas.

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

                    Bonjour, j’ai suivi le tuto (et utilisé mon expérience passée) et j’ai créé une structure. Problème :
                    Alors que le code de génération s’exécute (tests au System.out.print), la structure ne se génère pas.
                    Un peu d’aide ?

                    DragonsWorldGenerator :

                    
                    public class DragonsWorldGenerator implements IWorldGenerator
                    {
                    private static boolean hasGeneratedDungeon = false;
                    @Override
                    public void generate(Random random, int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider)
                    {
                    switch(world.provider.dimensionId)
                    {
                    /*case 1:
                    this.generateEnd(world, chunkX * 16, chunkZ * 16, random);*/
                    case 0:
                    this.generateSurface(world, chunkX * 16, chunkZ * 16, random);
                    /*case -1:
                    this.generateNether(world, chunkX * 16, chunkZ * 16, random);*/
                    }
                    }
                    
                    private void generateSurface(World world, int x, int z, Random random)
                    {
                    // Sera migré vers generateNether
                    if(hasGeneratedDungeon == false)
                    {
                    hasGeneratedDungeon = true;
                    (new WorldGenNetherDungeon()).generate(world, random, x + 10, 128 /*Valeur de test*/, z +10);
                    }
                    }
                    
                    private void generateNether(World world, int x, int z, Random random)
                    {
                    
                    }
                    
                    private void generateEnd(World world, int x, int z, Random random)
                    {
                    }
                    }
                    
                    

                    WorldGenNetherDungeon :

                    
                    import java.util.Random;
                    
                    import net.minecraft.init.Blocks;
                    import net.minecraft.world.World;
                    import net.minecraft.world.gen.feature.WorldGenerator;
                    
                    public class WorldGenNetherDungeon extends WorldGenerator
                    {
                    @Override
                    public boolean generate(World world, Random rand, int x, int y, int z)
                    {
                    if(world.getBlock(x, y - 1, z) == Blocks.air)
                    {
                    clearZone(world, rand, x, y, z);
                    generateGround(world, rand, x, y, z);
                    generateFort(world, rand, x, y, z);
                    System.out.println("[Dragons][Normal] GENERATED THE STRUCTURE."); // Test
                    return true;
                    }
                    return false;
                    }
                    
                    public void clearZone(World world, Random rand, int x, int y, int z)
                    {
                    // Caché ;p utilisation des world.setBlockToAir(x, y, z);
                    }
                    
                    public void generateGround(World world, Random rand, int x, int y, int z)
                    {
                    // Caché ;p utilisation des world.setBlock(x, y, z, Blocks.block)
                    }
                    
                    public void generateFort(World world, Random rand, int x, int y, int z)
                    {
                    generateTowers(world, rand, x, y, z);
                    generateFloor1(world, rand, x, y, z);
                    }
                    
                    public void generateTowers(World world, Random rand, int x, int y, int z)
                    {
                    // Caché ;p
                    }
                    
                    public void generateFloor1(World world, Random rand, int x, int y, int z)
                    {
                    // Caché ;p
                    }
                    }
                    
                    

                    Mes mods:

                    • New Ores
                    • More Dragons
                    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

                      if(!hasGeneratedDungeon)
                      {
                      hasGeneratedDungeon = (new WorldGenNetherDungeon()).generate(world, random, x + 10, 128 /*Valeur de test*/, z +10);
                      }
                      

                      Fait comme ça.

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

                        Cette fois, le jeu me renvoie une erreur : [Rapport trop long pour ce message] https://www.mediafire.com/?lxitifcn3p4mmi6
                        (Désolé je verrais un peu plus tard pour Github)

                        Mes mods:

                        • New Ores
                        • More Dragons
                        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

                          Forcement, tu n’as pas mit des valeurs random, et comme il n’y pas réussi à faire spawn sur les coordonnés que tu as donnés (surement car il n’y a pas d’air) ça a fait une boucle infini …

                          Et pour les gros logs, pastebin, mediafire c’est horrible u_U.

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

                            Oui mais ça continue à crasher (en y pensant, c’est logique, c’est pas des coordonnées qui vont faire crasher. Si ?).
                            De plus, là où la structure devait se générer (tests), les blocs n’atteignaient pas plus de la couche 79….

                            EDIT : Il semble que ce soit l’utilisation du “hasGeneratedDungeon” qui fasse tout bugger.
                            EDIT II : Ma structure se génère normalement.
                            EDIT III : Je note que ça laggue beaucoup pendant le chargement du monde (après spawn, bugs de chunk de plusieurs minutes) est-ce que quelqu’un connaîtrai une technique moins lourde que des for() et des setblock ?

                            Mes mods:

                            • New Ores
                            • More Dragons
                            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

                              @‘MrBlockTNT’:

                              Oui mais ça continue à crasher (en y pensant, c’est logique, c’est pas des coordonnées qui vont faire crasher. Si ?).

                              Si.
                              Regarde bien ce que tu as fait. La fonction generateSurface est appelé régulièrement, et toi tu essayes de faire spawner la structure sur des coordonnées fixes. Sauf que la fonction generate de WorldGenNetherDungeon ne return que true si la structure a été généré, donc si tu mets des coordonnés fixe où il n’y a pas d’air, il va essayer à chaque fois de le générer.

                              Pour les grosses structures (mines abandonnés, forts) minecraft utilise un autre code mais il est plus difficile à comprendre.

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

                                Ah d’accord ! Merci 😄 je vais regarder pour le code Minecraft de base et voir pour les coordonnées (EDIT : ça marche merci :))

                                Mes mods:

                                • New Ores
                                • More Dragons
                                1 réponse Dernière réponse Répondre Citer 0
                                • P Hors-ligne
                                  Portuar
                                  dernière édition par

                                  Je ne veux pas du tout critiquer ce tutoriel loin de la, mais je trouve qu’il manque cruellement d information. Par exemple, tu ne précise pas comment générer des block directionnelle comme les escalier, des blocks “double” comme les porte ou le lits. Tu ne stipules pas non plus comment générer des block container tels que des dispenser ou des coffres ou encore comment générer des éclairs ou des cochons avec une selle. Tu devrais aussi mettre un exemple plus concret qu’un totem de trois block une maison par exemple pour ainsi parler de la boucle for qui se trouve être tes utiles dans la génération.

                                  bonne continuation ;).

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

                                    @‘Legrandfifou’:

                                    Existe t-il d’autres logiciels pour la conversion de Shematics en JAVA compatible avec la 1.7 ?

                                    oui je ne sais pas si c’est le schematic to java initial qui a ete repris ou un autre mais regardez et il fonctione 1.7 et est regulierement mis a jour http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-tools/1266014-0-4b-jajo_11s-schematic-to-structure-converter

                                    si je t'ai aidé hésite pas le bouton + est là et dans le cas contraire ….

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

                                      Oh merci je vais ajouter ça dans la partie bonus 😉

                                      Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
                                      Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

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

                                        @‘Portuar’:

                                        Je ne veux pas du tout critiquer ce tutoriel loin de la, mais je trouve qu’il manque cruellement d information. Par exemple, tu ne précise pas comment générer des block directionnelle comme les escalier, des blocks “double” comme les porte ou le lits. Tu ne stipules pas non plus comment générer des block container tels que des dispenser ou des coffres ou encore comment générer des éclairs ou des cochons avec une selle. Tu devrais aussi mettre un exemple plus concret qu’un totem de trois block une maison par exemple pour ainsi parler de la boucle for qui se trouve être tes utiles dans la génération.

                                        bonne continuation ;).

                                        Pour les blocs* directionnels*, ça ne change pas vraiment du setBlock normal, il me semble qu’il faut utiliser setBlockWithMetadata() un truc comme ça, pour les blocs doubles je n’ai pas essayé mais je pense qu’un simple setBlock() suffit, les containers ils faut faire un setBlock() normal, pour les éclairs c’est dans la partie spawner une entité, et pour spawner un cochon avec une selle c’est pas censé être un tutoriel sur comment customiser des entités, mais il faut modifier une valeur dans le dataWatcher de l’entité. Je n’ai pas fait une grosse structure parce que le code devient très vite confus, de toutes les façons pour générer de grosses structures il vaut mieux utiliser des outils tiers (dont un sur lequel je vais faire une partie bonus). Et merci de ton commentaire 😄

                                        Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
                                        Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

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

                                          J’ai essayer de le faire en 1.8 sauf que le setblock ne marche pas.

                                          ​package fr.darkvince.mine;
                                          
                                          import java.util.Random;
                                          
                                          import net.minecraft.entity.monster.EntityCreeper;
                                          import net.minecraft.init.Blocks;
                                          import net.minecraft.util.BlockPos;
                                          import net.minecraft.world.World;
                                          
                                          public class WorldGenZombie {
                                          
                                              public boolean generate(World worldIn, Random random, int x, int y, int z)
                                              {
                                          
                                              if (!worldIn.isRemote)
                                                      {
                                              worldIn.setBlock(x, y, z, Blocks.cobblestone);
                                              worldIn.setBlock(x, y + 1, z, Blocks.cobblestone);
                                              worldIn.setBlock(x, y + 2, z, Blocks.sponge);
                                              EntityCreeper creeper = new EntityCreeper(worldIn);
                                              creeper.setPosition(x, y + 3, z);
                                              worldIn.spawnEntityInWorld(creeper);
                                              return true;
                                              }
                                              return false;
                                              }
                                          }
                                          
                                          1 réponse Dernière réponse Répondre Citer 0
                                          • SCAREXS Hors-ligne
                                            SCAREX
                                            dernière édition par

                                            @‘darkvince37’:

                                            J’ai essayer de le faire en 1.8 sauf que le setblock ne marche pas.

                                            package fr.darkvince.mine;
                                            
                                            import java.util.Random;
                                            
                                            import net.minecraft.entity.monster.EntityCreeper;
                                            import net.minecraft.init.Blocks;
                                            import net.minecraft.util.BlockPos;
                                            import net.minecraft.world.World;
                                            
                                            public class WorldGenZombie {
                                            
                                                public boolean generate(World worldIn, Random random, int x, int y, int z)
                                                {
                                            
                                                if (!worldIn.isRemote)
                                                        {
                                                worldIn.setBlock(x, y, z, Blocks.cobblestone);
                                                worldIn.setBlock(x, y + 1, z, Blocks.cobblestone);
                                                worldIn.setBlock(x, y + 2, z, Blocks.sponge);
                                                EntityCreeper creeper = new EntityCreeper(worldIn);
                                                creeper.setPosition(x, y + 3, z);
                                                worldIn.spawnEntityInWorld(creeper);
                                                return true;
                                                }
                                                return false;
                                                }
                                            }
                                            

                                            Utilise le setBlockState et Blocks.cobblestone.getDefaultState

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB