diff --git a/README.md b/README.md
index 38527266aa0eb430bc4ee3eed60354d15d7ac4fe..61ff352852a40b226402975e1c033c3615d349c0 100644
--- a/README.md
+++ b/README.md
@@ -7,13 +7,21 @@ Ethereal v7 Mapgen mod for Minetest
 
 ## Changelog
 
+### 1.18
+
+- Added Birch tree, also stairs; fence and gate
+- Added Fire flower to fiery biomes (careful, it hurts)
+- Tweaked biomes and decoration slightly
+- Added tree_tool for admin to quickly grow tree's
+- Cobble to Mossycobble when near water has been toned down a bit
+
 ### 1.17
 
 - Added new Glacier biome filled with snow and ice
 - Changed Mesa biome to have more coloured clay patterns
 - Changed Bamboo biome to have tall tree-like stalks with leaves that give
-  Bamboo sprouts are now saplings to grow new stalks
-  removed farmed mushrooms and replaced with new default game mushrooms with spores
+- Bamboo sprouts are now saplings to grow new stalks
+- Removed farmed mushrooms and replaced with default game mushrooms with spores
 
 ### 1.16
 
diff --git a/fences.lua b/fences.lua
index c704d00837e0c34acd187f577402c1613b546cd4..c639a857aa8d8ed003bd476b45d90d21ad03bb66 100644
--- a/fences.lua
+++ b/fences.lua
@@ -10,6 +10,7 @@ local fences = {
 	{"mushroom", "Mushroom", "mushroom_trunk.png", "ethereal:mushroom_trunk"},
 	{"acacia", "Acacia Wood", "moretrees_acacia_wood.png", "ethereal:acacia_wood"},
 	{"pine", "Pine Wood", "default_pine_wood.png", "default:pinewood"},
+	{"birch", "Birch Wood", "moretrees_birch_wood.png", "ethereal:birch_wood"},
 }
 
 for _, row in ipairs(fences) do
diff --git a/gates.lua b/gates.lua
index 5065da8b1a45c812ab07e186988287c97510780a..3ffc0d67706d06b1dfba54dcb732666022fff314 100644
--- a/gates.lua
+++ b/gates.lua
@@ -47,6 +47,7 @@ local gates = {
 	{"mushroom", "Mushroom", "mushroom_trunk.png", "ethereal:mushroom_trunk"},
 	{"acacia", "Acacia Wood", "moretrees_acacia_wood.png", "ethereal:acacia_wood"},
 	{"pine", "Pine Wood", "default_pine_wood.png", "default:pinewood"},
+	{"birch", "Birch Wood", "moretrees_birch_wood.png", "ethereal:birch_wood"},
 }
 
 for _, row in pairs(gates) do
diff --git a/init.lua b/init.lua
index 1734d91cac41dca9d92f7f3f261476b67e55e19c..d9697d226fa3c960d2223bf45f02b6412421848c 100644
--- a/init.lua
+++ b/init.lua
@@ -1,6 +1,6 @@
 --[[
 
-	Minetest Ethereal Mod 1.16 (30th September 2015)
+	Minetest Ethereal Mod 1.18 (14th November 2015)
 
 	Created by ChinChow
 
diff --git a/leaves.lua b/leaves.lua
index bfce4205957d19ea8fadfdba4c4ba694ac43aa1d..4f1fb51370195072b8fa8bb2509161eb42358491 100644
--- a/leaves.lua
+++ b/leaves.lua
@@ -106,7 +106,7 @@ minetest.override_item("default:leaves", {
 	},
 })
 
--- Default Orange Tree Leaves
+-- Orange Tree Leaves
 minetest.register_node("ethereal:orange_leaves", {
 	description = "Orange Leaves",
 	drawtype = leaftype,
@@ -143,7 +143,7 @@ minetest.override_item("default:jungleleaves", {
 	},
 })
 
--- Default Banana Tree Leaves
+-- Banana Tree Leaves
 minetest.register_node("ethereal:bananaleaves", {
 	description = "Banana Leaves",
 	drawtype = leaftype,
@@ -212,6 +212,28 @@ minetest.register_node("ethereal:palmleaves", {
 	after_place_node = default.after_place_leaves,
 })
 
+-- Birch Tree Leaves
+minetest.register_node("ethereal:birch_leaves", {
+	description = "Birch Leaves",
+	drawtype = leaftype,
+	visual_scale = 1.2,
+	tiles = {"moretrees_birch_leaves.png"},
+	inventory_image = "moretrees_birch_leaves.png",
+	paramtype = "light",
+	walkable = false,
+	waving = 1,
+	groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2},
+	drop = {
+		max_items = 1,
+		items = {
+			{items = {"ethereal:birch_sapling"}, rarity = 20},
+			{items = {"ethereal:birch_leaves"}}
+		}
+	},
+	sounds = default.node_sound_leaves_defaults(),
+	after_place_node = default.after_place_leaves,
+})
+
 -- Pine Tree Leaves
 minetest.override_item("default:pine_needles", {
 	drawtype = leaftype,
diff --git a/mapgen_v7n.lua b/mapgen_v7n.lua
index bc4f9cb9a93b2db822466da4fa644a9edd43c105..a9cabe141bbb586144ce330a9b10f67080422c4e 100644
--- a/mapgen_v7n.lua
+++ b/mapgen_v7n.lua
@@ -9,6 +9,7 @@ dofile(path.."apple_tree.lua")
 dofile(path.."orange_tree.lua")
 dofile(path.."banana_tree.lua")
 dofile(path.."bamboo_tree.lua")
+dofile(path.."birch_tree.lua")
 dofile(path.."bush.lua")
 
 --= Biomes (Minetest 0.4.13 and above)
@@ -26,20 +27,20 @@ if ethereal.glacier == 1 then
 		depth_water_top = 10,
 		y_min = -8,
 		y_max = 31000,
-		heat_point = -5,
+		heat_point = 0,
 		humidity_point = 50,
 	})
 
 	minetest.register_biome({
 		name = "glacier_ocean",
-		node_dust = "default:sand", -- was snowblock
-		node_top = "default:gravel",
+		node_dust = "default:snowblock",
+		node_top = "default:sand",
 		depth_top = 1,
-		node_filler = "default:gravel",
-		depth_filler = 2,
+		node_filler = "default:sand",
+		depth_filler = 3,
 		y_min = -112,
 		y_max = -9,
-		heat_point = -5,
+		heat_point = 0,
 		humidity_point = 50,
 	})
 end
@@ -624,13 +625,25 @@ minetest.register_decoration({
 	flags = "place_center_x, place_center_z",
 })
 
+-- big old tree
 minetest.register_decoration({
 	deco_type = "schematic",
-	place_on = {"ethereal:green_dirt"},
+	place_on = "ethereal:green_dirt",
 	sidelen = 80,
 	fill_ratio = 0.005,
+	biomes = {"jumble"},
+	schematic = path.."bigtree.mts",
+	flags = "place_center_x, place_center_z",
+})
+
+-- birch tree (was apple)
+minetest.register_decoration({
+	deco_type = "schematic",
+	place_on = {"ethereal:green_dirt"},
+	sidelen = 80,
+	fill_ratio = 0.03,
 	biomes = {"grassytwo"},
-	schematic = ethereal.appletree,
+	schematic = ethereal.birchtree,
 	flags = "place_center_x, place_center_z",
 })
 
@@ -639,7 +652,7 @@ minetest.register_decoration({
 	deco_type = "schematic",
 	place_on = {"ethereal:prairie_dirt"},
 	sidelen = 80,
-	fill_ratio = 0.005,
+	fill_ratio = 0.01,
 	biomes = {"prairie"},
 	schematic = ethereal.orangetree,
 	flags = "place_center_x, place_center_z",
@@ -677,17 +690,6 @@ minetest.register_decoration({
 	rotation = "random",
 })
 
--- big old tree
-minetest.register_decoration({
-	deco_type = "schematic",
-	place_on = "ethereal:green_dirt",
-	sidelen = 80,
-	fill_ratio = 0.01,
-	biomes = {"grassytwo"},
-	schematic = path.."bigtree.mts",
-	flags = "place_center_x, place_center_z",
-})
-
 -- palm tree
 minetest.register_decoration({
 	deco_type = "schematic",
diff --git a/sapling.lua b/sapling.lua
index 16c30d8cf50453539a04d31020192b29fce61d7f..41ce966ea6326be1933deaf424440e9a71eefd74 100644
--- a/sapling.lua
+++ b/sapling.lua
@@ -36,6 +36,7 @@ ethereal.register_sapling("ethereal:palm", "Palm", "moretrees_palm")
 ethereal.register_sapling("ethereal:redwood", "Redwood", "redwood")
 ethereal.register_sapling("ethereal:orange_tree", "Orange", "orange_tree")
 ethereal.register_sapling("ethereal:acacia", "Acacia", "moretrees_acacia")
+ethereal.register_sapling("ethereal:birch", "Birch", "moretrees_birch")
 
 ethereal.add_tree = function (pos, ofx, ofz, schem)
 	-- check for schematic
@@ -114,6 +115,11 @@ ethereal.grow_sapling = function (pos, node)
 	elseif node.name == "ethereal:bamboo_sprout"
 	and under == "ethereal:bamboo_dirt" then
 		ethereal.add_tree(pos, 1, 1, ethereal.bambootree)
+
+	elseif node.name == "ethereal:birch_sapling"
+	and under == "ethereal:green_dirt" then
+		ethereal.add_tree(pos, 2, 2, ethereal.birchtree)
+
 	end
 end
 
diff --git a/schematics/birch_tree.lua b/schematics/birch_tree.lua
new file mode 100644
index 0000000000000000000000000000000000000000..32894d0c5848208dd3d6e267aa16519eea3a5429
--- /dev/null
+++ b/schematics/birch_tree.lua
@@ -0,0 +1,50 @@
+
+-- Birch Tree (built column by column, bottom to top)
+
+local i = "air"
+local t = "ethereal:birch_trunk"
+local l = "ethereal:birch_leaves"
+
+ethereal.birchtree = {size = {x = 5, y = 7, z = 5}, data = {
+
+{name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000},
+{name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000},
+{name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000},
+{name=l, param1=150}, {name=l, param1=255}, {name=l, param1=255}, {name=l, param1=255}, {name=l, param1=150},
+{name=l, param1=150}, {name=l, param1=255}, {name=l, param1=255}, {name=l, param1=255}, {name=l, param1=150},
+{name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000},
+{name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000},
+
+{name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000},
+{name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000},
+{name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000},
+{name=l, param1=255}, {name=l, param1=255}, {name=l, param1=255}, {name=l, param1=255}, {name=l, param1=255},
+{name=l, param1=255}, {name=l, param1=255}, {name=l, param1=255}, {name=l, param1=255}, {name=l, param1=255},
+{name=i, param1=000}, {name=l, param1=150}, {name=l, param1=255}, {name=l, param1=150}, {name=i, param1=000},
+{name=i, param1=000}, {name=i, param1=000}, {name=l, param1=255}, {name=i, param1=000}, {name=i, param1=000},
+
+{name=i, param1=000}, {name=i, param1=000}, {name=t, param1=255}, {name=i, param1=000}, {name=i, param1=000},
+{name=i, param1=000}, {name=i, param1=000}, {name=t, param1=255}, {name=i, param1=000}, {name=i, param1=000},
+{name=i, param1=000}, {name=i, param1=000}, {name=t, param1=255}, {name=i, param1=000}, {name=i, param1=000},
+{name=l, param1=255}, {name=l, param1=255}, {name=t, param1=255}, {name=l, param1=255}, {name=l, param1=255},
+{name=l, param1=255}, {name=l, param1=255}, {name=t, param1=255}, {name=l, param1=255}, {name=l, param1=255},
+{name=i, param1=000}, {name=l, param1=255}, {name=t, param1=255}, {name=l, param1=255}, {name=i, param1=000},
+{name=i, param1=000}, {name=l, param1=255}, {name=l, param1=255}, {name=l, param1=255}, {name=i, param1=000},
+
+{name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000},
+{name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000},
+{name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000},
+{name=l, param1=255}, {name=l, param1=255}, {name=l, param1=255}, {name=l, param1=255}, {name=l, param1=255},
+{name=l, param1=255}, {name=l, param1=255}, {name=l, param1=255}, {name=l, param1=255}, {name=l, param1=255},
+{name=i, param1=000}, {name=l, param1=150}, {name=l, param1=255}, {name=l, param1=150}, {name=i, param1=000},
+{name=i, param1=000}, {name=i, param1=000}, {name=l, param1=255}, {name=i, param1=000}, {name=i, param1=000},
+
+{name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000},
+{name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000},
+{name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000},
+{name=l, param1=150}, {name=l, param1=255}, {name=l, param1=255}, {name=l, param1=255}, {name=l, param1=150},
+{name=l, param1=150}, {name=l, param1=255}, {name=l, param1=255}, {name=l, param1=255}, {name=l, param1=150},
+{name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000},
+{name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000}, {name=i, param1=000},
+
+}, yslice_prob = {{ypos = 1, prob = 127}}}
diff --git a/stairs.lua b/stairs.lua
index 12578e3532e036c158608e0c10d3c7cfb68db7ba..bd511be301c92584a75bb84bf07a1266f9b39f6d 100644
--- a/stairs.lua
+++ b/stairs.lua
@@ -66,6 +66,13 @@ stairs.register_stair_and_slab("palm_wood", "ethereal:palm_wood",
 	"Palm Wood Slab",
 	default.node_sound_wood_defaults())
 
+stairs.register_stair_and_slab("birch_wood", "ethereal:birch_wood",
+	{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3, not_in_craft_guide = 1},
+	{"moretrees_birch_wood.png"},
+	"Birch Wood Stair",
+	"Birch Wood Slab",
+	default.node_sound_wood_defaults())
+
 stairs.register_stair_and_slab("banana_wood", "ethereal:banana_wood",
 	{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3, not_in_craft_guide = 1},
 	{"banana_wood.png"},
diff --git a/textures/moretrees_birch_leaves.png b/textures/moretrees_birch_leaves.png
new file mode 100644
index 0000000000000000000000000000000000000000..547f133b13bf38d28f501bca5b37d162851bfe3c
Binary files /dev/null and b/textures/moretrees_birch_leaves.png differ
diff --git a/textures/moretrees_birch_sapling.png b/textures/moretrees_birch_sapling.png
new file mode 100644
index 0000000000000000000000000000000000000000..afb03f3b0796cf32a8fa8a37c7705f83bcb1385a
Binary files /dev/null and b/textures/moretrees_birch_sapling.png differ
diff --git a/textures/moretrees_birch_trunk.png b/textures/moretrees_birch_trunk.png
new file mode 100644
index 0000000000000000000000000000000000000000..2b222f7b728fbdd6ff2433ab3043585327270062
Binary files /dev/null and b/textures/moretrees_birch_trunk.png differ
diff --git a/textures/moretrees_birch_trunk_top.png b/textures/moretrees_birch_trunk_top.png
new file mode 100644
index 0000000000000000000000000000000000000000..6e5b3bb234eea6f677e6e8bb65f50c4d42b6f1de
Binary files /dev/null and b/textures/moretrees_birch_trunk_top.png differ
diff --git a/textures/moretrees_birch_wood.png b/textures/moretrees_birch_wood.png
new file mode 100644
index 0000000000000000000000000000000000000000..621f8eec9ce18d07d035e6be2d642ae5dd631b70
Binary files /dev/null and b/textures/moretrees_birch_wood.png differ
diff --git a/water.lua b/water.lua
index 9377918469ffcc09db8b07a9c8d72dc06769f448..3b0ba81fe1f25c9a96020d8ed6ad3846335fb109 100644
--- a/water.lua
+++ b/water.lua
@@ -42,9 +42,9 @@ minetest.register_craft({
 -- Over time Cobble placed in water changes to Mossy Cobble
 minetest.register_abm({
 	nodenames = {"default:cobble"},
-	neighbors={"group:water"},
-	interval = 30,
-	chance = 10,
+	neighbors = {"group:water"},
+	interval = 17,
+	chance = 100,
 	catch_up = false,
 	action = function(pos, node)
 		minetest.set_node(pos, {name = "default:mossycobble"})
@@ -59,7 +59,7 @@ minetest.register_abm({
 	},
 	neighbors = {"default:water_source", "default:river_water_source"},
 	interval = 15,
-	chance = 2,
+	chance = 4,
 	catch_up = false,
 	action = function(pos, node)
 		local water = minetest.find_nodes_in_area(
@@ -83,7 +83,7 @@ minetest.register_abm({
 		"default:furnace_active", "default:torch"
 	},
 	interval = 5,
-	chance = 2,
+	chance = 4,
 	catch_up = false,
 	action = function(pos, node, active_object_count, active_object_count_wider)
 		if node.name == "default:ice"
diff --git a/wood.lua b/wood.lua
index 3981bee7daea6bbad45c2897e666b0300c77e0d6..7310abee8612c3242641e8b897b63a3059db71b3 100644
--- a/wood.lua
+++ b/wood.lua
@@ -237,4 +237,32 @@ minetest.register_node("ethereal:mushroom_trunk", {
 	sounds = default.node_sound_wood_defaults(),
 	paramtype2 = "facedir",
 	on_place = minetest.rotate_node,
+})
+
+-- Birch Trunk (thanks to VanessaE for birch textures)
+minetest.register_node("ethereal:birch_trunk", {
+	description = "Birch Trunk",
+	tiles = {
+		"moretrees_birch_trunk_top.png",
+		"moretrees_birch_trunk_top.png",
+		"moretrees_birch_trunk.png"
+	},
+	groups = {tree = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 2},
+	sounds = default.node_sound_wood_defaults(),
+	paramtype2 = "facedir",
+	on_place = minetest.rotate_node,
+})
+
+-- Birch Wood
+minetest.register_node("ethereal:birch_wood", {
+	description = "Birch Wood",
+	tiles = {"moretrees_birch_wood.png"},
+	is_ground_content = false,
+	groups = {wood = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
+	sounds = default.node_sound_wood_defaults(),
+})
+
+minetest.register_craft({
+	output = "ethereal:birch_wood 4",
+	recipe = {{"ethereal:birch_trunk"}}
 })
\ No newline at end of file