• S'inscrire
    • Se connecter
    • Recherche
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes

    Résolu Problème génération minerai

    1.7.x
    1.7.2
    4
    11
    2438
    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.
    • S
      Sebenf0rce dernière édition par

      Bonjour,

      J’ai crée mon mod ou j’ai crée la génération d’un minerai.
      En solo tout marche parfaitement le minerai est bien présent dans le monde.
      Mais lorsque je mets le mod sur mon serveur la génération ne marche pas.
      Pensez vous savoir d’où cela vient ?

      Merci d’avance.

      1 réponse Dernière réponse Répondre Citer 0
      • Fine33
        Fine33 dernière édition par

        Il nous faudrait déjà le code de la classe de ton minerai pour que l’on puisse t’aider.

        Mes mods :

        Agriculcraft

        #L'âge ne fait pas le mod.(L'âge ne fait pas le mod.)

        1 réponse Dernière réponse Répondre Citer 0
        • sosoh
          sosoh dernière édition par

          Rn multi c’est un monde génèré avant que tu mettes le mod ?

          Developpeur d'Hogsmod, un mod implémentant le Monde d'Harry Potter dans Minecraft!

          1 réponse Dernière réponse Répondre Citer 0
          • S
            Sebenf0rce dernière édition par

            @‘sosoh’:

            Rn multi c’est un monde génèré avant que tu mettes le mod ?

            Non je l’ai crée aprêt.

            Sinon voici la classe de la génération :

            
            package com.sebenforce;
            
            import java.util.Random;
            
            import net.minecraft.block.Block;
            import net.minecraft.init.Blocks;
            import net.minecraft.world.World;
            import net.minecraft.world.chunk.IChunkProvider;
            import net.minecraft.world.gen.feature.WorldGenMinable;
            import cpw.mods.fml.common.IWorldGenerator;
            
            public class generationGrenat implements IWorldGenerator {
            
            public void generate(Random random, int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider)
            
            {
            
                switch(world.provider.dimensionId)
            
                {
                    case 0:
                        generateSurface(world, random, chunkX * 16, chunkZ * 16);
                        break; }}
            
            private void generateSurface(World world, Random random, int x, int z) {
            
                this.addOreSpawn(Main.mineraiGrenat, 0, Blocks.stone, world, random, x, z, 16, 16, 7, 20, 5, 54);
            
                }
            public void addOreSpawn(Block block, int metadata, Block target, World world, Random random, int blockXPos, int blockZPos, int maxX, int maxZ, int maxVeinSize, int chancesToSpawn, int minY, int maxY) {
            
                assert maxY > minY : "La position Y maximum doit être supérieure à  la position Y minimum.";
            
                assert maxX > 0 && maxX <= 16 : "X doit se trouver entre 0 et 16.";
            
                assert minY > 0 : "La position Y minimum doit être supérieure à  0.";
            
                assert maxY < 256 && maxY > 0 : "La position Y maximum doit se trouver entre 0 et 256.";
            
                assert maxZ > 0 && maxZ <= 16 : "Z doit se trouver entre 0 et 16.";
            
               for(int i = 0; i < chancesToSpawn; i++)
            
                {
            
                    int posY = random.nextInt(128);
            
                    if((posY <= maxY) && (posY >= minY))
            
                    {
            
                        (new WorldGenMinable(block, metadata, maxVeinSize, target)).generate(world, random, blockXPos + random.nextInt(16), posY, blockZPos + random.nextInt(16));
            
                    }
            
                }
            
            }
            }
            
            

            Et voici ce qui est présent dans la classe principale :

            
             generationGrenat generationGrenat = new generationGrenat();
            
                generationranite generationranite = new generationranite();
                @EventHandler
                public void preInit(FMLPreInitializationEvent event)
                {
                GameRegistry.registerWorldGenerator(generationGrenat, 0);
                GameRegistry.registerWorldGenerator(generationranite, 0);
                }
            
            
            1 réponse Dernière réponse Répondre Citer 0
            • robin4002
              robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

              Ton serveur a une dimension custom ?

              1 réponse Dernière réponse Répondre Citer 0
              • S
                Sebenf0rce dernière édition par

                @‘robin4002’:

                Ton serveur a une dimension custom ?

                Non aucune.

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

                  Tu ne joue vraiment que sur la dimension overworld d’id 0, celle de base ?
                  Si oui envoie toute ta classe principale.

                  1 réponse Dernière réponse Répondre Citer 0
                  • S
                    Sebenf0rce dernière édition par

                    Oui je joue que sur celle ci.
                    Voici donc ma classe :

                    
                    package com.sebenforce;
                    
                    import net.minecraft.block.Block;
                    import net.minecraft.block.material.Material;
                    import net.minecraft.creativetab.CreativeTabs;
                    import net.minecraft.init.Blocks;
                    import net.minecraft.init.Items;
                    import net.minecraft.item.Item;
                    import net.minecraft.item.Item.ToolMaterial;
                    import net.minecraft.item.ItemArmor.ArmorMaterial;
                    import net.minecraft.item.ItemStack;
                    import net.minecraftforge.common.util.EnumHelper;
                    import cpw.mods.fml.common.Mod;
                    import cpw.mods.fml.common.Mod.EventHandler;
                    import cpw.mods.fml.common.Mod.Instance;
                    import cpw.mods.fml.common.event.FMLInitializationEvent;
                    import cpw.mods.fml.common.event.FMLPostInitializationEvent;
                    import cpw.mods.fml.common.event.FMLPreInitializationEvent;
                    import cpw.mods.fml.common.registry.GameRegistry;
                    
                    @Mod(modid = "magmafusion", name = "magmafusion", version = "1.0.0")
                    
                    public class Main {
                        @Instance("magmafusion")
                        public static Main instance;
                        public static final String MODID = "magmafusion";
                        public static Item Grenat;
                        public static Item Uranite;
                        public static Item casqueGrenat, plastronGrenat, jambesGrenat, bottesGrenat;
                        public static Item casqueUranite, plastronUranite, jambesUranite, bottesUranite;
                        public static Item casqueMagma, plastronMagma, jambesMagma, bottesMagma;
                        public static Item epeeGrenat, piocheGrenat, hacheGrenat, pelleGrenat, hoeGrenat;
                        public static Item epeeUranite, piocheUranite, hacheUranite, pelleUranite, hoeUranite;
                        public static Item epeeMagma, piocheMagma, hacheMagma, pelleMagma, hoeMagma;
                        public static ArmorMaterial grenat = EnumHelper.addArmorMaterial("grenat", 43, new int[] {4, 10, 7, 4}, 10);
                        public static ArmorMaterial uranite = EnumHelper.addArmorMaterial("uranite", 53, new int[] {5, 11, 8, 5}, 10);
                        public static ArmorMaterial magma = EnumHelper.addArmorMaterial("magma", 63, new int[] {6, 12, 9, 6}, 10);
                        public static ToolMaterial outilsGrenat = EnumHelper.addToolMaterial("outilsGrenat", 3, 1661, 8.0F, 4.0F, 10);
                        public static ToolMaterial outilsUranite = EnumHelper.addToolMaterial("outilsUranite", 3, 1761, 9.0F, 5.0F, 10);
                        public static ToolMaterial outilsMagma = EnumHelper.addToolMaterial("outilsMagma", 3, 1861, 11.0F, 6.0F, 10);
                        public static Block blockGrenat;
                        public static Block mineraiGrenat;
                        public static Block blockUranite;
                        public static Block mineraiUranite;
                        public static Block blockMagma;
                        public static Block obsidienneFusionne;
                        public static Block blockObsidienneFusionne;
                    
                        generationGrenat generationGrenat = new generationGrenat();
                        generationranite generationranite = new generationranite();
                        @EventHandler
                        public void preInit(FMLPreInitializationEvent event)
                        {
                        GameRegistry.registerWorldGenerator(generationGrenat, 0);
                        GameRegistry.registerWorldGenerator(generationranite, 0);
                        }
                        @EventHandler
                        public void load(FMLInitializationEvent event)
                        {
                        //block
                    
                            mineraiGrenat = new mineraiGrenat(Material.rock).setBlockName("mineraiGrenat").setBlockTextureName(Main.MODID + ":Minerais de Grenat").setCreativeTab(CreativeTabs.tabBlock).setHardness(6.0F);;
                            GameRegistry.registerBlock(mineraiGrenat, "mineraiGrenat");
                    
                            mineraiUranite = new mineraiUranite(Material.rock).setBlockName("mineraiUranite").setBlockTextureName(Main.MODID + ":Minerais d'Uranite").setCreativeTab(CreativeTabs.tabBlock).setHardness(6.0F);;
                            GameRegistry.registerBlock(mineraiUranite, "mineraiUranite");
                    
                            obsidienneFusionne = new obsidienneFusionne(Material.rock).setBlockName("obsidienneFusionne").setBlockTextureName(Main.MODID + ":obsidienneFusionne").setCreativeTab(CreativeTabs.tabBlock).setHardness(60.0F).setResistance(2500.0F);;
                            GameRegistry.registerBlock(obsidienneFusionne, "obsidienneFusionne");
                    
                        //gems
                        Grenat = new Grenat().setUnlocalizedName("Grenat").setTextureName(Main.MODID + ":Grenat").setCreativeTab(CreativeTabs.tabMaterials);
                            GameRegistry.registerItem(Grenat, "Grenat");
                            Uranite = new Grenat().setUnlocalizedName("Uranite").setTextureName(Main.MODID + ":Uranite").setCreativeTab(CreativeTabs.tabMaterials);
                            GameRegistry.registerItem(Uranite, "Uranite");
                    
                            //armures
                            casqueGrenat = new armureGrenat(grenat, 0).setUnlocalizedName("casqueGrenat").setTextureName(MODID + ":Casque en Grenat");
                            plastronGrenat = new armureGrenat(grenat, 1).setUnlocalizedName("plastronGrenat").setTextureName(MODID + ":Plastron en Grenat");
                            jambesGrenat = new armureGrenat(grenat, 2).setUnlocalizedName("jambesGrenat").setTextureName(MODID + ":Jambière en Grenat");
                            bottesGrenat = new armureGrenat(grenat, 3).setUnlocalizedName("bottesGrenat").setTextureName(MODID + ":Bottes en Grenat");
                            GameRegistry.registerItem(casqueGrenat, "casqueGrenat");
                            GameRegistry.registerItem(plastronGrenat, "plastronGrenat");
                            GameRegistry.registerItem(jambesGrenat, "jambesGrenat");
                            GameRegistry.registerItem(bottesGrenat, "bottesGrenat");
                    
                            casqueUranite = new armureUranite(uranite, 0).setUnlocalizedName("casqueUranite").setTextureName(MODID + ":Casque en Uranite");
                            plastronUranite = new armureUranite(uranite, 1).setUnlocalizedName("plastronUranite").setTextureName(MODID + ":Plastron en Uranite");
                            jambesUranite = new armureUranite(uranite, 2).setUnlocalizedName("jambesUranite").setTextureName(MODID + ":Jambières en Uranite");
                            bottesUranite = new armureUranite(uranite, 3).setUnlocalizedName("bottesUranite").setTextureName(MODID + ":Bottes en Uranite");
                            GameRegistry.registerItem(casqueUranite, "casqueUranite");
                            GameRegistry.registerItem(plastronUranite, "plastronUranite");
                            GameRegistry.registerItem(jambesUranite, "jambesUranite");
                            GameRegistry.registerItem(bottesUranite, "bottesUranite");
                    
                            casqueMagma = new armureMagma(magma, 0).setUnlocalizedName("casqueMagma").setTextureName(MODID + ":helmetMagma");
                            plastronMagma = new armureMagma(magma, 1).setUnlocalizedName("plastronMagma").setTextureName(MODID + ":chestplateMagma");
                            jambesMagma = new armureMagma(magma, 2).setUnlocalizedName("jambesMagma").setTextureName(MODID + ":leggingsMagma");
                            bottesMagma = new armureMagma(magma, 3).setUnlocalizedName("bottesMagma").setTextureName(MODID + ":bootsMagma");
                            GameRegistry.registerItem(casqueMagma, "casqueMagma");
                            GameRegistry.registerItem(plastronMagma, "plastronMagma");
                            GameRegistry.registerItem(jambesMagma, "jambesMagma");
                            GameRegistry.registerItem(bottesMagma, "bottesMagma");
                    
                            //outils
                            epeeGrenat = new epeeGrenat(outilsGrenat).setUnlocalizedName("epeeGrenat").setTextureName(MODID + ":Epée en Grenat");
                            piocheGrenat = new piocheGrenat(outilsGrenat).setUnlocalizedName("piocheGrenat").setTextureName(MODID + ":Pioche en Grenat");
                            hacheGrenat = new hacheGrenat(outilsGrenat).setUnlocalizedName("hacheGrenat").setTextureName(MODID + ":Hache en Grenat");
                            pelleGrenat = new pelleGrenat(outilsGrenat).setUnlocalizedName("pelleGrenat").setTextureName(MODID + ":Pelle en Grenat");
                            hoeGrenat = new hoeGrenat(outilsGrenat).setUnlocalizedName("hoeGrenat").setTextureName(MODID + ":Houe en Grenat");
                            GameRegistry.registerItem(epeeGrenat, "epeeGrenat");
                            GameRegistry.registerItem(piocheGrenat, "piocheGrenat");
                            GameRegistry.registerItem(hacheGrenat, "hacheGrenat");
                            GameRegistry.registerItem(pelleGrenat, "pelleGrenat");
                            GameRegistry.registerItem(hoeGrenat, "hoeGrenat");
                    
                            epeeUranite = new epeeFluorite(outilsUranite).setUnlocalizedName("epeeUranite").setTextureName(MODID + ":Epée en Uranite");
                            piocheUranite = new piocheUranite(outilsUranite).setUnlocalizedName("piocheUranite").setTextureName(MODID + ":Pioche en Uranite");
                            hacheUranite = new hacheUranite(outilsUranite).setUnlocalizedName("hacheUranite").setTextureName(MODID + ":Hache en Uranite");
                            pelleUranite = new pelleUranite(outilsUranite).setUnlocalizedName("pelleUranite").setTextureName(MODID + ":Pelle en Uranite");
                            hoeUranite = new hoeUranite(outilsUranite).setUnlocalizedName("hoeUranite").setTextureName(MODID + ":Houe en Uranite");
                            GameRegistry.registerItem(epeeUranite, "epeeUranite");
                            GameRegistry.registerItem(piocheUranite, "piocheUranite");
                            GameRegistry.registerItem(hacheUranite, "hacheUranite");
                            GameRegistry.registerItem(pelleUranite, "pelleUranite");
                            GameRegistry.registerItem(hoeUranite, "hoeUranite");
                    
                            epeeMagma = new epeeMagma(outilsMagma).setUnlocalizedName("epeeMagma").setTextureName(MODID + ":swordMagma");
                            piocheMagma = new piocheMagma(outilsMagma).setUnlocalizedName("piocheMagma").setTextureName(MODID + ":pickaxeMagma");
                            hacheMagma = new hacheMagma(outilsMagma).setUnlocalizedName("hacheMagma").setTextureName(MODID + ":hatchetMagma");
                            pelleMagma = new pelleMagma(outilsMagma).setUnlocalizedName("pelleMagma").setTextureName(MODID + ":shovelMagma");
                            hoeMagma = new hoeMagma(outilsMagma).setUnlocalizedName("hoeMagma").setTextureName(MODID + ":hoeMagma");
                            GameRegistry.registerItem(epeeMagma, "epeeMagma");
                            GameRegistry.registerItem(piocheMagma, "piocheMagma");
                            GameRegistry.registerItem(hacheMagma, "hacheMagma");
                            GameRegistry.registerItem(pelleMagma, "pelleFluorite");
                            GameRegistry.registerItem(hoeMagma, "hoeMagma"); 
                    
                            //craft
                    
                            GameRegistry.addShapedRecipe(new ItemStack(casqueGrenat), new Object[]{"XXX", "X X", "   ", 'X', Main.Grenat});
                            GameRegistry.addShapedRecipe(new ItemStack(plastronGrenat), new Object[]{"X X", "XXX", "XXX", 'X', Main.Grenat});
                            GameRegistry.addShapedRecipe(new ItemStack(jambesGrenat), new Object[]{"XXX", "X X", "X X", 'X', Main.Grenat});
                            GameRegistry.addShapedRecipe(new ItemStack(bottesGrenat), new Object[]{"   ", "X X", "X X", 'X', Main.Grenat});
                    
                            GameRegistry.addShapedRecipe(new ItemStack(casqueUranite), new Object[]{"XXX", "X X", "   ", 'X', Main.Uranite});
                            GameRegistry.addShapedRecipe(new ItemStack(plastronUranite), new Object[]{"X X", "XXX", "XXX", 'X', Main.Uranite});
                            GameRegistry.addShapedRecipe(new ItemStack(jambesUranite), new Object[]{"XXX", "X X", "X X", 'X', Main.Uranite});
                            GameRegistry.addRecipe(new ItemStack(bottesUranite), new Object[] {"   ", "X X", "X X", 'X', Main.Uranite});
                    
                            GameRegistry.addShapedRecipe(new ItemStack(casqueMagma), new Object[]{"XXX", "X X", "   ", 'X', Main.obsidienneFusionne});
                            GameRegistry.addShapedRecipe(new ItemStack(plastronMagma), new Object[]{"X X", "XXX", "XXX", 'X', Main.obsidienneFusionne});
                            GameRegistry.addShapedRecipe(new ItemStack(jambesMagma), new Object[]{"XXX", "X X", "X X", 'X', Main.obsidienneFusionne});
                            GameRegistry.addShapedRecipe(new ItemStack(bottesMagma), new Object[]{"   ", "X X", "X X", 'X', Main.obsidienneFusionne});
                    
                            GameRegistry.addShapedRecipe(new ItemStack(epeeGrenat), new Object[]{" X ", " X ", " Z ", 'X', Main.Grenat,'Z', Items.stick});
                            GameRegistry.addShapedRecipe(new ItemStack(piocheGrenat), new Object[]{"XXX", " Z ", " Z ", 'X', Main.Grenat,'Z', Items.stick});
                            GameRegistry.addShapedRecipe(new ItemStack(pelleGrenat), new Object[]{" X ", " Z ", " Z ", 'X', Main.Grenat,'Z', Items.stick});
                            GameRegistry.addShapedRecipe(new ItemStack(hoeGrenat), new Object[]{"XX ", " Z ", " Z ", 'X', Main.Grenat,'Z', Items.stick});
                            GameRegistry.addShapedRecipe(new ItemStack(hacheGrenat), new Object[]{"XX ", "XZ ", " Z ", 'X', Main.Grenat,'Z', Items.stick});
                    
                            GameRegistry.addShapedRecipe(new ItemStack(epeeUranite), new Object[]{" X ", " X ", " Z ", 'X', Main.Uranite,'Z', Items.stick});
                            GameRegistry.addShapedRecipe(new ItemStack(piocheUranite), new Object[]{"XXX", " Z ", " Z ", 'X', Main.Uranite,'Z', Items.stick});
                            GameRegistry.addShapedRecipe(new ItemStack(pelleUranite), new Object[]{" X ", " Z ", " Z ", 'X', Main.Uranite,'Z', Items.stick});
                            GameRegistry.addShapedRecipe(new ItemStack(hoeUranite), new Object[]{"XX ", " Z ", " Z ", 'X', Main.Uranite,'Z', Items.stick});
                            GameRegistry.addShapedRecipe(new ItemStack(hacheUranite), new Object[]{"XX ", "XZ ", " Z ", 'X', Main.Uranite,'Z', Items.stick});
                    
                            GameRegistry.addShapedRecipe(new ItemStack(epeeMagma), new Object[]{" X ", " X ", " Z ", 'X', Main.obsidienneFusionne,'Z', Items.stick});
                            GameRegistry.addShapedRecipe(new ItemStack(piocheMagma), new Object[]{"XXX", " Z ", " Z ", 'X', Main.obsidienneFusionne,'Z', Items.stick});
                            GameRegistry.addShapedRecipe(new ItemStack(pelleMagma), new Object[]{" X ", " Z ", " Z ", 'X', Main.obsidienneFusionne,'Z', Items.stick});
                            GameRegistry.addShapedRecipe(new ItemStack(hoeMagma), new Object[]{"XX ", " Z ", " Z ", 'X', Main.obsidienneFusionne,'Z', Items.stick});
                            GameRegistry.addShapedRecipe(new ItemStack(hacheMagma), new Object[]{"XX ", "XZ ", " Z ", 'X', Main.obsidienneFusionne,'Z', Items.stick});
                    
                            GameRegistry.addShapedRecipe(new ItemStack(obsidienneFusionne), new Object[]{"XXX", "XZX", "XXX", 'X', Blocks.obsidian,'Z', Items.lava_bucket});
                    
                        }
                    
                        @EventHandler
                        public void postInit(FMLPostInitializationEvent event)
                        {
                    
                        }
                    }
                    
                    
                    1 réponse Dernière réponse Répondre Citer 0
                    • robin4002
                      robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

                      Je ne sais pas pourquoi j’ai pas remarqué le problème plus tôt.
                      Tous tes blocs et item devrait être dans preInit.
                      Et le générateur devrait être dans init. D’ailleurs pourquoi avoir fait deux générateurs ? Un seul suffit.

                      1 réponse Dernière réponse Répondre Citer 0
                      • S
                        Sebenf0rce dernière édition par

                        Je crois que je viens de trouver cela vient en fait de la génération de multiverse-core qui n’a pas l’air de vouloir générer les nouveau minerais.

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

                          Si tu utilises multiverse tu as donc un id de monde différent, c’est ce que je te demande depuis avant et tu m’avais dit que non …

                          Bref dans ce cas il suffit de retirer le

                              switch(world.provider.dimensionId)
                          

                          Dans la classe de ton générateur.
                          (donc ta fonction generate devrait ressembler à ça :

                          public void generate(Random random, int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider)
                          {
                                  generateSurface(world, random, chunkX * 16, chunkZ * 16);
                          }
                          
                          1 réponse Dernière réponse Répondre Citer 0
                          • 1 / 1
                          • Premier message
                            Dernier message
                          Design by Woryk
                          Contact / Mentions Légales

                          MINECRAFT FORGE FRANCE © 2018

                          Powered by NodeBB