[Mod] Luscious [luscious]

sofar
Developer
Posts: 2146
Joined: Fri Jan 16, 2015 07:31
GitHub: sofar
IRC: sofar
In-game: sofar

Re: [mod]Luscious[luscious]

by sofar » Post

paramat wrote:^ Correct. We do intend to add 'get heat / humidity / biome at point', i started the PR but am stuck. With that perhaps you won't need to store heat / humidity data.

Before people get their hopes up, engine issues aside, this won't be suitable for, and probably not possible in, MTG for various reasons. Besides, i think it deserves a new subgame so that MTG doesn't 'get in the way of it', and we need new subgames anyway.
For the core, I think we should just *store* the data in map.sqlite, and provide a simple api to get the raw heat and humidity values (perhaps through a vmanip method). The map.sqlite file is the perfect place to keep this data.

As for mtg or not, I think it would make perfect sense, but I've almost entirely given up on MTG at this point, it's a lost cause without anyone giving it direction that makes sense. The current direction of MTG is ... senseless.

u19503

Re: [Mod] Luscious [luscious]

by u19503 » Post

I agree with sofar about the minetestgame thing (but I don't want to get offtopic)

Also how can I Make the color gradient smoother?

sofar
Developer
Posts: 2146
Joined: Fri Jan 16, 2015 07:31
GitHub: sofar
IRC: sofar
In-game: sofar

Re: [Mod] Luscious [luscious]

by sofar » Post

toby109tt wrote:I agree with sofar about the minetestgame thing (but I don't want to get offtopic)

Also how can I Make the color gradient smoother?
You can't, at least not without sacrificing some major features, and getting non-smoothness back in different ways.

Node coloring is done using param2 values which only allow 256 values, and therefore the coloring is limited to a 256 color variation palette. I've already stretched and normalized the palette and p2 value spread to be covering most of the terrain without losing large portions of the map, so you can't smooth things out much further than this.

Even giving humidity less range would cause significant color banding in the landscape, so, the only thing to make it look smoother is reduce the color variation in the palette, which would probably look bad as well, or be boring.

sofar
Developer
Posts: 2146
Joined: Fri Jan 16, 2015 07:31
GitHub: sofar
IRC: sofar
In-game: sofar

Re: [Mod] Luscious [luscious]

by sofar » Post

Fixed the inventory item coloring bug thanks to juhdanad. Now the dug nodes properly are colored with a default color and don't show up all greyscale.

sofar
Developer
Posts: 2146
Joined: Fri Jan 16, 2015 07:31
GitHub: sofar
IRC: sofar
In-game: sofar

Re: [Mod] Luscious [luscious]

by sofar » Post

Image

carpathian mapgen + luscious == looking really good.

User avatar
the_raven_262
Member
Posts: 343
Joined: Mon Sep 22, 2014 09:30
GitHub: theraven262
IRC: [Discord unfortunately] corvus262

Re: [Mod] Luscious [luscious]

by the_raven_262 » Post

Looks amazing, sofar.
How reliable is this mod for adding into a subgame?
Also, what else do you plan to add to it?

sofar
Developer
Posts: 2146
Joined: Fri Jan 16, 2015 07:31
GitHub: sofar
IRC: sofar
In-game: sofar

Re: [Mod] Luscious [luscious]

by sofar » Post

the_raven_262 wrote:Looks amazing, sofar.
How reliable is this mod for adding into a subgame?
Also, what else do you plan to add to it?
The functionality is simple enough to convert to other games, but it does have an impact on texture packs. I will probably not change this too much (except fix the listed bugs), but I might make adaptations for other games/subgames that are more complex than this implementation.

Sporax
Member
Posts: 149
Joined: Mon Jul 11, 2016 16:33
GitHub: Sporax
IRC: Sporax
In-game: Sporax
Location: France

Re: [Mod] Luscious [luscious]

by Sporax » Post

Wow Amazing work, could you make it work with every textures??

+1000

User avatar
the_raven_262
Member
Posts: 343
Joined: Mon Sep 22, 2014 09:30
GitHub: theraven262
IRC: [Discord unfortunately] corvus262

Re: [Mod] Luscious [luscious]

by the_raven_262 » Post

It already works with any texture pack.

sofar
Developer
Posts: 2146
Joined: Fri Jan 16, 2015 07:31
GitHub: sofar
IRC: sofar
In-game: sofar

Re: [Mod] Luscious [luscious]

by sofar » Post

the_raven_262 wrote:It already works with any texture pack.
Well, it changes the textures. If you have a TP with nice grass textures, you'll lose them and get the versions of textures that are in this mod.

This mod can't really handle TPs, since it requires several graphical steps to make proper semi transparent and desaturated image versions. TPs however can make *luscious* specific textures, though, instead. But they are the ones that need to do the work.

u19503

Re: [Mod] Luscious [luscious]

by u19503 » Post

I'm fine with doing the supporting in my packs it's not alot of work and it gives better color resolts :)

User avatar
Fixer
Member
Posts: 904
Joined: Sun Jul 31, 2011 11:23
IRC: Fixer
In-game: Fixer
Location: Ukraine

Re: [mod]Luscious[luscious]

by Fixer » Post

sofar wrote:As for mtg or not, I think it would make perfect sense, but I've almost entirely given up on MTG at this point, it's a lost cause without anyone giving it direction that makes sense. The current direction of MTG is ... senseless.
How everyone forgets this? https://github.com/minetest/minetest_game/issues/515 ([Discussion] Development direction), everyone please participate in it to press it forward (make it boiling issue).

User avatar
the_raven_262
Member
Posts: 343
Joined: Mon Sep 22, 2014 09:30
GitHub: theraven262
IRC: [Discord unfortunately] corvus262

Re: [Mod] Luscious [luscious]

by the_raven_262 » Post

sofar wrote:
the_raven_262 wrote:It already works with any texture pack.
Well, it changes the textures. If you have a TP with nice grass textures, you'll lose them and get the versions of textures that are in this mod.

This mod can't really handle TPs, since it requires several graphical steps to make proper semi transparent and desaturated image versions. TPs however can make *luscious* specific textures, though, instead. But they are the ones that need to do the work.
Wait a moment, since when? I'm sure it worked with a texture pack before. Hmm, too bad I didn't screenshot it.

sofar
Developer
Posts: 2146
Joined: Fri Jan 16, 2015 07:31
GitHub: sofar
IRC: sofar
In-game: sofar

Re: [mod]Luscious[luscious]

by sofar » Post

Fixerol wrote:How everyone forgets this? https://github.com/minetest/minetest_game/issues/515 ([Discussion] Development direction), everyone please participate in it to press it forward (make it boiling issue).
This is getting off topic. Please, let's focus on making this thing awesome.

sofar
Developer
Posts: 2146
Joined: Fri Jan 16, 2015 07:31
GitHub: sofar
IRC: sofar
In-game: sofar

Re: [Mod] Luscious [luscious]

by sofar » Post

the_raven_262 wrote:Wait a moment, since when? I'm sure it worked with a texture pack before. Hmm, too bad I didn't screenshot it.
You may have gotten *some* effect by sheer luck. With everything being green, you'll see the yellow/brown coloring in warm areas, but you'll completely miss out the pale colors from snow areas.

The mod needs the underlying textures to be desaturated for full effect, and even better if they are accent colored to bring out depth in them. You can't just grab a `default_grass.png` from a texture pack, it won't give the same results.

User avatar
Wuzzy
Member
Posts: 4786
Joined: Mon Sep 24, 2012 15:01
GitHub: Wuzzy2
IRC: Wuzzy
In-game: Wuzzy
Contact:

Re: [Mod] Luscious [luscious]

by Wuzzy » Post

And what happens if I place the “Dirt with Grass” block?

Also, what happens if dirt turns into Dirt with Grass (by the spreading algorithm)?
Last edited by Wuzzy on Thu Nov 30, 2017 11:56, edited 1 time in total.

User avatar
Wolfshippie
Member
Posts: 116
Joined: Mon Jul 24, 2017 12:37
GitHub: Wolfshippie
IRC: wolfshippie
In-game: wolfshippie minehippie
Location: Franconia, Bavaria, Germany
Contact:

Re: [Mod] Luscious [luscious]

by Wolfshippie » Post

Wuzzy wrote:And what happens if I place the “Dirt with Grass” block?
Good question...

sofar
Developer
Posts: 2146
Joined: Fri Jan 16, 2015 07:31
GitHub: sofar
IRC: sofar
In-game: sofar

Re: [Mod] Luscious [luscious]

by sofar » Post

Wolfshippie wrote:
Wuzzy wrote:And what happens if I place the “Dirt with Grass” block?
Good question...
And it's answered! Right in the readme! And in the top forum post!

User avatar
Wolfshippie
Member
Posts: 116
Joined: Mon Jul 24, 2017 12:37
GitHub: Wolfshippie
IRC: wolfshippie
In-game: wolfshippie minehippie
Location: Franconia, Bavaria, Germany
Contact:

Re: [Mod] Luscious [luscious]

by Wolfshippie » Post

sofar wrote:
Wolfshippie wrote:
Wuzzy wrote:And what happens if I place the “Dirt with Grass” block?
Good question...
And it's answered! Right in the readme! And in the top forum post!
Oops... I guess I overlooked this. I'm sorry XD

User avatar
burli
Member
Posts: 1643
Joined: Fri Apr 10, 2015 13:18

Re: [mod]Luscious[luscious]

by burli » Post

burli wrote: Has a man ever read a manual?
SCNR xD

sofar
Developer
Posts: 2146
Joined: Fri Jan 16, 2015 07:31
GitHub: sofar
IRC: sofar
In-game: sofar

Re: [Mod] Luscious [luscious]

by sofar » Post

I fixed the grass spread color bug, so grass spreading on dirt will put down the right colored grass.

User avatar
Wuzzy
Member
Posts: 4786
Joined: Mon Sep 24, 2012 15:01
GitHub: Wuzzy2
IRC: Wuzzy
In-game: Wuzzy
Contact:

Re: [Mod] Luscious [luscious]

by Wuzzy » Post

The biome data is available in a special thread when mapgen emerges new map blocks. This mod captures the biome heat and humidity values right as mapgen creates them and stores them permanently for later use. This is why you need to have a `luscious` folder in the world folder. In this folder, we store the heat & humidity param2 values for each node that needs coloring in an X-Z map (Y is discarded as biome data does not use Y and is not 3d noise, it's only 2D).
Wow, WHAT? Seriously?! Won't the world directory just blow up? Damn, I already feared that the mod would do a workaround like this. :-(

Minetest really needs the get_biome, get_heat and get_humidity functions. A ton of mapgen stuff will become so much easier.

sofar
Developer
Posts: 2146
Joined: Fri Jan 16, 2015 07:31
GitHub: sofar
IRC: sofar
In-game: sofar

Re: [Mod] Luscious [luscious]

by sofar » Post

Wuzzy wrote: Wow, WHAT? Seriously?! Won't the world directory just blow up? Damn, I already feared that the mod would do a workaround like this..
Slow down. Take a zanax. This is not really that bad.

First, this mod doesn't store raw heat/humidity values - those are float values, so they would take 8 bytes per XZ, which indeed would be fairly large. What this mod does is store the actual final param2 value, which is only 8 bytes.

Second, this mod then compresses the entire 80x80 array of param2 values even further.

Third, this mod doesn't use any Y coordinates since the biome system doesn't use them, and so the same 80x80 param2 map will be used for all chunks above/below, further reducing the effective storage size needed.

at WORST, this mod will grow your space consumption by 10%. If you explore the entire map, the actual space usage will drop by a factor of 800(!), and become almost negligable.

sofar
Developer
Posts: 2146
Joined: Fri Jan 16, 2015 07:31
GitHub: sofar
IRC: sofar
In-game: sofar

Re: [Mod] Luscious [luscious]

by sofar » Post

Wuzzy wrote:Minetest really needs the get_biome, get_heat and get_humidity functions. A ton of mapgen stuff will become so much easier.
You're actually missing some vital background information. You may not like the solution either.

Either the core has to generate this data on the fly, *every* time it is requested. This requires either caching large amounts of noise maps in memory (ouch) or it requires regenerating them over and over again (ouch).

The alternative, and the one I prefer, would be to store the biome map data into the map.sqlite database as a secondary table. However, since the biome data uses 2 float values, this would consume a large amount of storage space, even if serialized and compressed in the most efficient way possible.

Neither those solutions are without cost. The latter is probably structurally the better option, since it would allow retrieving large areas of biome data for vmanips without cascading into lots of noise maps.

User avatar
v-rob
Developer
Posts: 970
Joined: Thu Mar 24, 2016 03:19
GitHub: v-rob
IRC: v-rob
Location: Right behind you.

Re: [Mod] Luscious [luscious]

by v-rob » Post

Well, I'm going to revive this thread...

With 5.0 now having minetest.get_biome_data, will this mod be getting a rework to use it? I like this mod, but I haven't been using it because I wanted to wait for minetest.get_biome_data to be created so this mod could have the benefits of utilizing it.
Core Developer | My Best Mods: Bridger - Slats - Stained Glass

Post Reply

Who is online

Users browsing this forum: No registered users and 17 guests