es/biome_stone.lua

1793 lines
40 KiB
Lua

--Extreme Survival created by maikerumine
-- Minetest 0.4.13 mod: "Extreme Survival"
-- namespace: es
--version 1.8
--https://github.com/maikerumine
--
-- Register biomes
--
minetest.clear_registered_biomes()
--minetest.clear_registered_ores()
--minetest.clear_registered_decorations()
-- All mapgens except mgv6
--
-- Register ores
--
-- Mgv6
function default.register_mgv6_ores()
minetest.clear_registered_ores()
--ES LIQUIDS
minetest.register_ore({
ore_type = "scatter",
ore = "es:toxic_water_source",
wherein = {"default:dry_dirt", "default:dirt_with_dry_grass","default:dirt", "default:stone"},
clust_scarcity = 24*24*24,
clust_num_ores = 4,
clust_size = 4,
y_min = -9000,
y_max = 5,
})
minetest.register_ore({
ore_type = "sheet",
ore = "es:mud",
wherein = {"default:dry_dirt", "default:dirt_with_dry_grass", "default:dirt"},
clust_scarcity = 11*5*10,
clust_num_ores = 4,
clust_size = 12,
y_min = -31,
y_max = 75,
})
--ES Node Registration and location
minetest.register_ore({
ore_type = "scatter",
ore = "es:stone_with_emeralds",
wherein = "default:stone",
clust_scarcity = 24*24*24,
clust_num_ores = 4,
clust_size = 4,
y_min = -3000,
y_max = -1000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:stone_with_emeralds",
wherein = "default:stone",
clust_scarcity = 24*24*24,
clust_num_ores = 1,
clust_size = 1,
y_min = -2000,
y_max = -1000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:stone_with_rubys",
wherein = "default:stone",
clust_scarcity = 20*20*20,
clust_num_ores = 4,
clust_size = 3,
y_min = -3000,
y_max = -2300,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:stone_with_rubys",
wherein = "default:stone",
clust_scarcity = 20*20*20,
clust_num_ores = 1,
clust_size = 1,
y_min = -3000,
y_max = -1110,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:stone_with_aikerums",
wherein = "default:stone",
clust_scarcity = 23*23*23,
clust_num_ores = 5,
clust_size = 4,
y_min = -31000,
y_max = -3400,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:stone_with_aikerums",
wherein = "default:stone",
clust_scarcity = 23*23*23,
clust_num_ores = 1,
clust_size = 1,
y_min = -4000,
y_max = -3140,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:stone_with_infiniums",
wherein = "default:stone",
clust_scarcity = 20*12*20,
clust_num_ores = 5,
clust_size = 3,
y_min = -31000,
y_max = -4430,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:stone_with_infiniums",
wherein = "default:stone",
clust_scarcity = 16*18*16,
clust_num_ores = 1,
clust_size = 1,
y_min = -4000,
y_max = -1190,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:stone_with_purpelliums",
wherein = "default:stone",
clust_scarcity = 16*18*16,
clust_num_ores = 5,
clust_size = 5,
y_min = -31000,
y_max = -4090,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:depleted_uraniums",
wherein = "default:stone",
clust_scarcity = 54 * 14 * 54,
clust_num_ores = 3,
clust_size = 1,
y_min = -14210,
y_max = -656,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:depleted_uraniums",
wherein = "default:stone",
clust_scarcity = 14 * 14 * 14,
clust_num_ores = 6,
clust_size = 5,
y_min = -15000,
y_max = -3456,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_diamond",
wherein = "default:stone",
clust_scarcity = 14 * 14 * 14,
clust_num_ores = 6,
clust_size = 5,
y_min = -15000,
y_max = -1256,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:sand_with_diamond",
wherein = "default:sand",
clust_scarcity = 14 * 14 * 14,
clust_num_ores = 2,
clust_size = 1,
y_min = -15000,
y_max = 1256,
})
--liquids
minetest.register_ore({
ore_type = "blob",
ore = "default:lava_source",
wherein = "default:desert_stone",
clust_scarcity = 15*15*10,
clust_num_ores = 2,
clust_size = 2,
y_min = -31000,
y_max = 1140,
})
minetest.register_ore({
ore_type = "blob",
ore = "default:lava_source",
wherein = "default:stone",
clust_scarcity = 25*25*20,
clust_num_ores = 2,
clust_size = 2,
y_min = -31000,
y_max = 1140,
})
minetest.register_ore({
ore_type = "blob",
ore = "default:water_source",
wherein = "default:stone",
clust_scarcity = 15*15*10,
clust_num_ores = 2,
clust_size = 2,
y_min = -20000,
y_max = 1140,
})
-- Scatter ores
-- Coal
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_coal",
wherein = "default:stone",
clust_scarcity = 8 * 8 * 8,
clust_num_ores = 9,
clust_size = 3,
y_min = 1025,
y_max = 31000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_coal",
wherein = "default:stone",
clust_scarcity = 8 * 8 * 8,
clust_num_ores = 8,
clust_size = 3,
y_min = -31000,
y_max = 64,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_coal",
wherein = "default:stone",
clust_scarcity = 24 * 24 * 24,
clust_num_ores = 27,
clust_size = 6,
y_min = -31000,
y_max = 0,
})
-- Iron
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_iron",
wherein = "default:stone",
clust_scarcity = 9 * 9 * 9,
clust_num_ores = 12,
clust_size = 3,
y_min = 1025,
y_max = 31000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_iron",
wherein = "default:stone",
clust_scarcity = 7 * 7 * 7,
clust_num_ores = 5,
clust_size = 3,
y_min = -31000,
y_max = 0,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_iron",
wherein = "default:stone",
clust_scarcity = 24 * 24 * 24,
clust_num_ores = 27,
clust_size = 6,
y_min = -31000,
y_max = -64,
})
-- Tin
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_tin",
wherein = "default:stone",
clust_scarcity = 10 * 10 * 10,
clust_num_ores = 5,
clust_size = 3,
y_min = 1025,
y_max = 31000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_tin",
wherein = "default:stone",
clust_scarcity = 13 * 13 * 13,
clust_num_ores = 4,
clust_size = 3,
y_min = -127,
y_max = -64,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_tin",
wherein = "default:stone",
clust_scarcity = 10 * 10 * 10,
clust_num_ores = 5,
clust_size = 3,
y_min = -31000,
y_max = -128,
})
-- Copper
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_copper",
wherein = "default:stone",
clust_scarcity = 9 * 9 * 9,
clust_num_ores = 5,
clust_size = 3,
y_min = 1025,
y_max = 31000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_copper",
wherein = "default:stone",
clust_scarcity = 12 * 12 * 12,
clust_num_ores = 4,
clust_size = 3,
y_min = -255,
y_max = -128,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_copper",
wherein = "default:stone",
clust_scarcity = 9 * 9 * 9,
clust_num_ores = 5,
clust_size = 3,
y_min = -31000,
y_max = -256,
})
-- Gold
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_gold",
wherein = "default:stone",
clust_scarcity = 13 * 13 * 13,
clust_num_ores = 5,
clust_size = 3,
y_min = 1025,
y_max = 31000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_gold",
wherein = "default:stone",
clust_scarcity = 15 * 15 * 15,
clust_num_ores = 3,
clust_size = 2,
y_min = -1023,
y_max = -256,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_gold",
wherein = "default:stone",
clust_scarcity = 13 * 13 * 13,
clust_num_ores = 5,
clust_size = 3,
y_min = -31000,
y_max = -1024,
})
-- Diamond
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_diamond",
wherein = "default:stone",
clust_scarcity = 15 * 15 * 15,
clust_num_ores = 4,
clust_size = 3,
y_min = 1025,
y_max = 31000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_diamond",
wherein = "default:stone",
clust_scarcity = 17 * 17 * 17,
clust_num_ores = 4,
clust_size = 3,
y_min = -1023,
y_max = -512,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_diamond",
wherein = "default:stone",
clust_scarcity = 15 * 15 * 15,
clust_num_ores = 4,
clust_size = 3,
y_min = -31000,
y_max = -1024,
})
-- Mese crystal
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_mese",
wherein = "default:stone",
clust_scarcity = 14 * 14 * 14,
clust_num_ores = 5,
clust_size = 3,
y_min = 1025,
y_max = 31000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_mese",
wherein = "default:stone",
clust_scarcity = 18 * 18 * 18,
clust_num_ores = 3,
clust_size = 2,
y_min = -1023,
y_max = -512,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_mese",
wherein = "default:stone",
clust_scarcity = 14 * 14 * 14,
clust_num_ores = 5,
clust_size = 3,
y_min = -31000,
y_max = -1024,
})
-- Mese block
minetest.register_ore({
ore_type = "scatter",
ore = "default:mese",
wherein = "default:stone",
clust_scarcity = 36 * 36 * 36,
clust_num_ores = 3,
clust_size = 2,
y_min = 1025,
y_max = 31000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:mese",
wherein = "default:stone",
clust_scarcity = 36 * 36 * 36,
clust_num_ores = 3,
clust_size = 2,
y_min = -2047,
y_max = -1024,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:mese",
wherein = "default:stone",
clust_scarcity = 28 * 28 * 28,
clust_num_ores = 5,
clust_size = 3,
y_min = -31000,
y_max = -2048,
})
end
function default.register_ores()
--ES LIQUIDS
minetest.register_ore({
ore_type = "scatter",
ore = "es:toxic_water_source",
wherein = {"default:dry_dirt", "default:dirt_with_dry_grass","default:dirt", "default:stone"},
clust_scarcity = 24*24*24,
clust_num_ores = 4,
clust_size = 4,
y_min = -9000,
y_max = 5,
})
minetest.register_ore({
ore_type = "sheet",
ore = "es:mud",
wherein = {"default:dry_dirt", "default:dirt_with_dry_grass", "default:dirt"},
clust_scarcity = 11*5*10,
clust_num_ores = 4,
clust_size = 12,
y_min = -31,
y_max = 75,
})
--ES Node Registration and location
minetest.register_ore({
ore_type = "scatter",
ore = "es:stone_with_emeralds",
wherein = "default:stone",
clust_scarcity = 24*24*24,
clust_num_ores = 4,
clust_size = 4,
y_min = -3000,
y_max = -1000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:stone_with_emeralds",
wherein = "default:stone",
clust_scarcity = 24*24*24,
clust_num_ores = 1,
clust_size = 1,
y_min = -2000,
y_max = -1000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:stone_with_rubys",
wherein = "default:stone",
clust_scarcity = 20*20*20,
clust_num_ores = 4,
clust_size = 3,
y_min = -3000,
y_max = -2300,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:stone_with_rubys",
wherein = "default:stone",
clust_scarcity = 20*20*20,
clust_num_ores = 1,
clust_size = 1,
y_min = -3000,
y_max = -1110,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:stone_with_aikerums",
wherein = "default:stone",
clust_scarcity = 23*23*23,
clust_num_ores = 5,
clust_size = 4,
y_min = -31000,
y_max = -3400,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:stone_with_aikerums",
wherein = "default:stone",
clust_scarcity = 23*23*23,
clust_num_ores = 1,
clust_size = 1,
y_min = -4000,
y_max = -3140,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:stone_with_infiniums",
wherein = "default:stone",
clust_scarcity = 20*12*20,
clust_num_ores = 5,
clust_size = 3,
y_min = -31000,
y_max = -4430,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:stone_with_infiniums",
wherein = "default:stone",
clust_scarcity = 16*18*16,
clust_num_ores = 1,
clust_size = 1,
y_min = -4000,
y_max = -1190,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:stone_with_purpelliums",
wherein = "default:stone",
clust_scarcity = 16*18*16,
clust_num_ores = 5,
clust_size = 5,
y_min = -31000,
y_max = -4090,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:depleted_uraniums",
wherein = "default:stone",
clust_scarcity = 54 * 14 * 54,
clust_num_ores = 3,
clust_size = 1,
y_min = -14210,
y_max = -656,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:depleted_uraniums",
wherein = "default:stone",
clust_scarcity = 14 * 14 * 14,
clust_num_ores = 6,
clust_size = 5,
y_min = -15000,
y_max = -3456,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_diamond",
wherein = "default:stone",
clust_scarcity = 14 * 14 * 14,
clust_num_ores = 6,
clust_size = 5,
y_min = -15000,
y_max = -1256,
})
minetest.register_ore({
ore_type = "scatter",
ore = "es:sand_with_diamond",
wherein = "default:sand",
clust_scarcity = 14 * 14 * 14,
clust_num_ores = 2,
clust_size = 1,
y_min = -15000,
y_max = 1256,
})
--liquids
minetest.register_ore({
ore_type = "blob",
ore = "default:lava_source",
wherein = "default:desert_stone",
clust_scarcity = 15*15*10,
clust_num_ores = 2,
clust_size = 2,
y_min = -31000,
y_max = 1140,
})
minetest.register_ore({
ore_type = "blob",
ore = "default:lava_source",
wherein = "default:stone",
clust_scarcity = 25*25*20,
clust_num_ores = 2,
clust_size = 2,
y_min = -31000,
y_max = 1140,
})
minetest.register_ore({
ore_type = "blob",
ore = "default:water_source",
wherein = "default:stone",
clust_scarcity = 15*15*10,
clust_num_ores = 2,
clust_size = 2,
y_min = -20000,
y_max = 1140,
})
-- Scatter ores
-- Coal
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_coal",
wherein = "default:stone",
clust_scarcity = 8 * 8 * 8,
clust_num_ores = 9,
clust_size = 3,
y_min = 1025,
y_max = 31000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_coal",
wherein = "default:stone",
clust_scarcity = 8 * 8 * 8,
clust_num_ores = 8,
clust_size = 3,
y_min = -31000,
y_max = 64,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_coal",
wherein = "default:stone",
clust_scarcity = 24 * 24 * 24,
clust_num_ores = 27,
clust_size = 6,
y_min = -31000,
y_max = 0,
})
-- Iron
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_iron",
wherein = "default:stone",
clust_scarcity = 9 * 9 * 9,
clust_num_ores = 12,
clust_size = 3,
y_min = 1025,
y_max = 31000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_iron",
wherein = "default:stone",
clust_scarcity = 7 * 7 * 7,
clust_num_ores = 5,
clust_size = 3,
y_min = -31000,
y_max = 0,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_iron",
wherein = "default:stone",
clust_scarcity = 24 * 24 * 24,
clust_num_ores = 27,
clust_size = 6,
y_min = -31000,
y_max = -64,
})
-- Tin
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_tin",
wherein = "default:stone",
clust_scarcity = 10 * 10 * 10,
clust_num_ores = 5,
clust_size = 3,
y_min = 1025,
y_max = 31000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_tin",
wherein = "default:stone",
clust_scarcity = 13 * 13 * 13,
clust_num_ores = 4,
clust_size = 3,
y_min = -127,
y_max = -64,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_tin",
wherein = "default:stone",
clust_scarcity = 10 * 10 * 10,
clust_num_ores = 5,
clust_size = 3,
y_min = -31000,
y_max = -128,
})
-- Copper
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_copper",
wherein = "default:stone",
clust_scarcity = 9 * 9 * 9,
clust_num_ores = 5,
clust_size = 3,
y_min = 1025,
y_max = 31000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_copper",
wherein = "default:stone",
clust_scarcity = 12 * 12 * 12,
clust_num_ores = 4,
clust_size = 3,
y_min = -255,
y_max = -128,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_copper",
wherein = "default:stone",
clust_scarcity = 9 * 9 * 9,
clust_num_ores = 5,
clust_size = 3,
y_min = -31000,
y_max = -256,
})
-- Gold
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_gold",
wherein = "default:stone",
clust_scarcity = 13 * 13 * 13,
clust_num_ores = 5,
clust_size = 3,
y_min = 1025,
y_max = 31000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_gold",
wherein = "default:stone",
clust_scarcity = 15 * 15 * 15,
clust_num_ores = 3,
clust_size = 2,
y_min = -1023,
y_max = -256,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_gold",
wherein = "default:stone",
clust_scarcity = 13 * 13 * 13,
clust_num_ores = 5,
clust_size = 3,
y_min = -31000,
y_max = -1024,
})
-- Diamond
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_diamond",
wherein = "default:stone",
clust_scarcity = 15 * 15 * 15,
clust_num_ores = 4,
clust_size = 3,
y_min = 1025,
y_max = 31000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_diamond",
wherein = "default:stone",
clust_scarcity = 17 * 17 * 17,
clust_num_ores = 4,
clust_size = 3,
y_min = -1023,
y_max = -512,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_diamond",
wherein = "default:stone",
clust_scarcity = 15 * 15 * 15,
clust_num_ores = 4,
clust_size = 3,
y_min = -31000,
y_max = -1024,
})
-- Mese crystal
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_mese",
wherein = "default:stone",
clust_scarcity = 14 * 14 * 14,
clust_num_ores = 5,
clust_size = 3,
y_min = 1025,
y_max = 31000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_mese",
wherein = "default:stone",
clust_scarcity = 18 * 18 * 18,
clust_num_ores = 3,
clust_size = 2,
y_min = -1023,
y_max = -512,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:stone_with_mese",
wherein = "default:stone",
clust_scarcity = 14 * 14 * 14,
clust_num_ores = 5,
clust_size = 3,
y_min = -31000,
y_max = -1024,
})
-- Mese block
minetest.register_ore({
ore_type = "scatter",
ore = "default:mese",
wherein = "default:stone",
clust_scarcity = 36 * 36 * 36,
clust_num_ores = 3,
clust_size = 2,
y_min = 1025,
y_max = 31000,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:mese",
wherein = "default:stone",
clust_scarcity = 36 * 36 * 36,
clust_num_ores = 3,
clust_size = 2,
y_min = -2047,
y_max = -1024,
})
minetest.register_ore({
ore_type = "scatter",
ore = "default:mese",
wherein = "default:stone",
clust_scarcity = 28 * 28 * 28,
clust_num_ores = 5,
clust_size = 3,
y_min = -31000,
y_max = -2048,
})
end
function default.register_biomes(upper_limit)
-- Icesheet
minetest.register_biome({
name = "icesheet",
node_dust = "default:stone",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
node_stone = "default:stone",
node_water_top = "default:stone",
depth_water_top = 10,
--node_water = "",
node_river_water = "default:stone",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = -8,
y_max = upper_limit,
heat_point = 0,
humidity_point = 73,
})
minetest.register_biome({
name = "icesheet_ocean",
node_dust = "default:stone",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
node_water_top = "default:stone",
depth_water_top = 10,
--node_water = "",
--node_river_water = "",
y_min = -112,
y_max = -9,
heat_point = 0,
humidity_point = 73,
})
-- Tundra
minetest.register_biome({
name = "tundra",
node_dust = "default:stone",
--node_top = ,
--depth_top = ,
--node_filler = ,
--depth_filler = ,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = 2,
y_max = upper_limit,
heat_point = 0,
humidity_point = 40,
})
minetest.register_biome({
name = "tundra_beach",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 2,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = -3,
y_max = 1,
heat_point = 0,
humidity_point = 40,
})
minetest.register_biome({
name = "tundra_ocean",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = -112,
y_max = -4,
heat_point = 0,
humidity_point = 40,
})
-- Taiga
minetest.register_biome({
name = "taiga",
node_dust = "default:stone",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = 2,
y_max = upper_limit,
heat_point = 25,
humidity_point = 70,
})
minetest.register_biome({
name = "taiga_ocean",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = -112,
y_max = 1,
heat_point = 25,
humidity_point = 70,
})
-- Snowy grassland
minetest.register_biome({
name = "snowy_grassland",
node_dust = "default:stone",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 1,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = 5,
y_max = upper_limit,
heat_point = 20,
humidity_point = 35,
})
minetest.register_biome({
name = "snowy_grassland_ocean",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = -112,
y_max = 4,
heat_point = 20,
humidity_point = 35,
})
-- Grassland
minetest.register_biome({
name = "grassland",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 1,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = 6,
y_max = upper_limit,
heat_point = 50,
humidity_point = 35,
})
minetest.register_biome({
name = "grassland_dunes",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 2,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
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:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = -112,
y_max = 4,
heat_point = 50,
humidity_point = 35,
})
-- Coniferous forest
minetest.register_biome({
name = "coniferous_forest",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = 6,
y_max = upper_limit,
heat_point = 45,
humidity_point = 70,
})
minetest.register_biome({
name = "coniferous_forest_dunes",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = 5,
y_max = 5,
heat_point = 45,
humidity_point = 70,
})
minetest.register_biome({
name = "coniferous_forest_ocean",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = -112,
y_max = 4,
heat_point = 45,
humidity_point = 70,
})
-- Deciduous forest
minetest.register_biome({
name = "deciduous_forest",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = 1,
y_max = upper_limit,
heat_point = 60,
humidity_point = 68,
})
minetest.register_biome({
name = "deciduous_forest_shore",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = -1,
y_max = 0,
heat_point = 60,
humidity_point = 68,
})
minetest.register_biome({
name = "deciduous_forest_ocean",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = -112,
y_max = -2,
heat_point = 60,
humidity_point = 68,
})
-- Desert
minetest.register_biome({
name = "desert",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 1,
node_stone = "default:stone",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = 5,
y_max = upper_limit,
heat_point = 92,
humidity_point = 16,
})
minetest.register_biome({
name = "desert_ocean",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
node_stone = "default:stone",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = -112,
y_max = 4,
heat_point = 92,
humidity_point = 16,
})
-- Sandstone desert
minetest.register_biome({
name = "sandstone_desert",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 1,
node_stone = "default:stone",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = 5,
y_max = upper_limit,
heat_point = 60,
humidity_point = 0,
})
minetest.register_biome({
name = "sandstone_desert_ocean",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
node_stone = "default:stone",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
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:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 1,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = 5,
y_max = upper_limit,
heat_point = 40,
humidity_point = 0,
})
minetest.register_biome({
name = "cold_desert_ocean",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = -112,
y_max = 4,
heat_point = 40,
humidity_point = 0,
})
-- Savanna
minetest.register_biome({
name = "savanna",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 1,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = 1,
y_max = upper_limit,
heat_point = 89,
humidity_point = 42,
})
minetest.register_biome({
name = "savanna_shore",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = -1,
y_max = 0,
heat_point = 89,
humidity_point = 42,
})
minetest.register_biome({
name = "savanna_ocean",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = -112,
y_max = -2,
heat_point = 89,
humidity_point = 42,
})
-- Rainforest
minetest.register_biome({
name = "rainforest",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = 1,
y_max = upper_limit,
heat_point = 86,
humidity_point = 65,
})
minetest.register_biome({
name = "rainforest_swamp",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = -1,
y_max = 0,
heat_point = 86,
humidity_point = 65,
})
minetest.register_biome({
name = "rainforest_ocean",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
node_riverbed = "default:stone",
depth_riverbed = 2,
y_min = -112,
y_max = -2,
heat_point = 86,
humidity_point = 65,
})
-- Underground
minetest.register_biome({
name = "underground",
--node_dust = "",
--node_top = "",
--depth_top = ,
--node_filler = "",
--depth_filler = ,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
y_min = -31000,
y_max = -113,
heat_point = 50,
humidity_point = 50,
})
end
-- Biomes for floatlands
-- TODO Temporary simple biomes to be replaced by special floatland biomes later.
function default.register_floatland_biomes(floatland_level, shadow_limit)
minetest.register_biome({
name = "floatland_grassland",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 1,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
--node_riverbed = "",
--depth_riverbed = ,
y_min = floatland_level + 4,
y_max = 31000,
heat_point = 50,
humidity_point = 50,
})
minetest.register_biome({
name = "floatland_grassland_ocean",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
--node_riverbed = "",
--depth_riverbed = ,
y_min = shadow_limit,
y_max = floatland_level + 3,
heat_point = 50,
humidity_point = 50,
})
end
-- Biomes for floatlands
-- TODO Temporary simple biomes to be replaced by special floatland biomes later.
function default.register_floatland_biomes(floatland_level, shadow_limit)
minetest.register_biome({
name = "floatland_grassland",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 1,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
--node_riverbed = "",
--depth_riverbed = ,
y_min = floatland_level + 4,
y_max = 31000,
heat_point = 50,
humidity_point = 50,
})
minetest.register_biome({
name = "floatland_grassland_ocean",
--node_dust = "",
node_top = "default:stone",
depth_top = 1,
node_filler = "default:stone",
depth_filler = 3,
--node_stone = "",
--node_water_top = "",
--depth_water_top = ,
--node_water = "",
--node_river_water = "",
--node_riverbed = "",
--depth_riverbed = ,
y_min = shadow_limit,
y_max = floatland_level + 3,
heat_point = 50,
humidity_point = 50,
})
end
--
-- Detect mapgen, flags and parameters to select functions
--
-- Get setting or default
local mgv7_spflags = minetest.get_mapgen_setting("mgv7_spflags") or
"mountains, ridges, nofloatlands, caverns"
local captures_float = string.match(mgv7_spflags, "floatlands")
local captures_nofloat = string.match(mgv7_spflags, "nofloatlands")
-- Get setting or default
-- Make global for mods to use to register floatland biomes
default.mgv7_floatland_level =
minetest.get_mapgen_setting("mgv7_floatland_level") or 1280
default.mgv7_shadow_limit =
minetest.get_mapgen_setting("mgv7_shadow_limit") or 1024
minetest.clear_registered_biomes()
minetest.clear_registered_ores()
minetest.clear_registered_decorations()
local mg_name = minetest.get_mapgen_setting("mg_name")
if mg_name == "v6" then
default.register_mgv6_ores()
default.register_mgv6_decorations()
-- Need to check for 'nofloatlands' because that contains
-- 'floatlands' which makes the second condition true.
elseif mg_name == "v7" and
captures_float == "floatlands" and
captures_nofloat ~= "nofloatlands" then
-- Mgv7 with floatlands and floatland biomes
default.register_biomes(default.mgv7_shadow_limit - 1)
default.register_floatland_biomes(
default.mgv7_floatland_level, default.mgv7_shadow_limit)
default.register_ores()
default.register_decorations()
else
default.register_biomes(31000)
default.register_ores()
default.register_decorations()
end