species datum ![code/modules/mob/living/carbon/human/species.dm 15](git.png)
Datum that handles different species in the game.
This datum handles species in the game, such as lizardpeople, mothmen, zombies, skeletons, etc. It is used in carbon humans to determine various things about them, like their food preferences, if they have biological genders, their damage resistances, and more.
Vars | |
armor | Percentage modifier for overall defense of the race, or less defense, if it's negative. |
---|---|
ass_image | For custom overrides for species ass images |
attack_type | Type of damage attack does. Ethereals attack with burn damage for example. |
attack_verb | Punch-specific attack verb. |
breathid | What gas does this species breathe? Used by suffocation screen alerts, most of actual gas breathing is handled by mutantlungs. See [life.dm][code/modules/mob/living/carbon/human/life.dm] |
brutemod | multiplier for brute damage |
burnmod | multiplier for burn damage |
cold_offset | moves their safe minimum temp by this value. |
coldmod | multiplier for damage from cold temperature |
damage_overlay_type | What kind of damage overlays (if any) appear on our species when wounded? If this is "", does not add an overlay. |
disliked_food | Bitfield for food types that the species dislikes, giving them disgust. Humans hate raw food, for example. |
exotic_blood | If your race bleeds something other than bog standard blood, change this to reagent id. For example, ethereals bleed liquid electricity. |
exotic_blood_blend_mode | Which blend mode should this species blood use? |
exotic_blood_color | Assume human as the default blood colour, override this default by species subtypes |
exotic_bloodtype | If your race uses a non standard bloodtype (A+, O-, AB-, etc). For example, lizards have L type blood. |
family_heirlooms | List of family heirlooms this species can get with the family heirloom quirk. List of types. |
fixed_mut_color | To use MUTCOLOR with a fixed color that's independent of the mcolor feature in DNA. |
fly | The actual flying ability given to flying species |
flying_species | Is this species a flying species? Used as an easy check for some things |
grab_sound | Special sound for grabbing |
grad_color | The gradient color used to color the gradient. |
grad_style | The gradient style used for the mob's hair. |
hair_alpha | The alpha used by the hair. 255 is completely solid, 0 is invisible. |
hair_color | This allows races to have specific hair colors. If null, it uses the H's hair/facial hair colors. If "mutcolor", it uses the H's mutant_color. If "fixedmutcolor", it uses fixedmutcolor |
heatmod | multiplier for damage from hot temperature |
hot_offset | moves their safe maximum temp by this value. |
id | If the game needs to manually check your race to do something not included in a proc here, it will use this. |
inert_mutation | Special mutation that can be found in the genepool exclusively in this species. Dont leave empty or changing species will be a headache |
inherent_biotypes | List of biotypes the mob belongs to. Used by diseases. |
inherent_traits | Generic traits tied to having the species. |
liked_food | Bitfield for food types that the species likes, giving them a mood boost. Lizards like meat, for example. |
meat | What the species drops when gibbed by a gibber machine. |
minimal_damage_threshold | BLUEMOON ADD START - если брут или бёрн ниже этого порога, то урон не наносится |
mutant_bodyparts | Visible CURRENT bodyparts that are unique to a species. DO NOT USE THIS AS A LIST OF ALL POSSIBLE BODYPARTS AS IT WILL FUCK SHIT UP! Changes to this list for non-species specific bodyparts (ie cat ears and tails) should be assigned at organ level if possible. Assoc values are defaults for given bodyparts, also modified by aforementioned organs. They also allow for faster '[]' list access versus 'in'. Other than that, they are useless right now. Layer hiding is handled by [/datum/species/proc/handle_mutant_bodyparts] below. |
mutant_brain | Replaces default brain with a different organ |
mutant_heart | Replaces default heart with a different organ |
mutant_organs | Internal organs that are unique to this race, like a tail. |
mutantappendix | Replaces default appendix with a different organ. |
mutantears | Replaces default ears with a different organ |
mutanteyes | Replaces default lungs with a different organ Replaces default eyes with a different organ |
mutanthands | Forces an item into this species' hands. Only an honorary mutantthing because this is not an organ and not loaded in the same way, you've been warned to do your research. |
mutantliver | Replaces default liver with a different organ |
mutantstomach | Replaces default stomach with a different organ |
mutanttail | CIT SPECIFIC Mutant tail |
mutanttongue | Replaces default tongue with a different organ |
name | This is the fluff name. They are displayed on health analyzers and in the character setup menu. Leave them generic for other servers to customize. |
no_equip | Inventory slots the race can't equip stuff to. Golems cannot wear jumpsuits, for example. |
nojumpsuit | Allows the species to equip items that normally require a jumpsuit without having one equipped. Used by golems. |
offset_features | Clothing offsets. If a species has a different body than other species, you can offset clothing so they look less weird. |
outfit_important_for_life | A path to an outfit that is important for species life e.g. plasmaman outfit |
payday_modifier | multiplier for money paid at payday |
punchdamagehigh | Highest possible punch damage this species can give. |
punchdamagelow | Lowest possible punch damage this species can give. If this is set to 0, punches will always miss. |
punchstunthreshold | Damage at which punches from this race will stun |
say_mod | Affects the speech message, for example: Motharula flutters, "My speech message is flutters!" |
sexes | Whether or not the race has sexual characteristics (biological genders). At the moment this is only FALSE for skeletons and shadows |
siemens_coeff | Base electrocution coefficient. Basically a multiplier for damage from electrocutions. |
skinned_type | What skin the species drops when gibbed by a gibber machine. |
special_step_sounds | Sounds to override barefeet walking |
species_language_holder | What languages this species can understand and say. Use a language holder datum in this var. |
species_traits | Species-only traits. Can be found in code/__DEFINES/DNA.dm |
speedmod | Multiplier for the race's speed. Positive numbers make it move slower, negative numbers make it move faster. |
stunmod | multiplier for stun durations |
toxic_food | Bitfield for food types that the species absolutely hates, giving them even more disgust than disliked food. Meat is "toxic" to moths, for example. |
typing_indicator_state | Our default override for typing indicator state |
use_skintones | Does the species use skintones or not? As of now only used by humans. |
wings_icon | Current wings icon |
Procs | |
check_roundstart_eligible | Checks if a species is eligible to be picked at roundstart. |
copy_properties_from | Copies some vars and properties over that should be kept when creating a copy of this species. |
get_biological_state | The human species version of /mob/living/carbon/proc/get_biological_state. Depends on the HAS_FLESH and HAS_BONE species traits, having bones lets you have bone wounds, having flesh lets you have burn, slash, and piercing wounds |
handle_digestion | LIFE |
on_species_gain | Proc called when a carbon becomes this species. |
random_name | Generates a random name for a carbon. |
regenerate_organs | Corrects organs in a carbon, removing ones it doesn't need and adding ones it does. |
Var Details
armor ![code/modules/mob/living/carbon/human/species.dm 110](git.png)
Percentage modifier for overall defense of the race, or less defense, if it's negative.
ass_image ![code/modules/mob/living/carbon/human/species.dm 238](git.png)
For custom overrides for species ass images
attack_type ![code/modules/mob/living/carbon/human/species.dm 128](git.png)
Type of damage attack does. Ethereals attack with burn damage for example.
attack_verb ![code/modules/mob/living/carbon/human/species.dm 172](git.png)
Punch-specific attack verb.
breathid ![code/modules/mob/living/carbon/human/species.dm 182](git.png)
What gas does this species breathe? Used by suffocation screen alerts, most of actual gas breathing is handled by mutantlungs. See [life.dm][code/modules/mob/living/carbon/human/life.dm]
brutemod ![code/modules/mob/living/carbon/human/species.dm 112](git.png)
multiplier for brute damage
burnmod ![code/modules/mob/living/carbon/human/species.dm 114](git.png)
multiplier for burn damage
cold_offset ![code/modules/mob/living/carbon/human/species.dm 118](git.png)
moves their safe minimum temp by this value.
coldmod ![code/modules/mob/living/carbon/human/species.dm 116](git.png)
multiplier for damage from cold temperature
damage_overlay_type ![code/modules/mob/living/carbon/human/species.dm 139](git.png)
What kind of damage overlays (if any) appear on our species when wounded? If this is "", does not add an overlay.
disliked_food ![code/modules/mob/living/carbon/human/species.dm 82](git.png)
Bitfield for food types that the species dislikes, giving them disgust. Humans hate raw food, for example.
exotic_blood ![code/modules/mob/living/carbon/human/species.dm 67](git.png)
If your race bleeds something other than bog standard blood, change this to reagent id. For example, ethereals bleed liquid electricity.
exotic_blood_blend_mode ![code/modules/mob/living/carbon/human/species.dm 73](git.png)
Which blend mode should this species blood use?
exotic_blood_color ![code/modules/mob/living/carbon/human/species.dm 71](git.png)
Assume human as the default blood colour, override this default by species subtypes
exotic_bloodtype ![code/modules/mob/living/carbon/human/species.dm 69](git.png)
If your race uses a non standard bloodtype (A+, O-, AB-, etc). For example, lizards have L type blood.
family_heirlooms ![code/modules/mob/living/carbon/human/species.dm 241](git.png)
List of family heirlooms this species can get with the family heirloom quirk. List of types.
fixed_mut_color ![code/modules/mob/living/carbon/human/species.dm 141](git.png)
To use MUTCOLOR with a fixed color that's independent of the mcolor feature in DNA.
fly ![code/modules/mob/living/carbon/human/species.dm 154](git.png)
The actual flying ability given to flying species
flying_species ![code/modules/mob/living/carbon/human/species.dm 152](git.png)
Is this species a flying species? Used as an easy check for some things
grab_sound ![code/modules/mob/living/carbon/human/species.dm 147](git.png)
Special sound for grabbing
grad_color ![code/modules/mob/living/carbon/human/species.dm 62](git.png)
The gradient color used to color the gradient.
grad_style ![code/modules/mob/living/carbon/human/species.dm 60](git.png)
The gradient style used for the mob's hair.
hair_alpha ![code/modules/mob/living/carbon/human/species.dm 58](git.png)
The alpha used by the hair. 255 is completely solid, 0 is invisible.
hair_color ![code/modules/mob/living/carbon/human/species.dm 56](git.png)
This allows races to have specific hair colors. If null, it uses the H's hair/facial hair colors. If "mutcolor", it uses the H's mutant_color. If "fixedmutcolor", it uses fixedmutcolor
heatmod ![code/modules/mob/living/carbon/human/species.dm 122](git.png)
multiplier for damage from hot temperature
hot_offset ![code/modules/mob/living/carbon/human/species.dm 120](git.png)
moves their safe maximum temp by this value.
id ![code/modules/mob/living/carbon/human/species.dm 17](git.png)
If the game needs to manually check your race to do something not included in a proc here, it will use this.
inert_mutation ![code/modules/mob/living/carbon/human/species.dm 143](git.png)
Special mutation that can be found in the genepool exclusively in this species. Dont leave empty or changing species will be a headache
inherent_biotypes ![code/modules/mob/living/carbon/human/species.dm 165](git.png)
List of biotypes the mob belongs to. Used by diseases.
inherent_traits ![code/modules/mob/living/carbon/human/species.dm 163](git.png)
Generic traits tied to having the species.
liked_food ![code/modules/mob/living/carbon/human/species.dm 80](git.png)
Bitfield for food types that the species likes, giving them a mood boost. Lizards like meat, for example.
meat ![code/modules/mob/living/carbon/human/species.dm 75](git.png)
What the species drops when gibbed by a gibber machine.
minimal_damage_threshold ![code/modules/mob/living/carbon/human/species.dm 244](git.png)
BLUEMOON ADD START - если брут или бёрн ниже этого порога, то урон не наносится
mutant_bodyparts ![code/modules/mob/living/carbon/human/species.dm 104](git.png)
Visible CURRENT bodyparts that are unique to a species. DO NOT USE THIS AS A LIST OF ALL POSSIBLE BODYPARTS AS IT WILL FUCK SHIT UP! Changes to this list for non-species specific bodyparts (ie cat ears and tails) should be assigned at organ level if possible. Assoc values are defaults for given bodyparts, also modified by aforementioned organs. They also allow for faster '[]' list access versus 'in'. Other than that, they are useless right now. Layer hiding is handled by [/datum/species/proc/handle_mutant_bodyparts] below.
mutant_brain ![code/modules/mob/living/carbon/human/species.dm 188](git.png)
Replaces default brain with a different organ
mutant_heart ![code/modules/mob/living/carbon/human/species.dm 190](git.png)
Replaces default heart with a different organ
mutant_organs ![code/modules/mob/living/carbon/human/species.dm 106](git.png)
Internal organs that are unique to this race, like a tail.
mutantappendix ![code/modules/mob/living/carbon/human/species.dm 204](git.png)
Replaces default appendix with a different organ.
mutantears ![code/modules/mob/living/carbon/human/species.dm 196](git.png)
Replaces default ears with a different organ
mutanteyes ![code/modules/mob/living/carbon/human/species.dm 194](git.png)
Replaces default lungs with a different organ Replaces default eyes with a different organ
mutanthands ![code/modules/mob/living/carbon/human/species.dm 206](git.png)
Forces an item into this species' hands. Only an honorary mutantthing because this is not an organ and not loaded in the same way, you've been warned to do your research.
mutantliver ![code/modules/mob/living/carbon/human/species.dm 200](git.png)
Replaces default liver with a different organ
mutantstomach ![code/modules/mob/living/carbon/human/species.dm 202](git.png)
Replaces default stomach with a different organ
mutanttail ![code/modules/mob/living/carbon/human/species.dm 209](git.png)
CIT SPECIFIC Mutant tail
mutanttongue ![code/modules/mob/living/carbon/human/species.dm 198](git.png)
Replaces default tongue with a different organ
name ![code/modules/mob/living/carbon/human/species.dm 21](git.png)
This is the fluff name. They are displayed on health analyzers and in the character setup menu. Leave them generic for other servers to customize.
no_equip ![code/modules/mob/living/carbon/human/species.dm 86](git.png)
Inventory slots the race can't equip stuff to. Golems cannot wear jumpsuits, for example.
nojumpsuit ![code/modules/mob/living/carbon/human/species.dm 88](git.png)
Allows the species to equip items that normally require a jumpsuit without having one equipped. Used by golems.
offset_features ![code/modules/mob/living/carbon/human/species.dm 30](git.png)
Clothing offsets. If a species has a different body than other species, you can offset clothing so they look less weird.
outfit_important_for_life ![code/modules/mob/living/carbon/human/species.dm 149](git.png)
A path to an outfit that is important for species life e.g. plasmaman outfit
payday_modifier ![code/modules/mob/living/carbon/human/species.dm 126](git.png)
multiplier for money paid at payday
punchdamagehigh ![code/modules/mob/living/carbon/human/species.dm 132](git.png)
Highest possible punch damage this species can give.
punchdamagelow ![code/modules/mob/living/carbon/human/species.dm 130](git.png)
Lowest possible punch damage this species can give. If this is set to 0, punches will always miss.
punchstunthreshold ![code/modules/mob/living/carbon/human/species.dm 134](git.png)
Damage at which punches from this race will stun
say_mod ![code/modules/mob/living/carbon/human/species.dm 92](git.png)
Affects the speech message, for example: Motharula flutters, "My speech message is flutters!"
sexes ![code/modules/mob/living/carbon/human/species.dm 26](git.png)
Whether or not the race has sexual characteristics (biological genders). At the moment this is only FALSE for skeletons and shadows
siemens_coeff ![code/modules/mob/living/carbon/human/species.dm 137](git.png)
Base electrocution coefficient. Basically a multiplier for damage from electrocutions.
skinned_type ![code/modules/mob/living/carbon/human/species.dm 78](git.png)
What skin the species drops when gibbed by a gibber machine.
special_step_sounds ![code/modules/mob/living/carbon/human/species.dm 145](git.png)
Sounds to override barefeet walking
species_language_holder ![code/modules/mob/living/carbon/human/species.dm 94](git.png)
What languages this species can understand and say. Use a language holder datum in this var.
species_traits ![code/modules/mob/living/carbon/human/species.dm 161](git.png)
Species-only traits. Can be found in code/__DEFINES/DNA.dm
speedmod ![code/modules/mob/living/carbon/human/species.dm 108](git.png)
Multiplier for the race's speed. Positive numbers make it move slower, negative numbers make it move faster.
stunmod ![code/modules/mob/living/carbon/human/species.dm 124](git.png)
multiplier for stun durations
toxic_food ![code/modules/mob/living/carbon/human/species.dm 84](git.png)
Bitfield for food types that the species absolutely hates, giving them even more disgust than disliked food. Meat is "toxic" to moths, for example.
typing_indicator_state ![code/modules/mob/living/carbon/human/species.dm 225](git.png)
Our default override for typing indicator state
use_skintones ![code/modules/mob/living/carbon/human/species.dm 65](git.png)
Does the species use skintones or not? As of now only used by humans.
wings_icon ![code/modules/mob/living/carbon/human/species.dm 156](git.png)
Current wings icon
Proc Details
check_roundstart_eligible
Checks if a species is eligible to be picked at roundstart.
Checks the config to see if this species is allowed to be picked in the character setup menu. Used by /proc/generate_selectable_species.
copy_properties_from
Copies some vars and properties over that should be kept when creating a copy of this species.
Used by slimepeople to copy themselves, and by the DNA datum to hardset DNA to a species Arguments:
- old_species - The species that the carbon used to be before copying
get_biological_state
The human species version of /mob/living/carbon/proc/get_biological_state. Depends on the HAS_FLESH and HAS_BONE species traits, having bones lets you have bone wounds, having flesh lets you have burn, slash, and piercing wounds
handle_digestion
LIFE
on_species_gain
Proc called when a carbon becomes this species.
This sets up and adds/changes/removes things, qualities, abilities, and traits so that the transformation is as smooth and bugfree as possible. Produces a [COMSIG_SPECIES_GAIN] signal. Arguments:
- C - Carbon, this is whoever became the new species.
- old_species - The species that the carbon used to be before becoming this race, used for regenerating organs.
- pref_load - Preferences to be loaded from character setup, loads in preferred mutant things like bodyparts, digilegs, skin color, etc.
random_name
Generates a random name for a carbon.
This generates a random unique name based on a human's species and gender. Arguments:
- gender - The gender that the name should adhere to. Use MALE for male names, use anything else for female names.
- unique - If true, ensures that this new name is not a duplicate of anyone else's name currently on the station.
- lastname - Does this species' naming system adhere to the last name system? Set to false if it doesn't.
regenerate_organs
Corrects organs in a carbon, removing ones it doesn't need and adding ones it does.
Takes all organ slots, removes organs a species should not have, adds organs a species should have. can use replace_current to refresh all organs, creating an entirely new set.
Arguments:
- C - carbon, the owner of the species datum AKA whoever we're regenerating organs in
- old_species - datum, used when regenerate organs is called in a switching species to remove old mutant organs.
- replace_current - boolean, forces all old organs to get deleted whether or not they pass the species' ability to keep that organ
- excluded_zones - list, add zone defines to block organs inside of the zones from getting handled. see headless mutation for an example