Posted August 19, 20205 yr I'm adding custom ore generation for my mod and it says CountRangeConfig and other things, like BIOMES cannot resolve symbols. package com.gabrielrhys.testmod.world.gen; import com.gabrielrhys.testmod.ExtraOres; import com.gabrielrhys.testmod.util.RegistryHandler; import net.minecraft.block.BlockState; import net.minecraft.block.Blocks; import net.minecraft.block.pattern.BlockMatcher; import net.minecraft.world.biome.Biome; import net.minecraft.world.gen.GenerationStage; import net.minecraft.world.gen.feature.Feature; import net.minecraft.world.gen.feature.OreFeatureConfig; import net.minecraft.world.gen.placement.ConfiguredPlacement; import net.minecraft.world.gen.placement.CountRangeConfig; import net.minecraft.world.gen.placement.Placement; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.event.lifecycle.FMLLoadCompleteEvent; import net.minecraftforge.registries.ForgeRegistries; @Mod.EventBusSubscriber(modid = ExtraOres.MOD_ID, bus = Mod.EventBusSubscriber.Bus.MOD) public class ModOreGen { public static OreFeatureConfig.FillerBlockType END_STONE = OreFeatureConfig.FillerBlockType.create("END_STONE", "end_stone", new BlockMatcher(Blocks.END_STONE)); @SubscribeEvent public static void generateOres(FMLLoadCompleteEvent event) { for (Biome biome : ForgeRegistries.BIOMES) { //Nether Generation if (biome.getCategory() == Biome.Category.NETHER) { genOre(biome, 12, 5, 5, 80, OreFeatureConfig.FillerBlockType.NETHERRACK, RegistryHandler.RUBY_ORE.get().getDefaultState(), 4); //End Generation } else if (biome.getCategory() == Biome.Category.THEEND) { genOre(biome, 18, 3, 5, 80, END_STONE, RegistryHandler.RUBY_ORE.get().getDefaultState(), 12); //World Generation } else { genOre(biome, 15, 8, 5, 50, OreFeatureConfig.FillerBlockType.NATURAL_STONE, RegistryHandler.RUBY_ORE.get().getDefaultState(), 6); } } } private static void genOre(Biome biome, int count, int bottomOffset, int topOffset, int max, OreFeatureConfig.FillerBlockType filler, BlockState defaultBlockstate, int size) { CountRangeConfig range = new CountRangeConfig(count, bottomOffset, topOffset, max); OreFeatureConfig feature = new OreFeatureConfig(filler, defaultBlockstate, size); ConfiguredPlacement config = Placement.COUNT_RANGE.configure(range); biome.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Feature.ORE.withConfiguration(feature).withPlacement(config)); } } Edited August 19, 20205 yr by CraigoryOfAshdale
August 20, 20205 yr Biomes are final and data-driven. Forge is currently working on a way to append data. In the meantime, you can add features using json, but they will be standalone. Edited August 20, 20205 yr by ChampionAsh5357
August 24, 20205 yr Author On 8/19/2020 at 8:18 PM, ChampionAsh5357 said: Biomes are final and data-driven. Forge is currently working on a way to append data. In the meantime, you can add features using json, but they will be standalone. How would i do that?
August 25, 20205 yr Probably could google it. This is subject to change though when the appendage system is finished.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.