[Bug] Levee increases evaporation
Normally open water evaporates at 0.045 m/day. I verified this using the basin in the upper left corner (see attached image). However my contraption in the foreground evaporates 0.18 m/day. I found levees inside a reservoir generally increase evaporation. Why is that the case? The increase is so pronounced, the water loss is even larger than without the inside levees at all, while the smaller surface area should slow evaporation down.
Edit: found in v0.5.9.1-33dabbc-sw
Comments: 7
-
18 Feb
Gin Fuyou AdminThat's new varying dry mechanic at work
1 -
18 Feb
NeutronenpowerYes, I now found this sentence in the 2014-01-18 patch notes: "Smaller water bodies will now disappear faster."
However.
I don't think it works as intended. I tried some reverse engineering (would be great if someone could provide me with the actual formulas) and found the following rules of thumb:
- a longer shoreline increases water loss
- the relation between shore length and water loss seems to be higher than linear
- there seems to be an extra penalty for bodies of water only one tile wide
In gameplay this means
- you can easily reduce the size of a lake and dramatically increase the water loss at the same time (this happened to me and was so immersion shattering I ended up here :-D)
- the water loss of a given lake is hard to predict
In summary I think the dry mechanic should be changed to be more predictable. E.g. a simple formula like
WaterLossPerTile = ParameterA + ParameterB*NumberOfDryNeighbours -
18 Feb
Jcheungisn't it already basically
waterlosspertile=basedryingrate*parameter*wetneighbours ?
what's the difference between yours and current? -
19 Feb
NeutronenpowerSorry, my comment from yesterday was cut short.
In my formula ParameterA is the base drying rate and ParameterB is a weighting factor for extra water loss in small ponds. "Parameter" means it's a constant, e.g. loaded with the map.
@jcheung: I don't really understand your formula. It would mean the drying rate is lower for shore tiles (b/c they have lower wetneighbours). Maybe wetneighbours should have been dryneighbours? If so with your formula all water loss is from shore tiles (b/c if wetneighbours=0 then also waterlosspertile=0). So with your formula very big lakes almost don't evaporate at all.
With my formula very big lakes evaporate with a rate just above ParameterA, which is what I found by brute force testing.
But anyway for smaller ponds or longish lakes with many shore tiles, the contribution from shore tiles is nonlinear, so both our formulas are not what is implemented in the game. It's just this non-linear behaviour I would like to see changed. -
19 Feb
Jcheungeh, checked some stuff. the only variable that's considered is the number of tiles that are wet. where base drying rate and parameter are both fixed, though parameter is a formula.
just checked two different sources that agree to a very close degree.
so i guess current is actually
dryingrate=basedryingrate*modifier
where modifier is a short formula which counts number of wet tiles adjacent, including itself, and adjusts itself for its neighbor's wet tiles if difference is greater than one.
and yes, this means that very big lakes can actually have a drying rate of less than U4 values -
20 Feb
NeutronenpowerI just double checked: Big lakes evaporate exactly as fast in U5 as they used to until U4. They do not have a lower drying rate.
-
20 Feb
Jcheungthat's not true at all. around a length 17 square you start to get lower drying rate on average across the square than you do with U4