diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm
index ce63ce7e439..acfc63db39c 100644
--- a/code/game/objects/items/stacks/medical.dm
+++ b/code/game/objects/items/stacks/medical.dm
@@ -340,11 +340,13 @@ Contains:
/obj/item/stack/medical/splint
name = "medical splints"
+ desc = "Modular splints capable of supporting and immobilizing bones in both limbs and appendages."
singular_name = "medical splint"
icon_state = "splint"
amount = 5
max_amount = 5
drop_sound = 'sound/items/drop/hat.ogg'
+ var/list/splintable_organs = list("l_arm","r_arm","l_leg","r_leg", "l_hand", "r_hand", "r_foot", "l_foot")
/obj/item/stack/medical/splint/attack(mob/living/carbon/M as mob, mob/user as mob)
if(..())
@@ -354,7 +356,7 @@ Contains:
var/mob/living/carbon/human/H = M
var/obj/item/organ/external/affecting = H.get_organ(user.zone_sel.selecting)
var/limb = affecting.name
- if(!(affecting.limb_name in list("l_arm","r_arm","l_leg","r_leg", "l_hand", "r_hand", "r_foot", "l_foot")))
+ if(!(affecting.limb_name in splintable_organs))
to_chat(user, "You can't apply a splint there!")
return
if(affecting.status & ORGAN_SPLINTED)
@@ -381,3 +383,10 @@ Contains:
return
+/obj/item/stack/medical/splint/makeshift
+ name = "makeshift splints"
+ singular_name = "makeshift splint"
+ desc = "For holding your limbs in place with duct tape and scrap metal."
+ icon_state = "tape-splint"
+ amount = 1
+ splintable_organs = list("l_arm","r_arm","l_leg","r_leg")
\ No newline at end of file
diff --git a/code/game/objects/items/stacks/rods.dm b/code/game/objects/items/stacks/rods.dm
index 85301a1834d..5c5798246bb 100644
--- a/code/game/objects/items/stacks/rods.dm
+++ b/code/game/objects/items/stacks/rods.dm
@@ -71,4 +71,14 @@ var/global/list/datum/stack_recipe/rod_recipes = list(
if (!R && replace)
user.put_in_hands(new_item)
return
+
+ if (istype(W, /obj/item/weapon/tape_roll))
+ var/obj/item/stack/medical/splint/makeshift/new_splint = new(user.loc)
+ new_splint.add_fingerprint(user)
+
+ user.visible_message("\The [user] constructs \a [new_splint] out of a [singular_name].", \
+ "You use make \a [new_splint] out of a [singular_name].")
+ use(1)
+ return
+
..()
diff --git a/html/changelogs/alberyk-splint.yml b/html/changelogs/alberyk-splint.yml
new file mode 100644
index 00000000000..09a19d06a0d
--- /dev/null
+++ b/html/changelogs/alberyk-splint.yml
@@ -0,0 +1,6 @@
+author: Alberyk
+
+delete-after: True
+
+changes:
+ - rscadd: "Ported makeshift splints, you can make them with rods and duct tape."
\ No newline at end of file
diff --git a/icons/obj/stacks/medical.dmi b/icons/obj/stacks/medical.dmi
index 94c2d94989f..d77b105ee2a 100644
Binary files a/icons/obj/stacks/medical.dmi and b/icons/obj/stacks/medical.dmi differ