/tg/ Station 13 - Modules - TypesDefine Details

code/__DEFINES/wounds.dm

WOUND_DAMAGE_EXPONENTthe 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_DAMAGEany damage dealt over this is ignored for damage rolls unless the target has the frail quirk (35^1.4=145, for reference)
WOUND_MINIMUM_DAMAGEan 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_DAMAGEan attack must do this much damage after armor in order to be eliigible to dismember a suitably mushed bodypart
WOUND_DISMEMBER_OUTRIGHT_THRESHIf 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_WOUNDset wound_bonus on an item or attack to this to disable checking wounding for the attack
WOUND_DEFAULT_WEIGHTIf 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_TRIVIALfor jokey/meme wounds like stubbed toe, no standard messages/sounds or second winds
WOUND_SEVERITY_LOSSoutright dismemberment of limb
WOUND_BLUNTany brute weapon/attack that doesn't have sharpness. rolls for blunt bone wounds
WOUND_SLASHany brute weapon/attack with sharpness = SHARP_EDGED. rolls for slash wounds
WOUND_PIERCEany brute weapon/attack with sharpness = SHARP_POINTY. rolls for piercing wounds
WOUND_BURNany concentrated burn attack (lasers really). rolls for burning wounds
WOUND_ALLMainly 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_MAXthe max amount of determination you can have
WOUND_DETERMINATION_BLEED_MODWhile someone has determination in their system, their bleed rate is slightly reduced
WOUND_COMPETITION_OVERPOWER_GREATERSWounds 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_LESSERSWounds 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_INORGANICHas absolutely fucking nothing, no wounds
BIO_BONEHas bone - allows the victim to suffer T2-T3 bone blunt wounds
BIO_FLESHHas flesh - allows the victim to suffer fleshy slash pierce and burn wounds
BIO_METALHas metal - allows the victim to suffer robotic blunt and burn wounds
BIO_WIREDIs wired internally - allows the victim to suffer electrical wounds (robotic T1-T3 slash/pierce)
BIO_BLOODEDHas bloodflow - can suffer bleeding wounds and can bleed
BIO_JOINTEDIs connected by a joint - can suffer T1 bone blunt wounds (dislocation)
BIO_ROBOTICRobotic - can suffer all metal/wired wounds, such as: UNIMPLEMENTED PLEASE UPDATE ONCE SYNTH WOUNDS 9/5/2023 ~Niko
BIO_FLESH_BONEHas flesh and bone - See BIO_BONE and BIO_FLESH
BIO_STANDARD_UNJOINTEDStandard 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_JOINTEDStandard 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_INTERIORThe given biostate is on the "interior" of the limb - hard shit, protected by exterior
ANATOMY_EXTERIORThe given biostate is on the "exterior" of the limb - soft shit, protects interior
WOUND_SERIES_FLESH_SLASH_BLEEDT1-T3 Bleeding slash wounds. Requires flesh. Can cause bleeding, but doesn't require it. From: slash.dm
WOUND_SERIES_BONE_BLUNT_BASICT1-T3 Basic blunt wounds. T1 requires jointed, but 2-3 require bone. From: bone.dm
WOUND_SERIES_FLESH_BURN_BASICT1-T3 Basic burn wounds. Requires flesh. From: burns.dm
WOUND_SERIES_FLESH_PUNCTURE_BLEEDT1-T3 Bleeding puncture wounds. Requires flesh. Can cause bleeding, but doesn't require it. From: pierce.dm
WOUND_SERIES_LOSS_BASICGeneric loss wounds. See loss.dm
WOUND_SERIES_CRANIAL_FISSURECranial 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_SEVERITYUsed in get_corresponding_wound_type(): Will pick the highest severity wound out of severity_min and severity_max
WOUND_PICK_LOWEST_SEVERITYUsed 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_MODERATEbelow this has no ill effects from infection
WOUND_INFECTION_SEVEREthen below here, you ooze some pus and suffer minor tox damage, but nothing serious
WOUND_INFECTION_CRITICALthen below here, your limb occasionally locks up from damage and infection and briefly becomes disabled. Things are getting really bad
WOUND_INFECTION_SEPTICbelow 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_RATEhow quickly sanitization removes infestation and decays per second
WOUND_SLASH_MAX_BLOODFLOWhow much blood you can lose per tick per slash max.
WOUND_SLASH_DAMAGE_FLOW_COEFFfurther 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_VARIANCEif 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_EXTERIORIf having this wound counts as mangled exterior for dismemberment
MANGLES_INTERIORIf having this wound counts as mangled interior for dismemberment
ACCEPTS_GAUZEIf this wound marks the limb as being allowed to have gauze applied
CAN_BE_GRASPEDIf this wound allows the victim to grasp it
SCAR_SAVE_VERSThe 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_ZONEThe body_zone we're applying to on granting
SCAR_SAVE_DESCThe description we're loading
SCAR_SAVE_PRECISE_LOCATIONThe precise location we're loading
SCAR_SAVE_SEVERITYThe severity the scar had
SCAR_SAVE_BIOLOGYWhether 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_SLOTWhich character slot this was saved to
SCAR_SAVE_CHECK_ANY_BIOif the scar will check for any or all biostates on the limb (defaults to FALSE, so all)
SCAR_SAVE_LENGTHhow many fields we save for each scar (so the number of above fields)
SCAR_CURRENT_VERSIONsaved 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_SLOTShow many scar slots, per character slot, we have to cycle through for persistent scarring, if enabled in character prefs
BLOOD_FLOW_DECREASINGOur wound is clotting and will eventually stop bleeding if this continues
BLOOD_FLOW_STEADYOur wound is bleeding but is holding steady at the same rate.
BLOOD_FLOW_INCREASINGOur wound is bleeding and actively getting worse, like if we're a critical slash or if we're afflicted with heparin
BLEEDING_MESSAGE_BASE_CDHow often can we annoy the player about their bleeding? This duration is extended if it's not serious bleeding
WOUND_BONE_BIO_BONE_GEL_MULTSkeletons 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.