diff --git a/code/game/objects/items/stacks/sheets/mineral.dm b/code/game/objects/items/stacks/sheets/mineral.dm
index 611ef76eb4..f32fc2cea4 100644
--- a/code/game/objects/items/stacks/sheets/mineral.dm
+++ b/code/game/objects/items/stacks/sheets/mineral.dm
@@ -29,6 +29,7 @@ Mineral Sheets
GLOBAL_LIST_INIT(sandstone_recipes, list ( \
new/datum/stack_recipe("pile of dirt", /obj/machinery/hydroponics/soil, 3, time = 10, one_per_turf = 1, on_floor = 1), \
new/datum/stack_recipe("sandstone door", /obj/structure/mineral_door/sandstone, 10, one_per_turf = 1, on_floor = 1), \
+ new/datum/stack_recipe("aesthetic volcanic floor tile", /obj/item/stack/tile/basalt, 2, 2, 4, 20), \
new/datum/stack_recipe("Assistant Statue", /obj/structure/statue/sandstone/assistant, 5, one_per_turf = 1, on_floor = 1), \
new/datum/stack_recipe("Breakdown into sand", /obj/item/weapon/ore/glass, 1, one_per_turf = 0, on_floor = 1), \
/* new/datum/stack_recipe("sandstone wall", ???), \
diff --git a/code/game/objects/items/stacks/tiles/tile_types.dm b/code/game/objects/items/stacks/tiles/tile_types.dm
index f2432cee3d..1737699e5b 100644
--- a/code/game/objects/items/stacks/tiles/tile_types.dm
+++ b/code/game/objects/items/stacks/tiles/tile_types.dm
@@ -88,6 +88,14 @@
turf_type = /turf/open/floor/wood
resistance_flags = FLAMMABLE
+//Basalt
+/obj/item/stack/tile/basalt
+ name = "basalt tile"
+ singular_name = "basalt floor tile"
+ desc = "Artificially made ashy soil themed on a hostile enviroment."
+ icon_state = "tile_basalt"
+ origin_tech = "materials=1"
+ turf_type = /turf/open/floor/grass/fakebasalt
//Carpets
/obj/item/stack/tile/carpet
diff --git a/code/game/turfs/simulated/floor/fancy_floor.dm b/code/game/turfs/simulated/floor/fancy_floor.dm
index eaba3d50eb..cce7756892 100644
--- a/code/game/turfs/simulated/floor/fancy_floor.dm
+++ b/code/game/turfs/simulated/floor/fancy_floor.dm
@@ -1,6 +1,7 @@
/* In this file:
* Wood floor
* Grass floor
+ * Fake Basalt
* Carpet floor
* Fake pits
* Fake space
@@ -67,6 +68,7 @@
broken_states = list("sand")
flags = NONE
var/ore_type = /obj/item/weapon/ore/glass
+ var/turfverb = "uproot"
/turf/open/floor/grass/Initialize()
..()
@@ -76,7 +78,7 @@
if(istype(C, /obj/item/weapon/shovel) && params)
new ore_type(src)
new ore_type(src) //Make some sand if you shovel grass
- user.visible_message("[user] digs up [src].", "You uproot [src].")
+ user.visible_message("[user] digs up [src].", "You [src.turfverb] [src].")
playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1)
make_plating()
if(..())
@@ -93,7 +95,6 @@
initial_gas_mix = "o2=22;n2=82;TEMP=180"
slowdown = 2
-
/turf/open/floor/grass/snow/attackby(obj/item/W, mob/user, params)
if(istype(W, /obj/item/weapon/crowbar))//You need to dig this turf out instead of crowbarring it
return
@@ -113,6 +114,24 @@
icon_state = "basalt[rand(0, 12)]"
set_basalt_light(src)
+
+/turf/open/floor/grass/fakebasalt //Heart is not a real planeteer power
+ name = "aesthetic volcanic flooring"
+ desc = "Safely recreated turf for your hellplanet-scaping"
+ icon = 'icons/turf/floors.dmi'
+ icon_state = "basalt"
+ floor_tile = /obj/item/stack/tile/basalt
+ ore_type = /obj/item/weapon/ore/glass/basalt
+ turfverb = "dig up"
+ slowdown = 0
+
+/turf/open/floor/grass/fakebasalt/Initialize()
+ ..()
+ if(prob(15))
+ icon_state = "basalt[rand(0, 12)]"
+ set_basalt_light(src)
+
+
/turf/open/floor/carpet
name = "carpet"
desc = "Soft velvet carpeting. Feels good between your toes."
diff --git a/icons/obj/tiles.dmi b/icons/obj/tiles.dmi
index d629cfe24d..5a8afeee51 100644
Binary files a/icons/obj/tiles.dmi and b/icons/obj/tiles.dmi differ