Everything posted by EnderPoint
-
[SOLVED] I need help in ore generation 1.18.1
i need help in generating ores oregen class: package com.mymod.world.gen; import com.mymod.MyMod; import com.mymod.Registration; import net.minecraft.data.BuiltinRegistries; import net.minecraft.data.worldgen.features.OreFeatures; import net.minecraft.data.worldgen.placement.PlacementUtils; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.biome.Biome; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.levelgen.GenerationStep; import net.minecraft.world.level.levelgen.VerticalAnchor; import net.minecraft.world.level.levelgen.feature.ConfiguredFeature; import net.minecraft.world.level.levelgen.feature.Feature; import net.minecraft.world.level.levelgen.feature.configurations.FeatureConfiguration; import net.minecraft.world.level.levelgen.feature.configurations.OreConfiguration; import net.minecraft.world.level.levelgen.placement.*; import net.minecraft.world.level.levelgen.structure.templatesystem.RuleTest; import net.minecraft.world.level.levelgen.structure.templatesystem.TagMatchTest; import net.minecraftforge.common.Tags; import net.minecraftforge.event.world.BiomeLoadingEvent; import net.minecraftforge.eventbus.api.EventPriority; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.registries.ObjectHolder; @Mod.EventBusSubscriber(modid = MyMod.MODID, bus= Mod.EventBusSubscriber.Bus.FORGE) public class OreGen { public static final int OVERWORLD_VEINSIZE = 5; public static final int OVERWORLD_AMOUNT = 3; public static final int DEEPSLATE_VEINSIZE = 5; public static final int DEEPSLATE_AMOUNT = 3; public static final int NETHER_VEINSIZE = 5; public static final int NETHER_AMOUNT = 3; public static final int END_VEINSIZE = 10; public static final int END_AMOUNT = 6; public static RuleTest IN_ENDSTONE = new TagMatchTest(Tags.Blocks.END_STONES); public static PlacedFeature OVERWORLD_OREGEN; public static PlacedFeature DEEPSLATE_OREGEN; public static PlacedFeature NETHER_OREGEN; public static PlacedFeature END_OREGEN; public static BlockState ore_uranium = Registration.UraniumOre.get().defaultBlockState(); public static void registerConfiguredFeatures() { OreConfiguration overworldConfig = new OreConfiguration(OreFeatures.STONE_ORE_REPLACEABLES, Registration.UraniumOre.get().defaultBlockState(), OVERWORLD_VEINSIZE); OVERWORLD_OREGEN = registerPlacedFeature("uranium_ore", Feature.ORE.configured(overworldConfig), CountPlacement.of(OVERWORLD_AMOUNT), InSquarePlacement.spread(), BiomeFilter.biome(), HeightRangePlacement.uniform(VerticalAnchor.absolute(0), VerticalAnchor.absolute(265))); OreConfiguration deepslateConfig = new OreConfiguration(OreFeatures.DEEPSLATE_ORE_REPLACEABLES, Registration.UraniumOre.get().defaultBlockState(), OVERWORLD_VEINSIZE); OVERWORLD_OREGEN = registerPlacedFeature("uranium_ore", Feature.ORE.configured(overworldConfig), CountPlacement.of(DEEPSLATE_AMOUNT), InSquarePlacement.spread(), BiomeFilter.biome(), HeightRangePlacement.uniform(VerticalAnchor.bottom(), VerticalAnchor.aboveBottom(64))); OreConfiguration netherConfig = new OreConfiguration(OreFeatures.NETHER_ORE_REPLACEABLES, Registration.UraniumOre.get().defaultBlockState(), OVERWORLD_VEINSIZE); NETHER_OREGEN = registerPlacedFeature("uranium_ore", Feature.ORE.configured(overworldConfig), CountPlacement.of(NETHER_AMOUNT), InSquarePlacement.spread(), BiomeFilter.biome(), HeightRangePlacement.uniform(VerticalAnchor.absolute(0), VerticalAnchor.absolute(265))); OreConfiguration endConfig = new OreConfiguration(IN_ENDSTONE, Registration.UraniumOre.get().defaultBlockState(), OVERWORLD_VEINSIZE); END_OREGEN = registerPlacedFeature("uranium_ore", Feature.ORE.configured(overworldConfig), CountPlacement.of(END_AMOUNT), InSquarePlacement.spread(), BiomeFilter.biome(), HeightRangePlacement.uniform(VerticalAnchor.absolute(0), VerticalAnchor.absolute(265))); } private static <C extends FeatureConfiguration, F extends Feature<C>> PlacedFeature registerPlacedFeature(String registeryName, ConfiguredFeature<C, F> feature, PlacementModifier ... placementModifiers) { PlacedFeature placed = BuiltinRegistries.register(BuiltinRegistries.CONFIGURED_FEATURE, new ResourceLocation(registeryName), feature).placed(placementModifiers); return PlacementUtils.register(registeryName, placed); } @SubscribeEvent(priority = EventPriority.HIGH) public static void biomeLoading(final BiomeLoadingEvent event) { if (event.getCategory() == Biome.BiomeCategory.THEEND) { event.getGeneration().addFeature(GenerationStep.Decoration.UNDERGROUND_ORES, END_OREGEN); } else if (event.getCategory() == Biome.BiomeCategory.NETHER) { event.getGeneration().addFeature(GenerationStep.Decoration.UNDERGROUND_ORES, NETHER_OREGEN); } else { event.getGeneration().addFeature(GenerationStep.Decoration.UNDERGROUND_ORES, OVERWORLD_OREGEN); event.getGeneration().addFeature(GenerationStep.Decoration.UNDERGROUND_ORES, DEEPSLATE_OREGEN); } } } Registration class: package com.mymod; import net.minecraft.world.item.BlockItem; import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.Item; import net.minecraft.world.item.Rarity; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.OreBlock; import net.minecraft.world.level.block.SoundType; import net.minecraft.world.level.block.state.BlockBehaviour; import net.minecraft.world.level.material.Material; import net.minecraftforge.eventbus.api.IEventBus; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; import net.minecraftforge.registries.DeferredRegister; import net.minecraftforge.registries.ForgeRegistries; import net.minecraftforge.registries.RegistryObject; public class Registration { public static final DeferredRegister<Block> BLOCKS = DeferredRegister.create(ForgeRegistries.BLOCKS, MyMod.MODID); public static final DeferredRegister<Item> ITEMS = DeferredRegister.create(ForgeRegistries.ITEMS, MyMod.MODID); public static void init() { IEventBus bus = FMLJavaModLoadingContext.get().getModEventBus(); BLOCKS.register(bus); ITEMS.register(bus); } public static final RegistryObject<Block> UraniumBlock = BLOCKS.register("uraniumblock", () -> new Block(BlockBehaviour.Properties.of(Material.METAL).noOcclusion().strength(2).sound(SoundType.AMETHYST).lightLevel(value -> 20).requiresCorrectToolForDrops())); public static final RegistryObject<Item> UraniumBlock_Item = fromBlock(UraniumBlock, new Item.Properties().tab(MyMod.UraniumMod_Tab).rarity(Rarity.EPIC).stacksTo(64)); public static final RegistryObject<Block> UraniumOre = BLOCKS.register("uranium_ore", () -> new OreBlock(BlockBehaviour.Properties.of(Material.METAL).strength(2.2f).sound(SoundType.METAL).lightLevel(value -> 5).requiresCorrectToolForDrops())); public static final RegistryObject<Item> UraniumOre_Item = fromBlock(UraniumOre, new Item.Properties().tab(MyMod.UraniumMod_Tab).stacksTo(64).rarity(Rarity.UNCOMMON)); public static final RegistryObject<Item> UraniumShards = ITEMS.register("uranium_shard", () -> new Item(new Item.Properties().stacksTo(64).tab(MyMod.UraniumMod_Tab).rarity(Rarity.RARE))); public static final RegistryObject<Item> RawUranium = ITEMS.register("raw_uranium", () -> new Item(new Item.Properties().rarity(Rarity.RARE).tab(MyMod.UraniumMod_Tab ).stacksTo(68))); public static <B extends Block> RegistryObject<Item> fromBlock(RegistryObject<B> block, Item.Properties properties) { return ITEMS.register(block.getId().getPath(), () -> new BlockItem(block.get(), properties)); } } with this i get the error: ---- Minecraft Crash Report ---- // There are four lights! Time: 14/03/22, 8:31 pm Description: Mod loading error has occurred java.lang.Exception: Mod Loading has failed at net.minecraftforge.logging.CrashReportExtender.dumpModLoadingCrashReport(CrashReportExtender.java:55) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2376%2382!/:?] {re:classloading} at net.minecraftforge.client.loading.ClientModLoader.completeModLoading(ClientModLoader.java:169) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2376%2382!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.lambda$new$1(Minecraft.java:554) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.Util.ifElse(Util.java:409) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading} at net.minecraft.client.Minecraft.lambda$new$2(Minecraft.java:548) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.gui.screens.LoadingOverlay.render(LoadingOverlay.java:135) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.renderer.GameRenderer.render(GameRenderer.java:875) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.runTick(Minecraft.java:1041) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.run(Minecraft.java:661) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.main.Main.main(Main.java:205) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] {} at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?] {} at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] {} at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?] {} at net.minecraftforge.fml.loading.targets.ForgeClientUserdevLaunchHandler.lambda$launchService$0(ForgeClientUserdevLaunchHandler.java:38) ~[fmlloader-1.18.1-39.1.2.jar%230!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.Launcher.run(Launcher.java:106) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.Launcher.main(Launcher.java:77) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:149) [bootstraplauncher-1.0.0.jar:?] {} A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Thread: Render thread Stacktrace: at java.util.Objects.requireNonNull(Objects.java:334) ~[?:?] {} -- MOD mymod -- Details: Caused by 0: java.lang.ExceptionInInitializerError at java.lang.Class.forName0(Native Method) ~[?:?] {} at java.lang.Class.forName(Class.java:467) ~[?:?] {} at net.minecraftforge.fml.javafmlmod.AutomaticEventSubscriber.lambda$inject$6(AutomaticEventSubscriber.java:75) ~[javafmllanguage-1.18.1-39.1.2.jar%2378!/:?] {} at java.util.ArrayList.forEach(ArrayList.java:1511) ~[?:?] {} at net.minecraftforge.fml.javafmlmod.AutomaticEventSubscriber.inject(AutomaticEventSubscriber.java:62) ~[javafmllanguage-1.18.1-39.1.2.jar%2378!/:?] {} at net.minecraftforge.fml.javafmlmod.FMLModContainer.constructMod(FMLModContainer.java:91) ~[javafmllanguage-1.18.1-39.1.2.jar%2378!/:?] {} at net.minecraftforge.fml.ModContainer.lambda$buildTransitionHandler$4(ModContainer.java:120) ~[fmlcore-1.18.1-39.1.2.jar%2380!/:?] {} at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1804) ~[?:?] {} at java.util.concurrent.CompletableFuture$AsyncRun.exec(CompletableFuture.java:1796) ~[?:?] {} at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373) ~[?:?] {} at java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182) ~[?:?] {} at java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655) ~[?:?] {} at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622) ~[?:?] {} at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165) ~[?:?] {} Mod File: main Failure message: Uranium Mod (mymod) has failed to load correctly java.lang.ExceptionInInitializerError: null Mod Version: 0.0NONE Mod Issue URL: NOT PROVIDED Exception message: java.lang.NullPointerException: Registry Object not present: mymod:uranium_ore Stacktrace: at java.util.Objects.requireNonNull(Objects.java:334) ~[?:?] {} at net.minecraftforge.registries.RegistryObject.get(RegistryObject.java:109) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2376%2382!/:?] {re:classloading} at com.mymod.world.gen.OreGen.<clinit>(OreGen.java:48) ~[%2381!/:?] {re:classloading} at java.lang.Class.forName0(Native Method) ~[?:?] {} at java.lang.Class.forName(Class.java:467) ~[?:?] {} at net.minecraftforge.fml.javafmlmod.AutomaticEventSubscriber.lambda$inject$6(AutomaticEventSubscriber.java:75) ~[javafmllanguage-1.18.1-39.1.2.jar%2378!/:?] {} at java.util.ArrayList.forEach(ArrayList.java:1511) ~[?:?] {} at net.minecraftforge.fml.javafmlmod.AutomaticEventSubscriber.inject(AutomaticEventSubscriber.java:62) ~[javafmllanguage-1.18.1-39.1.2.jar%2378!/:?] {} at net.minecraftforge.fml.javafmlmod.FMLModContainer.constructMod(FMLModContainer.java:91) ~[javafmllanguage-1.18.1-39.1.2.jar%2378!/:?] {} at net.minecraftforge.fml.ModContainer.lambda$buildTransitionHandler$4(ModContainer.java:120) ~[fmlcore-1.18.1-39.1.2.jar%2380!/:?] {} at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1804) ~[?:?] {} at java.util.concurrent.CompletableFuture$AsyncRun.exec(CompletableFuture.java:1796) ~[?:?] {} at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373) ~[?:?] {} at java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182) ~[?:?] {} at java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655) ~[?:?] {} at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622) ~[?:?] {} at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165) ~[?:?] {} -- System Details -- Details: Minecraft Version: 1.18.1 Minecraft Version ID: 1.18.1 Operating System: Windows 10 (amd64) version 10.0 Java Version: 17.0.2, Oracle Corporation Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode, sharing), Oracle Corporation Memory: 1225686496 bytes (1168 MiB) / 2170552320 bytes (2070 MiB) up to 4253024256 bytes (4056 MiB) CPUs: 16 Processor Vendor: GenuineIntel Processor Name: Intel(R) Core(TM) i7-10870H CPU @ 2.20GHz Identifier: Intel64 Family 6 Model 165 Stepping 2 Microarchitecture: unknown Frequency (GHz): 2.21 Number of physical packages: 1 Number of physical CPUs: 8 Number of logical CPUs: 16 Graphics card #0 name: Intel(R) UHD Graphics Graphics card #0 vendor: Intel Corporation (0x8086) Graphics card #0 VRAM (MB): 1024.00 Graphics card #0 deviceId: 0x9bc4 Graphics card #0 versionInfo: DriverVersion=26.20.100.7985 Graphics card #1 name: NVIDIA GeForce GTX 1650 Ti Graphics card #1 vendor: NVIDIA (0x10de) Graphics card #1 VRAM (MB): 4095.00 Graphics card #1 deviceId: 0x1f95 Graphics card #1 versionInfo: DriverVersion=30.0.15.1165 Memory slot #0 capacity (MB): 8192.00 Memory slot #0 clockSpeed (GHz): 3.20 Memory slot #0 type: DDR4 Memory slot #1 capacity (MB): 8192.00 Memory slot #1 clockSpeed (GHz): 3.20 Memory slot #1 type: DDR4 Virtual memory max (MB): 34651.71 Virtual memory used (MB): 21266.60 Swap memory total (MB): 18432.00 Swap memory used (MB): 767.10 JVM Flags: 1 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump ModLauncher: 9.1.3+9.1.3+main.9b69c82a ModLauncher launch target: forgeclientuserdev ModLauncher naming: mcp ModLauncher services: mixin PLUGINSERVICE eventbus PLUGINSERVICE object_holder_definalize PLUGINSERVICE runtime_enum_extender PLUGINSERVICE capability_token_subclass PLUGINSERVICE accesstransformer PLUGINSERVICE runtimedistcleaner PLUGINSERVICE mixin TRANSFORMATIONSERVICE fml TRANSFORMATIONSERVICE FML Language Providers: [email protected] javafml@null Mod List: forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.|Minecraft |minecraft |1.18.1 |COMMON_SET|Manifest: a1:d4:5e:04:4f:d3:d6:e0:7b:37:97:cf:77:b0:de:ad:4a:47:ce:8c:96:49:5f:0a:cf:8c:ae:b2:6d:4b:8a:3f |Forge |forge |39.1.2 |COMMON_SET|Manifest: NOSIGNATURE main |Uranium Mod |mymod |0.0NONE |ERROR |Manifest: NOSIGNATURE Crash Report UUID: 10a5a039-e2f9-4882-b185-d02096ca67d1 FML: 39.1 Forge: net.minecraftforge:39.1.2 which i think means that the default blockstate for Registration.UraniumOre.get().defaultBlockState() is null
-
[SOLVED] I need help in ore generation 1.18.1
nvm i didnt figure it out
-
[SOLVED] I need help in ore generation 1.18.1
i figured it out
-
[SOLVED] I need help in ore generation 1.18.1
nvm im dumb
-
[SOLVED] I need help in ore generation 1.18.1
i want to know how to make UraniumOre from Registration into a Block so i can do .defaultBlockState() on it
-
[SOLVED] I need help in ore generation 1.18.1
from what i have seen i think i have to use @ObjectHolder but i cant seem to figure out how
-
[SOLVED] I need help in ore generation 1.18.1
the problem im getting is that i dont understand how to make ore_uranium into a block as it is a registryObject in this file: package com.mymod; import net.minecraft.world.item.BlockItem; import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.Item; import net.minecraft.world.item.Rarity; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.OreBlock; import net.minecraft.world.level.block.SoundType; import net.minecraft.world.level.block.state.BlockBehaviour; import net.minecraft.world.level.material.Material; import net.minecraftforge.eventbus.api.IEventBus; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; import net.minecraftforge.registries.DeferredRegister; import net.minecraftforge.registries.ForgeRegistries; import net.minecraftforge.registries.RegistryObject; public class Registration { public static final DeferredRegister<Block> BLOCKS = DeferredRegister.create(ForgeRegistries.BLOCKS, MyMod.MODID); public static final DeferredRegister<Item> ITEMS = DeferredRegister.create(ForgeRegistries.ITEMS, MyMod.MODID); public static void init() { IEventBus bus = FMLJavaModLoadingContext.get().getModEventBus(); BLOCKS.register(bus); ITEMS.register(bus); } public static final RegistryObject<Block> UraniumBlock = BLOCKS.register("uraniumblock", () -> new Block(BlockBehaviour.Properties.of(Material.METAL).noOcclusion().strength(2).sound(SoundType.AMETHYST).lightLevel(value -> 20).requiresCorrectToolForDrops())); public static final RegistryObject<Item> UraniumBlock_Item = fromBlock(UraniumBlock, new Item.Properties().tab(MyMod.UraniumMod_Tab).rarity(Rarity.EPIC).stacksTo(64)); public static final RegistryObject<Block> UraniumOre = BLOCKS.register("uranium_ore", () -> new OreBlock(BlockBehaviour.Properties.of(Material.METAL).strength(2.2f).sound(SoundType.METAL).lightLevel(value -> 5).requiresCorrectToolForDrops())); public static final RegistryObject<Item> UraniumOre_Item = fromBlock(UraniumOre, new Item.Properties().tab(MyMod.UraniumMod_Tab).stacksTo(64).rarity(Rarity.UNCOMMON)); public static final RegistryObject<Item> UraniumShards = ITEMS.register("uranium_shard", () -> new Item(new Item.Properties().stacksTo(64).tab(MyMod.UraniumMod_Tab).rarity(Rarity.RARE))); public static final RegistryObject<Item> RawUranium = ITEMS.register("raw_uranium", () -> new Item(new Item.Properties().rarity(Rarity.RARE).tab(MyMod.UraniumMod_Tab ).stacksTo(68))); public static <B extends Block> RegistryObject<Item> fromBlock(RegistryObject<B> block, Item.Properties properties) { return ITEMS.register(block.getId().getPath(), () -> new BlockItem(block.get(), properties)); } }
-
[SOLVED] I need help in ore generation 1.18.1
package com.mymod.world.gen; import com.mymod.MyMod; import com.mymod.Registration; import net.minecraft.data.BuiltinRegistries; import net.minecraft.data.worldgen.features.OreFeatures; import net.minecraft.data.worldgen.placement.PlacementUtils; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.biome.Biome; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.levelgen.GenerationStep; import net.minecraft.world.level.levelgen.VerticalAnchor; import net.minecraft.world.level.levelgen.feature.ConfiguredFeature; import net.minecraft.world.level.levelgen.feature.Feature; import net.minecraft.world.level.levelgen.feature.configurations.FeatureConfiguration; import net.minecraft.world.level.levelgen.feature.configurations.OreConfiguration; import net.minecraft.world.level.levelgen.placement.*; import net.minecraft.world.level.levelgen.structure.templatesystem.RuleTest; import net.minecraft.world.level.levelgen.structure.templatesystem.TagMatchTest; import net.minecraftforge.common.Tags; import net.minecraftforge.event.world.BiomeLoadingEvent; import net.minecraftforge.eventbus.api.EventPriority; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.registries.ObjectHolder; @Mod.EventBusSubscriber(modid = MyMod.MODID, bus= Mod.EventBusSubscriber.Bus.FORGE) public class OreGen { public static final int OVERWORLD_VEINSIZE = 5; public static final int OVERWORLD_AMOUNT = 3; public static final int DEEPSLATE_VEINSIZE = 5; public static final int DEEPSLATE_AMOUNT = 3; public static final int NETHER_VEINSIZE = 5; public static final int NETHER_AMOUNT = 3; public static final int END_VEINSIZE = 10; public static final int END_AMOUNT = 6; public static RuleTest IN_ENDSTONE = new TagMatchTest(Tags.Blocks.END_STONES); public static PlacedFeature OVERWORLD_OREGEN; public static PlacedFeature DEEPSLATE_OREGEN; public static PlacedFeature NETHER_OREGEN; public static PlacedFeature END_OREGEN; public static void registerConfiguredFeatures() { //idk what to put here. //ik that it has to be a blockstate OreConfiguration overworldConfig = new OreConfiguration(OreFeatures.STONE_ORE_REPLACEABLES, ore_uranium.defaultBlockState(), OVERWORLD_VEINSIZE); OVERWORLD_OREGEN = registerPlacedFeature("uranium_ore", Feature.ORE.configured(overworldConfig), CountPlacement.of(OVERWORLD_AMOUNT), InSquarePlacement.spread(), BiomeFilter.biome(), HeightRangePlacement.uniform(VerticalAnchor.absolute(0), VerticalAnchor.absolute(265))); OreConfiguration deepslateConfig = new OreConfiguration(OreFeatures.DEEPSLATE_ORE_REPLACEABLES, ore_uranium.defaultBlockState(), OVERWORLD_VEINSIZE); OVERWORLD_OREGEN = registerPlacedFeature("uranium_ore", Feature.ORE.configured(overworldConfig), CountPlacement.of(DEEPSLATE_AMOUNT), InSquarePlacement.spread(), BiomeFilter.biome(), HeightRangePlacement.uniform(VerticalAnchor.bottom(), VerticalAnchor.aboveBottom(64))); OreConfiguration netherConfig = new OreConfiguration(OreFeatures.NETHER_ORE_REPLACEABLES, ore_uranium.defaultBlockState(), OVERWORLD_VEINSIZE); NETHER_OREGEN = registerPlacedFeature("uranium_ore", Feature.ORE.configured(overworldConfig), CountPlacement.of(NETHER_AMOUNT), InSquarePlacement.spread(), BiomeFilter.biome(), HeightRangePlacement.uniform(VerticalAnchor.absolute(0), VerticalAnchor.absolute(265))); OreConfiguration endConfig = new OreConfiguration(IN_ENDSTONE, ore_uranium.defaultBlockState(), OVERWORLD_VEINSIZE); END_OREGEN = registerPlacedFeature("uranium_ore", Feature.ORE.configured(overworldConfig), CountPlacement.of(END_AMOUNT), InSquarePlacement.spread(), BiomeFilter.biome(), HeightRangePlacement.uniform(VerticalAnchor.absolute(0), VerticalAnchor.absolute(265))); } private static <C extends FeatureConfiguration, F extends Feature<C>> PlacedFeature registerPlacedFeature(String registeryName, ConfiguredFeature<C, F> feature, PlacementModifier ... placementModifiers) { PlacedFeature placed = BuiltinRegistries.register(BuiltinRegistries.CONFIGURED_FEATURE, new ResourceLocation(registeryName), feature).placed(placementModifiers); return PlacementUtils.register(registeryName, placed); } @SubscribeEvent(priority = EventPriority.HIGH) public static void biomeLoading(final BiomeLoadingEvent event) { if (event.getCategory() == Biome.BiomeCategory.THEEND) { event.getGeneration().addFeature(GenerationStep.Decoration.UNDERGROUND_ORES, END_OREGEN); } else if (event.getCategory() == Biome.BiomeCategory.NETHER) { event.getGeneration().addFeature(GenerationStep.Decoration.UNDERGROUND_ORES, NETHER_OREGEN); } else { event.getGeneration().addFeature(GenerationStep.Decoration.UNDERGROUND_ORES, OVERWORLD_OREGEN); event.getGeneration().addFeature(GenerationStep.Decoration.UNDERGROUND_ORES, DEEPSLATE_OREGEN); } } } my current oregen file
-
[Solved] Why does this crash?
Yooooooooo it works tysm
-
[Solved] Why does this crash?
Yooooooooo it works tysm
-
[Solved] Why does this crash?
i think the block isnt getting registered properly
-
[Solved] Why does this crash?
- [Solved] Why does this crash?
still doesnt work- [Solved] Why does this crash?
https://github.com/EnderPoint07/Uranium-Mod i think i made it properly- [Solved] Why does this crash?
https://github.com/EnderPoint07/Uranium-Mod i think i made it properly- [Solved] Why does this crash?
oh lol i had called it but i forgot that i had put it into a comment for something- [Solved] Why does this crash?
idk how to use github- [Solved] Why does this crash?
package com.mymod; import net.minecraft.world.item.BlockItem; import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.Item; import net.minecraft.world.item.Rarity; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.SoundType; import net.minecraft.world.level.block.state.BlockBehaviour; import net.minecraft.world.level.material.Material; import net.minecraftforge.eventbus.api.IEventBus; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; import net.minecraftforge.registries.DeferredRegister; import net.minecraftforge.registries.ForgeRegistries; import net.minecraftforge.registries.RegistryObject; public class Registration { public static final DeferredRegister<Block> BLOCKS = DeferredRegister.create(ForgeRegistries.BLOCKS, MyMod.MODID); public static final DeferredRegister<Item> ITEMS = DeferredRegister.create(ForgeRegistries.ITEMS, MyMod.MODID); public static void init() { IEventBus bus = FMLJavaModLoadingContext.get().getModEventBus(); BLOCKS.register(bus); ITEMS.register(bus); } public static final RegistryObject<Block> UraniumBlock = BLOCKS.register("uraniumblock", () -> new Block(BlockBehaviour.Properties.of(Material.METAL).noOcclusion().strength(2).sound(SoundType.AMETHYST).lightLevel(value -> 20).requiresCorrectToolForDrops())); public static final RegistryObject<Item> UraniumBlock_Item = fromBlock(UraniumBlock, new Item.Properties().tab(CreativeModeTab.TAB_MATERIALS).rarity(Rarity.EPIC).stacksTo(64)); public static <B extends Block> RegistryObject<Item> fromBlock(RegistryObject<B> block, Item.Properties properties) { return ITEMS.register(block.getId().getPath(), () -> new BlockItem(block.get(), properties)); } } this is not working. am i missing something here?- [Solved] Why does this crash?
package com.mymod; import net.minecraft.world.item.BlockItem; import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.Item; import net.minecraft.world.item.Rarity; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.SoundType; import net.minecraft.world.level.block.state.BlockBehaviour; import net.minecraft.world.level.material.Material; import net.minecraftforge.eventbus.api.IEventBus; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; import net.minecraftforge.registries.DeferredRegister; import net.minecraftforge.registries.ForgeRegistries; import net.minecraftforge.registries.RegistryObject; public class Registration { public static final DeferredRegister<Block> BLOCKS = DeferredRegister.create(ForgeRegistries.BLOCKS, MyMod.MODID); public static final DeferredRegister<Item> ITEMS = DeferredRegister.create(ForgeRegistries.ITEMS, MyMod.MODID); public static void init() { IEventBus bus = FMLJavaModLoadingContext.get().getModEventBus(); BLOCKS.register(bus); ITEMS.register(bus); } public static final RegistryObject<Block> UraniumBlock = BLOCKS.register("uraniumblock", () -> new Block(BlockBehaviour.Properties.of(Material.METAL).noOcclusion().strength(2).sound(SoundType.AMETHYST).lightLevel(value -> 20).requiresCorrectToolForDrops())); public static final RegistryObject<Item> UraniumBlock_Item = fromBlock(UraniumBlock, new Item.Properties().tab(CreativeModeTab.TAB_MATERIALS).rarity(Rarity.EPIC).stacksTo(64)); public static <B extends Block> RegistryObject<Item> fromBlock(RegistryObject<B> block, Item.Properties properties) { return ITEMS.register(block.getId().getPath(), () -> new BlockItem(block.get(), properties)); } } is this how you ment i should be registering blocks and items and itemblocks?- [Solved] Why does this crash?
ok ty- [Solved] Why does this crash?
it crashes when i click on create new world- [Solved] Why does this crash?
---- Minecraft Crash Report ---- // Daisy, daisy... Time: 14/03/22, 4:23 pm Description: mouseClicked event handler java.lang.NullPointerException: mouseClicked event handler at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:273) ~[?:?] {} at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) ~[?:?] {} at java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:992) ~[?:?] {} at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762) ~[?:?] {} at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276) ~[?:?] {} at java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:992) ~[?:?] {} at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[?:?] {} at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?] {} at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921) ~[?:?] {} at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?] {} at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682) ~[?:?] {} at net.minecraft.world.level.biome.BiomeGenerationSettings.<init>(BiomeGenerationSettings.java:50) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading} at net.minecraft.world.level.biome.BiomeGenerationSettings$Builder.build(BiomeGenerationSettings.java:110) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B} at net.minecraftforge.common.ForgeHooks.enhanceBiome(ForgeHooks.java:888) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2376%2382!/:?] {re:classloading} at net.minecraft.world.level.biome.Biome.lambda$static$6(Biome.java:55) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B} at com.mojang.datafixers.util.Function6.lambda$null$4(Function6.java:18) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.DataResult$Instance.ap3(DataResult.java:337) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.codecs.RecordCodecBuilder$Instance$5.decode(RecordCodecBuilder.java:321) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.codecs.RecordCodecBuilder$2.decode(RecordCodecBuilder.java:107) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.MapDecoder.lambda$compressedDecode$0(MapDecoder.java:52) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.DataResult.lambda$flatMap$10(DataResult.java:138) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.datafixers.util.Either$Left.map(Either.java:38) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.DataResult.flatMap(DataResult.java:136) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.MapDecoder.compressedDecode(MapDecoder.java:52) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.MapCodec$MapCodecCodec.decode(MapCodec.java:91) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.Decoder.parse(Decoder.java:18) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at net.minecraft.resources.RegistryResourceAccess$InMemoryStorage.parseElement(RegistryResourceAccess.java:143) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading} at net.minecraft.resources.RegistryReadOps.readAndRegisterElement(RegistryReadOps.java:102) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B} at net.minecraft.resources.RegistryReadOps.lambda$decodeElements$5(RegistryReadOps.java:86) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B} at com.mojang.serialization.DataResult.lambda$flatMap$10(DataResult.java:138) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.datafixers.util.Either$Left.map(Either.java:38) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.DataResult.flatMap(DataResult.java:136) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at net.minecraft.resources.RegistryReadOps.decodeElements(RegistryReadOps.java:85) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B} at net.minecraft.core.RegistryAccess.readRegistry(RegistryAccess.java:154) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading} at net.minecraft.core.RegistryAccess.load(RegistryAccess.java:146) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading} at net.minecraft.resources.RegistryReadOps.createAndLoad(RegistryReadOps.java:35) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B} at net.minecraft.core.RegistryAccess.builtin(RegistryAccess.java:104) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading} at net.minecraft.client.gui.screens.worldselection.CreateWorldScreen.create(CreateWorldScreen.java:118) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.gui.screens.worldselection.SelectWorldScreen.lambda$init$4(SelectWorldScreen.java:60) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.gui.components.Button.onPress(Button.java:29) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.gui.components.AbstractButton.onClick(AbstractButton.java:17) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.gui.components.AbstractWidget.mouseClicked(AbstractWidget.java:111) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.gui.components.events.ContainerEventHandler.mouseClicked(ContainerEventHandler.java:28) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.MouseHandler.lambda$onPress$0(MouseHandler.java:88) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.gui.screens.Screen.wrapScreenError(Screen.java:527) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.MouseHandler.onPress(MouseHandler.java:85) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.MouseHandler.lambda$setup$4(MouseHandler.java:185) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.util.thread.BlockableEventLoop.execute(BlockableEventLoop.java:90) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B} at net.minecraft.client.MouseHandler.lambda$setup$5(MouseHandler.java:184) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at org.lwjgl.glfw.GLFWMouseButtonCallbackI.callback(GLFWMouseButtonCallbackI.java:36) ~[lwjgl-glfw-3.2.2.jar%2355!/:build 10] {} at org.lwjgl.system.JNI.invokeV(Native Method) ~[lwjgl-3.2.2.jar%2361!/:build 10] {} at org.lwjgl.glfw.GLFW.glfwWaitEventsTimeout(GLFW.java:3174) ~[lwjgl-glfw-3.2.2.jar%2355!/:build 10] {} at com.mojang.blaze3d.systems.RenderSystem.limitDisplayFPS(RenderSystem.java:185) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.runTick(Minecraft.java:1066) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.run(Minecraft.java:661) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.main.Main.main(Main.java:205) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] {} at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?] {} at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] {} at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?] {} at net.minecraftforge.fml.loading.targets.ForgeClientUserdevLaunchHandler.lambda$launchService$0(ForgeClientUserdevLaunchHandler.java:38) ~[fmlloader-1.18.1-39.1.2.jar%230!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.Launcher.run(Launcher.java:106) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.Launcher.main(Launcher.java:77) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:149) [bootstraplauncher-1.0.0.jar:?] {} A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- Head -- Thread: Render thread Stacktrace: at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:273) ~[?:?] {} at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) ~[?:?] {} at java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:992) ~[?:?] {} at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762) ~[?:?] {} at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276) ~[?:?] {} at java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:992) ~[?:?] {} at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[?:?] {} at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?] {} at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921) ~[?:?] {} at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?] {} at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682) ~[?:?] {} at net.minecraft.world.level.biome.BiomeGenerationSettings.<init>(BiomeGenerationSettings.java:50) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading} at net.minecraft.world.level.biome.BiomeGenerationSettings$Builder.build(BiomeGenerationSettings.java:110) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B} at net.minecraftforge.common.ForgeHooks.enhanceBiome(ForgeHooks.java:888) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2376%2382!/:?] {re:classloading} at net.minecraft.world.level.biome.Biome.lambda$static$6(Biome.java:55) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B} at com.mojang.datafixers.util.Function6.lambda$null$4(Function6.java:18) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.DataResult$Instance.ap3(DataResult.java:337) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.codecs.RecordCodecBuilder$Instance$5.decode(RecordCodecBuilder.java:321) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.codecs.RecordCodecBuilder$2.decode(RecordCodecBuilder.java:107) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.MapDecoder.lambda$compressedDecode$0(MapDecoder.java:52) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.DataResult.lambda$flatMap$10(DataResult.java:138) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.datafixers.util.Either$Left.map(Either.java:38) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.DataResult.flatMap(DataResult.java:136) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.MapDecoder.compressedDecode(MapDecoder.java:52) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.MapCodec$MapCodecCodec.decode(MapCodec.java:91) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.Decoder.parse(Decoder.java:18) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at net.minecraft.resources.RegistryResourceAccess$InMemoryStorage.parseElement(RegistryResourceAccess.java:143) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading} at net.minecraft.resources.RegistryReadOps.readAndRegisterElement(RegistryReadOps.java:102) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B} at net.minecraft.resources.RegistryReadOps.lambda$decodeElements$5(RegistryReadOps.java:86) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B} at com.mojang.serialization.DataResult.lambda$flatMap$10(DataResult.java:138) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.datafixers.util.Either$Left.map(Either.java:38) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at com.mojang.serialization.DataResult.flatMap(DataResult.java:136) ~[datafixerupper-4.0.26.jar%2343!/:?] {} at net.minecraft.resources.RegistryReadOps.decodeElements(RegistryReadOps.java:85) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B} at net.minecraft.core.RegistryAccess.readRegistry(RegistryAccess.java:154) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading} at net.minecraft.core.RegistryAccess.load(RegistryAccess.java:146) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading} at net.minecraft.resources.RegistryReadOps.createAndLoad(RegistryReadOps.java:35) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B} at net.minecraft.core.RegistryAccess.builtin(RegistryAccess.java:104) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading} at net.minecraft.client.gui.screens.worldselection.CreateWorldScreen.create(CreateWorldScreen.java:118) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.gui.screens.worldselection.SelectWorldScreen.lambda$init$4(SelectWorldScreen.java:60) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.gui.components.Button.onPress(Button.java:29) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.gui.components.AbstractButton.onClick(AbstractButton.java:17) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.gui.components.AbstractWidget.mouseClicked(AbstractWidget.java:111) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.gui.components.events.ContainerEventHandler.mouseClicked(ContainerEventHandler.java:28) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.MouseHandler.lambda$onPress$0(MouseHandler.java:88) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.gui.screens.Screen.wrapScreenError(Screen.java:527) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.MouseHandler.onPress(MouseHandler.java:85) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.MouseHandler.lambda$setup$4(MouseHandler.java:185) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.util.thread.BlockableEventLoop.execute(BlockableEventLoop.java:90) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B} at net.minecraft.client.MouseHandler.lambda$setup$5(MouseHandler.java:184) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at org.lwjgl.glfw.GLFWMouseButtonCallbackI.callback(GLFWMouseButtonCallbackI.java:36) ~[lwjgl-glfw-3.2.2.jar%2355!/:build 10] {} at org.lwjgl.system.JNI.invokeV(Native Method) ~[lwjgl-3.2.2.jar%2361!/:build 10] {} at org.lwjgl.glfw.GLFW.glfwWaitEventsTimeout(GLFW.java:3174) ~[lwjgl-glfw-3.2.2.jar%2355!/:build 10] {} -- Affected screen -- Details: Screen name: net.minecraft.client.gui.screens.worldselection.SelectWorldScreen Stacktrace: at net.minecraft.client.gui.screens.Screen.wrapScreenError(Screen.java:527) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.MouseHandler.onPress(MouseHandler.java:85) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.MouseHandler.lambda$setup$4(MouseHandler.java:185) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.util.thread.BlockableEventLoop.execute(BlockableEventLoop.java:90) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B} at net.minecraft.client.MouseHandler.lambda$setup$5(MouseHandler.java:184) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at org.lwjgl.glfw.GLFWMouseButtonCallbackI.callback(GLFWMouseButtonCallbackI.java:36) ~[lwjgl-glfw-3.2.2.jar%2355!/:build 10] {} at org.lwjgl.system.JNI.invokeV(Native Method) ~[lwjgl-3.2.2.jar%2361!/:build 10] {} at org.lwjgl.glfw.GLFW.glfwWaitEventsTimeout(GLFW.java:3174) ~[lwjgl-glfw-3.2.2.jar%2355!/:build 10] {} at com.mojang.blaze3d.systems.RenderSystem.limitDisplayFPS(RenderSystem.java:185) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.runTick(Minecraft.java:1066) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.run(Minecraft.java:661) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.main.Main.main(Main.java:205) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] {} at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?] {} at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] {} at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?] {} at net.minecraftforge.fml.loading.targets.ForgeClientUserdevLaunchHandler.lambda$launchService$0(ForgeClientUserdevLaunchHandler.java:38) ~[fmlloader-1.18.1-39.1.2.jar%230!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.Launcher.run(Launcher.java:106) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.Launcher.main(Launcher.java:77) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:149) [bootstraplauncher-1.0.0.jar:?] {} -- Last reload -- Details: Reload number: 1 Reload reason: initial Finished: Yes Packs: Default, Mod Resources Stacktrace: at net.minecraft.client.ResourceLoadStateTracker.fillCrashReport(ResourceLoadStateTracker.java:51) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.fillReport(Minecraft.java:2256) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.Minecraft.run(Minecraft.java:678) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A} at net.minecraft.client.main.Main.main(Main.java:205) ~[forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.jar%2377!/:?] {re:classloading,pl:runtimedistcleaner:A} at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] {} at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?] {} at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] {} at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?] {} at net.minecraftforge.fml.loading.targets.ForgeClientUserdevLaunchHandler.lambda$launchService$0(ForgeClientUserdevLaunchHandler.java:38) ~[fmlloader-1.18.1-39.1.2.jar%230!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.Launcher.run(Launcher.java:106) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.Launcher.main(Launcher.java:77) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-9.1.3.jar%2310!/:?] {} at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:149) [bootstraplauncher-1.0.0.jar:?] {} -- System Details -- Details: Minecraft Version: 1.18.1 Minecraft Version ID: 1.18.1 Operating System: Windows 10 (amd64) version 10.0 Java Version: 17.0.2, Oracle Corporation Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode, sharing), Oracle Corporation Memory: 1406385608 bytes (1341 MiB) / 2558525440 bytes (2440 MiB) up to 4253024256 bytes (4056 MiB) CPUs: 16 Processor Vendor: GenuineIntel Processor Name: Intel(R) Core(TM) i7-10870H CPU @ 2.20GHz Identifier: Intel64 Family 6 Model 165 Stepping 2 Microarchitecture: unknown Frequency (GHz): 2.21 Number of physical packages: 1 Number of physical CPUs: 8 Number of logical CPUs: 16 Graphics card #0 name: Intel(R) UHD Graphics Graphics card #0 vendor: Intel Corporation (0x8086) Graphics card #0 VRAM (MB): 1024.00 Graphics card #0 deviceId: 0x9bc4 Graphics card #0 versionInfo: DriverVersion=26.20.100.7985 Graphics card #1 name: NVIDIA GeForce GTX 1650 Ti Graphics card #1 vendor: NVIDIA (0x10de) Graphics card #1 VRAM (MB): 4095.00 Graphics card #1 deviceId: 0x1f95 Graphics card #1 versionInfo: DriverVersion=30.0.15.1165 Memory slot #0 capacity (MB): 8192.00 Memory slot #0 clockSpeed (GHz): 3.20 Memory slot #0 type: DDR4 Memory slot #1 capacity (MB): 8192.00 Memory slot #1 clockSpeed (GHz): 3.20 Memory slot #1 type: DDR4 Virtual memory max (MB): 34651.71 Virtual memory used (MB): 19607.91 Swap memory total (MB): 18432.00 Swap memory used (MB): 173.55 JVM Flags: 1 total; -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump Launched Version: MOD_DEV Backend library: LWJGL version 3.2.2 SNAPSHOT Backend API: NVIDIA GeForce GTX 1650 Ti/PCIe/SSE2 GL version 3.2.0 NVIDIA 511.65, NVIDIA Corporation Window size: 1920x1080 GL Caps: Using framebuffer using OpenGL 3.2 GL debug messages: Using VBOs: Yes Is Modded: Definitely; Client brand changed to 'forge' Type: Client (map_client.txt) Graphics mode: fancy Resource Packs: Current Language: English (US) CPU: 16x Intel(R) Core(TM) i7-10870H CPU @ 2.20GHz ModLauncher: 9.1.3+9.1.3+main.9b69c82a ModLauncher launch target: forgeclientuserdev ModLauncher naming: mcp ModLauncher services: mixin PLUGINSERVICE eventbus PLUGINSERVICE object_holder_definalize PLUGINSERVICE runtime_enum_extender PLUGINSERVICE capability_token_subclass PLUGINSERVICE accesstransformer PLUGINSERVICE runtimedistcleaner PLUGINSERVICE mixin TRANSFORMATIONSERVICE fml TRANSFORMATIONSERVICE FML Language Providers: [email protected] javafml@null Mod List: forge-1.18.1-39.1.2_mapped_official_1.18.1-recomp.|Minecraft |minecraft |1.18.1 |DONE |Manifest: a1:d4:5e:04:4f:d3:d6:e0:7b:37:97:cf:77:b0:de:ad:4a:47:ce:8c:96:49:5f:0a:cf:8c:ae:b2:6d:4b:8a:3f |Forge |forge |39.1.2 |DONE |Manifest: NOSIGNATURE main |Uranium Mod |mymod |0.0NONE |DONE |Manifest: NOSIGNATURE Crash Report UUID: 949b0f9a-861f-4a6c-858c-b474acdc06ea FML: 39.1 Forge: net.minecraftforge:39.1.2 my oregen class: package com.mymod.world.gen; import com.mymod.MyMod; import net.minecraft.data.BuiltinRegistries; import net.minecraft.data.worldgen.features.OreFeatures; import net.minecraft.data.worldgen.placement.PlacementUtils; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.biome.Biome; import net.minecraft.world.level.levelgen.GenerationStep; import net.minecraft.world.level.levelgen.VerticalAnchor; import net.minecraft.world.level.levelgen.feature.ConfiguredFeature; import net.minecraft.world.level.levelgen.feature.Feature; import net.minecraft.world.level.levelgen.feature.configurations.FeatureConfiguration; import net.minecraft.world.level.levelgen.feature.configurations.OreConfiguration; import net.minecraft.world.level.levelgen.placement.*; import net.minecraft.world.level.levelgen.structure.templatesystem.RuleTest; import net.minecraft.world.level.levelgen.structure.templatesystem.TagMatchTest; import net.minecraftforge.common.Tags; import net.minecraftforge.event.world.BiomeLoadingEvent; import net.minecraftforge.eventbus.api.EventPriority; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; @Mod.EventBusSubscriber(modid = MyMod.MODID, bus= Mod.EventBusSubscriber.Bus.FORGE) public class OreGen { public static final int OVERWORLD_VEINSIZE = 5; public static final int OVERWORLD_AMOUNT = 3; public static final int DEEPSLATE_VEINSIZE = 5; public static final int DEEPSLATE_AMOUNT = 3; public static final int NETHER_VEINSIZE = 5; public static final int NETHER_AMOUNT = 3; public static final int END_VEINSIZE = 10; public static final int END_AMOUNT = 6; public static RuleTest IN_ENDSTONE = new TagMatchTest(Tags.Blocks.END_STONES); public static PlacedFeature OVERWORLD_OREGEN; public static PlacedFeature DEEPSLATE_OREGEN; public static PlacedFeature NETHER_OREGEN; public static PlacedFeature END_OREGEN; public static void registerConfiguredFeatures() { OreConfiguration overworldConfig = new OreConfiguration(OreFeatures.STONE_ORE_REPLACEABLES, MyMod.RegistryEvents.UraniumOre.defaultBlockState(), OVERWORLD_VEINSIZE); OVERWORLD_OREGEN = registerPlacedFeature("uranium_ore", Feature.ORE.configured(overworldConfig), CountPlacement.of(OVERWORLD_AMOUNT), InSquarePlacement.spread(), BiomeFilter.biome(), HeightRangePlacement.uniform(VerticalAnchor.absolute(0), VerticalAnchor.absolute(265))); OreConfiguration deepslateConfig = new OreConfiguration(OreFeatures.DEEPSLATE_ORE_REPLACEABLES, MyMod.RegistryEvents.UraniumOre.defaultBlockState(), OVERWORLD_VEINSIZE); OVERWORLD_OREGEN = registerPlacedFeature("uranium_ore", Feature.ORE.configured(overworldConfig), CountPlacement.of(DEEPSLATE_AMOUNT), InSquarePlacement.spread(), BiomeFilter.biome(), HeightRangePlacement.uniform(VerticalAnchor.bottom(), VerticalAnchor.aboveBottom(64))); OreConfiguration netherConfig = new OreConfiguration(OreFeatures.NETHER_ORE_REPLACEABLES, MyMod.RegistryEvents.UraniumOre.defaultBlockState(), OVERWORLD_VEINSIZE); NETHER_OREGEN = registerPlacedFeature("uranium_ore", Feature.ORE.configured(overworldConfig), CountPlacement.of(NETHER_AMOUNT), InSquarePlacement.spread(), BiomeFilter.biome(), HeightRangePlacement.uniform(VerticalAnchor.absolute(0), VerticalAnchor.absolute(265))); OreConfiguration endConfig = new OreConfiguration(IN_ENDSTONE, MyMod.RegistryEvents.UraniumOre.defaultBlockState(), OVERWORLD_VEINSIZE); END_OREGEN = registerPlacedFeature("uranium_ore", Feature.ORE.configured(overworldConfig), CountPlacement.of(END_AMOUNT), InSquarePlacement.spread(), BiomeFilter.biome(), HeightRangePlacement.uniform(VerticalAnchor.absolute(0), VerticalAnchor.absolute(265))); } private static <C extends FeatureConfiguration, F extends Feature<C>> PlacedFeature registerPlacedFeature(String registeryName, ConfiguredFeature<C, F> feature, PlacementModifier ... placementModifiers) { PlacedFeature placed = BuiltinRegistries.register(BuiltinRegistries.CONFIGURED_FEATURE, new ResourceLocation(registeryName), feature).placed(placementModifiers); return PlacementUtils.register(registeryName, placed); } @SubscribeEvent(priority = EventPriority.HIGH) public static void biomeLoading(final BiomeLoadingEvent event) { if (event.getCategory() == Biome.BiomeCategory.THEEND) { event.getGeneration().addFeature(GenerationStep.Decoration.UNDERGROUND_ORES, END_OREGEN); } else if (event.getCategory() == Biome.BiomeCategory.NETHER) { event.getGeneration().addFeature(GenerationStep.Decoration.UNDERGROUND_ORES, NETHER_OREGEN); } else { event.getGeneration().addFeature(GenerationStep.Decoration.UNDERGROUND_ORES, OVERWORLD_OREGEN); event.getGeneration().addFeature(GenerationStep.Decoration.UNDERGROUND_ORES, DEEPSLATE_OREGEN); } } } my "main" class: package com.mymod; import com.mymod.world.gen.OreGen; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.BlockItem; import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.Item; import net.minecraft.world.item.Rarity; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.block.OreBlock; import net.minecraft.world.level.block.SoundType; import net.minecraft.world.level.block.state.BlockBehaviour; import net.minecraft.world.level.material.Material; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.event.RegistryEvent; import net.minecraftforge.event.server.ServerStartingEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.InterModComms; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent; import net.minecraftforge.fml.event.lifecycle.InterModEnqueueEvent; import net.minecraftforge.fml.event.lifecycle.InterModProcessEvent; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import java.util.stream.Collectors; // The value here should match an entry in the META-INF/mods.toml file @Mod(MyMod.MODID) public class MyMod { public static final String MODID = "mymod"; // Directly reference a log4j logger. private static final Logger LOGGER = LogManager.getLogger(); public MyMod() { // Register the setup method for modloading FMLJavaModLoadingContext.get().getModEventBus().addListener(this::setup); // Register the enqueueIMC method for modloading FMLJavaModLoadingContext.get().getModEventBus().addListener(this::enqueueIMC); // Register the processIMC method for modloading FMLJavaModLoadingContext.get().getModEventBus().addListener(this::processIMC); // Register ourselves for server and other game events we are interested in MinecraftForge.EVENT_BUS.register(this); } private void setup(final FMLCommonSetupEvent event) { // some preinit code LOGGER.info("HELLO FROM PREINIT"); LOGGER.info("DIRT BLOCK >> {}", Blocks.DIRT.getRegistryName()); event.enqueueWork(OreGen::registerConfiguredFeatures); } private void enqueueIMC(final InterModEnqueueEvent event) { // some example code to dispatch IMC to another mod InterModComms.sendTo("MyMod", "helloworld", () -> { LOGGER.info("Hello world from the MDK"); return "Hello world";}); } private void processIMC(final InterModProcessEvent event) { // some example code to receive and process InterModComms from other mods LOGGER.info("Got IMC {}", event.getIMCStream(). map(m->m.messageSupplier().get()). collect(Collectors.toList())); } // You can use SubscribeEvent and let the Event Bus discover methods to call @SubscribeEvent public void onServerStarting(ServerStartingEvent event) { // do something when the server starts LOGGER.info("HELLO from server starting"); } // You can use EventBusSubscriber to automatically subscribe events on the contained class (this is subscribing to the MOD // Event bus for receiving Registry Events) @Mod.EventBusSubscriber(bus=Mod.EventBusSubscriber.Bus.MOD) public static class RegistryEvents { public static final Block MyBlock = new Block(BlockBehaviour.Properties.of(Material.STONE).friction(0.5f)).setRegistryName(MODID, "myblock"); public static final Block UraniumBlock = new Block(BlockBehaviour.Properties.of(Material.METAL).noOcclusion().strength(2).sound(SoundType.AMETHYST).lightLevel(value -> 20).requiresCorrectToolForDrops()).setRegistryName(MODID, "uraniumblock"); public static final Block UraniumOre = new OreBlock(BlockBehaviour.Properties.of(Material.METAL).strength(2.2f).sound(SoundType.METAL).lightLevel(value -> 5).requiresCorrectToolForDrops()).setRegistryName("uranium_ore"); public static final Item UraniumShards = new Item(new Item.Properties().stacksTo(64).tab(CreativeModeTab.TAB_MATERIALS).rarity(Rarity.RARE)).setRegistryName(MODID, "uranium_shard"); public static final Item RawUranium = new Item((new Item.Properties().rarity(Rarity.RARE).tab(CreativeModeTab.TAB_MATERIALS).stacksTo(68))).setRegistryName(MODID, "raw_uranium"); @SubscribeEvent public static void RegisterBlocks(final RegistryEvent.Register<Block> event) { // register a new block here event.getRegistry().register(MyBlock); event.getRegistry().register(UraniumBlock); event.getRegistry().register(UraniumOre); LOGGER.info("HELLO from Register Block"); } @SubscribeEvent public static void RegisterItemBlocks(final RegistryEvent.Register<Item> event) { event.getRegistry().register(new BlockItem(RegistryEvents.MyBlock, new Item.Properties().stacksTo(2).tab(CreativeModeTab.TAB_BUILDING_BLOCKS)).setRegistryName(MyBlock.getRegistryName())); event.getRegistry().register(new BlockItem(RegistryEvents.UraniumBlock, new Item.Properties().tab(CreativeModeTab.TAB_MATERIALS).rarity(Rarity.EPIC).stacksTo(64)).setRegistryName(UraniumBlock.getRegistryName())); event.getRegistry().register(new BlockItem(RegistryEvents.UraniumOre, new Item.Properties().tab(CreativeModeTab.TAB_MATERIALS).stacksTo(64).rarity(Rarity.UNCOMMON)).setRegistryName(UraniumOre.getRegistryName())); event.getRegistry().register(UraniumShards); event.getRegistry().register(RawUranium); } } } i was following this tutorial :- crash : "Mod" has @SubscribeEvent annotation, but takes an argument that is not a subtype of the base type interface
is there any mod that adds custom ores in 1.18.1 which i can use as an example?- crash : "Mod" has @SubscribeEvent annotation, but takes an argument that is not a subtype of the base type interface
i dont understand anything i think my mind is gonna explode. i learned java like last week and now i dont understand anything. all i wanted to do was generate ores in 1.18.1- crash : "Mod" has @SubscribeEvent annotation, but takes an argument that is not a subtype of the base type interface
im new to java. I know basic java and yes i releaize it has a parameter i was asking what do i put in it cause all the examples i found online of it didnt do anything for me - [Solved] Why does this crash?
IPS spam blocked by CleanTalk.
Important Information
By using this site, you agree to our Terms of Use.