diff --git a/mods/default/README.txt b/mods/default/README.txt
index 4cdd42698dd28f8747904317329a7b612cd6cb62..695d3b1fb6e94d1935168b33e67eff52c528c8ca 100644
--- a/mods/default/README.txt
+++ b/mods/default/README.txt
@@ -34,6 +34,9 @@ Cisoun's WTFPL texture pack:
   default_tree_top.png
   default_water.png
 
+Cisoun's conifers mod (WTFPL):
+  default_pine_needles.png
+
 Originating from G4JC's Almost MC Texture Pack:
   default_torch.png
   default_torch_on_ceiling.png
@@ -94,6 +97,7 @@ Splizard (CC BY-SA 3.0):
   default_snow.png
   default_snow_side.png
   default_ice.png
+  default_pine_sapling.png
 
 Zeg9 (CC BY-SA 3.0):
   default_coal_block.png
@@ -104,6 +108,9 @@ Zeg9 (CC BY-SA 3.0):
 
 paramat (CC BY-SA 3.0):
   wieldhand.png, based on character.png by Jordach (CC BY-SA 3.0)
+  default_pinetree.png
+  default_pinetree_top.png
+  default_pinewood.png
 
 brunob.santos (CC BY-SA 4.0):
   default_desert_cobble.png
diff --git a/mods/default/crafting.lua b/mods/default/crafting.lua
index eb1500445657ed08d29b6a407c85263ee5904bbb..448e3e93dbbc6362ed4176640fbedc5170602911 100644
--- a/mods/default/crafting.lua
+++ b/mods/default/crafting.lua
@@ -14,6 +14,13 @@ minetest.register_craft({
 	}
 })
 
+minetest.register_craft({
+	output = 'default:pinewood 4',
+	recipe = {
+		{'default:pinetree'},
+	}
+})
+
 minetest.register_craft({
 	output = 'default:stick 4',
 	recipe = {
@@ -800,3 +807,10 @@ minetest.register_craft({
 	recipe = "default:grass_1",
 	burntime = 2,
 })
+
+minetest.register_craft({
+	type = "fuel",
+	recipe = "default:pine_sapling",
+	burntime = 10,
+})
+
diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua
index 34f2917168f2a2577e8113a719ed454cfe4aef3a..3466191da47c2f28aecf8390d27f0bc07bf74b56 100644
--- a/mods/default/nodes.lua
+++ b/mods/default/nodes.lua
@@ -1478,3 +1478,60 @@ minetest.register_node("default:snowblock", {
 		dug = {name="default_snow_footstep", gain=0.75},
 	}),
 })
+
+minetest.register_node("default:pine_needles",{
+	description = "Pine Needles",
+	drawtype = "allfaces_optional",
+	visual_scale = 1.3,
+	tiles = {"default_pine_needles.png"},
+	waving = 1,
+	paramtype = "light",
+	groups = {snappy=3,leafdecay=3,leaves=1},
+	drop = {
+		max_items = 1,
+		items = {
+			{
+				-- player will get sapling with 1/20 chance
+				items = {"default:pine_sapling"},
+				rarity = 20,
+			},
+			{
+				-- player will get leaves only if he get no saplings,
+				-- this is because max_items is 1
+				items = {"default:pine_needles"},
+			}
+		}
+	},
+	sounds = default.node_sound_leaves_defaults(),
+})
+
+minetest.register_node("default:pine_sapling", {
+	description = "Pine Sapling",
+	drawtype = "plantlike",
+	visual_scale = 1.0,
+	tiles = {"default_pine_sapling.png"},
+	inventory_image = "default_pine_sapling.png",
+	wield_image = "default_pine_sapling.png",
+	paramtype = "light",
+	walkable = false,
+	groups = {snappy=2,dig_immediate=3},
+	sounds = default.node_sound_defaults(),
+})
+
+minetest.register_node("default:pinetree", {
+	description = "Pine Tree",
+	tiles = {"default_pinetree_top.png", "default_pinetree_top.png", "default_pinetree.png"},
+	paramtype2 = "facedir",
+	is_ground_content = false,
+	groups = {tree=1,choppy=2,oddly_breakable_by_hand=1,flammable=2},
+	sounds = default.node_sound_wood_defaults(),
+	on_place = minetest.rotate_node
+})
+
+minetest.register_node("default:pinewood", {
+	description = "Pinewood Planks",
+	tiles = {"default_pinewood.png"},
+	groups = {choppy=2,oddly_breakable_by_hand=2,flammable=3,wood=1},
+	sounds = default.node_sound_wood_defaults(),
+})
+
diff --git a/mods/default/textures/default_pine_needles.png b/mods/default/textures/default_pine_needles.png
new file mode 100644
index 0000000000000000000000000000000000000000..2b007be759433464dbc2de2652ff6c56571c6e21
Binary files /dev/null and b/mods/default/textures/default_pine_needles.png differ
diff --git a/mods/default/textures/default_pine_sapling.png b/mods/default/textures/default_pine_sapling.png
new file mode 100644
index 0000000000000000000000000000000000000000..cd8167a25dd52a3c8d84417984165294e2962fa3
Binary files /dev/null and b/mods/default/textures/default_pine_sapling.png differ
diff --git a/mods/default/textures/default_pinetree.png b/mods/default/textures/default_pinetree.png
new file mode 100644
index 0000000000000000000000000000000000000000..5a2a8b21790d8d00048847a4a6a9547e6c8a0858
Binary files /dev/null and b/mods/default/textures/default_pinetree.png differ
diff --git a/mods/default/textures/default_pinetree_top.png b/mods/default/textures/default_pinetree_top.png
new file mode 100644
index 0000000000000000000000000000000000000000..9e2f8647645e47ea52f0014e6d638b7751cc6f8f
Binary files /dev/null and b/mods/default/textures/default_pinetree_top.png differ
diff --git a/mods/default/textures/default_pinewood.png b/mods/default/textures/default_pinewood.png
new file mode 100644
index 0000000000000000000000000000000000000000..4225296140912185e1d3f163fad29247a1449315
Binary files /dev/null and b/mods/default/textures/default_pinewood.png differ
diff --git a/mods/stairs/init.lua b/mods/stairs/init.lua
index afd89bdaa1cbf52479b1c7fc00d3fb697339cb8e..c7df28c51d0807aeea4dfc6497203efa298e4d34 100644
--- a/mods/stairs/init.lua
+++ b/mods/stairs/init.lua
@@ -288,3 +288,11 @@ stairs.register_stair_and_slab("stonebrick", "default:stonebrick",
 		"Stone Brick Stair",
 		"Stone Brick Slab",
 		default.node_sound_stone_defaults())
+
+stairs.register_stair_and_slab("pinewood", "default:pinewood",
+		{snappy=2,choppy=2,oddly_breakable_by_hand=2,flammable=3},
+		{"default_pinewood.png"},
+		"Pinewood Stair",
+		"Pinewood Slab",
+		default.node_sound_wood_defaults())
+