Single biome world

User avatar
Froggy
Member
 
Posts: 24
Joined: Wed Jun 12, 2013 00:32

Single biome world

by Froggy » Sun Aug 04, 2013 18:03

Is there any way to generate a world to be with only one biome. I want to make one with only a desert, but I can't seem to find anything to do so. I did, although, find an option for "mgv6_freq_desert", but that doesn't help much, since whatever I set it to will always allow grass and trees to appear. I'm aiming for something of a wasteland. With that being said, I'd want to allow very small amounts of grass and trees to generate. Is any of this possible?
 

User avatar
Evergreen
Member
 
Posts: 2131
Joined: Sun Jan 06, 2013 01:22
GitHub: 4Evergreen4
IRC: EvergreenTree
In-game: Evergreen

by Evergreen » Sun Aug 04, 2013 18:59

Hmm, I'm not sure if you can do that in mapgen v6, but I think you will be able to with mapgen v7. (don't blame me if I'm wrong, I don't usually mess with that kind of thing)
"Help! I searched for a mod but I couldn't find it!"
http://krock-works.16mb.com/MTstuff/modSearch.php
 

hmmmm
Member
 
Posts: 47
Joined: Tue Apr 02, 2013 04:04

by hmmmm » Sun Aug 04, 2013 19:48

The lower mgv6_freq_desert is, the more common and larger desert is.
Using a default mgv6_np_biome setting, at mgv6_freq_desert <= -1.75, all terrain should be desert. So, I'd recommend setting it to -1.5 for the effect you'd like. You can also increase the number of octaves or decrease the spread factor in mgv6_np_biome to add more variance to biomes.
To make the rest of the terrain more fitting, you may want to decrease the scale of mgv6_np_terrain_base and mgv6_np_terrain_higher, perhaps to something like 5.

The whole idea behind configurable map generation variables is to let you play with it and find settings that you like. Feel free to experiment.
 

User avatar
Froggy
Member
 
Posts: 24
Joined: Wed Jun 12, 2013 00:32

by Froggy » Sun Aug 04, 2013 22:47

hmmmm wrote:The lower mgv6_freq_desert is, the more common and larger desert is.
Using a default mgv6_np_biome setting, at mgv6_freq_desert <= -1.75, all terrain should be desert. So, I'd recommend setting it to -1.5 for the effect you'd like. You can also increase the number of octaves or decrease the spread factor in mgv6_np_biome to add more variance to biomes.
To make the rest of the terrain more fitting, you may want to decrease the scale of mgv6_np_terrain_base and mgv6_np_terrain_higher, perhaps to something like 5.

The whole idea behind configurable map generation variables is to let you play with it and find settings that you like. Feel free to experiment.


Thanks! This did the trick! For some reason, I forgot to try negative numbers and only used decimals... -_-

Now, is there any way to reduce cacti from appearing in such large quantities? Also, can I make a minimum number of trees per X square meters, since in the current situation, trees a bit too rare. Yet I wouldn't want too many in one place, so I'd also need a maximum number of trees per X square meters. Can any of this be done as well?
 

User avatar
Topywo
Member
 
Posts: 1718
Joined: Fri May 18, 2012 20:27

by Topywo » Sun Aug 04, 2013 23:04

-- line numbers can be old --

I found this, but don't know how to use perlin.noise, but you could try it out as one of the ways to reduce the amount of trees:

minetest/games/minetest_game/mods/default/mapgen.lua
line 438 -- Determine cactus amount from perlin noise
line 439 local cactus_amount = math.floor(perlin1:get2d({x=x0, y=z0}) * 6 - 3)


minetest/games/minetest_game/mods/default/nodes.lua line 141

minetest.register_node("default:desert_sand", {
description = "Desert Sand",
tiles = {"default_desert_sand.png"},
is_ground_content = true,
groups = {crumbly=3, falling_node=1, sand=1, soil=1},
sounds = default.node_sound_sand_defaults(),
})

I thought trees only grew with soil=1 in groups. I'm not sure about it, but you could give it a try. How to reduce the amount I can't tell you right now (lack of time and knowledge). Maybe instead you can create a desert tree (mod), that needs desert sand.
 

User avatar
Froggy
Member
 
Posts: 24
Joined: Wed Jun 12, 2013 00:32

by Froggy » Mon Aug 05, 2013 00:06

Topywo wrote:-- line numbers can be old --

I found this, but don't know how to use perlin.noise, but you could try it out as one of the ways to reduce the amount of trees:

minetest/games/minetest_game/mods/default/mapgen.lua
line 438 -- Determine cactus amount from perlin noise
line 439 local cactus_amount = math.floor(perlin1:get2d({x=x0, y=z0}) * 6 - 3)


minetest/games/minetest_game/mods/default/nodes.lua line 141

minetest.register_node("default:desert_sand", {
description = "Desert Sand",
tiles = {"default_desert_sand.png"},
is_ground_content = true,
groups = {crumbly=3, falling_node=1, sand=1, soil=1},
sounds = default.node_sound_sand_defaults(),
})

I thought trees only grew with soil=1 in groups. I'm not sure about it, but you could give it a try. How to reduce the amount I can't tell you right now (lack of time and knowledge). Maybe instead you can create a desert tree (mod), that needs desert sand.


The lines from mapgen.lua seem to be it, although I'm hesitant to modify it, since I don't know anything about this. I'm going to need a bit of guidance with that. Also, I wouldn't want to have trees grow on sand. I'd like to make it so that dirt would be valuable and scarce. So that you'd need that dirt to grow trees and food to survive. In any case, I don't have enough programming experience to make mods (yet).
 

User avatar
Topywo
Member
 
Posts: 1718
Joined: Fri May 18, 2012 20:27

by Topywo » Mon Aug 05, 2013 21:07

Froggy wrote:The lines from mapgen.lua seem to be it, although I'm hesitant to modify it, since I don't know anything about this. I'm going to need a bit of guidance with that. Also, I wouldn't want to have trees grow on sand. I'd like to make it so that dirt would be valuable and scarce. So that you'd need that dirt to grow trees and food to survive. In any case, I don't have enough programming experience to make mods (yet).


Cactus amount:
What I do in Lua to try out stuff is 'commenting' them out. It's already used here in line 438. With -- in front of a line, it isn't read as code.

line 438 -- Determine cactus amount from perlin noise
line 439 local cactus_amount = math.floor(perlin1:get2d({x=x0, y=z0}) * 6 - 3)

To try out amount of cacti, I would copy line 439 and paste it under it, comment the original out and change something in the 'copy' like this:

line 438 -- Determine cactus amount from perlin noise
line 439 -- local cactus_amount = math.floor(perlin1:get2d({x=x0, y=z0}) * 6 - 3)
line 440 local cactus_amount = math.floor(perlin1:get2d({x=x0, y=z0}) * 12 - 3)

or

line 438 -- Determine cactus amount from perlin noise
line 439 -- local cactus_amount = math.floor(perlin1:get2d({x=x0, y=z0}) * 6 - 3)
line 440 local cactus_amount = 2

Since I can't predict (lack of knowledge) what exactly would happen and will screw up a few times, I can always delete line 440 and uncomment line 439 to get back the original code (and try again).

Growing of trees:
As far as I understood, trees are 'made' in C++. They're also made out of more than 1 block.

So I guess that in case you would like to have control over them (and over dirt (with grass)), you should create a mod that generate a few blocks of dirt, combined with an ABM that makes tree grow on some of those block. You would need to add not only 1 block but a whole tree. I think a good example of making trees that way (the old way) is Cisouns Conifers mod: https://forum.minetest.net/viewtopic.php?id=1453.

Maybe the L-system now would be a better tool to create trees. I don't have experience with the L-system. jin-xi made a description https://forum.minetest.net/viewtopic.php?id=4766 and a tool for it: https://forum.minetest.net/viewtopic.php?id=4976

but

reading this thread, maybe when you create a desert world with mgv6_freq_desert, that leaves some space for other (grasslands) biomes, you 'automatically' get scarce patches of dirt (with grass) and some trees on it.

I also found this in the minetest.conf.example:
#mgv6_np_trees = 0, 1, (125, 125, 125), 2, 4, 0.66
#mgv6_np_apple_trees = 0, 1, (100, 100, 100), 342902, 3, 0.45
Changing the values and using the lines in minetest.conf may give you some more control for the amount of trees.
I myself have no experience with the mgv6 settings so far.


I hope this doesn't confuse too much and helps you a little bit further. Actually I hope someone will know and tell you about better ways to reach your goal :-)


Edit: you might like this desert mod from Menche (link to the topic):

https://forum.minetest.net/viewtopic.php?id=3761

and 2 from kddekadenz:

https://forum.minetest.net/viewtopic.php?id=1184

https://forum.minetest.net/viewtopic.php?id=1656
Last edited by Topywo on Mon Aug 05, 2013 21:31, edited 1 time in total.
 


Return to Minetest Features

Who is online

Users browsing this forum: No registered users and 7 guests

cron