diff --git a/_maps/RandomZLevels/away_mission/research.dmm b/_maps/RandomZLevels/away_mission/research.dmm
index e73fa81501..6acf819cc4 100644
--- a/_maps/RandomZLevels/away_mission/research.dmm
+++ b/_maps/RandomZLevels/away_mission/research.dmm
@@ -6417,7 +6417,6 @@
/area/awaymission/research/interior/maint)
"Hs" = (
/obj/structure/table/wood,
-/obj/item/book/granter/crafting_recipe/bone_bow,
/turf/open/floor/mineral/plasma,
/area/space/nearstation)
"Km" = (
diff --git a/_maps/map_files/Mining/Lavaland.dmm b/_maps/map_files/Mining/Lavaland.dmm
index 296075346f..161c939ce7 100644
--- a/_maps/map_files/Mining/Lavaland.dmm
+++ b/_maps/map_files/Mining/Lavaland.dmm
@@ -1208,6 +1208,7 @@
/obj/structure/stone_tile{
dir = 1
},
+/mob/living/simple_animal/hostile/megafauna/gladiator,
/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
/area/lavaland/surface/outdoors)
"mG" = (
@@ -1978,13 +1979,6 @@
/obj/structure/stone_tile,
/turf/open/indestructible/boss,
/area/ruin/unpowered/ash_walkers)
-"DQ" = (
-/obj/structure/stone_tile{
- dir = 4
- },
-/obj/item/book/granter/crafting_recipe/bone_bow,
-/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
-/area/lavaland/surface/outdoors)
"Ef" = (
/obj/structure/stone_tile/block/cracked,
/turf/open/lava/smooth{
@@ -2081,11 +2075,6 @@
},
/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
/area/ruin/unpowered/ash_walkers)
-"IJ" = (
-/obj/structure/stone_tile/slab/cracked,
-/mob/living/simple_animal/hostile/megafauna/gladiator,
-/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
-/area/lavaland/surface/outdoors)
"Jq" = (
/obj/structure/stone_tile/slab/cracked,
/obj/effect/decal/cleanable/blood,
@@ -2311,7 +2300,6 @@
},
/obj/structure/table/wood,
/obj/item/kitchen/knife/combat/bone,
-/obj/item/book/granter/crafting_recipe/bone_bow,
/turf/open/indestructible/boss,
/area/ruin/unpowered/ash_walkers)
"TN" = (
@@ -2406,7 +2394,6 @@
/area/ruin/unpowered/ash_walkers)
"WA" = (
/obj/structure/stone_tile/block/cracked,
-/obj/item/book/granter/crafting_recipe/bone_bow,
/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
/area/ruin/unpowered/ash_walkers)
"WL" = (
@@ -34953,7 +34940,7 @@ ma
lq
mk
mn
-IJ
+kR
mF
ab
mG
@@ -57301,7 +57288,7 @@ jS
jS
KV
ab
-DQ
+jx
aa
aa
ab
diff --git a/code/datums/components/crafting/recipes/recipes_primal.dm b/code/datums/components/crafting/recipes/recipes_primal.dm
index aaae94df1d..73401a4198 100644
--- a/code/datums/components/crafting/recipes/recipes_primal.dm
+++ b/code/datums/components/crafting/recipes/recipes_primal.dm
@@ -93,7 +93,6 @@
/datum/crafting_recipe/quiver
name = "Quiver"
- always_availible = FALSE
result = /obj/item/storage/belt/quiver
time = 80
reqs = list(/obj/item/stack/sheet/leather = 3,
@@ -104,19 +103,18 @@
name = "Bone Bow"
result = /obj/item/gun/ballistic/bow/ashen
time = 120 // 80+120 = 200
- always_availible = FALSE
reqs = list(/obj/item/stack/sheet/bone = 8,
/obj/item/stack/sheet/sinew = 4)
category = CAT_PRIMAL
-/datum/crafting_recipe/bow_tablet
+/*/datum/crafting_recipe/bow_tablet
name = "Sandstone Bow Making Manual"
result = /obj/item/book/granter/crafting_recipe/bone_bow
time = 200 //Scribing // don't care
always_availible = FALSE
reqs = list(/obj/item/stack/rods = 1,
/obj/item/stack/sheet/mineral/sandstone = 4)
- category = CAT_PRIMAL
+ category = CAT_PRIMAL*/
/datum/crafting_recipe/rib
name = "Collosal Rib"
@@ -154,3 +152,158 @@
/obj/item/shovel/spade = 1)
result = /obj/item/shovel/serrated
category = CAT_PRIMAL
+
+/datum/crafting_recipe/bone_screwdriver
+ name = "Bone Screwdriver"
+ result = /obj/item/screwdriver/ashwalker
+ time = 80
+ reqs = list(/obj/item/stack/sheet/bone = 2,
+ /obj/item/stack/sheet/sinew = 1)
+ category = CAT_PRIMAL
+
+/datum/crafting_recipe/bone_crowbar
+ name = "Bone Crowbar"
+ result = /obj/item/crowbar/ashwalker
+ time = 80
+ reqs = list(/obj/item/stack/sheet/bone = 2,
+ /obj/item/stack/sheet/sinew = 1)
+ category = CAT_PRIMAL
+
+/datum/crafting_recipe/bone_cutters
+ name = "Bone Wirecutters"
+ result = /obj/item/wirecutters/ashwalker
+ time = 80
+ reqs = list(/obj/item/stack/sheet/bone = 2,
+ /obj/item/stack/sheet/sinew = 2)
+ category = CAT_PRIMAL
+
+/datum/crafting_recipe/bone_wrench
+ name = "Bone Wrench"
+ result = /obj/item/wrench/ashwalker
+ time = 80
+ reqs = list(/obj/item/stack/sheet/bone = 2,
+ /obj/item/stack/sheet/sinew = 1)
+ category = CAT_PRIMAL
+
+/datum/crafting_recipe/necropolis_welding
+ name = "Necropolis Welding Torch"
+ result = /obj/item/weldingtool/experimental/ashwalker
+ time = 120
+ reqs = list(/obj/item/stack/sheet/bone = 2,
+ /obj/item/stack/sheet/sinew = 2,
+ /obj/item/organ/regenerative_core = 1)
+ category = CAT_PRIMAL
+
+/datum/crafting_recipe/tribalbelt
+ name = "Hunter's Belt"
+ result = /obj/item/storage/belt/mining/primitive
+ time = 80
+ reqs = list(/obj/item/stack/sheet/sinew = 4)
+ category = CAT_PRIMAL
+
+/datum/crafting_recipe/goliath_gloves
+ name = "Goliath Gloves"
+ result = /obj/item/clothing/gloves/tackler/combat/goliath
+ time = 80
+ reqs = list(/obj/item/stack/sheet/sinew = 2,
+ /obj/item/stack/sheet/animalhide/goliath_hide = 2,
+ /obj/item/stack/sheet/cloth = 2,
+ /obj/item/stack/sheet/leather = 2)
+ category = CAT_PRIMAL
+
+/datum/crafting_recipe/goliath_drapes
+ name = "Goliath Drapes"
+ result = /obj/item/surgical_drapes/goliath
+ time = 80
+ reqs = list(/obj/item/stack/sheet/sinew = 1,
+ /obj/item/stack/sheet/animalhide/goliath_hide = 1)
+ category = CAT_PRIMAL
+
+/datum/crafting_recipe/diamond_scalpel
+ name = "Diamond Scalpel"
+ result = /obj/item/scalpel/ashwalker
+ time = 80
+ reqs = list(/obj/item/stack/sheet/bone = 2,
+ /obj/item/stack/sheet/sinew = 1,
+ /obj/item/stack/sheet/mineral/diamond = 1)
+ category = CAT_PRIMAL
+
+/datum/crafting_recipe/bone_retractor
+ name = "Bone Retractor"
+ result = /obj/item/retractor/ashwalker
+ time = 80
+ reqs = list(/obj/item/stack/sheet/bone = 2,
+ /obj/item/stack/sheet/sinew = 1)
+ category = CAT_PRIMAL
+
+/datum/crafting_recipe/diamond_bonesaw
+ name = "Diamond Bonesaw"
+ result = /obj/item/circular_saw/ashwalker
+ time = 80
+ reqs = list(/obj/item/stack/sheet/bone = 2,
+ /obj/item/stack/sheet/sinew = 1,
+ /obj/item/organ/regenerative_core = 1,
+ /obj/item/stack/sheet/mineral/diamond = 2)
+ category = CAT_PRIMAL
+
+/datum/crafting_recipe/femurstat
+ name = "Bone Hemostat"
+ result = /obj/item/hemostat/ashwalker
+ time = 80
+ reqs = list(/obj/item/stack/sheet/bone = 2,
+ /obj/item/stack/sheet/sinew = 1)
+ category = CAT_PRIMAL
+
+/datum/crafting_recipe/bone_bonesetter
+ name = "Bone Bonersetter"
+ result = /obj/item/bonesetter/bone
+ time = 80
+ reqs = list(/obj/item/stack/sheet/bone = 2,
+ /obj/item/stack/sheet/sinew = 1)
+ category = CAT_PRIMAL
+
+/datum/crafting_recipe/coretery
+ name = "Necropolis Cautery"
+ result = /obj/item/cautery/ashwalker
+ time = 80
+ reqs = list(/obj/item/stack/sheet/bone = 1,
+ /obj/item/stack/sheet/animalhide/goliath_hide = 1,
+ /obj/item/organ/regenerative_core = 1)
+ category = CAT_PRIMAL
+
+/datum/crafting_recipe/bone_spade
+ name = "Bone Spade"
+ result = /obj/item/shovel/spade/bone
+ time = 80
+ reqs = list(/obj/item/stack/sheet/bone = 1,
+ /obj/item/stack/sheet/sinew = 1)
+ category = CAT_PRIMAL
+
+/datum/crafting_recipe/bone_hatchet
+ name = "Bone Hatchet"
+ result = /obj/item/hatchet/bone
+ time = 80
+ reqs = list(/obj/item/stack/sheet/bone = 1,
+ /obj/item/stack/sheet/sinew = 1)
+ category = CAT_PRIMAL
+
+/datum/crafting_recipe/bone_cultivator
+ name = "Bone Cultivator"
+ result = /obj/item/cultivator/bone
+ time = 80
+ reqs = list(/obj/item/stack/sheet/bone = 2,
+ /obj/item/stack/sheet/sinew = 1)
+ category = CAT_PRIMAL
+
+/datum/crafting_recipe/bone_glaive
+ name = "Necropolis Glaive"
+ result = /obj/item/kinetic_crusher/glaive/bone
+ time = 120
+ reqs = list(/obj/item/stack/sheet/bone = 2,
+ /obj/item/stack/sheet/mineral/wood = 4,
+ /obj/item/stack/sheet/sinew = 4,
+ /obj/item/organ/regenerative_core = 2,
+ /obj/item/stack/sheet/mineral/diamond = 2,
+ /obj/item/stack/sheet/animalhide/goliath_hide = 2,
+ /obj/item/stack/sheet/leather = 2)
+ category = CAT_PRIMAL
diff --git a/code/datums/components/crafting/recipes/recipes_weapon_and_ammo.dm b/code/datums/components/crafting/recipes/recipes_weapon_and_ammo.dm
index 01ad269a8e..87ec5cdaab 100644
--- a/code/datums/components/crafting/recipes/recipes_weapon_and_ammo.dm
+++ b/code/datums/components/crafting/recipes/recipes_weapon_and_ammo.dm
@@ -335,7 +335,6 @@
name = "Bone Arrow"
result = /obj/item/ammo_casing/caseless/arrow/bone
time = 5
- always_availible = FALSE
reqs = list(/obj/item/stack/sheet/bone = 1,
/obj/item/stack/sheet/sinew = 1,
/obj/item/ammo_casing/caseless/arrow/ash = 1)
@@ -347,7 +346,6 @@
result = /obj/item/ammo_casing/caseless/arrow/ash
tools = list(TOOL_WELDER)
time = 10 // 1.5 seconds minimum per actually worthwhile arrow excluding interface lag
- always_availible = FALSE
reqs = list(/obj/item/ammo_casing/caseless/arrow/wood = 1)
category = CAT_WEAPONRY
subcategory = CAT_AMMO
diff --git a/code/game/objects/items/granters.dm b/code/game/objects/items/granters.dm
index 6ab12b7e39..d1450c2685 100644
--- a/code/game/objects/items/granters.dm
+++ b/code/game/objects/items/granters.dm
@@ -535,13 +535,13 @@
oneuse = FALSE
remarks = list("Looks like these would sell much better in a plasma fire...", "Using glass bowls rather then cones?", "Mixing soda and ice-cream?", "Tall glasses with of liquids and solids...", "Just add a bit of icecream and cherry on top?")
-/obj/item/book/granter/crafting_recipe/bone_bow //Bow crafting for non-ashwalkers
+/*/obj/item/book/granter/crafting_recipe/bone_bow //Bow crafting for non-ashwalkers
name = "bowyery sandstone slab" // this is an actual word
desc = "A sandstone slab with inscriptions describing the Ash Walkers of Lavaland's bowyery."
crafting_recipe_types = list(/datum/crafting_recipe/bone_arrow, /datum/crafting_recipe/bone_bow, /datum/crafting_recipe/ashen_arrow, /datum/crafting_recipe/quiver, /datum/crafting_recipe/bow_tablet)
icon_state = "stone_tablet"
oneuse = FALSE
- remarks = list("Sticking burning arrows into the sand makes them stronger...", "Breaking the bone apart to get shards, not sharpening the bone...", "Sinew is just like rope...")
+ remarks = list("Sticking burning arrows into the sand makes them stronger...", "Breaking the bone apart to get shards, not sharpening the bone...", "Sinew is just like rope...")*/
/obj/item/book/granter/crafting_recipe/under_the_oven //Illegal cook book
name = "Under The Oven"
diff --git a/code/game/objects/items/storage/belt.dm b/code/game/objects/items/storage/belt.dm
index 9c3d776b56..e30ec783bf 100755
--- a/code/game/objects/items/storage/belt.dm
+++ b/code/game/objects/items/storage/belt.dm
@@ -312,7 +312,7 @@
/obj/item/storage/belt/mining/primitive/ComponentInitialize()
. = ..()
var/datum/component/storage/STR = GetComponent(/datum/component/storage)
- STR.max_items = 5
+ STR.max_items = 8
/obj/item/storage/belt/soulstone
name = "soul stone belt"
diff --git a/code/game/objects/items/tools/crowbar.dm b/code/game/objects/items/tools/crowbar.dm
index 06cdc335cd..0628960c97 100644
--- a/code/game/objects/items/tools/crowbar.dm
+++ b/code/game/objects/items/tools/crowbar.dm
@@ -41,6 +41,13 @@
/obj/item/crowbar/brass/family
toolspeed = 1
+/obj/item/crowbar/ashwalker
+ name = "bone crowbar"
+ desc = "A rudimentary crowbar made of bones."
+ icon = 'icons/obj/mining.dmi'
+ icon_state = "crowbar_bone"
+ toolspeed = 0.75
+
/obj/item/crowbar/bronze
name = "bronze plated crowbar"
desc = "A bronze plated crowbar."
diff --git a/code/game/objects/items/tools/screwdriver.dm b/code/game/objects/items/tools/screwdriver.dm
index 35fd38cb9e..95f16b18e9 100644
--- a/code/game/objects/items/tools/screwdriver.dm
+++ b/code/game/objects/items/tools/screwdriver.dm
@@ -93,6 +93,14 @@
/obj/item/screwdriver/brass/family
toolspeed = 1
+/obj/item/screwdriver/ashwalker
+ name = "bone screwdriver"
+ desc = "A rudimentary screwdriver made of carved bones."
+ icon = 'icons/obj/mining.dmi'
+ icon_state = "screwdriver_bone"
+ toolspeed = 0.75
+ random_color = FALSE
+
/obj/item/screwdriver/bronze
name = "bronze screwdriver"
desc = "A screwdriver plated with bronze."
diff --git a/code/game/objects/items/tools/weldingtool.dm b/code/game/objects/items/tools/weldingtool.dm
index 98889485b6..13c3c100b5 100644
--- a/code/game/objects/items/tools/weldingtool.dm
+++ b/code/game/objects/items/tools/weldingtool.dm
@@ -385,6 +385,16 @@
icon_state = "clockwelder"
item_state = "brasswelder"
+/obj/item/weldingtool/experimental/ashwalker
+ name = "necropolis welding torch"
+ desc = "A mysterious welding tool with its origins in the depths of the necropolis. A mysterious force keeps replenishing its fuel."
+ resistance_flags = FIRE_PROOF | ACID_PROOF
+ refueling_interval = 5
+ toolspeed = 0.75
+ max_fuel = 20
+ icon = 'icons/obj/mining.dmi'
+ icon_state = "ashwelder"
+
/obj/item/weldingtool/abductor
name = "alien welding tool"
desc = "An alien welding tool. Whatever fuel it uses, it never runs out."
diff --git a/code/game/objects/items/tools/wirecutters.dm b/code/game/objects/items/tools/wirecutters.dm
index 08ada6b25f..76cb680c27 100644
--- a/code/game/objects/items/tools/wirecutters.dm
+++ b/code/game/objects/items/tools/wirecutters.dm
@@ -90,6 +90,14 @@
/obj/item/wirecutters/brass/family
toolspeed = 1
+/obj/item/wirecutters/ashwalker
+ name = "bone wirecutters"
+ desc = "Rudimentary wirecutters made out of sharpened bones and sinew."
+ icon = 'icons/obj/mining.dmi'
+ icon_state = "cutters_bone"
+ toolspeed = 0.75
+ random_color = FALSE
+
/obj/item/wirecutters/bronze
name = "bronze plated wirecutters"
desc = "A pair of wirecutters plated with bronze."
diff --git a/code/game/objects/items/tools/wrench.dm b/code/game/objects/items/tools/wrench.dm
index 3048fd83d6..bede99d9cf 100644
--- a/code/game/objects/items/tools/wrench.dm
+++ b/code/game/objects/items/tools/wrench.dm
@@ -44,6 +44,13 @@
/obj/item/wrench/brass/family
toolspeed = 1
+/obj/item/wrench/ashwalker
+ name = "bone wrench"
+ desc = "A shoddy wrench made out of bent bones and sinew."
+ icon = 'icons/obj/mining.dmi'
+ icon_state = "wrench_bone"
+ toolspeed = 0.75
+
/obj/item/wrench/bronze
name = "bronze plated wrench"
desc = "A bronze plated wrench."
diff --git a/code/game/objects/structures/ghost_role_spawners.dm b/code/game/objects/structures/ghost_role_spawners.dm
index f5746d6ae7..40af75002f 100644
--- a/code/game/objects/structures/ghost_role_spawners.dm
+++ b/code/game/objects/structures/ghost_role_spawners.dm
@@ -66,12 +66,6 @@
//Ash walkers on birth understand how to make bone bows, bone arrows and ashen arrows
- new_spawn.mind.teach_crafting_recipe(/datum/crafting_recipe/bone_arrow)
- new_spawn.mind.teach_crafting_recipe(/datum/crafting_recipe/bone_bow)
- new_spawn.mind.teach_crafting_recipe(/datum/crafting_recipe/ashen_arrow)
- new_spawn.mind.teach_crafting_recipe(/datum/crafting_recipe/quiver)
- new_spawn.mind.teach_crafting_recipe(/datum/crafting_recipe/bow_tablet)
-
if(ishuman(new_spawn))
var/mob/living/carbon/human/H = new_spawn
H.underwear = "Nude"
@@ -634,9 +628,9 @@
log_game("[key_name(user)] has successfully pried open [src] and disabled a space pirate spawner.")
W.play_tool_sound(src)
playsound(src.loc, 'modular_citadel/sound/voice/scream_skeleton.ogg', 50, 1, 4, 1.2)
- if(rank == "Captain")
+ if(rank == "Captain")
new /obj/effect/mob_spawn/human/pirate/corpse/captain(get_turf(src))
- else
+ else
new /obj/effect/mob_spawn/human/pirate/corpse(get_turf(src))
qdel(src)
else
diff --git a/code/modules/cargo/exports/weapons.dm b/code/modules/cargo/exports/weapons.dm
index c973ceed26..42cd1dccea 100644
--- a/code/modules/cargo/exports/weapons.dm
+++ b/code/modules/cargo/exports/weapons.dm
@@ -211,11 +211,6 @@
unit_name = "arrow"
export_types = list(/obj/item/ammo_casing/caseless/arrow, /obj/item/ammo_casing/caseless/arrow/bone, /obj/item/ammo_casing/caseless/arrow/ash)
-/datum/export/weapon/bow_teaching
- cost = 500
- unit_name = "bowyery tablet"
- export_types = list(/obj/item/book/granter/crafting_recipe/bone_bow)
-
/datum/export/weapon/quiver
cost = 100
unit_name = "quiver"
diff --git a/code/modules/clothing/gloves/tacklers.dm b/code/modules/clothing/gloves/tacklers.dm
index eda36ea12f..30e9d487e0 100644
--- a/code/modules/clothing/gloves/tacklers.dm
+++ b/code/modules/clothing/gloves/tacklers.dm
@@ -67,6 +67,20 @@
resistance_flags = NONE
strip_mod = 1.2 // because apparently black gloves had this
+/obj/item/clothing/gloves/tackler/combat/goliath
+ name = "goliath gloves"
+ desc = "Rudimentary tackling gloves. The goliath hide makes it great for grappling with targets, while also being fireproof."
+ icon = 'icons/obj/mining.dmi'
+ icon_state = "goligloves"
+ item_state = "goligloves"
+
+ tackle_stam_cost = 25
+ base_knockdown = 1 SECONDS
+ tackle_range = 5
+ tackle_speed = 2
+ min_distance = 2
+ skill_mod = 1
+
/obj/item/clothing/gloves/tackler/combat/insulated
name = "guerrilla gloves"
desc = "Superior quality combative gloves, good for performing tackle takedowns as well as absorbing electrical shocks."
diff --git a/code/modules/hydroponics/hydroitemdefines.dm b/code/modules/hydroponics/hydroitemdefines.dm
index b032b84a77..798cd9a2f6 100644
--- a/code/modules/hydroponics/hydroitemdefines.dm
+++ b/code/modules/hydroponics/hydroitemdefines.dm
@@ -84,6 +84,12 @@
user.visible_message("[user] is scratching [user.p_their()] back as hard as [user.p_they()] can with \the [src]! It looks like [user.p_theyre()] trying to commit suicide!")
return (BRUTELOSS)
+/obj/item/cultivator/bone
+ name = "bone cultivator"
+ desc = "A handle and a few bones tied together to resemble a hoe. Should work for removing weeds."
+ icon = 'icons/obj/mining.dmi'
+ icon_state = "cultivator_bone"
+
/obj/item/hatchet
name = "hatchet"
desc = "A very sharp axe blade upon a short fibremetal handle. It has a long history of chopping things, but now it is used for chopping wood."
@@ -112,6 +118,12 @@
playsound(src, 'sound/weapons/bladeslice.ogg', 50, 1, -1)
return (BRUTELOSS)
+/obj/item/hatchet/bone
+ name = "bone hatchet"
+ desc = "A primitive hatchet made out of mostly bone, with some sinew to keep it together. It just might do for cutting logs into planks."
+ icon = 'icons/obj/mining.dmi'
+ icon_state = "hatchet_bone"
+
/obj/item/scythe
icon_state = "scythe0"
lefthand_file = 'icons/mob/inhands/weapons/polearms_lefthand.dmi'
diff --git a/code/modules/mining/equipment/kinetic_crusher.dm b/code/modules/mining/equipment/kinetic_crusher.dm
index ddec9232ce..45f1b1d94e 100644
--- a/code/modules/mining/equipment/kinetic_crusher.dm
+++ b/code/modules/mining/equipment/kinetic_crusher.dm
@@ -228,6 +228,13 @@
/obj/item/kinetic_crusher/glaive/update_icon_state()
item_state = "crusher[wielded]-glaive" // this is not icon_state and not supported by 2hcomponent
+/obj/item/kinetic_crusher/glaive/bone
+ name = "necropolis bone glaive"
+ desc = "Tribals trying to immitate technology have spent a long time to somehow assemble bits and pieces to work together just like the real thing. \
+ Although it does take a lot of effort and luck to create, it was a success."
+ icon_state = "crusher-bone"
+ item_state = "crusher0-bone"
+
//destablizing force
/obj/item/projectile/destabilizer
name = "destabilizing force"
diff --git a/code/modules/mining/equipment/mining_tools.dm b/code/modules/mining/equipment/mining_tools.dm
index 31ee37c3b0..bb0ac0f957 100644
--- a/code/modules/mining/equipment/mining_tools.dm
+++ b/code/modules/mining/equipment/mining_tools.dm
@@ -179,6 +179,12 @@
custom_materials = list(/datum/material/iron=50)
w_class = WEIGHT_CLASS_SMALL
+/obj/item/shovel/spade/bone
+ name = "bone spade"
+ desc = "A bone spade, suitable for digging and moving dirt."
+ icon_state = "spade_bone"
+ toolspeed = 0.75
+
/obj/item/shovel/serrated
name = "serrated bone shovel"
desc = "A wicked tool that cleaves through dirt just as easily as it does flesh. The design was styled after ancient lavaland tribal designs."
diff --git a/code/modules/surgery/tools.dm b/code/modules/surgery/tools.dm
index 0f1004221c..5c7b71b779 100644
--- a/code/modules/surgery/tools.dm
+++ b/code/modules/surgery/tools.dm
@@ -48,6 +48,13 @@
w_class = WEIGHT_CLASS_TINY
toolspeed = 0.5
+/obj/item/retractor/ashwalker
+ name = "bontractor"
+ desc = "Kinda looks like a chicken bone."
+ icon = 'icons/obj/mining.dmi'
+ icon_state = "retractor_bone"
+ toolspeed = 0.85
+
/obj/item/hemostat
name = "hemostat"
desc = "You think you have seen this before."
@@ -78,6 +85,14 @@
toolspeed = 0.5
attack_verb = list("attacked", "pinched")
+/obj/item/hemostat/ashwalker
+ name = "femurstat"
+ desc = "Bones that are strapped together with sinews. Used to stop bleeding."
+ icon = 'icons/obj/mining.dmi'
+ icon_state = "hemostat_bone"
+ toolspeed = 0.85
+
+
/obj/item/cautery
name = "cautery"
desc = "This stops bleeding."
@@ -108,6 +123,13 @@
toolspeed = 0.5
attack_verb = list("burnt")
+/obj/item/cautery/ashwalker
+ name = "coretery"
+ desc = "A legion core strapped to a bone. It can close wounds."
+ icon = 'icons/obj/mining.dmi'
+ icon_state = "cautery_bone"
+ toolspeed = 0.85
+
/obj/item/surgicaldrill
name = "surgical drill"
desc = "You can drill using this item. You dig?"
@@ -257,6 +279,14 @@
user.visible_message("[user] is slitting [user.p_their()] [pick("wrists", "throat", "stomach")] with [src]! It looks like [user.p_theyre()] trying to commit suicide!")
return (BRUTELOSS)
+/obj/item/scalpel/ashwalker
+ name = "diamond scalpel"
+ desc = "Bones and a Diamond tied together to make a scalpel."
+ icon = 'icons/obj/mining.dmi'
+ icon_state = "scalpel_bone"
+ force = 12
+ toolspeed = 0.85
+
/obj/item/circular_saw
name = "circular saw"
desc = "For heavy duty cutting."
@@ -309,6 +339,14 @@
attack_verb = list("attacked", "slashed", "sawed", "cut")
sharpness = SHARP_EDGED
+/obj/item/circular_saw/ashwalker
+ name = "diamond bonesaw"
+ desc = "Bones designed like a skull, with diamond teeth to cut through bones."
+ icon = 'icons/obj/mining.dmi'
+ icon_state = "saw_bone"
+ force = 12
+ toolspeed = 0.85
+
/obj/item/surgical_drapes
name = "surgical drapes"
desc = "Nanotrasen brand surgical drapes provide optimal safety and infection control."
@@ -341,6 +379,13 @@
prototype = SSresearch.techweb_design_by_id(id)
. |= prototype.surgery
+
+/obj/item/surgical_drapes/goliath
+ name = "goliath drapes"
+ desc = "Probably not the most hygienic but what the heck else are you gonna use?"
+ icon = 'icons/obj/mining.dmi'
+ icon_state = "surgical_drapes_goli"
+
/obj/item/organ_storage //allows medical cyborgs to manipulate organs without hands
name = "organ storage bag"
desc = "A container for holding body parts."
@@ -433,3 +478,10 @@
to_chat(user, "You refrain from hitting [L] with [src], as you are in help intent.")
return
return ..()
+
+/obj/item/bonesetter/bone
+ name = "bone bonesetter"
+ desc = "A bonesetter made of bones... for setting bones with... bones?"
+ icon = 'icons/obj/mining.dmi'
+ icon_state = "bone setter_bone"
+ toolspeed = 0.85
diff --git a/icons/mob/clothing/hands.dmi b/icons/mob/clothing/hands.dmi
index 28f28edaca..38f1d8e0af 100644
Binary files a/icons/mob/clothing/hands.dmi and b/icons/mob/clothing/hands.dmi differ
diff --git a/icons/mob/inhands/weapons/hammers_lefthand.dmi b/icons/mob/inhands/weapons/hammers_lefthand.dmi
index 023dfeed89..988d64fde3 100644
Binary files a/icons/mob/inhands/weapons/hammers_lefthand.dmi and b/icons/mob/inhands/weapons/hammers_lefthand.dmi differ
diff --git a/icons/mob/inhands/weapons/hammers_righthand.dmi b/icons/mob/inhands/weapons/hammers_righthand.dmi
index f87d8c9b46..1e0e7c91bf 100644
Binary files a/icons/mob/inhands/weapons/hammers_righthand.dmi and b/icons/mob/inhands/weapons/hammers_righthand.dmi differ
diff --git a/icons/obj/mining.dmi b/icons/obj/mining.dmi
index b84b195d14..f70f110078 100644
Binary files a/icons/obj/mining.dmi and b/icons/obj/mining.dmi differ