From ef2b11dbeec685e81428a1a885e04f70569311c9 Mon Sep 17 00:00:00 2001 From: N-Nachtigal Date: Thu, 15 May 2025 00:49:46 +0200 Subject: [PATCH] =?UTF-8?q?Mods=20hinzugef=C3=BCgt=20und=20ge=C3=A4ndert.?= =?UTF-8?q?=20H=C3=B6hlen,=20Himmelsinseln=20und=20Asteroiden.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mods/caverealms/biomes.lua | 160 +- mods/caverealms/config.lua | 10 +- mods/cloudlands/.luacheckrc | 28 + mods/cloudlands/LICENSE.txt | 26 + mods/cloudlands/README.md | 56 + mods/cloudlands/bower.json | 21 + mods/cloudlands/cloudlands.lua | 2967 +++++++++++++++++ mods/cloudlands/cloudlands_tree1.mts | Bin 0 -> 44408 bytes mods/cloudlands/cloudlands_tree2.mts | Bin 0 -> 25065 bytes mods/cloudlands/i18n.py | 426 +++ mods/cloudlands/init.lua | 3 + mods/cloudlands/locale/template.txt | 33 + mods/cloudlands/mod.conf | 16 + mods/cloudlands/screenshot.png | Bin 0 -> 379142 bytes mods/cloudlands/settingtypes.txt | 70 + mods/ethereal/biomes.lua | 28 +- mods/ethereal/decor.lua | 6 +- mods/everness/api.lua | 16 +- mods/everness/settingtypes.txt | 16 +- mods/nether/nether/init.lua | 2 +- mods/nether/nether/settings.lua | 2 +- mods/nether/nether/settingtypes.txt | 2 +- mods/other_worlds/README.md | 34 + mods/other_worlds/asteroid_layer_helpers.lua | 311 ++ mods/other_worlds/crafting.lua | 47 + mods/other_worlds/init.lua | 26 + mods/other_worlds/license.txt | 38 + mods/other_worlds/mod.conf | 8 + mods/other_worlds/models/crystal_shape01.obj | 228 ++ mods/other_worlds/models/crystal_shape02.obj | 198 ++ mods/other_worlds/nodes.lua | 311 ++ mods/other_worlds/redsky_asteroids.lua | 72 + mods/other_worlds/screenshot.png | Bin 0 -> 91225 bytes mods/other_worlds/settings.lua | 45 + mods/other_worlds/settingtypes.txt | 13 + mods/other_worlds/skybox.lua | 220 ++ mods/other_worlds/space_asteroids.lua | 26 + mods/other_worlds/textures/asteroid_atmos.png | Bin 0 -> 96 bytes .../other_worlds/textures/asteroid_cobble.png | Bin 0 -> 272 bytes mods/other_worlds/textures/asteroid_dust.png | Bin 0 -> 245 bytes .../other_worlds/textures/asteroid_gravel.png | Bin 0 -> 172 bytes .../textures/asteroid_redcobble.png | Bin 0 -> 424 bytes .../textures/asteroid_reddust.png | Bin 0 -> 332 bytes .../textures/asteroid_redgravel.png | Bin 0 -> 172 bytes .../textures/asteroid_redstone.png | Bin 0 -> 329 bytes .../textures/crystals_ghost_crystal.png | Bin 0 -> 987 bytes .../textures/crystals_red_crystal.png | Bin 0 -> 2045 bytes .../textures/crystals_rose_quartz.png | Bin 0 -> 2048 bytes mods/other_worlds/textures/mars_grass_1.png | Bin 0 -> 167 bytes mods/other_worlds/textures/mars_grass_2.png | Bin 0 -> 174 bytes mods/other_worlds/textures/mars_grass_3.png | Bin 0 -> 232 bytes mods/other_worlds/textures/mars_grass_4.png | Bin 0 -> 259 bytes mods/other_worlds/textures/mars_grass_5.png | Bin 0 -> 315 bytes mods/other_worlds/textures/mars_moss.png | Bin 0 -> 216 bytes mods/other_worlds/textures/mars_redgrass.png | Bin 0 -> 197 bytes mods/other_worlds/textures/mars_redweed.png | Bin 0 -> 173 bytes mods/other_worlds/textures/sky_neg_x.png | Bin 0 -> 99566 bytes mods/other_worlds/textures/sky_neg_y.png | Bin 0 -> 109650 bytes mods/other_worlds/textures/sky_neg_z.png | Bin 0 -> 124166 bytes mods/other_worlds/textures/sky_pos_x.png | Bin 0 -> 112398 bytes mods/other_worlds/textures/sky_pos_y.png | Bin 0 -> 129902 bytes mods/other_worlds/textures/sky_pos_z.png | Bin 0 -> 94203 bytes 62 files changed, 5344 insertions(+), 121 deletions(-) create mode 100644 mods/cloudlands/.luacheckrc create mode 100644 mods/cloudlands/LICENSE.txt create mode 100644 mods/cloudlands/README.md create mode 100644 mods/cloudlands/bower.json create mode 100644 mods/cloudlands/cloudlands.lua create mode 100644 mods/cloudlands/cloudlands_tree1.mts create mode 100644 mods/cloudlands/cloudlands_tree2.mts create mode 100644 mods/cloudlands/i18n.py create mode 100644 mods/cloudlands/init.lua create mode 100644 mods/cloudlands/locale/template.txt create mode 100644 mods/cloudlands/mod.conf create mode 100644 mods/cloudlands/screenshot.png create mode 100644 mods/cloudlands/settingtypes.txt create mode 100644 mods/other_worlds/README.md create mode 100644 mods/other_worlds/asteroid_layer_helpers.lua create mode 100644 mods/other_worlds/crafting.lua create mode 100644 mods/other_worlds/init.lua create mode 100644 mods/other_worlds/license.txt create mode 100644 mods/other_worlds/mod.conf create mode 100644 mods/other_worlds/models/crystal_shape01.obj create mode 100644 mods/other_worlds/models/crystal_shape02.obj create mode 100644 mods/other_worlds/nodes.lua create mode 100644 mods/other_worlds/redsky_asteroids.lua create mode 100644 mods/other_worlds/screenshot.png create mode 100644 mods/other_worlds/settings.lua create mode 100644 mods/other_worlds/settingtypes.txt create mode 100644 mods/other_worlds/skybox.lua create mode 100644 mods/other_worlds/space_asteroids.lua create mode 100644 mods/other_worlds/textures/asteroid_atmos.png create mode 100644 mods/other_worlds/textures/asteroid_cobble.png create mode 100644 mods/other_worlds/textures/asteroid_dust.png create mode 100644 mods/other_worlds/textures/asteroid_gravel.png create mode 100644 mods/other_worlds/textures/asteroid_redcobble.png create mode 100644 mods/other_worlds/textures/asteroid_reddust.png create mode 100644 mods/other_worlds/textures/asteroid_redgravel.png create mode 100644 mods/other_worlds/textures/asteroid_redstone.png create mode 100644 mods/other_worlds/textures/crystals_ghost_crystal.png create mode 100644 mods/other_worlds/textures/crystals_red_crystal.png create mode 100644 mods/other_worlds/textures/crystals_rose_quartz.png create mode 100644 mods/other_worlds/textures/mars_grass_1.png create mode 100644 mods/other_worlds/textures/mars_grass_2.png create mode 100644 mods/other_worlds/textures/mars_grass_3.png create mode 100644 mods/other_worlds/textures/mars_grass_4.png create mode 100644 mods/other_worlds/textures/mars_grass_5.png create mode 100644 mods/other_worlds/textures/mars_moss.png create mode 100644 mods/other_worlds/textures/mars_redgrass.png create mode 100644 mods/other_worlds/textures/mars_redweed.png create mode 100644 mods/other_worlds/textures/sky_neg_x.png create mode 100644 mods/other_worlds/textures/sky_neg_y.png create mode 100644 mods/other_worlds/textures/sky_neg_z.png create mode 100644 mods/other_worlds/textures/sky_pos_x.png create mode 100644 mods/other_worlds/textures/sky_pos_y.png create mode 100644 mods/other_worlds/textures/sky_pos_z.png diff --git a/mods/caverealms/biomes.lua b/mods/caverealms/biomes.lua index 6c432c74..5a914a8f 100644 --- a/mods/caverealms/biomes.lua +++ b/mods/caverealms/biomes.lua @@ -17,8 +17,8 @@ minetest.register_decoration({ place_on = "default:stone", fill_ratio = 10, biomes = asuna.features.cave.moss, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, decoration = moss_cave_surface, flags = "all_floors,force_placement", @@ -32,8 +32,8 @@ minetest.register_decoration({ num_spawn_by = 8, fill_ratio = 0.000085, biomes = asuna.features.cave.moss, - y_max = -16, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, schematic = spath .. "emerald_stalagmite.mts", flags = "all_floors,place_center_x,place_center_z", @@ -47,8 +47,8 @@ minetest.register_decoration({ num_spawn_by = 8, fill_ratio = 0.000085, biomes = asuna.features.cave.moss, - y_max = -16, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, schematic = spath .. "emerald_stalactite.mts", flags = "all_ceilings,place_center_x,place_center_z", @@ -62,8 +62,8 @@ minetest.register_decoration({ num_spawn_by = 8, fill_ratio = 0.000085, biomes = asuna.features.cave.moss, - y_max = -16, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, schematic = spath .. "sapphire_stalagmite.mts", flags = "all_floors,place_center_x,place_center_z", @@ -77,8 +77,8 @@ minetest.register_decoration({ num_spawn_by = 8, fill_ratio = 0.000085, biomes = asuna.features.cave.moss, - y_max = -16, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, schematic = spath .. "sapphire_stalactite.mts", flags = "all_ceilings,place_center_x,place_center_z", @@ -90,8 +90,8 @@ minetest.register_decoration({ place_on = moss_cave_surface, fill_ratio = 0.00625, biomes = asuna.features.cave.moss, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, decoration = "caverealms:glow_gem", flags = "all_floors", }) @@ -102,8 +102,8 @@ minetest.register_decoration({ place_on = "default:stone", fill_ratio = 0.0175, biomes = asuna.features.cave.moss, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, height = 2, height_max = 4, decoration = "caverealms:glow_worm", @@ -122,8 +122,8 @@ minetest.register_decoration({ place_on = "default:stone", fill_ratio = 10, biomes = asuna.features.cave.fungal, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, decoration = fungal_cave_surface, flags = "all_floors,force_placement", @@ -137,8 +137,8 @@ minetest.register_decoration({ num_spawn_by = 8, fill_ratio = 0.000085, biomes = asuna.features.cave.fungal, - y_max = -16, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, schematic = spath .. "emerald_stalagmite.mts", flags = "all_floors,place_center_x,place_center_z", @@ -152,8 +152,8 @@ minetest.register_decoration({ num_spawn_by = 8, fill_ratio = 0.000085, biomes = asuna.features.cave.fungal, - y_max = -16, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, schematic = spath .. "emerald_stalactite.mts", flags = "all_ceilings,place_center_x,place_center_z", @@ -167,8 +167,8 @@ minetest.register_decoration({ num_spawn_by = 8, fill_ratio = 0.000085, biomes = asuna.features.cave.fungal, - y_max = -16, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, schematic = spath .. "amethyst_stalagmite.mts", flags = "all_floors,place_center_x,place_center_z", @@ -182,8 +182,8 @@ minetest.register_decoration({ num_spawn_by = 8, fill_ratio = 0.000085, biomes = asuna.features.cave.fungal, - y_max = -16, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, schematic = spath .. "amethyst_stalactite.mts", flags = "all_ceilings,place_center_x,place_center_z", @@ -195,8 +195,8 @@ minetest.register_decoration({ place_on = fungal_cave_surface, fill_ratio = 0.0005, biomes = asuna.features.cave.fungal, - y_max = -16, - y_min = -31000, + y_max = -4096, + y_min = -10000, schematic = spath .. "shroom.mts", flags = "all_floors,place_center_x,place_center_z", }) @@ -207,8 +207,8 @@ minetest.register_decoration({ place_on = fungal_cave_surface, fill_ratio = 0.025, biomes = asuna.features.cave.fungal, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, decoration = "caverealms:fungus", flags = "all_floors", }) @@ -219,8 +219,8 @@ minetest.register_decoration({ place_on = fungal_cave_surface, fill_ratio = 0.025, biomes = asuna.features.cave.fungal, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, decoration = "caverealms:mycena", flags = "all_floors", }) @@ -231,8 +231,8 @@ minetest.register_decoration({ place_on = "default:stone", fill_ratio = 0.0175, biomes = asuna.features.cave.fungal, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, height = 2, height_max = 4, decoration = "caverealms:glow_worm_green", @@ -253,8 +253,8 @@ minetest.register_decoration({ lacunarity = 0.69, }, biomes = asuna.features.cave.fungal, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, height_max = 2, decoration = "ethereal:mushroom", @@ -267,8 +267,8 @@ minetest.register_decoration({ place_on = fungal_cave_surface, fill_ratio = 0.00095, biomes = asuna.features.cave.fungal, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, decoration = { "flowers:mushroom_red", "flowers:mushroom_brown", @@ -294,8 +294,8 @@ minetest.register_decoration({ place_on = "default:stone", fill_ratio = 10, biomes = asuna.features.cave.coal, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, decoration = desert_cave_surface, flags = "all_floors,force_placement", @@ -307,8 +307,8 @@ minetest.register_decoration({ place_on = desert_cave_surface, fill_ratio = 10, biomes = asuna.features.cave.coal, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -2, decoration = "default:stone", flags = "all_floors,force_placement", @@ -326,8 +326,8 @@ minetest.register_decoration({ num_spawn_by = 8, fill_ratio = 0.000085, biomes = asuna.features.cave.coal, - y_max = -16, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, schematic = spath .. "ruby_stalagmite.mts", flags = "all_floors,place_center_x,place_center_z", @@ -341,8 +341,8 @@ minetest.register_decoration({ num_spawn_by = 8, fill_ratio = 0.000085, biomes = asuna.features.cave.coal, - y_max = -16, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, schematic = spath .. "ruby_stalactite.mts", flags = "all_ceilings,place_center_x,place_center_z", @@ -360,8 +360,8 @@ minetest.register_decoration({ num_spawn_by = 8, fill_ratio = 0.000085, biomes = asuna.features.cave.coal, - y_max = -16, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, schematic = spath .. "amethyst_stalagmite.mts", flags = "all_floors,place_center_x,place_center_z", @@ -375,8 +375,8 @@ minetest.register_decoration({ num_spawn_by = 8, fill_ratio = 0.000085, biomes = asuna.features.cave.coal, - y_max = -16, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, schematic = spath .. "amethyst_stalactite.mts", flags = "all_ceilings,place_center_x,place_center_z", @@ -388,8 +388,8 @@ minetest.register_decoration({ place_on = desert_cave_surface, fill_ratio = 0.1, biomes = asuna.features.cave.coal, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, decoration = "caverealms:coal_dust", flags = "all_floors,force_placement", @@ -401,8 +401,8 @@ minetest.register_decoration({ place_on = desert_cave_surface, fill_ratio = 0.005, biomes = asuna.features.cave.coal, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, decoration = "default:coalblock", flags = "all_floors,force_placement", @@ -414,8 +414,8 @@ minetest.register_decoration({ place_on = desert_cave_surface, fill_ratio = 0.01, biomes = asuna.features.cave.coal, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, decoration = "caverealms:constant_flame", flags = "all_floors", }) @@ -432,8 +432,8 @@ minetest.register_decoration({ num_spawn_by = 8, fill_ratio = 0.001, biomes = asuna.features.cave.coal, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, decoration = "default:cactus", flags = "all_floors", }) @@ -446,8 +446,8 @@ minetest.register_decoration({ place_on = "default:stone", fill_ratio = 10, biomes = asuna.features.cave.fire, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, decoration = "caverealms:hot_cobble", flags = "all_floors,force_placement", @@ -467,8 +467,8 @@ minetest.register_decoration({ lacunarity = 0.7, }, biomes = asuna.features.cave.fire, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, decoration = "default:obsidian", flags = "all_floors,force_placement", @@ -480,8 +480,8 @@ minetest.register_decoration({ place_on = "default:stone", fill_ratio = 10, biomes = asuna.features.cave.fire, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, decoration = "caverealms:hot_cobble", flags = "all_ceilings,force_placement", @@ -493,8 +493,8 @@ minetest.register_decoration({ place_on = "caverealms:hot_cobble", fill_ratio = 0.085, biomes = asuna.features.cave.fire, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, decoration = "caverealms:constant_flame", flags = "all_floors", }) @@ -516,8 +516,8 @@ abdecor.register_advanced_decoration("caverealms_fire_cave_lava",{ }, sidelen = 80, fill_ratio = 0.065, - y_max = -8, - y_min = -31000, + y_max = -4096, + y_min = -10000, flags = "all_floors", }, fn = function(mapgen) @@ -567,8 +567,8 @@ minetest.register_decoration({ place_on = "default:stone", fill_ratio = 10, biomes = asuna.features.cave.dry, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, decoration = dry_cave_surface, flags = "all_floors,force_placement", @@ -582,8 +582,8 @@ minetest.register_decoration({ num_spawn_by = 8, fill_ratio = 0.000085, biomes = asuna.features.cave.dry, - y_max = -16, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, schematic = spath .. "ruby_stalagmite.mts", flags = "all_floors,place_center_x,place_center_z", @@ -597,8 +597,8 @@ minetest.register_decoration({ num_spawn_by = 8, fill_ratio = 0.000085, biomes = asuna.features.cave.dry, - y_max = -16, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, schematic = spath .. "ruby_stalactite.mts", flags = "all_ceilings,place_center_x,place_center_z", @@ -612,8 +612,8 @@ minetest.register_decoration({ num_spawn_by = 8, fill_ratio = 0.000085, biomes = asuna.features.cave.dry, - y_max = -16, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, schematic = spath .. "amethyst_stalagmite.mts", flags = "all_floors,place_center_x,place_center_z", @@ -627,8 +627,8 @@ minetest.register_decoration({ num_spawn_by = 8, fill_ratio = 0.000085, biomes = asuna.features.cave.dry, - y_max = -16, - y_min = -31000, + y_max = -4096, + y_min = -10000, place_offset_y = -1, schematic = spath .. "amethyst_stalactite.mts", flags = "all_ceilings,place_center_x,place_center_z", @@ -640,8 +640,8 @@ minetest.register_decoration({ place_on = dry_cave_surface, fill_ratio = 0.01, biomes = asuna.features.cave.dry, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, decoration = "caverealms:spike", flags = "all_floors", }) @@ -652,8 +652,8 @@ minetest.register_decoration({ place_on = "default:stone", fill_ratio = 0.01, biomes = asuna.features.cave.dry, - y_max = 0, - y_min = -31000, + y_max = -4096, + y_min = -10000, height = 2, height_max = 3, decoration = "caverealms:fire_vine", diff --git a/mods/caverealms/config.lua b/mods/caverealms/config.lua index 5a5f9cc8..73f092c9 100644 --- a/mods/caverealms/config.lua +++ b/mods/caverealms/config.lua @@ -20,8 +20,8 @@ local function setting(stype, name, default) end --generation settings -setting("number", "ymin", -33000) --bottom realm limit -setting("number", "ymax", -1500) --top realm limit +setting("number", "ymin", -10000) --bottom realm limit +setting("number", "ymax", -4096) --top realm limit setting("number", "tcave", 0.75) --cave threshold --decoration chances @@ -30,7 +30,7 @@ setting("number", "stalcha", 0.003) --chance of stalactites setting("number", "h_lag", 8) --max height for stalagmites setting("number", "h_lac", 8) --...stalactites -setting("number", "crystal", 0.0002) --chance of glow crystal formations +setting("number", "crystal", 0.0002) --chance of glow crystal formations setting("number", "h_cry", 8) --max height of glow crystals setting("number", "h_clac", 8) --max height of glow crystal stalactites @@ -43,8 +43,8 @@ setting("number", "icicha", 0.035) --chance of icicles setting("number", "flacha", 0.04) --chance of constant flames --realm limits for Dungeon Masters' Lair -setting("number", "dm_top", -14000) --upper limit -setting("number", "dm_bot", -16000) --lower limit +setting("number", "dm_top", -8000) --upper limit +setting("number", "dm_bot", -10000) --lower limit --should DMs spawn in DM Lair? setting("bool", "dm_spawn", true) diff --git a/mods/cloudlands/.luacheckrc b/mods/cloudlands/.luacheckrc new file mode 100644 index 00000000..d37fbe85 --- /dev/null +++ b/mods/cloudlands/.luacheckrc @@ -0,0 +1,28 @@ +unused_args = false +allow_defined_top = true + +globals = { + "cloudlands" +} + +read_globals = { + "core", + "default", + "biomeinfo", + "schemlib", + "nether", + "DIR_DELIM", + "intllib", + "ItemStack", + "math.hypot", + "minetest", + "PcgRandom", + "PseudoRandom", + table = { fields = { "copy", "getn" } }, + "vector", + "file_exists", + "dump", + "VoxelArea", + "VoxelManip", +} + diff --git a/mods/cloudlands/LICENSE.txt b/mods/cloudlands/LICENSE.txt new file mode 100644 index 00000000..99282871 --- /dev/null +++ b/mods/cloudlands/LICENSE.txt @@ -0,0 +1,26 @@ +Cloudlands mapgen +~~~~~~~~~~~~~~~~~ + + Copyright © 2018 Treer + + A more permissive license may be available by request. + + For simplicity this Minetest mod is licensed with the same + license as Minetest - "GNU LGPL" version 2.1 or later. + + +GNU LGPL information +-------------------- + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You can receive a copy of the GNU Lesser General Public License from + http://www.gnu.org/ \ No newline at end of file diff --git a/mods/cloudlands/README.md b/mods/cloudlands/README.md new file mode 100644 index 00000000..f5663320 --- /dev/null +++ b/mods/cloudlands/README.md @@ -0,0 +1,56 @@ +

+ +

+ +# Hallelujah Mountains for Minetest + + + +[![License](https://img.shields.io/badge/license-LGPLv2.1%2B-blue.svg)](https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html) + +AKA Cloudlands — giant rocks floating suspended in magnetic eddies. Now with giant trees + +This can be run with or without a normal terrain mapgen, allowing pure skylands or an exotic addition to the landscape. + +Many Configurable settings, including the altitude islands appear, and the ability to restrict the areas they spawn. + +It's a single file with no hard dependencies for easy integration into modpacks or games, e.g. as an exotic biome. + +Hallelujah Mountains [maps](https://i.imgur.com/2SkoAyB.png) can be generated by [Amidstest](https://forum.minetest.net/viewtopic.php?t=19869), provided you know the seed of the world. The islands are not homogenous — there will be areas without any, while smaller islands tend to follow eddy fields, often emanating out from much larger and rarer islands. + +**Mod dependencies:** None. + +**Minetest version:** v5.0+ + +**Recommended mods:** +* [Vines](https://forum.minetest.net/viewtopic.php?t=2344), or something that contains vines, such as plantlife_modpack or MineClone2. These will grow off the sides of the islands, climate permitting, allowing you to climb, and looking picturesque! +* [Nether](https://forum.minetest.net/viewtopic.php?t=5790) enables players to build portals to Hallelujah Mountains, allowing secret entrances into floating kingdoms, or the island altitude to be configured way up high while still having a means to get there. Stones to build these portals can only be found in the Nether. +* Extra ways to explore + * [Bridger](https://forum.minetest.net/viewtopic.php?t=18243) or [Bridges](https://forum.minetest.net/viewtopic.php?t=3488) if you want to build nice wooden bridges between islands + * [Airboat](https://github.com/paramat/airboat) to sail the high clouds on a small airship + * [Flying carpet](https://forum.minetest.net/viewtopic.php?t=12263) + * [Jetpack, wings, etc.](https://forum.minetest.net/viewtopic.php?t=11257) + * [Hang-glider / Elytra](https://forum.minetest.net/viewtopic.php?t=21425) + * Teleporter mods, balloon mods, etc. + +**Ores tip:** If you decide ores like iron and diamond should be obtainable from island stone, and are playing Minetest Game, you can go into Settings->Advanced Settings->Mods->cloudlands, set the "Altitude of Islands" to be 1300 (or higher), and Enable "Generate ores inside islands". This works because Minetest Game also generates the deep-underground ores in stone above 1025 to ensure they can be found in mgV7 Floatlands. Ores can be added in other games or at other altitudes by adding adjusted copies of the game's calls to minetest.register_ore(). + +**Video:** [Minetest Mod Review: Cloudlands](http://www.nathansalapat.com/minetest/cloudlands) + +**Forum:** [link](https://forum.minetest.net/viewtopic.php?t=20257) + +**Screenshots:** + +[![default](https://i.imgur.com/jwHN6Sd.jpg)](http://panoramas.minetest.land/IslandMoonlight.html) + +![default](https://i.imgur.com/PUjjaIK.jpg) + +![default](https://i.imgur.com/xn9UING.jpg) + +![default](https://i.imgur.com/SeYMfZv.jpg) + +![default](https://i.imgur.com/wBLEFWn.jpg) + +![default](https://i.imgur.com/A6vDDGc.jpg) + + diff --git a/mods/cloudlands/bower.json b/mods/cloudlands/bower.json new file mode 100644 index 00000000..1d1c97f0 --- /dev/null +++ b/mods/cloudlands/bower.json @@ -0,0 +1,21 @@ +{ + "name": "cloudlands", + "description": "Hallelujah Mountains for Minetest (runs with or without a normal terrain mapgen)", + "keywords": [ + "cloudlands", "Hallelujah Mountains", "floatlands", "skylands", "islands", "mapgen", "fantasy", "fly" + ], + "homepage": "https://github.com/Treer/cloudlands", + "forum": "https://forum.minetest.net/viewtopic.php?t=20257", + "screenshots": [ + "https://i.imgur.com/A6vDDGc.jpg", + "https://i.imgur.com/PUjjaIK.jpg", + "https://i.imgur.com/Zty57dy.jpg", + "https://i.imgur.com/wBLEFWn.jpg", + "https://i.imgur.com/xn9UING.jpg", + "https://i.imgur.com/rCtczAK.jpg" + ], + "authors": [ + "Treer" + ], + "license": "LGPL-2.1-or-later" +} diff --git a/mods/cloudlands/cloudlands.lua b/mods/cloudlands/cloudlands.lua new file mode 100644 index 00000000..1d59c4b5 --- /dev/null +++ b/mods/cloudlands/cloudlands.lua @@ -0,0 +1,2967 @@ +local ALTITUDE = 1500 -- average altitude of islands +local ALTITUDE_AMPLITUDE = 1200 -- rough island altitude variance (plus or minus) +local GENERATE_ORES = true -- set to true for island core stone to contain patches of dirt and sand etc. +local LOWLAND_BIOMES = false or -- If true then determine an island's biome using the biome at altitude "LOWLAND_BIOME_ALTITUDE" + minetest.get_modpath("ethereal") ~= nil -- Ethereal has an alpine biome above altitude 40, so default to lowland biomes +local LOWLAND_BIOME_ALTITUDE = 10 -- Higher than beaches, lower than mountains (See LOWLAND_BIOMES) +local VINE_COVERAGE = 0.3 -- set to 0 to turn off vines +local REEF_RARITY = 0.015 -- Chance of a viable island having a reef or atoll +local TREE_RARITY = 0.08 -- Chance of a viable island having a giant tree growing out of it +local PORTAL_RARITY = 0.04 -- Chance of a viable island having some ancient portalstone on it (If portals API available and ENABLE_PORTALS is true) +local BIOLUMINESCENCE = true or -- Allow giant trees variants which have glowing parts + minetest.get_modpath("glowtest") ~= nil or + minetest.get_modpath("ethereal") ~= nil or + minetest.get_modpath("glow") ~= nil or + minetest.get_modpath("nsspf") ~= nil or + minetest.get_modpath("nightscape") ~= nil or + minetest.get_modpath("moonflower") ~= nil -- a world using any of these mods is OK with bioluminescence +local ENABLE_PORTALS = true -- Whether to allow players to build portals to islands. Portals require the Nether mod. +local EDDYFIELD_SIZE = 1 -- size of the "eddy field-lines" that smaller islands follow +local ISLANDS_SEED = 1000 -- You only need to change this if you want to try different island layouts without changing the map seed + +-- Some lists of known node aliases (any nodes which can't be found won't be used). +local NODENAMES_STONE = {"mapgen_stone", "mcl_core:stone", "default:stone", "main:stone"} +local NODENAMES_WATER = {"mapgen_water_source", "mcl_core:water_source", "default:water_source", "main:water"} +local NODENAMES_ICE = {"mapgen_ice", "mcl_core:ice", "pedology:ice_white", "default:ice", "main:ice"} +local NODENAMES_GRAVEL = {"mapgen_gravel", "mcl_core:gravel", "default:gravel", "main:gravel"} +local NODENAMES_GRASS = {"mapgen_dirt_with_grass", "mcl_core:dirt_with_grass", "default:dirt_with_grass", "main:grass"} -- currently only used with games that don't register biomes, e.g. Hades Revisted +local NODENAMES_DIRT = {"mapgen_dirt", "mcl_core:dirt", "default:dirt", "main:dirt"} -- currently only used with games that don't register biomes, e.g. Hades Revisted +local NODENAMES_SILT = {"mapgen_silt", "default:silt", "aotearoa:silt", "darkage:silt", "mapgen_sand", "mcl_core:sand", "default:sand", "main:sand"} -- silt isn't a thing yet, but perhaps one day it will be. Use sand for the bottom of ponds in the meantime. +local NODENAMES_VINES = {"mcl_core:vine", "vines:side_end", "ethereal:vine", "main:vine"} -- ethereal vines don't grow, so only select that if there's nothing else. +local NODENAMES_HANGINGVINE = {"vines:vine_end"} +local NODENAMES_HANGINGROOT = {"vines:root_end"} +local NODENAMES_TREEWOOD = {"mcl_core:tree", "default:tree", "mapgen_tree", "main:tree"} +local NODENAMES_TREELEAVES = {"mcl_core:leaves", "default:leaves", "mapgen_leaves", "main:leaves"} +local NODENAMES_FRAMEGLASS = {"xpanes:obsidian_pane_flat", "xpanes:pane_flat", "default:glass", "xpanes:pane_natural_flat", "mcl_core:glass", "walls:window"} +local NODENAMES_WOOD = {"default:wood", "mcl_core:wood", "main:wood"} + +local MODNAME = minetest.get_current_modname() +local VINES_REQUIRED_HUMIDITY = 49 +local VINES_REQUIRED_TEMPERATURE = 40 +local ICE_REQUIRED_TEMPERATURE = 8 + +local DEBUG = false -- dev logging +local DEBUG_GEOMETRIC = false -- turn off noise from island shapes +local DEBUG_SKYTREES = false -- dev logging + +-- OVERDRAW can be set to 1 to cause a y overdraw of one node above the chunk, to avoid creating a dirt "surface" +-- at the top of the chunk that trees mistakenly grow on when the chunk is decorated. +-- However, it looks like that tree problem has been solved by either engine or biome updates, and overdraw causes +-- it's own issues (e.g. nodeId_top not getting set correctly), so I'm leaving overdraw off (i.e. zero) until I +-- notice problems requiring it. +local OVERDRAW = 0 + +local S = minetest.get_translator(MODNAME) + +cloudlands = {} -- API functions can be accessed via this global: + -- cloudlands.get_island_details(minp, maxp) -- returns an array of island-information-tables, y is ignored. + -- cloudlands.find_nearest_island(x, z, search_radius) -- returns a single island-information-table, or nil + -- cloudlands.get_height_at(x, z, [island-information-tables]) -- returns (y, isWater), or nil if no island here + +cloudlands.coreTypes = { + { + territorySize = 200, + coresPerTerritory = 3, + radiusMax = 96, + depthMax = 50, + thicknessMax = 8, + frequency = 0.1, + pondWallBuffer = 0.03, + requiresNexus = true, + exclusive = false + }, + { + territorySize = 60, + coresPerTerritory = 1, + radiusMax = 40, + depthMax = 40, + thicknessMax = 4, + frequency = 0.1, + pondWallBuffer = 0.06, + requiresNexus = false, + exclusive = true + }, + { + territorySize = 30, + coresPerTerritory = 3, + radiusMax = 16, -- I feel this and depthMax should be bigger, say 18, and territorySize increased to 34 to match, but I can't change it any more or existing worlds will mismatch along previously emerged chunk boundaries + depthMax = 16, + thicknessMax = 2, + frequency = 0.1, + pondWallBuffer = 0.11, -- larger values will make ponds smaller and further from island edges, so it should be as low as you can get it without the ponds leaking over the edge. A small leak-prone island is at (3160, -2360) on seed 1 + requiresNexus = false, + exclusive = true + } +} + +if minetest.get_biome_data == nil then error(MODNAME .. " requires Minetest v5.0 or greater", 0) end + +local function fromSettings(settings_name, default_value) + local result + if type(default_value) == "number" then + result = tonumber(minetest.settings:get(settings_name) or default_value) + elseif type(default_value) == "boolean" then + result = minetest.settings:get_bool(settings_name, default_value) + end + return result +end +-- override any settings with user-specified values before these values are needed +ALTITUDE = fromSettings(MODNAME .. "_altitude", ALTITUDE) +ALTITUDE_AMPLITUDE = fromSettings(MODNAME .. "_altitude_amplitude", ALTITUDE_AMPLITUDE) +GENERATE_ORES = fromSettings(MODNAME .. "_generate_ores", GENERATE_ORES) +VINE_COVERAGE = fromSettings(MODNAME .. "_vine_coverage", VINE_COVERAGE * 100) / 100 +LOWLAND_BIOMES = fromSettings(MODNAME .. "_use_lowland_biomes", LOWLAND_BIOMES) +TREE_RARITY = fromSettings(MODNAME .. "_giant_tree_rarety", TREE_RARITY * 100) / 100 +BIOLUMINESCENCE = fromSettings(MODNAME .. "_bioluminescence", BIOLUMINESCENCE) +ENABLE_PORTALS = fromSettings(MODNAME .. "_enable_portals", ENABLE_PORTALS) + +local noiseparams_eddyField = { + offset = -1, + scale = 2, + spread = {x = 350 * EDDYFIELD_SIZE, y = 350 * EDDYFIELD_SIZE, z= 350 * EDDYFIELD_SIZE}, + seed = ISLANDS_SEED, --WARNING! minetest.get_perlin() will add the server map's seed to this value + octaves = 2, + persistence = 0.7, + lacunarity = 2.0, +} +local noiseparams_heightMap = { + offset = 0, + scale = ALTITUDE_AMPLITUDE, + spread = {x = 160, y = 160, z= 160}, + seed = ISLANDS_SEED, --WARNING! minetest.get_perlin() will add the server map's seed to this value + octaves = 3, + persistence = 0.5, + lacunarity = 2.0, +} +local DENSITY_OFFSET = 0.7 +local noiseparams_density = { + offset = DENSITY_OFFSET, + scale = .3, + spread = {x = 25, y = 25, z= 25}, + seed = 1000, --WARNING! minetest.get_perlin() will add the server map's seed to this value + octaves = 4, + persistence = 0.5, + lacunarity = 2.0, +} +local SURFACEMAP_OFFSET = 0.5 +local noiseparams_surfaceMap = { + offset = SURFACEMAP_OFFSET, + scale = .5, + spread = {x = 40, y = 40, z= 40}, + seed = ISLANDS_SEED, --WARNING! minetest.get_perlin() will add the server map's seed to this value + octaves = 4, + persistence = 0.5, + lacunarity = 2.0, +} +local noiseparams_skyReef = { + offset = .3, + scale = .9, + spread = {x = 3, y = 3, z= 3}, + seed = 1000, + octaves = 2, + persistence = 0.5, + lacunarity = 2.0, +} + +local noiseAngle = -15 --degrees to rotate eddyField noise, so that the vertical and horizontal tendencies are off-axis +local ROTATE_COS = math.cos(math.rad(noiseAngle)) +local ROTATE_SIN = math.sin(math.rad(noiseAngle)) + +local noise_eddyField +local noise_heightMap +local noise_density +local noise_surfaceMap +local noise_skyReef + +local worldSeed +local nodeId_ignore = minetest.CONTENT_IGNORE +local nodeId_air +local nodeId_stone +local nodeId_grass +local nodeId_dirt +local nodeId_water +local nodeId_ice +local nodeId_silt +local nodeId_gravel +local nodeId_vine +local nodeName_vine +local nodeName_ignore = minetest.get_name_from_content_id(nodeId_ignore) + +local REQUIRED_DENSITY = 0.4 + +local randomNumbers = {} -- array of 0-255 random numbers with values between 0 and 1 (inclusive) +local data = {} -- reuse the massive VoxelManip memory buffers instead of creating on every on_generate() +local biomes = {} + +-- optional region specified in settings to restrict islands too +local region_restrictions = false +local region_min_x, region_min_z, region_max_x, region_max_z = -32000, -32000, 32000, 32000 + +-- optional biomes specified in settings to restrict islands too +local limit_to_biomes = nil +local limit_to_biomes_altitude = nil + +--[[============================== + Math functions + ==============================]]-- + +-- avoid having to perform table lookups each time a common math function is invoked +local math_min, math_max, math_floor, math_sqrt, math_cos, math_sin, math_abs, math_pow, PI = math.min, math.max, math.floor, math.sqrt, math.cos, math.sin, math.abs, math.pow, math.pi + +local function clip(value, minValue, maxValue) + if value <= minValue then + return minValue + elseif value >= maxValue then + return maxValue + else + return value + end +end + +local function round(value) + return math_floor(0.5 + value) +end + +--[[============================== + Interop functions + ==============================]]-- + +local get_heat, get_humidity = minetest.get_heat, minetest.get_humidity + +local biomeinfoAvailable = minetest.get_modpath("biomeinfo") ~= nil and minetest.global_exists("biomeinfo") +local isMapgenV6 = minetest.get_mapgen_setting("mg_name") == "v6" +if isMapgenV6 then + if not biomeinfoAvailable then + -- The biomeinfo mod by Wuzzy can be found at https://repo.or.cz/minetest_biomeinfo.git + minetest.log("warning", MODNAME .. " detected mapgen v6: Full mapgen v6 support requires adding the biomeinfo mod.") + else + get_heat = function(pos) + return biomeinfo.get_v6_heat(pos) * 100 + end + get_humidity = function(pos) + return biomeinfo.get_v6_humidity(pos) * 100 + end + end +end + +local interop = {} +-- returns the id of the first nodename in the list that resolves to a node id, or nodeId_ignore if not found +interop.find_node_id = function (node_contender_names) + local result = nodeId_ignore + for _,contenderName in ipairs(node_contender_names) do + + local nonAliasName = minetest.registered_aliases[contenderName] or contenderName + if minetest.registered_nodes[nonAliasName] ~= nil then + result = minetest.get_content_id(nonAliasName) + end + + --if DEBUG then minetest.log("info", contenderName .. " returned " .. result .. " (" .. minetest.get_name_from_content_id(result) .. ")") end + if result ~= nodeId_ignore then return result end + end + return result +end + +-- returns the name of the first nodename in the list that resolves to a node id, or 'ignore' if not found +interop.find_node_name = function (node_contender_names) + return minetest.get_name_from_content_id(interop.find_node_id(node_contender_names)) +end + +interop.get_first_element_in_table = function(tbl) + for k,v in pairs(tbl) do return v end + return nil +end + +-- returns the top-texture name of the first nodename in the list that's a registered node, or nil if not found +interop.find_node_texture = function (node_contender_names) + local result = nil + local nodeName = minetest.get_name_from_content_id(interop.find_node_id(node_contender_names)) + if nodeName ~= nil then + local node = minetest.registered_nodes[nodeName] + if node ~= nil then + result = node.tiles + if type(result) == "table" then result = result["name"] or interop.get_first_element_in_table(result) end -- incase it's not a string + if type(result) == "table" then result = result["name"] or interop.get_first_element_in_table(result) end -- incase multiple tile definitions + end + end + return result +end + +-- returns the node name of the clone node. +interop.register_clone = function(node_name, clone_name) + local node = minetest.registered_nodes[node_name] + if node == nil then + minetest.log("error", "cannot clone " .. node_name) + return nil + else + if clone_name == nil then clone_name = MODNAME .. ":" .. string.gsub(node.name, ":", "_") end + if minetest.registered_nodes[clone_name] == nil then + if DEBUG then minetest.log("info", "attempting to register: " .. clone_name) end + local clone = {} + for key, value in pairs(node) do clone[key] = value end + clone.name = clone_name + minetest.register_node(clone_name, clone) + --minetest.log("info", clone_name .. " id: " .. minetest.get_content_id(clone_name)) + --minetest.log("info", clone_name .. ": " .. dump(minetest.registered_nodes[clone_name])) + end + return clone_name + end +end + +-- converts "modname:nodename" into (modname, nodename), if no colon is found then modname is nil +interop.split_nodename = function(nodeName) + local result_modname = nil + local result_nodename = nodeName + + local pos = nodeName:find(':') + if pos ~= nil then + result_modname = nodeName:sub(0, pos - 1) + result_nodename = nodeName:sub(pos + 1) + end + return result_modname, result_nodename +end + +-- returns a unique id for the biome, normally this is numeric but with mapgen v6 it can be a string name. +interop.get_biome_key = function(pos) + if isMapgenV6 and biomeinfoAvailable then + return biomeinfo.get_v6_biome(pos) + else + return minetest.get_biome_data(pos).biome + end +end + +-- returns true if filename is a file that exists. +interop.file_exists = function(filename) + local f = io.open(filename, "r") + if f == nil then + return false + else + f:close() + return true + end +end + +-- returns a written book item (technically an item stack), or nil if no books mod available +interop.write_book = function(title, author, text, description) + + local stackName_writtenBook + if minetest.get_modpath("mcl_books") then + stackName_writtenBook = "mcl_books:written_book" + text = title .. "\n\n" .. text -- MineClone2 books doen't show a title (or author) + + elseif minetest.get_modpath("book") ~= nil then + stackName_writtenBook = "book:book_written" + text = "\n\n" .. text -- Crafter books put the text immediately under the title + + elseif minetest.get_modpath("default") ~= nil then + stackName_writtenBook = "default:book_written" + + else + return nil + end + + local book_itemstack = ItemStack(stackName_writtenBook) + local book_data = {} + book_data.title = title + book_data.text = text + book_data.owner = author + book_data.author = author + book_data.description = description + book_data.page = 1 + book_data.page_max = 1 + book_data.generation = 0 + book_data["book.book_title"] = title -- Crafter book title + book_data["book.book_text"] = text -- Crafter book text + + book_itemstack:get_meta():from_table({fields = book_data}) + + return book_itemstack +end + +--[[============================== + Portals + ==============================]]-- + +local addDetail_ancientPortal = nil + +if ENABLE_PORTALS and minetest.get_modpath("nether") ~= nil and minetest.global_exists("nether") and nether.register_portal ~= nil then + -- The Portals API is available + -- Register a player-buildable portal to Hallelujah Mountains. + + + -- returns a position on the island which is suitable for a portal to be placed, or nil if none can be found + -- player_name is optional, allowing a player to spawn a remote portal in their own protected areas. + local function find_potential_portal_location_on_island(island_info, player_name) + + local result = nil + + if island_info ~= nil then + local searchRadius = island_info.radius * 0.6 -- islands normally don't reach their full radius, and lets not put portals too near the edge + local coreList = cloudlands.get_island_details( + {x = island_info.x - searchRadius, z = island_info.z - searchRadius}, + {x = island_info.x + searchRadius, z = island_info.z + searchRadius} + ) + + -- Deterministically sample the island for a low location that isn't water. + -- Seed the prng so this function always returns the same coords for the island + local prng = PcgRandom(island_info.x * 65732 + island_info.z * 729 + minetest.get_mapgen_setting("seed") * 3) + local positions = {} + + for attempt = 1, 15 do -- how many attempts we'll make at finding a good location + local angle = (prng:next(0, 10000) / 10000) * 2 * PI + local distance = math_sqrt(prng:next(0, 10000) / 10000) * searchRadius + if attempt == 1 then distance = 0 end -- Always sample the middle of the island, as it's the safest fallback location + local x = round(island_info.x + math_cos(angle) * distance) + local z = round(island_info.z + math_sin(angle) * distance) + local y, isWater = cloudlands.get_height_at(x, z, coreList) + if y ~= nil then + local weight = 0 + if not isWater then weight = weight + 1 end -- avoid putting portals in ponds + if y >= island_info.y + ALTITUDE then weight = weight + 2 end -- avoid putting portals down the sides of eroded cliffs + positions[#positions + 1] = {x = x, y = y + 1, z = z, weight = weight} + end + end + + -- Order the locations by how good they are + local compareFn = function(pos_a, pos_b) + if pos_a.weight > pos_b.weight then return true end + if pos_a.weight == pos_b.weight and pos_a.y < pos_b.y then return true end -- I can't justify why I think lower positions are better. I'm imagining portals nested in valleys rather than on ridges. + return false + end + table.sort(positions, compareFn) + + -- nether.volume_is_natural() was deprecated in favor of nether.volume_is_natural_and_unprotected() + local volume_is_natural_and_unprotected = nether.volume_is_natural_and_unprotected or nether.volume_is_natural + + -- Now the locations are sorted by how good they are, find the first/best that doesn't + -- grief a player build. + -- Ancient Portalstone has is_ground_content set to true, so we won't have to worry about old/broken + -- portal frames interfering with the results of nether.volume_is_natural_and_unprotected() + for _, position in ipairs(positions) do + -- Unfortunately, at this point we don't know the orientation of the portal, so use worst case + local minp = {x = position.x - 2, y = position.y, z = position.z - 2} + local maxp = {x = position.x + 3, y = position.y + 4, z = position.z + 3} + if volume_is_natural_and_unprotected(minp, maxp, player_name) then + result = position + break + end + end + end + + return result + end + + + -- returns nil if no suitable location could be found, otherwise returns (portal_pos, island_info) + -- player_name is optional, allowing a player to spawn a remote portal in their own protected areas. + local function find_nearest_island_location_for_portal(surface_x, surface_z, player_name) + + local result = nil + + local island = cloudlands.find_nearest_island(surface_x, surface_z, 75) + if island == nil then island = cloudlands.find_nearest_island(surface_x, surface_z, 150) end + if island == nil then island = cloudlands.find_nearest_island(surface_x, surface_z, 400) end + + if island ~= nil then + result = find_potential_portal_location_on_island(island, player_name) + end + + return result, island + end + + -- Ideally the Nether mod will provide a block obtainable by exploring the Nether which is + -- earmarked for mods like this one to use for portals, but until this happens I'll create + -- our own tempory placeholder "portalstone". + -- The Portals API is currently provided by nether, which depends on default, so we can assume default textures are available + local portalstone_end = "default_furnace_top.png^(default_ice.png^[opacity:120)^[multiply:#668" -- this gonna look bad with non-default texturepacks, hopefully Nether mod will provide a real block + local portalstone_side = "[combine:16x16:0,0=default_furnace_top.png:4,0=default_furnace_top.png:8,0=default_furnace_top.png:12,0=default_furnace_top.png:^(default_ice.png^[opacity:120)^[multiply:#668" + minetest.register_node("cloudlands:ancient_portalstone", { + description = S("Ancient Portalstone"), + tiles = {portalstone_end, portalstone_end, portalstone_side, portalstone_side, portalstone_side, portalstone_side}, + paramtype2 = "facedir", + sounds = default.node_sound_stone_defaults(), + groups = {cracky = 1, level = 2}, + on_blast = function() --[[blast proof]] end + }) + + minetest.register_ore({ + ore_type = "scatter", + ore = "cloudlands:ancient_portalstone", + wherein = "nether:rack", + clust_scarcity = 32 * 32 * 32, + clust_num_ores = 6, + clust_size = 3, + y_max = nether.DEPTH_CEILING or nether.DEPTH, + y_min = nether.DEPTH_FLOOR or -32000, + }) + + local _ = {name = "air", prob = 0} + local A = {name = "air", prob = 255, force_place = true} + local PU = {name = "cloudlands:ancient_portalstone", param2 = 0, prob = 255, force_place = true} + local PW = {name = "cloudlands:ancient_portalstone", param2 = 12, prob = 255, force_place = true} + local PN = {name = "cloudlands:ancient_portalstone", param2 = 4, prob = 255, force_place = true} + minetest.register_decoration({ + name = "Ancient broken portal", + deco_type = "schematic", + place_on = "nether:rack", + sidelen = 80, + fill_ratio = 0.00018, + biomes = {"nether_caverns"}, + y_max = nether.DEPTH_CEILING or nether.DEPTH, + y_min = nether.DEPTH_FLOOR or -32000, + schematic = { + size = {x = 4, y = 4, z = 1}, + data = { + PN, A, PW, PN, + PU, A, A, PU, + A, _, _, PU, + _, _, _, PU + }, + yslice_prob = { + {ypos = 3, prob = 92}, + {ypos = 1, prob = 30}, + } + }, + place_offset_y = 1, + flags = "force_placement,all_floors", + rotation = "random" + }) + + -- this uses place_schematic() without minetest.after(), so should be called after vm:write_to_map() + addDetail_ancientPortal = function(core) + + if (core.radius < 8 or PORTAL_RARITY == 0) then return false end -- avoid portals hanging off the side of small islands + + local fastHash = 3 + fastHash = (37 * fastHash) + 9354 -- to keep this probability distinct from reefs and atols + fastHash = (37 * fastHash) + ISLANDS_SEED + fastHash = (37 * fastHash) + core.x + fastHash = (37 * fastHash) + core.z + fastHash = (37 * fastHash) + math_floor(core.radius) + fastHash = (37 * fastHash) + math_floor(core.depth) + if (PORTAL_RARITY * 10000) < math_floor((math_abs(fastHash)) % 10000) then return false end + + local portalPos = find_potential_portal_location_on_island(core, nil) + + if portalPos ~= nil then + local orientation = (fastHash % 2) * 90 + portalPos.y = portalPos.y - ((core.x + core.z) % 3) -- partially bury some ancient portals + + minetest.place_schematic( + portalPos, + { + size = {x = 4, y = 5, z = 1}, + data = { + PN, PW, PW, PN, + PU, _, _, PU, + PU, _, _, PU, + PU, _, _, PU, + PN, PW, PW, PN + }, + }, + orientation, + { -- node replacements + ["default:obsidian"] = "cloudlands:ancient_portalstone", + }, + true + ) + end + end + + + nether.register_portal("cloudlands_portal", { + shape = nether.PortalShape_Traditional, + frame_node_name = "cloudlands:ancient_portalstone", + wormhole_node_color = 2, -- 2 is blue + particle_color = "#77F", + particle_texture = { + name = "nether_particle_anim1.png", + animation = { + type = "vertical_frames", + aspect_w = 7, + aspect_h = 7, + length = 1, + }, + scale = 1.5 + }, + title = S("Hallelujah Mountains Portal"), + book_of_portals_pagetext = + S("Construction requires 14 blocks of ancient portalstone. We have no knowledge of how portalstones were created, the means to craft them are likely lost to time, so our only source has been to scavenge the Nether for the remnants of ancient broken portals. A finished frame is four blocks wide, five blocks high, and stands vertically, like a doorway.") .. "\n\n" .. + S("The only portal we managed to scavenge enough portalstone to build took us to a land of floating islands. There were hills and forests and even water up there, but the edges are a perilous drop — a depth of which we cannot even begin to plumb."), + + is_within_realm = function(pos) + -- return true if pos is in the cloudlands + -- I'm doing this based off height for speed, so it sometimes gets it wrong when the + -- Hallelujah mountains start reaching the ground. + if noise_heightMap == nil then cloudlands.init() end + local largestCoreType = cloudlands.coreTypes[1] -- the first island type is the biggest/thickest + local island_bottom = ALTITUDE - (largestCoreType.depthMax * 0.66) + round(noise_heightMap:get2d({x = pos.x, y = pos.z})) + + return pos.y > math_max(40, island_bottom) + end, + + find_realm_anchorPos = function(surface_anchorPos, player_name) + -- Find the nearest island and obtain a suitable surface position on it + local destination_pos, island = find_nearest_island_location_for_portal(surface_anchorPos.x, surface_anchorPos.z, player_name) + + if island ~= nil then + -- Allow any existing or player-positioned portal on the island to be linked to + -- first before resorting to the island's default portal position + local existing_portal_location, existing_portal_orientation = nether.find_nearest_working_portal( + "cloudlands_portal", + {x = island.x, y = 100000, z = island.z}, -- Using 100000 for y to ensure the position is in the cloudlands realm and so find_nearest_working_portal() will only returns island portals. + island.radius * 0.9, -- Islands normally don't reach their full radius. Ensure this distance limit encompasses any location find_nearest_island_location_for_portal() can return. + 0 -- a y_factor of 0 makes the search ignore the altitude of the portals (as long as they are in the Cloudlands realm) + ) + if existing_portal_location ~= nil then + return existing_portal_location, existing_portal_orientation + end + end + + return destination_pos + end, + + find_surface_anchorPos = function(realm_anchorPos) + -- This function isn't needed since find_surface_target_y() will be used by default, + -- but by implementing it I can look for any existing nearby portals before falling + -- back to find_surface_target_y. + + -- Using -100000 for y to ensure the position is outside the cloudlands realm and so + -- find_nearest_working_portal() will only returns ground portals. + -- a y_factor of 0 makes the search ignore the -100000 altitude of the portals (as + -- long as they are outside the cloudlands realm) + local existing_portal_location, existing_portal_orientation = + nether.find_nearest_working_portal("cloudlands_portal", {x = realm_anchorPos.x, y = -100000, z = realm_anchorPos.z}, 150, 0) + + if existing_portal_location ~= nil then + return existing_portal_location, existing_portal_orientation + else + local y = nether.find_surface_target_y(realm_anchorPos.x, realm_anchorPos.z, "cloudlands_portal") + return {x = realm_anchorPos.x, y = y, z = realm_anchorPos.z} + end + end, + + on_ignite = function(portalDef, anchorPos, orientation) + -- make some sparks fly on ignition + local p1, p2 = portalDef.shape:get_p1_and_p2_from_anchorPos(anchorPos, orientation) + local pos = vector.divide(vector.add(p1, p2), 2) + + local textureName = portalDef.particle_texture + if type(textureName) == "table" then textureName = textureName.name end + + local velocity + if orientation == 0 then + velocity = {x = 0, y = 0, z = 7} + else + velocity = {x = 7, y = 0, z = 0} + end + + local particleSpawnerDef = { + amount = 180, + time = 0.15, + minpos = {x = pos.x - 1, y = pos.y - 1.5, z = pos.z - 1}, + maxpos = {x = pos.x + 1, y = pos.y + 1.5, z = pos.z + 1}, + minvel = velocity, + maxvel = velocity, + minacc = {x = 0, y = 0, z = 0}, + maxacc = {x = 0, y = 0, z = 0}, + minexptime = 0.1, + maxexptime = 0.5, + minsize = 0.3 * portalDef.particle_texture_scale, + maxsize = 0.8 * portalDef.particle_texture_scale, + collisiondetection = false, + texture = textureName .. "^[colorize:#99F:alpha", + animation = portalDef.particle_texture_animation, + glow = 8 + } + + minetest.add_particlespawner(particleSpawnerDef) + + velocity = vector.multiply(velocity, -1) + particleSpawnerDef.minvel, particleSpawnerDef.maxvel = velocity, velocity + minetest.add_particlespawner(particleSpawnerDef) + end + + }) +end + +--[[============================== + SkyTrees + ==============================]]-- + +-- If splitting SkyTrees into a seperate mod, perhaps schemlib would be of help - https://forum.minetest.net/viewtopic.php?t=18084 + + +if not minetest.global_exists("SkyTrees") then -- If SkyTrees added into other mods, this may have already been defined + + local TREE1_FILE = 'cloudlands_tree1.mts' + local TREE2_FILE = 'cloudlands_tree2.mts' + local BARK_SUFFIX = '_bark' + local GLOW_SUFFIX = '_glow' + + SkyTrees = { + -- Order the trees in this schematicInfo array from the largest island requirements to smallest + -- The data in each schematicInfo must exactly match what's in the .mts file or things will break + schematicInfo = { + { + filename = TREE1_FILE, + size = {x = 81, y = 106, z = 111}, + center = {x = 37, y = 11, z = 73}, + requiredIslandDepth = 20, + requiredIslandRadius = 40, + nodesWithConstructor = { + {x=35, y=69, z=1}, {x=61, y=51, z=2}, {x=36, y=68, z=2}, {x=68, y=48, z=3}, {x=61, y=50, z=4}, {x=71, y=50, z=5}, {x=58, y=52, z=5}, {x=65, y=50, z=9}, {x=72, y=53, z=11}, {x=41, y=67, z=12}, {x=63, y=48, z=13}, {x=69, y=52, z=13}, {x=33, y=66, z=14}, {x=39, y=68, z=15}, {x=72, y=68, z=15}, {x=40, y=67, z=16}, {x=39, y=66, z=17}, {x=68, y=45, z=19}, {x=69, y=44, z=20}, {x=72, y=55, z=20}, {x=66, y=56, z=20}, {x=58, y=66, z=20}, {x=71, y=58, z=21}, {x=68, y=45, z=22}, {x=70, y=51, z=22}, {x=73, y=55, z=22}, {x=36, y=62, z=22}, {x=70, y=67, z=22}, {x=21, y=65, z=23}, {x=22, y=66, z=23}, {x=53, y=66, z=23}, {x=70, y=68, z=23}, {x=73, y=54, z=24}, {x=75, y=57, z=24}, {x=37, y=63, z=24}, {x=7, y=68, z=24}, {x=69, y=56, z=25}, {x=34, y=58, z=25}, {x=66, y=62, z=25}, {x=64, y=66, z=25}, {x=6, y=67, z=25}, {x=3, y=68, z=25}, {x=68, y=56, z=26}, {x=65, y=57, z=26}, {x=61, y=63, z=26}, {x=31, y=59, z=27}, {x=48, y=62, z=27}, {x=50, y=63, z=27}, {x=78, y=65, z=27}, {x=78, y=52, z=28}, {x=68, y=57, z=28}, {x=76, y=57, z=28}, {x=31, y=60, z=28}, {x=15, y=63, z=28}, {x=16, y=63, z=28}, {x=66, y=64, z=28}, {x=60, y=65, z=28}, {x=61, y=76, z=28}, {x=63, y=76, z=28}, {x=69, y=59, z=29}, {x=51, y=65, z=29}, {x=72, y=57, z=30}, {x=20, y=60, z=30}, {x=21, y=61, z=30}, {x=49, y=65, z=30}, {x=52, y=53, z=31}, {x=72, y=57, z=31}, {x=36, y=58, z=31}, {x=63, y=60, z=31}, {x=54, y=63, z=31}, {x=45, y=65, z=31}, {x=79, y=66, z=31}, {x=62, y=70, z=31}, {x=55, y=103, z=31}, {x=52, y=53, z=32}, {x=68, y=60, z=32}, {x=19, y=61, z=32}, {x=53, y=63, z=32}, {x=37, y=64, z=32}, {x=21, y=65, z=32}, {x=56, y=65, z=32}, {x=59, y=71, z=32}, {x=35, y=74, z=32}, {x=23, y=75, z=32}, {x=35, y=58, z=33}, {x=62, y=60, z=33}, {x=18, y=63, z=33}, {x=73, y=67, z=33}, {x=37, y=74, z=33}, {x=65, y=75, z=33}, {x=38, y=2, z=34}, {x=67, y=52, z=34}, {x=71, y=60, z=34}, {x=25, y=63, z=34}, {x=19, y=64, z=34}, {x=32, y=66, z=34}, {x=66, y=72, z=34}, {x=41, y=81, z=34}, {x=45, y=93, z=34}, {x=54, y=99, z=34}, {x=38, y=5, z=35}, {x=68, y=48, z=35}, {x=69, y=51, z=35}, {x=48, y=53, z=35}, {x=37, y=57, z=35}, {x=77, y=58, z=35}, {x=32, y=60, z=35}, {x=20, y=61, z=35}, {x=27, y=61, z=35}, {x=33, y=65, z=35}, {x=58, y=65, z=35}, {x=58, y=72, z=35}, {x=60, y=73, z=35}, {x=30, y=74, z=35}, {x=41, y=74, z=35}, {x=41, y=87, z=35}, {x=22, y=58, z=36}, {x=64, y=58, z=36}, {x=39, y=70, z=36}, {x=36, y=77, z=36}, {x=44, y=83, z=36}, {x=40, y=86, z=36}, {x=35, y=56, z=37}, {x=65, y=59, z=37}, {x=66, y=62, z=37}, {x=62, y=67, z=37}, {x=39, y=68, z=37}, {x=40, y=86, z=37}, {x=53, y=88, z=37}, {x=43, y=97, z=37}, {x=52, y=99, z=37}, {x=37, y=3, z=38}, {x=35, y=55, z=38}, {x=38, y=56, z=38}, {x=25, y=57, z=38}, {x=65, y=57, z=38}, {x=71, y=61, z=38}, {x=33, y=65, z=38}, {x=61, y=65, z=38}, {x=50, y=66, z=38}, {x=38, y=68, z=38}, {x=46, y=97, z=38}, {x=44, y=100, z=38}, {x=51, y=102, z=38}, {x=29, y=42, z=39}, {x=27, y=43, z=39}, {x=70, y=48, z=39}, {x=72, y=52, z=39}, {x=23, y=57, z=39}, {x=26, y=57, z=39}, {x=28, y=58, z=39}, {x=55, y=58, z=39}, {x=73, y=59, z=39}, {x=65, y=65, z=39}, {x=41, y=68, z=39}, {x=42, y=81, z=39}, {x=55, y=88, z=39}, {x=43, y=91, z=39}, {x=45, y=100, z=39}, {x=23, y=57, z=40}, {x=29, y=57, z=40}, {x=76, y=58, z=40}, {x=73, y=59, z=40}, {x=78, y=59, z=40}, {x=31, y=60, z=40}, {x=64, y=64, z=40}, {x=41, y=67, z=40}, {x=42, y=75, z=40}, {x=37, y=78, z=40}, {x=42, y=92, z=40}, {x=51, y=101, z=40}, {x=48, y=105, z=40}, {x=75, y=59, z=41}, {x=55, y=63, z=41}, {x=35, y=68, z=41}, {x=35, y=69, z=41}, {x=35, y=71, z=41}, {x=34, y=42, z=42}, {x=29, y=55, z=42}, {x=50, y=61, z=42}, {x=34, y=65, z=42}, {x=57, y=88, z=42}, {x=48, y=89, z=42}, {x=49, y=89, z=42}, {x=27, y=22, z=43}, {x=26, y=28, z=43}, {x=31, y=46, z=43}, {x=66, y=52, z=43}, {x=49, y=57, z=43}, {x=56, y=57, z=43}, {x=41, y=69, z=43}, {x=36, y=52, z=44}, {x=63, y=54, z=44}, {x=51, y=55, z=44}, {x=57, y=56, z=44}, {x=69, y=57, z=44}, {x=64, y=65, z=44}, {x=55, y=90, z=44}, {x=30, y=42, z=45}, {x=31, y=52, z=45}, {x=51, y=54, z=45}, {x=24, y=57, z=45}, {x=70, y=62, z=45}, {x=39, y=69, z=45}, {x=35, y=80, z=45}, {x=29, y=81, z=45}, {x=44, y=85, z=45}, {x=41, y=86, z=45}, {x=33, y=9, z=46}, {x=28, y=44, z=46}, {x=50, y=54, z=46}, {x=47, y=55, z=46}, {x=45, y=56, z=46}, {x=45, y=58, z=46}, {x=47, y=58, z=46}, {x=30, y=63, z=46}, {x=27, y=81, z=46}, {x=28, y=81, z=46}, {x=40, y=86, z=46}, {x=29, y=16, z=47}, {x=32, y=10, z=48}, {x=66, y=49, z=48}, {x=29, y=52, z=48}, {x=53, y=54, z=48}, {x=55, y=54, z=48}, {x=61, y=58, z=48}, {x=59, y=61, z=48}, {x=50, y=63, z=48}, {x=26, y=82, z=48}, {x=43, y=85, z=48}, {x=48, y=86, z=48}, {x=31, y=19, z=49}, {x=30, y=46, z=49}, {x=63, y=51, z=49}, {x=41, y=53, z=49}, {x=31, y=60, z=49}, {x=67, y=1, z=50}, {x=37, y=8, z=50}, {x=40, y=30, z=50}, {x=43, y=57, z=50}, {x=59, y=57, z=50}, {x=60, y=57, z=50}, {x=29, y=61, z=50}, {x=34, y=63, z=50}, {x=49, y=65, z=50}, {x=65, y=3, z=51}, {x=45, y=29, z=51}, {x=41, y=58, z=51}, {x=42, y=60, z=51}, {x=46, y=64, z=51}, {x=47, y=67, z=51}, {x=52, y=68, z=51}, {x=69, y=51, z=52}, {x=53, y=55, z=52}, {x=45, y=62, z=52}, {x=64, y=2, z=53}, {x=3, y=3, z=53}, {x=10, y=6, z=53}, {x=31, y=14, z=53}, {x=37, y=35, z=53}, {x=43, y=48, z=53}, {x=71, y=50, z=53}, {x=52, y=54, z=53}, {x=43, y=57, z=53}, {x=55, y=57, z=53}, {x=52, y=67, z=53}, {x=48, y=72, z=53}, {x=5, y=1, z=54}, {x=9, y=4, z=54}, {x=62, y=4, z=54}, {x=33, y=8, z=54}, {x=42, y=29, z=54}, {x=42, y=32, z=54}, {x=43, y=34, z=54}, {x=41, y=39, z=54}, {x=41, y=57, z=54}, {x=34, y=61, z=54}, {x=58, y=2, z=55}, {x=59, y=3, z=55}, {x=38, y=7, z=55}, {x=40, y=12, z=55}, {x=38, y=39, z=55}, {x=33, y=46, z=55}, {x=28, y=54, z=55}, {x=29, y=55, z=55}, {x=30, y=57, z=55}, {x=54, y=58, z=55}, {x=52, y=63, z=55}, {x=37, y=7, z=56}, {x=55, y=8, z=56}, {x=33, y=45, z=56}, {x=58, y=0, z=57}, {x=9, y=5, z=57}, {x=34, y=7, z=57}, {x=54, y=8, z=57}, {x=17, y=9, z=57}, {x=32, y=12, z=57}, {x=37, y=39, z=57}, {x=41, y=45, z=57}, {x=31, y=46, z=57}, {x=49, y=50, z=57}, {x=50, y=56, z=57}, {x=46, y=59, z=57}, {x=48, y=66, z=57}, {x=51, y=67, z=57}, {x=15, y=3, z=58}, {x=8, y=10, z=58}, {x=41, y=11, z=58}, {x=40, y=13, z=58}, {x=42, y=45, z=58}, {x=50, y=51, z=58}, {x=20, y=5, z=59}, {x=19, y=7, z=59}, {x=22, y=8, z=59}, {x=23, y=9, z=59}, {x=40, y=13, z=59}, {x=33, y=14, z=59}, {x=42, y=41, z=59}, {x=20, y=6, z=60}, {x=9, y=8, z=60}, {x=46, y=8, z=60}, {x=34, y=39, z=60}, {x=30, y=52, z=60}, {x=43, y=57, z=60}, {x=18, y=5, z=61}, {x=11, y=10, z=61}, {x=36, y=36, z=61}, {x=47, y=55, z=61}, {x=38, y=56, z=61}, {x=61, y=59, z=61}, {x=56, y=60, z=61}, {x=36, y=6, z=62}, {x=55, y=7, z=62}, {x=26, y=10, z=62}, {x=29, y=13, z=62}, {x=46, y=13, z=62}, {x=57, y=60, z=62}, {x=18, y=7, z=63}, {x=30, y=11, z=63}, {x=53, y=13, z=63}, {x=45, y=14, z=63}, {x=36, y=32, z=63}, {x=46, y=41, z=63}, {x=29, y=43, z=63}, {x=29, y=44, z=63}, {x=29, y=46, z=63}, {x=29, y=50, z=63}, {x=30, y=52, z=63}, {x=46, y=54, z=63}, {x=19, y=6, z=64}, {x=54, y=8, z=64}, {x=16, y=11, z=64}, {x=42, y=16, z=64}, {x=36, y=25, z=64}, {x=37, y=27, z=64}, {x=36, y=28, z=64}, {x=37, y=29, z=64}, {x=40, y=33, z=64}, {x=30, y=36, z=64}, {x=43, y=39, z=64}, {x=62, y=61, z=64}, {x=21, y=6, z=65}, {x=24, y=6, z=65}, {x=53, y=10, z=65}, {x=52, y=12, z=65}, {x=27, y=17, z=65}, {x=39, y=17, z=65}, {x=29, y=19, z=65}, {x=32, y=22, z=65}, {x=28, y=42, z=65}, {x=60, y=61, z=65}, {x=24, y=6, z=66}, {x=26, y=6, z=66}, {x=19, y=12, z=66}, {x=28, y=20, z=66}, {x=31, y=26, z=66}, {x=39, y=55, z=66}, {x=42, y=6, z=67}, {x=24, y=7, z=67}, {x=20, y=14, z=67}, {x=41, y=21, z=67}, {x=28, y=22, z=67}, {x=29, y=46, z=67}, + {x=34, y=52, z=67}, {x=45, y=17, z=68}, {x=42, y=25, z=68}, {x=28, y=43, z=68}, {x=46, y=44, z=68}, {x=29, y=7, z=69}, {x=49, y=12, z=69}, {x=29, y=43, z=69}, {x=48, y=9, z=70}, {x=45, y=17, z=70}, {x=36, y=9, z=71}, {x=47, y=10, z=71}, {x=25, y=11, z=71}, {x=45, y=17, z=71}, {x=42, y=46, z=71}, {x=34, y=47, z=71}, {x=35, y=48, z=71}, {x=45, y=10, z=72}, {x=25, y=12, z=72}, {x=45, y=35, z=72}, {x=45, y=43, z=72}, {x=36, y=52, z=72}, {x=39, y=55, z=72}, {x=26, y=19, z=73}, {x=27, y=21, z=73}, {x=26, y=27, z=73}, {x=26, y=29, z=73}, {x=43, y=31, z=73}, {x=28, y=36, z=73}, {x=42, y=41, z=73}, {x=34, y=46, z=73}, {x=39, y=59, z=73}, {x=24, y=9, z=74}, {x=48, y=9, z=74}, {x=35, y=48, z=74}, {x=35, y=51, z=74}, {x=42, y=53, z=74}, {x=33, y=57, z=74}, {x=30, y=60, z=74}, {x=47, y=8, z=75}, {x=22, y=12, z=75}, {x=45, y=18, z=75}, {x=27, y=30, z=75}, {x=45, y=33, z=75}, {x=36, y=49, z=75}, {x=36, y=1, z=76}, {x=45, y=7, z=76}, {x=21, y=14, z=76}, {x=44, y=23, z=76}, {x=29, y=35, z=76}, {x=38, y=40, z=76}, {x=39, y=42, z=76}, {x=33, y=58, z=76}, {x=34, y=1, z=77}, {x=21, y=7, z=77}, {x=18, y=11, z=77}, {x=26, y=23, z=77}, {x=43, y=25, z=77}, {x=41, y=32, z=77}, {x=36, y=41, z=77}, {x=39, y=47, z=77}, {x=35, y=56, z=77}, {x=35, y=1, z=78}, {x=26, y=3, z=78}, {x=34, y=3, z=78}, {x=18, y=9, z=78}, {x=27, y=23, z=78}, {x=51, y=33, z=78}, {x=41, y=37, z=78}, {x=36, y=1, z=79}, {x=25, y=2, z=79}, {x=18, y=8, z=79}, {x=15, y=10, z=79}, {x=14, y=11, z=79}, {x=27, y=23, z=79}, {x=28, y=25, z=79}, {x=45, y=32, z=79}, {x=33, y=34, z=79}, {x=34, y=34, z=79}, {x=37, y=55, z=79}, {x=40, y=62, z=79}, {x=27, y=0, z=80}, {x=31, y=18, z=80}, {x=30, y=26, z=80}, {x=34, y=61, z=80}, {x=20, y=7, z=81}, {x=51, y=7, z=81}, {x=25, y=8, z=81}, {x=53, y=8, z=81}, {x=42, y=10, z=81}, {x=56, y=12, z=81}, {x=21, y=15, z=81}, {x=37, y=28, z=81}, {x=36, y=29, z=81}, {x=37, y=29, z=81}, {x=44, y=35, z=81}, {x=22, y=7, z=82}, {x=26, y=8, z=82}, {x=29, y=8, z=82}, {x=44, y=9, z=82}, {x=42, y=10, z=82}, {x=32, y=13, z=82}, {x=13, y=14, z=82}, {x=29, y=22, z=82}, {x=31, y=25, z=82}, {x=35, y=27, z=82}, {x=27, y=60, z=82}, {x=41, y=64, z=82}, {x=20, y=8, z=83}, {x=57, y=8, z=83}, {x=24, y=9, z=83}, {x=58, y=9, z=83}, {x=36, y=22, z=83}, {x=32, y=24, z=83}, {x=47, y=8, z=84}, {x=56, y=8, z=84}, {x=59, y=11, z=84}, {x=45, y=13, z=84}, {x=58, y=13, z=84}, {x=17, y=14, z=84}, {x=23, y=14, z=84}, {x=56, y=14, z=84}, {x=29, y=19, z=84}, {x=36, y=19, z=84}, {x=27, y=59, z=84}, {x=35, y=6, z=85}, {x=9, y=8, z=85}, {x=41, y=11, z=85}, {x=50, y=13, z=85}, {x=33, y=58, z=85}, {x=34, y=58, z=85}, {x=33, y=7, z=86}, {x=18, y=10, z=86}, {x=9, y=12, z=86}, {x=41, y=12, z=87}, {x=41, y=60, z=87}, {x=9, y=2, z=88}, {x=7, y=5, z=88}, {x=5, y=10, z=88}, {x=41, y=11, z=88}, {x=62, y=11, z=88}, {x=42, y=68, z=88}, {x=37, y=6, z=89}, {x=66, y=8, z=89}, {x=9, y=10, z=89}, {x=19, y=10, z=89}, {x=58, y=12, z=89}, {x=45, y=62, z=89}, {x=7, y=5, z=90}, {x=67, y=5, z=90}, {x=7, y=9, z=90}, {x=31, y=11, z=90}, {x=62, y=11, z=90}, {x=1, y=2, z=91}, {x=5, y=5, z=91}, {x=69, y=5, z=91}, {x=62, y=8, z=91}, {x=58, y=9, z=91}, {x=63, y=10, z=91}, {x=35, y=7, z=92}, {x=62, y=9, z=92}, {x=33, y=13, z=92}, {x=36, y=62, z=92}, {x=37, y=3, z=93}, {x=37, y=6, z=93}, {x=64, y=6, z=93}, {x=32, y=10, z=93}, {x=34, y=14, z=93}, {x=39, y=57, z=93}, {x=41, y=67, z=93}, {x=33, y=9, z=94}, {x=38, y=57, z=94}, {x=41, y=69, z=94}, {x=40, y=1, z=95}, {x=34, y=7, z=97}, {x=33, y=9, z=97}, {x=33, y=10, z=102}, {x=33, y=7, z=105}, {x=35, y=9, z=107} + } + }, + { + filename = TREE2_FILE, + size = {x = 62, y = 65, z = 65}, + center = {x = 30, y = 12, z = 36}, + requiredIslandDepth = 16, + requiredIslandRadius = 24, + nodesWithConstructor = { {x=35, y=53, z=1}, {x=33, y=59, z=1}, {x=32, y=58, z=3}, {x=31, y=57, z=5}, {x=40, y=58, z=6}, {x=29, y=57, z=7}, {x=39, y=51, z=8}, {x=52, y=53, z=8}, {x=32, y=53, z=9}, {x=25, y=58, z=9}, {x=51, y=51, z=10}, {x=47, y=50, z=11}, {x=50, y=55, z=11}, {x=28, y=57, z=11}, {x=26, y=39, z=12}, {x=30, y=39, z=12}, {x=24, y=40, z=12}, {x=53, y=52, z=12}, {x=29, y=57, z=12}, {x=43, y=59, z=12}, {x=26, y=39, z=13}, {x=36, y=48, z=13}, {x=27, y=39, z=14}, {x=39, y=48, z=14}, {x=33, y=50, z=14}, {x=43, y=50, z=14}, {x=24, y=59, z=14}, {x=41, y=49, z=15}, {x=33, y=12, z=16}, {x=36, y=46, z=16}, {x=50, y=51, z=16}, {x=46, y=57, z=16}, {x=36, y=45, z=17}, {x=27, y=46, z=17}, {x=22, y=48, z=17}, {x=45, y=50, z=17}, {x=31, y=38, z=18}, {x=32, y=38, z=18}, {x=39, y=46, z=18}, {x=51, y=51, z=18}, {x=31, y=11, z=19}, {x=32, y=38, z=19}, {x=39, y=41, z=19}, {x=45, y=57, z=19}, {x=29, y=58, z=19}, {x=28, y=60, z=20}, {x=38, y=40, z=21}, {x=30, y=58, z=21}, {x=31, y=13, z=22}, {x=20, y=41, z=22}, {x=22, y=43, z=22}, {x=20, y=48, z=22}, {x=22, y=39, z=23}, {x=49, y=50, z=23}, {x=52, y=52, z=23}, {x=53, y=53, z=23}, {x=32, y=55, z=23}, {x=36, y=59, z=23}, {x=31, y=60, z=23}, {x=25, y=46, z=24}, {x=40, y=56, z=24}, {x=34, y=58, z=24}, {x=38, y=58, z=24}, {x=32, y=39, z=25}, {x=40, y=46, z=25}, {x=39, y=55, z=25}, {x=36, y=45, z=26}, {x=12, y=7, z=28}, {x=34, y=33, z=28}, {x=31, y=36, z=28}, {x=37, y=41, z=28}, {x=14, y=60, z=28}, {x=19, y=13, z=29}, {x=12, y=43, z=29}, {x=8, y=45, z=29}, {x=31, y=46, z=29}, {x=39, y=47, z=29}, {x=13, y=60, z=29}, {x=22, y=63, z=29}, {x=51, y=9, z=30}, {x=32, y=39, z=30}, {x=33, y=40, z=30}, {x=34, y=44, z=30}, {x=22, y=1, z=31}, {x=24, y=2, z=31}, {x=20, y=7, z=31}, {x=51, y=9, z=31}, {x=16, y=12, z=31}, {x=34, y=27, z=31}, {x=22, y=43, z=31}, {x=27, y=44, z=31}, {x=23, y=51, z=31}, {x=42, y=58, z=31}, {x=9, y=60, z=31}, {x=22, y=5, z=32}, {x=22, y=6, z=32}, {x=50, y=10, z=32}, {x=53, y=11, z=32}, {x=41, y=15, z=32}, {x=43, y=15, z=32}, {x=31, y=21, z=32}, {x=31, y=28, z=32}, {x=12, y=42, z=32}, {x=15, y=42, z=32}, {x=13, y=48, z=32}, {x=37, y=49, z=32}, {x=18, y=59, z=32}, {x=52, y=9, z=33}, {x=40, y=10, z=33}, {x=43, y=10, z=33}, {x=22, y=11, z=33}, {x=27, y=11, z=33}, {x=50, y=11, z=33}, {x=22, y=15, z=33}, {x=36, y=29, z=33}, {x=33, y=37, z=33}, {x=9, y=42, z=33}, {x=14, y=42, z=33}, {x=18, y=43, z=33}, {x=23, y=43, z=33}, {x=33, y=49, z=33}, {x=43, y=53, z=33}, {x=54, y=53, z=33}, {x=31, y=55, z=33}, {x=23, y=58, z=33}, {x=43, y=10, z=34}, {x=44, y=10, z=34}, {x=32, y=12, z=34}, {x=46, y=13, z=34}, {x=28, y=29, z=34}, {x=20, y=42, z=34}, {x=39, y=50, z=34}, {x=51, y=52, z=34}, {x=54, y=52, z=34}, {x=35, y=55, z=34}, {x=51, y=56, z=34}, {x=35, y=5, z=35}, {x=34, y=8, z=35}, {x=33, y=10, z=35}, {x=49, y=10, z=35}, {x=43, y=14, z=35}, {x=36, y=35, z=35}, {x=30, y=47, z=35}, {x=9, y=48, z=35}, {x=39, y=51, z=35}, {x=56, y=52, z=35}, {x=40, y=56, z=35}, {x=13, y=59, z=35}, {x=26, y=62, z=35}, {x=28, y=13, z=36}, {x=38, y=17, z=36}, {x=38, y=20, z=36}, {x=27, y=26, z=36}, {x=38, y=35, z=36}, {x=24, y=39, z=36}, {x=6, y=43, z=36}, {x=13, y=57, z=36}, {x=48, y=7, z=37}, {x=33, y=8, z=37}, {x=50, y=9, z=37}, {x=36, y=11, z=37}, {x=27, y=20, z=37}, {x=27, y=22, z=37}, {x=38, y=24, z=37}, {x=33, y=34, z=37}, {x=9, y=42, z=37}, {x=14, y=42, z=37}, {x=25, y=42, z=37}, {x=53, y=50, z=37}, {x=33, y=53, z=37}, {x=54, y=59, z=37}, {x=28, y=21, z=38}, {x=39, y=34, z=38}, {x=24, y=35, z=38}, {x=8, y=43, z=38}, {x=6, y=47, z=38}, {x=48, y=51, z=38}, {x=61, y=53, z=38}, {x=26, y=57, z=38}, {x=27, y=57, z=38}, {x=32, y=59, z=38}, {x=29, y=62, z=38}, {x=38, y=62, z=38}, {x=33, y=7, z=39}, {x=34, y=9, z=39}, {x=28, y=23, z=39}, {x=34, y=37, z=39}, {x=19, y=42, z=39}, {x=55, y=50, z=39}, {x=47, y=51, z=39}, {x=11, y=54, z=39}, {x=9, y=60, z=39}, {x=33, y=61, z=39}, {x=33, y=4, z=40}, {x=30, y=11, z=40}, {x=39, y=13, z=40}, {x=36, y=23, z=40}, {x=22, y=38, z=40}, {x=54, y=49, z=40}, {x=53, y=50, z=40}, {x=23, y=54, z=40}, {x=28, y=57, z=40}, {x=29, y=57, z=40}, {x=31, y=29, z=41}, {x=27, y=34, z=41}, {x=30, y=37, z=41}, {x=42, y=38, z=41}, {x=12, y=42, z=41}, {x=15, y=42, z=41}, {x=44, y=44, z=41}, {x=28, y=57, z=41}, {x=55, y=57, z=41}, {x=9, y=59, z=41}, {x=30, y=10, z=42}, {x=26, y=15, z=42}, {x=31, y=15, z=42}, {x=34, y=17, z=42}, {x=28, y=36, z=42}, {x=38, y=44, z=42}, {x=42, y=44, z=42}, {x=46, y=44, z=42}, {x=32, y=47, z=42}, {x=52, y=47, z=42}, {x=39, y=55, z=42}, {x=54, y=56, z=42}, {x=34, y=59, z=42}, {x=40, y=11, z=43}, {x=30, y=14, z=43}, {x=28, y=16, z=43}, {x=34, y=31, z=43}, {x=11, y=43, z=43}, {x=14, y=43, z=43}, {x=28, y=47, z=43}, {x=57, y=50, z=43}, {x=61, y=54, z=43}, {x=30, y=58, z=43}, {x=34, y=59, z=43}, {x=7, y=61, z=43}, {x=41, y=10, z=44}, {x=29, y=15, z=44}, {x=36, y=39, z=44}, {x=6, y=43, z=44}, {x=30, y=47, z=44}, {x=57, y=50, z=44}, {x=38, y=10, z=45}, {x=42, y=10, z=45}, {x=11, y=43, z=45}, {x=14, y=43, z=45}, {x=46, y=44, z=45}, {x=32, y=45, z=45}, {x=55, y=45, z=45}, {x=3, y=48, z=45}, {x=31, y=57, z=45}, {x=41, y=3, z=46}, {x=40, y=7, z=46}, {x=28, y=11, z=46}, {x=23, y=13, z=46}, {x=19, y=43, z=46}, {x=24, y=9, z=47}, {x=39, y=9, z=47}, {x=43, y=12, z=47}, {x=5, y=43, z=47}, {x=42, y=43, z=47}, {x=46, y=43, z=47}, {x=24, y=47, z=47}, {x=60, y=52, z=47}, {x=24, y=54, z=47}, {x=37, y=57, z=47}, {x=11, y=60, z=47}, {x=27, y=9, z=48}, {x=27, y=11, z=48}, {x=22, y=14, z=48}, {x=15, y=44, z=48}, {x=51, y=45, z=48}, {x=23, y=49, z=48}, {x=59, y=53, z=48}, {x=9, y=56, z=48}, {x=33, y=59, z=48}, {x=41, y=14, z=49}, {x=8, y=43, z=49}, {x=10, y=43, z=49}, {x=39, y=43, z=49}, {x=34, y=44, z=49}, {x=47, y=44, z=49}, {x=48, y=44, z=49}, {x=24, y=51, z=49}, {x=10, y=55, z=49}, {x=32, y=59, z=49}, {x=20, y=61, z=49}, {x=11, y=63, z=49}, {x=25, y=8, z=50}, {x=22, y=10, z=50}, {x=42, y=14, z=50}, {x=10, y=43, z=50}, {x=43, y=43, z=50}, {x=61, y=46, z=50}, {x=39, y=54, z=50}, {x=24, y=12, z=51}, {x=50, y=44, z=51}, {x=52, y=45, z=51}, {x=54, y=45, z=51}, {x=2, y=46, z=51}, {x=8, y=51, z=51}, {x=7, y=52, z=51}, {x=37, y=58, z=51}, {x=22, y=50, z=52}, {x=25, y=55, z=52}, {x=39, y=58, z=52}, {x=20, y=7, z=53}, {x=40, y=43, z=53}, {x=58, y=45, z=53}, {x=60, y=50, z=53}, {x=22, y=55, z=53}, {x=28, y=56, z=53}, {x=50, y=62, z=53}, {x=54, y=45, z=54}, {x=61, y=46, z=54}, {x=30, y=47, z=54}, {x=30, y=49, z=54}, {x=53, y=53, z=54}, {x=18, y=55, z=54}, {x=51, y=56, z=54}, {x=46, y=62, z=54}, {x=21, y=56, z=55}, {x=24, y=56, z=55}, {x=38, y=61, z=55}, {x=19, y=49, z=56}, {x=46, y=52, z=56}, {x=47, y=53, z=56}, {x=59, y=47, z=57}, {x=26, y=57, z=57}, {x=45, y=43, z=58}, {x=15, y=50, z=58}, {x=11, y=51, z=58}, {x=50, y=44, z=59}, {x=53, y=47, z=59}, {x=43, y=49, z=59}, {x=18, y=50, z=59}, {x=18, y=51, z=60}, {x=38, y=45, z=61}, {x=50, y=47, z=61}, {x=41, y=48, z=61} }, + } + }, + MODNAME = minetest.get_current_modname() -- don't hardcode incase it's copied into other mods + } + + -- Must be called during mod load time, as it uses minetest.register_node() + -- (add an optional dependency for any mod where the tree & leaf textures might be + -- sourced from, to ensure they are loaded before this is called) + SkyTrees.init = function() + + SkyTrees.minimumIslandRadius = 100000 + SkyTrees.minimumIslandDepth = 100000 + SkyTrees.maximumYOffset = 0 + SkyTrees.maximumHeight = 0 + + SkyTrees.nodeName_sideVines = interop.find_node_name(NODENAMES_VINES) + SkyTrees.nodeName_hangingVine = interop.find_node_name(NODENAMES_HANGINGVINE) + SkyTrees.nodeName_hangingRoot = interop.find_node_name(NODENAMES_HANGINGROOT) + + for i,tree in pairs(SkyTrees.schematicInfo) do + local fullFilename = minetest.get_modpath(SkyTrees.MODNAME) .. DIR_DELIM .. tree.filename + + if not interop.file_exists(fullFilename) then + -- remove the schematic from the list + SkyTrees.schematicInfo[i] = nil + else + SkyTrees.minimumIslandRadius = math_min(SkyTrees.minimumIslandRadius, tree.requiredIslandRadius) + SkyTrees.minimumIslandDepth = math_min(SkyTrees.minimumIslandDepth, tree.requiredIslandDepth) + SkyTrees.maximumYOffset = math_max(SkyTrees.maximumYOffset, tree.center.y) + SkyTrees.maximumHeight = math_max(SkyTrees.maximumHeight, tree.size.y) + + tree.theme = {} + SkyTrees.schematicInfo[tree.filename] = tree -- so schematicInfo of trees can be indexed by name + end + end + + local function generate_woodTypes(nodeName_templateWood, overlay, barkoverlay, nodesuffix, description, dropsTemplateWood) + + local trunkNode = minetest.registered_nodes[nodeName_templateWood] + local newTrunkNode = {} + for key, value in pairs(trunkNode) do newTrunkNode[key] = value end + newTrunkNode.name = SkyTrees.MODNAME .. ":" .. nodesuffix + newTrunkNode.description = description + if newTrunkNode.paramtype2 == nil then newTrunkNode.paramtype2 = "facedir" end + if newTrunkNode.on_dig ~= nil and minetest.get_modpath("main") then + newTrunkNode.on_dig = nil -- Crafter has special trunk auto-digging logic that doesn't make sense for giant trees + end + + if dropsTemplateWood then + newTrunkNode.drop = nodeName_templateWood + if newTrunkNode.groups == nil then newTrunkNode.groups = {} end + newTrunkNode.groups.not_in_creative_inventory = 1 + else + newTrunkNode.drop = nil + end + + local tiles = trunkNode.tiles + if type(tiles) == "table" then + newTrunkNode.tiles = {} + for key, value in pairs(tiles) do newTrunkNode.tiles[key] = value .. overlay end + else + newTrunkNode.tiles = tiles .. overlay + end + + local newBarkNode = {} + for key, value in pairs(newTrunkNode) do newBarkNode[key] = value end + newBarkNode.name = newBarkNode.name .. BARK_SUFFIX + newBarkNode.description = S("Bark of @1", newBarkNode.description) + -- .drop: leave the bark nodes dropping the trunk wood + + tiles = trunkNode.tiles + if type(tiles) == "table" then + newBarkNode.tiles = { tiles[#tiles] .. barkoverlay } + end + + --minetest.log("info", newTrunkNode.name .. ": " .. dump(newTrunkNode)) + minetest.register_node(newTrunkNode.name, newTrunkNode) + minetest.register_node(newBarkNode.name, newBarkNode) + return newTrunkNode.name + end + + local function generate_leafTypes(nodeName_templateLeaf, overlay, nodesuffix, description, dropsTemplateLeaf, glowVariantBrightness) + + local leafNode = minetest.registered_nodes[nodeName_templateLeaf] + local newLeafNode = {} + for key, value in pairs(leafNode) do newLeafNode[key] = value end + newLeafNode.name = SkyTrees.MODNAME .. ":" .. nodesuffix + newLeafNode.description = description + newLeafNode.sunlight_propagates = true -- soo many leaves they otherwise blot out the sun. + if dropsTemplateLeaf then + newLeafNode.drop = nodeName_templateLeaf + if newLeafNode.groups == nil then newLeafNode.groups = {} end + newLeafNode.groups.not_in_creative_inventory = 1 + else + newLeafNode.drop = nil + end + + local tiles = leafNode.tiles + if type(tiles) == "table" then + newLeafNode.tiles = {} + for key, value in pairs(tiles) do newLeafNode.tiles[key] = value .. overlay end + else + newLeafNode.tiles = tiles .. overlay + end + + minetest.register_node(newLeafNode.name, newLeafNode) + + if glowVariantBrightness ~= nil and glowVariantBrightness > 0 and BIOLUMINESCENCE then + local glowingLeafNode = {} + for key, value in pairs(newLeafNode) do glowingLeafNode[key] = value end + glowingLeafNode.name = newLeafNode.name .. GLOW_SUFFIX + glowingLeafNode.description = S("Glowing @1", description) + glowingLeafNode.light_source = glowVariantBrightness + minetest.register_node(glowingLeafNode.name, glowingLeafNode) + end + + return newLeafNode.name + end + + local templateWood = interop.find_node_name(NODENAMES_TREEWOOD) + if templateWood == 'ignore' then + SkyTrees.disabled = "Could not find any tree nodes" + return + end + local normalwood = generate_woodTypes(templateWood, "", "", "tree", S("Giant tree"), true) + local darkwood = generate_woodTypes(templateWood, "^[colorize:black:205", "^[colorize:black:205", "darkwood", S("Giant Ziricote"), false) + local deadwood = generate_woodTypes(templateWood, "^[colorize:#EFE6B9:110", "^[colorize:#E8D0A0:110", "deadbleachedwood", S("Dead bleached wood"), false) -- make use of the bark blocks to introduce some color variance in the tree + + + local templateLeaf = interop.find_node_name(NODENAMES_TREELEAVES) + if templateLeaf == 'ignore' then + SkyTrees.disabled = "Could not find any treeleaf nodes" + return + end + local greenleaf1 = generate_leafTypes(templateLeaf, "", "leaves", S("Leaves of a giant tree"), true) -- drops templateLeaf because these look close enough to the original leaves that we won't clutter the game & creative-menu with tiny visual variants that other recipes/parts of the game won't know about + local greenleaf2 = generate_leafTypes(templateLeaf, "^[colorize:#00FF00:16", "leaves2", S("Leaves of a giant tree"), false) + local greenleaf3 = generate_leafTypes(templateLeaf, "^[colorize:#90FF60:28", "leaves3", S("Leaves of a giant tree"), false) + + local whiteblossom1 = generate_leafTypes(templateLeaf, "^[colorize:#fffdfd:alpha", "blossom_white1", S("Blossom"), false) + local whiteblossom2 = generate_leafTypes(templateLeaf, "^[colorize:#fff0f0:alpha", "blossom_white2", S("Blossom"), false) + local pinkblossom = generate_leafTypes(templateLeaf, "^[colorize:#FFE3E8:alpha", "blossom_whitepink", S("Blossom"), false, 5) + + local sakurablossom1 = generate_leafTypes(templateLeaf, "^[colorize:#ea327c:alpha", "blossom_red", S("Sakura blossom"), false, 5) + local sakurablossom2 = generate_leafTypes(templateLeaf, "^[colorize:#ffc3dd:alpha", "blossom_pink", S("Sakura blossom"), false) + + local wisteriaBlossom1 = generate_leafTypes(templateLeaf, "^[colorize:#8087ec:alpha", "blossom_wisteria1", S("Wisteria blossom"), false) + local wisteriaBlossom2 = generate_leafTypes(templateLeaf, "^[colorize:#ccc9ff:alpha", "blossom_wisteria2", S("Wisteria blossom"), false, 7) + + + local tree = SkyTrees.schematicInfo[TREE1_FILE] + if tree ~= nil then + + tree.defaultThemeName = "Green foliage" + tree.theme[tree.defaultThemeName] = { + relativeProbability = 5, + trunk = normalwood, + leaves1 = greenleaf1, + leaves2 = greenleaf2, + leaves_special = greenleaf3, + vineflags = { leaves = true, hanging_leaves = true }, + + init = function(self, position) + -- if it's hot and humid then add vines + local viney = get_heat(position) >= VINES_REQUIRED_TEMPERATURE and get_humidity(position) >= VINES_REQUIRED_HUMIDITY + + if viney then + local flagSeed = position.x * 3 + position.z + ISLANDS_SEED + self.vineflags.hanging_leaves = (flagSeed % 10) <= 3 or (flagSeed % 10) >= 8 + self.vineflags.leaves = (flagSeed % 10) <= 5 + self.vineflags.bark = (flagSeed % 10) <= 2 + self.vineflags.hanging_bark = (flagSeed % 10) <= 1 + end + end + } + + tree.theme["Haunted"] = { + relativeProbability = 2, + trunk = darkwood, + vineflags = { hanging_roots = true }, + hasHeart = false, + hasSoil = false, + + init = function(self, position) + -- 60% of these trees are a hanging roots variant + self.vineflags.hanging_roots = (position.x * 3 + position.y + position.z + ISLANDS_SEED) % 10 < 60 + end + } + + tree.theme["Dead"] = { + relativeProbability = 0, -- 0 because this theme will be chosen based on location, rather than chance. + trunk = deadwood, + hasHeart = false + } + + tree.theme["Sakura"] = { + relativeProbability = 2, + trunk = darkwood, + leaves1 = sakurablossom2, + leaves2 = whiteblossom2, + leaves_special = sakurablossom1, + + init = function(self, position) + -- 40% of these trees are a glowing variant + self.glowing = (position.x * 3 + position.z + ISLANDS_SEED) % 10 <= 3 and BIOLUMINESCENCE + self.leaves_special = sakurablossom1 + if self.glowing then self.leaves_special = sakurablossom1 .. GLOW_SUFFIX end + end + } + + end + + tree = SkyTrees.schematicInfo[TREE2_FILE] + if tree ~= nil then + + -- copy the green leaves theme from tree1 + tree.defaultThemeName = "Green foliage" + tree.theme[tree.defaultThemeName] = SkyTrees.schematicInfo[TREE1_FILE].theme["Green foliage"] + + tree.theme["Wisteria"] = { + relativeProbability = 2.5, + trunk = normalwood, + leaves1 = greenleaf1, + leaves2 = wisteriaBlossom1, + leaves_special = wisteriaBlossom2, + vineflags = { leaves = true, hanging_leaves = true, hanging_bark = true }, + + init = function(self, position) + -- 40% of these trees are a glowing variant + self.glowing = (position.x * 3 + position.z + ISLANDS_SEED) % 10 <= 3 and BIOLUMINESCENCE + self.leaves_special = wisteriaBlossom2 + if self.glowing then self.leaves_special = wisteriaBlossom2 .. GLOW_SUFFIX end + + -- if it's hot and humid then allow vines on the trunk as well + self.vineflags.bark = get_heat(position) >= VINES_REQUIRED_TEMPERATURE and get_humidity(position) >= VINES_REQUIRED_HUMIDITY + end + } + + tree.theme["Blossom"] = { + relativeProbability = 1.5, + trunk = normalwood, + leaves1 = whiteblossom1, + leaves2 = whiteblossom2, + leaves_special = normalwood..BARK_SUFFIX, + + init = function(self, position) + -- 30% of these trees are a glowing variant + self.glowing = (position.x * 3 + position.z + ISLANDS_SEED) % 10 <= 2 and BIOLUMINESCENCE + self.leaves_special = normalwood..BARK_SUFFIX + if self.glowing then self.leaves_special = pinkblossom .. GLOW_SUFFIX end + end + } + + end + + -- fill in any omitted fields in the themes with default values + for _,treeInfo in pairs(SkyTrees.schematicInfo) do + for _,theme in pairs(treeInfo.theme) do + if theme.bark == nil then theme.bark = theme.trunk .. BARK_SUFFIX end + if theme.leaves1 == nil then theme.leaves1 = 'ignore' end + if theme.leaves2 == nil then theme.leaves2 = 'ignore' end + if theme.leaves_special == nil then theme.leaves_special = theme.leaves1 end + + if theme.vineflags == nil then theme.vineflags = {} end + if theme.relativeProbability == nil then theme.relativeProbability = 1.0 end + if theme.glowing == nil then theme.glowing = false end + if theme.hasSoil == nil then theme.hasSoil = true end + if theme.hasHeart == nil then theme.hasHeart = true end + end + end + + -- The heart of the Tree + -- The difference between a living tree and and a haunted/darkened husk + -- + -- Ideally trees would slowly fizzlefade to/from the Haunted theme depending on + -- whether a player steals or restores the heart, meaning a house hollowed out inside + -- a living tree would need the heart to still be kept inside it, perhaps on its + -- own pedestal (unless wanting an Addam's Family treehouse). + local heartwoodTexture = minetest.registered_nodes[templateWood].tiles + if type(heartwoodTexture) == "table" then heartwoodTexture = heartwoodTexture[1] end + local heartwoodGlow = minetest.LIGHT_MAX -- plants can grow under the heart of the Tree + if not BIOLUMINESCENCE then heartwoodGlow = 0 end -- :( + minetest.register_node( + SkyTrees.MODNAME .. ":HeartWood", + { + tiles = { heartwoodTexture }, + description = S("Heart of the Tree"), + groups = {oddly_breakable_by_hand = 3, handy = 1}, + _mcl_hardness = 0.4, + drawtype = "nodebox", + paramtype = "light", + light_source = heartwoodGlow, -- plants can grow under the heart of the Tree + node_box = { + type = "fixed", + fixed = { + --[[ Original heart + {-0.38, -0.38, -0.38, 0.38, 0.38, 0.38}, + {0.15, 0.15, 0.15, 0.5, 0.5, 0.5}, + {-0.5, 0.15, 0.15, -0.15, 0.5, 0.5}, + {-0.5, 0.15, -0.5, -0.15, 0.5, -0.15}, + {0.15, 0.15, -0.5, 0.5, 0.5, -0.15}, + {0.15, -0.5, -0.5, 0.5, -0.15, -0.15}, + {-0.5, -0.5, -0.5, -0.15, -0.15, -0.15}, + {-0.5, -0.5, 0.15, -0.15, -0.15, 0.5}, + {0.15, -0.5, 0.15, 0.5, -0.15, 0.5} + ]] + + {-0.38, -0.38, -0.38, 0.38, 0.38, 0.38}, + {-0.5, -0.2, -0.2, 0.5, 0.2, 0.2}, + {-0.2, -0.5, -0.2, 0.2, 0.5, 0.2}, + {-0.2, -0.2, -0.5, 0.2, 0.2, 0.5} + } + } + } + ) + end + + -- this is hack to work around how place_schematic() never invalidates its cache + -- a unique schematic filename is generated for each unique theme + SkyTrees.getMalleatedFilename = function(schematicInfo, themeName) + + -- create a unique id for the theme + local theme = schematicInfo.theme[themeName] + local flags = 0 + if theme.glowing then flags = flags + 1 end + if theme.vineflags.leaves then flags = flags + 2 end + if theme.vineflags.hanging_leaves then flags = flags + 4 end + if theme.vineflags.bark then flags = flags + 8 end + if theme.vineflags.hanging_bark then flags = flags + 16 end + if theme.vineflags.hanging_roots then flags = flags + 32 end + if theme.hasSoil then flags = flags + 64 end + if theme.hasHeart then flags = flags + 128 end + + local uniqueId = themeName .. flags + + if schematicInfo.malleatedFilenames == nil then schematicInfo.malleatedFilenames = {} end + + if schematicInfo.malleatedFilenames[uniqueId] == nil then + + local malleationCount = 0 + for _ in pairs(schematicInfo.malleatedFilenames) do malleationCount = malleationCount + 1 end + + local malleatedFilename = minetest.get_modpath(SkyTrees.MODNAME) .. DIR_DELIM + for i = 1, malleationCount do + malleatedFilename = malleatedFilename .. '.' .. DIR_DELIM -- should work on both Linux and Windows + end + malleatedFilename = malleatedFilename .. schematicInfo.filename + schematicInfo.malleatedFilenames[uniqueId] = malleatedFilename + end + + --minetest.log("info", "Malleated file name for " .. uniqueId .. " is " .. schematicInfo.malleatedFilenames[uniqueId]) + return schematicInfo.malleatedFilenames[uniqueId] + end + + + -- Returns true if a tree in this location would be dead + -- (checks for desert) + SkyTrees.isDead = function(position) + local heat = get_heat(position) + local humidity = get_humidity(position) + + if humidity <= 10 or (humidity <= 20 and heat >= 80) then + return true + end + + local biomeId = interop.get_biome_key(position) + local biome = biomes[biomeId] + if biome ~= nil and biome.node_top ~= nil then + local modname, nodename = interop.split_nodename(biome.node_top) + if string.find(nodename, "sand") or string.find(nodename, "desert") then + return true + end + end + end + + + -- Returns the name of a suitable theme + -- Picks a theme from the schematicInfo automatically, based on the themes' relativeProbability, and location. + SkyTrees.selectTheme = function(position, schematicInfo, choiceSeed) + + local deadThemeName = "Dead" + + if schematicInfo.theme[deadThemeName] ~= nil then + -- Tree is dead and bleached in desert biomes + if SkyTrees.isDead(position) then + return deadThemeName + end + end + + if choiceSeed == nil then choiceSeed = 0 end + -- Use a known PRNG implementation + local prng = PcgRandom( + position.x * 65732 + + position.z * 729 + + schematicInfo.size.x * 3 + + choiceSeed + ) + + local sumProbabilities = 0 + for _,theme in pairs(schematicInfo.theme) do + sumProbabilities = sumProbabilities + theme.relativeProbability + end + + local selection = prng:next(0, sumProbabilities * 1000) / 1000 + if DEBUG_SKYTREES then minetest.log("info", "Skytrees x: "..position.x.." y: ".. position.y .. " sumProbabilities: " .. sumProbabilities .. ", selection: " .. selection) end + + sumProbabilities = 0 + for themeName,theme in pairs(schematicInfo.theme) do + if selection <= sumProbabilities + theme.relativeProbability then + return themeName + else + sumProbabilities = sumProbabilities + theme.relativeProbability + end + end + + error(SkyTrees.MODNAME .. " - SkyTrees.selectTheme failed to find a theme", 0) + return schematicInfo.defaultThemeName + end + + + -- position is a vector {x, y, z} + -- rotation must be either 0, 90, 180, or 270 + -- schematicInfo must be one of the items in SkyTrees.schematicInfo[] + -- topsoil [optional] is the biome's "node_top" - the ground node of the region. + SkyTrees.placeTree = function(position, rotation, schematicInfo, themeName, topsoil) + + if SkyTrees.disabled ~= nil then + error(SkyTrees.MODNAME .. " - SkyTrees are disabled: " .. SkyTrees.disabled, 0) + return + end + + -- returns a new position vector, rotated around (0, 0) to match the schematic rotation (provided the schematic_size is correct!) + local function rotatePositon(position, schematic_size, rotation) + local result = vector.new(position) + if rotation == 90 then + result.x = position.z + result.z = schematic_size.x - position.x - 1 + elseif rotation == 180 then + result.x = schematic_size.x - position.x - 1 + result.z = schematic_size.z - position.z - 1 + elseif rotation == 270 then + result.x = schematic_size.z - position.z - 1 + result.z = position.x + end + return result + end + + local rotatedCenter = rotatePositon(schematicInfo.center, schematicInfo.size, rotation) + local treePos = vector.subtract(position, rotatedCenter) + + if themeName == nil then themeName = SkyTrees.selectTheme(position, schematicInfo) end + local theme = schematicInfo.theme[themeName] + if theme == nil then error(MODNAME .. ' called SkyTrees.placeTree("' .. schematicInfo.filename .. '") with invalid theme: ' .. themeName, 0) end + if theme.init ~= nil then theme.init(theme, position) end + + if theme.hasSoil then + if topsoil == nil then + topsoil = 'ignore' + if minetest.get_biome_data == nil then error(SkyTrees.MODNAME .. " requires Minetest v5.0 or greater, or to have minor modifications to support v0.4.x", 0) end + local treeBiome = biomes[interop.get_biome_key(position)] + if treeBiome ~= nil and treeBiome.node_top ~= nil then topsoil = treeBiome.node_top end + end + else + topsoil = 'ignore' + end + + local nodeName_heart = SkyTrees.MODNAME .. ":HeartWood" + if not theme.hasHeart then nodeName_heart = 'ignore' end + + -- theme.init() may have changed the vineflags, so update the replacement node names + if theme.vineflags.hanging_leaves == true and SkyTrees.nodeName_hangingVine == 'ignore' then theme.vineflags.leaves = true end -- if there are no hanging vines then substitute side_vines + if theme.vineflags.leaves == true then theme.leaf_vines = SkyTrees.nodeName_sideVines else theme.leaf_vines = 'ignore' end + if theme.vineflags.bark == true then theme.bark_vines = SkyTrees.nodeName_sideVines else theme.bark_vines = 'ignore' end + if theme.vineflags.hanging_leaves == true then theme.hanging_leaf_vines = SkyTrees.nodeName_hangingVine else theme.hanging_leaf_vines = 'ignore' end + if theme.vineflags.hanging_bark == true then theme.hanging_bark_vines = SkyTrees.nodeName_hangingVine else theme.hanging_bark_vines = 'ignore' end + if theme.vineflags.hanging_roots == true and SkyTrees.nodeName_hangingRoot ~= 'ignore' then theme.hanging_bark_vines = SkyTrees.nodeName_hangingRoot end + + local replacements = { + ['treebark\r\n\r\n~~~ Cloudlands_tree mts by Dr.Frankenstone: Amateur Arborist ~~~\r\n\r\n'] = theme.bark, -- because this node name is always replaced, it can double as space for a text header in the file. + ['default:tree'] = theme.trunk, + ['default:leaves'] = theme.leaves1, + ['leaves_alt'] = theme.leaves2, + ['leaves_special'] = theme.leaves_special, + ['leaf_vines'] = theme.leaf_vines, + ['bark_vines'] = theme.bark_vines, + ['hanging_leaf_vines'] = theme.hanging_leaf_vines, + ['hanging_bark_vines'] = theme.hanging_bark_vines, + ['default:dirt'] = topsoil, + ['heart'] = nodeName_heart + } + + if minetest.global_exists("schemlib") then + -- Use schemlib instead minetest.place_schematic(), to avoid bugs in place_schematic() + + local filename = minetest.get_modpath(SkyTrees.MODNAME) .. DIR_DELIM .. schematicInfo.filename + local plan_obj = schemlib.plan.new() + plan_obj:read_from_schem_file(filename, replacements) + plan_obj.data.ground_y = -1 -- prevent read_from_schem_file() from automatically adjusting the height when it encounters dirt in the schematic (SkyTrees sometimes have dirt up in their nooks) + plan_obj.data.facedir = round(rotation / 90) + rotatedCenter = plan_obj:get_world_pos(vector.add(vector.multiply(schematicInfo.center, -1), -1), position) -- this function performs the rotation I require, even if it's named/intended for something else. + plan_obj.data.anchor_pos = rotatedCenter + + if DEBUG_SKYTREES then minetest.log("info", "building tree at " .. dump(position) .. "rotated to " .. dump(treePos) .. "rotatedCenter " .. dump(rotatedCenter) .. ", " .. schematicInfo.filename) end + plan_obj:set_status("build") + + else -- fall back on minetest.place_schematic() + + local malleatedFilename = SkyTrees.getMalleatedFilename(schematicInfo, themeName) + + if DEBUG_SKYTREES then minetest.log("info", "placing tree at " .. dump(position) .. "rotated to " .. dump(treePos) .. "rotatedCenter " .. dump(rotatedCenter) .. ", " .. schematicInfo.filename) end + + -- Defering minetest.place_schematic() until after the lua emerge seems to reduce the likelyhood of + -- having it draw the tree with pieces missing. + minetest.after( + 0.1, + function(treePos, malleatedFilename, rotation, replacements, schematicInfo) + + minetest.place_schematic(treePos, malleatedFilename, rotation, replacements, true) + + -- minetest.place_schematic() doesn't invoke node constructors, so use set_node() for any nodes requiring construction + for i, schematicCoords in pairs(schematicInfo.nodesWithConstructor) do + if rotation ~= 0 then schematicCoords = rotatePositon(schematicCoords, schematicInfo.size, rotation) end + local nodePos = vector.add(treePos, schematicCoords) + local nodeToConstruct = minetest.get_node(nodePos) + if nodeToConstruct.name == "air" or nodeToConstruct.name == nodeName_ignore then + --this is now normal - e.g. if vines are set to 'ignore' then the nodeToConstruct won't be there. + --minetest.log("error", "nodesWithConstructor["..i.."] does not match schematic " .. schematicInfo.filename .. " at " .. nodePos.x..","..nodePos.y..","..nodePos.z.." rotation "..rotation) + else + minetest.set_node(nodePos, nodeToConstruct) + end + end + + end, + treePos, malleatedFilename, rotation, replacements, schematicInfo + ) + + end + end + +end + +SkyTrees.init() + + +--[[============================== + Initialization and Mapgen + ==============================]]-- + +local function init_mapgen() + -- invoke get_perlin() here, since it can't be invoked before the environment + -- is created because it uses the world's seed value. + noise_eddyField = minetest.get_perlin(noiseparams_eddyField) + noise_heightMap = minetest.get_perlin(noiseparams_heightMap) + noise_density = minetest.get_perlin(noiseparams_density) + noise_surfaceMap = minetest.get_perlin(noiseparams_surfaceMap) + noise_skyReef = minetest.get_perlin(noiseparams_skyReef) + + local prng = PcgRandom(122456 + ISLANDS_SEED) + for i = 0,255 do randomNumbers[i] = prng:next(0, 0x10000) / 0x10000 end + + if isMapgenV6 then + biomes["Normal"] = {node_top="mapgen_dirt_with_grass", node_filler="mapgen_dirt", node_stone="mapgen_stone"} + biomes["Desert"] = {node_top="mapgen_desert_sand", node_filler="mapgen_desert_sand", node_stone="mapgen_desert_stone"} + biomes["Jungle"] = {node_top="mapgen_dirt_with_grass", node_filler="mapgen_dirt", node_stone="mapgen_stone"} + biomes["Tundra"] = {node_top="mapgen_dirt_with_snow", node_filler="mapgen_dirt", node_stone="mapgen_stone"} + biomes["Taiga"] = {node_top="mapgen_dirt_with_snow", node_filler="mapgen_dirt", node_stone="mapgen_stone"} + else + for k,v in pairs(minetest.registered_biomes) do + biomes[minetest.get_biome_id(k)] = v + end + end + if DEBUG then minetest.log("info", "registered biomes: " .. dump(biomes)) end + + nodeId_air = minetest.get_content_id("air") + + nodeId_stone = interop.find_node_id(NODENAMES_STONE) + nodeId_grass = interop.find_node_id(NODENAMES_GRASS) + nodeId_dirt = interop.find_node_id(NODENAMES_DIRT) + nodeId_water = interop.find_node_id(NODENAMES_WATER) + nodeId_ice = interop.find_node_id(NODENAMES_ICE) + nodeId_silt = interop.find_node_id(NODENAMES_SILT) + nodeId_gravel = interop.find_node_id(NODENAMES_GRAVEL) + nodeId_vine = interop.find_node_id(NODENAMES_VINES) + nodeName_vine = minetest.get_name_from_content_id(nodeId_vine) + + local regionRectStr = minetest.settings:get(MODNAME .. "_limit_rect") + if type(regionRectStr) == "string" then + local minXStr, minZStr, maxXStr, maxZStr = string.match(regionRectStr, '(-?[%d%.]+)[,%s]+(-?[%d%.]+)[,%s]+(-?[%d%.]+)[,%s]+(-?[%d%.]+)') + if minXStr ~= nil then + local minX, minZ, maxX, maxZ = tonumber(minXStr), tonumber(minZStr), tonumber(maxXStr), tonumber(maxZStr) + if minX ~= nil and maxX ~= nil and minX < maxX then + region_min_x, region_max_x = minX, maxX + end + if minZ ~= nil and maxZ ~= nil and minZ < maxZ then + region_min_z, region_max_z = minZ, maxZ + end + end + end + + local limitToBiomesStr = minetest.settings:get(MODNAME .. "_limit_biome") + if type(limitToBiomesStr) == "string" and string.len(limitToBiomesStr) > 0 then + limit_to_biomes = limitToBiomesStr:lower() + end + limit_to_biomes_altitude = tonumber(minetest.settings:get(MODNAME .. "_limit_biome_altitude")) + + region_restrictions = + region_min_x > -32000 or region_min_z > -32000 + or region_max_x < 32000 or region_max_z < 32000 + or limit_to_biomes ~= nil +end + +-- Updates coreList to include all cores of type coreType within the given bounds +local function addCores(coreList, coreType, x1, z1, x2, z2) + + -- this function is used by the API functions, so may be invoked without our on_generated + -- being called + cloudlands.init() + + for z = math_floor(z1 / coreType.territorySize), math_floor(z2 / coreType.territorySize) do + for x = math_floor(x1 / coreType.territorySize), math_floor(x2 / coreType.territorySize) do + + -- Use a known PRNG implementation, to make life easier for Amidstest + local prng = PcgRandom( + x * 8973896 + + z * 7467838 + + worldSeed + 8438 + ISLANDS_SEED + ) + + local coresInTerritory = {} + + for i = 1, coreType.coresPerTerritory do + local coreX = x * coreType.territorySize + prng:next(0, coreType.territorySize - 1) + local coreZ = z * coreType.territorySize + prng:next(0, coreType.territorySize - 1) + + -- there's strong vertical and horizontal tendency in 2-octave noise, + -- so rotate it a little to avoid it lining up with the world axis. + local noiseX = ROTATE_COS * coreX - ROTATE_SIN * coreZ + local noiseZ = ROTATE_SIN * coreX + ROTATE_COS * coreZ + local eddyField = noise_eddyField:get2d({x = noiseX, y = noiseZ}) + + if (math_abs(eddyField) < coreType.frequency) then + + local nexusConditionMet = not coreType.requiresNexus + if not nexusConditionMet then + -- A 'nexus' is a made up name for a place where the eddyField is flat. + -- There are often many 'field lines' leading out from a nexus. + -- Like a saddle in the perlin noise the height "coreType.frequency" + local eddyField_orthA = noise_eddyField:get2d({x = noiseX + 2, y = noiseZ}) + local eddyField_orthB = noise_eddyField:get2d({x = noiseX, y = noiseZ + 2}) + if math_abs(eddyField - eddyField_orthA) + math_abs(eddyField - eddyField_orthB) < 0.02 then + nexusConditionMet = true + end + end + + if nexusConditionMet then + local radius = (coreType.radiusMax + prng:next(0, coreType.radiusMax) * 2) / 3 -- give a 33%/66% weighting split between max-radius and random + local depth = (coreType.depthMax + prng:next(0, coreType.depthMax) * 2) / 2 -- ERROR!! fix this bug! should be dividing by 3. But should not change worldgen now, so adjust depthMax of islands so nothing changes when bug is fixed? + local thickness = prng:next(0, coreType.thicknessMax) + + + if coreX >= x1 and coreX < x2 and coreZ >= z1 and coreZ < z2 then + + local spaceConditionMet = not coreType.exclusive + if not spaceConditionMet then + -- see if any other cores occupy this space, and if so then + -- either deny the core, or raise it + spaceConditionMet = true + local minDistSquared = radius * radius * .7 + + for _,core in ipairs(coreList) do + if core.type.radiusMax == coreType.radiusMax then + -- We've reached the cores of the current type. We can't exclude based on all + -- cores of the same type as we can't be sure neighboring territories will have been generated. + break + end + if (core.x - coreX)*(core.x - coreX) + (core.z - coreZ)*(core.z - coreZ) <= minDistSquared + core.radius * core.radius then + spaceConditionMet = false + break + end + end + if spaceConditionMet then + for _,core in ipairs(coresInTerritory) do + -- We can assume all cores of the current type are being generated in this territory, + -- so we can exclude the core if it overlaps one already in this territory. + if (core.x - coreX)*(core.x - coreX) + (core.z - coreZ)*(core.z - coreZ) <= minDistSquared + core.radius * core.radius then + spaceConditionMet = false + break + end + end + end + end + + if spaceConditionMet then + -- all conditions met, we've located a new island core + --minetest.log("Adding core "..x..","..y..","..z..","..radius) + local y = round(noise_heightMap:get2d({x = coreX, y = coreZ})) + local newCore = { + x = coreX, + y = y, + z = coreZ, + radius = radius, + thickness = thickness, + depth = depth, + type = coreType, + } + coreList[#coreList + 1] = newCore + coresInTerritory[#coreList + 1] = newCore + end + + else + -- We didn't test coreX,coreZ against x1,z1,x2,z2 immediately and save all + -- that extra work, as that would break the determinism of the prng calls. + -- i.e. if the area was approached from a different direction then a + -- territory might end up with a different list of cores. + -- TODO: filter earlier but advance prng? + end + end + end + end + end + end +end + + +-- removes any islands that fall outside region restrictions specified in the options +local function removeUnwantedIslands(coreList) + + local testBiome = limit_to_biomes ~= nil + local get_biome_name = nil + if testBiome then + -- minetest.get_biome_name() was added in March 2018, we'll ignore the + -- limit_to_biomes option on versions of Minetest that predate this + get_biome_name = minetest.get_biome_name + testBiome = get_biome_name ~= nil + if get_biome_name == nil then + minetest.log("warning", MODNAME .. " ignoring " .. MODNAME .. "_limit_biome option as Minetest API version too early to support get_biome_name()") + limit_to_biomes = nil + end + end + + for i = #coreList, 1, -1 do + local core = coreList[i] + local coreX = core.x + local coreZ = core.z + + if coreX < region_min_x or coreX > region_max_x or coreZ < region_min_z or coreZ > region_max_z then + table.remove(coreList, i) + + elseif testBiome then + local biomeAltitude + if (limit_to_biomes_altitude == nil) then biomeAltitude = ALTITUDE + core.y else biomeAltitude = limit_to_biomes_altitude end + + local biomeName = get_biome_name(minetest.get_biome_data({x = coreX, y = biomeAltitude, z = coreZ}).biome) + if not string.match(limit_to_biomes, biomeName:lower()) then + table.remove(coreList, i) + end + end + end +end + + +-- gets an array of all cores which may intersect the (minp, maxp) area +-- y is ignored +cloudlands.get_island_details = function(minp, maxp) + local result = {} + + for _,coreType in pairs(cloudlands.coreTypes) do + addCores( + result, + coreType, + minp.x - coreType.radiusMax, + minp.z - coreType.radiusMax, + maxp.x + coreType.radiusMax, + maxp.z + coreType.radiusMax + ) + end + + -- remove islands only after cores have all generated to avoid the restriction + -- settings from rearranging islands. + if region_restrictions then removeUnwantedIslands(result) end + + return result +end + + +cloudlands.find_nearest_island = function(x, z, search_radius) + + local coreList = {} + for _,coreType in pairs(cloudlands.coreTypes) do + addCores( + coreList, + coreType, + x - (search_radius + coreType.radiusMax), + z - (search_radius + coreType.radiusMax), + x + (search_radius + coreType.radiusMax), + z + (search_radius + coreType.radiusMax) + ) + end + -- remove islands only after cores have all generated to avoid the restriction + -- settings from rearranging islands. + if region_restrictions then removeUnwantedIslands(coreList) end + + local result = nil + for _,core in ipairs(coreList) do + local distance = math.hypot(core.x - x, core.z - z) + if distance >= core.radius then + core.distance = 1 + distance - core.radius + else + -- distance is fractional + core.distance = distance / (core.radius + 1) + end + + if result == nil or core.distance < result.distance then result = core end + end + + return result +end + + +-- coreList can be left as null, but if you wish to sample many heights in a small area +-- then use cloudlands.get_island_details() to get the coreList for that area and save +-- having to recalculate it during each call to get_height_at(). +cloudlands.get_height_at = function(x, z, coreList) + + local result, isWater = nil, false + + if coreList == nil then + local pos = {x = x, z = z} + coreList = cloudlands.get_island_details(pos, pos) + end + + for _,core in ipairs(coreList) do + + -- duplicates the code from renderCores() to find surface height + -- See the renderCores() version for explanatory comments + local horz_easing + local distanceSquared = (x - core.x)*(x - core.x) + (z - core.z)*(z - core.z) + local radiusSquared = core.radius * core.radius + + local noise_weighting = 1 + local shapeType = math_floor(core.depth + core.radius + core.x) % 5 + if shapeType < 2 then -- convex, see renderCores() implementatin for comments + horz_easing = 1 - distanceSquared / radiusSquared + elseif shapeType == 2 then -- conical, see renderCores() implementatin for comments + horz_easing = 1 - math_sqrt(distanceSquared) / core.radius + else -- concave, see renderCores() implementatin for comments + local radiusRoot = math_sqrt(core.radius) + local squared = 1 - distanceSquared / radiusSquared + local distance = math_sqrt(distanceSquared) + local distance_normalized = distance / core.radius + local root = 1 - math_sqrt(distance) / radiusRoot + horz_easing = math_min(1, 0.8*distance_normalized*squared + 1.2*(1-distance_normalized)*root) + noise_weighting = 0.63 + end + if core.radius + core.depth > 80 then noise_weighting = 0.6 end + if core.radius + core.depth > 120 then noise_weighting = 0.35 end + + local surfaceNoise = noise_surfaceMap:get2d({x = x, y = z}) + if DEBUG_GEOMETRIC then surfaceNoise = SURFACEMAP_OFFSET end + local coreTop = ALTITUDE + core.y + local surfaceHeight = coreTop + round(surfaceNoise * 3 * (core.thickness + 1) * horz_easing) + + if result == nil or math_max(coreTop, surfaceHeight) > result then + + local coreBottom = math_floor(coreTop - (core.thickness + core.depth)) + local yBottom = coreBottom + if result ~= nil then yBottom = math_max(yBottom, result + 1) end + + for y = math_max(coreTop, surfaceHeight), yBottom, -1 do + local vert_easing = math_min(1, (y - coreBottom) / core.depth) + + local densityNoise = noise_density:get3d({x = x, y = y - coreTop, z = z}) + densityNoise = noise_weighting * densityNoise + (1 - noise_weighting) * DENSITY_OFFSET + if DEBUG_GEOMETRIC then densityNoise = DENSITY_OFFSET end + + if densityNoise * ((horz_easing + vert_easing) / 2) >= REQUIRED_DENSITY then + result = y + isWater = surfaceNoise < 0 + break + + --[[abandoned because do we need to calc the bottom of ponds? It also needs the outer code refactored to work + if not isWater then + -- we've found the land height + break + else + -- find the pond bottom, since the water level is already given by (ALTITUDE + island.y) + local surfaceDensity = densityNoise * ((horz_easing + 1) / 2) + local onTheEdge = math_sqrt(distanceSquared) + 1 >= core.radius + if onTheEdge or surfaceDensity > (REQUIRED_DENSITY + core.type.pondWallBuffer) then + break + end + end]] + end + end + end + end + + return result, isWater +end + + +local function setCoreBiomeData(core) + local pos = {x = core.x, y = ALTITUDE + core.y, z = core.z} + if LOWLAND_BIOMES then pos.y = LOWLAND_BIOME_ALTITUDE end + core.biomeId = interop.get_biome_key(pos) + core.biome = biomes[core.biomeId] + core.temperature = get_heat(pos) + core.humidity = get_humidity(pos) + + if core.temperature == nil then core.temperature = 50 end + if core.humidity == nil then core.humidity = 50 end + + if core.biome == nil then + -- Some games don't use the biome list, so come up with some fallbacks + core.biome = {} + core.biome.node_top = minetest.get_name_from_content_id(nodeId_grass) + core.biome.node_filler = minetest.get_name_from_content_id(nodeId_dirt) + end + +end + +local function addDetail_vines(decoration_list, core, data, area, minp, maxp) + + if VINE_COVERAGE > 0 and nodeId_vine ~= nodeId_ignore then + + local y = ALTITUDE + core.y + if y >= minp.y and y <= maxp.y then + -- if core.biome is nil then renderCores() never rendered it, which means it + -- doesn't instersect this draw region. + if core.biome ~= nil and core.humidity >= VINES_REQUIRED_HUMIDITY and core.temperature >= VINES_REQUIRED_TEMPERATURE then + + local nodeId_top + local nodeId_filler + local nodeId_stoneBase + local nodeId_dust + if core.biome.node_top == nil then nodeId_top = nodeId_stone else nodeId_top = minetest.get_content_id(core.biome.node_top) end + if core.biome.node_filler == nil then nodeId_filler = nodeId_stone else nodeId_filler = minetest.get_content_id(core.biome.node_filler) end + if core.biome.node_stone == nil then nodeId_stoneBase = nodeId_stone else nodeId_stoneBase = minetest.get_content_id(core.biome.node_stone) end + if core.biome.node_dust == nil then nodeId_dust = nodeId_stone else nodeId_dust = minetest.get_content_id(core.biome.node_dust) end + + local function isIsland(nodeId) + return (nodeId == nodeId_filler or nodeId == nodeId_top + or nodeId == nodeId_stoneBase or nodeId == nodeId_dust + or nodeId == nodeId_silt or nodeId == nodeId_water) + end + + local function findHighestNodeFace(y, solidIndex, emptyIndex) + -- return the highest y value (or maxp.y) where solidIndex is part of an island + -- and emptyIndex is not + local yOffset = 1 + while y + yOffset <= maxp.y and isIsland(data[solidIndex + yOffset * area.ystride]) and not isIsland(data[emptyIndex + yOffset * area.ystride]) do + yOffset = yOffset + 1 + end + return y + yOffset - 1 + end + + local radius = round(core.radius) + local xCropped = math_min(maxp.x, math_max(minp.x, core.x)) + local zStart = math_max(minp.z, core.z - radius) + local vi = area:index(xCropped, y, zStart) + + for z = 0, math_min(maxp.z, core.z + radius) - zStart do + local searchIndex = vi + z * area.zstride + if isIsland(data[searchIndex]) then + + -- add vines to east face + if randomNumbers[(zStart + z + y) % 256] <= VINE_COVERAGE then + for x = xCropped + 1, maxp.x do + if not isIsland(data[searchIndex + 1]) then + local yhighest = findHighestNodeFace(y, searchIndex, searchIndex + 1) + decoration_list[#decoration_list + 1] = {pos={x=x, y=yhighest, z= zStart + z}, node={name = nodeName_vine, param2 = 3}} + break + end + searchIndex = searchIndex + 1 + end + end + -- add vines to west face + if randomNumbers[(zStart + z + y + 128) % 256] <= VINE_COVERAGE then + searchIndex = vi + z * area.zstride + for x = xCropped - 1, minp.x, -1 do + if not isIsland(data[searchIndex - 1]) then + local yhighest = findHighestNodeFace(y, searchIndex, searchIndex - 1) + decoration_list[#decoration_list + 1] = {pos={x=x, y=yhighest, z= zStart + z}, node={name = nodeName_vine, param2 = 2}} + break + end + searchIndex = searchIndex - 1 + end + end + end + end + + local zCropped = math_min(maxp.z, math_max(minp.z, core.z)) + local xStart = math_max(minp.x, core.x - radius) + local zstride = area.zstride + vi = area:index(xStart, y, zCropped) + + for x = 0, math_min(maxp.x, core.x + radius) - xStart do + local searchIndex = vi + x + if isIsland(data[searchIndex]) then + + -- add vines to north face (make it like moss - grows better on the north side) + if randomNumbers[(xStart + x + y) % 256] <= (VINE_COVERAGE * 1.2) then + for z = zCropped + 1, maxp.z do + if not isIsland(data[searchIndex + zstride]) then + local yhighest = findHighestNodeFace(y, searchIndex, searchIndex + zstride) + decoration_list[#decoration_list + 1] = {pos={x=xStart + x, y=yhighest, z=z}, node={name = nodeName_vine, param2 = 5}} + break + end + searchIndex = searchIndex + zstride + end + end + -- add vines to south face (make it like moss - grows better on the north side) + if randomNumbers[(xStart + x + y + 128) % 256] <= (VINE_COVERAGE * 0.8) then + searchIndex = vi + x + for z = zCropped - 1, minp.z, -1 do + if not isIsland(data[searchIndex - zstride]) then + local yhighest = findHighestNodeFace(y, searchIndex, searchIndex - zstride) + decoration_list[#decoration_list + 1] = {pos={x=xStart + x, y=yhighest, z=z}, node={name = nodeName_vine, param2 = 4}} + break + end + searchIndex = searchIndex - zstride + end + end + end + end + + end + end + end +end + + +-- A rare formation of rocks circling or crowning an island +-- returns true if voxels were changed +local function addDetail_skyReef(decoration_list, core, data, area, minp, maxp) + + local coreTop = ALTITUDE + core.y + local overdrawTop = maxp.y + OVERDRAW + local reefAltitude = math_floor(coreTop - 1 - core.thickness / 2) + local reefMaxHeight = 12 + local reefMaxUnderhang = 4 + + if (maxp.y < reefAltitude - reefMaxUnderhang) or (minp.y > reefAltitude + reefMaxHeight) then + --no reef here + return false + end + + local isReef = core.radius < core.type.radiusMax * 0.4 -- a reef can't extend beyond radiusMax, so needs a small island + local isAtoll = core.radius > core.type.radiusMax * 0.8 + if not (isReef or isAtoll) then return false end + + local fastHash = 3 + fastHash = (37 * fastHash) + core.x + fastHash = (37 * fastHash) + core.z + fastHash = (37 * fastHash) + math_floor(core.radius) + fastHash = (37 * fastHash) + math_floor(core.depth) + if ISLANDS_SEED ~= 1000 then fastHash = (37 * fastHash) + ISLANDS_SEED end + local rarityAdj = 1 + if core.type.requiresNexus and isAtoll then rarityAdj = 4 end -- humongous islands are very rare, and look good as an atoll + if (REEF_RARITY * rarityAdj * 1000) < math_floor((math_abs(fastHash)) % 1000) then return false end + + local coreX = core.x --save doing a table lookup in the loop + local coreZ = core.z --save doing a table lookup in the loop + + -- Use a known PRNG implementation + local prng = PcgRandom( + coreX * 8973896 + + coreZ * 7467838 + + worldSeed + 32564 + ) + + local reefUnderhang + local reefOuterRadius = math_floor(core.type.radiusMax) + local reefInnerRadius = prng:next(core.type.radiusMax * 0.5, core.type.radiusMax * 0.7) + local reefWidth = reefOuterRadius - reefInnerRadius + local noiseOffset = 0 + + if isReef then + reefMaxHeight = round((core.thickness + 4) / 2) + reefUnderhang = round(reefMaxHeight / 2) + noiseOffset = -0.1 + end + if isAtoll then + -- a crown attached to the island + reefOuterRadius = math_floor(core.radius * 0.8) + reefWidth = math_max(4, math_floor(core.radius * 0.15)) + reefInnerRadius = reefOuterRadius - reefWidth + reefUnderhang = 0 + if maxp.y < reefAltitude - reefUnderhang then return end -- no atoll here + end + + local reefHalfWidth = reefWidth / 2 + local reefMiddleRadius = (reefInnerRadius + reefOuterRadius) / 2 + local reefOuterRadiusSquared = reefOuterRadius * reefOuterRadius + local reefInnerRadiusSquared = reefInnerRadius * reefInnerRadius + local reefMiddleRadiusSquared = reefMiddleRadius * reefMiddleRadius + local reefHalfWidthSquared = reefHalfWidth * reefHalfWidth + + -- get the biome details for this core + local nodeId_first + local nodeId_second + local nodeId_top + local nodeId_filler + if core.biome == nil then setCoreBiomeData(core) end -- We can't assume the core biome has already been resolved, core might not have been big enough to enter the draw region + if core.biome.node_top == nil then nodeId_top = nodeId_stone else nodeId_top = minetest.get_content_id(core.biome.node_top) end + if core.biome.node_filler == nil then nodeId_filler = nodeId_stone else nodeId_filler = minetest.get_content_id(core.biome.node_filler) end + if core.biome.node_dust ~= nil then + nodeId_first = minetest.get_content_id(core.biome.node_dust) + nodeId_second = nodeId_top + else + nodeId_first = nodeId_top + nodeId_second = nodeId_filler + end + + local zStart = round(math_max(core.z - reefOuterRadius, minp.z)) + local zStop = round(math_min(core.z + reefOuterRadius, maxp.z)) + local xStart = round(math_max(core.x - reefOuterRadius, minp.x)) + local xStop = round(math_min(core.x + reefOuterRadius, maxp.x)) + local yCenter = math_min(math_max(reefAltitude, minp.y), maxp.y) + local pos = {} + + local dataBufferIndex = area:index(xStart, yCenter, zStart) + local vi = -1 + for z = zStart, zStop do + local zDistSquared = (z - coreZ) * (z - coreZ) + pos.y = z + for x = xStart, xStop do + local distanceSquared = (x - coreX) * (x - coreX) + zDistSquared + if distanceSquared < reefOuterRadiusSquared and distanceSquared > reefInnerRadiusSquared then + pos.x = x + local offsetEase = math_abs(distanceSquared - reefMiddleRadiusSquared) / reefHalfWidthSquared + local fineNoise = noise_skyReef:get2d(pos) + local reefNoise = (noiseOffset* offsetEase) + fineNoise + 0.2 * noise_surfaceMap:get2d(pos) + + if (reefNoise > 0) then + local distance = math_sqrt(distanceSquared) + local ease = 1 - math_abs(distance - reefMiddleRadius) / reefHalfWidth + local yStart = math_max(math_floor(reefAltitude - ease * fineNoise * reefUnderhang), minp.y) + local yStop = math_min(math_floor(reefAltitude + ease * reefNoise * reefMaxHeight), overdrawTop) + + for y = yStart, yStop do + vi = dataBufferIndex + (y - yCenter) * area.ystride + if data[vi] == nodeId_air then + if y == yStop then + data[vi] = nodeId_first + elseif y == yStop - 1 then + data[vi] = nodeId_second + else + data[vi] = nodeId_filler + end + end + end + end + end + dataBufferIndex = dataBufferIndex + 1 + end + dataBufferIndex = dataBufferIndex + area.zstride - (xStop - xStart + 1) + end + + return vi >= 0 +end + +-- A rarely occuring giant tree growing from the center of the island +-- returns true if tree was added +local function addDetail_skyTree(decoration_list, core, minp, maxp) + + if (core.radius < SkyTrees.minimumIslandRadius) or (core.depth < SkyTrees.minimumIslandDepth) then + --no tree here + return false + end + + local coreTop = ALTITUDE + core.y + local treeAltitude = math_floor(coreTop + core.thickness) + + if (maxp.y < treeAltitude - SkyTrees.maximumYOffset) or (minp.y > treeAltitude + SkyTrees.maximumHeight) then + --no tree here + return false + elseif SkyTrees.disabled ~= nil then + -- can't find nodes/textures in this game that are needed to build trees + return false + end + + local coreX = core.x --save doing a table lookups + local coreZ = core.z --save doing a table lookups + + local fastHash = 3 + fastHash = (37 * fastHash) + coreX + fastHash = (37 * fastHash) + coreZ + fastHash = (37 * fastHash) + math_floor(core.radius) + fastHash = (37 * fastHash) + math_floor(core.depth) + fastHash = (37 * fastHash) + ISLANDS_SEED + fastHash = (37 * fastHash) + 76276 -- to keep this probability distinct from reefs and atols + if (TREE_RARITY * 1000) < math_floor((math_abs(fastHash)) % 1000) then return false end + + -- choose a tree that will fit on the island + local tree + + local skipLargeTree = (fastHash % 10) < 3 -- to allow small trees a chance to spawn on large islands + if skipLargeTree then + if SkyTrees.isDead({x = coreX, y = treeAltitude, z = coreZ}) then + -- small tree currently doesn't have a dead theme, so don't skip the large tree + skipLargeTree = false + end + end + + + for i, treeType in pairs(SkyTrees.schematicInfo) do + if i == 1 and skipLargeTree then + -- 'continue', to allow small trees a chance to spawn on large islands + elseif (core.radius >= treeType.requiredIslandRadius) and (core.depth >= treeType.requiredIslandDepth) then + tree = treeType + break + end + end + + local maxOffsetFromCenter = core.radius - (tree.requiredIslandRadius - 4) -- 4 is an arbitrary number, to allow trees to get closer to the edge + + -- Use a known PRNG implementation + local prng = PcgRandom( + coreX * 8973896 + + coreZ * 7467838 + + worldSeed + 43786 + ) + + local treeAngle = 90 * prng:next(0, 3) + local treePos = { + x = coreX + math_floor((prng:next(-maxOffsetFromCenter, maxOffsetFromCenter) + prng:next(-maxOffsetFromCenter, maxOffsetFromCenter)) / 2), + y = treeAltitude, + z = coreZ + math_floor((prng:next(-maxOffsetFromCenter, maxOffsetFromCenter) + prng:next(-maxOffsetFromCenter, maxOffsetFromCenter)) / 2) + } + + if minetest.global_exists("schemlib") then + -- This check is skipped when not using schemlib, because while redrawing the tree multiple times - every time a chunk it + -- touches gets emitted - might be slower, it helps work around the bugs in minetest.place_schematic() where large schematics + -- are spawned incompletely. + -- The bug in question: https://forum.minetest.net/viewtopic.php?f=6&t=22136 + -- (it isn't an issue if schemlib is used) + if (maxp.y < treePos.y) or (minp.y > treePos.y) or (maxp.x < treePos.x) or (minp.x > treePos.x) or (maxp.z < treePos.z) or (minp.z > treePos.z) then + -- Now that we know the exact position of the tree, we know it's spawn point is not in this chunk. + -- In the interests of only drawing trees once, we only invoke placeTree when the chunk containing treePos is emitted. + return false + end + end + + if tree.theme["Dead"] == nil then + if SkyTrees.isDead(treePos) then + -- Trees in this location should be dead, but this tree doesn't have a dead theme, so don't put a tree here + return false + end + end + + if core.biome == nil then setCoreBiomeData(core) end -- We shouldn't assume the core biome has already been resolved, it might be below the emerged chunk and unrendered + + if core.biome.node_top == nil then + -- solid stone isn't fertile enough for giant trees, and there's a solid stone biome in MT-Game: tundra_highland + return false + end + + if DEBUG_SKYTREES then minetest.log("info", "core x: "..coreX.." y: ".. coreZ .. " treePos: " .. treePos.x .. ", y: " .. treePos.y) end + + SkyTrees.placeTree(treePos, treeAngle, tree, nil, core.biome.node_top) + return true +end + + +------------------------------------------------------------------------------ +-- Secrets section +------------------------------------------------------------------------------ + +-- We might not need this stand-in cobweb, but unless we go overboard on listing many +-- optional dependencies we won't know whether there's a proper cobweb available to +-- use until after it's too late to register this one. +local nodeName_standinCobweb = MODNAME .. ":cobweb" +minetest.register_node( + nodeName_standinCobweb, + { + tiles = { + -- [Ab]Use the crack texture to avoid needing to include a cobweb texture + -- crack_anylength.png is required by the engine, so all games will have it. + "crack_anylength.png^[verticalframe:5:4^[brighten" + }, + description = S("Cobweb"), + groups = {snappy = 3, liquid = 3, flammable = 3, not_in_creative_inventory = 1}, + drawtype = "plantlike", + walkable = false, + liquid_viscosity = 8, + liquidtype = "source", + liquid_alternative_flowing = nodeName_standinCobweb, + liquid_alternative_source = nodeName_standinCobweb, + liquid_renewable = false, + liquid_range = 0, + sunlight_propagates = true, + paramtype = "light" + } +) + + +local nodeName_egg = "secret:fossilized_egg" +local eggTextureBaseName = interop.find_node_texture({"default:jungleleaves", "mcl_core:jungleleaves", "ethereal:frost_leaves", "main:leaves"}) + +-- [Ab]Use a leaf texture. Originally this was to avoid needing to include an egg texture (extra files) and +-- exposing that the mod contains secrets, however both those reasons are obsolete and the mod could have textures +-- added in future +local eggTextureName = eggTextureBaseName.."^[colorize:#280040E0^[noalpha" + +-- Since "secret:fossilized_egg" doesn't use this mod's name for the prefix, we can't assume +-- another mod isn't also using/providing it +if minetest.registered_nodes[nodeName_egg] == nil then + + local fossilSounds = nil + local nodeName_stone = interop.find_node_name(NODENAMES_STONE) + if nodeName_stone ~= nodeName_ignore then fossilSounds = minetest.registered_nodes[nodeName_stone].sounds end + + minetest.register_node( + ":"..nodeName_egg, + { + tiles = { eggTextureName }, + description = S("Fossilized Egg"), + groups = { + oddly_breakable_by_hand = 3, -- MTG + handy = 1, -- MCL + stone = 1, -- Crafter needs to know the material in order to be breakable by hand + not_in_creative_inventory = 1 + }, + _mcl_hardness = 0.4, + sounds = fossilSounds, + drawtype = "nodebox", + paramtype = "light", + node_box = { + type = "fixed", + fixed = { + {-0.066666, -0.5, -0.066666, 0.066666, 0.5, 0.066666}, -- column1 + {-0.133333, -0.476667, -0.133333, 0.133333, 0.42, 0.133333}, -- column2 + {-0.2, -0.435, -0.2, 0.2, 0.31, 0.2 }, -- column3 + {-0.2, -0.36, -0.28, 0.2, 0.16667, 0.28 }, -- side1 + {-0.28, -0.36, -0.2, 0.28, 0.16667, 0.2 } -- side2 + } + } + } + ) +end + +-- Allow the player to craft their egg into an egg in a display case +local nodeName_eggDisplay = nodeName_egg .. "_display" +local nodeName_frameGlass = interop.find_node_name(NODENAMES_FRAMEGLASS) +local woodTexture = interop.find_node_texture(NODENAMES_WOOD) +local frameTexture = nil +if woodTexture ~= nil then + -- perhaps it's time for cloudlands to contain textures. + frameTexture = "([combine:16x16:0,0="..woodTexture.."\\^[colorize\\:black\\:170:1,1="..woodTexture.."\\^[colorize\\:#0F0\\:255\\^[resize\\:14x14^[makealpha:0,255,0)" + --frameTexture = "([combine:16x16:0,0="..woodTexture.."\\^[resize\\:16x16\\^[colorize\\:black\\:170:1,1="..woodTexture.."\\^[colorize\\:#0F0\\:255\\^[resize\\:14x14^[makealpha:0,255,0)" + --frameTexture = "(("..woodTexture.."^[colorize:black:170)^([combine:16x16:1,1="..woodTexture.."\\^[resize\\:14x14\\^[colorize\\:#0F0\\:255))" +end + +-- Since "secret:fossilized_egg_display" doesn't use this mod's name as the prefix, we shouldn't +-- assume another mod isn't also using/providing it. +if frameTexture ~= nil and nodeName_frameGlass ~= nodeName_ignore and minetest.registered_nodes[nodeName_eggDisplay] == nil then + minetest.register_node( + ":"..nodeName_eggDisplay, + { + tiles = { eggTextureName .. "^" .. frameTexture }, + description = S("Fossil Display"), + groups = { + oddly_breakable_by_hand = 3, + glass = 1, -- Crafter needs to know the material in order to be breakable by hand + not_in_creative_inventory = 1}, + _mcl_hardness = 0.2, + drop = "", + sounds = minetest.registered_nodes[nodeName_frameGlass].sounds, + drawtype = "nodebox", + paramtype = "light", + node_box = { + type = "fixed", + fixed = { + {-0.066666, -0.5, -0.066666, 0.066666, 0.4375, 0.066666}, -- column1 + {-0.133333, -0.5, -0.133333, 0.133333, 0.375, 0.133333}, -- column2 + {-0.2, -0.4375, -0.2, 0.2, 0.285, 0.2 }, -- column3 + {-0.2, -0.36, -0.28, 0.2, 0.14, 0.28 }, -- side1 + {-0.28, -0.36, -0.2, 0.28, 0.14, 0.2 }, -- side2 + + -- corner frame (courtesy of NodeBox Editor Abuse mod) + {-0.4375, 0.4375, 0.4375, 0.4375, 0.5, 0.5}, + {-0.4375, -0.5, 0.4375, 0.4375, -0.4375, 0.5}, + {-0.5, -0.5, 0.4375, -0.4375, 0.5, 0.5}, + {0.4375, -0.5, 0.4375, 0.5, 0.5, 0.5}, + {-0.5, 0.4375, -0.4375, -0.4375, 0.5, 0.4375}, + {-0.5, -0.5, -0.4375, -0.4375, -0.4375, 0.4375}, + {0.4375, 0.4375, -0.4375, 0.5, 0.5, 0.4375}, + {0.4375, -0.5, -0.4375, 0.5, -0.4375, 0.4375}, + {-0.5, 0.4375, -0.5, 0.5, 0.5, -0.4375}, + {-0.5, -0.5, -0.5, 0.5, -0.4375, -0.4375}, + {0.4375, -0.4375, -0.5, 0.5, 0.4375, -0.4375}, + {-0.5, -0.4375, -0.5, -0.4375, 0.4375, -0.4375} + } + }, + after_destruct = function(pos,node) + minetest.set_node(pos, {name = nodeName_egg, param2 = node.param2}) + end, + } + ) + + if minetest.get_modpath("xpanes") ~= nil then + minetest.register_craft({ + output = nodeName_eggDisplay, + recipe = { + {"group:stick", "group:pane", "group:stick"}, + {"group:pane", nodeName_egg, "group:pane"}, + {"group:stick", "group:pane", "group:stick"} + } + }) + else + -- Game doesn't have glass panes, so just use glass + minetest.register_craft({ + output = nodeName_eggDisplay, + recipe = { + {"group:stick", nodeName_frameGlass, "group:stick"}, + {nodeName_frameGlass, nodeName_egg, nodeName_frameGlass}, + {"group:stick", nodeName_frameGlass, "group:stick"} + } + }) + end +end + +local nodeId_egg = minetest.get_content_id(nodeName_egg) +local nodeId_airStandIn = minetest.get_content_id(interop.register_clone("air")) + +-- defer assigning the following until all mods are loaded +local nodeId_bed_top +local nodeId_bed_bottom +local nodeId_torch +local nodeId_chest +local nodeId_bookshelf +local nodeId_junk +local nodeId_anvil +local nodeId_workbench +local nodeId_cobweb +local nodeName_bookshelf +local isMineCloneBookshelf + +local function addDetail_secrets(decoration_list, core, data, area, minp, maxp) + + -- if core.biome is nil then renderCores() never rendered it, which means it + -- doesn't instersect this draw region. + if core.biome ~= nil and core.radius > 18 and core.depth > 20 and core.radius + core.depth > 60 then + + local territoryX = math_floor(core.x / core.type.territorySize) + local territoryZ = math_floor(core.z / core.type.territorySize) + local isPolarOutpost = (core.temperature <= 5) and (core.x % 3 == 0) and noise_surfaceMap:get2d({x = core.x, y = core.z - 8}) >= 0 --make sure steps aren't under a pond + local isAncientBurrow = core.humidity >= 60 and core.temperature >= 50 + + -- only allow a checkerboard pattern of territories to help keep the secrets + -- spread out, rather than bunching up too much with climate + if ((territoryX + territoryZ) % 2 == 0) and (isPolarOutpost or isAncientBurrow) then + + local burrowRadius = 7 + local burrowHeight = 5 + local burrowDepth = 12 + local burrowFloor = ALTITUDE + core.y - burrowDepth + local radiusSquared = burrowRadius * burrowRadius + + local function carve(originp, destp, pattern, height, floorId, floorDistance) + + local direction = vector.direction(originp, destp) + local vineSearchDirection = {} + if direction.x > 0 then vineSearchDirection.x = -1 else vineSearchDirection.x = 1 end + if direction.z > 0 then vineSearchDirection.z = -1 else vineSearchDirection.z = 1 end + + local vinePlacements = {} + local function placeVine(vi, pos, only_place_on_nodeId) + if data[vi] == nodeId_air then + local faces = {} + local facing + + local function vineCanGrowOnIt(node_id) + return node_id ~= nodeId_air and node_id ~= nodeId_airStandIn and (node_id == only_place_on_nodeId or only_place_on_nodeId == nil) + end + if vineCanGrowOnIt(data[vi + vineSearchDirection.x]) and pos.x + vineSearchDirection.x >= minp.x and pos.x + vineSearchDirection.x <= maxp.x then + if vineSearchDirection.x > 0 then facing = 2 else facing = 3 end + faces[#faces + 1] = {solid_vi = vi + vineSearchDirection.x, facing = facing} + end + if vineCanGrowOnIt(data[vi + vineSearchDirection.z * area.zstride]) and pos.z + vineSearchDirection.z >= minp.z and pos.z + vineSearchDirection.z <= maxp.z then + if vineSearchDirection.z > 0 then facing = 4 else facing = 5 end + faces[#faces + 1] = {solid_vi = vi + vineSearchDirection.z * area.zstride, facing = facing} + end + + local faceInfo = nil + if #faces == 1 then + faceInfo = faces[1] + elseif #faces == 2 then + local ratio = math.abs(direction.x) / (math.abs(direction.x) + math.abs(direction.z)) + if randomNumbers[(pos.x + pos.y + pos.z) % 256] <= ratio then faceInfo = faces[1] else faceInfo = faces[2] end + end + if faceInfo ~= nil + and (only_place_on_nodeId == nil or only_place_on_nodeId == data[faceInfo.solid_vi]) + and (data[faceInfo.solid_vi] ~= nodeId_airStandIn) then + -- find the highest y value (or maxp.y) where solid_vi is solid + -- and vi is not + local solid_vi = faceInfo.solid_vi + local yOffset = 1 + while (pos.y + yOffset <= maxp.y + 1) + and (data[solid_vi + yOffset * area.ystride] ~= nodeId_air) + and (data[vi + yOffset * area.ystride] == nodeId_air) + and (only_place_on_nodeId == nil or only_place_on_nodeId == data[solid_vi + yOffset * area.ystride]) do + yOffset = yOffset + 1 + end + + -- defer final vine placement until all nodes have been carved + vinePlacements[#vinePlacements + 1] = function(decoration_list) + -- retest that the vine is still going in air and still attached to a solid node + local solidNode = data[solid_vi + (yOffset - 1) * area.ystride] + if solidNode ~= nodeId_airStandIn and solidNode ~= nodeId_air and data[vi] == nodeId_air then + decoration_list[#decoration_list + 1] = {pos={x=pos.x, y=pos.y + yOffset - 1, z=pos.z}, node={name = nodeName_vine, param2 = faceInfo.facing}} + end + end + end + end + end + + local stampedIndexes = {} + local function stamp(pos, pattern, height, node_id, isAir_callback) + local callbackClosures = {} + local index = -1 + for y = pos.y, pos.y + height - 1 do + if y >= minp.y and y <= maxp.y then + if index == -1 then index = area:index(pos.x, y, pos.z) else index = index + area.ystride end + for _,voxel in ipairs(pattern) do + local x = pos.x + voxel.x + local z = pos.z + voxel.z + if x >= minp.x and x <= maxp.x and z >= minp.z and z <= maxp.z then + local vi = index + voxel.x + voxel.z * area.zstride + if data[vi] == nodeId_air then + if isAir_callback ~= nil then + callbackClosures[#callbackClosures + 1] = function() isAir_callback(pos, vi, x, y, z) end + end + else + data[vi] = node_id + stampedIndexes[#stampedIndexes + 1] = vi + end + end + end + end + end + for _,callback in ipairs(callbackClosures) do callback() end + end + + local function excavate(pos, add_floor, add_vines, add_cobwebs) + + local function onAirNode(stampPos, node_vi, node_x, node_y, node_z) + if node_y > stampPos.y and node_y + 1 <= maxp.y then + -- place vines above the entrance, for concealment + placeVine(node_vi + area.ystride, {x=node_x, y=node_y + 1, z=node_z}) + else + -- place vines on the floor - perhaps explorers can climb to the burrow + placeVine(node_vi, {x=node_x, y=node_y, z=node_z}, floorId) + end + end + + local onAirNodeCallback = onAirNode + local fill = nodeId_airStandIn + if not add_vines or nodeId_vine == nodeId_ignore then onAirNodeCallback = nil end + if add_cobwebs and nodeId_cobweb ~= nodeId_ignore then fill = nodeId_cobweb end + + stamp(pos, pattern, height, fill, onAirNodeCallback) + if add_floor and floorId ~= nil then + stamp({x=pos.x, y=pos.y - 1, z=pos.z}, pattern, 1, floorId, onAirNodeCallback) + end + end + + local addVines = core.humidity >= VINES_REQUIRED_HUMIDITY and core.temperature >= VINES_REQUIRED_TEMPERATURE + if floorDistance == nil then floorDistance = 0 end + local distance = round(vector.distance(originp, destp)) + local step = vector.divide(vector.subtract(destp, originp), distance) + + local pos = vector.new(originp) + local newPos = vector.new(originp) + + excavate(originp, 0 >= floorDistance, false) + for i = 1, distance do + newPos.x = newPos.x + step.x + if round(newPos.x) ~= pos.x then + pos.x = round(newPos.x) + excavate(pos, i >= floorDistance, addVines, i <= floorDistance - 1 and i >= floorDistance - 2) + end + newPos.y = newPos.y + step.y + if round(newPos.y) ~= pos.y then + pos.y = round(newPos.y) + excavate(pos, i >= floorDistance, addVines, i <= floorDistance - 1 and i >= floorDistance - 2) + end + newPos.z = newPos.z + step.z + if round(newPos.z) ~= pos.z then + pos.z = round(newPos.z) + excavate(pos, i >= floorDistance, addVines, i <= floorDistance - 1 and i >= floorDistance - 2) + end + end + + -- We only place vines after entire burrow entrance has been carved, to avoid placing + -- vines on blocks which will later be removed. + for _,vineFunction in ipairs(vinePlacements) do vineFunction(decoration_list) end + + -- Replace airStandIn with real air. + -- This two-pass process was neccessary because the vine placing algorithm used + -- the presense of air to determine if a rock was facing outside and should have a vine. + -- Single-pass solutions result in vines inside the tunnel (where I'd rather overgrowth spawned) + for _,stampedIndex in ipairs(stampedIndexes) do + if data[stampedIndex] == nodeId_airStandIn then + data[stampedIndex] = nodeId_air + end + end + + end + + local function placeNode(x, y, z, node_id) + if (x >= minp.x and x <= maxp.x and z >= minp.z and z <= maxp.z and y >= minp.y and y <= maxp.y) then + data[area:index(x, y, z)] = node_id + end + end + + local function posInBounds(pos) + return pos.x >= minp.x and pos.x <= maxp.x and pos.z >= minp.z and pos.z <= maxp.z and pos.y >= minp.y and pos.y <= maxp.y + end + + local zStart = math_max(core.z - burrowRadius, minp.z) + local xStart = math_max(core.x - burrowRadius, minp.x) + local xStop = math_min(core.x + burrowRadius, maxp.x) + local yStart = math_max(burrowFloor, minp.y) + + -- dig burrow + local dataBufferIndex = area:index(xStart, yStart, zStart) + for z = zStart, math_min(core.z + burrowRadius, maxp.z) do + for x = xStart, xStop do + local distanceSquared = (x - core.x)*(x - core.x) + (z - core.z)*(z - core.z) + if distanceSquared < radiusSquared then + local horz_easing = 1 - distanceSquared / radiusSquared + for y = math_max(minp.y, burrowFloor + math_floor(1.4 - horz_easing)), math_min(maxp.y, burrowFloor + 1 + math_min(burrowHeight - 1, math_floor(0.8 + burrowHeight * horz_easing))) do + data[dataBufferIndex + (y - yStart) * area.ystride] = nodeId_air + end + end + dataBufferIndex = dataBufferIndex + 1 + end + dataBufferIndex = dataBufferIndex + area.zstride - (xStop - xStart + 1) + end + + local floorId + if core.biome.node_top == nil then floorId = nil else floorId = minetest.get_content_id(core.biome.node_top) end + + if isAncientBurrow then + -- island overlaps can only happen at territory edges when a coreType has exclusive=true, so + -- angle the burrow entrance toward the center of the terrority to avoid any overlapping islands. + local territoryCenter = vector.new( + core.type.territorySize * math.floor(core.x / core.type.territorySize) + math.floor(0.5 + core.type.territorySize / 2), + burrowFloor, + core.type.territorySize * math.floor(core.z / core.type.territorySize) + math.floor(0.5 + core.type.territorySize / 2) + ) + local burrowStart = vector.new(core.x, burrowFloor, core.z) + local direction = vector.direction(burrowStart, territoryCenter) + local directionOffsetZ = 4 + if direction.z < 0 then directionOffsetZ = -directionOffsetZ end + burrowStart.z = burrowStart.z + directionOffsetZ -- start the burrow enterance off-center + burrowStart.x = burrowStart.x + 2 -- start the burrow enterance off-center + direction = vector.direction(burrowStart, territoryCenter) + if vector.length(direction) == 0 then direction = vector.direction({x=0, y=0, z=0}, {x=2, y=0, z=1}) end + + local path = vector.add(vector.multiply(direction, core.radius), {x=0, y=-4,z=0}) + local floorStartingFrom = 4 + math.floor(0.5 + core.radius * 0.3) + + -- carve burrow entrance + local pattern = {{x=0,z=0}, {x=-1,z=0}, {x=1,z=0}, {x=0,z=-1}, {x=0,z=1}} + carve(burrowStart, vector.add(burrowStart, path), pattern, 2, floorId, floorStartingFrom) + + -- place egg in burrow + local eggX = core.x + local eggZ = core.z - directionOffsetZ * 0.75 -- move the egg away from where the burrow entrance is carved + placeNode(eggX, burrowFloor, eggZ, nodeId_egg) + if nodeId_gravel ~= nodeId_ignore then placeNode(eggX, burrowFloor - 1, eggZ, nodeId_gravel) end + if nodeId_cobweb ~= nodeId_ignore then + placeNode(core.x - 6, burrowFloor + 3, core.z - 1, nodeId_cobweb) + placeNode(core.x + 4, burrowFloor + 4, core.z + 3, nodeId_cobweb) + placeNode(core.x + 6, burrowFloor + 1, core.z - 3, nodeId_cobweb) + end + + else + -- Only attempt this if it can contain beds and a place to store the diary. + if (nodeId_bookshelf ~= nodeId_ignore or nodeId_chest ~= nodeId_ignore) and nodeId_bed_top ~= nodeId_ignore and nodeId_bed_bottom ~= nodeId_ignore then + + -- carve stairs to the surface + local stairsStart = vector.new(core.x - 3, burrowFloor, core.z - 7) + local stairsbottom = vector.add(stairsStart, {x=0,y=0,z=1}) + local stairsMiddle1 = vector.add(stairsStart, {x=8,y=8,z=0}) + local stairsMiddle2 = vector.add(stairsMiddle1, {x=0,y=0,z=-1}) + local stairsEnd = vector.add(stairsMiddle2, {x=-20,y=20,z=0}) + + carve(stairsEnd, stairsMiddle2, {{x=0,z=0}}, 3, floorId, 0) + carve(stairsMiddle1, stairsStart, {{x=0,z=0}}, 2, floorId, 0) + local pattern = {{x=0,z=0}, {x=1,z=0}, {x=0,z=2}, {x=0,z=1}, {x=1,z=1}} + carve(stairsbottom, stairsbottom, pattern, 2, floorId, 0) + + -- fill the outpost + placeNode(core.x + 2, burrowFloor, core.z + 5, nodeId_bed_top) + placeNode(core.x + 2, burrowFloor, core.z + 4, nodeId_bed_bottom) + + placeNode(core.x + 2, burrowFloor, core.z + 2, nodeId_bed_top) + placeNode(core.x + 2, burrowFloor, core.z + 1, nodeId_bed_bottom) + + placeNode(core.x + 4, burrowFloor, core.z + 2, nodeId_bed_top) + placeNode(core.x + 4, burrowFloor, core.z + 1, nodeId_bed_bottom) + + if (nodeId_torch ~= nodeId_ignore) then + decoration_list[#decoration_list + 1] = { + pos={x=core.x, y=burrowFloor + 2, z=core.z + 6}, + node={name = minetest.get_name_from_content_id(nodeId_torch), param2 = 4} + } + end + if nodeId_junk ~= nodeId_ignore then placeNode(core.x - 4, burrowFloor + 1, core.z + 5, nodeId_junk) end + if nodeId_anvil ~= nodeId_ignore then placeNode(core.x - 6, burrowFloor + 1, core.z, nodeId_anvil) end + if nodeId_workbench ~= nodeId_ignore then placeNode(core.x - 5, burrowFloor, core.z + 2, nodeId_workbench) end + if nodeId_cobweb ~= nodeId_ignore then placeNode(core.x + 4, burrowFloor + 4, core.z - 3, nodeId_cobweb) end + + local bookshelf_pos + local invBookshelf = nil + local invChest = nil + if nodeId_chest ~= nodeId_ignore then + local pos = {x = core.x - 3, y = burrowFloor + 1, z = core.z + 6} + + local nodeName_chest = minetest.get_name_from_content_id(nodeId_chest) + local nodeNameAtPos = minetest.get_node(pos).name + -- falls back on the nodeNameAtPos:find("chest") check to avoid a race-condition where if the + -- chest is opened while nearby areas are being generated, the opened chest may be replaced with + -- a new empty closed one. + if nodeNameAtPos ~= nodeName_chest and not nodeNameAtPos:find("chest") then minetest.set_node(pos, {name = nodeName_chest}) end + + if posInBounds(pos) then + data[area:index(pos.x, pos.y, pos.z)] = nodeId_chest + invChest = minetest.get_inventory({type = "node", pos = pos}) + end + end + if nodeId_bookshelf ~= nodeId_ignore then + local pos = {x = core.x - 2, y = burrowFloor + 1, z = core.z + 6} + bookshelf_pos = pos + + if minetest.get_node(pos).name ~= nodeName_bookshelf then minetest.set_node(pos, {name = nodeName_bookshelf}) end + + if posInBounds(pos) then + data[area:index(pos.x, pos.y, pos.z)] = nodeId_bookshelf + if not isMineCloneBookshelf then -- mineclone bookshelves are decorational (like Minecraft) and don't contain anything + invBookshelf = minetest.get_inventory({type = "node", pos = pos}) + end + end + end + + if invBookshelf ~= nil or invChest ~= nil then + -- create diary + local groundDesc = S("rock") + if core.biome.node_filler ~= nil then + local earthNames = string.lower(core.biome.node_filler) .. string.lower(core.biome.node_top) + if string.match(earthNames, "ice") or string.match(earthNames, "snow") or string.match(earthNames, "frozen") then + groundDesc = S("ice") + end + end + + local book_itemstack = interop.write_book( + S("Weddell Outpost, November 21"), -- title + S("Bert Shackleton"), -- owner/author + S([[The aerostat is lost. + +However, salvage attempts throughout the night managed to +save most provisions before it finally broke apart and fell. + + ---====--- + +This island is highly exposed and the weather did not treat +the tents well. We have enlarged a sheltered crag in the @1, +but it is laborous work and the condition of some of the party +is becoming cause for concern. + +Quite a journey is now required, we cannot stay - nobody will +look for us here. McNish is attempting to strengthen the gliders. + + ---====---]], groundDesc), + S("Diary of Bert Shackleton") -- description + ) + + if book_itemstack ~= nil then + if invBookshelf == nil then + -- mineclone bookshelves are decorational like Minecraft, put the book in the chest instead + -- (also testing for nil invBookshelf because it can happen. Weird race condition??) + if invChest ~= nil then invChest:add_item("main", book_itemstack) end + else + -- add the book to the bookshelf and manually trigger update_bookshelf() so its + -- name will reflect the new contents. + invBookshelf:add_item("books", book_itemstack) + local dummyPlayer = {} + dummyPlayer.get_player_name = function() return "server" end + dummyPlayer.is_fake_player = true + dummyPlayer.is_player = function() return false end -- it's unclear whether this should return false for fake players + + minetest.registered_nodes[nodeName_bookshelf].on_metadata_inventory_put(bookshelf_pos, "books", 1, book_itemstack, dummyPlayer) + end + end + end + + if invChest ~= nil then + -- leave some junk from the expedition in the chest + local stack + local function addIfFound(item_aliases, amount) + for _,name in ipairs(item_aliases) do + if minetest.registered_items[name] ~= nil then + stack = ItemStack(name .. " " .. amount) + invChest:add_item("main", stack) + break + end + end + end + addIfFound({"mcl_tools:pick_iron", "default:pick_steel", "main:ironpick"}, 1) + addIfFound({"binoculars:binoculars"}, 1) + addIfFound(NODENAMES_WOOD, 10) + addIfFound({"mcl_torches:torch", "default:torch", "torch:torch"}, 3) + end + + end + end + end + end +end + +local function init_secrets() + nodeId_bed_top = interop.find_node_id({"beds:bed_top", "bed:bed_front"}) + nodeId_bed_bottom = interop.find_node_id({"beds:bed_bottom", "bed:bed_back"}) + nodeId_torch = interop.find_node_id({"mcl_torches:torch_wall", "default:torch_wall", "torch:wall"}) + nodeId_chest = interop.find_node_id({"chest", "mcl_chests:chest", "default:chest", "utility:chest"}) + nodeId_junk = interop.find_node_id({"xdecor:barrel", "cottages:barrel", "homedecor:copper_pans", "vessels:steel_bottle", "mcl_flowerpots:flower_pot"}) + nodeId_anvil = interop.find_node_id({"castle:anvil", "cottages:anvil", "mcl_anvils:anvil", "default:anvil", "main:anvil" }) -- "default:anvil" and "main:anvil" aren't a thing, but perhaps one day. + nodeId_workbench = interop.find_node_id({"homedecor:table", "xdecor:workbench", "mcl_crafting_table:crafting_table", "default:table", "random_buildings:bench", "craftingtable:craftingtable"}) -- "default:table" isn't a thing, but perhaps one day. + nodeId_cobweb = interop.find_node_id({"mcl_core:cobweb", "xdecor:cobweb", "homedecor:cobweb_plantlike", "default:cobweb", "main:cobweb"}) + + local mineCloneBookshelfName = "mcl_books:bookshelf" + nodeId_bookshelf = interop.find_node_id({mineCloneBookshelfName, "default:bookshelf"}) + nodeName_bookshelf = minetest.get_name_from_content_id(nodeId_bookshelf) + isMineCloneBookshelf = nodeName_bookshelf == mineCloneBookshelfName + + if nodeId_cobweb ~= nodeId_ignore then + -- This game has proper cobwebs, replace any cobwebs this mod may have generated + -- previously (when a cobweb mod wasn't included) with the proper cobwebs. + minetest.register_alias(nodeName_standinCobweb, minetest.get_name_from_content_id(nodeId_cobweb)) + elseif minetest.registered_nodes[nodeName_standinCobweb] ~= nil then + -- use a stand-in cobweb created by this mod + nodeId_cobweb = minetest.get_content_id(nodeName_standinCobweb) + end +end +------------------------------------------------------------------------------ +-- End of secrets section +------------------------------------------------------------------------------ + + +local function renderCores(cores, minp, maxp, blockseed) + + local voxelsWereManipulated = false + + local vm, emerge_min, emerge_max = minetest.get_mapgen_object("voxelmanip") + vm:get_data(data) -- put all nodes except the ground surface in this array + local area = VoxelArea:new{MinEdge=emerge_min, MaxEdge=emerge_max} + local overdrawTop = maxp.y + OVERDRAW + + local currentBiomeId = -1 + local nodeId_dust + local nodeId_top + local nodeId_filler + local nodeId_stoneBase + local nodeId_pondBottom + local depth_top + local depth_filler + local fillerFallsWithGravity + local floodableDepth + + for z = minp.z, maxp.z do + + local dataBufferIndex = area:index(minp.x, minp.y, z) + for x = minp.x, maxp.x do + for _,core in pairs(cores) do + local coreTop = ALTITUDE + core.y + + local distanceSquared = (x - core.x)*(x - core.x) + (z - core.z)*(z - core.z) + local radius = core.radius + local radiusSquared = radius * radius + + if distanceSquared <= radiusSquared then + + -- get the biome details for this core + if core.biome == nil then setCoreBiomeData(core) end + if currentBiomeId ~= core.biomeId then + if core.biome.node_top == nil then nodeId_top = nodeId_stone else nodeId_top = minetest.get_content_id(core.biome.node_top) end + if core.biome.node_filler == nil then nodeId_filler = nodeId_stone else nodeId_filler = minetest.get_content_id(core.biome.node_filler) end + if core.biome.node_stone == nil then nodeId_stoneBase = nodeId_stone else nodeId_stoneBase = minetest.get_content_id(core.biome.node_stone) end + if core.biome.node_dust == nil then nodeId_dust = nodeId_ignore else nodeId_dust = minetest.get_content_id(core.biome.node_dust) end + if core.biome.node_riverbed == nil then nodeId_pondBottom = nodeId_silt else nodeId_pondBottom = minetest.get_content_id(core.biome.node_riverbed) end + + if core.biome.depth_top == nil then depth_top = 1 else depth_top = core.biome.depth_top end + if core.biome.depth_filler == nil then depth_filler = 3 else depth_filler = core.biome.depth_filler end + fillerFallsWithGravity = core.biome.node_filler ~= nil and minetest.registered_items[core.biome.node_filler].groups.falling_node == 1 + + --[[Commented out as unnecessary, as a supporting node will be added, but uncommenting + this will make the strata transition less noisey. + if fillerFallsWithGravity then + -- the filler node is affected by gravity and can fall if unsupported, so keep that layer thinner than + -- core.thickness when possible. + --depth_filler = math_min(depth_filler, math_max(1, core.thickness - 1)) + end--]] + + floodableDepth = 0 + if nodeId_top ~= nodeId_stone and minetest.registered_items[core.biome.node_top].floodable then + -- nodeId_top is a node that water floods through, so we can't have ponds appearing at this depth + floodableDepth = depth_top + end + + currentBiomeId = core.biomeId + end + + -- decide on a shape + local horz_easing + local noise_weighting = 1 + local shapeType = math_floor(core.depth + radius + core.x) % 5 + if shapeType < 2 then + -- convex + -- squared easing function, e = 1 - x² + horz_easing = 1 - distanceSquared / radiusSquared + elseif shapeType == 2 then + -- conical + -- linear easing function, e = 1 - x + horz_easing = 1 - math_sqrt(distanceSquared) / radius + else + -- concave + -- root easing function blended/scaled with square easing function, + -- x = normalised distance from center of core + -- a = 1 - x² + -- b = 1 - √x + -- e = 0.8*a*x + 1.2*b*(1 - x) + + local radiusRoot = core.radiusRoot + if radiusRoot == nil then + radiusRoot = math_sqrt(radius) + core.radiusRoot = radiusRoot + end + + local squared = 1 - distanceSquared / radiusSquared + local distance = math_sqrt(distanceSquared) + local distance_normalized = distance / radius + local root = 1 - math_sqrt(distance) / radiusRoot + horz_easing = math_min(1, 0.8*distance_normalized*squared + 1.2*(1-distance_normalized)*root) + + -- this seems to be a more delicate shape that gets wiped out by the + -- density noise, so lower that + noise_weighting = 0.63 + end + if radius + core.depth > 80 then + -- larger islands shapes have a slower easing transition, which leaves large areas + -- dominated by the density noise, so reduce the density noise when the island is large. + -- (the numbers here are arbitrary) + if radius + core.depth > 120 then + noise_weighting = 0.35 + else + noise_weighting = math_min(0.6, noise_weighting) + end + end + + local surfaceNoise = noise_surfaceMap:get2d({x = x, y = z}) + if DEBUG_GEOMETRIC then surfaceNoise = SURFACEMAP_OFFSET end + local surface = round(surfaceNoise * 3 * (core.thickness + 1) * horz_easing) -- if you change this formular then update maxSufaceRise in on_generated() + local coreBottom = math_floor(coreTop - (core.thickness + core.depth)) + local noisyDepthOfFiller = depth_filler + if noisyDepthOfFiller >= 3 then noisyDepthOfFiller = noisyDepthOfFiller + math_floor(randomNumbers[(x + z) % 256] * 3) - 1 end + + local yBottom = math_max(minp.y, coreBottom - 4) -- the -4 is for rare instances when density noise pushes the bottom of the island deeper + local yBottomIndex = dataBufferIndex + area.ystride * (yBottom - minp.y) -- equivalent to yBottomIndex = area:index(x, yBottom, z) + local topBlockIndex = -1 + local bottomBlockIndex = -1 + local vi = yBottomIndex + local densityNoise = nil + + for y = yBottom, math_min(overdrawTop, coreTop + surface) do + local vert_easing = math_min(1, (y - coreBottom) / core.depth) + + -- If you change the densityNoise calculation, remember to similarly update the copy of this calculation in the pond code + densityNoise = noise_density:get3d({x = x, y = y - coreTop, z = z}) -- TODO: Optimize this!! + densityNoise = noise_weighting * densityNoise + (1 - noise_weighting) * DENSITY_OFFSET + + if DEBUG_GEOMETRIC then densityNoise = DENSITY_OFFSET end + + if densityNoise * ((horz_easing + vert_easing) / 2) >= REQUIRED_DENSITY then + if vi > topBlockIndex then topBlockIndex = vi end + if bottomBlockIndex < 0 and y > minp.y then bottomBlockIndex = vi end -- if y==minp.y then we don't know for sure this is the lowest block + + if y > coreTop + surface - depth_top and data[vi] == nodeId_air then + data[vi] = nodeId_top + elseif y >= coreTop + surface - (depth_top + noisyDepthOfFiller) then + data[vi] = nodeId_filler + else + data[vi] = nodeId_stoneBase + end + end + vi = vi + area.ystride + end + + -- ensure nodeId_top blocks also cover the rounded sides of islands (which may be lower + -- than the flat top), then dust the top surface. + if topBlockIndex >= 0 then + voxelsWereManipulated = true + + -- we either have the highest block, or overdrawTop - but we don't want to set overdrawTop nodes to nodeId_top + -- (we will err on the side of caution when we can't distinguish the top of a island's side from overdrawTop) + if overdrawTop >= coreTop + surface or vi > topBlockIndex + area.ystride then + if topBlockIndex > yBottomIndex and data[topBlockIndex - area.ystride] ~= nodeId_air and data[topBlockIndex + area.ystride] == nodeId_air then + -- We only set a block to nodeId_top if there's a block under it "holding it up" as + -- it's better to leave 1-deep noise as stone/whatever. + data[topBlockIndex] = nodeId_top + end + if nodeId_dust ~= nodeId_ignore and data[topBlockIndex + area.ystride] == nodeId_air then + -- Delay writing dust to the data buffer until after decoration so avoid preventing tree growth etc + if core.dustLocations == nil then core.dustLocations = {} end + core.dustLocations[#core.dustLocations + 1] = topBlockIndex + area.ystride + end + end + + if fillerFallsWithGravity and bottomBlockIndex >= 0 and data[bottomBlockIndex] == nodeId_filler then + -- the bottom node is affected by gravity and can fall if unsupported, put some support in + data[bottomBlockIndex] = nodeId_stoneBase + end + end + + -- add ponds of water, trying to make sure they're not on an edge. + -- (the only time a pond needs to be rendered when densityNoise is nil (i.e. when there was no land at this x, z), + -- is when the pond is at minp.y - i.e. the reason no land was rendered is it was below minp.y) + if surfaceNoise < 0 and (densityNoise ~= nil or (coreTop + surface < minp.y and coreTop >= minp.y)) and nodeId_water ~= nodeId_ignore then + local pondWallBuffer = core.type.pondWallBuffer + local pondBottom = nodeId_filler + local pondWater = nodeId_water + if radius > 18 and core.depth > 15 and nodeId_pondBottom ~= nodeId_ignore then + -- only give ponds a sandbed when islands are large enough for it not to stick out the side or bottom + pondBottom = nodeId_pondBottom + end + if core.temperature <= ICE_REQUIRED_TEMPERATURE and nodeId_ice ~= nodeId_ignore then pondWater = nodeId_ice end + + if densityNoise == nil then + -- Rare edge case. If the pond is at minp.y, then no land has been rendered, so + -- densityNoise hasn't been calculated. Calculate it now. + densityNoise = noise_density:get3d({x = x, y = minp.y, z = z}) + densityNoise = noise_weighting * densityNoise + (1 - noise_weighting) * DENSITY_OFFSET + if DEBUG_GEOMETRIC then densityNoise = DENSITY_OFFSET end + end + + local surfaceDensity = densityNoise * ((horz_easing + 1) / 2) + local onTheEdge = math_sqrt(distanceSquared) + 1 >= radius + for y = math_max(minp.y, coreTop + surface), math_min(overdrawTop, coreTop - floodableDepth) do + if surfaceDensity > REQUIRED_DENSITY then + vi = dataBufferIndex + area.ystride * (y - minp.y) -- this is the same as vi = area:index(x, y, z) + + if surfaceDensity > (REQUIRED_DENSITY + pondWallBuffer) and not onTheEdge then + data[vi] = pondWater + if y > minp.y then data[vi - area.ystride] = pondBottom end + --remove any dust above ponds + if core.dustLocations ~= nil and core.dustLocations[#core.dustLocations] == vi + area.ystride then core.dustLocations[#core.dustLocations] = nil end + else + -- make sure there are some walls to keep the water in + if y == coreTop then + data[vi] = nodeId_top -- to let isIsland() know not to put vines here (only seems to be an issue when pond is 2 deep or more) + else + data[vi] = nodeId_filler + end + end + end + end + end + + end + end + dataBufferIndex = dataBufferIndex + 1 + end + end + + local decorations = {} + for _,core in ipairs(cores) do + addDetail_vines(decorations, core, data, area, minp, maxp) + voxelsWereManipulated = addDetail_skyReef(decorations, core, data, area, minp, maxp) or voxelsWereManipulated + addDetail_secrets(decorations, core, data, area, minp, maxp) + end + + if voxelsWereManipulated then + + vm:set_data(data) + if GENERATE_ORES then minetest.generate_ores(vm) end + minetest.generate_decorations(vm) + + for _,core in ipairs(cores) do + addDetail_skyTree(decorations, core, minp, maxp) + end + for _,decoration in ipairs(decorations) do + local nodeAtPos = minetest.get_node(decoration.pos) + if nodeAtPos.name == "air" or nodeAtPos.name == nodeName_ignore then minetest.set_node(decoration.pos, decoration.node) end + end + + local dustingInProgress = false + for _,core in ipairs(cores) do + if core.dustLocations ~= nil then + if not dustingInProgress then + vm:get_data(data) + dustingInProgress = true + end + + nodeId_dust = minetest.get_content_id(core.biome.node_dust) + for _, location in ipairs(core.dustLocations) do + if data[location] == nodeId_air and data[location - area.ystride] ~= nodeId_air then + data[location] = nodeId_dust + end + end + end + end + if dustingInProgress then vm:set_data(data) end + + + -- Lighting is a problem. Two problems really... + -- + -- Problem 1: + -- We can't use the usual lua mapgen lighting trick of flags="nolight" e.g.: + -- minetest.set_mapgen_params({mgname = "singlenode", flags = "nolight"}) + -- (https://forum.minetest.net/viewtopic.php?t=19836) + -- + -- because the mod is designed to run with other mapgens. So we must set the light + -- values to zero at islands before calling calc_lighting() to propegate lighting + -- down from above. + -- + -- This causes lighting bugs if we zero the whole emerge_min-emerge_max area because + -- it leaves hard black at the edges of the emerged area (calc_lighting must assume + -- a value of zero for light outside the region, and be blending that in) + -- + -- But we can't simply zero only the minp-maxp area instead, because then calc_lighting + -- reads the daylight values out of the overdraw area and blends those in, cutting + -- up shadows with lines of daylight along chunk boundaries. + -- + -- The correct solution is to zero and calculate the whole emerge_min-emerge_max area, + -- but only write the calculated lighting information from minp-maxp back into the map, + -- however the API doesn't appear to provide a fast way to do that. + -- + -- Workaround: zero an area that extends into the overdraw region, but keeps a gap around + -- the edges to preserve and allow the real light values to propegate in. Then when + -- calc_lighting is called it will have daylight (or existing values) at the emerge boundary + -- but not near the chunk boundary. calc_lighting is able to take the edge lighting into + -- account instead of assuming zero. It's not a perfect solution, but allows shading without + -- glaringly obvious lighting artifacts, and the minor ill effects should only affect the + -- islands and be corrected any time lighting is updated. + -- + -- + -- Problem 2: + -- We don't want islands to blacken the landscape below them in shadow. + -- + -- Workaround 1: Instead of zeroing the lighting before propegating from above, set it + -- to 2, so that shadows are never pitch black. Shadows will still go back to pitch black + -- though if lighting gets recalculated, e.g. player places a torch then removes it. + -- + -- Workaround 2: set the bottom of the chunk to full daylight, ensuring that full + -- daylight is what propegates down below islands. This has the problem of causing a + -- bright horizontal band of light where islands approach a chunk floor or ceiling, + -- but Hallelujah Mountains already had that issue due to having propagate_shadow + -- turned off when calling calc_lighting. This workaround has the same drawback, but + -- does a much better job of preventing undesired shadows. + + local shadowGap = 1 + local brightMin = {x = emerge_min.x + shadowGap, y = minp.y , z = emerge_min.z + shadowGap} + local brightMax = {x = emerge_max.x - shadowGap, y = minp.y + 1, z = emerge_max.z - shadowGap} + local darkMin = {x = emerge_min.x + shadowGap, y = minp.y + 1, z = emerge_min.z + shadowGap} + local darkMax = {x = emerge_max.x - shadowGap, y = maxp.y , z = emerge_max.z - shadowGap} + + vm:set_lighting({day=2, night=0}, darkMin, darkMax) + vm:calc_lighting() + vm:set_lighting({day=15, night=0}, brightMin, brightMax) + + vm:write_to_map() -- seems to be unnecessary when other mods that use vm are running + + for _,core in ipairs(cores) do + -- place any schematics which should be placed after the landscape + if addDetail_ancientPortal ~= nil then addDetail_ancientPortal(core) end + end + end +end + + +cloudlands.init = function() + if noise_eddyField == nil then + init_mapgen() + init_secrets() + end + if noise_eddyField == nil then + -- See comment in init_mapgen() about when this can be called + minetest.log("warning", "cloudlands.init() unable to init - was probably invoked before the the environment was created") + end +end + +local function on_generated(minp, maxp, blockseed) + + local memUsageT0 + local osClockT0 = os.clock() + if DEBUG then memUsageT0 = collectgarbage("count") end + + local largestCoreType = cloudlands.coreTypes[1] -- the first island type is the biggest/thickest + local maxCoreThickness = largestCoreType.thicknessMax + local maxCoreDepth = largestCoreType.radiusMax * 3 / 2 -- todo: not sure why this is radius based and not maxDepth based?? + local maxSufaceRise = 3 * (maxCoreThickness + 1) + + if minp.y > ALTITUDE + (ALTITUDE_AMPLITUDE + maxSufaceRise + 10) or -- the 10 is an arbitrary number because sometimes the noise values exceed their normal range. + maxp.y < ALTITUDE - (ALTITUDE_AMPLITUDE + maxCoreThickness + maxCoreDepth + 10) then + -- Hallelujah Mountains don't generate here + return + end + + local cores = cloudlands.get_island_details(minp, maxp) + + if DEBUG then + minetest.log("info", "Cores for on_generated(): " .. #cores) + for _,core in pairs(cores) do + minetest.log("core ("..core.x..","..core.y..","..core.z..") r"..core.radius) + end + end + + if #cores > 0 then + -- voxelmanip has mem-leaking issues, avoid creating one if we're not going to need it + renderCores(cores, minp, maxp, blockseed) + + if DEBUG then + minetest.log( + "info", + MODNAME .. " took " + .. round((os.clock() - osClockT0) * 1000) + .. "ms for " .. #cores .. " cores. Uncollected memory delta: " + .. round(collectgarbage("count") - memUsageT0) .. " KB" + ) + end + end +end + + +minetest.register_on_generated(on_generated) + +minetest.register_on_mapgen_init( + -- invoked after mods initially run but before the environment is created, while the mapgen is being initialized + function(mgparams) + worldSeed = mgparams.seed + --if DEBUG then minetest.set_mapgen_params({mgname = "singlenode"--[[, flags = "nolight"]]}) end + end +) \ No newline at end of file diff --git a/mods/cloudlands/cloudlands_tree1.mts b/mods/cloudlands/cloudlands_tree1.mts new file mode 100644 index 0000000000000000000000000000000000000000..345cd5d3d242832b111c619db16a75da28c5f136 GIT binary patch literal 44408 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 2: + print("on folder list:", params["folders"]) + for f in params["folders"]: + if params["recursive"]: + run_all_subfolders(f) + else: + update_folder(f) + elif len(params["folders"]) == 1: + print("on folder", params["folders"][0]) + if params["recursive"]: + run_all_subfolders(params["folders"][0]) + else: + update_folder(params["folders"][0]) + else: + print("on folder", os.path.abspath("./")) + if params["recursive"]: + run_all_subfolders(os.path.abspath("./")) + else: + update_folder(os.path.abspath("./")) + +#group 2 will be the string, groups 1 and 3 will be the delimiters (" or ') +#See https://stackoverflow.com/questions/46967465/regex-match-text-in-either-single-or-double-quote +pattern_lua = re.compile(r'[\.=^\t,{\(\s]N?S\(\s*(["\'])((?:\\\1|(?:(?!\1)).)*)(\1)[\s,\)]', re.DOTALL) +pattern_lua_bracketed = re.compile(r'[\.=^\t,{\(\s]N?S\(\s*\[\[(.*?)\]\][\s,\)]', re.DOTALL) + +# Handles "concatenation" .. " of strings" +pattern_concat = re.compile(r'["\'][\s]*\.\.[\s]*["\']', re.DOTALL) + +pattern_tr = re.compile(r'(.+?[^@])=(.*)') +pattern_name = re.compile(r'^name[ ]*=[ ]*([^ \n]*)') +pattern_tr_filename = re.compile(r'\.tr$') +pattern_po_language_code = re.compile(r'(.*)\.po$') + +#attempt to read the mod's name from the mod.conf file. Returns None on failure +def get_modname(folder): + try: + with open(os.path.join(folder, "mod.conf"), "r", encoding='utf-8') as mod_conf: + for line in mod_conf: + match = pattern_name.match(line) + if match: + return match.group(1) + except FileNotFoundError: + pass + return None + +#If there are already .tr files in /locale, returns a list of their names +def get_existing_tr_files(folder): + out = [] + for root, dirs, files in os.walk(os.path.join(folder, 'locale/')): + for name in files: + if pattern_tr_filename.search(name): + out.append(name) + return out + +# A series of search and replaces that massage a .po file's contents into +# a .tr file's equivalent +def process_po_file(text): + # The first three items are for unused matches + text = re.sub(r'#~ msgid "', "", text) + text = re.sub(r'"\n#~ msgstr ""\n"', "=", text) + text = re.sub(r'"\n#~ msgstr "', "=", text) + # comment lines + text = re.sub(r'#.*\n', "", text) + # converting msg pairs into "=" pairs + text = re.sub(r'msgid "', "", text) + text = re.sub(r'"\nmsgstr ""\n"', "=", text) + text = re.sub(r'"\nmsgstr "', "=", text) + # various line breaks and escape codes + text = re.sub(r'"\n"', "", text) + text = re.sub(r'"\n', "\n", text) + text = re.sub(r'\\"', '"', text) + text = re.sub(r'\\n', '@n', text) + # remove header text + text = re.sub(r'=Project-Id-Version:.*\n', "", text) + # remove double-spaced lines + text = re.sub(r'\n\n', '\n', text) + return text + +# Go through existing .po files and, if a .tr file for that language +# *doesn't* exist, convert it and create it. +# The .tr file that results will subsequently be reprocessed so +# any "no longer used" strings will be preserved. +# Note that "fuzzy" tags will be lost in this process. +def process_po_files(folder, modname): + for root, dirs, files in os.walk(os.path.join(folder, 'locale/')): + for name in files: + code_match = pattern_po_language_code.match(name) + if code_match == None: + continue + language_code = code_match.group(1) + tr_name = modname + "." + language_code + ".tr" + tr_file = os.path.join(root, tr_name) + if os.path.exists(tr_file): + if params["verbose"]: + print(f"{tr_name} already exists, ignoring {name}") + continue + fname = os.path.join(root, name) + with open(fname, "r", encoding='utf-8') as po_file: + if params["verbose"]: + print(f"Importing translations from {name}") + text = process_po_file(po_file.read()) + with open(tr_file, "wt", encoding='utf-8') as tr_out: + tr_out.write(text) + +# from https://stackoverflow.com/questions/600268/mkdir-p-functionality-in-python/600612#600612 +# Creates a directory if it doesn't exist, silently does +# nothing if it already exists +def mkdir_p(path): + try: + os.makedirs(path) + except OSError as exc: # Python >2.5 + if exc.errno == errno.EEXIST and os.path.isdir(path): + pass + else: raise + +# Converts the template dictionary to a text to be written as a file +# dKeyStrings is a dictionary of localized string to source file sets +# dOld is a dictionary of existing translations and comments from +# the previous version of this text +def strings_to_text(dkeyStrings, dOld, mod_name): + lOut = [f"# textdomain: {mod_name}\n"] + + dGroupedBySource = {} + + for key in dkeyStrings: + sourceList = list(dkeyStrings[key]) + sourceList.sort() + sourceString = "\n".join(sourceList) + listForSource = dGroupedBySource.get(sourceString, []) + listForSource.append(key) + dGroupedBySource[sourceString] = listForSource + + lSourceKeys = list(dGroupedBySource.keys()) + lSourceKeys.sort() + for source in lSourceKeys: + localizedStrings = dGroupedBySource[source] + localizedStrings.sort() + lOut.append("") + lOut.append(source) + lOut.append("") + for localizedString in localizedStrings: + val = dOld.get(localizedString, {}) + translation = val.get("translation", "") + comment = val.get("comment") + if len(localizedString) > doublespace_threshold and not lOut[-1] == "": + lOut.append("") + if comment != None: + lOut.append(comment) + lOut.append(f"{localizedString}={translation}") + if len(localizedString) > doublespace_threshold: + lOut.append("") + + + unusedExist = False + for key in dOld: + if key not in dkeyStrings: + val = dOld[key] + translation = val.get("translation") + comment = val.get("comment") + # only keep an unused translation if there was translated + # text or a comment associated with it + if translation != None and (translation != "" or comment): + if not unusedExist: + unusedExist = True + lOut.append("\n\n##### not used anymore #####\n") + if len(key) > doublespace_threshold and not lOut[-1] == "": + lOut.append("") + if comment != None: + lOut.append(comment) + lOut.append(f"{key}={translation}") + if len(key) > doublespace_threshold: + lOut.append("") + return "\n".join(lOut) + '\n' + +# Writes a template.txt file +# dkeyStrings is the dictionary returned by generate_template +def write_template(templ_file, dkeyStrings, mod_name): + # read existing template file to preserve comments + existing_template = import_tr_file(templ_file) + + text = strings_to_text(dkeyStrings, existing_template[0], mod_name) + mkdir_p(os.path.dirname(templ_file)) + with open(templ_file, "wt", encoding='utf-8') as template_file: + template_file.write(text) + + +# Gets all translatable strings from a lua file +def read_lua_file_strings(lua_file): + lOut = [] + with open(lua_file, encoding='utf-8') as text_file: + text = text_file.read() + #TODO remove comments here + + text = re.sub(pattern_concat, "", text) + + strings = [] + for s in pattern_lua.findall(text): + strings.append(s[1]) + for s in pattern_lua_bracketed.findall(text): + strings.append(s) + + for s in strings: + s = re.sub(r'"\.\.\s+"', "", s) + s = re.sub("@[^@=0-9]", "@@", s) + s = s.replace('\\"', '"') + s = s.replace("\\'", "'") + s = s.replace("\n", "@n") + s = s.replace("\\n", "@n") + s = s.replace("=", "@=") + lOut.append(s) + return lOut + +# Gets strings from an existing translation file +# returns both a dictionary of translations +# and the full original source text so that the new text +# can be compared to it for changes. +def import_tr_file(tr_file): + dOut = {} + text = None + if os.path.exists(tr_file): + with open(tr_file, "r", encoding='utf-8') as existing_file : + # save the full text to allow for comparison + # of the old version with the new output + text = existing_file.read() + existing_file.seek(0) + # a running record of the current comment block + # we're inside, to allow preceeding multi-line comments + # to be retained for a translation line + latest_comment_block = None + for line in existing_file.readlines(): + line = line.rstrip('\n') + if line[:3] == "###": + # Reset comment block if we hit a header + latest_comment_block = None + continue + if line[:1] == "#": + # Save the comment we're inside + if not latest_comment_block: + latest_comment_block = line + else: + latest_comment_block = latest_comment_block + "\n" + line + continue + match = pattern_tr.match(line) + if match: + # this line is a translated line + outval = {} + outval["translation"] = match.group(2) + if latest_comment_block: + # if there was a comment, record that. + outval["comment"] = latest_comment_block + latest_comment_block = None + dOut[match.group(1)] = outval + return (dOut, text) + +# Walks all lua files in the mod folder, collects translatable strings, +# and writes it to a template.txt file +# Returns a dictionary of localized strings to source file sets +# that can be used with the strings_to_text function. +def generate_template(folder, mod_name): + dOut = {} + for root, dirs, files in os.walk(folder): + for name in files: + if fnmatch.fnmatch(name, "*.lua"): + fname = os.path.join(root, name) + found = read_lua_file_strings(fname) + if params["verbose"]: + print(f"{fname}: {str(len(found))} translatable strings") + + for s in found: + sources = dOut.get(s, set()) + sources.add(f"### {os.path.basename(fname)} ###") + dOut[s] = sources + + if len(dOut) == 0: + return None + templ_file = os.path.join(folder, "locale/template.txt") + write_template(templ_file, dOut, mod_name) + return dOut + +# Updates an existing .tr file, copying the old one to a ".old" file +# if any changes have happened +# dNew is the data used to generate the template, it has all the +# currently-existing localized strings +def update_tr_file(dNew, mod_name, tr_file): + if params["verbose"]: + print(f"updating {tr_file}") + + tr_import = import_tr_file(tr_file) + dOld = tr_import[0] + textOld = tr_import[1] + + textNew = strings_to_text(dNew, dOld, mod_name) + + if textOld and textOld != textNew: + print(f"{tr_file} has changed.") + if not params["no-old-file"]: + shutil.copyfile(tr_file, f"{tr_file}.old") + + with open(tr_file, "w", encoding='utf-8') as new_tr_file: + new_tr_file.write(textNew) + +# Updates translation files for the mod in the given folder +def update_mod(folder): + modname = get_modname(folder) + if modname is not None: + process_po_files(folder, modname) + print(f"Updating translations for {modname}") + data = generate_template(folder, modname) + if data == None: + print(f"No translatable strings found in {modname}") + else: + for tr_file in get_existing_tr_files(folder): + update_tr_file(data, modname, os.path.join(folder, "locale/", tr_file)) + else: + print("Unable to find modname in folder " + folder) + +# Determines if the folder being pointed to is a mod or a mod pack +# and then runs update_mod accordingly +def update_folder(folder): + is_modpack = os.path.exists(os.path.join(folder, "modpack.txt")) or os.path.exists(os.path.join(folder, "modpack.conf")) + if is_modpack: + subfolders = [f.path for f in os.scandir(folder) if f.is_dir()] + for subfolder in subfolders: + update_mod(subfolder + "/") + else: + update_mod(folder) + print("Done.") + +def run_all_subfolders(folder): + for modfolder in [f.path for f in os.scandir(folder) if f.is_dir()]: + update_folder(modfolder + "/") + + +main() diff --git a/mods/cloudlands/init.lua b/mods/cloudlands/init.lua new file mode 100644 index 00000000..b7a65b1d --- /dev/null +++ b/mods/cloudlands/init.lua @@ -0,0 +1,3 @@ +local path = minetest.get_modpath(minetest.get_current_modname()) + +dofile(path.."/cloudlands.lua") diff --git a/mods/cloudlands/locale/template.txt b/mods/cloudlands/locale/template.txt new file mode 100644 index 00000000..1b6df0b3 --- /dev/null +++ b/mods/cloudlands/locale/template.txt @@ -0,0 +1,33 @@ +# textdomain: cloudlands + + +### cloudlands.lua ### + +Ancient Portalstone= +Bark of @1= +Bert Shackleton= +Blossom= +Cobweb= + +Construction requires 14 blocks of ancient portalstone. We have no knowledge of how portalstones were created, the means to craft them are likely lost to time, so our only source has been to scavenge the Nether for the remnants of ancient broken portals. A finished frame is four blocks wide, five blocks high, and stands vertically, like a doorway.= + +Dead bleached wood= +Diary of Bert Shackleton= +Fossil Display= +Fossilized Egg= +Giant Ziricote= +Giant tree= +Glowing @1= +Hallelujah Mountains Portal= +Heart of the Tree= +Leaves of a giant tree= +Sakura blossom= + +The aerostat is lost.@n@nHowever, salvage attempts throughout the night managed to@nsave most provisions before it finally broke apart and fell.@n@n ---@=@=@=@=---@n@nThis island is highly exposed and the weather did not treat@nthe tents well. We have enlarged a sheltered crag in the @1,@nbut it is laborous work and the condition of some of the party@nis becoming cause for concern.@n@nQuite a journey is now required, we cannot stay - nobody will@nlook for us here. McNish is attempting to strengthen the gliders.@n@n ---@=@=@=@=---= + +The only portal we managed to scavenge enough portalstone to build took us to a land of floating islands. There were hills and forests and even water up there, but the edges are a perilous drop — a depth of which we cannot even begin to plumb.= + +Weddell Outpost, November 21= +Wisteria blossom= +ice= +rock= diff --git a/mods/cloudlands/mod.conf b/mods/cloudlands/mod.conf new file mode 100644 index 00000000..f90dc170 --- /dev/null +++ b/mods/cloudlands/mod.conf @@ -0,0 +1,16 @@ +name = cloudlands +optional_depends = nether, vines, biomeinfo, schemlib, default, mcl_core, xpanes, ethereal, main +min_minetest_version = 5.0 +description = """ +Hallelujah Mountains for Minetest + +Giant rocks floating suspended in magnetic eddies. + +This can be run with or without a normal terrain mapgen, allowing pure skylands or an exotic addition to the landscape. + +Configurable settings include the altitude islands appear, and the ability to restrict the area they spawn. If you only ever see snow-covered islands then enable the "Use lowland biomes" option. +""" + +release = 18355 +author = DrFrankenstone +title = Hallelujah Mountains (AKA Cloudlands) diff --git a/mods/cloudlands/screenshot.png b/mods/cloudlands/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..8f90ae7b34c3c14b002cd7dded4b3a44ed1e3faf GIT binary patch literal 379142 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

g9JNU(MA=<;T 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%0Dxg?-Wl6!7k`NNsn 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 All Settings + +See the comments in this file for how to adjust: + +1. The minimum and maximum height of each layer. +2. Whether map-generation is currently active for individual layers. +3. Whether player gravity changes for each layer (off by default). +4. Whether crafting recipes are enabled. +5. Set the chance of finding ores in asteroids (default is 27 [0 to 100]). + +Note: It is advised to turn off map-generation after you have generated the required number of asteroids. + + +Licenses and Attribution +----------------------- + +Components of this mod use multiple licenses and were the work of several individuals. Please see license.txt for the full list. diff --git a/mods/other_worlds/asteroid_layer_helpers.lua b/mods/other_worlds/asteroid_layer_helpers.lua new file mode 100644 index 00000000..18de257d --- /dev/null +++ b/mods/other_worlds/asteroid_layer_helpers.lua @@ -0,0 +1,311 @@ + +-- submodule + +otherworlds.asteroids = {} + +-- Approximate realm limits + +local XMIN = -33000 +local XMAX = 33000 +local ZMIN = -33000 +local ZMAX = 33000 + +local ASCOT = 1.0 -- Large asteroid / comet nucleus noise threshold +local SASCOT = 1.0 -- Small asteroid / comet nucleus noise threshold +local STOT = 0.125 -- Asteroid stone threshold +local COBT = 0.05 -- Asteroid cobble threshold +local GRAT = 0.02 -- Asteroid gravel threshold +local ICET = 0.05 -- Comet ice threshold +local ATMOT = -0.2 -- Comet atmosphere threshold +local FISTS = 0.01 -- Fissure noise threshold at surface. Controls size of fissures and amount / size of fissure entrances +local FISEXP = 0.3 -- Fissure expansion rate under surface +local ORECHA = otherworlds.settings.ore_chance.value -- Ore 1/x chance per stone node +local CPCHU = 0 -- Maximum craters per chunk +local CRMIN = 5 -- Crater radius minimum, radius includes dust and obsidian layers +local CRRAN = 8 -- Crater radius range + +local random = math.random +local floor = math.floor +local abs = math.abs + + +-- Note: for fewer large objects: increase the 'spread' numbers in 'np_large' noise parameters. For fewer small objects do the same in 'np_small'. Then tune size with 'ASCOT' + +local np_large = { -- 3D Perlin noise 1 for large structures + offset = 0, + scale = 1, + spread = {x = 256, y = 128, z = 256}, + seed = -83928935, + octaves = 5, + persist = 0.6} + +local np_fissure = { -- 3D Perlin noise 3 for fissures + offset = 0, + scale = 1, + spread = {x = 64, y = 64, z = 64}, + seed = -188881, + octaves = 4, + persist = 0.5} + +local np_small = { -- 3D Perlin noise 4 for small structures + offset = 0, + scale = 1, + spread = {x = 128, y = 64, z = 128}, + seed = 1000760700090, + octaves = 4, + persist = 0.6} + +local np_ores = { -- 3D Perlin noise 5 for ore selection + offset = 0, + scale = 1, + spread = {x = 128, y = 128, z = 128}, + seed = -70242, + octaves = 1, + persist = 0.5} + +local np_latmos = { -- 3D Perlin noise 6 for comet atmosphere + offset = 0, + scale = 1, + spread = {x = 256, y = 128, z = 256}, + seed = -83928935, + octaves = 3, + persist = 0.6} + +local np_satmos = { -- 3D Perlin noise 7 for small comet atmosphere + offset = 0, + scale = 1, + spread = {x = 128, y = 64, z = 128}, + seed = 1000760700090, + octaves = 2, + persist = 0.6} + +-- On dignode function. Atmosphere flows into a dug hole. + +core.register_on_dignode(function(pos, oldnode, digger) + + if core.find_node_near(pos, 1, {"asteroid:atmos"}) + and core.get_node(pos).name == "air" then + core.set_node(pos, {name = "asteroid:atmos"}) + end +end) + +-- Generate on_generated function based on parameters + +function otherworlds.asteroids.create_on_generated(YMIN, YMAX, content_ids) + + local c_air = content_ids.c_air + local c_stone = content_ids.c_stone + local c_cobble = content_ids.c_cobble + local c_gravel = content_ids.c_gravel + local c_dust = content_ids.c_dust + local c_ironore = content_ids.c_ironore + local c_copperore = content_ids.c_copperore + local c_goldore = content_ids.c_goldore + local c_diamondore = content_ids.c_diamondore + local c_meseore = content_ids.c_meseore + local c_waterice = content_ids.c_waterice + local c_atmos = content_ids.c_atmos + local c_snowblock = content_ids.c_snowblock + local c_obsidian = content_ids.c_obsidian + + -- return the function closed over the upvalues we want + return function(minp, maxp, seed) + + if minp.x < XMIN or maxp.x > XMAX + or minp.y < YMIN or maxp.y > YMAX + or minp.z < ZMIN or maxp.z > ZMAX then + return + end + + local x0, y0, z0 = minp.x, minp.y, minp.z + local x1, y1, z1 = maxp.x, maxp.y, maxp.z + +-- local t1 = os.clock() +--print ("[asteroid] chunk ("..x0.." "..y0.." "..z0..")") + + local sidelen = x1 - x0 + 1 -- chunk side length + local chulens = {x = sidelen, y = sidelen, z = sidelen} + local minpos = {x = x0, y = y0, z = z0} + + local vm, emin, emax = core.get_mapgen_object("voxelmanip") + local area = VoxelArea:new{MinEdge = emin, MaxEdge = emax} + local data = vm:get_data() + + local nvals1 = core.get_perlin_map(np_large, chulens):get_3d_map_flat(minpos) + local nvals3 = core.get_perlin_map(np_fissure, chulens):get_3d_map_flat(minpos) + local nvals4 = core.get_perlin_map(np_small, chulens):get_3d_map_flat(minpos) + local nvals5 = core.get_perlin_map(np_ores, chulens):get_3d_map_flat(minpos) + local nvals6 = core.get_perlin_map(np_latmos, chulens):get_3d_map_flat(minpos) + local nvals7 = core.get_perlin_map(np_satmos, chulens):get_3d_map_flat(minpos) + + local ni = 1 + local noise1abs, noise4abs, comet, noise1dep, noise4dep, vi + + for z = z0, z1 do -- for each vertical plane do + for y = y0, y1 do -- for each horizontal row do + + vi = area:index(x0, y, z) -- LVM index for first node in x row + + for x = x0, x1 do -- for each node do + + noise1abs = abs(nvals1[ni]) + noise4abs = abs(nvals4[ni]) + comet = false + + -- comet biome + if nvals6[ni] < -(ASCOT + ATMOT) + or (nvals7[ni] < -(SASCOT + ATMOT) and nvals1[ni] < ASCOT) then + comet = true + end + + -- if below surface + if noise1abs > ASCOT or noise4abs > SASCOT then + + -- noise1dep zero at surface, positive beneath + noise1dep = noise1abs - ASCOT + + -- if no fissure + if abs(nvals3[ni]) > FISTS + noise1dep * FISEXP then + + -- noise4dep zero at surface, positive beneath + noise4dep = noise4abs - SASCOT + + if not comet + or (comet and (noise1dep > random() + ICET + or noise4dep > random() + ICET)) then + + -- asteroid or asteroid materials in comet + if noise1dep >= STOT or noise4dep >= STOT then + + -- stone/ores + if random(ORECHA) == 1 then + + if nvals5[ni] > 0.6 then + data[vi] = c_goldore + elseif nvals5[ni] < -0.6 then + data[vi] = c_diamondore + elseif nvals5[ni] > 0.2 then + data[vi] = c_meseore + elseif nvals5[ni] < -0.2 then + data[vi] = c_copperore + else + data[vi] = c_ironore + end + else + data[vi] = c_stone + end + + elseif noise1dep >= COBT or noise4dep >= COBT then + data[vi] = c_cobble + elseif noise1dep >= GRAT or noise4dep >= GRAT then + data[vi] = c_gravel + else + data[vi] = c_dust + end + else -- comet materials + if noise1dep >= ICET or noise4dep >= ICET then + data[vi] = c_waterice + else + data[vi] = c_snowblock + end + end + + elseif comet then -- fissures, if comet then add atmosphere + data[vi] = c_atmos + end + + elseif comet then -- if comet atmosphere then + data[vi] = c_atmos + end + + ni = ni + 1 + vi = vi + 1 + end + end + end + + local cr, cx, cz, comet, surfy, vi, nr, nodeid + + -- craters + for ci = 1, CPCHU do -- iterate + + -- exponential radius + cr = CRMIN + floor(random() ^ 2 * CRRAN) + cx = random(minp.x + cr, maxp.x - cr) -- centre x + cz = random(minp.z + cr, maxp.z - cr) -- centre z + comet = false + surfy = false + + for y = y1, y0 + cr, -1 do + + vi = area:index(cx, y, cz) -- LVM index for node + nodeid = data[vi] + + if nodeid == c_dust or nodeid == c_gravel or nodeid == c_cobble then + surfy = y + break + + elseif nodename == c_snowblock or nodename == c_waterice then + comet = true + surfy = y + break + end + end + + -- if surface found and 8 node space above impact node then + if surfy and y1 - surfy > 8 then + + for x = cx - cr, cx + cr do -- for each plane do + for z = cz - cr, cz + cr do -- for each column do + for y = surfy - cr, surfy + cr do -- for each node do + + -- LVM index for node + vi = area:index(x, y, z) + nr = ((x - cx) ^ 2 + (y - surfy) ^ 2 + (z - cz) ^ 2) ^ 0.5 + + if nr <= cr - 2 then + + if comet then + data[vi] = c_atmos + else + data[vi] = c_air + end + + elseif nr <= cr - 1 then + + nodeid = data[vi] + + if nodeid == c_gravel or nodeid == c_cobble + or nodeid == c_stone or nodeid == c_diamondore + or nodeid == c_goldore or nodeid == c_meseore + or nodeid == c_copperore or nodeid == c_ironore then + data[vi] = c_dust + end + + elseif nr <= cr then + + nodeid = data[vi] + + if nodeid == c_cobble or nodeid == c_stone then + data[vi] = c_obsidian -- obsidian buried under dust + end + end + end + end + end + end + end + + vm:set_data(data) + vm:set_lighting({day = 0, night = 0}) + vm:calc_lighting() + vm:write_to_map(data) + + data = nil ; collectgarbage("collect") -- clear mem +--[[ + local chugent = math.ceil((os.clock() - t1) * 1000) + print ("[asteroid] time "..chugent.." ms / used mem:" + .. collectgarbage("count") / 1024 .. " MiB") +]]-- + end +end diff --git a/mods/other_worlds/crafting.lua b/mods/other_worlds/crafting.lua new file mode 100644 index 00000000..e8cf1720 --- /dev/null +++ b/mods/other_worlds/crafting.lua @@ -0,0 +1,47 @@ + +-- register craft recipes when enabled + +if otherworlds.settings.crafting.enable then + + core.register_craft({ + output = "asteroid:cobble", + recipe = {{"asteroid:stone"}} + }) + + core.register_craft({ + output = "asteroid:gravel", + recipe = {{"asteroid:cobble"}} + }) + + core.register_craft({ + output = "asteroid:dust", + recipe = {{"asteroid:gravel"}} + }) + + core.register_craft({ + type = "cooking", + output = "asteroid:stone", + recipe = "asteroid:cobble" + }) + + core.register_craft({ + output = "asteroid:redcobble", + recipe = {{"asteroid:redstone"}} + }) + + core.register_craft({ + output = "asteroid:redgravel", + recipe = {{"asteroid:redcobble"}} + }) + + core.register_craft({ + output = "asteroid:reddust", + recipe = {{"asteroid:redgravel"}} + }) + + core.register_craft({ + type = "cooking", + output = "asteroid:redstone", + recipe = "asteroid:redcobble" + }) +end diff --git a/mods/other_worlds/init.lua b/mods/other_worlds/init.lua new file mode 100644 index 00000000..ab73027a --- /dev/null +++ b/mods/other_worlds/init.lua @@ -0,0 +1,26 @@ + +-- global, mod path and load mod sections + +otherworlds = {} + +local modpath = core.get_modpath("other_worlds") .. "/" + +dofile(modpath .. "settings.lua") +dofile(modpath .. "nodes.lua") +dofile(modpath .. "crafting.lua") +dofile(modpath .. "skybox.lua") + +-- required helpers for mapgen options below + +dofile(modpath .. "asteroid_layer_helpers.lua") + +if otherworlds.settings.space_asteroids.enable then + dofile(modpath .. "space_asteroids.lua") +end + +if otherworlds.settings.redsky_asteroids.enable then + dofile(modpath .. "redsky_asteroids.lua") +end + + +print("[MOD] Other Worlds loaded") diff --git a/mods/other_worlds/license.txt b/mods/other_worlds/license.txt new file mode 100644 index 00000000..038aa9b8 --- /dev/null +++ b/mods/other_worlds/license.txt @@ -0,0 +1,38 @@ + + +Original asteroids code: +License: MIT (https://opensource.org/licenses/MIT) +By paramat (available from https://github.com/paramat/asteroid) + +Original asteroid_ textures: +License: CC BY-SA 3.0 (https://creativecommons.org/licenses/by/3.0/) +Attribution: paramat + +Crystal models: +License: MIT (https://opensource.org/licenses/MIT) +By Electra Gizen + +Skybox texture: +License: CC BY-SA 3.0 (https://creativecommons.org/licenses/by/3.0/) +Attribution: Ulukai (available from http://opengameart.org/content/ulukais-space-skyboxes) + +--- + +Recoloured textures from various mods: +Grass textures based on default mod in minetest_game (WTFPL). +Redgrass texture based on junglegrass texture in default mod in minetest_game (assumed to be CC BY-SA 3.0). +Red versions of asteroid textures (CC BY-SA 3.0). + +--- + +Textures created for this mod: +CC BY-SA 4.0 (https://creativecommons.org/licenses/by-sa/4.0/) +Attribution: Shara RedCat + +All original code and edits to code for this mod: +License: MIT (https://opensource.org/licenses/MIT) +By Shara RedCat, tenplus1 and Mewmon + +--- + +Thanks also to DonBatman for help with the initial idea, and to the players of Red Cat Creative who gave ideas and helped in testing. \ No newline at end of file diff --git a/mods/other_worlds/mod.conf b/mods/other_worlds/mod.conf new file mode 100644 index 00000000..b1e117f2 --- /dev/null +++ b/mods/other_worlds/mod.conf @@ -0,0 +1,8 @@ +name = other_worlds +description = Adds asteroid layers and height-based skybox switches to create space environments. +depends = default +optional_depends = pova, nether +min_minetest_version = 5.0 +release = 30955 +author = TenPlus1 +title = Other Worlds diff --git a/mods/other_worlds/models/crystal_shape01.obj b/mods/other_worlds/models/crystal_shape01.obj new file mode 100644 index 00000000..06140046 --- /dev/null +++ b/mods/other_worlds/models/crystal_shape01.obj @@ -0,0 +1,228 @@ +# Blender v2.77 (sub 0) OBJ File: '' +# www.blender.org +mtllib crystal_shape01.mtl +o Crystal_Taya1.001 +v 0.019427 0.022291 -0.013603 +v 0.012823 0.031159 -0.009449 +v 0.013985 0.030045 -0.009115 +v 0.008443 0.038346 -0.005912 +v 0.000000 0.050687 0.000000 +v -0.015208 0.018939 -0.021719 +v 0.020909 0.009672 -0.020909 +v 0.021719 0.018939 -0.015208 +v -0.016684 -0.038612 -0.014735 +v -0.017468 -0.029657 -0.017468 +v -0.015357 -0.037747 -0.016760 +v -0.015748 -0.040752 -0.016497 +v -0.015913 -0.047431 -0.015913 +v -0.017109 -0.033753 0.015516 +v -0.018018 -0.023370 0.018018 +v -0.018512 -0.017718 0.018512 +v -0.016177 -0.044411 0.016177 +v -0.015748 -0.049313 0.015748 +v -0.015748 -0.049313 -0.015748 +v -0.019675 -0.004427 0.016381 +v -0.020909 0.009672 -0.020909 +v -0.020741 0.007752 0.020741 +v -0.021719 0.018939 0.015208 +v -0.020909 0.009672 0.020909 +v -0.018512 -0.003302 0.019773 +v 0.020560 0.005685 0.020560 +v 0.015208 0.018939 0.021719 +v 0.017174 -0.008451 0.019323 +v 0.018163 -0.021714 0.018163 +v -0.016177 -0.030600 0.017385 +v 0.015748 -0.049313 0.015748 +v 0.020909 0.009672 0.020909 +v 0.019672 -0.004460 0.017730 +v 0.020488 0.004867 -0.020488 +v 0.019075 -0.011285 -0.016746 +v 0.016094 -0.045364 -0.016094 +v 0.015748 -0.049313 -0.015748 +v 0.017187 -0.010187 -0.019171 +vt 0.0000 0.0000 +vt -0.0148 0.1172 +vt -0.0221 0.1025 +vt 0.0000 0.0000 +vt -0.0100 0.0907 +vt -0.0085 -0.0141 +vt -0.0000 0.0000 +vt -0.0729 -0.1433 +vt 0.1875 -0.3687 +vt -0.1099 -0.2268 +vt -0.1696 -0.4763 +vt -0.1677 -0.3298 +vt -0.1875 -0.3687 +vt 0.0165 -0.0925 +vt -0.0000 0.0000 +vt -0.0076 -0.0836 +vt -0.0199 -0.0214 +vt -0.0000 0.0000 +vt -0.0242 0.0087 +vt -0.0140 -0.0882 +vt -0.0200 -0.0214 +vt -0.3048 0.1074 +vt -0.0023 0.1562 +vt -0.3322 0.1973 +vt 0.0227 0.2604 +vt 0.0276 0.3172 +vt 0.0043 0.0492 +vt -0.3166 0.0189 +vt 0.0000 0.0000 +vt -0.3150 0.0000 +vt 0.0063 0.4506 +vt -0.3666 0.5921 +vt 0.0499 0.5728 +vt -0.0054 0.6851 +vt 0.0516 0.5921 +vt -0.0003 -0.1132 +vt -0.0000 0.0000 +vt -0.0360 -0.1247 +vt -0.0119 -0.1442 +vt -0.0000 0.0000 +vt -0.0359 -0.0113 +vt -0.3426 0.4619 +vt 0.0481 0.5521 +vt -0.3649 0.5728 +vt -0.0054 0.6851 +vt -0.3666 0.5921 +vt 0.0143 0.4102 +vt -0.3426 0.3172 +vt 0.0241 0.2770 +vt -0.3377 0.2604 +vt -0.3192 0.1878 +vt 0.0000 0.0000 +vt -0.3192 0.0492 +vt -0.3150 0.0000 +vt 0.0516 0.5921 +vt 0.0093 -0.0743 +vt -0.0000 0.0000 +vt -0.0102 -0.1067 +vt -0.0104 -0.1382 +vt -0.0000 0.0000 +vt -0.0208 -0.0316 +vt 0.0000 0.0000 +vt 0.0149 0.1726 +vt -0.0147 0.1327 +vt 0.0000 0.0000 +vt -0.0166 0.1044 +vt -0.0280 -0.0411 +vt -0.3348 0.4502 +vt 0.0474 0.5439 +vt -0.3631 0.5521 +vt -0.0054 0.6851 +vt -0.3666 0.5921 +vt 0.0100 0.3817 +vt -0.3391 0.2770 +vt 0.0035 0.0396 +vt -0.3150 0.0000 +vt 0.0000 0.0000 +vt 0.0516 0.5921 +vt 0.0000 0.0000 +vt 0.0168 0.3529 +vt -0.0139 0.3419 +vt 0.0000 0.0000 +vt -0.0126 0.1542 +vt -0.0306 -0.0113 +vt 0.0000 0.0859 +vt -0.0039 0.1161 +vt -0.3184 0.0396 +vt 0.0172 0.1973 +vt -0.3293 0.3928 +vt 0.0516 0.5921 +vt -0.3624 0.5439 +vt -0.0054 0.6851 +vt -0.3666 0.5921 +vt 0.0016 0.0189 +vt -0.3150 0.0000 +vt 0.0000 0.0000 +vt -0.1696 -0.4763 +vt 0.1875 -0.3687 +vt -0.1875 -0.3687 +vt -0.1696 -0.4763 +vt 0.1875 -0.3687 +vt -0.1875 -0.3687 +vt 0.0729 -0.1433 +vt -0.1875 -0.3687 +vt 0.1141 -0.2397 +vt -0.1696 -0.4763 +vt 0.1677 -0.3298 +vt 0.1875 -0.3687 +vt 0.1575 0.1575 +vt -0.1575 0.1575 +vt 0.1575 -0.1575 +vt -0.1575 -0.1575 +usemtl wire_191191191.001 +s 1 +f 1/1 2/2 3/3 +f 2/4 4/5 3/6 +f 5/7 4/8 6/9 +f 6/9 4/8 2/10 +f 6/9 2/10 7/11 +f 7/11 2/10 1/12 +f 7/11 1/12 8/13 +f 9/14 10/15 11/16 +f 12/17 9/18 11/19 +f 13/20 9/18 12/21 +f 9/22 14/23 10/24 +f 10/24 14/23 15/25 +f 10/24 15/25 16/26 +f 14/23 9/22 17/27 +f 17/27 9/22 13/28 +f 17/27 13/28 18/29 +f 18/29 13/28 19/30 +f 16/26 20/31 10/24 +f 10/24 20/31 21/32 +f 21/32 20/31 22/33 +f 21/32 22/33 23/34 +f 23/34 22/33 24/35 +f 25/36 22/37 20/38 +f 16/39 25/40 20/41 +f 25/42 26/43 22/44 +f 22/44 26/43 27/45 +f 22/44 27/45 24/46 +f 26/43 25/42 28/47 +f 28/47 25/42 16/48 +f 28/47 16/48 29/49 +f 29/49 16/48 15/50 +f 29/49 15/50 30/51 +f 29/49 30/51 31/52 +f 31/52 30/51 17/53 +f 31/52 17/53 18/54 +f 26/43 32/55 27/45 +f 30/56 15/57 14/58 +f 17/59 30/60 14/61 +f 29/62 33/63 28/64 +f 33/65 26/66 28/67 +f 33/68 34/69 26/70 +f 26/70 34/69 8/71 +f 26/70 8/71 32/72 +f 34/69 33/68 35/73 +f 35/73 33/68 29/74 +f 35/73 29/74 36/75 +f 36/75 29/74 31/76 +f 36/75 31/76 37/77 +f 34/69 7/78 8/71 +f 36/79 38/80 35/81 +f 38/82 34/83 35/84 +f 12/85 11/86 36/87 +f 36/87 11/86 10/88 +f 36/87 10/88 38/89 +f 38/89 10/88 21/90 +f 38/89 21/90 34/91 +f 34/91 21/90 6/92 +f 34/91 6/92 7/93 +f 12/85 36/87 13/94 +f 13/94 36/87 37/95 +f 13/94 37/95 19/96 +f 21/97 23/98 6/99 +f 6/99 23/98 5/7 +f 24/100 27/101 23/102 +f 23/102 27/101 5/7 +f 4/103 27/104 3/105 +f 3/105 27/104 32/106 +f 3/105 32/106 1/107 +f 1/107 32/106 8/108 +f 4/103 5/7 27/104 +f 31/109 18/110 37/111 +f 37/111 18/110 19/112 diff --git a/mods/other_worlds/models/crystal_shape02.obj b/mods/other_worlds/models/crystal_shape02.obj new file mode 100644 index 00000000..0b92b901 --- /dev/null +++ b/mods/other_worlds/models/crystal_shape02.obj @@ -0,0 +1,198 @@ +# Blender v2.77 (sub 0) OBJ File: '' +# www.blender.org +mtllib crystal_shape02.mtl +o Crystal_Taya2.000 +v 0.006739 0.025244 0.012075 +v 0.001956 0.043504 0.004196 +v 0.004129 0.024144 0.013098 +v 0.011672 0.002214 0.025031 +v 0.000000 0.051819 0.000000 +v 0.026389 -0.000477 -0.012306 +v 0.023148 -0.023541 0.023148 +v 0.012306 -0.000477 0.026389 +v 0.023266 -0.013100 -0.018731 +v 0.024664 -0.012754 -0.016476 +v 0.023359 -0.022037 -0.022441 +v -0.006315 0.024980 -0.013543 +v -0.008197 0.010863 -0.020143 +v 0.023148 -0.023541 -0.023148 +v -0.011933 0.001106 -0.025590 +v -0.012306 -0.000477 -0.026389 +v -0.010407 0.010810 -0.018614 +v -0.018415 0.015325 0.008587 +v -0.009799 0.031187 0.003172 +v -0.001187 0.049467 0.000554 +v -0.023148 -0.023541 -0.023148 +v -0.026389 -0.000477 0.012306 +v -0.009284 0.030199 0.005679 +v -0.023148 -0.023541 0.023148 +v -0.019685 -0.048181 -0.019685 +v 0.019685 -0.048181 -0.019685 +v 0.019685 -0.048181 0.019685 +v -0.019685 -0.048181 0.019685 +vt 0.0323 -0.2020 +vt -0.0000 0.0000 +vt 0.0048 -0.2141 +vt 0.0306 -0.2671 +vt -0.0000 0.0000 +vt -0.0273 -0.0128 +vt 0.0000 0.0000 +vt -0.0327 -0.0894 +vt 0.2059 -0.5620 +vt -0.0904 -0.2856 +vt -0.1383 -0.8099 +vt -0.1953 -0.5331 +vt -0.2059 -0.5620 +vt 0.0710 -0.1265 +vt -0.0000 0.0000 +vt 0.0445 -0.1230 +vt 0.0304 -0.0919 +vt -0.0000 0.0000 +vt -0.0265 0.0036 +vt -0.2059 -0.5620 +vt 0.1057 -0.2884 +vt -0.1546 -0.6977 +vt 0.1459 -0.4402 +vt -0.1383 -0.8099 +vt 0.1997 -0.5450 +vt 0.2059 -0.5620 +vt -0.1428 -0.7937 +vt 0.0000 0.0000 +vt 0.0280 0.1172 +vt 0.0012 0.1178 +vt 0.0000 0.0000 +vt -0.0042 0.1559 +vt -0.0269 0.0006 +vt -0.1393 -0.4407 +vt 0.1437 -0.3922 +vt -0.1057 -0.2884 +vt 0.0633 -0.2217 +vt 0.0093 -0.0253 +vt -0.1383 -0.8099 +vt -0.1997 -0.5450 +vt -0.2059 -0.5620 +vt 0.2059 -0.5620 +vt 0.0000 0.0000 +vt 0.0137 0.1764 +vt -0.0111 0.1881 +vt 0.0000 0.0000 +vt -0.0163 0.2146 +vt -0.0251 0.0110 +vt 0.0327 -0.0894 +vt -0.0678 -0.2324 +vt 0.0836 -0.2974 +vt -0.1437 -0.3922 +vt -0.1383 -0.8099 +vt -0.2059 -0.5620 +vt -0.0093 -0.0253 +vt 0.2059 -0.5620 +vt 0.1953 -0.5331 +vt -0.0738 0.4817 +vt -0.4283 0.2488 +vt 0.0346 0.2488 +vt 0.0000 0.0000 +vt -0.3937 0.0000 +vt -0.0738 0.4817 +vt -0.4283 0.2488 +vt -0.0321 0.3577 +vt 0.0276 0.2640 +vt 0.0346 0.2488 +vt 0.0000 0.0000 +vt -0.3937 0.0000 +vt -0.0738 0.4817 +vt -0.4283 0.2488 +vt 0.0346 0.2488 +vt 0.0000 0.0000 +vt -0.3937 0.0000 +vt -0.0738 0.4817 +vt -0.4283 0.2488 +vt 0.0346 0.2488 +vt 0.0000 0.0000 +vt -0.3937 0.0000 +vt 0.1969 0.1969 +vt -0.1969 0.1969 +vt 0.1969 -0.1969 +vt -0.1969 -0.1969 +vn 0.1681 0.4273 0.8883 +vn 0.1213 0.5063 0.8538 +vn 0.8744 0.3663 0.3183 +vn 0.8744 0.3663 0.3182 +vn 0.8745 0.3664 0.3178 +vn 0.8439 0.0624 -0.5328 +vn 0.8105 0.2318 -0.5380 +vn 0.3182 0.3663 -0.8744 +vn 0.3183 0.3663 -0.8744 +vn 0.3181 0.3663 -0.8744 +vn -0.4802 0.5605 -0.6747 +vn -0.5239 0.4171 -0.7427 +vn -0.8744 0.3663 -0.3182 +vn -0.8744 0.3663 -0.3183 +vn -0.8744 0.3663 -0.3181 +vn -0.7587 0.5377 0.3678 +vn -0.8295 0.4401 0.3438 +vn -0.3182 0.3663 0.8744 +vn -0.3183 0.3663 0.8744 +vn -0.3181 0.3663 0.8744 +vn -0.3180 0.3664 0.8744 +vn -0.3181 0.3664 0.8744 +vn 0.0000 -0.1392 -0.9903 +vn 0.9903 -0.1391 0.0000 +vn 0.9903 -0.1392 0.0000 +vn 0.9903 -0.1390 -0.0000 +vn 0.0000 -0.1392 0.9903 +vn -0.9903 -0.1392 -0.0000 +vn 0.0000 -1.0000 -0.0000 +usemtl wire_191191191.000 +s 1 +f 1/1/1 2/2/1 3/3/1 +f 4/4/2 1/5/2 3/6/2 +f 5/7/3 2/8/3 6/9/4 +f 6/9/4 2/8/3 1/10/4 +f 6/9/4 1/10/4 7/11/4 +f 7/11/4 1/10/4 4/12/4 +f 7/11/4 4/12/4 8/13/5 +f 9/14/6 6/15/6 10/16/6 +f 11/17/7 9/18/7 10/19/7 +f 5/7/8 6/20/8 12/21/8 +f 12/21/8 6/20/8 9/22/8 +f 12/21/8 9/22/8 13/23/8 +f 13/23/8 9/22/8 14/24/9 +f 13/23/8 14/24/9 15/25/8 +f 15/25/8 14/24/9 16/26/8 +f 9/22/8 11/27/10 14/24/9 +f 15/28/11 17/29/11 13/30/11 +f 17/31/12 12/32/12 13/33/12 +f 17/34/13 18/35/13 12/36/14 +f 12/36/14 18/35/13 19/37/14 +f 12/36/14 19/37/14 20/38/13 +f 18/35/13 17/34/13 21/39/13 +f 21/39/13 17/34/13 15/40/13 +f 21/39/13 15/40/13 16/41/15 +f 21/39/13 22/42/13 18/35/13 +f 20/38/13 5/7/13 12/36/14 +f 18/43/16 23/44/16 19/45/16 +f 23/46/17 20/47/17 19/48/17 +f 2/49/18 23/50/19 3/51/19 +f 3/51/19 23/50/19 18/52/18 +f 3/51/19 18/52/18 24/53/18 +f 24/53/18 18/52/18 22/54/20 +f 5/7/21 20/55/22 2/49/18 +f 2/49/18 20/55/22 23/50/19 +f 8/56/18 4/57/18 24/53/18 +f 24/53/18 4/57/18 3/51/19 +f 16/58/23 14/59/23 21/60/23 +f 21/60/23 14/59/23 25/61/23 +f 25/61/23 14/59/23 26/62/23 +f 6/63/24 7/64/25 10/65/25 +f 10/65/25 7/64/25 11/66/26 +f 11/66/26 7/64/25 14/67/24 +f 14/67/24 7/64/25 26/68/25 +f 26/68/25 7/64/25 27/69/25 +f 8/70/27 24/71/27 7/72/27 +f 7/72/27 24/71/27 27/73/27 +f 27/73/27 24/71/27 28/74/27 +f 22/75/28 21/76/28 24/77/28 +f 24/77/28 21/76/28 28/78/28 +f 28/78/28 21/76/28 25/79/28 +f 27/80/29 28/81/29 26/82/29 +f 26/82/29 28/81/29 25/83/29 diff --git a/mods/other_worlds/nodes.lua b/mods/other_worlds/nodes.lua new file mode 100644 index 00000000..b4820c31 --- /dev/null +++ b/mods/other_worlds/nodes.lua @@ -0,0 +1,311 @@ + +-- Asteroid nodes + +core.register_node(":asteroid:stone", { + description = "Asteroid Stone", + tiles = {"default_stone.png"}, + is_ground_content = false, + drop = 'asteroid:cobble', + groups = {cracky = 3, stone = 1, not_in_creative_inventory = 1}, + sounds = default.node_sound_stone_defaults() +}) + +core.register_node(":asteroid:redstone", { + description = "Asteroid Stone", + tiles = {"asteroid_redstone.png"}, + is_ground_content = false, + drop = 'asteroid:redcobble', + groups = {cracky = 3, stone = 1}, + sounds = default.node_sound_stone_defaults() +}) + +core.register_node(":asteroid:cobble", { + description = "Asteroid Cobble", + tiles = {"asteroid_cobble.png"}, + is_ground_content = false, + groups = {cracky = 3, stone = 2}, + sounds = default.node_sound_stone_defaults() +}) + +core.register_node(":asteroid:redcobble", { + description = "Asteroid Cobble", + tiles = {"asteroid_redcobble.png"}, + is_ground_content = false, + groups = {cracky = 3, stone = 2}, + sounds = default.node_sound_stone_defaults() +}) + +core.register_node(":asteroid:gravel", { + description = "Asteroid Gravel", + tiles = {"asteroid_gravel.png"}, + is_ground_content = false, + groups = {crumbly = 2}, + sounds = default.node_sound_dirt_defaults({ + footstep = {name = "default_gravel_footstep", gain = 0.2} + }) +}) + +core.register_node(":asteroid:redgravel", { + description = "Asteroid Gravel", + tiles = {"asteroid_redgravel.png"}, + is_ground_content = false, + groups = {crumbly = 2}, + sounds = default.node_sound_dirt_defaults({ + footstep = {name = "default_gravel_footstep", gain = 0.2} + }) +}) + +core.register_node(":asteroid:dust", { + description = "Asteroid Dust", + tiles = {"asteroid_dust.png"}, + is_ground_content = false, + groups = {crumbly = 3}, + sounds = default.node_sound_dirt_defaults({ + footstep = {name = "default_gravel_footstep", gain = 0.1} + }) +}) + +core.register_node(":asteroid:reddust", { + description = "Asteroid Dust", + tiles = {"asteroid_reddust.png"}, + is_ground_content = false, + groups = {crumbly = 3}, + sounds = default.node_sound_dirt_defaults({ + footstep = {name = "default_gravel_footstep", gain = 0.1} + }) +}) + +core.register_node(":asteroid:ironore", { + description = "Asteroid Iron Ore", + tiles = {"asteroid_redstone.png^default_mineral_iron.png"}, + is_ground_content = false, + groups = {cracky = 2}, + drop = "default:iron_lump", + sounds = default.node_sound_stone_defaults() +}) + +core.register_node(":asteroid:copperore", { + description = "Asteroid Copper Ore", + tiles = {"asteroid_redstone.png^default_mineral_copper.png"}, + is_ground_content = false, + groups = {cracky = 2}, + drop = "default:copper_lump", + sounds = default.node_sound_stone_defaults() +}) + +core.register_node(":asteroid:goldore", { + description = "Asteroid Gold Ore", + tiles = {"asteroid_redstone.png^default_mineral_gold.png"}, + is_ground_content = false, + groups = {cracky = 2}, + drop = "default:gold_lump", + sounds = default.node_sound_stone_defaults() +}) + +core.register_node(":asteroid:diamondore", { + description = "Asteroid Diamond Ore", + tiles = {"asteroid_redstone.png^default_mineral_diamond.png"}, + is_ground_content = false, + groups = {cracky = 1}, + drop = "default:diamond", + sounds = default.node_sound_stone_defaults() +}) + +core.register_node(":asteroid:meseore", { + description = "Asteroid Mese Ore", + tiles = {"asteroid_redstone.png^default_mineral_mese.png"}, + is_ground_content = false, + groups = {cracky = 1}, + drop = "default:mese_crystal", + sounds = default.node_sound_stone_defaults() +}) + +core.register_node(":asteroid:atmos", { + description = "Comet Atmosphere", + drawtype = "glasslike", + tiles = {"asteroid_atmos.png"}, + paramtype = "light", + sunlight_propagates = true, + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + is_ground_content = false, + use_texture_alpha = "blend", + post_effect_color = {a = 31, r = 241, g = 248, b = 255}, + groups = {not_in_creative_inventory = 1}, + drop = {} +}) + +-- Redsky plant nodes + +core.register_node(":mars:redgrass", { + description = "Red Grass", + drawtype = "plantlike", + waving = 1, + visual_scale = 1.3, + tiles = {"mars_redgrass.png"}, + inventory_image = "mars_redgrass.png", + wield_image = "mars_redgrass.png", + paramtype = "light", + sunlight_propagates = true, + walkable = false, + buildable_to = true, + groups = {snappy = 3, flora = 1, attached_node = 1}, + sounds = default.node_sound_leaves_defaults(), + selection_box = { + type = "fixed", + fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5} + } +}) + +core.register_node(":mars:redweed", { + description = "Red Weed", + drawtype = "plantlike", + waving = 1, + visual_scale = 1.3, + tiles = {"mars_redweed.png"}, + inventory_image = "mars_redweed.png", + wield_image = "mars_redweed.png", + paramtype = "light", + sunlight_propagates = true, + walkable = false, + buildable_to = true, + groups = {snappy = 3, flora = 1, attached_node = 1}, + sounds = default.node_sound_leaves_defaults(), + selection_box = { + type = "fixed", + fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5} + } +}) + +core.register_node(":mars:moss", { + description = "Martian Moss", + drawtype = "nodebox", + tiles = {"mars_moss.png"}, + inventory_image = "mars_moss.png", + wield_image = "mars_moss.png", + paramtype = "light", + paramtype2 = "facedir", + use_texture_alpha = "clip", + sunlight_propagates = true, + walkable = false, + node_box = { + type = "fixed", + fixed = {-1/2, -1/2, -1/2, 1/2, -15/32, 1/2}, + }, + selection_box = { + type = "fixed", + fixed = {-1/2, -1/2, -1/2, 1/2, -15/32, 1/2}, + }, + groups = {snappy = 3, flora = 1, attached_node = 1}, + sounds = default.node_sound_leaves_defaults() +}) + +-- mars grass + +core.register_node(":mars:grass_1", { + description = "Martian Grass", + drawtype = "plantlike", + waving = 1, + tiles = {"mars_grass_1.png"}, + inventory_image = "mars_grass_3.png", + wield_image = "mars_grass_3.png", + paramtype = "light", + sunlight_propagates = true, + walkable = false, + buildable_to = true, + groups = {snappy = 3, flora = 1, attached_node = 1}, + sounds = default.node_sound_leaves_defaults(), + selection_box = { + type = "fixed", + fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5} + }, + + on_place = function(itemstack, placer, pointed_thing) + + -- place a random grass node + local stack = ItemStack("mars:grass_" .. math.random(5)) + local ret = core.item_place(stack, placer, pointed_thing) + + return ItemStack("mars:grass_1 " + .. itemstack:get_count() - (1 - ret:get_count())) + end +}) + +for i = 2, 5 do + + core.register_node(":mars:grass_" .. i, { + description = "Martian Grass", + drawtype = "plantlike", + waving = 1, + tiles = {"mars_grass_" .. i .. ".png"}, + inventory_image = "mars_grass_" .. i .. ".png", + wield_image = "mars_grass_" .. i .. ".png", + paramtype = "light", + sunlight_propagates = true, + walkable = false, + buildable_to = true, + drop = "mars:grass_1", + groups = { + snappy = 3, flora = 1, attached_node = 1, + not_in_creative_inventory = 1 + }, + sounds = default.node_sound_leaves_defaults(), + selection_box = { + type = "fixed", + fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5} + } + }) +end + +-- Crystals + +local sbox = { + type = "fixed", + fixed = {-5/16, -8/16, -6/16, 5/16, -1/32, 5/16}} + +local crystal_list = { + {"ghost_crystal", "ghost_crystal.png"}, + {"red_crystal", "red_crystal.png"}, + {"rose_quartz", "rose_quartz.png"}} + +for i = 1, #crystal_list do -- in ipairs(crystal_list) do + + local name = crystal_list[i][1] + local texture = crystal_list[i][2] + + core.register_node(":crystals:" .. name .. "_1", { + description = "Glowing Crystal", + drawtype = "mesh", + mesh = "crystal_shape01.obj", + tiles = {"crystals_" .. texture}, + wield_scale = {x = 7, y = 7, z = 7}, + paramtype = "light", + paramtype2 = "facedir", + selection_box = sbox, + walkable = false, + light_source = 10, + use_texture_alpha = "blend", + visual_scale = 10, + groups = {snappy = 2, choppy = 2, oddly_breakable_by_hand = 3}, + sounds = default.node_sound_glass_defaults() + }) + + core.register_node(":crystals:" .. name .. "_2", { + description = "Glowing Crystal", + drawtype = "mesh", + mesh = "crystal_shape02.obj", + tiles = {"crystals_" .. texture}, + wield_scale = {x = 7, y = 7, z = 7}, + paramtype = "light", + paramtype2 = "facedir", + selection_box = sbox, + walkable = false, + light_source = 10, + use_texture_alpha = "blend", + visual_scale = 10, + groups = {snappy = 2, choppy = 2, oddly_breakable_by_hand = 3}, + sounds = default.node_sound_glass_defaults() + }) +end diff --git a/mods/other_worlds/redsky_asteroids.lua b/mods/other_worlds/redsky_asteroids.lua new file mode 100644 index 00000000..9da627c1 --- /dev/null +++ b/mods/other_worlds/redsky_asteroids.lua @@ -0,0 +1,72 @@ + +-- Approximate realm limits + +local YMIN = otherworlds.settings.redsky_asteroids.YMIN or 6000 +local YMAX = otherworlds.settings.redsky_asteroids.YMAX or 7000 + +-- Register on_generated function for this layer + +core.register_on_generated( + otherworlds.asteroids.create_on_generated(YMIN, YMAX, { + + c_air = core.get_content_id("air"), + c_obsidian = core.get_content_id("default:obsidian"), + c_stone = core.get_content_id("asteroid:redstone"), + c_cobble = core.get_content_id("air"), + c_gravel = core.get_content_id("asteroid:redgravel"), + c_dust = core.get_content_id("asteroid:reddust"), + c_ironore = core.get_content_id("asteroid:ironore"), + c_copperore = core.get_content_id("asteroid:copperore"), + c_goldore = core.get_content_id("asteroid:goldore"), + c_diamondore = core.get_content_id("asteroid:diamondore"), + c_meseore = core.get_content_id("asteroid:meseore"), + c_waterice = core.get_content_id("default:ice"), + c_atmos = core.get_content_id("asteroid:atmos"), + c_snowblock = core.get_content_id("default:snowblock") +})) + +-- Deco code for grass and crystal + +local TOPDECO = 500 -- how often deco appears on top of asteroid cobble + +local grass = { + "mars:grass_1", "mars:grass_2", "mars:grass_3", "mars:grass_4", "mars:grass_5"} + +local flower = {"mars:moss", "mars:redweed", "mars:redgrass"} + +local crystal = { + "crystals:ghost_crystal_1", "crystals:ghost_crystal_2", + "crystals:red_crystal_1", "crystals:red_crystal_2", + "crystals:rose_quartz_1", "crystals:rose_quartz_2"} + +local random = math.random + +-- Add surface decoration + +core.register_on_generated(function(minp, maxp) + + if minp.y < YMIN or maxp.y > YMAX then return end + + local bpos, ran + local coal = core.find_nodes_in_area_under_air(minp, maxp, {"asteroid:redgravel"}) + + for n = 1, #coal do + + bpos = {x = coal[n].x, y = coal[n].y + 1, z = coal[n].z} + + ran = random(TOPDECO) + + if ran < 100 then -- grass + + core.swap_node(bpos, {name = grass[random(#grass)]}) + + elseif ran >= 180 and ran <= 200 then -- other plants + + core.swap_node(bpos, {name = flower[random(#flower)]}) + + elseif ran == TOPDECO then -- crystals + + core.swap_node(bpos, {name = crystal[random(#crystal)]}) + end + end +end) diff --git a/mods/other_worlds/screenshot.png b/mods/other_worlds/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..829753680ce7efbabd123655663906a92d704a16 GIT binary patch literal 91225 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 Ag#Z8m literal 0 HcmV?d00001 diff --git a/mods/other_worlds/settings.lua b/mods/other_worlds/settings.lua new file mode 100644 index 00000000..bc35f8bc --- /dev/null +++ b/mods/other_worlds/settings.lua @@ -0,0 +1,45 @@ + +otherworlds.settings = {} + +-- general + +otherworlds.settings.crafting = { + -- set to false to remove crafting recipes + enable = core.settings:get_bool("otherworlds.crafting", true) +} + +-- space_asteroids + +otherworlds.settings.space_asteroids = { + -- set to false to prevent space mapgen + enable = core.settings:get_bool("otherworlds.space", true), + -- minimum height of space layer + YMIN = tonumber(core.settings:get("otherworlds.space.ymin") or 20000), + -- maximum height for space layer + YMAX = tonumber(core.settings:get("otherworlds.space.ymax") or 25000) +} + +-- redsky_asteroids + +otherworlds.settings.redsky_asteroids = { + -- set to false to prevent redsky mapgen + enable = core.settings:get_bool("otherworlds.redsky", true), + -- minimum height of redsky layer + YMIN = tonumber(core.settings:get("otherworlds.redsky.ymin") or 25000), + -- maximum height for redsky layer + YMAX = tonumber(core.settings:get("otherworlds.redsky.ymax") or 30000) +} + +-- gravity + +otherworlds.settings.gravity = { + -- set to true to enable gravity + enable = core.settings:get_bool("otherworlds.gravity", false) +} + +-- increase or decrease change of ores appearing in asteroids + +otherworlds.settings.ore_chance = { + -- default ore chance is multiplied by following value + value = tonumber(core.settings:get("otherworlds.ore_chance") or 27) +} diff --git a/mods/other_worlds/settingtypes.txt b/mods/other_worlds/settingtypes.txt new file mode 100644 index 00000000..2766a90e --- /dev/null +++ b/mods/other_worlds/settingtypes.txt @@ -0,0 +1,13 @@ +otherworlds.crafting (Enable crafting recipes) bool true + +otherworlds.space (Enable Space asteroids) bool true +otherworlds.space.ymin (Space asteroid min height) int 20000 +otherworlds.space.ymax (Space asteroid max height) int 25000 + +otherworlds.redsky (Enable Redsky asteroids) bool true +otherworlds.redsky.ymin (Redsky asteroid min height) int 25000 +otherworlds.redsky.ymax (Redsky asteroid max height) int 31000 + +otherworlds.gravity (Enable gravity) bool false + +otherworlds.ore_chance (Chance of finding ores) int 27 diff --git a/mods/other_worlds/skybox.lua b/mods/other_worlds/skybox.lua new file mode 100644 index 00000000..7778d941 --- /dev/null +++ b/mods/other_worlds/skybox.lua @@ -0,0 +1,220 @@ + +-- Heights for skyboxes + +local underground_low = -31000 +local underground_high = -50 +local space_low = 5000 +local space_high = 5999 +local redsky_low = 6000 +local redsky_high = 6999 +local nether_low = -32000 +local nether_high = -31000 + +-- Nether check + +local mod_nether = core.get_modpath("nether") + +if mod_nether then + + nether_low = nether.DEPTH_FLOOR or -32000 + nether_high = nether.DEPTH_CEILING or -31000 + underground_low = nether_high + + if core.get_modpath("climate_api") then + mod_nether = nil -- remove nether skybox for climate_api version + end +end + +-- Holds name of skybox showing for each player + +local player_list = {} + +-- Outerspace skybox + +local spaceskybox = { + "sky_pos_z.png", + "sky_neg_z.png^[transformR180", + "sky_neg_y.png^[transformR270", + "sky_pos_y.png^[transformR270", + "sky_pos_x.png^[transformR270", + "sky_neg_x.png^[transformR90"} + +-- Redsky skybox + +local redskybox = { + "sky_pos_z.png^[colorize:#99000050", + "sky_neg_z.png^[transformR180^[colorize:#99000050", + "sky_neg_y.png^[transformR270^[colorize:#99000050", + "sky_pos_y.png^[transformR270^[colorize:#99000050", + "sky_pos_x.png^[transformR270^[colorize:#99000050", + "sky_neg_x.png^[transformR90^[colorize:#99000050"} + +-- Darkest space skybox + +local darkskybox = { + "sky_pos_z.png^[colorize:#00005070", + "sky_neg_z.png^[transformR180^[colorize:#00005070", + "sky_neg_y.png^[transformR270^[colorize:#00005070", + "sky_pos_y.png^[transformR270^[colorize:#00005070", + "sky_pos_x.png^[transformR270^[colorize:#00005070", + "sky_neg_x.png^[transformR90^[colorize:#00005070"} + +-- check for active pova mod + +local mod_pova = core.get_modpath("pova") + +-- gravity helper function + +local function set_gravity(player, grav) + + if mod_pova then + pova.add_override(player:get_player_name(), "default", {gravity = grav}) + else + player:set_physics_override({gravity = grav}) + end +end + +-- globalstep function runs every 2 seconds to show appropriate skybox + +local timer, timer2 = 0, 0 + +core.register_globalstep(function(dtime) + + timer = timer + dtime ; if timer < 2 then return end ; timer = 0 + timer2 = timer2 + 2 + + local name, pos, current + + for _, player in pairs(core.get_connected_players()) do + + name = player:get_player_name() + pos = player:get_pos() + current = player_list[name] or "" + + -- this just adds nether background outwith climate_api mod + + if mod_nether and pos.y >= nether_low and pos.y <= nether_high + and (current ~= "nether" or (current == "nether" and timer2 > 6)) then + + timer2 = 0 -- reset nether layer timer (every 10 seconds) + + local base_col = current ~= "nether" and "#1D0504" + local ps, cn = core.find_nodes_in_area( + {x = pos.x - 6, y = pos.y - 6, z = pos.z - 6}, + {x = pos.x + 6, y = pos.y + 6, z = pos.z + 6}, + {"nether:rack", "nether:rack_deep", "nether:geode", "nether:geodelite"}) + + -- easy find nether layer via quick node count + + if (cn["nether:rack"] or 0) > 100 then + base_col = "#1D0504" + elseif (cn["nether:rack_deep"] or 0) > 100 then + base_col = "#070916" + elseif (cn["nether:geode"] or 0) + (cn["nether:geodelite"] or 0)> 100 then + base_col = "#300530" + end + + if base_col then + player:set_sky({type = "plain", base_color = base_col, clouds = false}) + end + + player:set_moon({visible = false}) + player:set_stars({visible = false}) + player:set_sun({visible = false, sunrise_visible = false}) + + player_list[name] = "nether" + + if otherworlds.settings.gravity.enable then + set_gravity(player, 1.05) + end + + -- Underground (above Nether limit) + + elseif pos.y >= underground_low and pos.y <= underground_high + and current ~= "underground" then + + player:set_sky({type = "plain", clouds = false, base_color = "#101010"}) + player:set_moon({visible = false}) + player:set_stars({visible = false}) + player:set_sun({visible = false, sunrise_visible = false}) + + player_list[name] = "underground" + + if otherworlds.settings.gravity.enable then + set_gravity(player, 1.0) + end + + -- Earth + + elseif pos.y > underground_high and pos.y < space_low + and current ~= "earth" then + + player:set_sky({type = "regular", clouds = true}) + player:set_moon({visible = true}) + player:set_stars({visible = true}) + player:set_sun({visible = true, scale = 1.0, sunrise_visible = true}) + + player_list[name] = "earth" + + if otherworlds.settings.gravity.enable then + set_gravity(player, 1.0) + end + + -- Outerspace + + elseif pos.y >= space_low and pos.y <= space_high + and current ~= "space" then + + player:set_sky({type = "skybox", textures = spaceskybox, clouds = false, + base_color = "#000000"}) + player:set_moon({visible = false}) + player:set_stars({visible = false}) + player:set_sun({visible = true, scale = 1.0, sunrise_visible = false}) + + player_list[name] = "space" + + if otherworlds.settings.gravity.enable then + set_gravity(player, 0.4) + end + + -- Redsky + + elseif pos.y >= redsky_low and pos.y <= redsky_high + and current ~= "redsky" then + + player:set_sky({type = "skybox", textures = redskybox, clouds = false, + base_color = "#000000"}) + player:set_moon({visible = false}) + player:set_stars({visible = false}) + player:set_sun({visible = true, scale = 0.5, sunrise_visible = false}) + + player_list[name] = "redsky" + + if otherworlds.settings.gravity.enable then + set_gravity(player, 0.2) + end + + -- Everything else above (the blackness) + + elseif pos.y > redsky_high and current ~= "blackness" then + + player:set_sky({type = "skybox", textures = darkskybox, clouds = false, + base_color = "#000000"}) + player:set_moon({visible = false}) + player:set_stars({visible = true}) + player:set_sun({visible = true, scale = 0.1, sunrise_visible = false}) + + player_list[name] = "blackness" + + if otherworlds.settings.gravity.enable then + set_gravity(player, 0.1) + end + end + end +end) + +-- remove player from list when they leave + +core.register_on_leaveplayer(function(player) + player_list[player:get_player_name()] = nil +end) diff --git a/mods/other_worlds/space_asteroids.lua b/mods/other_worlds/space_asteroids.lua new file mode 100644 index 00000000..0318fb80 --- /dev/null +++ b/mods/other_worlds/space_asteroids.lua @@ -0,0 +1,26 @@ + +-- Approximate realm limits + +local YMIN = otherworlds.settings.space_asteroids.YMIN or 5000 +local YMAX = otherworlds.settings.space_asteroids.YMAX or 6000 + +-- Register on_generated function for this layer + +core.register_on_generated( + otherworlds.asteroids.create_on_generated(YMIN, YMAX, { + + c_air = core.get_content_id("air"), + c_obsidian = core.get_content_id("default:obsidian"), + c_stone = core.get_content_id("asteroid:stone"), + c_cobble = core.get_content_id("asteroid:cobble"), + c_gravel = core.get_content_id("asteroid:gravel"), + c_dust = core.get_content_id("asteroid:dust"), + c_ironore = core.get_content_id("default:stone_with_iron"), + c_copperore = core.get_content_id("default:stone_with_copper"), + c_goldore = core.get_content_id("default:stone_with_gold"), + c_diamondore = core.get_content_id("default:stone_with_diamond"), + c_meseore = core.get_content_id("default:stone_with_mese"), + c_waterice = core.get_content_id("default:ice"), + c_atmos = core.get_content_id("asteroid:atmos"), + c_snowblock = core.get_content_id("default:snowblock") +})) diff --git a/mods/other_worlds/textures/asteroid_atmos.png b/mods/other_worlds/textures/asteroid_atmos.png new file mode 100644 index 0000000000000000000000000000000000000000..7f521b02d25225183c00d6cfa0cf49f5f3681902 GIT binary patch literal 96 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnL3?x0byx0z;m;-!5T>t<7zx;^w2_ToTB*-tg pVQpNr8<4~8>Eal|aXne$36QgZf$;~su@#WT;OXk;vd$@?2>>x57(W02 literal 0 HcmV?d00001 diff --git a/mods/other_worlds/textures/asteroid_cobble.png b/mods/other_worlds/textures/asteroid_cobble.png new file mode 100644 index 0000000000000000000000000000000000000000..567f559ad94273e5d673e210ac9d32e7dd43c3d2 GIT binary patch literal 272 zcmV+r0q_2aP)HY-qeUWer|lT`NM&K{wU?0X~H0l5@6`*5SD}}OoD=goNQ~Yx=u7*Iva2KVq-&VXJg$-`5&UeYxn9 z^_C3Q1a>V(`TQR6q<&9pv@)Rf;wB^EC!ed5(I=@r>S{lE;Isc z?rQFzZ)zzZ)$v*y{>fPT8$wubQ2|)$wltWw)3qO^_N%BHPFfhHg56Y<+wn)tV1`EO vY{#~PSTNd!kg@+4EGA~`g}K+Qf^FFkeCSwn5fpGl00000NkvXXu0mjfT`*>; literal 0 HcmV?d00001 diff --git a/mods/other_worlds/textures/asteroid_gravel.png b/mods/other_worlds/textures/asteroid_gravel.png new file mode 100644 index 0000000000000000000000000000000000000000..5fe791e8056b05b206e3de13eec87db740a50115 GIT binary patch literal 172 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!93?!50ihlx9JOMr-uKN1=&d$z(fq|8km48}J zXV9bouX=d^~w^5%?W zhD^aQ6^3Xl6;=ifn`Cu{*&&9v8N@tt)EGF+5*ry3b3~srys3Gu#c<^2l}QEMGTZfE S+uj6P!{F)a=d#Wzp$PynO*4D| literal 0 HcmV?d00001 diff --git a/mods/other_worlds/textures/asteroid_redcobble.png b/mods/other_worlds/textures/asteroid_redcobble.png new file mode 100644 index 0000000000000000000000000000000000000000..85aa4616aa6dca60c875c85eadaaad9b11d1f7ee GIT binary patch literal 424 zcmV;Z0ayNsP)K5;hYPHx(5)78W@d7djUgI~W)|85unq8a*2uJ{%lB9UVX&9YG!*LLVPPARt2_ zAx0x3MbWsQ!p@8F)>v#GFCG)Rx~tMH8of^Hd!_{ zS~oXaI5=E6Ib1qAT{}BoJUm}KJYYRNVLm=$KR;qXKx08cWI{slBZFE1007WQL_t&- z84bY;VuCOX0MHBvbS(-fbDJqm`bj&OqW3@Dcn@wUbHDyER)_Dh1GiYEh!H0#K1qZu zNmY$zs4;U1LBB zKtxS5jN|cScV57J_WCX&F6t0$-9nJpu@fQYXmoRbK!{OaN-1tKCO(%1X!)(@j_AW% zyfOS66#kS$tYrW_P0r00029NklDZ2hohyes+q zgA({pO##tj8@Z0000;UhJ^RG4lw+xb6Ue-d2>cG zL#AMu3PZG&3M+$#O|m+}>=47-3}PNRY7CrZiH!`2Iik-Q-qgI-VmNa1%A^8rneF*$XfJoQ%B>3FWYt=eat=i$+2Z^6RQ_Z_B2_N=(+QX=z^8PlMc%; zHspD5CEs6`yl%Q@(EdclB zm;Sfqm2i)P_*sVYml=cJ%Uw`>u(j@Tsr3D$5e)Yn`_J*2Fm2lWkFjloC;PD}%jJNM OW$<+Mb6Mw<&;$U+N_FJ` literal 0 HcmV?d00001 diff --git a/mods/other_worlds/textures/crystals_ghost_crystal.png b/mods/other_worlds/textures/crystals_ghost_crystal.png new file mode 100644 index 0000000000000000000000000000000000000000..40dc6c2a411b43ba98bf3da68da060404a3916e5 GIT binary patch literal 987 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyR|9-PT<1NwJp2%+qYFFGgYG3k ze!=M(nOWI6xq0~og+;|BrDf$6l~vU>wRQCkjZMuht!?ccon75My?y-?CQh0>W$Lu) zGiJ`3J!kH``3n{ojHm&|M>6G)o|J|SF>mPSsea-tUg;Da8ubUB%f@tD~Vk;R7J+6STUB!<+99U}PAmBcW`%FSm zYOf>9`x6G52iV;eKGiy}(ol5%ARRqlYwKi&YyQ)E4ZMOl>K0pV+H{e@@NuutZG$aL zP4-_J_MG7~`q38ip3|k_L37&GuTr7ccUJGro3$rhTH(inK<|!Kzc-mqe_wBD`}paG zw1ezox~_rO7tH^?|2UJ*9Uk$CJ?xf8XRBYD^ku%7EaM9YVU@=R`>+33yR%dO?~VE5 z=f6}Poco~B@9pa2&BaTX>Hcu@VC0b7v-Y^I7K3#U+q(bPdHc8-4(dPC__F6tS*vsv zb5G#nI;%5W9PfUtbiQ?QvQ)O@imyy>GQFe~0&XmC+_rsfk$L5%P5HNbcE9qoZ|XY# z#`KY{#;G3RL%G^r)=7DG>m7H!o+ox%n|VcdZ}w4Zu?e!#kw%W&b<5dSBnlt0{=~;6 za#HMtZ>eh zi;MX|T88!Tj& z?euuxE6OHvev-(Bb5o}5XEfD`v|3_e>5$D+_3j8mq5kF9Tp4ji%F{~x`F6$E&G~$% jnkge9naSa5$y@(Nv;3Q*zr1`2Ow0_Pu6{1-oD!MyVEZGd>V7Kp+Ur3@E@H(wEMv}q-B`2%k+uG|Dv=o1s>2ON>`dg&m9en2 zdH?RXF4}-1WleDUb#MlLVMbaFQ;1+;$Z}ixFI3kQm4UaNzg6jBC4B9o2>Nh;ZxIqPt23IAf-ZBSn z&3t1lnncSSEu6@nI>tu|&yAcyoYG9wb8JAJ zGk5d$paen=VKn8r@4ke;`EF$ zgU5Zs#K%BHs2i$A8!mllm82M{{-fz5ru0B6^?Zil~_w`-({R4mi41oAZd6-?2z!?xph!KjVSo1O}y7Uh{ zo+_nv%hm7p2WSK0QtnV}GjKu&=sW5%YB;mmkB1Bp0JB?~VN25y&Y@h96AT6{c)(0b zkqX8%M=PHMrj4oO97L5dU?O8hPVMaTs>IZ|XNOb!*?<1|zXs{dr3e||I)|DOGcZyo zK03l-#yXb<@bKZaxPc}Ct-YSzRduerr@9CZKt?Qy&ma~{|8VJEAv5Mu@7S~yzlbhG}(q7_Fm(xEjI^Nu)z*{=C0%R zneoZ#jLaaww&5z0*xYLw_#XSfKtc-ILox!2m?CeFWuQ*cXxdm~5`-C5nTDRr_SF6T zcAd*T4bmhLk^<5KW0-OV2U?nvCE)Ap*NB(LcSh#!b1oYVt93VwqGfmYfs_O=HuwPs zZsa|PL3Q`3Yx*=JD3T%>N-afZIY!|Lk(dP+Tk@;~B6f@;yXuB9R3xwfQ`{W8&B@_r?CH6hsC~LBjltK0+yu2oye?;G(@6uqB%`{$e{Z(*QB#6fs5~FHOAL zbI!p)Cc9^B20V2(YeHJeTxSKL0B!I?B<%q}8yLXkx!iNVYpM*8HRF{WyVK)QNH#F8 z_Id)j09#SFJT8by5^z-@M^>a_nPdY@QXugc{sngRefzv2G3-%M)s|xzdCpXw)6!&D zogf}-ERo?QDz@hN@0fA&`p3{cHi+(402yn61py!z#D9W60C3vun@J=I^?In+O0}T- z*!SGg#mlb5hpPu3IKnnC5QM;a{Gr%;i=8-Ex zoX}MJXA>{LCWvTDgi`S_3=tgkly5{WH$@Pd+zYA2wNKwax4Xfav4oL~kKjMyg9O+E z%wVK|hx~chHeMJ^pScJEFlZn>p0!_F)!7lB8>W#E?{g9FXvRs^LN%Qd;xAzG*Zm5{a=fo_^au@6ZJ)5_B}mh=(y# z%PtTLFb3lu*L7b%)$`rg{R5Aoh$B2mhGdC^L0|^jdz0PjzCp~;ZchU(O1yinJLWcG bWybnH6Hbs^j@{V700000NkvXXu0mjf?NrZ8 literal 0 HcmV?d00001 diff --git a/mods/other_worlds/textures/crystals_rose_quartz.png b/mods/other_worlds/textures/crystals_rose_quartz.png new file mode 100644 index 0000000000000000000000000000000000000000..951488f6ac4e12238200b82f5ff69cd54d61012a GIT binary patch literal 2048 zcmV+b2> zC15qFOh01ZVYFHqa(g#j9bwwl!EUyc0wU!y>>|3*`&~L6<8W_~kaUjT=cpCCJXi(5 zZekVLhBPuL1dqe(DHgz8&NdPz20a=zOGGO~>j?WeSesdmbl(Ud2hq1jX#W`fHBYU2 ze8jyq27ryql7SG;aAjbDKVsjH!3Idl@6Bi<8FalIy-WxIfHvw@==%-3$U&>|Ze9#Lh*UKLnqHRrST zJk>#WUT;TL&*-{4M&}5F077`IBHvqcx3W#_Mj#~bk**NNfCTqO;FH=q59?$4c+A?Z zxL<4NeLH9;S4SGJ!Y=66Mqwj*!#Eg&dQPwLTAI5F8wDW2ZgN-!1^@}hfO`YrG2xi# zIFU>SKK}98<8wOJ)qKC{@k?27PJ8edoE z&$Gu2S6NY@DrLw%Cv_$@gT{v6e_#x*oVk{g+Q0;Wk@P&2a_4{juc-oHT^;X^31AR_ zR=H8Q>GgFfhg^I-q_74LuF(*^(l0Cu6@f9UU5w3qn) z=Kk@S-^{~jQC6(d$d6Iu^WkbK!f^*P2gC^a7+xv2M2F~OcnjeBf_t;)8DC#@v=IOR z0002@O-h}iUdNf=K8~I#KOR~!#)4cGL!vX>A=-xB#E>wOB}m~A{a%{BZ;q>L27Uj& zMrjAf1ONa)0@>DX=KbC!$Gc)QTdabA{=(jphL67Yk#n!sumPZr27rJJ_e6V@^SyM$ zpWWNBK1bjEec>DetT~YYK=*B3i@8^gu&<7>N?Fw*K|&wTxioI)W!Kj${P+L>z`y_) z;XYD(H}l$>dfnu%K8DL!m6;=4V_lv5vSef9T?9B23p=naX_dx&9(4?M+p3u1YWB5K zvCJ_65HJ8n&?8(`JpAXaqu2Tz{XUtFw$;#-vDq-Bs{n-I1WPcxZhnP!_}&xc+W!}ho-2Mt&siv(7j)|-#gpL zBhe8&em>VsIyd$$y%w{KKpIIMtr}3Qg8fa*;q%EJtcC+d(&x{|W{Gtx?(~e9y_a%C zzaXTq3mI0BLNXOgPK7zlTD^~ah&WF&TywN zK=V`x51uEyF2L-Hyqg5bs*bNOd!TD;7|<9#?yGX`R^m1qrbEaE3C^TOxNk_mZ${AP z`cp|XK-0P(KeC%Rp0NjjN2*s-MgT)}2DRSKzP{zv@(8qHe^D7Uh-v~bAOL{fM75$^ zA;I|bcSW?Bf!ER|-?HZ}~7qcFZ@H{X8FrKqx(t`wreDt-s%yoC(O=fM&U_@Xa z={*lu1m@2R)kb3&001EO#&)wei~-Tyo^${F5dZ+yG eB=lq7`~Lxk!@qSpu>1D_0000AnNk$XT&)6>NpNoqtZc1uGj>u%OsUmw$1Uxu;v}Q){Lj#6aZ-u{?cwcP-YGUwo^>bP0 Hl+XkK{njyE literal 0 HcmV?d00001 diff --git a/mods/other_worlds/textures/mars_grass_2.png b/mods/other_worlds/textures/mars_grass_2.png new file mode 100644 index 0000000000000000000000000000000000000000..2906085b07d473fd16a541b47c59efa0f95b10a5 GIT binary patch literal 174 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPHF3h)VWovmf^|Nnn)1L;^vi8vjZ zEH#xPTjdHH)jBuLE=84YQ@vh8_382!^Gyu-k6jf8>S8Jh@(X5QD4TrN0?0G;ba4#f zh)x!0VPd;w*zkaqnwqDTH#9tapsH8M>DMUC(>mF8iR$E|O^o}M`3w}^ SJ%0|=%;4$j=d#Wzp$Pz&^fQ_O literal 0 HcmV?d00001 diff --git a/mods/other_worlds/textures/mars_grass_3.png b/mods/other_worlds/textures/mars_grass_3.png new file mode 100644 index 0000000000000000000000000000000000000000..83aa3c071846f3229f8d21fd101d30362e7e7366 GIT binary patch literal 232 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbL!eSlAhYf4JWG%K5JN*e$F{}0m> z2{RRrG!eWAp$PZ*B!{*6pvw&2Hr;B5VMEKbbL!o8^fg{(LY8oDInDP66bf!et9)(pZnZF$W z8&!BR9ASKZnbWzS*N;s`<72y95>Ka)zQp5Sx;ZOOZcYpR`oi^MXsIiI>z*x}*6(Bd Xn!$1`ZPxU!AbUJr{an^LB{Ts5<(N(_ literal 0 HcmV?d00001 diff --git a/mods/other_worlds/textures/mars_grass_4.png b/mods/other_worlds/textures/mars_grass_4.png new file mode 100644 index 0000000000000000000000000000000000000000..1ed4e83e135de08a8c87cde2d834833176721171 GIT binary patch literal 259 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbL!Q-Dv1>pDZ_{c3vu|NqZ55XjdN zD%KaMG#Bbp6Xa=f7 zojf&m+S5eKSxIRr6))b+oalQv|NNVKdtAQh+JD`|@{yJC&sLzt44$rjF6*2UngDY= BV4MH| literal 0 HcmV?d00001 diff --git a/mods/other_worlds/textures/mars_grass_5.png b/mods/other_worlds/textures/mars_grass_5.png new file mode 100644 index 0000000000000000000000000000000000000000..16125e8516f2f7c5db5441f3123b295476ae4822 GIT binary patch literal 315 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbK}NPtg>>kc)6lfn}J|NjrO;7`!w zOHva^(G$ov7p%}`u2$sj5)hau&p6FSXu6K@9CM+0@*)el8JBpAFLRgLB+ao|M|!h` z6wrhn=FE} zLuudUBGp(Svw0^p;xcvH=T5VH9WkpwS*uAgscGdy<~^Ln*50!jPv*SoyZH1}kxtqP zsncz)g51-(`i1neEDt@gWGnpmD6;S3I=iDOSA)M5e>IOtWj}RMeW4-Hc?_PeelF{r G5}E)r3U3Gi literal 0 HcmV?d00001 diff --git a/mods/other_worlds/textures/mars_moss.png b/mods/other_worlds/textures/mars_moss.png new file mode 100644 index 0000000000000000000000000000000000000000..8ca0fa777b122650bef0bfd2869a104a5cc88ae0 GIT binary patch literal 216 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPGa2=EDUO_SyAQWIG1W%~dB{~$#% zIQPM9cTb=imXaX9U?9z~d2-q;AeHUu;uyjq%X;u2Z?l1b>%sd@dJ7w-elYzYlF#~* zp{PCd&F=7~Z^p_G%p92gn%5F1#R^V~H7~avqD^lXZ(8}>+`H}t0?sDrH zuy1?7x`vHId@LcyTF0WyOlwb5+WDtZNg$SckEi*vxB~lzhF~sj&9d qhL-$uFO*N5PF~AqzqMl4YyQhe`1!i{IzyDDp6DU{h;pXk-=GQ1Cwf@^%Id77;GJ z*ag$)d#v&5zi{rw$>U!IRvmXZ|K888ZFBCLF2M`ePO{&M`3qHi!TK literal 0 HcmV?d00001 diff --git a/mods/other_worlds/textures/sky_neg_x.png b/mods/other_worlds/textures/sky_neg_x.png new file mode 100644 index 0000000000000000000000000000000000000000..399cee462d75345e081e71024ebd1278de1c5a4e GIT binary patch literal 99566 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 literal 0 HcmV?d00001 diff --git a/mods/other_worlds/textures/sky_neg_y.png b/mods/other_worlds/textures/sky_neg_y.png new file mode 100644 index 0000000000000000000000000000000000000000..c02dcfb616ccbcc0fd487b6f5ab0028d44c42916 GIT binary patch literal 109650 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