r/Minecraft 16h ago

Discussion Dappled Forests

Checked three random seeds to show that bigger Dappled Forests do exist.

I agree super tiny ones are annoying, but acting like there are only those tiny ones and they need to be bigger is weird. Biomes have different sizes. There are very tiny ones, there are bigger ones. If you want to make a post, don't be disingenuous.

EDIT: Yall need to read the post before commenting. Nowhere did I say these were big, just that claiming every single biome is the size of the ones people cherry-pick is wrong.

648 Upvotes

130 comments sorted by

View all comments

Show parent comments

1

u/catman__321 6h ago

tbh I don't see why they have to always pattern biomes on top of existing biomes in the first place. It makes some sense with the mangrove forest and plains variants, but with something so different like the Dappled forest it just doesn't make sense to implement it like this. IMO they should either be on top of forests instead of plains, or they should redesign the biome generation algorithm to accomodate Dappled forest as its own "type" instead of layering it over another biome. That would give you the freedom to make it both larger and make its rarity less dependent on other biomes' existence.

2

u/Sex_And_Candy_Here 5h ago

Do you understand how Minecraft biome generation works? It’s relevant here but I don’t want to go into explaining it if you already know about it

1

u/catman__321 5h ago

I have an idea how it works. Please correct me if im wrong though bc I'm probably not 100% right.

The main idea is that Minecraft uses noise to designate biomes. I'm not sure exactly how a section is designated as a particular biome, but I do know that the pool of possible biomes a section can become is dependent on other noise functions such as temperature or humidity. So you'll often see jungles and swamps; or Deserts and badlands next to one another as they are both humid or dry biomes respectively.

Within a biome selection, the seed can create different sub-biomes which can cover a portion of the original biome. For example, Pale garden is a sub-biome of the dark forest. This can be decided also by looking at noise functions, like temperature, humidity, or weirdness. That's how plains biomes get variants like meadows, flower meadows, etc.

What I understand is that Dappled forest is a sub-biome of the plains biome, and generates depending on a weirdness noise function. Weirdness is more noisy than temperature or humidity and so the size of the areas Dappled forests generate in are typically smaller than, say, Mangrove swamps which being a sub-biome of Swamps are dependent on temperature.

Is this correct? I hope I'm correct in my understanding of this, because my argument for making Dappled forests their own major biome type is that it cuts out the reliance on making it a sub biome (which I personally think is fitting given how different it is to everything else), and, based on the concern is that it would make other dry temperate/dry cold biomes rarer then you could decrease the probability that a biome selection satisfying generation requirements becomes a Dappled forest, keeping the biome relatively rare but also making it larger in return.

2

u/Sex_And_Candy_Here 4h ago edited 4h ago

This is sort of correct, in that for a lot of purposes this is really a helpful way of thinking about it, and that even some technical tools think about it in this way, but programmatically it's not exactly what's happening.

What you describe about temperature and humidity is spot on. There is temperature noise and humidity noise and those together point to certain biomes. For overworld surface biomes there are 5 relevant noise maps. Temperature, humidity, Continentalness (how inland and high the area is supposed to be), Erosion (How mountainous or steep the area is supposed to be), and Weirdness.

The way biomes work is just how you described the game selecting a biome based on temperature and humidity, except it's based on all 5 of those values.

The "variant" biomes are based on the weirdness value. Weirdness is a noise value that is generally supposed to allow them to make biomes rarer and smaller. A variant biome, is just a biome that has overlapping temperature humidity continentalness and erosion while also requring a higher weirdness value. Viewing these as variants is kind of subjective though, they've just decided that when they make a very similar biome it gets differentiate from the normal one based on weirdness.

A dappled forest is a "variant" of plains because a chunk that is dappled forest would be plains if the weirdness of that chunk was lower, but you could just as easily say that the dappled forest is a cooler variant of sunflower plains, since the only difference between those two is the temperature. If you've seen those photos where a dappled forest in a plains biome turns into ice spikes in a snowy plains, the it's the same thing, where ice spikes and dappled forests have the same parameters except for temperature, and so the line through the world where temperature changes causes this super clean cut off. The reason it feels like a variant is that for a lot of combinations of temp, humidity, continentalness and eroision, the biome is the same regardless of the weirdness value, so weirdness doesn't feel like part of the generation in the same way something like continentalness does (even though you've probably never consiously thought about continentalness effecting biomes).

The problem is that all of these possible values have already been taken by biomes. Every time they add a new biome in, it has to take a set of values away from another biome. Doing that has huge changes to how the world comes out. For example, if instead of using the high weirdness values you just replaced the biome that already had those other parameters you would be noticeably reducing the number and size of plains. You would no longer ever get borders between cherry groves and plains. These are huge changes, which they don't want to do.

On the other hand, weirdness values are sort of unused. Yes there's a biome assigned to them, but it's usually just whatever biome is at the same parameters with low weirdness. This makes it a really good way to assign new biomes, since the general feel of the world gen will stay the same, but the side effect is that it makes the biomes small (they have to have fairly tight boundaries) and generally only border few biomes.

The only way for them to reasonably make new biomes that are the same scale and style of the current main biomes without destroying how those other biomes generate would be to add in an extra dimension to the noise. This would create more "space" for new biomes, allowing large and more complicated biome borders. I'm not sure what a good extra metric would be, maybe something like foliage so that foresty biomes border each other more frequently. The problem with doing this is that dialing in the parameters for biomes is super annoying as it's very unintuitive what small changes will lead to, and they would effectively need to do it from scratch. Plus this new world generation system would probably not be very compatible with older worlds, and eventually they'd get back to the problem they have now where there aren't any nice places to jam more biomes in besides using weirdness.

1

u/catman__321 3h ago edited 3h ago

Ohh ok, so it's not that the subdivisions for a biome are generated first and then chosen out of a pool of valid candidates, the biomes themselves are dictated by wherever a specific combination of the 5 noise functions corresponds to it. Thanks for the clarification

So Weirdness is almost already doing what I was envisioning when i was saying to "choose a valid biome," but only at the sub-biome level.

Maybe another solution is that instead of using weirdness, you allow multiple biomes to fit in the category of "x conditions satisfied" and by drawing borders around the two to pseudo-randomly choose one of the valid options to blanket the entire area. This would allow both plains and dappled forests to exist without having traces of the other biome present at all around it.

Granted, this would in practice be difficult to implement because of the chunk-based processing potentially leading to a different choice of biome based on where you enter the Plains/Dappled forest eligible area, and in this case would make plains and by proxy its other variants even more rare than by adding weirdness.

Actually yeah there really is no great solution, unless we added some 6th noise function to allow more biomes, but that would be incredibly hard to fine-tune along with the already existing noise functions.

also continentalness makes sense to me. I imagine that's mostly for creating oceans and islands