forked from MineClone5/MineClone5
Tweak Nether ore and lava generation
This commit is contained in:
parent
b7c12e82e4
commit
d90b59c918
|
@ -59,6 +59,7 @@ mcl_vars.mg_bedrock_nether_bottom_min = mcl_vars.mg_nether_min
|
||||||
mcl_vars.mg_bedrock_nether_bottom_max = mcl_vars.mg_bedrock_nether_bottom_min + 4
|
mcl_vars.mg_bedrock_nether_bottom_max = mcl_vars.mg_bedrock_nether_bottom_min + 4
|
||||||
mcl_vars.mg_bedrock_nether_top_max = mcl_vars.mg_nether_max
|
mcl_vars.mg_bedrock_nether_top_max = mcl_vars.mg_nether_max
|
||||||
mcl_vars.mg_bedrock_nether_top_min = mcl_vars.mg_bedrock_nether_top_max - 4
|
mcl_vars.mg_bedrock_nether_top_min = mcl_vars.mg_bedrock_nether_top_max - 4
|
||||||
|
mcl_vars.mg_lava_nether_max = mcl_vars.mg_nether_min + 31
|
||||||
|
|
||||||
-- The End
|
-- The End
|
||||||
mcl_vars.mg_end_min = mcl_vars.mg_nether_max + 2000
|
mcl_vars.mg_end_min = mcl_vars.mg_nether_max + 2000
|
||||||
|
|
|
@ -554,7 +554,6 @@ local function register_biomes()
|
||||||
--[[ REALMS ]]
|
--[[ REALMS ]]
|
||||||
-- TODO: Make these work in v6, too.
|
-- TODO: Make these work in v6, too.
|
||||||
|
|
||||||
|
|
||||||
--[[ THE NETHER ]]
|
--[[ THE NETHER ]]
|
||||||
|
|
||||||
minetest.register_biome({
|
minetest.register_biome({
|
||||||
|
@ -565,34 +564,24 @@ local function register_biomes()
|
||||||
-- FIXME: For some reason the Nether stops generating early if this constant is not added.
|
-- FIXME: For some reason the Nether stops generating early if this constant is not added.
|
||||||
-- Figure out why.
|
-- Figure out why.
|
||||||
y_max = mcl_vars.mg_nether_max + 80,
|
y_max = mcl_vars.mg_nether_max + 80,
|
||||||
heat_point = 50,
|
heat_point = 100,
|
||||||
humidity_point = 50,
|
humidity_point = 0,
|
||||||
})
|
})
|
||||||
|
|
||||||
-- TODO: Giant Nether lava seas
|
--[[ THE END ]]
|
||||||
--[[ The End ]]
|
|
||||||
|
|
||||||
minetest.register_biome({
|
minetest.register_biome({
|
||||||
name = "end",
|
name = "end",
|
||||||
node_filler = "mcl_end:end_stone",
|
node_filler = "mcl_end:end_stone",
|
||||||
node_stone = "mcl_end:end_stone",
|
node_stone = "mcl_end:end_stone",
|
||||||
y_min = mcl_vars.mg_end_min,
|
y_min = mcl_vars.mg_end_min,
|
||||||
y_max = mcl_vars.mg_end_max,
|
-- FIXME: For some reason the Nether stops generating early if this constant is not added.
|
||||||
|
-- Figure out why.
|
||||||
|
y_max = mcl_vars.mg_end_max + 80,
|
||||||
heat_point = 50,
|
heat_point = 50,
|
||||||
humidity_point = 50,
|
humidity_point = 50,
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Realm barrier to separate the top of the End realm from the void below the Overworld
|
|
||||||
-- TODO: Implement differently
|
|
||||||
minetest.register_biome({
|
|
||||||
name = "end_barrier",
|
|
||||||
node_filler = "mcl_core:realm_barrier",
|
|
||||||
node_stone = "mcl_core:realm_barrier",
|
|
||||||
y_min = mcl_vars.mg_end_max + 1,
|
|
||||||
y_max = mcl_vars.mg_end_max + 12,
|
|
||||||
heat_point = 50,
|
|
||||||
humidity_point = 50,
|
|
||||||
})
|
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -841,17 +830,6 @@ local function register_biomelike_ores()
|
||||||
|
|
||||||
--[[ NETHER GENERATION ]]
|
--[[ NETHER GENERATION ]]
|
||||||
|
|
||||||
minetest.register_ore({
|
|
||||||
ore_type = "scatter",
|
|
||||||
ore = "mcl_nether:quartz_ore",
|
|
||||||
wherein = {"mcl_nether:netherrack"},
|
|
||||||
clust_scarcity = 10*10*10,
|
|
||||||
clust_num_ores = 6,
|
|
||||||
clust_size = 5,
|
|
||||||
y_min = mcl_vars.mg_nether_min,
|
|
||||||
y_max = mcl_vars.mg_nether_max,
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Soul sand
|
-- Soul sand
|
||||||
minetest.register_ore({
|
minetest.register_ore({
|
||||||
ore_type = "sheet",
|
ore_type = "sheet",
|
||||||
|
@ -860,7 +838,7 @@ local function register_biomelike_ores()
|
||||||
clust_scarcity = 13 * 13 * 13,
|
clust_scarcity = 13 * 13 * 13,
|
||||||
clust_size = 5,
|
clust_size = 5,
|
||||||
y_min = mcl_vars.mg_nether_min,
|
y_min = mcl_vars.mg_nether_min,
|
||||||
y_max = mcl_vars.mg_nether_max,
|
y_max = mcl_util.layer_to_y(64, "nether"),
|
||||||
noise_threshold = 0.0,
|
noise_threshold = 0.0,
|
||||||
noise_params = {
|
noise_params = {
|
||||||
offset = 0.5,
|
offset = 0.5,
|
||||||
|
@ -874,34 +852,24 @@ local function register_biomelike_ores()
|
||||||
|
|
||||||
-- Magma blocks
|
-- Magma blocks
|
||||||
minetest.register_ore({
|
minetest.register_ore({
|
||||||
ore_type = "sheet",
|
ore_type = "blob",
|
||||||
ore = "mcl_nether:magma",
|
ore = "mcl_nether:magma",
|
||||||
wherein = {"mcl_nether:netherrack", "mcl_core:lava_source"},
|
wherein = {"mcl_nether:netherrack"},
|
||||||
clust_scarcity = 13 * 13 * 13,
|
clust_scarcity = 15*15*15,
|
||||||
|
clust_num_ores = 33,
|
||||||
clust_size = 5,
|
clust_size = 5,
|
||||||
y_min = mcl_vars.mg_nether_min,
|
y_min = mcl_util.layer_to_y(23, "nether"),
|
||||||
y_max = mcl_vars.mg_nether_max,
|
y_max = mcl_util.layer_to_y(37, "nether"),
|
||||||
noise_threshold = 0.0,
|
|
||||||
noise_params = {
|
|
||||||
offset = 0.5,
|
|
||||||
scale = 0.1,
|
|
||||||
spread = {x = 5, y = 5, z = 5},
|
|
||||||
seed = 2316,
|
|
||||||
octaves = 1,
|
|
||||||
persist = 0.0
|
|
||||||
},
|
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
-- Glowstone
|
-- Glowstone
|
||||||
|
|
||||||
minetest.register_ore({
|
minetest.register_ore({
|
||||||
ore_type = "blob",
|
ore_type = "blob",
|
||||||
ore = "mcl_nether:glowstone",
|
ore = "mcl_nether:glowstone",
|
||||||
wherein = {"mcl_nether:netherrack"},
|
wherein = {"mcl_nether:netherrack"},
|
||||||
clust_scarcity = 26 * 26 * 26,
|
clust_scarcity = 26 * 26 * 26,
|
||||||
clust_size = 5,
|
clust_size = 5,
|
||||||
y_min = mcl_vars.mg_nether_min,
|
y_min = mcl_vars.mg_lava_nether_max + 10,
|
||||||
y_max = mcl_vars.mg_nether_max,
|
y_max = mcl_vars.mg_nether_max,
|
||||||
noise_threshold = 0.0,
|
noise_threshold = 0.0,
|
||||||
noise_params = {
|
noise_params = {
|
||||||
|
@ -914,21 +882,42 @@ local function register_biomelike_ores()
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Gravel
|
-- Nether quartz
|
||||||
|
minetest.register_ore({
|
||||||
|
ore_type = "scatter",
|
||||||
|
ore = "mcl_nether:quartz_ore",
|
||||||
|
wherein = {"mcl_nether:netherrack"},
|
||||||
|
clust_scarcity = 850,
|
||||||
|
clust_num_ores = 4, -- MC cluster amount: 4-10
|
||||||
|
clust_size = 3,
|
||||||
|
y_min = mcl_vars.mg_nether_min,
|
||||||
|
y_max = mcl_vars.mg_nether_max,
|
||||||
|
})
|
||||||
|
minetest.register_ore({
|
||||||
|
ore_type = "scatter",
|
||||||
|
ore = "mcl_nether:quartz_ore",
|
||||||
|
wherein = {"mcl_nether:netherrack"},
|
||||||
|
clust_scarcity = 1650,
|
||||||
|
clust_num_ores = 8, -- MC cluster amount: 4-10
|
||||||
|
clust_size = 4,
|
||||||
|
y_min = mcl_vars.mg_nether_min,
|
||||||
|
y_max = mcl_vars.mg_nether_max,
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Gravel (Nether)
|
||||||
minetest.register_ore({
|
minetest.register_ore({
|
||||||
ore_type = "sheet",
|
ore_type = "sheet",
|
||||||
ore = "mcl_core:gravel",
|
ore = "mcl_core:gravel",
|
||||||
wherein = {"mcl_nether:netherrack"},
|
wherein = {"mcl_nether:netherrack"},
|
||||||
clust_scarcity = 16 * 16 * 16,
|
clust_scarcity = 16 * 16 * 16,
|
||||||
clust_size = 5,
|
clust_size = 5,
|
||||||
y_min = mcl_vars.mg_nether_min,
|
y_min = mcl_util.layer_to_y(63, "nether"),
|
||||||
y_max = mcl_vars.mg_nether_max,
|
y_max = mcl_util.layer_to_y(65, "nether"),
|
||||||
noise_threshold = 0.0,
|
noise_threshold = 0.0,
|
||||||
noise_params = {
|
noise_params = {
|
||||||
offset = 0.5,
|
offset = 0.5,
|
||||||
scale = 0.2,
|
scale = 0.2,
|
||||||
spread = {x = 5, y = 5, z = 5},
|
spread = {x = 5, y = 1, z = 5},
|
||||||
seed = 766,
|
seed = 766,
|
||||||
octaves = 1,
|
octaves = 1,
|
||||||
persist = 0.0
|
persist = 0.0
|
||||||
|
@ -936,11 +925,10 @@ local function register_biomelike_ores()
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Lava in the Nether
|
-- Lava in the Nether
|
||||||
|
|
||||||
minetest.register_ore({
|
minetest.register_ore({
|
||||||
ore_type = "scatter",
|
ore_type = "scatter",
|
||||||
ore = "mcl_nether:nether_lava_source",
|
ore = "mcl_nether:nether_lava_source",
|
||||||
wherein = {"mcl_nether:netherrack", "air"},
|
wherein = {"mcl_nether:netherrack"},
|
||||||
clust_scarcity = 12 *12 * 12,
|
clust_scarcity = 12 *12 * 12,
|
||||||
clust_num_ores = 2,
|
clust_num_ores = 2,
|
||||||
clust_size = 2,
|
clust_size = 2,
|
||||||
|
|
|
@ -1215,6 +1215,7 @@ minetest.register_on_generated(function(minp, maxp)
|
||||||
local c_bedrock = minetest.get_content_id("mcl_core:bedrock")
|
local c_bedrock = minetest.get_content_id("mcl_core:bedrock")
|
||||||
local c_void = minetest.get_content_id("mcl_core:void")
|
local c_void = minetest.get_content_id("mcl_core:void")
|
||||||
local c_lava = minetest.get_content_id("mcl_core:lava_source")
|
local c_lava = minetest.get_content_id("mcl_core:lava_source")
|
||||||
|
local c_nether_lava = minetest.get_content_id("mcl_nether:nether_lava_source")
|
||||||
local c_air = minetest.get_content_id("air")
|
local c_air = minetest.get_content_id("air")
|
||||||
|
|
||||||
local max_y = math.min(maxp.y, GEN_MAX)
|
local max_y = math.min(maxp.y, GEN_MAX)
|
||||||
|
@ -1275,11 +1276,14 @@ minetest.register_on_generated(function(minp, maxp)
|
||||||
if setdata then
|
if setdata then
|
||||||
data[p_pos] = setdata
|
data[p_pos] = setdata
|
||||||
lvm_used = true
|
lvm_used = true
|
||||||
elseif mcl_vars.mg_lava and y <= mcl_vars.mg_lava_overworld_max and y >= mcl_vars.mg_overworld_min then
|
elseif mcl_vars.mg_lava and data[p_pos] == c_air then
|
||||||
if data[p_pos] == c_air then
|
if y <= mcl_vars.mg_lava_overworld_max and y >= mcl_vars.mg_overworld_min then
|
||||||
data[p_pos] = c_lava
|
data[p_pos] = c_lava
|
||||||
end
|
|
||||||
lvm_used = true
|
lvm_used = true
|
||||||
|
elseif y <= mcl_vars.mg_lava_nether_max and y >= mcl_vars.mg_nether_min then
|
||||||
|
data[p_pos] = c_nether_lava
|
||||||
|
lvm_used = true
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue