Skip to content
This repository was archived by the owner on May 22, 2025. It is now read-only.
30 changes: 19 additions & 11 deletions code/modules/mob/living/carbon/human/_species.dm
Original file line number Diff line number Diff line change
Expand Up @@ -2727,7 +2727,7 @@ GLOBAL_LIST_EMPTY(features_by_species)
SPECIES_PERK_TYPE = SPECIES_NEGATIVE_PERK,
SPECIES_PERK_ICON = "band-aid",
SPECIES_PERK_NAME = "Brutal Weakness",
SPECIES_PERK_DESC = "[plural_form] are weak to brute damage.",
SPECIES_PERK_DESC = "[plural_form] are weak to bruising and brute damage.",
))

if(brutemod < 1)
Expand All @@ -2752,7 +2752,7 @@ GLOBAL_LIST_EMPTY(features_by_species)
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "shield-alt",
SPECIES_PERK_NAME = "Fire Resilience",
SPECIES_PERK_DESC = "[plural_form] are resilient to flames, and burn damage.",
SPECIES_PERK_DESC = "[plural_form] are resilient to fire and burn damage.",
))

// Shock damage
Expand Down Expand Up @@ -2810,7 +2810,7 @@ GLOBAL_LIST_EMPTY(features_by_species)
if(heatmod < 1/* || bodytemp_heat_damage_limit > BODYTEMP_HEAT_DAMAGE_LIMIT*/)
to_add += list(list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "thermometer-empty",
SPECIES_PERK_ICON = "thermometer-full",
SPECIES_PERK_NAME = "Heat Resilience",
SPECIES_PERK_DESC = "[plural_form] are resilient to hotter environments.",
))
Expand Down Expand Up @@ -2847,7 +2847,7 @@ GLOBAL_LIST_EMPTY(features_by_species)
to_add += list(list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "tint-slash",
SPECIES_PERK_NAME = "Bloodletted",
SPECIES_PERK_NAME = "Bloodless",
SPECIES_PERK_DESC = "[plural_form] do not have blood.",
))

Expand Down Expand Up @@ -2897,22 +2897,22 @@ GLOBAL_LIST_EMPTY(features_by_species)
if(TRAIT_POWERHUNGRY in inherent_traits)
to_add += list(list(
SPECIES_PERK_TYPE = SPECIES_NEUTRAL_PERK,
SPECIES_PERK_ICON = "charging-station", //would prefer battery-bolt, but it doesn't show up
SPECIES_PERK_ICON = "battery-4", //would prefer battery-bolt, but it doesn't show up
SPECIES_PERK_NAME = "Power-Hungry",
SPECIES_PERK_DESC = "[plural_form] run off electricity rather than food.",
))
if(TRAIT_EASYDISMEMBER in inherent_traits)
to_add += list(list(
SPECIES_PERK_TYPE = SPECIES_NEGATIVE_PERK,
SPECIES_PERK_ICON = "user-times",
SPECIES_PERK_ICON = "user-minus",
SPECIES_PERK_NAME = "Limbs Easily Dismembered",
SPECIES_PERK_DESC = "[plural_form] limbs are not secured well, and as such they are easily dismembered.",
))

if(TRAIT_EASILY_WOUNDED in inherent_traits)
to_add += list(list(
SPECIES_PERK_TYPE = SPECIES_NEGATIVE_PERK,
SPECIES_PERK_ICON = "user-times",
SPECIES_PERK_ICON = "user-injured",
SPECIES_PERK_NAME = "Easily Wounded",
SPECIES_PERK_DESC = "[plural_form] skin is very weak and fragile. They are much easier to apply serious wounds to.",
))
Expand All @@ -2936,7 +2936,7 @@ GLOBAL_LIST_EMPTY(features_by_species)
/datum/species/proc/create_pref_biotypes_perks()
var/list/to_add = list()

if(inherent_biotypes & MOB_UNDEAD)
if((inherent_biotypes & MOB_UNDEAD) && (TRAIT_NOBREATH in inherent_traits)) // We check NOBREATH so plasmamen don't get this
to_add += list(list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "skull",
Expand All @@ -2954,6 +2954,14 @@ GLOBAL_LIST_EMPTY(features_by_species)
However, this gives [plural_form] the ability to do self-maintenance with just simple tools.",
))

if(DIGITIGRADE in species_traits) // Intentionally vague as preterni have DIGITIGRADE, feel free to change this when that changes
to_add += list(list(
SPECIES_PERK_TYPE = SPECIES_NEGATIVE_PERK,
SPECIES_PERK_ICON = "shoe-prints",
SPECIES_PERK_NAME = "Nonstandard Limbs",
SPECIES_PERK_DESC = "[plural_form] have oddly shaped legs, and cannot fit into most standard footwear. Footwraps may be worn instead.",
))

return to_add

/**
Expand All @@ -2980,9 +2988,9 @@ GLOBAL_LIST_EMPTY(features_by_species)
if(length(bonus_languages))
to_add += list(list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "comment",
SPECIES_PERK_NAME = "Native Speaker",
SPECIES_PERK_DESC = "Alongside [initial(common_language.name)], [plural_form] gain the ability to speak [english_list(bonus_languages)].",
SPECIES_PERK_ICON = "book",
SPECIES_PERK_NAME = "[english_list(bonus_languages)] Fluency",
SPECIES_PERK_DESC = "Alongside [initial(common_language.name)], [plural_form] can speak and understand [english_list(bonus_languages)].",
))

qdel(temp_holder)
Expand Down
39 changes: 38 additions & 1 deletion code/modules/mob/living/carbon/human/species_types/IPC.dm
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,44 @@
/datum/species/ipc/create_pref_unique_perks()
var/list/to_add = list()

// TODO
to_add += list(
list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "brain",
SPECIES_PERK_NAME = "Rerouted Consciousnes",
SPECIES_PERK_DESC = "IPCs have positronic brains located in their chest rather than their head. \
They can survive decapitation, but revival needs special reactivation surgery done on the brain.",
),
list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "wrench",
SPECIES_PERK_NAME = "Working Machine",
SPECIES_PERK_DESC = "IPCs are manufactured to be quick and cheap workers. \
They use tools and items faster than most races.",
),
list(
SPECIES_PERK_TYPE = SPECIES_NEUTRAL_PERK,
SPECIES_PERK_ICON = "robot",
SPECIES_PERK_NAME = "Automata",
SPECIES_PERK_DESC = "IPCs are completely inorganic. \
They boast complete immunity to toxins, cell damage, disease, husking, and have no need to breathe. \
Their \"organs\" will not heal naturally however, and must be replaced if damaged.",
),
list(
SPECIES_PERK_TYPE = SPECIES_NEGATIVE_PERK,
SPECIES_PERK_ICON = "trash-alt",
SPECIES_PERK_NAME = "Random Access Memories", // RIP daft punk
SPECIES_PERK_DESC = "IPCs hold all recent memories in their RAM chips, which wipe automatically on death. \
An IPC will never remember when or how it died, regardless of how long it's been dead."
),
list(
SPECIES_PERK_TYPE = SPECIES_NEGATIVE_PERK,
SPECIES_PERK_ICON = "dna",
SPECIES_PERK_NAME = "Missing Sequence",
SPECIES_PERK_DESC = "IPCs have no DNA or genetic sequence. \
They can't be affected by genetic mutations, nor be cloned.",
),
)

return to_add

Expand Down
40 changes: 31 additions & 9 deletions code/modules/mob/living/carbon/human/species_types/ethereal.dm
Original file line number Diff line number Diff line change
Expand Up @@ -325,7 +325,7 @@
return features

/datum/species/ethereal/get_species_description()
return "Ethereals are one of the two other spacefaring species encountered by the SIC. Strange slime-based humanoids that emit light based on their \
return "Ethereals are one of the two other spacefaring species encountered by the SIC. Strange humanoids comprised of crystal and stardust that emit light based on their \
general health, ethereals are also well-known for their general benevolence and naivety. While not common within SIC space, they are still \
a relatively accepted species in its borders."

Expand Down Expand Up @@ -358,21 +358,43 @@
to_add += list(
list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "lightbulb",
SPECIES_PERK_NAME = "Disco Ball",
SPECIES_PERK_DESC = "Ethereals passively generate their own light.",
SPECIES_PERK_ICON = "sun", // May or may not be worse than lightbulb idk
SPECIES_PERK_NAME = "Living Star",
SPECIES_PERK_DESC = "Ethereals are naturally bioluminescent, emitting a constant source of light from their bodies. \
The brightness of this light changes based on their energy level and health.",
),
list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "heart-circle-bolt",
SPECIES_PERK_NAME = "Crystal Core",
SPECIES_PERK_DESC = "Ethereals have strange crystalline hearts that never decompose, and form a regenerative chrysalis around them 5 minutes after death. \
Reviving through this intense process leaves crystal growths in and around the brain, leaving the host with permanent brain trauma.",
),
list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "arrows-to-eye",
SPECIES_PERK_NAME = "Telescopic Orbits", // Literally the best thing you could call this
SPECIES_PERK_DESC = "Ethereals have a wider field of vision, letting them see one tile further in all directions. \
(Things may look slightly smaller because of this).",
),
list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "lungs",
SPECIES_PERK_NAME = "Respirative Electrolysis",
SPECIES_PERK_DESC = "Ethereals have a network of conductive chambers in their lungs that convert any inhaled water vapor into hydrogen and oxygen.",
),
list(
SPECIES_PERK_TYPE = SPECIES_NEUTRAL_PERK,
SPECIES_PERK_ICON = "bolt",
SPECIES_PERK_NAME = "Energy-Sponge",
SPECIES_PERK_DESC = "Ethereals can gain charge when absorbing certain kinds of energy or radiation.",
SPECIES_PERK_NAME = "Bioelectric",
SPECIES_PERK_DESC = "Ethereals can gain charge when absorbing certain kinds of energy or radiation. \
Storing too much energy may lead to a violent electrical discharge.",
),
list(
SPECIES_PERK_TYPE = SPECIES_NEGATIVE_PERK,
SPECIES_PERK_ICON = "biohazard",
SPECIES_PERK_NAME = "Starving Artist",
SPECIES_PERK_DESC = "Ethereals take toxin damage while starving.",
SPECIES_PERK_ICON = "battery-quarter",
SPECIES_PERK_NAME = "Fizzling Hunger",
SPECIES_PERK_DESC = "Ethereals fizzle out without enough energy to fuel them, taking toxin damage until death.",
),
)

Expand Down
15 changes: 8 additions & 7 deletions code/modules/mob/living/carbon/human/species_types/humans.dm
Original file line number Diff line number Diff line change
Expand Up @@ -140,18 +140,19 @@
if(CONFIG_GET(number/default_laws) == 0) // Default lawset is set to Asimov
to_add += list(list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "robot",
SPECIES_PERK_NAME = "Asimov Superiority",
SPECIES_PERK_DESC = "The AI and their cyborgs are, by default, subservient only \
to humans. As a human, silicons are required to both protect and obey you.",
SPECIES_PERK_ICON = "terminal",
SPECIES_PERK_NAME = "Asimov Priority",
SPECIES_PERK_DESC = "The AI and their cyborgs are, by default, subservient only to humans. \
As a human, silicons are required to both protect and obey you.",
))

if(CONFIG_GET(flag/enforce_human_authority))
to_add += list(list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "bullhorn",
SPECIES_PERK_NAME = "Chain of Command",
SPECIES_PERK_DESC = "Nanotrasen only recognizes humans for Captain and Head of Personel. In addition to this, humans get more than other species.",
SPECIES_PERK_ICON = "star-half-alt",
SPECIES_PERK_NAME = "Nanotrasen's Trusted",
SPECIES_PERK_DESC = "Humans are the only race Nanotrasen trusts to run their stations and bear the rank of Captain. \
Per company policy, they may also work as any and all Heads of Staff without restrictions.",
))

return to_add
17 changes: 13 additions & 4 deletions code/modules/mob/living/carbon/human/species_types/lizardpeople.dm
Original file line number Diff line number Diff line change
Expand Up @@ -173,10 +173,19 @@

to_add += list(list(
SPECIES_PERK_TYPE = SPECIES_NEUTRAL_PERK,
SPECIES_PERK_ICON = "thermometer-empty",
SPECIES_PERK_NAME = "Cold-blooded",
SPECIES_PERK_DESC = "Lizardpeople have difficulty regulating their body temperature, they're not quite as affected by the temperature itself though.",
))
SPECIES_PERK_ICON = "thermometer-half",
SPECIES_PERK_NAME = "Cold-Blooded",
SPECUES_PERK_DESC = "Vuulen are cold-blooded, and have evolved to withstand extreme temperatures for longer than most. \
They're also affected by temperature psychologically, becoming more awake and alert in heat, but grow tired and drowsy in the cold.",
),
list(
SPECIES_PERK_TYPE = SPECIES_NEUTRAL_PERK,
SPECIES_PERK_ICON = "commenting",
SPECIES_PERK_NAME = "Reptilian Ssspeech",
SPECIES_PERK_DESC = "Vuulen have a forked tongue, similar to that of a snake. \
They have a tendency to hisss when ssspeaking.",
),
)

return to_add

Expand Down
26 changes: 13 additions & 13 deletions code/modules/mob/living/carbon/human/species_types/mothmen.dm
Original file line number Diff line number Diff line change
Expand Up @@ -111,28 +111,28 @@
list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "feather-alt",
SPECIES_PERK_NAME = "Precious Wings",
SPECIES_PERK_DESC = "Moths can fly in pressurized, zero-g environments and safely land short falls using their wings.",
SPECIES_PERK_NAME = "Flutter-Wings",
SPECIES_PERK_DESC = "Ex'hau naturally have large, delicate wings. They can fly in pressurized, zero-g environments and safely land \
short falls using them. Take care however, as they're easily burnt off.",
),
list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "tshirt",
SPECIES_PERK_NAME = "Meal Plan",
SPECIES_PERK_DESC = "Moths can eat clothes for nourishment.",
SPECIES_PERK_ICON = "scroll",
SPECIES_PERK_NAME = "Silky Sustenance",
SPECIES_PERK_DESC = "Ex'hau are able to feed off proteins found in most fabrics, letting them eat cloth and most clothing for nourishment.",
),
list(
SPECIES_PERK_TYPE = SPECIES_NEGATIVE_PERK,
SPECIES_PERK_ICON = "fire",
SPECIES_PERK_NAME = "Ablazed Wings",
SPECIES_PERK_DESC = "Moth wings are fragile, and can be easily burnt off.",
SPECIES_PERK_ICON = "fa-solid fa-eye",
SPECIES_PERK_NAME = "Nocturnal Eyes",
SPECIES_PERK_DESC = "Ex'hau have very sensitive eyes. Welding may need more than one layer of protection, \
and sunglasses won't shield them from flashes.",
),
list(
SPECIES_PERK_TYPE = SPECIES_NEGATIVE_PERK,
SPECIES_PERK_ICON = "sun",
SPECIES_PERK_NAME = "Bright Lights",
SPECIES_PERK_DESC = "Moths need an extra layer of flash protection to protect \
themselves, such as against security officers or when welding. Welding \
masks will work.",
SPECIES_PERK_ICON = "mosquito",
SPECIES_PERK_NAME = "Fluffy Pests",
SPECIES_PERK_DESC = "Ex'hau are very similar to insects genetically, and are hurt much more by fly swatters and insecticides.",
),
)

Expand Down
55 changes: 30 additions & 25 deletions code/modules/mob/living/carbon/human/species_types/plasmamen.dm
Original file line number Diff line number Diff line change
Expand Up @@ -207,7 +207,7 @@
return BUTT_SPRITE_PLASMA

/datum/species/plasmaman/get_species_description()
return "Reanimated skeletons of those who died in plasma fires, plasmamen are the first alien sapient beings to be \
return "Reanimated skeletons of those who died in plasma fires, plasmamen were the first sapient alien beings to be \
discovered, even though they're mainly former humans. While horrifying, most manage to return to their previous position in society before their transformation."

/datum/species/plasmaman/get_species_lore()
Expand Down Expand Up @@ -247,47 +247,52 @@
to_add += list(
list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "user-shield",
SPECIES_PERK_NAME = "Protected",
SPECIES_PERK_DESC = "Plasmamen are immune to radiation, poisons, and most diseases.",
SPECIES_PERK_ICON = "user-astronaut",
SPECIES_PERK_NAME = "The Suit",
SPECIES_PERK_DESC = "Plasmamen begin wearing an airtight envirosuit, which they are dependant on to stay alive. \
Their envirohelm is also space-worthy, provides welding protection, and has a built-in headlamp.",
),
list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "bone",
SPECIES_PERK_NAME = "Wound Resistance",
SPECIES_PERK_DESC = "Plasmamen have higher tolerance for damage that would wound others.",
SPECIES_PERK_ICON = "skull",
SPECIES_PERK_NAME = "Hazard-Born",
SPECIES_PERK_DESC = "Plasmamen are reborn in the plasmafires they died in. \
They're completely immune to husking, starving, the cold, and most diseases.",
),
list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "wind",
SPECIES_PERK_NAME = "Plasma Healing",
SPECIES_PERK_DESC = "Plasmamen can heal wounds by consuming plasma.",
SPECIES_PERK_ICON = "bone",
SPECIES_PERK_NAME = "Bones of Steel",
SPECIES_PERK_DESC = "Plasmamen have tough bones infused with solid plasma. \
They only suffer fracture wounds, and are generally harder to wound.",
),
list(
SPECIES_PERK_TYPE = SPECIES_POSITIVE_PERK,
SPECIES_PERK_ICON = "hard-hat",
SPECIES_PERK_NAME = "Protective Helmet",
SPECIES_PERK_DESC = "Plasmamen's helmets provide them shielding from the flashes of welding, as well as an inbuilt flashlight.",
SPECIES_PERK_TYPE = SPECIES_NEGATIVE_PERK,
SPECIES_PERK_ICON = "fire",
SPECIES_PERK_NAME = "Phlogiston",
SPECIES_PERK_DESC = "Plasmamen have a makeup of solid, volatile plasma. \
Exposure to oxygen gas will ignite this plasma, instantly setting them ablaze.",
),
list(
SPECIES_PERK_TYPE = SPECIES_NEGATIVE_PERK,
SPECIES_PERK_ICON = "fire",
SPECIES_PERK_NAME = "Living Torch",
SPECIES_PERK_DESC = "Plasmamen instantly ignite when their body makes contact with oxygen.",
SPECIES_PERK_ICON = "lungs",
SPECIES_PERK_NAME = "Baroxuldium Breath",
SPECIES_PERK_DESC = "Plasmamen can breathe plasma gas safely, but oxygen is highly toxic. \
They receive a tank that can last most of the shift on arrival, and have a spare in their emergency box",
),
list(
SPECIES_PERK_TYPE = SPECIES_NEGATIVE_PERK,
SPECIES_PERK_ICON = "wind",
SPECIES_PERK_NAME = "Plasma Breathing",
SPECIES_PERK_DESC = "Plasmamen must breathe plasma to survive. You receive a tank when you arrive.",
SPECIES_PERK_ICON = "heart-circle-exclamation",
SPECIES_PERK_NAME = "Heartless Husks",
SPECIES_PERK_DESC = "Plasmamen, since their violent rebirth, do not have hearts. \
Combined with how they react to oxygen, surgery and revival may be difficult.",
),
list(
SPECIES_PERK_TYPE = SPECIES_NEGATIVE_PERK,
SPECIES_PERK_ICON = "briefcase-medical",
SPECIES_PERK_NAME = "Complex Biology",
SPECIES_PERK_DESC = "Plasmamen take specialized medical knowledge to be \
treated. Do not expect speedy revival, if you are lucky enough to get \
one at all.",
SPECIES_PERK_ICON = "dna",
SPECIES_PERK_NAME = "Charred Genome",
SPECIES_PERK_DESC = "Plasmaman DNA is too rigid and burnt to hold a genetic sequence, and can't be affect by genetic mutations at all. \
Despite this, they can still be cloned.",
),
)

Expand Down
Loading