diff --git a/mapgen_v7n.lua b/mapgen_v7n.lua
index 75e30569da07e19a51fd22cd965edc14e60c5602..2d5c0ca27bca8b9bbddeb4d8e316168994f73eb6 100644
--- a/mapgen_v7n.lua
+++ b/mapgen_v7n.lua
@@ -758,7 +758,17 @@ minetest.register_decoration({
 	sidelen = 80,
 	fill_ratio = 0.20,
 	biomes = {"fiery"},
-	decoration = "ethereal:dry_shrub",
+	decoration = {"ethereal:dry_shrub"},
+})
+
+-- fire flower
+minetest.register_decoration({
+	deco_type = "simple",
+	place_on = "ethereal:fiery_dirt",
+	sidelen = 80,
+	fill_ratio = 0.02,
+	biomes = {"fiery"},
+	decoration = {"ethereal:fire_flower"},
 })
 
 -- snowy grass
diff --git a/plantlife.lua b/plantlife.lua
index 44e52819148f43b0e48c1e9b09ed055ef150b349..5a444fe866207ec3d93fe186abd7ae5b08e0943d 100644
--- a/plantlife.lua
+++ b/plantlife.lua
@@ -1,3 +1,31 @@
+-- Fire Flower
+minetest.register_node("ethereal:fire_flower", {
+	description = "Fire Flower",
+	drawtype = "plantlike",
+	tiles = { "ethereal_fire_flower.png" },
+	inventory_image = "ethereal_fire_flower.png",
+	wield_image = "ethereal_fire_flower.png",
+	paramtype = "light",
+	light_source = 5,
+	sunlight_propagates = true,
+	walkable = false,
+	damage_per_second = 2,
+	groups = {snappy = 1, oddly_breakable_by_hand = 3, igniter = 2},
+	sounds = default.node_sound_leaves_defaults(),
+	selection_box = {
+		type = "fixed",
+		fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5},
+	},
+	on_punch = function(pos, node, puncher)
+		--local item = puncher:get_wielded_item()
+		--local itemname = item:get_name()
+		puncher:punch(puncher, 1.0, {
+			full_punch_interval = 1.0,
+			damage_groups = {fleshy = 2}
+		}, nil)
+	end,
+})
+
 -- Fern (boston)
 minetest.register_node("ethereal:fern", {
 	description = "Fern",
diff --git a/textures/ethereal_fire_flower.png b/textures/ethereal_fire_flower.png
new file mode 100644
index 0000000000000000000000000000000000000000..929af748bd4d2542f9efd523f9d7501cc810c1bb
Binary files /dev/null and b/textures/ethereal_fire_flower.png differ