local mod_mcl_core = minetest.get_modpath("mcl_core") -- Mesa Plateau FM aka Modified Wooded Badlands Plateau -- Dryer and more "chaotic"/"weathered down" variant of MesaPlateauF: -- oak forest is less dense, more coarse dirt, more erratic terrain, vertical blend, more red sand layers, -- red sand as ores, red sandstone at sandlevel vl_biomes.register_biome({ name = "MesaPlateauFM", node_top = "mcl_colorblocks:hardened_clay", depth_top = 1, node_filler = "mcl_colorblocks:hardened_clay", node_riverbed = "mcl_core:redsand", depth_riverbed = 2, node_stone = "mcl_colorblocks:hardened_clay", y_min = 12, y_max = 29, humidity_point = -5, heat_point = 60, vertical_blend = 5, _mcl_biome_type = "hot", _mcl_water_temp = "warm", _mcl_grass_palette_index = 22, _mcl_foliage_palette_index = 4, _mcl_water_palette_index = 3, _mcl_skycolor = "#6EB1FF", -- Grass plateau _grasstop = { node_top = "mcl_core:dirt_with_grass", depth_top = 1, node_filler = "mcl_core:coarse_dirt", depth_filler = 2, node_riverbed = "mcl_core:redsand", depth_riverbed = 1, y_min = 30, y_max = vl_biomes.overworld_max, }, _sandlevel = { node_top = "mcl_core:redsand", depth_top = 3, node_filler = "mcl_colorblocks:hardened_clay_orange", depth_filler = 3, node_stone = "mcl_colorblocks:hardened_clay", -- red sand has wider reach than in other mesa biomes y_min = -7, y_max = 11, vertical_blend = 4, }, _ocean = { node_top = "mcl_core:sand", depth_top = 3, node_filler = "mcl_core:sand", depth_filler = 3, node_riverbed = "mcl_core:sand", depth_riverbed = 3, y_min = vl_biomes.OCEAN_MIN, y_max = -8, vertical_blend = 2, }, }) minetest.register_ore({ ore_type = "sheet", ore = "mcl_core:coarse_dirt", wherein = {"mcl_core:dirt_with_grass", "mcl_core:dirt"}, column_height_max = 1, column_midpoint_factor = 0.0, y_min = vl_biomes.overworld_min, y_max = vl_biomes.overworld_max, noise_threshold = -2.5, noise_params = {offset = 1, scale = 15, spread = vector.new(250, 250, 250), seed = 24, octaves = 3, persist = 0.80}, biomes = {"MesaPlateauFM_grasstop"}, }) minetest.register_ore({ ore_type = "blob", ore = "mcl_core:coarse_dirt", wherein = {"mcl_core:dirt_with_grass", "mcl_core:dirt"}, clust_scarcity = 1800, clust_num_ores = 65, clust_size = 15, y_min = vl_biomes.overworld_min, y_max = vl_biomes.overworld_max, noise_params = { offset = 0, scale = 1, spread = vector.new(250, 250, 250), seed = 12345, octaves = 3, persist = 0.6, lacunarity = 2, flags = "defaults", }, biomes = {"MesaPlateauFM_grasstop"}, }) -- Occasionally dig out portions of MesaPlateauFM minetest.register_ore({ ore_type = "blob", ore = "air", wherein = {"group:hardened_clay", "group:sand", "mcl_core:coarse_dirt"}, clust_scarcity = 4000, clust_size = 5, y_min = vl_biomes.overworld_min, y_max = vl_biomes.overworld_max, noise_params = { offset = 0, scale = 1, spread = vector.new(250, 250, 250), seed = 12345, octaves = 3, persist = 0.6, lacunarity = 2, flags = "defaults", }, biomes = {"MesaPlateauFM", "MesaPlateauFM_grasstop"}, }) minetest.register_ore({ ore_type = "blob", ore = "mcl_core:redsandstone", wherein = {"mcl_colorblocks:hardened_clay_orange"}, clust_scarcity = 300, clust_size = 8, y_min = vl_biomes.overworld_min, y_max = vl_biomes.overworld_max, noise_params = { offset = 0, scale = 1, spread = vector.new(250, 250, 250), seed = 12345, octaves = 3, persist = 0.6, lacunarity = 2, flags = "defaults", }, biomes = {"MesaPlateauFM_sandlevel"}, }) -- More red sand in MesaPlateauFM minetest.register_ore({ ore_type = "sheet", ore = "mcl_core:redsand", wherein = {"group:hardened_clay"}, clust_scarcity = 1, clust_num_ores = 12, clust_size = 10, y_min = vl_biomes.overworld_min, y_max = vl_biomes.overworld_max, noise_threshold = 0.1, noise_params = {offset = 0, scale = 15, spread = vector.new(130, 130, 130), seed = 95, octaves = 3, persist = 0.70}, biomes = {"MesaPlateauFM"}, }) minetest.register_ore({ ore_type = "blob", ore = "mcl_core:redsand", wherein = {"group:hardened_clay"}, clust_scarcity = 1500, clust_size = 4, y_min = vl_biomes.overworld_min, y_max = vl_biomes.overworld_max, noise_params = { offset = 0, scale = 1, spread = vector.new(250, 250, 250), seed = 12345, octaves = 3, persist = 0.6, lacunarity = 2, flags = "defaults", }, biomes = {"MesaPlateauFM", "MesaPlateauFM_grasstop", "MesaPlateauFM_sandlevel"}, }) -- Small “classic” oak (many biomes) mcl_mapgen_core.register_decoration({ deco_type = "schematic", place_on = {"mcl_core:dirt_with_grass", "mcl_core:dirt"}, sidelen = 16, noise_params = { offset = 0.008, scale = 0.002, spread = vector.new(250, 250, 250), seed = 2, octaves = 3, persist = 0.7 }, biomes = {"MesaPlateauFM_grasstop"}, y_min = 30, y_max = vl_biomes.overworld_max, schematic = mod_mcl_core .. "/schematics/mcl_core_oak_classic.mts", flags = "place_center_x, place_center_z", rotation = "random", _mcl_foliage_palette_index = 4, })