Water, Rain, Dirt, Mud and Evaporation.

Discussion in 'Suggestions Archive' started by LostSoul, Jun 29, 2011.

  1. LostSoul Green Slime

    As the title indicates, I'm suggesting that certain blocks become more dynamic in the way they interact with one another and the world around them.

    Dirt blocks exposed to water for 30 seconds should turn into mud blocks. The block immediately above them must contain at least 50% of a full block of water to begin the process (for reference, one bucket contains one block of water). Dirt absorbs one sub-unit of water per 4 seconds (for reference there are 64 sub-units of water per full block iirc which comes out to just over 4 minutes for a dirt block to convert into a mud block), converting into a mud block after absorbing one full block of Water.

    Similarly, Mud blocks connected to an Open Air Volume* should then dry out and turn back into dirt blocks. However, Mud Blocks sitting on top of dirt blocks will convert the dirt block below them into a Mud block before turning back into a Dirt block. Mud blocks exposed to moving water on at least 2 sides will break loose (as though it was being mined at a rate equal to the copper pick axe) and follow that water volume till it settles. (Read: MUD SLIDES!) Mud blocks in close proximity of Jungle Grass will not dry out.

    Mud block bordering on the Underworld will revert back into dirt blocks rapidly (which is to say that they will only momentarily turn into mud blocks before changing back).

    Water evaporates (and thus mud blocks) when exposed to an Open Air Volumes* at a rate of one sub-unit per 2 seconds.
    - This effect occurs at half speed in Jungle biomes.
    - Water contained within desert or corruption biomes evaporates three times as quickly.
    - At elevations below 0 water no longer evaporates, however water moving through areas backed by dirt walls is absorbed twice as rapidly and evaporates three times as quickly. This is to prevent surface water from reaching below depth 0 unless you let it with your Hellevator. Be warned, if you flood your stone layer, it's your own damn fault (so make sure there's a route from the stone layer down to the underworld so it evaporates naturally)!

    Rain then replenishes water volumes on the surface. Rain falls in several different varieties:

    - Light rain can occur only during the day and does not effect the current light levels, accumulating one block of water per block a minute. Varies in size between 100 to 150 units in covered area.
    - Moderate rain can occur during the day or night and reduces the light levels by half, and creates twice as much rain as Light rain does. These storms occupy an area of 150-250 units.
    - Heavy rain only occurs at night, is accompanied by lightning and creates twice again as much rain as Moderate rain does. Heavy represents localized rain fall and covers the same area as Light rain.

    Rain is 75% less likely to occur in desert biomes and rain that falls within it accumulates at 50% Light rain's accumulation rate. Rain is 50% more likely to occur in Ocean and Jungle biomes (to ensure that the water does not completely evaporate away).

    Finally, I didn't specify a frequency for rain because I want the overall rain:evaporation rates to be largely a zero-sum change. Your world won't gain or lose water. In other words, the game keeps track of the volume of water that has evaporated so far, adding it to the "rainfall" pool. When it reaches the required threshold it begins seeding a new storm from it. The longer it takes for that seed to turn into a storm, the more water that storm will produce, either by lasting longer or by converting into a larger storm.

    * Open Air Volumes are defined as areas unoccupied by blocks exceeding a 6x6 size minimum. These are the minimum dimensions an area must occupy before evaporation can be initiated. That means a 4x12 volume will not trigger it. This is specifically so that your typical tunnel, hole, or passages aren't included.
  2. celo753 Voodoo Demon

    No... jungle will be maden out of dirt now.
  3. LostSoul Green Slime

    Rain is 50% more likely to occur in Ocean and Jungle biomes (to ensure that the water does not completely evaporate away).
  4. West Eskimo Zombie

    Don't get me wrong, it is a really cool idea, I just don't think it is really needed or viable.

    That is a whole lot of code and things going on just to have the dirt turn to mud when it rains. I get that you want the game to be dynamic, and realistic and see more like a real live world. I just think this would just a whole lot of resources for very little gain.
  5. celo753 Voodoo Demon

    No... i mean the underground jungle. its maden out of mud.
    If rain could get the undergound jungle wet, then all normal dirt will be wet.
  6. celo753 Voodoo Demon

    Also, the game isnt supposed to be realistic... if it was to, why there are giant masses of land floating around the world?
  7. LostSoul Green Slime

    Ahh I see what you're saying. And since Jungle Grass blocks aren't mud blocks, none of the water from the surface can get carried down to it regardless.

    *pause*

    Underground Rain?

    Aside from that one problem, what did you think of the rest of the idea?
  8. Xeta Corp Green Slime

    It is a good idea, Only problem is the evaporation part.
  9. LostSoul Green Slime

    Yeah I'm starting to think that the best way to fix most of that problem is simply to stop Evaporation once you drop below 0 depth.
  10. Xeta Corp Green Slime

    That could be a solution, what about man-made water stuff?
  11. LostSoul Green Slime

    Yeah that's the flipside. If evaporation stops when you drop below 0, then any tunnels that you dig down to that depth will simply flood over time, until there's no remaining water volumes left on the surface.
  12. LostSoul Green Slime

    Posted a revision to address issues with Underground jungle and water accumulation in unintended places.

Share This Page