code/__DEFINES/wounds.dm
WOUND_DAMAGE_EXPONENT | the cornerstone of the wound threshold system, your base wound roll for any attack is rand(1, damage^this), after armor reduces said damage. See /obj/item/bodypart/proc/check_wounding |
---|---|
WOUND_MAX_CONSIDERED_DAMAGE | any damage dealt over this is ignored for damage rolls unless the target has the frail quirk (35^1.4=145, for reference) |
WOUND_MINIMUM_DAMAGE | an attack must do this much damage after armor in order to roll for being a wound (so pressure damage/being on fire doesn't proc it) |
DISMEMBER_MINIMUM_DAMAGE | an attack must do this much damage after armor in order to be eliigible to dismember a suitably mushed bodypart |
WOUND_DISMEMBER_OUTRIGHT_THRESH | If an attack rolls this high with their wound (including mods), we try to outright dismember the limb. Note 250 is high enough that with a perfect max roll of 145 (see max cons'd damage), you'd need +100 in mods to do this |
CANT_WOUND | set wound_bonus on an item or attack to this to disable checking wounding for the attack |
WOUND_DEFAULT_WEIGHT | If there are multiple possible and valid wounds for the same type and severity, weight will be used to pick among them. See _wound_pregen_data.dm for more details This is used in pick_weight, so use integers |
WOUND_SEVERITY_TRIVIAL | for jokey/meme wounds like stubbed toe, no standard messages/sounds or second winds |
WOUND_SEVERITY_LOSS | outright dismemberment of limb |
WOUND_BLUNT | any brute weapon/attack that doesn't have sharpness. rolls for blunt bone wounds |
WOUND_SLASH | any brute weapon/attack with sharpness = SHARP_EDGED. rolls for slash wounds |
WOUND_PIERCE | any brute weapon/attack with sharpness = SHARP_POINTY. rolls for piercing wounds |
WOUND_BURN | any concentrated burn attack (lasers really). rolls for burning wounds |
WOUND_ALL | Mainly a define used for wound_pregen_data, if a pregen data instance expects this, it will accept any and all wound types, even none at all |
WOUND_DETERMINATION_MAX | the max amount of determination you can have |
WOUND_DETERMINATION_BLEED_MOD | While someone has determination in their system, their bleed rate is slightly reduced |
WOUND_COMPETITION_OVERPOWER_GREATERS | Wounds using this competition mode will remove any wounds of a greater severity than itself in a random wound roll. In most cases, you dont want to use this. |
WOUND_COMPETITION_OVERPOWER_LESSERS | Wounds using this competition mode will remove any wounds of a lower severity than itself in a random wound roll. Used for ensuring the worse case scenario of a given injury_roll. |
BIO_INORGANIC | Has absolutely fucking nothing, no wounds |
BIO_BONE | Has bone - allows the victim to suffer T2-T3 bone blunt wounds |
BIO_FLESH | Has flesh - allows the victim to suffer fleshy slash pierce and burn wounds |
BIO_METAL | Has metal - allows the victim to suffer robotic blunt and burn wounds |
BIO_WIRED | Is wired internally - allows the victim to suffer electrical wounds (robotic T1-T3 slash/pierce) |
BIO_BLOODED | Has bloodflow - can suffer bleeding wounds and can bleed |
BIO_JOINTED | Is connected by a joint - can suffer T1 bone blunt wounds (dislocation) |
BIO_ROBOTIC | Robotic - can suffer all metal/wired wounds, such as: UNIMPLEMENTED PLEASE UPDATE ONCE SYNTH WOUNDS 9/5/2023 ~Niko |
BIO_FLESH_BONE | Has flesh and bone - See BIO_BONE and BIO_FLESH |
BIO_STANDARD_UNJOINTED | Standard humanoid - can bleed and suffer all flesh/bone wounds, such as: T1-3 slash/pierce/burn/blunt, except dislocations. Think human heads/chests |
BIO_STANDARD_JOINTED | Standard humanoid limbs - can bleed and suffer all flesh/bone wounds, such as: T1-3 slash/pierce/burn/blunt. Can also bleed, and be dislocated. Think human arms and legs |
ANATOMY_INTERIOR | The given biostate is on the "interior" of the limb - hard shit, protected by exterior |
ANATOMY_EXTERIOR | The given biostate is on the "exterior" of the limb - soft shit, protects interior |
WOUND_SERIES_FLESH_SLASH_BLEED | T1-T3 Bleeding slash wounds. Requires flesh. Can cause bleeding, but doesn't require it. From: slash.dm |
WOUND_SERIES_BONE_BLUNT_BASIC | T1-T3 Basic blunt wounds. T1 requires jointed, but 2-3 require bone. From: bone.dm |
WOUND_SERIES_FLESH_BURN_BASIC | T1-T3 Basic burn wounds. Requires flesh. From: burns.dm |
WOUND_SERIES_FLESH_PUNCTURE_BLEED | T1-T3 Bleeding puncture wounds. Requires flesh. Can cause bleeding, but doesn't require it. From: pierce.dm |
WOUND_SERIES_LOSS_BASIC | Generic loss wounds. See loss.dm |
WOUND_SERIES_CRANIAL_FISSURE | Cranial fissure wound. |
/proc/generate_wound_static_data | Constructs [GLOB.all_wound_pregen_data] by iterating through a typecache of pregen data, ignoring abstract types, and instantiating the rest. |
/proc/generate_wound_series_collection | Generates [wound_series_collections] by iterating through all pregen_data. Refer to the mentioned list for documentation |
WOUND_PICK_HIGHEST_SEVERITY | Used in get_corresponding_wound_type(): Will pick the highest severity wound out of severity_min and severity_max |
WOUND_PICK_LOWEST_SEVERITY | Used in get_corresponding_wound_type(): Will pick the lowest severity wound out of severity_min and severity_max |
/proc/get_corresponding_wound_type | Searches through all wounds for any of proper type, series, and biostate, and then returns a single one via pickweight. Is able to discern between, say, a flesh slash wound, and a metallic slash wound, and will return the respective one for the provided limb. |
WOUND_INFECTION_MODERATE | below this has no ill effects from infection |
WOUND_INFECTION_SEVERE | then below here, you ooze some pus and suffer minor tox damage, but nothing serious |
WOUND_INFECTION_CRITICAL | then below here, your limb occasionally locks up from damage and infection and briefly becomes disabled. Things are getting really bad |
WOUND_INFECTION_SEPTIC | below here, your skin is almost entirely falling off and your limb locks up more frequently. You are within a stone's throw of septic paralysis and losing the limb |
WOUND_BURN_SANITIZATION_RATE | how quickly sanitization removes infestation and decays per second |
WOUND_SLASH_MAX_BLOODFLOW | how much blood you can lose per tick per slash max. |
WOUND_SLASH_DAMAGE_FLOW_COEFF | further slash attacks on a bodypart with a slash wound have their blood_flow further increased by damage * this (10 damage slash adds .25 flow) |
WOUND_BONE_HEAD_TIME_VARIANCE | if we suffer a bone wound to the head that creates brain traumas, the timer for the trauma cycle is +/- by this percent (0-100) |
MANGLES_EXTERIOR | If having this wound counts as mangled exterior for dismemberment |
MANGLES_INTERIOR | If having this wound counts as mangled interior for dismemberment |
ACCEPTS_GAUZE | If this wound marks the limb as being allowed to have gauze applied |
CAN_BE_GRASPED | If this wound allows the victim to grasp it |
SCAR_SAVE_VERS | The version number of the scar we're saving, any scars being loaded below this number will be discarded, see SCAR_CURRENT_VERSION below |
SCAR_SAVE_ZONE | The body_zone we're applying to on granting |
SCAR_SAVE_DESC | The description we're loading |
SCAR_SAVE_PRECISE_LOCATION | The precise location we're loading |
SCAR_SAVE_SEVERITY | The severity the scar had |
SCAR_SAVE_BIOLOGY | Whether this is a BIO_BONE scar, a BIO_FLESH scar, or a BIO_FLESH_BONE scar (so you can't load fleshy human scars on a plasmaman character) |
SCAR_SAVE_CHAR_SLOT | Which character slot this was saved to |
SCAR_SAVE_CHECK_ANY_BIO | if the scar will check for any or all biostates on the limb (defaults to FALSE, so all) |
SCAR_SAVE_LENGTH | how many fields we save for each scar (so the number of above fields) |
SCAR_CURRENT_VERSION | saved scars with a version lower than this will be discarded, increment when you update the persistent scarring format in a way that invalidates previous saved scars (new fields, reordering, etc) |
PERSISTENT_SCAR_SLOTS | how many scar slots, per character slot, we have to cycle through for persistent scarring, if enabled in character prefs |
BLOOD_FLOW_DECREASING | Our wound is clotting and will eventually stop bleeding if this continues |
BLOOD_FLOW_STEADY | Our wound is bleeding but is holding steady at the same rate. |
BLOOD_FLOW_INCREASING | Our wound is bleeding and actively getting worse, like if we're a critical slash or if we're afflicted with heparin |
BLEEDING_MESSAGE_BASE_CD | How often can we annoy the player about their bleeding? This duration is extended if it's not serious bleeding |
WOUND_BONE_BIO_BONE_GEL_MULT | Skeletons and other BIO_ONLY_BONE creatures respond much better to bone gel and can have severe and critical bone wounds healed by bone gel alone. The duration it takes to heal is also multiplied by this, lucky them! |
Define Details
ACCEPTS_GAUZE
If this wound marks the limb as being allowed to have gauze applied
ANATOMY_EXTERIOR
The given biostate is on the "exterior" of the limb - soft shit, protects interior
ANATOMY_INTERIOR
The given biostate is on the "interior" of the limb - hard shit, protected by exterior
BIO_BLOODED
Has bloodflow - can suffer bleeding wounds and can bleed
BIO_BONE
Has bone - allows the victim to suffer T2-T3 bone blunt wounds
BIO_FLESH
Has flesh - allows the victim to suffer fleshy slash pierce and burn wounds
BIO_FLESH_BONE
Has flesh and bone - See BIO_BONE and BIO_FLESH
BIO_INORGANIC
Has absolutely fucking nothing, no wounds
BIO_JOINTED
Is connected by a joint - can suffer T1 bone blunt wounds (dislocation)
BIO_METAL
Has metal - allows the victim to suffer robotic blunt and burn wounds
BIO_ROBOTIC
Robotic - can suffer all metal/wired wounds, such as: UNIMPLEMENTED PLEASE UPDATE ONCE SYNTH WOUNDS 9/5/2023 ~Niko
BIO_STANDARD_JOINTED
Standard humanoid limbs - can bleed and suffer all flesh/bone wounds, such as: T1-3 slash/pierce/burn/blunt. Can also bleed, and be dislocated. Think human arms and legs
BIO_STANDARD_UNJOINTED
Standard humanoid - can bleed and suffer all flesh/bone wounds, such as: T1-3 slash/pierce/burn/blunt, except dislocations. Think human heads/chests
BIO_WIRED
Is wired internally - allows the victim to suffer electrical wounds (robotic T1-T3 slash/pierce)
BLEEDING_MESSAGE_BASE_CD
How often can we annoy the player about their bleeding? This duration is extended if it's not serious bleeding
BLOOD_FLOW_DECREASING
Our wound is clotting and will eventually stop bleeding if this continues
BLOOD_FLOW_INCREASING
Our wound is bleeding and actively getting worse, like if we're a critical slash or if we're afflicted with heparin
BLOOD_FLOW_STEADY
Our wound is bleeding but is holding steady at the same rate.
CANT_WOUND
set wound_bonus on an item or attack to this to disable checking wounding for the attack
CAN_BE_GRASPED
If this wound allows the victim to grasp it
DISMEMBER_MINIMUM_DAMAGE
an attack must do this much damage after armor in order to be eliigible to dismember a suitably mushed bodypart
MANGLES_EXTERIOR
If having this wound counts as mangled exterior for dismemberment
MANGLES_INTERIOR
If having this wound counts as mangled interior for dismemberment
PERSISTENT_SCAR_SLOTS
how many scar slots, per character slot, we have to cycle through for persistent scarring, if enabled in character prefs
SCAR_CURRENT_VERSION
saved scars with a version lower than this will be discarded, increment when you update the persistent scarring format in a way that invalidates previous saved scars (new fields, reordering, etc)
SCAR_SAVE_BIOLOGY
Whether this is a BIO_BONE scar, a BIO_FLESH scar, or a BIO_FLESH_BONE scar (so you can't load fleshy human scars on a plasmaman character)
SCAR_SAVE_CHAR_SLOT
Which character slot this was saved to
SCAR_SAVE_CHECK_ANY_BIO
if the scar will check for any or all biostates on the limb (defaults to FALSE, so all)
SCAR_SAVE_DESC
The description we're loading
SCAR_SAVE_LENGTH
how many fields we save for each scar (so the number of above fields)
SCAR_SAVE_PRECISE_LOCATION
The precise location we're loading
SCAR_SAVE_SEVERITY
The severity the scar had
SCAR_SAVE_VERS
The version number of the scar we're saving, any scars being loaded below this number will be discarded, see SCAR_CURRENT_VERSION below
SCAR_SAVE_ZONE
The body_zone we're applying to on granting
WOUND_ALL
Mainly a define used for wound_pregen_data, if a pregen data instance expects this, it will accept any and all wound types, even none at all
WOUND_BLUNT
any brute weapon/attack that doesn't have sharpness. rolls for blunt bone wounds
WOUND_BONE_BIO_BONE_GEL_MULT
Skeletons and other BIO_ONLY_BONE creatures respond much better to bone gel and can have severe and critical bone wounds healed by bone gel alone. The duration it takes to heal is also multiplied by this, lucky them!
WOUND_BONE_HEAD_TIME_VARIANCE
if we suffer a bone wound to the head that creates brain traumas, the timer for the trauma cycle is +/- by this percent (0-100)
WOUND_BURN
any concentrated burn attack (lasers really). rolls for burning wounds
WOUND_BURN_SANITIZATION_RATE
how quickly sanitization removes infestation and decays per second
WOUND_COMPETITION_OVERPOWER_GREATERS
Wounds using this competition mode will remove any wounds of a greater severity than itself in a random wound roll. In most cases, you dont want to use this.
WOUND_COMPETITION_OVERPOWER_LESSERS
Wounds using this competition mode will remove any wounds of a lower severity than itself in a random wound roll. Used for ensuring the worse case scenario of a given injury_roll.
WOUND_DAMAGE_EXPONENT
the cornerstone of the wound threshold system, your base wound roll for any attack is rand(1, damage^this), after armor reduces said damage. See /obj/item/bodypart/proc/check_wounding
WOUND_DEFAULT_WEIGHT
If there are multiple possible and valid wounds for the same type and severity, weight will be used to pick among them. See _wound_pregen_data.dm for more details This is used in pick_weight, so use integers
WOUND_DETERMINATION_BLEED_MOD
While someone has determination in their system, their bleed rate is slightly reduced
WOUND_DETERMINATION_MAX
the max amount of determination you can have
WOUND_DISMEMBER_OUTRIGHT_THRESH
If an attack rolls this high with their wound (including mods), we try to outright dismember the limb. Note 250 is high enough that with a perfect max roll of 145 (see max cons'd damage), you'd need +100 in mods to do this
WOUND_INFECTION_CRITICAL
then below here, your limb occasionally locks up from damage and infection and briefly becomes disabled. Things are getting really bad
WOUND_INFECTION_MODERATE
below this has no ill effects from infection
WOUND_INFECTION_SEPTIC
below here, your skin is almost entirely falling off and your limb locks up more frequently. You are within a stone's throw of septic paralysis and losing the limb
WOUND_INFECTION_SEVERE
then below here, you ooze some pus and suffer minor tox damage, but nothing serious
WOUND_MAX_CONSIDERED_DAMAGE
any damage dealt over this is ignored for damage rolls unless the target has the frail quirk (35^1.4=145, for reference)
WOUND_MINIMUM_DAMAGE
an attack must do this much damage after armor in order to roll for being a wound (so pressure damage/being on fire doesn't proc it)
WOUND_PICK_HIGHEST_SEVERITY
Used in get_corresponding_wound_type(): Will pick the highest severity wound out of severity_min and severity_max
WOUND_PICK_LOWEST_SEVERITY
Used in get_corresponding_wound_type(): Will pick the lowest severity wound out of severity_min and severity_max
WOUND_PIERCE
any brute weapon/attack with sharpness = SHARP_POINTY. rolls for piercing wounds
WOUND_SERIES_BONE_BLUNT_BASIC
T1-T3 Basic blunt wounds. T1 requires jointed, but 2-3 require bone. From: bone.dm
WOUND_SERIES_CRANIAL_FISSURE
Cranial fissure wound.
WOUND_SERIES_FLESH_BURN_BASIC
T1-T3 Basic burn wounds. Requires flesh. From: burns.dm
WOUND_SERIES_FLESH_PUNCTURE_BLEED
T1-T3 Bleeding puncture wounds. Requires flesh. Can cause bleeding, but doesn't require it. From: pierce.dm
WOUND_SERIES_FLESH_SLASH_BLEED
T1-T3 Bleeding slash wounds. Requires flesh. Can cause bleeding, but doesn't require it. From: slash.dm
WOUND_SERIES_LOSS_BASIC
Generic loss wounds. See loss.dm
WOUND_SEVERITY_LOSS
outright dismemberment of limb
WOUND_SEVERITY_TRIVIAL
for jokey/meme wounds like stubbed toe, no standard messages/sounds or second winds
WOUND_SLASH
any brute weapon/attack with sharpness = SHARP_EDGED. rolls for slash wounds
WOUND_SLASH_DAMAGE_FLOW_COEFF
further slash attacks on a bodypart with a slash wound have their blood_flow further increased by damage * this (10 damage slash adds .25 flow)
WOUND_SLASH_MAX_BLOODFLOW
how much blood you can lose per tick per slash max.