net.minecraftforge.fml.common.IWorldGenerator
->net.minecraft.world.gen.feature.Feature
- No longer needed. I think it should be removed by forge, as it has been superseded by vanilla functionality. See below.
net.minecraft.world.gen.feature.WorldGenerator
->net.minecraft.world.gen.feature.Feature
- This would also be the most common replacement of Forge's
IWorldGenerator
. This should be the solution for anything smaller than a chunk. - Except the 8 blocks offset. This is not a thing anymore. Population now works just like any normal person would expect.
- Position of features is controlled by instances of
net.minecraft.world.gen.placement.BasePlacement
instead of by the feature itself.
- This would also be the most common replacement of Forge's
net.minecraft.world.gen.MapGenBase
->net.minecraft.world.gen.carver.IWorldCarver
- This is now finally exposed to mods in a useful way. As it was mostly hidden from modders before, not eveyone may know what it is, so it will be explained later. Generates caves a
This primer is licensed under CC0, do whatever you want.
BUT do note that this can be updated, so leave a link here so readers can see the updated information themselves.
1.13 and 1.14 are lumped together in this doc, you're on your own if you just want to go to 1.13 and not 1.14, for some reason.
1.15 stuff: https://gist.github.com/williewillus/30d7e3f775fe93c503bddf054ef3f93e
ResourceLocation
now throw on non-snake-case names instead of silently lowercasing for you, so you probably should go and change all those string constants now. More precisely, domains must only contain alphanumeric lowercase, underscore (_), dash (-), or dot (.). Paths have the same restrictions, but can also contain forward slashes (/).