forked from nalc/nalc_game
		
	Default / flowers: New biomes. Limit dirt blobs. Add corals, bushes
Biomes: Add 'sandstone desert', 'cold desert', 'snowy grassland'. Rename 'glacier' biome to 'icesheet' biome. Rename non-swamp 'swamp' biomes to 'shore' biomes. Remove 'sandstone grassland' biome. Rename 'stone grassland' biome to 'grassland' biome. Edit biome points for improved similarity to Whittaker classification. Change 'tundra' to bare stone with snowblocks. Make dirt 'swamp' / 'shore' less deep. Ores: Make dirt blob ore biome-specific, limit to dirt biomes. Decorations: Make mushroom noise spread match that of appletrees as originally intended, to have mushrooms spawn in darker thicker forest areas. Add coral reefs in warm oceans. Add bushes and acacia bushes. Jungletrees in deeper water for larger swamps. Register flower mod decorations in singlenode mapgen for use by minetest.generate_registered_decorations, as in default/mapgen.lua.
This commit is contained in:
		@@ -43,6 +43,7 @@ minetest.register_alias("mapgen_stair_sandstonebrick", "stairs:stair_sandstonebr
 | 
			
		||||
--
 | 
			
		||||
 | 
			
		||||
function default.register_ores()
 | 
			
		||||
	minetest.clear_registered_ores()
 | 
			
		||||
	-- Blob ores
 | 
			
		||||
	-- These first to avoid other ores in blobs
 | 
			
		||||
 | 
			
		||||
@@ -109,6 +110,8 @@ function default.register_ores()
 | 
			
		||||
			octaves = 1,
 | 
			
		||||
			persist = 0.0
 | 
			
		||||
		},
 | 
			
		||||
		biomes = {"taiga", "snowy_grassland", "grassland", "coniferous_forest",
 | 
			
		||||
			"deciduous_forest", "savanna", "rainforest"}
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	-- Gravel
 | 
			
		||||
@@ -379,10 +382,10 @@ end
 | 
			
		||||
function default.register_biomes()
 | 
			
		||||
	minetest.clear_registered_biomes()
 | 
			
		||||
 | 
			
		||||
	-- Permanent ice
 | 
			
		||||
	-- Icesheet
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "glacier",
 | 
			
		||||
		name = "icesheet",
 | 
			
		||||
		node_dust = "default:snowblock",
 | 
			
		||||
		node_top = "default:snowblock",
 | 
			
		||||
		depth_top = 1,
 | 
			
		||||
@@ -398,36 +401,36 @@ function default.register_biomes()
 | 
			
		||||
		y_min = -8,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		heat_point = 0,
 | 
			
		||||
		humidity_point = 50,
 | 
			
		||||
		humidity_point = 73,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "glacier_ocean",
 | 
			
		||||
		name = "icesheet_ocean",
 | 
			
		||||
		node_dust = "default:snowblock",
 | 
			
		||||
		node_top = "default:sand",
 | 
			
		||||
		depth_top = 1,
 | 
			
		||||
		node_filler = "default:sand",
 | 
			
		||||
		depth_filler = 3,
 | 
			
		||||
		--node_stone = "",
 | 
			
		||||
		--node_water_top = "",
 | 
			
		||||
		--depth_water_top = ,
 | 
			
		||||
		node_water_top = "default:ice",
 | 
			
		||||
		depth_water_top = 10,
 | 
			
		||||
		--node_water = "",
 | 
			
		||||
		--node_river_water = "",
 | 
			
		||||
		y_min = -112,
 | 
			
		||||
		y_max = -9,
 | 
			
		||||
		heat_point = 0,
 | 
			
		||||
		humidity_point = 50,
 | 
			
		||||
		humidity_point = 73,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	-- Cold
 | 
			
		||||
	-- Tundra
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "tundra",
 | 
			
		||||
		--node_dust = "",
 | 
			
		||||
		node_top = "default:dirt_with_snow",
 | 
			
		||||
		depth_top = 1,
 | 
			
		||||
		node_filler = "default:dirt",
 | 
			
		||||
		depth_filler = 1,
 | 
			
		||||
		node_dust = "default:snowblock",
 | 
			
		||||
		--node_top = ,
 | 
			
		||||
		--depth_top = ,
 | 
			
		||||
		--node_filler = ,
 | 
			
		||||
		--depth_filler = ,
 | 
			
		||||
		--node_stone = "",
 | 
			
		||||
		--node_water_top = "",
 | 
			
		||||
		--depth_water_top = ,
 | 
			
		||||
@@ -437,8 +440,8 @@ function default.register_biomes()
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = 2,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		heat_point = 15,
 | 
			
		||||
		humidity_point = 35,
 | 
			
		||||
		heat_point = 0,
 | 
			
		||||
		humidity_point = 40,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
@@ -457,8 +460,8 @@ function default.register_biomes()
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = -3,
 | 
			
		||||
		y_max = 1,
 | 
			
		||||
		heat_point = 15,
 | 
			
		||||
		humidity_point = 35,
 | 
			
		||||
		heat_point = 0,
 | 
			
		||||
		humidity_point = 40,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
@@ -477,10 +480,11 @@ function default.register_biomes()
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = -112,
 | 
			
		||||
		y_max = -4,
 | 
			
		||||
		heat_point = 15,
 | 
			
		||||
		humidity_point = 35,
 | 
			
		||||
		heat_point = 0,
 | 
			
		||||
		humidity_point = 40,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	-- Taiga
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "taiga",
 | 
			
		||||
@@ -498,8 +502,8 @@ function default.register_biomes()
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = 2,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		heat_point = 15,
 | 
			
		||||
		humidity_point = 65,
 | 
			
		||||
		heat_point = 25,
 | 
			
		||||
		humidity_point = 70,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
@@ -518,16 +522,16 @@ function default.register_biomes()
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = -112,
 | 
			
		||||
		y_max = 1,
 | 
			
		||||
		heat_point = 15,
 | 
			
		||||
		humidity_point = 65,
 | 
			
		||||
		heat_point = 25,
 | 
			
		||||
		humidity_point = 70,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	-- Temperate
 | 
			
		||||
	-- Snowy grassland
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "stone_grassland",
 | 
			
		||||
		--node_dust = "",
 | 
			
		||||
		node_top = "default:dirt_with_grass",
 | 
			
		||||
		name = "snowy_grassland",
 | 
			
		||||
		node_dust = "default:snow",
 | 
			
		||||
		node_top = "default:dirt_with_snow",
 | 
			
		||||
		depth_top = 1,
 | 
			
		||||
		node_filler = "default:dirt",
 | 
			
		||||
		depth_filler = 1,
 | 
			
		||||
@@ -538,34 +542,14 @@ function default.register_biomes()
 | 
			
		||||
		--node_river_water = "",
 | 
			
		||||
		node_riverbed = "default:sand",
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = 6,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		heat_point = 40,
 | 
			
		||||
		humidity_point = 35,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "stone_grassland_dunes",
 | 
			
		||||
		--node_dust = "",
 | 
			
		||||
		node_top = "default:sand",
 | 
			
		||||
		depth_top = 1,
 | 
			
		||||
		node_filler = "default:sand",
 | 
			
		||||
		depth_filler = 2,
 | 
			
		||||
		--node_stone = "",
 | 
			
		||||
		--node_water_top = "",
 | 
			
		||||
		--depth_water_top = ,
 | 
			
		||||
		--node_water = "",
 | 
			
		||||
		--node_river_water = "",
 | 
			
		||||
		node_riverbed = "default:sand",
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = 5,
 | 
			
		||||
		y_max = 5,
 | 
			
		||||
		heat_point = 40,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		heat_point = 20,
 | 
			
		||||
		humidity_point = 35,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "stone_grassland_ocean",
 | 
			
		||||
		name = "snowy_grassland_ocean",
 | 
			
		||||
		--node_dust = "",
 | 
			
		||||
		node_top = "default:sand",
 | 
			
		||||
		depth_top = 1,
 | 
			
		||||
@@ -580,10 +564,73 @@ function default.register_biomes()
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = -112,
 | 
			
		||||
		y_max = 4,
 | 
			
		||||
		heat_point = 40,
 | 
			
		||||
		heat_point = 20,
 | 
			
		||||
		humidity_point = 35,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	-- Grassland
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "grassland",
 | 
			
		||||
		--node_dust = "",
 | 
			
		||||
		node_top = "default:dirt_with_grass",
 | 
			
		||||
		depth_top = 1,
 | 
			
		||||
		node_filler = "default:dirt",
 | 
			
		||||
		depth_filler = 1,
 | 
			
		||||
		--node_stone = "",
 | 
			
		||||
		--node_water_top = "",
 | 
			
		||||
		--depth_water_top = ,
 | 
			
		||||
		--node_water = "",
 | 
			
		||||
		--node_river_water = "",
 | 
			
		||||
		node_riverbed = "default:sand",
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = 6,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		heat_point = 50,
 | 
			
		||||
		humidity_point = 35,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "grassland_dunes",
 | 
			
		||||
		--node_dust = "",
 | 
			
		||||
		node_top = "default:sand",
 | 
			
		||||
		depth_top = 1,
 | 
			
		||||
		node_filler = "default:sand",
 | 
			
		||||
		depth_filler = 2,
 | 
			
		||||
		--node_stone = "",
 | 
			
		||||
		--node_water_top = "",
 | 
			
		||||
		--depth_water_top = ,
 | 
			
		||||
		--node_water = "",
 | 
			
		||||
		--node_river_water = "",
 | 
			
		||||
		node_riverbed = "default:sand",
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = 5,
 | 
			
		||||
		y_max = 5,
 | 
			
		||||
		heat_point = 50,
 | 
			
		||||
		humidity_point = 35,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "grassland_ocean",
 | 
			
		||||
		--node_dust = "",
 | 
			
		||||
		node_top = "default:sand",
 | 
			
		||||
		depth_top = 1,
 | 
			
		||||
		node_filler = "default:sand",
 | 
			
		||||
		depth_filler = 3,
 | 
			
		||||
		--node_stone = "",
 | 
			
		||||
		--node_water_top = "",
 | 
			
		||||
		--depth_water_top = ,
 | 
			
		||||
		--node_water = "",
 | 
			
		||||
		--node_river_water = "",
 | 
			
		||||
		node_riverbed = "default:sand",
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = -112,
 | 
			
		||||
		y_max = 4,
 | 
			
		||||
		heat_point = 50,
 | 
			
		||||
		humidity_point = 35,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	-- Coniferous forest
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "coniferous_forest",
 | 
			
		||||
@@ -601,8 +648,8 @@ function default.register_biomes()
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = 6,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		heat_point = 40,
 | 
			
		||||
		humidity_point = 65,
 | 
			
		||||
		heat_point = 45,
 | 
			
		||||
		humidity_point = 70,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
@@ -621,8 +668,8 @@ function default.register_biomes()
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = 5,
 | 
			
		||||
		y_max = 5,
 | 
			
		||||
		heat_point = 40,
 | 
			
		||||
		humidity_point = 65,
 | 
			
		||||
		heat_point = 45,
 | 
			
		||||
		humidity_point = 70,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
@@ -641,71 +688,11 @@ function default.register_biomes()
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = -112,
 | 
			
		||||
		y_max = 4,
 | 
			
		||||
		heat_point = 40,
 | 
			
		||||
		humidity_point = 65,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "sandstone_grassland",
 | 
			
		||||
		--node_dust = "",
 | 
			
		||||
		node_top = "default:dirt_with_grass",
 | 
			
		||||
		depth_top = 1,
 | 
			
		||||
		node_filler = "default:dirt",
 | 
			
		||||
		depth_filler = 1,
 | 
			
		||||
		node_stone = "default:sandstone",
 | 
			
		||||
		--node_water_top = "",
 | 
			
		||||
		--depth_water_top = ,
 | 
			
		||||
		--node_water = "",
 | 
			
		||||
		--node_river_water = "",
 | 
			
		||||
		node_riverbed = "default:sand",
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = 6,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		heat_point = 60,
 | 
			
		||||
		humidity_point = 35,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "sandstone_grassland_dunes",
 | 
			
		||||
		--node_dust = "",
 | 
			
		||||
		node_top = "default:sand",
 | 
			
		||||
		depth_top = 1,
 | 
			
		||||
		node_filler = "default:sand",
 | 
			
		||||
		depth_filler = 2,
 | 
			
		||||
		node_stone = "default:sandstone",
 | 
			
		||||
		--node_water_top = "",
 | 
			
		||||
		--depth_water_top = ,
 | 
			
		||||
		--node_water = "",
 | 
			
		||||
		--node_river_water = "",
 | 
			
		||||
		node_riverbed = "default:sand",
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = 5,
 | 
			
		||||
		y_max = 5,
 | 
			
		||||
		heat_point = 60,
 | 
			
		||||
		humidity_point = 35,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "sandstone_grassland_ocean",
 | 
			
		||||
		--node_dust = "",
 | 
			
		||||
		node_top = "default:sand",
 | 
			
		||||
		depth_top = 1,
 | 
			
		||||
		node_filler = "default:sand",
 | 
			
		||||
		depth_filler = 3,
 | 
			
		||||
		node_stone = "default:sandstone",
 | 
			
		||||
		--node_water_top = "",
 | 
			
		||||
		--depth_water_top = ,
 | 
			
		||||
		--node_water = "",
 | 
			
		||||
		--node_river_water = "",
 | 
			
		||||
		node_riverbed = "default:sand",
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = -112,
 | 
			
		||||
		y_max = 4,
 | 
			
		||||
		heat_point = 60,
 | 
			
		||||
		humidity_point = 35,
 | 
			
		||||
		heat_point = 45,
 | 
			
		||||
		humidity_point = 70,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	-- Deciduous forest
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "deciduous_forest",
 | 
			
		||||
@@ -724,11 +711,11 @@ function default.register_biomes()
 | 
			
		||||
		y_min = 1,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		heat_point = 60,
 | 
			
		||||
		humidity_point = 65,
 | 
			
		||||
		humidity_point = 68,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "deciduous_forest_swamp",
 | 
			
		||||
		name = "deciduous_forest_shore",
 | 
			
		||||
		--node_dust = "",
 | 
			
		||||
		node_top = "default:dirt",
 | 
			
		||||
		depth_top = 1,
 | 
			
		||||
@@ -741,10 +728,10 @@ function default.register_biomes()
 | 
			
		||||
		--node_river_water = "",
 | 
			
		||||
		node_riverbed = "default:sand",
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = -3,
 | 
			
		||||
		y_min = -1,
 | 
			
		||||
		y_max = 0,
 | 
			
		||||
		heat_point = 60,
 | 
			
		||||
		humidity_point = 65,
 | 
			
		||||
		humidity_point = 68,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
@@ -762,12 +749,12 @@ function default.register_biomes()
 | 
			
		||||
		node_riverbed = "default:sand",
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = -112,
 | 
			
		||||
		y_max = -4,
 | 
			
		||||
		y_max = -2,
 | 
			
		||||
		heat_point = 60,
 | 
			
		||||
		humidity_point = 65,
 | 
			
		||||
		humidity_point = 68,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	-- Hot
 | 
			
		||||
	-- Desert
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "desert",
 | 
			
		||||
@@ -785,8 +772,8 @@ function default.register_biomes()
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = 5,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		heat_point = 85,
 | 
			
		||||
		humidity_point = 20,
 | 
			
		||||
		heat_point = 92,
 | 
			
		||||
		humidity_point = 16,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
@@ -805,10 +792,95 @@ function default.register_biomes()
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = -112,
 | 
			
		||||
		y_max = 4,
 | 
			
		||||
		heat_point = 85,
 | 
			
		||||
		humidity_point = 20,
 | 
			
		||||
		heat_point = 92,
 | 
			
		||||
		humidity_point = 16,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	-- Sandstone desert
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "sandstone_desert",
 | 
			
		||||
		--node_dust = "",
 | 
			
		||||
		node_top = "default:sand",
 | 
			
		||||
		depth_top = 1,
 | 
			
		||||
		node_filler = "default:sand",
 | 
			
		||||
		depth_filler = 0,
 | 
			
		||||
		node_stone = "default:sandstone",
 | 
			
		||||
		--node_water_top = "",
 | 
			
		||||
		--depth_water_top = ,
 | 
			
		||||
		--node_water = "",
 | 
			
		||||
		--node_river_water = "",
 | 
			
		||||
		node_riverbed = "default:sand",
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = 5,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		heat_point = 60,
 | 
			
		||||
		humidity_point = 0,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "sandstone_desert_ocean",
 | 
			
		||||
		--node_dust = "",
 | 
			
		||||
		node_top = "default:sand",
 | 
			
		||||
		depth_top = 1,
 | 
			
		||||
		node_filler = "default:sand",
 | 
			
		||||
		depth_filler = 3,
 | 
			
		||||
		node_stone = "default:sandstone",
 | 
			
		||||
		--node_water_top = "",
 | 
			
		||||
		--depth_water_top = ,
 | 
			
		||||
		--node_water = "",
 | 
			
		||||
		--node_river_water = "",
 | 
			
		||||
		node_riverbed = "default:sand",
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = -112,
 | 
			
		||||
		y_max = 4,
 | 
			
		||||
		heat_point = 60,
 | 
			
		||||
		humidity_point = 0,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	-- Cold desert
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "cold_desert",
 | 
			
		||||
		--node_dust = "",
 | 
			
		||||
		node_top = "default:silver_sand",
 | 
			
		||||
		depth_top = 1,
 | 
			
		||||
		node_filler = "default:silver_sand",
 | 
			
		||||
		depth_filler = 1,
 | 
			
		||||
		--node_stone = "",
 | 
			
		||||
		--node_water_top = "",
 | 
			
		||||
		--depth_water_top = ,
 | 
			
		||||
		--node_water = "",
 | 
			
		||||
		--node_river_water = "",
 | 
			
		||||
		node_riverbed = "default:sand",
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = 5,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		heat_point = 40,
 | 
			
		||||
		humidity_point = 0,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "cold_desert_ocean",
 | 
			
		||||
		--node_dust = "",
 | 
			
		||||
		node_top = "default:sand",
 | 
			
		||||
		depth_top = 1,
 | 
			
		||||
		node_filler = "default:sand",
 | 
			
		||||
		depth_filler = 3,
 | 
			
		||||
		--node_stone = "",
 | 
			
		||||
		--node_water_top = "",
 | 
			
		||||
		--depth_water_top = ,
 | 
			
		||||
		--node_water = "",
 | 
			
		||||
		--node_river_water = "",
 | 
			
		||||
		node_riverbed = "default:sand",
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = -112,
 | 
			
		||||
		y_max = 4,
 | 
			
		||||
		heat_point = 40,
 | 
			
		||||
		humidity_point = 0,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	-- Savanna
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "savanna",
 | 
			
		||||
@@ -826,12 +898,12 @@ function default.register_biomes()
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = 1,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		heat_point = 85,
 | 
			
		||||
		humidity_point = 50,
 | 
			
		||||
		heat_point = 89,
 | 
			
		||||
		humidity_point = 42,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "savanna_swamp",
 | 
			
		||||
		name = "savanna_shore",
 | 
			
		||||
		--node_dust = "",
 | 
			
		||||
		node_top = "default:dirt",
 | 
			
		||||
		depth_top = 1,
 | 
			
		||||
@@ -844,10 +916,10 @@ function default.register_biomes()
 | 
			
		||||
		--node_river_water = "",
 | 
			
		||||
		node_riverbed = "default:sand",
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = -3,
 | 
			
		||||
		y_min = -1,
 | 
			
		||||
		y_max = 0,
 | 
			
		||||
		heat_point = 85,
 | 
			
		||||
		humidity_point = 50,
 | 
			
		||||
		heat_point = 89,
 | 
			
		||||
		humidity_point = 42,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
@@ -865,11 +937,12 @@ function default.register_biomes()
 | 
			
		||||
		node_riverbed = "default:sand",
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = -112,
 | 
			
		||||
		y_max = -4,
 | 
			
		||||
		heat_point = 85,
 | 
			
		||||
		humidity_point = 50,
 | 
			
		||||
		y_max = -2,
 | 
			
		||||
		heat_point = 89,
 | 
			
		||||
		humidity_point = 42,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	-- Rainforest
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
		name = "rainforest",
 | 
			
		||||
@@ -887,8 +960,8 @@ function default.register_biomes()
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = 1,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		heat_point = 85,
 | 
			
		||||
		humidity_point = 80,
 | 
			
		||||
		heat_point = 86,
 | 
			
		||||
		humidity_point = 65,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
@@ -905,10 +978,10 @@ function default.register_biomes()
 | 
			
		||||
		--node_river_water = "",
 | 
			
		||||
		node_riverbed = "default:sand",
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = -3,
 | 
			
		||||
		y_min = -1,
 | 
			
		||||
		y_max = 0,
 | 
			
		||||
		heat_point = 85,
 | 
			
		||||
		humidity_point = 80,
 | 
			
		||||
		heat_point = 86,
 | 
			
		||||
		humidity_point = 65,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	minetest.register_biome({
 | 
			
		||||
@@ -926,9 +999,9 @@ function default.register_biomes()
 | 
			
		||||
		node_riverbed = "default:sand",
 | 
			
		||||
		depth_riverbed = 2,
 | 
			
		||||
		y_min = -112,
 | 
			
		||||
		y_max = -4,
 | 
			
		||||
		heat_point = 85,
 | 
			
		||||
		humidity_point = 80,
 | 
			
		||||
		y_max = -2,
 | 
			
		||||
		heat_point = 86,
 | 
			
		||||
		humidity_point = 65,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	-- Underground
 | 
			
		||||
@@ -1047,7 +1120,8 @@ function default.register_mgv6_decorations()
 | 
			
		||||
	})
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
-- All mapgens except mgv6 and singlenode
 | 
			
		||||
 | 
			
		||||
-- All mapgens except mgv6
 | 
			
		||||
 | 
			
		||||
local function register_grass_decoration(offset, scale, length)
 | 
			
		||||
	minetest.register_decoration({
 | 
			
		||||
@@ -1062,13 +1136,11 @@ local function register_grass_decoration(offset, scale, length)
 | 
			
		||||
			octaves = 3,
 | 
			
		||||
			persist = 0.6
 | 
			
		||||
		},
 | 
			
		||||
		biomes = {"stone_grassland", "sandstone_grassland",
 | 
			
		||||
			"deciduous_forest", "coniferous_forest",
 | 
			
		||||
			"stone_grassland_dunes", "sandstone_grassland_dunes",
 | 
			
		||||
			"coniferous_forest_dunes"},
 | 
			
		||||
		biomes = {"grassland", "grassland_dunes", "deciduous_forest",
 | 
			
		||||
			"coniferous_forest", "coniferous_forest_dunes"},
 | 
			
		||||
		y_min = 1,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		decoration = "default:grass_"..length,
 | 
			
		||||
		decoration = "default:grass_" .. length,
 | 
			
		||||
	})
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
@@ -1088,10 +1160,11 @@ local function register_dry_grass_decoration(offset, scale, length)
 | 
			
		||||
		biomes = {"savanna"},
 | 
			
		||||
		y_min = 1,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		decoration = "default:dry_grass_"..length,
 | 
			
		||||
		decoration = "default:dry_grass_" .. length,
 | 
			
		||||
	})
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
function default.register_decorations()
 | 
			
		||||
	minetest.clear_registered_decorations()
 | 
			
		||||
 | 
			
		||||
@@ -1112,7 +1185,7 @@ function default.register_decorations()
 | 
			
		||||
		biomes = {"deciduous_forest"},
 | 
			
		||||
		y_min = 1,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		schematic = minetest.get_modpath("default").."/schematics/apple_tree.mts",
 | 
			
		||||
		schematic = minetest.get_modpath("default") .. "/schematics/apple_tree.mts",
 | 
			
		||||
		flags = "place_center_x, place_center_z",
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
@@ -1157,9 +1230,9 @@ function default.register_decorations()
 | 
			
		||||
		sidelen = 80,
 | 
			
		||||
		fill_ratio = 0.1,
 | 
			
		||||
		biomes = {"rainforest", "rainforest_swamp"},
 | 
			
		||||
		y_min = 0,
 | 
			
		||||
		y_min = -1,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		schematic = minetest.get_modpath("default").."/schematics/jungle_tree.mts",
 | 
			
		||||
		schematic = minetest.get_modpath("default") .. "/schematics/jungle_tree.mts",
 | 
			
		||||
		flags = "place_center_x, place_center_z",
 | 
			
		||||
		rotation = "random",
 | 
			
		||||
	})
 | 
			
		||||
@@ -1207,7 +1280,7 @@ function default.register_decorations()
 | 
			
		||||
		biomes = {"taiga", "coniferous_forest"},
 | 
			
		||||
		y_min = 2,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		schematic = minetest.get_modpath("default").."/schematics/pine_tree.mts",
 | 
			
		||||
		schematic = minetest.get_modpath("default") .. "/schematics/pine_tree.mts",
 | 
			
		||||
		flags = "place_center_x, place_center_z",
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
@@ -1261,7 +1334,7 @@ function default.register_decorations()
 | 
			
		||||
		biomes = {"savanna"},
 | 
			
		||||
		y_min = 1,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		schematic = minetest.get_modpath("default").."/schematics/acacia_tree.mts",
 | 
			
		||||
		schematic = minetest.get_modpath("default") .. "/schematics/acacia_tree.mts",
 | 
			
		||||
		flags = "place_center_x, place_center_z",
 | 
			
		||||
		rotation = "random",
 | 
			
		||||
	})
 | 
			
		||||
@@ -1313,7 +1386,7 @@ function default.register_decorations()
 | 
			
		||||
		biomes = {"deciduous_forest"},
 | 
			
		||||
		y_min = 1,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		schematic = minetest.get_modpath("default").."/schematics/aspen_tree.mts",
 | 
			
		||||
		schematic = minetest.get_modpath("default") .. "/schematics/aspen_tree.mts",
 | 
			
		||||
		flags = "place_center_x, place_center_z",
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
@@ -1349,6 +1422,7 @@ function default.register_decorations()
 | 
			
		||||
		flags = "place_center_x",
 | 
			
		||||
		rotation = "random",
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	-- Large cactus
 | 
			
		||||
 | 
			
		||||
	minetest.register_decoration({
 | 
			
		||||
@@ -1366,7 +1440,7 @@ function default.register_decorations()
 | 
			
		||||
		biomes = {"desert"},
 | 
			
		||||
		y_min = 5,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		schematic = minetest.get_modpath("default").."/schematics/large_cactus.mts",
 | 
			
		||||
		schematic = minetest.get_modpath("default") .. "/schematics/large_cactus.mts",
 | 
			
		||||
		flags = "place_center_x",
 | 
			
		||||
		rotation = "random",
 | 
			
		||||
	})
 | 
			
		||||
@@ -1407,10 +1481,52 @@ function default.register_decorations()
 | 
			
		||||
			octaves = 3,
 | 
			
		||||
			persist = 0.7
 | 
			
		||||
		},
 | 
			
		||||
		biomes = {"savanna_swamp"},
 | 
			
		||||
		biomes = {"savanna_shore"},
 | 
			
		||||
		y_min = 0,
 | 
			
		||||
		y_max = 0,
 | 
			
		||||
		schematic = minetest.get_modpath("default").."/schematics/papyrus.mts",
 | 
			
		||||
		schematic = minetest.get_modpath("default") .. "/schematics/papyrus.mts",
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	-- Bush
 | 
			
		||||
 | 
			
		||||
	minetest.register_decoration({
 | 
			
		||||
		deco_type = "schematic",
 | 
			
		||||
		place_on = {"default:dirt_with_grass", "default:dirt_with_snow"},
 | 
			
		||||
		sidelen = 16,
 | 
			
		||||
		noise_params = {
 | 
			
		||||
			offset = -0.004,
 | 
			
		||||
			scale = 0.01,
 | 
			
		||||
			spread = {x = 100, y = 100, z = 100},
 | 
			
		||||
			seed = 137,
 | 
			
		||||
			octaves = 3,
 | 
			
		||||
			persist = 0.7,
 | 
			
		||||
		},
 | 
			
		||||
		biomes = {"snowy_grassland", "grassland", "deciduous_forest"},
 | 
			
		||||
		y_min = 1,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		schematic = minetest.get_modpath("default") .. "/schematics/bush.mts",
 | 
			
		||||
		flags = "place_center_x, place_center_z",
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	-- Acacia bush
 | 
			
		||||
 | 
			
		||||
	minetest.register_decoration({
 | 
			
		||||
		deco_type = "schematic",
 | 
			
		||||
		place_on = {"default:dirt_with_dry_grass"},
 | 
			
		||||
		sidelen = 16,
 | 
			
		||||
		noise_params = {
 | 
			
		||||
			offset = -0.004,
 | 
			
		||||
			scale = 0.01,
 | 
			
		||||
			spread = {x = 100, y = 100, z = 100},
 | 
			
		||||
			seed = 90155,
 | 
			
		||||
			octaves = 3,
 | 
			
		||||
			persist = 0.7,
 | 
			
		||||
		},
 | 
			
		||||
		biomes = {"savanna"},
 | 
			
		||||
		y_min = 1,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		schematic = minetest.get_modpath("default") .. "/schematics/acacia_bush.mts",
 | 
			
		||||
		flags = "place_center_x, place_center_z",
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	-- Grasses
 | 
			
		||||
@@ -1446,7 +1562,8 @@ function default.register_decorations()
 | 
			
		||||
 | 
			
		||||
	minetest.register_decoration({
 | 
			
		||||
		deco_type = "simple",
 | 
			
		||||
		place_on = {"default:desert_sand", "default:dirt_with_snow"},
 | 
			
		||||
		place_on = {"default:desert_sand",
 | 
			
		||||
			"default:sand", "default:silver_sand"},
 | 
			
		||||
		sidelen = 16,
 | 
			
		||||
		noise_params = {
 | 
			
		||||
			offset = 0,
 | 
			
		||||
@@ -1456,11 +1573,36 @@ function default.register_decorations()
 | 
			
		||||
			octaves = 3,
 | 
			
		||||
			persist = 0.6
 | 
			
		||||
		},
 | 
			
		||||
		biomes = {"desert", "tundra"},
 | 
			
		||||
		biomes = {"desert", "sandstone_desert", "cold_desert"},
 | 
			
		||||
		y_min = 2,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		decoration = "default:dry_shrub",
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	-- Coral reef
 | 
			
		||||
 | 
			
		||||
	minetest.register_decoration({
 | 
			
		||||
		deco_type = "schematic",
 | 
			
		||||
		place_on = {"default:sand"},
 | 
			
		||||
		noise_params = {
 | 
			
		||||
			offset = -0.1,
 | 
			
		||||
			scale = 0.1,
 | 
			
		||||
			spread = {x = 200, y = 200, z = 200},
 | 
			
		||||
			seed = 7013,
 | 
			
		||||
			octaves = 3,
 | 
			
		||||
			persist = 1,
 | 
			
		||||
		},
 | 
			
		||||
		biomes = {
 | 
			
		||||
			"desert_ocean",
 | 
			
		||||
			"savanna_ocean",
 | 
			
		||||
			"rainforest_ocean",
 | 
			
		||||
		},
 | 
			
		||||
		y_min = -8,
 | 
			
		||||
		y_max = -2,
 | 
			
		||||
		schematic = minetest.get_modpath("default") .. "/schematics/corals.mts",
 | 
			
		||||
		flags = "place_center_x, place_center_z",
 | 
			
		||||
		rotation = "random",
 | 
			
		||||
	})
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								mods/default/schematics/acacia_bush.mts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								mods/default/schematics/acacia_bush.mts
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								mods/default/schematics/bush.mts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								mods/default/schematics/bush.mts
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								mods/default/schematics/corals.mts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								mods/default/schematics/corals.mts
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							@@ -94,8 +94,7 @@ local function register_flower(seed, name)
 | 
			
		||||
			octaves = 3,
 | 
			
		||||
			persist = 0.6
 | 
			
		||||
		},
 | 
			
		||||
		biomes = {"stone_grassland", "sandstone_grassland",
 | 
			
		||||
			"deciduous_forest", "coniferous_forest"},
 | 
			
		||||
		biomes = {"grassland", "deciduous_forest", "coniferous_forest"},
 | 
			
		||||
		y_min = 1,
 | 
			
		||||
		y_max = 31000,
 | 
			
		||||
		decoration = "flowers:"..name,
 | 
			
		||||
@@ -110,7 +109,7 @@ local function register_mushroom(name)
 | 
			
		||||
		noise_params = {
 | 
			
		||||
			offset = 0,
 | 
			
		||||
			scale = 0.006,
 | 
			
		||||
			spread = {x = 200, y = 200, z = 200},
 | 
			
		||||
			spread = {x = 250, y = 250, z = 250},
 | 
			
		||||
			seed = 2,
 | 
			
		||||
			octaves = 3,
 | 
			
		||||
			persist = 0.66
 | 
			
		||||
@@ -135,10 +134,10 @@ local function register_waterlily()
 | 
			
		||||
			octaves = 3,
 | 
			
		||||
			persist = 0.7
 | 
			
		||||
		},
 | 
			
		||||
		biomes = {"rainforest_swamp", "savanna_swamp", "deciduous_forest_swamp"},
 | 
			
		||||
		biomes = {"rainforest_swamp", "savanna_shore", "deciduous_forest_shore"},
 | 
			
		||||
		y_min = 0,
 | 
			
		||||
		y_max = 0,
 | 
			
		||||
		schematic = minetest.get_modpath("flowers").."/schematics/waterlily.mts",
 | 
			
		||||
		schematic = minetest.get_modpath("flowers") .. "/schematics/waterlily.mts",
 | 
			
		||||
		rotation = "random",
 | 
			
		||||
	})
 | 
			
		||||
end
 | 
			
		||||
@@ -162,12 +161,9 @@ end
 | 
			
		||||
-- Detect mapgen to select functions
 | 
			
		||||
--
 | 
			
		||||
 | 
			
		||||
-- Mods using singlenode mapgen can call these functions to enable
 | 
			
		||||
-- the use of minetest.generate_ores or minetest.generate_decorations
 | 
			
		||||
 | 
			
		||||
local mg_name = minetest.get_mapgen_setting("mg_name")
 | 
			
		||||
if mg_name == "v6" then
 | 
			
		||||
	flowers.register_mgv6_decorations()
 | 
			
		||||
elseif mg_name ~= "singlenode" then
 | 
			
		||||
else
 | 
			
		||||
	flowers.register_decorations()
 | 
			
		||||
end
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user