diff --git a/code/__DEFINES/mobs.dm b/code/__DEFINES/mobs.dm
index 7d646e19f8207..bdfa00381eecc 100644
--- a/code/__DEFINES/mobs.dm
+++ b/code/__DEFINES/mobs.dm
@@ -86,25 +86,66 @@
#define GIB_TYPE_HUMAN "human"
#define GIB_TYPE_ROBOTIC "robotic"
-//Species ID defines
-#define SPECIES_HUMAN "human"
-#define SPECIES_IPC "ipc"
-#define SPECIES_ETHEREAL "ethereal"
-#define SPECIES_PLASMAMAN "plasmaman"
-#define SPECIES_APID "apid"
-#define SPECIES_MOTH "moth"
-#define SPECIES_LIZARD "lizard"
- #define SPECIES_ASHWALKER "ashlizard"
-#define SPECIES_FELINID "felinid"
-#define SPECIES_OOZELING "oozeling"
-#define SPECIES_FLY "fly"
-#define SPECIES_MONKEY "monkey"
-#define SPECIES_JELLYPERSON "jelly"
- #define SPECIES_SLIMEPERSON "slime"
- #define SPECIES_LUMINESCENT "lum"
- #define SPECIES_STARGAZER "stargazer"
-#define SPECIES_ABDUCTOR "abductor"
-#define SPECIES_SHADOWPERSON "shadow"
+//Defines for Species IDs
+#define SPECIES_ABDUCTOR "abductor"
+#define SPECIES_ANDROID "android"
+#define SPECIES_APID "apid"
+#define SPECIES_DEBUG "debug"
+#define SPECIES_DULLAHAN "dullahan"
+#define SPECIES_ETHEREAL "ethereal"
+#define SPECIES_FELINID "felinid"
+#define SPECIES_FLY "fly"
+#define SPECIES_HUMAN "human"
+#define SPECIES_IPC "ipc"
+#define SPECIES_JELLYPERSON "jelly"
+ #define SPECIES_LUMINESCENT "lum"
+ #define SPECIES_SLIMEPERSON "slime"
+ #define SPECIES_STARGAZER "stargazer"
+#define SPECIES_LIZARD "lizard"
+ #define SPECIES_ASHWALKER "ashlizard"
+#define SPECIES_MONKEY "monkey"
+#define SPECIES_MOTH "moth"
+#define SPECIES_OOZELING "oozeling"
+#define SPECIES_PLASMAMAN "plasmaman"
+#define SPECIES_PODPERSON "pod"
+#define SPECIES_PUMPKINPERSON "pumpkin_man"
+#define SPECIES_SHADOWPERSON "shadow"
+#define SPECIES_SKELETON "skeleton"
+#define SPECIES_SNAILPERSON "snail"
+#define SPECIES_SUPERSOILDER "supersoldier"
+#define SPECIES_VAMPIRE "vampire"
+
+//Defines for Golem Species IDs
+#define SPECIES_GOLEM_ADAMANTINE "adamantine_golem"
+#define SPECIES_GOLEM_ALLOY "alloy_golem"
+#define SPECIES_GOLEM_BANANIUM "bananium_golem"
+#define SPECIES_GOLEM_BLUESPACE "bluespace_golem"
+#define SPECIES_GOLEM_BONE "bone_golem"
+#define SPECIES_GOLEM_BRONZE "bronze_golem"
+#define SPECIES_GOLEM_CAPITALIST "capitalist_golem"
+#define SPECIES_GOLEM_CARDBOARD "cardboard_golem"
+#define SPECIES_GOLEM_CLOCKWORK "clockwork_golem"
+#define SPECIES_GOLEM_CLOCKWORK_SERVANT "clockwork golem servant"
+#define SPECIES_GOLEM_CLOTH "cloth_golem"
+#define SPECIES_GOLEM_COPPER "copper_golem"
+#define SPECIES_GOLEM_DIAMOND "diamond_golem"
+#define SPECIES_GOLEM_DURATHREAD "durathread_golem"
+#define SPECIES_GOLEM_GLASS "glass_golem"
+#define SPECIES_GOLEM_GOLD "gold_golem"
+#define SPECIES_GOLEM_IRON "iron_golem"
+#define SPECIES_GOLEM_LEATHER "leather_golem"
+#define SPECIES_GOLEM_PLASMA "plasma_golem"
+#define SPECIES_GOLEM_PLASTEEL "plasteel_golem"
+#define SPECIES_GOLEM_PLASTIC "plastic_golem"
+#define SPECIES_GOLEM_PLASTITANIUM "plastitanium_golem"
+#define SPECIES_GOLEM_RUNIC "cult_golem"
+#define SPECIES_GOLEM_SAND "sand_golem"
+#define SPECIES_GOLEM_SILVER "silver_golem"
+#define SPECIES_GOLEM_SNOW "snow_golem"
+#define SPECIES_GOLEM_SOVIET "soviet_golem"
+#define SPECIES_GOLEM_TITANIUM "titanium_golem"
+#define SPECIES_GOLEM_URANIUM "uranium_golem"
+#define SPECIES_GOLEM_WOOD "wood_golem"
//Species bitflags, used for species_restricted. If this somehow ever gets above 23 Bee has larger problems.
#define FLAG_HUMAN (1<<0)
diff --git a/code/modules/mob/living/carbon/human/species_types/debug.dm b/code/modules/mob/living/carbon/human/species_types/debug.dm
index 95f901a567fce..491c36808ab9d 100644
--- a/code/modules/mob/living/carbon/human/species_types/debug.dm
+++ b/code/modules/mob/living/carbon/human/species_types/debug.dm
@@ -1,6 +1,6 @@
/datum/species/debug
name = "CODER DISASTER"
- id = "debug"
+ id = SPECIES_DEBUG
bodyflag = FLAG_DEBUG_SPECIES
changesource_flags = MIRROR_BADMIN
sexes = 0
diff --git a/code/modules/mob/living/carbon/human/species_types/dullahan.dm b/code/modules/mob/living/carbon/human/species_types/dullahan.dm
index 26c5bf33408ce..15a73a94ca579 100644
--- a/code/modules/mob/living/carbon/human/species_types/dullahan.dm
+++ b/code/modules/mob/living/carbon/human/species_types/dullahan.dm
@@ -1,6 +1,6 @@
/datum/species/dullahan
name = "\improper Dullahan"
- id = "dullahan"
+ id = SPECIES_DULLAHAN
max_bodypart_count = 5 //No head
default_color = "FFFFFF"
species_traits = list(EYECOLOR,HAIR,FACEHAIR,LIPS)
@@ -73,7 +73,7 @@
/obj/item/organ/tongue/dullahan/handle_speech(datum/source, list/speech_args)
if(ishuman(owner))
var/mob/living/carbon/human/H = owner
- if(H.dna.species.id == "dullahan")
+ if(H.dna.species.id == SPECIES_DULLAHAN)
var/datum/species/dullahan/D = H.dna.species
if(isobj(D.myhead.loc))
var/obj/O = D.myhead.loc
@@ -103,7 +103,7 @@
if(ishuman(owner))
var/mob/living/carbon/human/H = owner
- if(H.dna.species.id == "dullahan")
+ if(H.dna.species.id == SPECIES_DULLAHAN)
var/datum/species/dullahan/D = H.dna.species
D.update_vision_perspective(H)
@@ -133,7 +133,7 @@
/obj/item/dullahan_relay/Destroy()
if(!QDELETED(owner))
var/mob/living/carbon/human/H = owner
- if(H.dna.species.id == "dullahan")
+ if(H.dna.species.id == SPECIES_DULLAHAN)
var/datum/species/dullahan/D = H.dna.species
D.myhead = null
owner.gib()
diff --git a/code/modules/mob/living/carbon/human/species_types/ethereal.dm b/code/modules/mob/living/carbon/human/species_types/ethereal.dm
index b107f78582153..dced8a87d40d4 100644
--- a/code/modules/mob/living/carbon/human/species_types/ethereal.dm
+++ b/code/modules/mob/living/carbon/human/species_types/ethereal.dm
@@ -1,7 +1,7 @@
/datum/species/ethereal
name = "\improper Ethereal"
- id = "ethereal"
+ id = SPECIES_ETHEREAL
attack_verb = "burn"
attack_sound = 'sound/weapons/etherealhit.ogg'
miss_sound = 'sound/weapons/etherealmiss.ogg'
diff --git a/code/modules/mob/living/carbon/human/species_types/golems.dm b/code/modules/mob/living/carbon/human/species_types/golems.dm
index b6098812a9a1b..2f6b0b9d26903 100644
--- a/code/modules/mob/living/carbon/human/species_types/golems.dm
+++ b/code/modules/mob/living/carbon/human/species_types/golems.dm
@@ -1,7 +1,7 @@
/datum/species/golem
// Animated beings of stone. They have increased defenses, and do not need to breathe. They're also slow as fuuuck.
name = "\improper Golem"
- id = "iron_golem"
+ id = SPECIES_GOLEM_IRON
species_traits = list(NOBLOOD,MUTCOLORS,NO_UNDERWEAR,NOTRANSSTING)
inherent_traits = list(TRAIT_RESISTHEAT,TRAIT_NOBREATH,TRAIT_RESISTCOLD,TRAIT_RESISTHIGHPRESSURE,TRAIT_RESISTLOWPRESSURE,TRAIT_NOFIRE,TRAIT_NOGUNS,TRAIT_RADIMMUNE,TRAIT_PIERCEIMMUNE,TRAIT_NODISMEMBER, TRAIT_NONECRODISEASE)
inherent_biotypes = list(MOB_INORGANIC, MOB_HUMANOID)
@@ -70,7 +70,7 @@
/datum/species/golem/adamantine
name = "Adamantine Golem"
- id = "adamantine_golem"
+ id = SPECIES_GOLEM_ADAMANTINE
meat = /obj/item/reagent_containers/food/snacks/meat/slab/human/mutant/golem/adamantine
mutant_organs = list(/obj/item/organ/adamantine_resonator, /obj/item/organ/vocal_cords/adamantine)
fixed_mut_color = "4ed"
@@ -89,7 +89,7 @@
//The suicide bombers of golemkind
/datum/species/golem/plasma
name = "Plasma Golem"
- id = "plasma_golem"
+ id = SPECIES_GOLEM_PLASMA
fixed_mut_color = "a3d"
meat = /obj/item/stack/ore/plasma
//Can burn and takes damage from heat
@@ -148,7 +148,7 @@
//Harder to hurt
/datum/species/golem/diamond
name = "Diamond Golem"
- id = "diamond_golem"
+ id = SPECIES_GOLEM_DIAMOND
fixed_mut_color = "0ff"
armor = 70 //up from 55
meat = /obj/item/stack/ore/diamond
@@ -159,7 +159,7 @@
//Faster but softer and less armoured
/datum/species/golem/gold
name = "Gold Golem"
- id = "gold_golem"
+ id = SPECIES_GOLEM_GOLD
fixed_mut_color = "cc0"
speedmod = 1
armor = 25 //down from 55
@@ -171,7 +171,7 @@
//Heavier, thus higher chance of stunning when punching
/datum/species/golem/silver
name = "Silver Golem"
- id = "silver_golem"
+ id = SPECIES_GOLEM_SILVER
fixed_mut_color = "ddd"
meat = /obj/item/stack/ore/silver
info_text = "As a Silver Golem, your attacks have a higher chance of stunning. Being made of silver, your body is immune to most types of magic."
@@ -189,7 +189,7 @@
// Softer and faster, but conductive
/datum/species/golem/copper
name = "Copper Golem"
- id = "copper_golem"
+ id = SPECIES_GOLEM_COPPER
fixed_mut_color = "#d95802"
speedmod = 1.5
armor = 30
@@ -203,7 +203,7 @@
//Harder to stun, deals more damage, massively slowpokes, but gravproof and obstructive. Basically, The Wall.
/datum/species/golem/plasteel
name = "Plasteel Golem"
- id = "plasteel_golem"
+ id = SPECIES_GOLEM_PLASTEEL
fixed_mut_color = "bbb"
stunmod = 0.4
punchdamage = 18
@@ -229,7 +229,7 @@
//Immune to ash storms
/datum/species/golem/titanium
name = "Titanium Golem"
- id = "titanium_golem"
+ id = SPECIES_GOLEM_TITANIUM
fixed_mut_color = "fff"
meat = /obj/item/stack/ore/titanium
info_text = "As a Titanium Golem, you are immune to ash storms, and slightly more resistant to burn damage."
@@ -248,7 +248,7 @@
//Immune to ash storms and lava
/datum/species/golem/plastitanium
name = "Plastitanium Golem"
- id = "plastitanium_golem"
+ id = SPECIES_GOLEM_PLASTITANIUM
fixed_mut_color = "888"
meat = /obj/item/stack/ore/titanium
info_text = "As a Plastitanium Golem, you are immune to both ash storms and lava, and slightly more resistant to burn damage."
@@ -269,7 +269,7 @@
//Fast and regenerates... but can only speak like an abductor
/datum/species/golem/alloy
name = "Alien Alloy Golem"
- id = "alloy_golem"
+ id = SPECIES_GOLEM_ALLOY
species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYESPRITES,NOTRANSSTING)
meat = /obj/item/stack/sheet/mineral/abductor
mutanttongue = /obj/item/organ/tongue/abductor
@@ -296,7 +296,7 @@
//Since this will usually be created from a collaboration between podpeople and free golems, wood golems are a mix between the two races
/datum/species/golem/wood
name = "Wood Golem"
- id = "wood_golem"
+ id = SPECIES_GOLEM_WOOD
fixed_mut_color = "9E704B"
meat = /obj/item/stack/sheet/mineral/wood
//Can burn and take damage from heat
@@ -339,7 +339,7 @@
//Radioactive
/datum/species/golem/uranium
name = "Uranium Golem"
- id = "uranium_golem"
+ id = SPECIES_GOLEM_URANIUM
fixed_mut_color = "7f0"
meat = /obj/item/stack/ore/uranium
info_text = "As an Uranium Golem, you emit radiation pulses every once in a while. It won't harm fellow golems, but organic lifeforms will be affected."
@@ -361,7 +361,7 @@
//Immune to physical bullets and resistant to brute, but very vulnerable to burn damage. Dusts on death.
/datum/species/golem/sand
name = "Sand Golem"
- id = "sand_golem"
+ id = SPECIES_GOLEM_SAND
fixed_mut_color = "ffdc8f"
meat = /obj/item/stack/ore/glass //this is sand
armor = 0
@@ -392,7 +392,7 @@
//Reflects lasers and resistant to burn damage, but very vulnerable to brute damage. Shatters on death.
/datum/species/golem/glass
name = "Glass Golem"
- id = "glass_golem"
+ id = SPECIES_GOLEM_GLASS
fixed_mut_color = "5a96b4aa" //transparent body
meat = /obj/item/shard
armor = 0
@@ -429,7 +429,7 @@
//Teleports when hit or when it wants to
/datum/species/golem/bluespace
name = "Bluespace Golem"
- id = "bluespace_golem"
+ id = SPECIES_GOLEM_BLUESPACE
fixed_mut_color = "33f"
meat = /obj/item/stack/ore/bluespace_crystal
info_text = "As a Bluespace Golem, you are spatially unstable: You will teleport when hit, and you can teleport manually at a long distance."
@@ -522,7 +522,7 @@
//honk
/datum/species/golem/bananium
name = "Bananium Golem"
- id = "bananium_golem"
+ id = SPECIES_GOLEM_BANANIUM
species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYESPRITES,NOTRANSSTING)
punchdamage = 0
meat = /obj/item/stack/ore/bananium
@@ -610,7 +610,7 @@
/datum/species/golem/runic
name = "Runic Golem"
- id = "cult_golem"
+ id = SPECIES_GOLEM_RUNIC
sexes = FALSE
info_text = "As a Runic Golem, you possess eldritch powers granted by the Elder Goddess Nar'Sie."
species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYESPRITES,NOFLASH,NOTRANSSTING) //no mutcolors
@@ -672,9 +672,10 @@
H.reagents.remove_reagent(chem.type, chem.metabolization_rate)
return TRUE
return ..()
+
/datum/species/golem/clockwork
name = "Clockwork Golem"
- id = "clockwork_golem"
+ id = SPECIES_GOLEM_CLOCKWORK
info_text = "As a Clockwork Golem, you are faster than other types of golems. On death, you will break down into scrap."
species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYESPRITES,NOFLASH,NOTRANSSTING)
inherent_biotypes = list(MOB_ROBOTIC, MOB_HUMANOID)
@@ -722,7 +723,7 @@
qdel(H)
/datum/species/golem/clockwork/no_scrap //These golems are created through the herald's beacon and leave normal corpses on death.
- id = "clockwork golem servant"
+ id = SPECIES_GOLEM_CLOCKWORK_SERVANT
armor = 15 //Balance reasons make this armor weak
no_equip = list()
nojumpsuit = FALSE
@@ -732,7 +733,7 @@
/datum/species/golem/cloth
name = "Cloth Golem"
- id = "cloth_golem"
+ id = SPECIES_GOLEM_CLOTH
sexes = FALSE
info_text = "As a Cloth Golem, you are able to reform yourself after death, provided your remains aren't burned or destroyed. You are, of course, very flammable. \
Being made of cloth, your body is magic resistant and faster than that of other golems, but weaker and less resilient."
@@ -851,7 +852,7 @@
/datum/species/golem/plastic
name = "Plastic Golem"
- id = "plastic_golem"
+ id = SPECIES_GOLEM_PLASTIC
prefix = "Plastic"
special_names = list("Sheet", "Bag", "Bottle")
fixed_mut_color = "fffa"
@@ -867,7 +868,7 @@
/datum/species/golem/bronze
name = "Bronze Golem"
- id = "bronze_golem"
+ id = SPECIES_GOLEM_BRONZE
prefix = "Bronze"
special_names = list("Bell")
fixed_mut_color = "cd7f32"
@@ -936,7 +937,7 @@
/datum/species/golem/cardboard //Faster but weaker, can also make new shells on its own
name = "Cardboard Golem"
- id = "cardboard_golem"
+ id = SPECIES_GOLEM_CARDBOARD
prefix = "Cardboard"
special_names = list("Box")
info_text = "As a Cardboard Golem, you aren't very strong, but you are a bit quicker and can easily create more brethren by using cardboard on yourself."
@@ -988,7 +989,7 @@
/datum/species/golem/leather
name = "Leather Golem"
- id = "leather_golem"
+ id = SPECIES_GOLEM_LEATHER
special_names = list("Face", "Man", "Belt") //Ah dude 4 strength 4 stam leather belt AHHH
inherent_traits = list(TRAIT_NOBREATH, TRAIT_RESISTCOLD,TRAIT_RESISTHIGHPRESSURE,TRAIT_RESISTLOWPRESSURE,TRAIT_NOGUNS,TRAIT_RADIMMUNE,TRAIT_PIERCEIMMUNE,TRAIT_NODISMEMBER, TRAIT_STRONG_GRABBER)
prefix = "Leather"
@@ -999,7 +1000,7 @@
/datum/species/golem/durathread
name = "Durathread Golem"
- id = "durathread_golem"
+ id = SPECIES_GOLEM_DURATHREAD
prefix = "Durathread"
special_names = list("Boll","Weave")
species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYESPRITES,NOFLASH,NOTRANSSTING)
@@ -1020,7 +1021,7 @@
/datum/species/golem/bone
name = "Bone Golem"
- id = "bone_golem"
+ id = SPECIES_GOLEM_BONE
prefix = "Bone"
special_names = list("Head", "Broth", "Fracture", "Rattler", "Appetit")
species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYESPRITES,NOFLASH)
@@ -1065,6 +1066,7 @@
H.reagents.remove_reagent(chem.type, REAGENTS_METABOLISM)
return TRUE
return ..()
+
/datum/action/innate/bonechill
name = "Bone Chill"
desc = "Rattle your bones and strike fear into your enemies!"
@@ -1102,7 +1104,7 @@
/datum/species/golem/snow
name = "Snow Golem"
- id = "snow_golem"
+ id = SPECIES_GOLEM_SNOW
fixed_mut_color = "null" //custom sprites
armor = 45 //down from 55
burnmod = 3 //melts easily
@@ -1161,7 +1163,7 @@
/datum/species/golem/capitalist
name = "Capitalist Golem"
- id = "capitalist_golem"
+ id = SPECIES_GOLEM_CAPITALIST
prefix = "Capitalist"
attack_verb = "monopoliz"
special_names = list("John D. Rockefeller","Rich Uncle Pennybags","Commodore Vanderbilt","Entrepreneur","Mr. Moneybags", "Adam Smith")
@@ -1207,7 +1209,7 @@
/datum/species/golem/soviet
name = "Soviet Golem"
- id = "soviet_golem"
+ id = SPECIES_GOLEM_SOVIET
prefix = "Comrade"
attack_verb = "nationaliz"
special_names = list("Stalin","Lenin","Trotsky","Marx","Comrade") //comrade comrade
diff --git a/code/modules/mob/living/carbon/human/species_types/lizardpeople.dm b/code/modules/mob/living/carbon/human/species_types/lizardpeople.dm
index c690c9067e913..822074a31bd5a 100644
--- a/code/modules/mob/living/carbon/human/species_types/lizardpeople.dm
+++ b/code/modules/mob/living/carbon/human/species_types/lizardpeople.dm
@@ -79,7 +79,7 @@
*/
/datum/species/lizard/ashwalker
name = "Ash Walker"
- id = "ashlizard"
+ id = SPECIES_ASHWALKER
examine_limb_id = SPECIES_LIZARD
species_traits = list(MUTCOLORS,EYECOLOR,LIPS, NO_UNDERWEAR)
inherent_traits = list(TRAIT_NOGUNS,TRAIT_NOBREATH)
diff --git a/code/modules/mob/living/carbon/human/species_types/podpeople.dm b/code/modules/mob/living/carbon/human/species_types/podpeople.dm
index eeae05b355f54..028173ca95025 100644
--- a/code/modules/mob/living/carbon/human/species_types/podpeople.dm
+++ b/code/modules/mob/living/carbon/human/species_types/podpeople.dm
@@ -1,7 +1,7 @@
/datum/species/pod
// A mutation caused by a human being ressurected in a revival pod. These regain health in light, and begin to wither in darkness.
name = "\improper Podperson"
- id = "pod"
+ id = SPECIES_PODPERSON
default_color = "59CE00"
species_traits = list(MUTCOLORS,EYECOLOR)
inherent_traits = list(TRAIT_ALWAYS_CLEAN, TRAIT_BEEFRIEND, TRAIT_NONECRODISEASE)
diff --git a/code/modules/mob/living/carbon/human/species_types/pumpkin_man.dm b/code/modules/mob/living/carbon/human/species_types/pumpkin_man.dm
index 77073c6975ad8..2cecdd5aeb955 100644
--- a/code/modules/mob/living/carbon/human/species_types/pumpkin_man.dm
+++ b/code/modules/mob/living/carbon/human/species_types/pumpkin_man.dm
@@ -1,6 +1,6 @@
/datum/species/pod/pumpkin_man
name = "\improper Pumpkinperson"
- id = "pumpkin_man"
+ id = SPECIES_PUMPKINPERSON
sexes = 0
meat = /obj/item/reagent_containers/food/snacks/pumpkinpieslice
species_traits = list(NOEYESPRITES)
diff --git a/code/modules/mob/living/carbon/human/species_types/skeletons.dm b/code/modules/mob/living/carbon/human/species_types/skeletons.dm
index 60448914937e5..ff02bc9539e2e 100644
--- a/code/modules/mob/living/carbon/human/species_types/skeletons.dm
+++ b/code/modules/mob/living/carbon/human/species_types/skeletons.dm
@@ -1,7 +1,7 @@
/datum/species/skeleton
// 2spooky
name = "\improper Spooky Scary Skeleton"
- id = "skeleton"
+ id = SPECIES_SKELETON
sexes = 0
meat = /obj/item/reagent_containers/food/snacks/meat/slab/human/mutant/skeleton
species_traits = list(NOBLOOD,NOHUSK)
diff --git a/code/modules/mob/living/carbon/human/species_types/snail.dm b/code/modules/mob/living/carbon/human/species_types/snail.dm
index c18b14d3d6343..2bd12b747d872 100644
--- a/code/modules/mob/living/carbon/human/species_types/snail.dm
+++ b/code/modules/mob/living/carbon/human/species_types/snail.dm
@@ -1,6 +1,6 @@
/datum/species/snail
name = "\improper Snailperson"
- id = "snail"
+ id = SPECIES_SNAILPERSON
offset_features = list(OFFSET_UNIFORM = list(0,0), OFFSET_ID = list(0,0), OFFSET_GLOVES = list(0,0), OFFSET_GLASSES = list(0,4), OFFSET_EARS = list(0,0), OFFSET_SHOES = list(0,0), OFFSET_S_STORE = list(0,0), OFFSET_FACEMASK = list(0,0), OFFSET_HEAD = list(0,0), OFFSET_FACE = list(0,0), OFFSET_BELT = list(0,0), OFFSET_BACK = list(0,0), OFFSET_SUIT = list(0,0), OFFSET_NECK = list(0,0))
default_color = "336600" //vomit green
species_traits = list(MUTCOLORS, NO_UNDERWEAR)
diff --git a/code/modules/mob/living/carbon/human/species_types/supersoldier.dm b/code/modules/mob/living/carbon/human/species_types/supersoldier.dm
index ffeccafcc626b..a0f329ee05d95 100644
--- a/code/modules/mob/living/carbon/human/species_types/supersoldier.dm
+++ b/code/modules/mob/living/carbon/human/species_types/supersoldier.dm
@@ -1,6 +1,6 @@
/datum/species/human/supersoldier
name = "Super Soldier" //inherited from the real species, for health scanners and things
- id = "supersoldier"
+ id = SPECIES_SUPERSOILDER
examine_limb_id = SPECIES_HUMAN
species_traits = list(EYECOLOR,HAIR,FACEHAIR,LIPS,NOTRANSSTING) //all of these + whatever we inherit from the real species
inherent_traits = list(TRAIT_NOLIMBDISABLE,TRAIT_NOHUNGER,TRAIT_PIERCEIMMUNE,TRAIT_NODISMEMBER,TRAIT_IGNORESLOWDOWN,TRAIT_IGNOREDAMAGESLOWDOWN,TRAIT_STUNIMMUNE,TRAIT_CONFUSEIMMUNE,TRAIT_SLEEPIMMUNE,TRAIT_PUSHIMMUNE,TRAIT_VIRUSIMMUNE,TRAIT_NODISMEMBER,TRAIT_NOSLIPALL,TRAIT_THERMAL_VISION,TRAIT_STRONG_GRABBER,TRAIT_LAW_ENFORCEMENT_METABOLISM,TRAIT_ALWAYS_CLEAN,TRAIT_FEARLESS)
diff --git a/code/modules/mob/living/carbon/human/species_types/vampire.dm b/code/modules/mob/living/carbon/human/species_types/vampire.dm
index 72a9a7b887d3c..71124ecb8d10a 100644
--- a/code/modules/mob/living/carbon/human/species_types/vampire.dm
+++ b/code/modules/mob/living/carbon/human/species_types/vampire.dm
@@ -1,6 +1,6 @@
/datum/species/vampire
name = "\improper Vampire"
- id = "vampire"
+ id = SPECIES_VAMPIRE
default_color = "FFFFFF"
species_traits = list(EYECOLOR,HAIR,FACEHAIR,LIPS)
inherent_traits = list(TRAIT_NOHUNGER,TRAIT_NOBREATH,TRAIT_DRINKSBLOOD)