Post your mapgen questions here (modding or engine)

User avatar
T6C
Member
Posts: 59
Joined: Thu May 07, 2020 17:11
In-game: T6C

Re: Post your mapgen questions here (modding or engine)

by T6C » Post

Does Minetest need to load the entire map file into RAM, or just the parts it's using at any given time? A world 62000³ nodes seems like an extreme example. I don't know how big the multiplayer server worlds grow, but my personal single-player ones have never exceeded about 2 GB, and Minetest seems to handle that OK, even on my under-powered machine. Also, I might be interpreting your maths wrong, since 433 TB for a world of 62000³ nodes is only about 2 B/node.

In my hypothetical example above, I'm imagining a world of maybe 10k x 10k x 5k. I'd shrink down the "biomes," and slightly exaggerate the terrain of the real world, so something interesting would fit into the relatively tiny Minetest world. I'm thinking the average radius of a biome would be roughly 2000–3000 nodes, instead of the 200–300 km (or more) in the real world.

User avatar
Elektrika
Member
Posts: 36
Joined: Fri Sep 25, 2020 15:06
In-game: elektrika

Re: Post your mapgen questions here (modding or engine)

by Elektrika » Post

Has anyone made a mapgen that generates realistic terrain in the generation engine? I don't want to have to use a generation editor like realterrain.
I like mods that add dimensions and ores!

User avatar
Steamed_Punk
Member
Posts: 157
Joined: Sat Aug 10, 2019 13:31
GitHub: steamed-punk

Re: Post your mapgen questions here (modding or engine)

by Steamed_Punk » Post

I am running minetest on an old an old aspire laptop that has been wiped clean of Windows and now booting Linux Mint 20 and with my own very large texture pack without a problem. This is all down to the fact that Minetest does not load the entire map. It loads and displays (and removes) chunks (probably a MC term) as you move around. I don't know how many chunks, distance wise at any given time but it is not the entire map.
Unless I have got this all wrong and need correcting myself.
T6C wrote:
Fri Oct 16, 2020 20:57
Does Minetest need to load the entire map file into RAM, or just the parts it's using at any given time? A world 62000³ nodes seems like an extreme example. I don't know how big the multiplayer server worlds grow, but my personal single-player ones have never exceeded about 2 GB, and Minetest seems to handle that OK, even on my under-powered machine. Also, I might be interpreting your maths wrong, since 433 TB for a world of 62000³ nodes is only about 2 B/node.

In my hypothetical example above, I'm imagining a world of maybe 10k x 10k x 5k. I'd shrink down the "biomes," and slightly exaggerate the terrain of the real world, so something interesting would fit into the relatively tiny Minetest world. I'm thinking the average radius of a biome would be roughly 2000–3000 nodes, instead of the 200–300 km (or more) in the real world.
The sky is not the limit - It's my playground

ShadMOrdre
Member
Posts: 699
Joined: Mon Dec 29, 2014 08:07
GitHub: ShadMOrdre
In-game: shadmordre
Location: USA

Re: Post your mapgen questions here (modding or engine)

by ShadMOrdre » Post

See my reply here regarding realism.
MY MODS: lib_ecology lib_materials lib_clouds lib_node_shapes ---- Inspired By: Open Source Virtual World Simulator Opensimulator.

User avatar
afflatus
Member
Posts: 344
Joined: Tue Apr 01, 2014 19:47
GitHub: 0-afflatus
IRC: afflatus
In-game: afflatus
Location: Avalonia
Contact:

Vertical blend smoothing

by afflatus » Post

Is it possible to tune the vertical blend? I'm finding it looks messy. What I want is for the contours between biomes to go up and down a bit, with occasional bleed to the other side. The random spatter just makes my coastlines and mountains look messy. It's better than the biome changing all on the same y value, but I'd really like a smoother transition.
Grailtest is dreaming ...

User avatar
paramat
Developer
Posts: 3699
Joined: Sun Oct 28, 2012 00:05
GitHub: paramat
IRC: paramat
Location: UK

Re: Post your mapgen questions here (modding or engine)

by paramat » Post

AiTechEye,
> im trying to add a biome with deep oceans, atleast -50, can i do that through register_biome or only register_on_generated?

if you want to make oceans deeper, you can only do that by altering the mapgen's parameters and noise parameters. Terrain shape (and therefore seabed depth) is independent of biomes. Biomes do not affect terrain shape.

User avatar
paramat
Developer
Posts: 3699
Joined: Sun Oct 28, 2012 00:05
GitHub: paramat
IRC: paramat
Location: UK

Re: Post your mapgen questions here (modding or engine)

by paramat » Post

afflatus,
> Is it possible to tune the vertical blend? I'm finding it looks messy. What I want is for the contours between biomes to go up and down a bit, with occasional bleed to the other side.

Not possible, apart from specifying the vertical size of the blend.
A smooth undulation and occasional blobs, just like horizontal blend, would be nice, but would require an additional 2D noise. I admit it does look a little messy, but i personally like it.
When i coded the vertical blend, i first tried to re-use the horizontal blend noises for vertical blend, but that actually did not work.
I eventually decided to use a PRNG for simplicity and performance.

User avatar
afflatus
Member
Posts: 344
Joined: Tue Apr 01, 2014 19:47
GitHub: 0-afflatus
IRC: afflatus
In-game: afflatus
Location: Avalonia
Contact:

Re: Post your mapgen questions here (modding or engine)

by afflatus » Post

paramat wrote:
Tue Nov 03, 2020 13:42
Not possible, apart from specifying the vertical size of the blend.
I guessed as much. Thanks.
It would require an additional 2D noise; personally I think it would be worth it. Does it really impact that much on performance?
The horizontal blend is such a thing of beauty and I feel my coastlines and mountain vegetation lines don't match up.
One of the effects I'd like to achieve is to have the coastlines modulate between sand, gravel and rocks, which can be done by defining shore level biomes (e.g. y=-2 to y=2), but the results are somewhat random.
I will learn to live with it.
Grailtest is dreaming ...

User avatar
paramat
Developer
Posts: 3699
Joined: Sun Oct 28, 2012 00:05
GitHub: paramat
IRC: paramat
Location: UK

Re: Post your mapgen questions here (modding or engine)

by paramat » Post

Another 2D noise is not a significant performance impact.

I think part of the reason i chose PRNG is because it creates a 'patchy' blend between biomes, whereas a 2D noise would create a hard unblended border that undulates, both have nice characteristics.

it is possible to tune the PRNG in a PR to reduce the small detail, see how it was earlier when it had less fine detail https://github.com/minetest/minetest/pull/7329
Perhaps there is too much fine detail now.

User avatar
Elektrika
Member
Posts: 36
Joined: Fri Sep 25, 2020 15:06
In-game: elektrika

Re: Post your mapgen questions here (modding or engine)

by Elektrika » Post

I am about to make a mod that adds over 150 biomes to Minetest, but I noticed that every single biome in default has a regular, an ocean, a beach, and an underground. The regular biome is understandable, and I doubt the underground biome type is needed, but I don't want to make an ocean and a beach for every single biome. The only way around this that I can see is to create a beach biome that has a range of humidity and a range of temperature. How do I do something like this? And how do I create biomes that have vertical noise, such as basins that go below sea level and mountainous biomes? Also, what is the maximum amount of biomes supported in Minetest 5.2.0?
I like mods that add dimensions and ores!

User avatar
afflatus
Member
Posts: 344
Joined: Tue Apr 01, 2014 19:47
GitHub: 0-afflatus
IRC: afflatus
In-game: afflatus
Location: Avalonia
Contact:

Re: Post your mapgen questions here (modding or engine)

by afflatus » Post

Elektrika wrote:
Wed Nov 18, 2020 16:06
I am about to make a mod that adds over 150 biomes to Minetest, but I noticed that every single biome in default has a regular, an ocean, a beach, and an underground. The regular biome is understandable, and I doubt the underground biome type is needed, but I don't want to make an ocean and a beach for every single biome. The only way around this that I can see is to create a beach biome that has a range of humidity and a range of temperature. How do I do something like this? And how do I create biomes that have vertical noise, such as basins that go below sea level and mountainous biomes? Also, what is the maximum amount of biomes supported in Minetest 5.2.0?
It's somewhere around 2^16 isn't it?
You don't have to organise your biomes the way MTG does it. If you like the way your map looks, that's fine. The divisions in MTG reflect real-world biomes. All you have to do is decide which part of the heat / humidity / height cube each biome occupies, bearing in mind the average water-level, which is y=0 by default.
If you want a general beach biome you might define it like this:

Code: Select all

minetest.register_biome({
		name = "sandy_shore",
		node_top = "element:sand",
		depth_top = 1,
		node_filler = "element:sand",
		depth_filler = 2,
		node_riverbed = "element:sand",
		depth_riverbed = 2,
		vertical_blend = 2,
		y_min = -5,
		y_max = 2,
		heat_point = 50,
		humidity_point = 50,
	})
And just make sure that you don't have any other biomes competing for voronoi space at that altitude. The vertical noise is defined by 'vertical_blend'.
150 is far too many biomes already, but defining underground ones is a good idea. People mine deep in this game.
Wait, Why are you using 5.2?
Grailtest is dreaming ...

User avatar
Elektrika
Member
Posts: 36
Joined: Fri Sep 25, 2020 15:06
In-game: elektrika

Re: Post your mapgen questions here (modding or engine)

by Elektrika » Post

afflatus wrote:
Sat Nov 21, 2020 16:43
Elektrika wrote:
Wed Nov 18, 2020 16:06
I am about to make a mod that adds over 150 biomes to Minetest, but I noticed that every single biome in default has a regular, an ocean, a beach, and an underground. The regular biome is understandable, and I doubt the underground biome type is needed, but I don't want to make an ocean and a beach for every single biome. The only way around this that I can see is to create a beach biome that has a range of humidity and a range of temperature. How do I do something like this? And how do I create biomes that have vertical noise, such as basins that go below sea level and mountainous biomes? Also, what is the maximum amount of biomes supported in Minetest 5.2.0?
It's somewhere around 2^16 isn't it?
You don't have to organise your biomes the way MTG does it. If you like the way your map looks, that's fine. The divisions in MTG reflect real-world biomes. All you have to do is decide which part of the heat / humidity / height cube each biome occupies, bearing in mind the average water-level, which is y=0 by default.
If you want a general beach biome you might define it like this:

Code: Select all

minetest.register_biome({
		name = "sandy_shore",
		node_top = "element:sand",
		depth_top = 1,
		node_filler = "element:sand",
		depth_filler = 2,
		node_riverbed = "element:sand",
		depth_riverbed = 2,
		vertical_blend = 2,
		y_min = -5,
		y_max = 2,
		heat_point = 50,
		humidity_point = 50,
	})
And just make sure that you don't have any other biomes competing for voronoi space at that altitude. The vertical noise is defined by 'vertical_blend'.
150 is far too many biomes already, but defining underground ones is a good idea. People mine deep in this game.
Wait, Why are you using 5.2?
I use 5.2 because 3d_armor does not work right in 5.3 when also using instant_ores
I like mods that add dimensions and ores!

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest