My bad I that I wasn’t clear enough. It does work fine when I try to join the server as Dev—that is, using ./gradlew runClient. But the error appears when I run a Minecraft launcher with the mod’s .jar file (e.g. putting it in the mods folder). Then when I join the localhost server using an account like Lee_Crafts, I get kicked out instantly and receive those aforementioned errors.
first of all guys, did you read the version of this thread, it's 1.16.5 there are not Holders, etc?
like Ores? If so, you don't need a custom Feature you can use Feature.ORE instead
create a static ConfiguredFeature field, then create the ConfiguredFeature in FMLCommonSetupEvent and store it in your field
you then be able to use BiomeLoadingEvent to add the Feature to the World
you can create the ConfiguredFeature via Feature#configured
you can use the vanilla Features class as an example
why do you need a example?
if you provide a example it is helpful but you should know that a few people will copy the code without understanding what the code is doing
and then they come back and say the code is not working (they turn off their brain)
if you want to show examples i would recommend you to use the examples which are provied by Forge in the Forge Community Wiki,
or you create a standalone example (for example with https://gist.github.com/), which you then can link
if you want an example for Features & Placements you can take at: Features & Placements
Edit: in the most cases there are vanilla examples and for the stuff which is added by Forge you can take a look at the Test Mods
Do you know a good example?
I just tried to find a good example in well known mods and they seem to use a variant of the RegistryEvent/manual register like botania, except mekanism which has its own specialised FeatureDeferredRegistry implementation.