diff --git a/code/_globalvars/lists/maintenance_loot.dm b/code/_globalvars/lists/maintenance_loot.dm
index 849c5248a0..59885b3432 100644
--- a/code/_globalvars/lists/maintenance_loot.dm
+++ b/code/_globalvars/lists/maintenance_loot.dm
@@ -104,5 +104,6 @@ GLOBAL_LIST_INIT(maintenance_loot, list(
/obj/item/weapon/storage/secure/briefcase = 3,
/obj/item/weapon/storage/toolbox/artistic = 2,
/obj/item/toy/eightball = 1,
+ /obj/item/weapon/storage/daki = 3,
"" = 3
))
diff --git a/code/game/objects/items/weapons/storage/dakis.dm b/code/game/objects/items/weapons/storage/dakis.dm
new file mode 100644
index 0000000000..a238304cac
--- /dev/null
+++ b/code/game/objects/items/weapons/storage/dakis.dm
@@ -0,0 +1,48 @@
+//////////////////////////////////
+//dakimakuras
+//////////////////////////////////
+
+/obj/item/weapon/storage/daki
+ name = "dakimakura"
+ desc = "A large pillow depicting a girl in a compromising position. Featuring as many dimensions as you."
+ icon = 'icons/obj/daki.dmi'
+ icon_state = "daki_base"
+ slot_flags = SLOT_BACK
+ storage_slots = 3
+ w_class = 4
+ max_w_class = 3
+ max_combined_w_class = 21
+ var/cooldowntime = 20
+ var/static/list/dakimakura_options = list("Callie","Casca","Chaika","Elisabeth","Foxy Grandpa","Haruko","Holo","Ian","Jolyne","Kurisu","Marie","Mugi","Nar'Sie","Patchouli","Plutia","Rei","Reisen","Naga","Squid","Squigly","Tomoko","Toriel","Umaru","Yaranaika","Yoko") //Kurisu is the ideal girl." - Me, Logos.
+
+/obj/item/weapon/storage/daki/attack_self(mob/living/user)
+ var/body_choice
+ var/custom_name
+
+ if(icon_state == "daki_base")
+ body_choice = input("Pick a body.") in dakimakura_options
+ icon_state = "daki_[body_choice]"
+ custom_name = stripped_input(user, "What's her name?")
+ if(length(custom_name) > MAX_NAME_LEN)
+ to_chat(user,"Name is too long!")
+ return FALSE
+ if(custom_name)
+ name = custom_name
+ desc = "A large pillow depicting [custom_name] in a compromising position. Featuring as many dimensions as you."
+ else
+ switch(user.a_intent)
+ if(INTENT_HELP)
+ user.visible_message("[user] hugs the [name].")
+ playsound(src, "rustle", 50, 1, -5)
+ if(INTENT_DISARM)
+ user.visible_message("[user] kisses the [name].")
+ playsound(src, "rustle", 50, 1, -5)
+ if(INTENT_GRAB)
+ user.visible_message("[user] holds the [name]!")
+ playsound(src, 'sound/items/bikehorn.ogg', 50, 1)
+ if(INTENT_HARM)
+ user.visible_message("[user] punches the [name]!")
+ playsound(src, 'sound/effects/shieldbash.ogg', 50, 1)
+ user.changeNext_move(CLICK_CD_MELEE)
+
+////////////////////////////
diff --git a/code/game/objects/structures/crates_lockers/closets/secure/security.dm b/code/game/objects/structures/crates_lockers/closets/secure/security.dm
index 67989257f2..5e1ea02509 100644
--- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm
+++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm
@@ -11,6 +11,7 @@
else
new /obj/item/weapon/storage/backpack/satchel/cap(src)
new /obj/item/clothing/neck/cloak/cap(src)
+ new /obj/item/weapon/storage/daki(src)
new /obj/item/weapon/storage/backpack/dufflebag/captain(src)
new /obj/item/clothing/head/crown/fancy(src)
new /obj/item/clothing/suit/captunic(src)
diff --git a/icons/obj/daki.dmi b/icons/obj/daki.dmi
new file mode 100644
index 0000000000..2b075f959c
Binary files /dev/null and b/icons/obj/daki.dmi differ
diff --git a/tgstation.dme b/tgstation.dme
index f1150ac026..5558002155 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -873,6 +873,7 @@
#include "code\game\objects\items\weapons\storage\book.dm"
#include "code\game\objects\items\weapons\storage\boxes.dm"
#include "code\game\objects\items\weapons\storage\briefcase.dm"
+#include "code\game\objects\items\weapons\storage\dakis.dm"
#include "code\game\objects\items\weapons\storage\fancy.dm"
#include "code\game\objects\items\weapons\storage\firstaid.dm"
#include "code\game\objects\items\weapons\storage\internal.dm"