Water, Fluid System, Farming and Weather

Tags: #<Tag:0x00007fa0d1c9fa30> #<Tag:0x00007fa0d1c9f8c8> #<Tag:0x00007fa0d1c9f760>

Hi all,

in the discussion about grief protection in the new beacon system i had in idea that might solve the problem and adds game-depth to B<. Therefore i thought some time over the current fluid system which is, in my opinion far from ideal. The hole idea is theoretical and i don’t know if this can be transposed to B< but it would be super cool. Maybe @james can share some of the devs plans according to Weather, Water and Farming.

First of all the problem of the current system:

  1. You can place fluid blocks (water, lava) independently wherever you like
  2. Water and Lava are destructive forces if combined
  3. Water has currently no value and has no game-play mechanism

My idea might be radical and i’m quite sure some of you won’t like it but here it is …
REMOVE PLACEABLE LIQUID BLOCKS FROM THE GAME

that said i like provide an other solution to get water where we need it (this is not a new suggestion and i already saw it but it has never been deeply discussed).

Fluid System
Imagine instead of placeable liquid blocks we have pipes and pumpstations. if you need water somewhere you need to take it from somewhere (this is a natural approach). this would also fit fine in the B< universe where technologie seems to be a big thing (look at all the concept arts about power cores, engines and workstations) so why not add pumpstations and pipes to it ?!

if we follow this idea the problem of water + lava griefing might be removed completely because there are only few worlds with lava and water at all and the other reason would be the incredible effort a griefer has to shoulder if he want to build a pipeline long enogh to grief a building.

At the moment the fluid system based on source blocks for water and lava. the source block spawns liquids that become less the farther away the block is from the source (see figure 1). while this is a common approach for a most of voxel-based games it give the chance to add an other gameplay-mechanism to B<.

A pump + pipe does not only transport water - in my idea it transports source blocks of water. regard a small lake like shown in figure 2 below.


this lake is totally isolated from oceans or rivers. in “our” world / nature this lake would not last long. while B< is “fantasy” at all i’m fine that the like is there as long as he likes but consider you like to build in that area and you like to remove the lake you need to “fill” the lake up with sand and remove the sand afterwards. this is not a intuitiv solution. it would be much more intuitive pumping the lake in an other vallay or a cave in the ground. therefore a pumpstation would work like shown in figure 3.

in the beginning (t0) you have the lake like shown in figure 2. now you like to dry it out and you place a pump under it and start to pump the water in a cave you found (t1) under the lake (maybe you pump it in an other vallay … it’s not important where). after some time (maybe hours ?!) the lake is empty and all source blocks are remove from the lake and are in the cave (t2). now you are free to build whatever you like in the lake.

Farming / Agracultural Crops
this system would also work perfectly fine for agricultural crops. anyone remember the game “Emperor: Rise of the Middle Kingdom” from sierra ? in this game you had to build channels (pipes) to water your fields. if you tried to plant crops in the desert you needed to water it and take the water from a lake or ocean (not super correct beacuse it’s salt water but that’s not important anyway).
having a look on the fals color image of a desert with a river (figure 4). blue is the river, red is barren land and green is fertile land.

imagine all fertile land (green) is beaconed or taken by someone else and you like to plant crops in the area p1 which is a desert. but you have a river in the local area which provides water for your crops. now you need to build channels (pipes) to bring the water in this area.

as you can see in figure 5 the region p1 became fertile because you placed a water channel in it. in my opinion, this would add a lot more gameplay-depth to B< if you are NOT able to plant your crops where you like and you need to plant crops on fertile land. this way, some worlds would be better suited for farming while others are better for mining or hunting. it would also be conjunct with high costs if you like build a paradise in the desert.

Weather System
the last point i thought about is the weather system. at the moment i’m sure it is only local for the player himself (you can change the weather with CTR + 0-9) which is nice for pre-alpha and making nice screenshots but i really hope it will be removed till 1.0 because i find this really annoying (why would someone every select rain + night in the final game ?! but it’s there and it’s realistic that it rains now and then)
(@james: side-question: do you have a “world-wide” weahter system planed ? or is the weather like in real live different on different spaces in the world ?).
the weather system could be some sort of world-regeneration for water. if you pump water or remove water from rivers the rain could “refill” this sources. in this way you can’t just remove your pumpstation (because the lake would return) and it can’t happen that a world is dry because someone removed all water from the surface (even if that would be extremely realistically).

i hope you understand my idea … any feedback is as always welcom :slight_smile:

13 Likes

Complicated, but a detail that would improve the game. It just depends on if the devs want to put the resources in to make it. I like it and think it would be great. It would be more realistic for some people but would also be annoying for builders.

Skim read the system, looks good though.

2 Likes

I think I recall that storms will function like a moving storm cell, rolling in and out of regions in a natural way based on biome statistics.

Yeah, I think that it would certainly add to the survival aspect of the game, in the sense that water can’t just be picked up and placed wherever anybody wants, and that it must be transported in a sense. It could actually really benefit the machines aspect currently in development, using electricity and the like to transport liquids (and maybe items?) through tubes.

I also like how this could lead to worlds being mostly for mining, or other worlds being mostly for farming, as mentioned in the post. It could definitely lead to some sort of risk/reward factor in the sense of exploring hostile worlds.

But it could also hinder builders who may need to construct massive structures that utilize water, like an artificial waterfall, or some kind of lake, which could require an ungodly amount of tubing.

I find it difficult to stand on either side, but I think that this system could actually add a whole lot to both the gameplay difficulty, and progression.

pipes don’t need to be 1x1 in size. they could be a small visual that is placed on the side of other blocks (using them as supporting structure).

1 Like

I realize this. In fact, I would prefer that pipes could be built into blocks. What I meant is that if someone wished to build a waterfall where there is no water, it could require a lot of unnecessary effort just to pump water from somewhere really far away, versus just grabbing a few buckets of water and creating an “infinite source” like from Minecraft. I agree that it adds a lot to the dynamic, but it handicaps other players who just want to build.

that’s one of the current main problems. this is not minecraft and there is a lot more than building in the game but the devs did not specified what exactly the “end-game” content is (in fact, i cant belife it’s “only” building).

Very true. I hadn’t considered how much building this game is actually going to have, especially in consideration of end-game. I couldn’t imagine that simple and essential structures like towns, houses, and guild halls would need that complex of water arrangements, so we’ll just have to see what the devs think :grin:

like the idea

Some of the devs (@ben ?) have championed this internally already - FYI. So it’s interesting to see a public discussion about it.

Likewise - considering water a resource is also under consideration (@olliepurkiss ?).

The current fluid system can support these 2 flowing modes:

  1. Classic - water source is infinite and follows a flowing path - current version live in game.
  2. Fixed capacity - water source is not infinite and generates a limited amount of output, once the output limit is reached the source will expire, the created fluid will continue to follow the flowing path.

We sometimes refer to #2 as slime - as it can flow like a worm.

Switching time of day is a pre-alpha debug feature.

The weather will be controlled by the server as it needs to be consistent for all players. It will also be linked to the biome you’re in. (More rain in a forest, less rain in a desert.)

Whilst this is thematically a nice idea - we would still probably link any water regen to the regen system. But maybe the regen system should be masked by time-of-day + weather.

In summary - all cool ideas and we’ve been discussing some already internally. Great to hear external opinions.

Yep. But it’s the biome that triggers which the weather effect.

8 Likes

I’m curious to see how this actually works - Have you already tested the mechanic behind this, and if so, would it be possible to see a gif of how this works? Would it also mean that if you kept the water source from flowing too far, you could make something like a kitchen sink?

Also, how would this work if you place 2+ sources next to each other - do they act as a buffer to one another so you could potentially transfer a lake from one place to another “bucket by bucket” (as long as you kept the source from flowing too far each time).

2 Likes

Wow, cool ideas man.

2 Likes

yeah, cool i think that would be nice having that

1 Like

wow just thats coplicated

@james this might be slightly off topic, but since you confirmed that all worlds will be wrapped i have a question that really bothers me.

Will worlds still have a minimum point then? will there be a point where you cant go through, or can you technically dig through the world?

1 Like

The wrapping is artificial- the world is still technically flat, but when you reach the end coordinates it connects to the other side of the map. Some math is involved.

You will not be able to dig through the core of a planet. You will still encounter bedrock. If you manage to bypass this, you will fall out of world.

6 Likes

As @Havok40k describes.

I do have some ideas for alternative world configurations that I want to experiment with but these will not be explored until after 1.0.

7 Likes

The question regarding pumpstations is, how should the animation of sinking sea level work out?
If you consider sourceblocks, this I relate to blocky movement along the world grid.
If one block of water sinks downwards through a canal, the sea level diminished for the amount of one block. There, problem. And how fast is water supposed to run through a hole? Fluent behaviour? Or fair and “blocky” movement?
Or, it Is like this - the sourceblocks actually are no blocks, but rather huge amount of little particles, yet no pixels, but dropsydopsy spots. At least visible at the surface. Aligned to a finer wobblegrid. Allowing waves and things. Hhhhhhm? Hm. Plsplsplsplspleace?Pleasyplease?

Having no source blocks for water and lava would be really cool. You would have to make piping for waterfalls and fountains so it would be all the more impressive, you would have more control over what flows where, and possibly even making a hydroelectric dam :stuck_out_tongue:

I’m not sure how well this would do on the optimization side of things, since I can imagine this getting very laggy for large bodies of water.

Because in the current C++ Build the fluid-calculation is missing i think it could be good to revive this topic.

@james / @ben: Is this still a planed (this statement is now over 1 year old) or will you migrate the old system to the new build in a later patch ?

2 Likes