I think that rivers just now are a bit dull with a couple of obvious flaws: 1) they are always at the same level, 2) they are often filled in, 3) they only spawn at the edges of two biomes.
I have a few ideas that would fix these issues and add some interest.
Topography: ideas on how the river should form
- Rivers should start generating from an Ocean, Shore or Swamp biome towards any other biome.
- There is a higher probability that they start where two other biomes meet, but they could form at any point along the edge of an appropriate biome.
- The probability of one river forming within (eg 200) blocks to another would be slim.
- The starting width should be randomly 5-20 blocks wide. For every x blocks it travels in-land there would be a chance for it to remain the same size (70%) reduce in width (20%) or split into another stream (10%). If it splits, then the width of the stream and tributary are randomly determined from the overall width of the river at that point.
- It should start at a random depth of 5-10 blocks, cutting into the ocean floor until it meets the same depth. The depth would have a chance to reduce every time the river shrinks in width or rises (to a minimum of 1 block - you should be able to pilot a boat from the source to an ocean).
- Below a certain level (Y80?), the base of the river (under the water) should be sand. Above this level it should be stone.
- The further 'inland' (away from it's starting point) a river runs, the more frequent the check to see if the river's source block Y position rises. (eg 1 check every 300 blocks at the start and then 1 every 100 after 1500 blocks, then 1 every 50 after 3000 blocks... etc.)
- Each biome a river runs beside or through would increase the chance of the river raising (eg. mountains +50%, planes +1%, swamp +0% - always uses the lower value if a different biome to either bank.)
- If a river wants to rise higher than the land (or width shrinks to 0 blocks) then this indicates that it has come to an end and there is a random "river source" feature placed.
- a 'river' cross section that it carves through the land should be randomly selected from four templates: a "U" shape, a "V" shape, an "I" shape, and a "tear-drop" shape. If it crosses into another biome then it would have a chance to change the template.
- If a river encounters a ravine (or carves a hole into a cave) there would be a chance for it to do one of four things: stop; fill the hole up with water and continue; fill it in with the biome to the sides and under the river; form a biome specific, architectural viaduct.
A river should have a special feature at it's source <link>
And there would be random features you could encounter while travelling up/down a river <link>
I thought that it might be nice to have river specific plants, but I could only think on willow trees and bull rushes - they add nothing to the game other than being different. Perhaps the 'grass' could change beside a river (Like ferns do in forests, except rushes and reeds beside rivers)?
Similarly for mobs I could only think on frogs and dragonflies, but they add nothing to the game other than a little bit of interest.
Please sign in to leave a comment.