Add flint and flint-and-steel
[oweals/minetest_game.git] / mods / default / mapgen.lua
index 9f96cc35ebeb58dd9c8df8191bcb493b83e6d187..3424a557b0ccd8deb1482b3a50871fe9d4a5fd44 100644 (file)
@@ -2,7 +2,6 @@
 -- Aliases for map generator outputs
 --
 
-minetest.register_alias("mapgen_air", "air")
 minetest.register_alias("mapgen_stone", "default:stone")
 minetest.register_alias("mapgen_dirt", "default:dirt")
 minetest.register_alias("mapgen_dirt_with_grass", "default:dirt_with_grass")
@@ -379,6 +378,24 @@ function default.register_biomes()
                humidity_point = 35,
        })
 
+       minetest.register_biome({
+               name = "tundra_beach",
+               --node_dust = "",
+               node_top = "default:gravel",
+               depth_top = 1,
+               node_filler = "default:gravel",
+               depth_filler = 2,
+               --node_stone = "",
+               --node_water_top = "",
+               --depth_water_top = ,
+               --node_water = "",
+               --node_river_water = "",
+               y_min = -3,
+               y_max = 1,
+               heat_point = 15,
+               humidity_point = 35,
+       })
+
        minetest.register_biome({
                name = "tundra_ocean",
                --node_dust = "",
@@ -392,7 +409,7 @@ function default.register_biomes()
                --node_water = "",
                --node_river_water = "",
                y_min = -112,
-               y_max = 1,
+               y_max = -4,
                heat_point = 15,
                humidity_point = 35,
        })
@@ -967,15 +984,15 @@ end
 function default.register_decorations()
        minetest.clear_registered_decorations()
 
-       -- Apple tree
+       -- Apple tree and log
 
        minetest.register_decoration({
                deco_type = "schematic",
                place_on = {"default:dirt_with_grass"},
                sidelen = 16,
                noise_params = {
-                       offset = 0.04,
-                       scale = 0.02,
+                       offset = 0.036,
+                       scale = 0.022,
                        spread = {x = 250, y = 250, z = 250},
                        seed = 2,
                        octaves = 3,
@@ -988,7 +1005,40 @@ function default.register_decorations()
                flags = "place_center_x, place_center_z",
        })
 
-       -- Jungle tree
+       minetest.register_decoration({
+               deco_type = "schematic",
+               place_on = {"default:dirt_with_grass"},
+               sidelen = 16,
+               noise_params = {
+                       offset = 0.0018,
+                       scale = 0.0011,
+                       spread = {x = 250, y = 250, z = 250},
+                       seed = 2,
+                       octaves = 3,
+                       persist = 0.66
+               },
+               biomes = {"deciduous_forest"},
+               y_min = 1,
+               y_max = 31000,
+               schematic = {
+                       size = {x = 3, y = 3, z = 1},
+                       data = {
+                               {name = "air", prob = 0},
+                               {name = "air", prob = 0},
+                               {name = "air", prob = 0},
+                               {name = "default:tree", param2 = 12, prob = 191},
+                               {name = "default:tree", param2 = 12},
+                               {name = "default:tree", param2 = 12, prob = 127},
+                               {name = "air", prob = 0},
+                               {name = "flowers:mushroom_brown", prob = 63},
+                               {name = "air", prob = 0},
+                       },
+               },
+               flags = "place_center_x",
+               rotation = "random",
+       })
+
+       -- Jungle tree and log
 
        minetest.register_decoration({
                deco_type = "schematic",
@@ -1003,15 +1053,41 @@ function default.register_decorations()
                rotation = "random",
        })
 
-       -- Taiga and temperate coniferous forest pine tree
+       minetest.register_decoration({
+               deco_type = "schematic",
+               place_on = {"default:dirt_with_grass", "default:dirt"},
+               sidelen = 80,
+               fill_ratio = 0.01,
+               biomes = {"rainforest", "rainforest_swamp"},
+               y_min = 1,
+               y_max = 31000,
+               schematic = {
+                       size = {x = 3, y = 3, z = 1},
+                       data = {
+                               {name = "air", prob = 0},
+                               {name = "air", prob = 0},
+                               {name = "air", prob = 0},
+                               {name = "default:jungletree", param2 = 12, prob = 191},
+                               {name = "default:jungletree", param2 = 12},
+                               {name = "default:jungletree", param2 = 12, prob = 127},
+                               {name = "air", prob = 0},
+                               {name = "flowers:mushroom_brown", prob = 127},
+                               {name = "air", prob = 0},
+                       },
+               },
+               flags = "place_center_x",
+               rotation = "random",
+       })
+
+       -- Taiga and temperate coniferous forest pine tree and log
 
        minetest.register_decoration({
                deco_type = "schematic",
                place_on = {"default:dirt_with_snow", "default:dirt_with_grass"},
                sidelen = 16,
                noise_params = {
-                       offset = 0.04,
-                       scale = 0.02,
+                       offset = 0.036,
+                       scale = 0.022,
                        spread = {x = 250, y = 250, z = 250},
                        seed = 2,
                        octaves = 3,
@@ -1024,7 +1100,40 @@ function default.register_decorations()
                flags = "place_center_x, place_center_z",
        })
 
-       -- Acacia tree
+       minetest.register_decoration({
+               deco_type = "schematic",
+               place_on = {"default:dirt_with_snow", "default:dirt_with_grass"},
+               sidelen = 80,
+               noise_params = {
+                       offset = 0.0018,
+                       scale = 0.0011,
+                       spread = {x = 250, y = 250, z = 250},
+                       seed = 2,
+                       octaves = 3,
+                       persist = 0.66
+               },
+               biomes = {"taiga", "coniferous_forest"},
+               y_min = 1,
+               y_max = 31000,
+               schematic = {
+                       size = {x = 3, y = 3, z = 1},
+                       data = {
+                               {name = "air", prob = 0},
+                               {name = "air", prob = 0},
+                               {name = "air", prob = 0},
+                               {name = "default:pine_tree", param2 = 12, prob = 191},
+                               {name = "default:pine_tree", param2 = 12},
+                               {name = "default:pine_tree", param2 = 12, prob = 127},
+                               {name = "air", prob = 0},
+                               {name = "flowers:mushroom_red", prob = 63},
+                               {name = "air", prob = 0},
+                       },
+               },
+               flags = "place_center_x",
+               rotation = "random",
+       })
+
+       -- Acacia tree and log
 
        minetest.register_decoration({
                deco_type = "schematic",
@@ -1046,6 +1155,90 @@ function default.register_decorations()
                rotation = "random",
        })
 
+       minetest.register_decoration({
+               deco_type = "schematic",
+               place_on = {"default:dirt_with_dry_grass"},
+               sidelen = 16,
+               noise_params = {
+                       offset = 0,
+                       scale = 0.001,
+                       spread = {x = 250, y = 250, z = 250},
+                       seed = 2,
+                       octaves = 3,
+                       persist = 0.66
+               },
+               biomes = {"savanna"},
+               y_min = 1,
+               y_max = 31000,
+               schematic = {
+                       size = {x = 3, y = 2, z = 1},
+                       data = {
+                               {name = "air", prob = 0},
+                               {name = "air", prob = 0},
+                               {name = "air", prob = 0},
+                               {name = "default:acacia_tree", param2 = 12, prob = 191},
+                               {name = "default:acacia_tree", param2 = 12},
+                               {name = "default:acacia_tree", param2 = 12, prob = 127},
+                       },
+               },
+               flags = "place_center_x",
+               rotation = "random",
+       })
+
+       -- Aspen tree and log
+
+       minetest.register_decoration({
+               deco_type = "schematic",
+               place_on = {"default:dirt_with_grass"},
+               sidelen = 16,
+               noise_params = {
+                       offset = 0.0,
+                       scale = -0.015,
+                       spread = {x = 250, y = 250, z = 250},
+                       seed = 2,
+                       octaves = 3,
+                       persist = 0.66
+               },
+               biomes = {"deciduous_forest"},
+               y_min = 1,
+               y_max = 31000,
+               schematic = minetest.get_modpath("default").."/schematics/aspen_tree.mts",
+               flags = "place_center_x, place_center_z",
+               rotation = "random",
+       })
+
+       minetest.register_decoration({
+               deco_type = "schematic",
+               place_on = {"default:dirt_with_grass"},
+               sidelen = 16,
+               noise_params = {
+                       offset = 0.0,
+                       scale = -0.0008,
+                       spread = {x = 250, y = 250, z = 250},
+                       seed = 2,
+                       octaves = 3,
+                       persist = 0.66
+               },
+               biomes = {"deciduous_forest"},
+               y_min = 1,
+               y_max = 31000,
+               schematic = {
+                       size = {x = 3, y = 3, z = 1},
+                       data = {
+                               {name = "air", prob = 0},
+                               {name = "air", prob = 0},
+                               {name = "air", prob = 0},
+                               {name = "default:aspen_tree", param2 = 12},
+                               {name = "default:aspen_tree", param2 = 12},
+                               {name = "default:aspen_tree", param2 = 12, prob = 127},
+                               {name = "flowers:mushroom_red", prob = 63},
+                               {name = "flowers:mushroom_brown", prob = 63},
+                               {name = "air", prob = 0},
+                       },
+               },
+               flags = "place_center_x",
+               rotation = "random",
+       })
        -- Large cactus
 
        minetest.register_decoration({
@@ -1226,8 +1419,8 @@ if mg_params.mgname == "v6" then
        default.register_mgv6_decorations()
        minetest.register_on_generated(default.generate_nyancats)
 elseif mg_params.mgname ~= "singlenode" then
-       default.register_ores()
        default.register_biomes()
+       default.register_ores()
        default.register_decorations()
        minetest.register_on_generated(default.generate_nyancats)
 end