[Mod] Finite / Realistic Water [outdated] [waterplus]

User avatar
rubenwardy
Moderator
Posts: 6972
Joined: Tue Jun 12, 2012 18:11
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy
Location: Bristol, United Kingdom
Contact:

[Mod] Finite / Realistic Water [outdated] [waterplus]

by rubenwardy » Post

Waterplus Mod

I have made a Finite water mod.

Youtube video

For those of you who do not know, Finite water is water that runs down hills, spreads and does most of what real life water does.

video of the Minecraft equivalent, with a guy explaining it.

Using this mod

To get the finite water, pick up some water with a bucket and then drop it.
You can also get finite water in the creative inventory, or by typing /giveme waterplus:finite_20

Is it a bit too slow for your liking? You can try to increase the speed of the abm by decreasing the interval of the abm in finite.lua

Not detailed enough? Increase the water_finite_steps property in init.lua

Download

This mod is not finished yet, and it is not recommended that you use it for servers, but you can still try it out by downloading it below.

License: CC0

Dependencies: Nothing, but works even better with bucket

Speed testing

I have tested the speed of this mod on my system.

No finite mod (control)
Using the vanilla minetest_game
Frame per second: 40 FPS
Loop time: n/a
Just Finite
Just a few finite lakes and puddles
Frames per second: 35 FPS
Loop time: half a second
Finite Ocean
All of default:water_source was converted to finite
Frames per second: 8-20 FPS
Loop time: 30sec - 1 min
Loop time is the time it takes to cycle through all of the finite water nodes.
Basically, it is how long it takes for a node to flow / drop again.

TO DO

letting it rain:
  • water drops: on land make waterplus:finite_1
  • puddles
  • rain generator
Last edited by rubenwardy on Mon Mar 21, 2016 23:54, edited 3 times in total.
Renewed Tab (my browser add-on) | Donate | Mods | Minetest Modding Book

Hello profile reader

User avatar
Casimir
Member
Posts: 1206
Joined: Fri Aug 03, 2012 16:59
GitHub: CasimirKaPazi

by Casimir » Post

O_O

u34

by u34 » Post

awesome mod... keep up the good work...

User avatar
jordan4ibanez
Member
Posts: 1923
Joined: Tue Sep 27, 2011 18:44
GitHub: jordan4ibanez
IRC: jordan4ibanez
In-game: jordan4ibanez

by jordan4ibanez » Post

Make the water do
if minetest.env:get_node({x=x,y = y - 1,z=z}).name == "air" then

then make water fall

Also:
Replace default:water_source with the highest level of finite liquid as a mapgen alias.
Last edited by jordan4ibanez on Thu Jan 10, 2013 21:39, edited 1 time in total.
hello, am program. do language in rust. make computer do. okay i go now.

User avatar
nomohakon
Member
Posts: 219
Joined: Fri Aug 10, 2012 16:34
IRC: nomohakon
In-game: nomohakon
Location: VanessaE's servers

by nomohakon » Post

Mod worth worshiping.
"To learn who rules over you, simply find out who you are not allowed to criticize." - Voltaire
"Knowledge, like air, is vital to life. Like air, no one should be denied it." - Alan Moore, V for Vendetta
- - -
"To never die... and to conquer all, that is winning." ―Illyria

User avatar
Inocudom
Member
Posts: 3121
Joined: Sat Sep 29, 2012 01:14
IRC: Inocudom
In-game: Inocudom

by Inocudom » Post

This mod is my preferred behavior for water as well as lava and all other liquids. The usage of this mod will make liquid griefing much more difficult and give the pipeworks mod more significance.

leo_rockway
Member
Posts: 211
Joined: Tue Jul 31, 2012 20:37

by leo_rockway » Post

This is doubleplusgood. Thank you.
Try Skyblock for MineClone 2
Listen to this sound and music pack!

User avatar
yves_de_beck
Member
Posts: 65
Joined: Wed Jan 02, 2013 10:45
Location: Germany Herford

by yves_de_beck » Post

Very Cool. I like it =)

Ragnar
Member
Posts: 849
Joined: Thu Oct 25, 2012 15:19
Location: Estonia
Contact:

by Ragnar » Post

no more water generators, i guess :/ (Only reason why i say -1)
Last edited by Ragnar on Fri Jan 11, 2013 14:39, edited 1 time in total.
Are you saying that I put an abnormal brain into a seven and a half foot long, fifty-four inch wide GORILLA?

User avatar
kaeza
Moderator
Posts: 2162
Joined: Thu Oct 18, 2012 05:00
GitHub: kaeza
IRC: kaeza diemartin blaaaaargh
In-game: kaeza
Location: Montevideo, Uruguay
Contact:

by kaeza » Post

Ragnar wrote:no more water generators, i guess :/ (Only reason why i say -1)
AFAIK, "water generators" as you call them still work.
EDIT: Typo.
EDIT2: This mod is awesome; +1000000
Last edited by kaeza on Fri Jan 11, 2013 15:35, edited 1 time in total.
Your signature is not the place for a blog post. Please keep it as concise as possible. Thank you!

Check out my stuff! | Donations greatly appreciated! PayPal

Ragnar
Member
Posts: 849
Joined: Thu Oct 25, 2012 15:19
Location: Estonia
Contact:

by Ragnar » Post

YAY!
+2 (Makes up for your -1 :D)
Are you saying that I put an abnormal brain into a seven and a half foot long, fifty-four inch wide GORILLA?

User avatar
rubenwardy
Moderator
Posts: 6972
Joined: Tue Jun 12, 2012 18:11
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy
Location: Bristol, United Kingdom
Contact:

by rubenwardy » Post

jordan4ibanez wrote:Make the water do
if minetest.env:get_node({x=x,y = y - 1,z=z}).name == "air" then

then make water fall

Also:
Replace default:water_source with the highest level of finite liquid as a mapgen alias.
Yes, thank you. This would be the next thing I am going to do.
Renewed Tab (my browser add-on) | Donate | Mods | Minetest Modding Book

Hello profile reader

tinoesroho
Member
Posts: 570
Joined: Fri Feb 17, 2012 21:55
Location: Canada

by tinoesroho » Post

Lookin' good! +1
We are what we create.

I tinker and occasionally make (lousy) mods. Currently building an MMO subgame and updating mods. Pirate Party of Canada member. Sporadic author. 21 years old.

My github:
https://github.com/tinoesroho/

User avatar
Bas080
Member
Posts: 398
Joined: Mon May 21, 2012 15:54
GitHub: bas080
IRC: bas080
In-game: bas080
Location: Netherlands

by Bas080 » Post

Good idea. I'll keep an eye on this.

User avatar
BrandonReese
Member
Posts: 839
Joined: Wed Sep 12, 2012 00:44
GitHub: bremaweb
IRC: BrandonReese
In-game: BrandonReese
Location: USA

by BrandonReese » Post

How CPU intensive is this mod?

User avatar
rubenwardy
Moderator
Posts: 6972
Joined: Tue Jun 12, 2012 18:11
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy
Location: Bristol, United Kingdom
Contact:

by rubenwardy » Post

BrandonReese wrote:How CPU intensive is this mod?
I have done no tests, all I can say is that it depends on how much finite water there is.

This mod uses an Active Block Modifier to check if any of the surrounding blocks are lower than it is, and if so it starts flowing water into it.

So basically, a waterfall or a pond of finite water will not be that CPU extensive, but if you replace all default water with finite water... only tests will show.
Renewed Tab (my browser add-on) | Donate | Mods | Minetest Modding Book

Hello profile reader

User avatar
Casimir
Member
Posts: 1206
Joined: Fri Aug 03, 2012 16:59
GitHub: CasimirKaPazi

by Casimir » Post

You could make one waterblock that is not finite/flowing, that is just a block. Use that one for oceans and lakes and only use the "expensive" flowing one at the edges of that.
I try to illustrate what I mean. Profile view:

Code: Select all

sssffffffffffsss
ssssfbbbbbbbfsss
sssssfbbbbbfssss
ssssssfffffsssss
ssssssssssssssss
s: stone
f: finite water
b: block water

You would have two abm. One for flowing, one to check if a block is still surrounded by flowing water or block water (and change it to flowing if not).

User avatar
jojoa1997
Member
Posts: 2890
Joined: Thu Dec 13, 2012 05:11
Location: Earth

by jojoa1997 » Post

+10
Coding;
1X coding
3X debugging
12X tweaking to be just right

User avatar
rubenwardy
Moderator
Posts: 6972
Joined: Tue Jun 12, 2012 18:11
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy
Location: Bristol, United Kingdom
Contact:

by rubenwardy » Post

Casimir wrote:You could make one waterblock that is not finite/flowing, that is just a block. Use that one for oceans and lakes and only use the "expensive" flowing one at the edges of that.
I try to illustrate what I mean. Profile view:

Code: Select all

sssffffffffffsss
ssssfbbbbbbbfsss
sssssfbbbbbfssss
ssssssfffffsssss
ssssssssssssssss
s: stone
f: finite water
b: block water

You would have two abm. One for flowing, one to check if a block is still surrounded by flowing water or block water (and change it to flowing if not).
Good idea, but it would be pointless with the system I use.

The system I use checks if the water around it is lower than it is, and then it flows.

So, basically there would be no point in doing that really, no CPU gain.
Renewed Tab (my browser add-on) | Donate | Mods | Minetest Modding Book

Hello profile reader

User avatar
rubenwardy
Moderator
Posts: 6972
Joined: Tue Jun 12, 2012 18:11
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy
Location: Bristol, United Kingdom
Contact:

by rubenwardy » Post

This mod has been released
Renewed Tab (my browser add-on) | Donate | Mods | Minetest Modding Book

Hello profile reader

sfan5
Moderator
Posts: 4094
Joined: Wed Aug 24, 2011 09:44
GitHub: sfan5
IRC: sfan5
Location: Germany

by sfan5 » Post

Nice Mod!
Mods: Mesecons | WorldEdit | Nuke & Minetest builds for Windows (32-bit & 64-bit)

User avatar
rubenwardy
Moderator
Posts: 6972
Joined: Tue Jun 12, 2012 18:11
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy
Location: Bristol, United Kingdom
Contact:

by rubenwardy » Post

Update

Made finite water smoother in flowing
Renewed Tab (my browser add-on) | Donate | Mods | Minetest Modding Book

Hello profile reader

proller
Member
Posts: 222
Joined: Sat Jan 26, 2013 15:22

by proller » Post

mod of mod 8)

features:
- fast dropping large volumes of water
you can flood underwater caves - just place finite warer block on standard water slope
- convert finite water to standart and back - for speed

todo:
pressure
destructable water flow

https://github.com/proller/waterplus

rubenwardy: thank you for good start

proller
Member
Posts: 222
Joined: Sat Jan 26, 2013 15:22

by proller » Post

big changes:
dont need to change init,lua
water_flowing now converts to finite water and finite water converts to water_source
- just install and play
faster flood underwater caves

proller
Member
Posts: 222
Joined: Sat Jan 26, 2013 15:22

by proller » Post

at this point imposible to make much faster via modding,
liquid dynamics must be implemented in c++ core.
level 1 - something like this mod, liquid must drop and flow with preserving total volume
level 2 - add presure property to make fountains like

swws w - water
swws ^ > - stream
swwss^s ^ - pushed up water
sww>>^s
sssssss

Post Reply

Who is online

Users browsing this forum: No registered users and 4 guests