A system similar to this existed before beta 1.8 before it got overlooked when they changed the world generation. Although the biomes were a lot smaller back then, so it wasn't that big of a deal.
Honestly, I'm glad the system was put back in. I was pretty fed up with seeing stuff like this all the time:
It just takes a lot more exploring nowadays if you want to find specific biomes. I've had at least a few worlds where I've been to about every biome, so it's not impossible. The good part is that most biomes have their own variation, so it doesn't feel like a copy most of the time.
I think it's a good thing, because exploring is rewarded, and it doesn't feel unbelievably silly. I feel more immersed when I'm not stumbling upon a completely different climate every other biome.
Yes, the same few biomes does get dull, but I think it's a problem with the lack of variation in the biomes (why is the pre-release already out? there's still more to be improved! ;_; ), and not how they're selected.
Yeah, I came here to complain about the rarity of some of these biomes. I think I have an idea of what the problem is. I would guess that the temperature, moisture info is generated with some variation of Perlin noise.
A Perlin noise function usually gives nice looking random brownian motion values between -1 and 1 or 0 and 1. Because the values returned within a range, for instance 0 to 1.0, you might intuitively think that, for example, values above 0.9 would occur 10% of the time. Perlin noise however is generated by combining samples of a noise field at differing geometric scales, which will tend to strongly favor values in the mid-range, while suppressing extreme values. It is similar to using multiple dice rather than a single die.
For example, if you have a single 6 sided dice and roll it many times, you would expect to get values 1 thru 6 with a fairly even distribution. However, if you add another die, for a possible result from 2 to 12, the results will not be evenly distributed. To return an extreme result of 12, you must roll two 6's. To get a mid-range result of 6 you can roll 5 1, 1 5, 2 4, 4 2, and 3 3. So you are actually five times as likely to roll a 6 than you are a 12 or a 2.
Perlin noise works similarly. Generally you will have a noise field sampled at several octaves that are combined for a final result, so to get an extreme result, all of the samples at each octave need to be extreme! As you can imagine, that greatly increases the rarity of extreme values.
The reason why it's not that hard to find map seeds with the extreme values and thus desert and jungle, is because with standard Perlin noise, there are artifacts near the geographic origin (usually where the player spawns) that will make extreme values more likely.
For a 1D example, lets say we have a set of numbers, sampled at 3 octaves multiplied by 2.
Averaged Result (rounded):
You can see that at the origin, the extreme low 1 is represented in all three octaves and comes through to the final result. As you move away from the origin, things become more muddy and middle ground, even when some contributors are extreme highs.
In conclusion, I think that the devs did not actually examine the distribution pattern of their noise algorithm, but rather made false assumptions about it, therefore people are getting vastly more temperate biomes than extreme biomes. I love some of the new biomes, but the impact is greatly diminished when you want to find a desert and you come across your 15th flower forest or roofed forest. As cool as those biomes are to look at, if you are looking for something else they become repetitive to the point that you get angry at seeing another one. In my world after much exploring, I'm actually seeing fewer biomes than I saw in previous versions. Not one example of ice, mesa, desert or jungle within 3000 squares, and their might not be any anywhere if my theory is correct.
You could always try using random seeds, but in all honestly I think many of us forget a key aspect of the game which is exploring. I know I do this myself, but I think a lot of us can agree that we tend to stick within about 1k blocks or so of where we spawn. That is not a bad thing, but you kind of lose out and then you start running out of resources in your area. I think you should grab a map and start expanding out, look around even if you go away and it takes you many Minecraft days.
I rather enjoy exploring as long as I'm seeing some new stuff along the way. When I'm seeing nothing but repeating patterns I get discouraged. I'm almost done mapping a grid of 9 fully zoomed out maps over quite a few hours, and I'm not seeing many biomes. I'm not sure they even exist in this particular world, and I don't think I want to spend another eight hours just to find that out.
I'm not happy with a 50:1 ratio between occurrences of one biome to another. 10 or 15 to one would be a lot better I think for rare biomes.
Well, it makes things more realistic, and it should actually HELP to find biomes, since they're not randomly generated but instead distributed according to heat levels in areas. You'll get used to it eventually, but even if you don't you've no choice but to suck it up and accept it, since this solved most of the community's complaints and Mojang won't change it anytime soon.
At first I was a annoyed with the new biome generation - I felt it was different kinds of trees everywhere and no ice spikes or jungle anywhere in sight.
In my current world I've explored a large section of the terrain (something like 2000x6000) and not found a single jungle yet, or mesa. But I decided I like it that way - even after playing for a while I still have a reason to explore (I want a cat).
I like your reason to explore! (P.S. I like cats too.)
I personally wasn't pleased with the new system either. What I'd rather see would be a return to the climate (temp and rain gradients) system from beta reworked to have the core 1.0-1.6.4 biomes (and perhaps scaled to get similar average sized, and tweak to create similar frequencies). Then for most of the new varients, which are mostly just that, variants, have them be sub biomes that can replace all or part of the parent biome. I miss the small-world feel of being able to find most biomes and all general times in a typical 2048x2048 (size 5) map (meaning map item, or the area it covers). A climatological approach could keep smooth transitions and separate radically different biomes, the within-biome generation could have the beta-1.8 "adventure" improvements, and the new 1.7 "biomes" (they wouldn't be irl ecology, the old ones mostly were) could have their place adding variety in form of different forest types (etc).
(Savanna might be a temperature based variation of plains, though, rather than a "sub-biome.")
Basically, the big world gen changes, in beta-1.8 and again in 1.7 both created a greater variety of biomes at the expense of less biome variety locally and for many an impression of a less varied and interesting world. And I do personally miss the "small-world" / "adventure theme park" feel of being able to find many biomes in a reasonable walking distance; there were great new things, and it was an improvement in some ways, but I actually like the 1.6.4 system betterat least slightly.
Actually, I'd love to have a mod like that, a "how 1.7 should have been" mod (there is one that brings back old version's world gen as they were way back when, and another one that uses climate and height to create extra-realistic but boring worlds, but none that use climate to get biomes with newer generation in/of the biome itself much less with sub- and micro-biomes). I'm even thinking of taking matters into my own hands and trying to create such a mod, but whether or not I can succeed is far from certain.
Anyway, that's how I think the "terrain update" should have gone.