diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm
index c4c8cfba9ad69..f1121439316f6 100644
--- a/code/__DEFINES/traits.dm
+++ b/code/__DEFINES/traits.dm
@@ -177,6 +177,7 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai
#define TRAIT_NOLIMBDISABLE "no_limb_disable"
#define TRAIT_EASYLIMBDISABLE "easy_limb_disable"
#define TRAIT_TOXINLOVER "toxinlover"
+#define TRAIT_NOHAIRLOSS "no_hair_loss"
#define TRAIT_NOBREATH "no_breath"
#define TRAIT_ANTIMAGIC "anti_magic"
#define TRAIT_HOLY "holy"
diff --git a/code/datums/diseases/advance/symptoms/shedding.dm b/code/datums/diseases/advance/symptoms/shedding.dm
index 7c241301a017f..1adfc9eb453e6 100644
--- a/code/datums/diseases/advance/symptoms/shedding.dm
+++ b/code/datums/diseases/advance/symptoms/shedding.dm
@@ -33,6 +33,9 @@ BONUS
return
var/mob/living/M = A.affected_mob
+
+ if(HAS_TRAIT(M, TRAIT_NOHAIRLOSS))
+ return
if(prob(base_message_chance))
to_chat(M, "[pick("Your scalp itches.", "Your skin feels flaky.")]")
if(ishuman(M))
diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm
index 8bb0349378919..4a327a85284cb 100644
--- a/code/modules/mob/living/carbon/human/species.dm
+++ b/code/modules/mob/living/carbon/human/species.dm
@@ -1429,7 +1429,7 @@ GLOBAL_LIST_EMPTY(features_by_species)
H.domutcheck()
if(radiation > RAD_MOB_HAIRLOSS)
- if(prob(15) && !(H.hair_style == "Bald") && (HAIR in species_traits))
+ if(prob(15) && !(H.hair_style == "Bald") && (HAIR in species_traits) && !HAS_TRAIT(H, TRAIT_NOHAIRLOSS))
to_chat(H, "Your hair starts to fall out in clumps.")
addtimer(CALLBACK(src, PROC_REF(go_bald), H), 50)
diff --git a/code/modules/mob/living/carbon/human/species_types/oozelings.dm b/code/modules/mob/living/carbon/human/species_types/oozelings.dm
index 99eb6a57d49e0..acdbdee10af87 100644
--- a/code/modules/mob/living/carbon/human/species_types/oozelings.dm
+++ b/code/modules/mob/living/carbon/human/species_types/oozelings.dm
@@ -4,7 +4,7 @@
bodyflag = FLAG_OOZELING
default_color = "00FF90"
species_traits = list(MUTCOLORS,EYECOLOR,HAIR,FACEHAIR)
- inherent_traits = list(TRAIT_TOXINLOVER,TRAIT_NOFIRE,TRAIT_ALWAYS_CLEAN,TRAIT_EASYDISMEMBER)
+ inherent_traits = list(TRAIT_TOXINLOVER,TRAIT_NOHAIRLOSS,TRAIT_NOFIRE,TRAIT_ALWAYS_CLEAN,TRAIT_EASYDISMEMBER)
hair_color = "mutcolor"
hair_alpha = 150
mutantlungs = /obj/item/organ/lungs/slime