diff --git a/mods/default/mapgen.lua b/mods/default/mapgen.lua
index e791493443b90fed675c9084e81dca5919a9e5b9..fdbe4a83a7e763c4e348438331c9f00c66221c53 100644
--- a/mods/default/mapgen.lua
+++ b/mods/default/mapgen.lua
@@ -1640,6 +1640,7 @@ function default.register_decorations()
 		name = "default:apple_log",
 		deco_type = "schematic",
 		place_on = {"default:dirt_with_grass"},
+		place_offset_y = 1,
 		sidelen = 16,
 		noise_params = {
 			offset = 0.0018,
@@ -1655,6 +1656,8 @@ function default.register_decorations()
 		schematic = minetest.get_modpath("default") .. "/schematics/apple_log.mts",
 		flags = "place_center_x",
 		rotation = "random",
+		spawn_by = "default:dirt_with_grass",
+		num_spawn_by = 8,
 	})
 
 	-- Emergent jungle tree
@@ -1705,7 +1708,8 @@ function default.register_decorations()
 	minetest.register_decoration({
 		name = "default:jungle_log",
 		deco_type = "schematic",
-		place_on = {"default:dirt_with_rainforest_litter", "default:dirt"},
+		place_on = {"default:dirt_with_rainforest_litter"},
+		place_offset_y = 1,
 		sidelen = 80,
 		fill_ratio = 0.005,
 		biomes = {"rainforest", "rainforest_swamp"},
@@ -1714,6 +1718,8 @@ function default.register_decorations()
 		schematic = minetest.get_modpath("default") .. "/schematics/jungle_log.mts",
 		flags = "place_center_x",
 		rotation = "random",
+		spawn_by = "default:dirt_with_rainforest_litter",
+		num_spawn_by = 8,
 	})
 
 	-- Taiga and temperate coniferous forest pine tree, small pine tree and log
@@ -1762,6 +1768,7 @@ function default.register_decorations()
 		name = "default:pine_log",
 		deco_type = "schematic",
 		place_on = {"default:dirt_with_snow", "default:dirt_with_coniferous_litter"},
+		place_offset_y = 1,
 		sidelen = 80,
 		fill_ratio = 0.0018,
 		biomes = {"taiga", "coniferous_forest", "floatland_coniferous_forest"},
@@ -1770,6 +1777,8 @@ function default.register_decorations()
 		schematic = minetest.get_modpath("default") .. "/schematics/pine_log.mts",
 		flags = "place_center_x",
 		rotation = "random",
+		spawn_by = {"default:dirt_with_snow", "default:dirt_with_coniferous_litter"},
+		num_spawn_by = 8,
 	})
 
 	-- Acacia tree and log
@@ -1799,6 +1808,7 @@ function default.register_decorations()
 		name = "default:acacia_log",
 		deco_type = "schematic",
 		place_on = {"default:dirt_with_dry_grass"},
+		place_offset_y = 1,
 		sidelen = 16,
 		noise_params = {
 			offset = 0,
@@ -1814,6 +1824,8 @@ function default.register_decorations()
 		schematic = minetest.get_modpath("default") .. "/schematics/acacia_log.mts",
 		flags = "place_center_x",
 		rotation = "random",
+		spawn_by = "default:dirt_with_dry_grass",
+		num_spawn_by = 8,
 	})
 
 	-- Aspen tree and log
@@ -1842,6 +1854,7 @@ function default.register_decorations()
 		name = "default:aspen_log",
 		deco_type = "schematic",
 		place_on = {"default:dirt_with_grass"},
+		place_offset_y = 1,
 		sidelen = 16,
 		noise_params = {
 			offset = 0.0,
@@ -1857,6 +1870,8 @@ function default.register_decorations()
 		schematic = minetest.get_modpath("default") .. "/schematics/aspen_log.mts",
 		flags = "place_center_x",
 		rotation = "random",
+		spawn_by = "default:dirt_with_grass",
+		num_spawn_by = 8,
 	})
 
 	-- Large cactus
diff --git a/mods/default/schematics/acacia_log.mts b/mods/default/schematics/acacia_log.mts
index 037bca8c32152f0927ff027811e918e713872b91..aff3bd6add32084e3fd941c616b39bf598f1a41d 100644
Binary files a/mods/default/schematics/acacia_log.mts and b/mods/default/schematics/acacia_log.mts differ
diff --git a/mods/default/schematics/apple_log.mts b/mods/default/schematics/apple_log.mts
index e7ee8f2b84ab06165c4537cd4607ec56e3066608..3c1aae45042c79aca5fd426bd10aa4fcf41e6740 100644
Binary files a/mods/default/schematics/apple_log.mts and b/mods/default/schematics/apple_log.mts differ
diff --git a/mods/default/schematics/aspen_log.mts b/mods/default/schematics/aspen_log.mts
index 180e6fd1be8b31d1578f057edd7e3fb3f321c5ed..d0c723d71d002232207e0d1e77c99903dd0cd564 100644
Binary files a/mods/default/schematics/aspen_log.mts and b/mods/default/schematics/aspen_log.mts differ
diff --git a/mods/default/schematics/jungle_log.mts b/mods/default/schematics/jungle_log.mts
index 54fa16d175a053f47c4ee55d678b33dbf507f314..34dca43605a0a401295fc5223f021788269ae6a6 100644
Binary files a/mods/default/schematics/jungle_log.mts and b/mods/default/schematics/jungle_log.mts differ
diff --git a/mods/default/schematics/pine_log.mts b/mods/default/schematics/pine_log.mts
index 744c38b0290fc671f18b6aeda5315bdcc2554768..d51a489f07d8540f65c1b45a047b969be781fe3d 100644
Binary files a/mods/default/schematics/pine_log.mts and b/mods/default/schematics/pine_log.mts differ