Storing fluids in terrain

I think there should be a WATERTIGHT flag for terrain that allows fluids stored in that terrain to be extracted the same why water is claimed from toilets. Examples include bathtubs, sinks, and possibly even specially prepared pits (lined with clay, plastic, etc)

A few things to consider:

[ul][li]How to deal with mixing fluids in a container: This one could be real messy and I have no elegant solutions off the top of my head.[/li]
[li]Rain catchment[/li]
[list]
[li]Outdoor WATERTIGHT terrain collecting rain a la existing funnel system[/li]
[li]Using funnels and hoses/pipes to feed rain water to indoor and/or sealed containers/terrain[/li]
[/list]
[li]Open containers: terrain and containers without the SEALS flag.[/li]
[list]
[li]Pure water would get dirty over time and require treatment again.[/li]
[li]Carbonated beverages would go flat. (Flat versions of each drink with less enjoyability?)[/li]
[li]Perishable liquids would go bad faster.[/li]
[li]Flammable liquids could explode if there is a spark nearby.[/li]
[li]Evaporation:[/li]
[list]
[li]Sunny weather increases evaporation rate[/li]
[li]Indoor containers less affected by sunny weather[/li]
[li]Acids and other solutions would become more concentrated as the water evaporates out.[/li]
[/list]
[/list]
[li]How much volume of fluid can each terrain item hold before overflowing[/li]
[list]
[li]Liquid flow: This is far beyond the scope of my post, but something to keep in mind for far down the road.[/li]
[list]
[li]Large volumes of liquid flow into other terrain if that adjacent terrain has less total volume.[/li]
[li]Non-WATERTIGHT terrain would allow liquids to flow down into the ground (-1 Z co-ordinate when 3D maps are implemented, but for now it could just disappear over time as it seeps down.) In that framework, a concrete floor would be WATERTIGHT to prevent downward flow, but have a very low volume so anything larger than a small puddle starts to overflow.[/li]
[li]Solid terrain, such as walls and closed doors and windows, will only allow so much fluid to flow in a particular turn, depending on how porous it is. A log wall would allow quite a bit of flow. A concrete wall or wooden wall designed especially for liquid storage might allow 0 flow. We could eventually build water towers![/li]
[/list]
[/list][/ul]

Some of these ideas are pretty intense and would require a lot of investment. The basic idea could be implemented easily: pour water in sink, get water back out of sink later. I feel that the others would definitely add value to the game, but they can wait.

This gives me an idea. Maybe we can disassemble sinks to make metal funnels. Not sure if anything else from here is worth implementing.

a lot of this might have to wait till a 3d system is implemented, because even if you cobbled something together now, it’d just have to be done all over at that point.

Liquid flow and plumbing should wait until the 3D map system is in place, but the fundamental concept here to be able to withdraw liquid from a sink or bathtub after it has been poured there. I was shocked when I dumped my steel jerry can of dirty water into a sink, then couldn’t get the 100 units back. I was going to boil it and pour the clean water back into the jerry can. I was hoping to catch the eye of one of the programmers familiar with the source and inspire them to make the tweak without having to get neck deep in the source and the mysteries of github myself. I should have probably kept my rambling ideas about the logical extensions of that core idea to myself. I think I scared folks away.

We can already drop liquids anywhere in the world. We can extract water from toilets. All that is required here is to make a terrain flag so that toilet functionality can be extended to other things that make sense to be able to hold water.

The main stopping point I see is that first point from my initial post. What happens if you pour more than one type of fluid in the same place? Right now they make two distinct puddles on the floor, neither of which can be interacted with except to mop them up.

The simplest solution would be to ignore the inconsistency and allow both fluids to be accessed. This is both very unrealistic and makes a single storage space far more useful than it should be. We should have to have separate vats from clean water, untreated water, weak acid, concentrated acid, and coffee; not pour them all in one sink and still have full easy access to each one.

Second simplest and perhaps the cleanest solution would be to not allow a second fluid in the same WATERTIGHT space. This fixes the balance issue of the previous solution. It’s still immersion breaking to have the game say “You can’t pour orange juice (rotten) into the sink of non-drowsy cough syrup.” but most people could accept that.

Third simplest solution would be to turn combinations of liquids into untreated water, or a new “heavily contaminated water” that requires distillation to purify. We’d be able to mix crap together without artificial restrictions and we could get water back out of it eventually.

Fourth simplest solution, and it starts getting complex enough here that it’s questionable if the result is worth the effort, would be to have a combination matrix. We already have combination in a limited form, in that if acid rain happens over a funneled container it turns the water inside into weak acid. We would have to consider the results of any two liquids mixing and create a lookup chart based on the results. Most viable combinations would result in untreated water or weak acid, perhaps with “heavily contaminated water” from the above idea as a default.

The most realistic solution is a full blown chemistry simulation. No, not even close to worth it… unless an amateur chemist with a penchant for game programming happens to be reading this.