diff --git a/code/game/objects/structures/stool_bed_chair_nest/bed.dm b/code/game/objects/structures/stool_bed_chair_nest/bed.dm
index 9971722f11..ad6e3a6ebc 100644
--- a/code/game/objects/structures/stool_bed_chair_nest/bed.dm
+++ b/code/game/objects/structures/stool_bed_chair_nest/bed.dm
@@ -357,3 +357,35 @@
/obj/structure/bed/alien/attackby(obj/item/weapon/W, mob/user)
return // No deconning.
+
+/*
+ * Dirty Mattress
+ */
+/obj/structure/dirtybed
+ name = "dirty mattress"
+ desc = "A stained matress. Guess it's better than sleeping on the floor."
+ icon = 'icons/obj/furniture.dmi'
+ icon_state = "dirtybed"
+ pressure_resistance = 15
+ anchored = TRUE
+ can_buckle = TRUE
+ buckle_dir = SOUTH
+ buckle_lying = 1
+
+/obj/structure/dirtybed/attackby(obj/item/weapon/W as obj, mob/user as mob)
+ if(W.is_wrench())
+ playsound(src, W.usesound, 100, 1)
+ if(anchored)
+ user.visible_message("[user] begins unsecuring \the [src] from the floor.", "You start unsecuring \the [src] from the floor.")
+ else
+ user.visible_message("[user] begins securing \the [src] to the floor.", "You start securing \the [src] to the floor.")
+
+ if(do_after(user, 20 * W.toolspeed))
+ if(!src) return
+ to_chat(user, "You [anchored? "un" : ""]secured \the [src]!")
+ anchored = !anchored
+ return
+
+ if(!anchored)
+ to_chat(user," The bed isn't secured.")
+ return
\ No newline at end of file
diff --git a/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm b/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm
index 6e80ef3de5..41ebeafe1b 100644
--- a/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm
+++ b/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm
@@ -2,6 +2,10 @@
display_name = "nudity permit"
path = /obj/item/clothing/under/permit
+/datum/gear/uniform/suit/natureist_talisman
+ display_name = "naturist talisman"
+ path = /obj/item/clothing/under/permit/natureist_talisman
+
//Polaris overrides
/datum/gear/uniform/solgov/pt/sifguard
display_name = "pt uniform, planetside sec"
diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm
index 0fe9cb8b6c..5653d79007 100644
--- a/code/modules/clothing/shoes/miscellaneous.dm
+++ b/code/modules/clothing/shoes/miscellaneous.dm
@@ -227,14 +227,6 @@
/obj/item/clothing/shoes/boots/ranger/yellow
bootcolor = "yellow"
-/obj/item/clothing/shoes/primitive
- name = "primitive shoes"
- desc = "Some patched together rags. Better than being barefoot."
- icon_state = "rag"
- force = 0
- drop_sound = 'sound/items/drop/clothing.ogg'
- pickup_sound = 'sound/items/pickup/clothing.ogg'
-
/*
* 80s
*/
diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm
index 692b27a1ac..ad70b62ac5 100644
--- a/code/modules/clothing/under/miscellaneous.dm
+++ b/code/modules/clothing/under/miscellaneous.dm
@@ -1257,13 +1257,6 @@
icon_state = "cowboy_grey"
worn_state = "cowboy_grey"
-/obj/item/clothing/under/primitive
- name = "primitive clothes"
- desc = "Some patched together rags. Better than being naked."
- force = 0
- icon_state = "rag"
- worn_state = "rag"
-
/obj/item/clothing/under/curator
name = "curator uniform"
desc = "A rugged uniform suitable for treasure hunting."
diff --git a/code/modules/clothing/under/miscellaneous_vr.dm b/code/modules/clothing/under/miscellaneous_vr.dm
index 3cdd5262ef..72690c590f 100644
--- a/code/modules/clothing/under/miscellaneous_vr.dm
+++ b/code/modules/clothing/under/miscellaneous_vr.dm
@@ -6,8 +6,8 @@
/obj/item/clothing/under/permit
name = "public nudity permit"
desc = "This permit entitles the bearer to conduct their duties without a uniform. Normally issued to furred crewmembers or those with nothing to hide."
- icon = 'icons/obj/card.dmi'
- icon_state = "guest"
+ icon = 'icons/obj/card_new.dmi'
+ icon_state = "permit-nude"
body_parts_covered = 0
equip_sound = null
@@ -299,7 +299,7 @@
/obj/item/clothing/under/summerdress/blue
icon_state = "summerdress2"
-/obj/item/clothing/under/dress/dress_cap/femformal // formal in the loosest sense. because it's going to be taken off. or something. funnier in my head i swear
+/obj/item/clothing/under/dress/dress_cap/femformal // formal in the loosest sense. because it's going to be taken off. or something. funnier in my head i swear
name = "site manager's feminine formalwear"
desc = "Essentially a skimpy...dress? Leotard? Whatever it is, it has the coloration and markings suitable for a site manager or rough equivalent."
icon = 'icons/inventory/uniform/item_vr.dmi'
diff --git a/code/modules/clothing/under/tribal.dm b/code/modules/clothing/under/tribal.dm
new file mode 100644
index 0000000000..10894e5ae4
--- /dev/null
+++ b/code/modules/clothing/under/tribal.dm
@@ -0,0 +1,70 @@
+/* Tribal Clothing
+ * Contains:
+ * Primitive Clothing
+ * Tribal Clothing
+ */
+
+/*
+ * Primitive Clothing
+ */
+/obj/item/clothing/under/primitive
+ name = "primitive clothes"
+ desc = "Some patched together rags. Better than being naked."
+ force = 0
+ icon_state = "rag"
+ worn_state = "rag"
+
+/obj/item/clothing/shoes/primitive
+ name = "primitive shoes"
+ desc = "Some patched together rags. Better than being barefoot."
+ icon_state = "rag"
+ force = 0
+ drop_sound = 'sound/items/drop/clothing.ogg'
+ pickup_sound = 'sound/items/pickup/clothing.ogg'
+
+/*
+ * Tribal Clothing
+ */
+/obj/item/clothing/under/permit/natureist_talisman //Tribal version of the Nudity Permit
+ name = "naturist talisman"
+ desc = "This ancient talisman gives rights to those that wish to be closer to nature by casting their constricting clothes aside."
+ icon = 'icons/inventory/accessory/item.dmi'
+ icon_override = 'icons/inventory/accessory/mob.dmi'
+ icon_state = "talisman"
+ item_state = "talisman"
+ worn_state = "talisman"
+
+/obj/item/clothing/under/tribalwear
+ item_state_slots = list(slot_r_hand_str = "tribalwear", slot_l_hand_str = "tribalwear")
+
+/obj/item/clothing/under/tribalwear/common1
+ name = "tribalwear"
+ desc = "A traditionally woven robe made with locally sourced material."
+ icon_state = "tribal_common1"
+
+/obj/item/clothing/under/tribalwear/common2
+ name = "tribalwear"
+ desc = "A traditionally woven outfit made with locally sourced material."
+ icon_state = "tribal_common2"
+
+/obj/item/clothing/under/tribalwear/hunter
+ name = "hunting tribalwear"
+ desc = "Dusty rags decorated with strips of leather and small pieces of cyan colored stones."
+ icon_state = "tribal_hunter"
+
+/obj/item/clothing/under/tribalwear/chief
+ name = "chief's tribalwear"
+ desc = "Well maintained robe adorned with fine leather and polished cyan stones."
+ icon_state = "tribal_chief"
+
+/obj/item/clothing/under/tribalwear/shaman
+ name = "shaman robes"
+ desc = "Carefully hand wozen cloth robes with heavy colored stones jewelry drapped over top."
+ icon_state = "tribal_shaman"
+
+/obj/item/clothing/shoes/tribalwear
+ name = "tribal sandals"
+ desc = "Traditionally made sandals made with local materials."
+ icon_state = "tribal_sandals"
+ species_restricted = null
+ body_parts_covered = 0
\ No newline at end of file
diff --git a/icons/inventory/accessory/item.dmi b/icons/inventory/accessory/item.dmi
index 0b8ac4bba7..f82b1e8352 100644
Binary files a/icons/inventory/accessory/item.dmi and b/icons/inventory/accessory/item.dmi differ
diff --git a/icons/inventory/accessory/mob.dmi b/icons/inventory/accessory/mob.dmi
index 32505314e2..5ea5dc40a3 100644
Binary files a/icons/inventory/accessory/mob.dmi and b/icons/inventory/accessory/mob.dmi differ
diff --git a/icons/inventory/eyes/item.dmi b/icons/inventory/eyes/item.dmi
index a465f414c3..f63df487f2 100644
Binary files a/icons/inventory/eyes/item.dmi and b/icons/inventory/eyes/item.dmi differ
diff --git a/icons/inventory/feet/item.dmi b/icons/inventory/feet/item.dmi
index 76c19f09d5..af898b6e8f 100644
Binary files a/icons/inventory/feet/item.dmi and b/icons/inventory/feet/item.dmi differ
diff --git a/icons/inventory/feet/mob.dmi b/icons/inventory/feet/mob.dmi
index 9d6d538143..12a4fc9e3d 100644
Binary files a/icons/inventory/feet/mob.dmi and b/icons/inventory/feet/mob.dmi differ
diff --git a/icons/inventory/uniform/item.dmi b/icons/inventory/uniform/item.dmi
index 10724fdd1c..bfe961f40b 100644
Binary files a/icons/inventory/uniform/item.dmi and b/icons/inventory/uniform/item.dmi differ
diff --git a/icons/inventory/uniform/mob.dmi b/icons/inventory/uniform/mob.dmi
index 69a5dd12df..607a315377 100644
Binary files a/icons/inventory/uniform/mob.dmi and b/icons/inventory/uniform/mob.dmi differ
diff --git a/icons/mob/items/lefthand_uniforms.dmi b/icons/mob/items/lefthand_uniforms.dmi
index 29f70f0ec4..fe6e06026d 100644
Binary files a/icons/mob/items/lefthand_uniforms.dmi and b/icons/mob/items/lefthand_uniforms.dmi differ
diff --git a/icons/mob/items/righthand_uniforms.dmi b/icons/mob/items/righthand_uniforms.dmi
index 877532b4cd..099dc52ce9 100644
Binary files a/icons/mob/items/righthand_uniforms.dmi and b/icons/mob/items/righthand_uniforms.dmi differ
diff --git a/icons/obj/card_new.dmi b/icons/obj/card_new.dmi
index 8c2143b8f3..9b483a7f8c 100644
Binary files a/icons/obj/card_new.dmi and b/icons/obj/card_new.dmi differ
diff --git a/icons/obj/closets/coffin.dmi b/icons/obj/closets/coffin.dmi
index f639469aa2..2bb25db01d 100644
Binary files a/icons/obj/closets/coffin.dmi and b/icons/obj/closets/coffin.dmi differ
diff --git a/icons/obj/weapons.dmi b/icons/obj/weapons.dmi
index 2e9090c763..243330c332 100644
Binary files a/icons/obj/weapons.dmi and b/icons/obj/weapons.dmi differ
diff --git a/vorestation.dme b/vorestation.dme
index de599fdda0..48fb5c98e9 100644
--- a/vorestation.dme
+++ b/vorestation.dme
@@ -2216,6 +2216,7 @@
#include "code\modules\clothing\under\solgov.dm"
#include "code\modules\clothing\under\solgov_vr.dm"
#include "code\modules\clothing\under\syndicate.dm"
+#include "code\modules\clothing\under\tribal.dm"
#include "code\modules\clothing\under\accessories\accessory.dm"
#include "code\modules\clothing\under\accessories\accessory_ch.dm"
#include "code\modules\clothing\under\accessories\accessory_vr.dm"