Daedalus Dock - Modules - TypesVar Details - Proc Details

living

Brutal damage caused by brute force (punching, being clubbed by a toolbox ect... this also accounts for pressure damage) Oxygen depravation damage (no air in lungs) Toxic damage caused by being poisoned or radiated Burn damage caused by being way too hot, too cold or burnt. Damage caused by being cloned or ejected from the cloner early. slimes also deal cloneloss damage to victims Used by [living/Bump()][/mob/living/proc/Bump] and [living/PushAM()][/mob/living/proc/PushAM] to prevent potential infinite loop.

Vars

active_grabsA lazylist of grab objects we have
blood_volumeconverted to a list of stun absorption sources this mob has when one is added
body_positionVariable to track the body position of a mob, regardgless of the actual angle of rotation (usually matching it, but not necessarily).
body_position_pixel_x_offsetThe y amount a mob's sprite should be offset due to the current position they're in (e.g. lying down moves your sprite down)
body_position_pixel_y_offsetThe x amount a mob's sprite should be offset due to the current position they're in
body_temp_changesList of changes to body temperature, used by desease symtoms like fever
bubble_iconused to prevent spam with smoke reagent reaction on mob.
butcher_difficultythese will always be yielded from butchering
butcher_resultsthe id a mob gets when it's created
can_buckle_toIs this mob allowed to be buckled/unbuckled to/from things?
chem_effectsChemical effects. Built by the chemical processing stage of Life().
combat_modeIf combat mode is on or not
current_turf_slowdownwhat multiplicative slowdown we get from turfs currently.
default_num_handsHow many hands does this mob have by default. This shouldn't change at runtime.
default_num_legsdoes the mob have distinct limbs?(arms,legs, chest,head) How many legs does this mob have by default. This shouldn't change at runtime.
disease_resistanceslist of all diseases in a mob
fire_stack_decay_rateRate at which fire stacks should decay from this mob
gravity_stateWhat our current gravity state is. Used to avoid duplicate animates and such
guaranteed_butcher_resultsthese will be yielded from butchering with a probability chance equal to the butcher item's effectiveness
gunpointGunpoint container
hardcrit_thresholdwhen the mob goes from "normal" to crit When the mob enters hard critical state and is fully incapacitated.
has_limbsmore or less efficiency to metabolize helpful/harmful reagents and regulate body temperature..
healthThe mob's current health.
health_doll_iconwhat icon the mob uses for speechbubbles
held_typeThe type of /obj/item/mob_holder to create if the mob is picked up.
held_w_classThe w_class of the holder when held.
implantsa list of all status effects the mob has
incorporeal_moveAllows mobs to move through dense areas without restriction. For instance, in space or out of holder objects.
last_bumpedif this exists AND the normal sprite is bigger than 32x32, this is the replacement icon state (because health doll size limitations). the icon will always be screen_gen.dmi
last_specialDirectly affects how long a mob will hallucinate for
last_vent_dirThe last direction we moved in a vent. Used to make holding two directions feel nice
lastattackerBadminnery resize
life_ticksHow many ticks of Life() has this mob gone through
living_flagsGeneric bitflags for boolean conditions at the /mob/living level. Keep this for inherent traits of living types, instead of runtime-changeable ones.
lying_angleNumber of degrees of rotation of a mob. 0 means no rotation, up-side facing NORTH. 90 means up-side rotated to face EAST, and so on.
lying_prevValue of lying lying_angle before last change. TODO: Remove the need for this.
maxHealthMaximum health that should be possible.
mob_surgery_speed_modMob specific surgery speed modifier
mobility_flagsFlags that determine the potential of a mob to perform certain actions. Do not change this directly.
navigate_cooldownCooldown of the navigate() verb.
num_handsHow many hands hands does this mob currently have. Should only be changed through set_num_hands()
num_legsHow many legs does this mob currently have. Should only be changed through set_num_legs()
numbaif a mob's name should be appended with an id when created e.g. Mob (666)
on_fireHelper vars for quick access to firestacks, these should be updated every time firestacks are adjusted
pipetrackerCell tracker datum we use to manage the pipes around us, for faster ventcrawling Should only exist if you're in a pipe
see_overridehow much blood the mob has
staminaThe holder for stamina handling
stasis_levelFor each life tick, how many do we skip?
stasis_sourcesList of stasis sources to their given value
statsThe container for stats and skills
status_effects0 for no override, sets see_invisible = see_override in silicon & carbon life process via update_sight()
stun_absorptioneffectiveness prob. is modified negatively by this amount; positive numbers make it more difficult, negative ones make it easier
surgeries_in_progressA lazylist of active surgeries and their relevant data.
talkcountThe amount of times we've opened our stupid mouth
timeofdeathUsed by the resist verb, likely used to prevent players from bypassing next_move by logging in/out.
todTime of death
usable_handsHow many usable hands does this mob currently have. Should only be changed through set_usable_hands()
usable_legsHow many usable legs this mob currently has. Should only be changed through set_usable_legs()
ventcrawl_layerused for database logging
voice_typeThe talk chime set to use when speaking.
worn_slot_flagsif it can be held, can it be equipped to any slots? (think pAI's on head)
z_eyeUsed for lookup/lookdown verbs

Procs

DisorientApplies the "disoriented" status effect to the mob, among other potential statuses. Args:
HearPlay a sound to indicate we just spoke
IsDisorientedplaceholder
IsFrozenFROZEN
LifeHandles the biological and general over-time processes of the mob.
PermaSleepingAllows us to set a permanent sleep on a player (use with caution and remember to unset it with SetSleeping() after the effect is over)
Write_MemoryProc used by different station pets such as Ian and Poly so that some of their data can persist between rounds. This base definition only contains a trait and comsig to stop memory from being (over)written. Specific behavior is defined on subtypes that use it.
add_body_temperature_changeadd_body_temperature_change Adds modifications to the body temperature
add_movespeed_mod_immunitiesIgnores specific slowdowns. Accepts a list of slowdowns.
add_quirkAdds the passed quirk to the mob
adjustBloodVolumeBLOOD SYSTEM Adjusts blood volume, returning the difference.
adjust_drunk_effectAdjust the "drunk value" the mob is currently experiencing, or applies a drunk effect if the mob isn't currently drunk (or tipsy)
adjust_fire_stacksAdjust the amount of fire stacks on a mob
adjust_incapacitated
adjust_status_effects_on_shake_upCLEAR STATUS
adjust_timed_status_effectAdjusts a timed status effect on the mob,taking into account any existing timed status effects. This can be any status effect that takes into account "duration" with their initialize arguments.
admin_give_speech_impedimentAdmin only proc for giving a certain speech impediment to this mob
after_grab_releaseCalled by grab objects when a grab has been released
amount_incapacitatedProc that returns the remaining duration of the status efect in deciseconds.
apply_damageApplies damage to this mob
apply_damage_typelike apply_damage except it always uses the damage procs
apply_damagesapplies multiple damages at once via /mob/living/proc/apply_damage
apply_effectapplies various common status effects or common hardcoded mob effects
apply_effectsApplies multiple effects at once via /mob/living/proc/apply_effect
apply_martial_artApply a martial art move from src to target.
apply_painApplies pain to a mob.
apply_prefs_jobApplies the preference options to the spawning mob, taking the job into account. Assumes the client has the proper mind.
apply_status_effectApplies a given status effect to this mob.
blurry_vision_changeCalled when [TRAIT_BLURRY_EYES] is added or removed
can_enter_ventChecks if the mob is able to enter the vent, and provides feedback if they are unable to.
can_injectReturns whether or not the mob can be injected. Should not perform any side effects.
can_look_upChecks if the user is incapacitated or on cooldown.
can_unarmed_attackChecks if this mob is in a valid state to punch someone.
canfaceChecks mobility move as well as parent checks
do_jitter_animationHelper proc that causes the mob to do a jittering animation by jitter_amount. jitter_amount will only apply up to 300 (maximum jitter effect).
do_slap_animationDoes a slap animation on an atom
drag_damageTake damage from being dragged while prone. Or not. You decide.
dustThis is the proc for turning a mob into ash. Dusting robots does not eject the MMI, so it's a bit more powerful than gib()
electrocute_actAs the name suggests, this should be called to apply electric shocks.
execute_resistproc extender of [/mob/living/verb/resist] meant to make the process queable if the server is overloaded when the verb is called
expose_reagents
extinguish_mobExtinguish all fire on the mob
fakedeathInduces fake death on a living mob.
find_nearest_stair_or_ladderFinds nearest ladder or staircase either up or down.
flick_emote_popup_on_mobA proc type that, when called, causes a image/sprite to appear above whatever entity it is called on.
get_active_grabReturns the currently selected grab item
get_all_grabbed_movablesReturns a list of every movable we are grabbing
get_attack_typeReturns the attack damage type of a living mob such as BRUTE.
get_blood_dna_listreturns the mob's dna info as a list, to be inserted in an object's blood_DNA list
get_body_temp_cold_damage_limitReturns the body temperature at which this mob will start taking cold damage.
get_body_temp_heat_damage_limitReturns the body temperature at which this mob will start taking heat damage.
get_body_temp_normalget_body_temp_normal Returns the mobs normal body temperature with any modifications applied
get_body_temp_normal_changeget_body_temp_normal_change Returns the aggregate change to body temperature
get_damage_amountreturn the damage amount for the type given
get_drunk_amountHelper to get the amount of drunkness the mob's currently experiencing.
get_exp_listReturns an assoc list of assignments and minutes for updating a client's exp time in the databse.
get_fullnessGet the fullness of the mob
get_idcardGets ID card from a mob. Argument:
get_organic_healthReturns the health of the mob while ignoring damage of non-organic (prosthetic) limbs Used by cryo cells to not permanently imprison those with damage from prosthetics, as they cannot be healed through chemicals.
get_quirk_stringget_quirk_string() is used to get a printable string of all the quirk traits someone has for certain criteria
get_status_effect_examinationsThe first 1-FLAVOR_PREVIEW_LIMIT characters in the mob's "examine_text" variable. FLAVOR_PREVIEW_LIMIT is defined in flavor_defines.dm. Shows any and all examine text related to any status effects the user has.
get_taste_sensitivityGets taste sensitivity of given mob
get_timed_status_effect_durationGets how many deciseconds are remaining in the duration of the passed status effect on this mob.
gibBlow up the mob into giblets
give_unique_nameGives simple mobs their unique/randomized name.
gravity_setupLiving Mob use event based gravity We check here to ensure we haven't dropped any gravity changes
handle_grabs_during_movementCalled during or immediately after movement. Used to move grab targets around to ensure the grabs do not break during movement.
handle_ventcrawlHandles the entrance and exit on ventcrawling
has_reagentCheck if the mob contains this reagent.
has_status_effectChecks if this mob has a status effect that shares the passed effect's ID
has_status_effect_listReturns a list of all status effects that share the passed effect type's ID
hasparasitesparasite tracking/finding procs
heal_bodypart_damageheal ONE external organ, organ gets randomly selected from damaged ones.
heal_ordered_damageheal up to amount damage, in a given order
heal_overall_damageheal MANY bodyparts, in random order
ignore_slowdownIgnores all slowdowns that lack the IGNORE_NOSLOW flag.
in_fovIs observed_atom in a mob's field of view? This takes blindness, nearsightness and FOV into consideration
incapacitate
incapacitatedChecks if a mob is incapacitated
is_face_visibleOnly defined for carbons who can wear masks and helmets, we just assume other mobs have visible faces
is_grabbingReturns TRUE if src is grabbing hold of the target
leavesBloodTrailReturns TRUE if we should try to leave a blood trail.
lying_angle_on_movementCalled by mob Move() when the lying_angle is different than zero, to better visually simulate crawling.
makeBloodTrailCreates a trail of blood on Start, facing Direction
mob_pickupSpawn a /obj/item/mob_holder, move src into it, and put it into the hands of user.
mob_try_pickupAttempt to pick up a mob.
move_grabbed_atoms_towardsMove grabbed atoms towards a destination
move_into_ventMoves living mob directly into the vent as a ventcrawler
on_airflow_trait_gainCalled when TRAIT_EXPERIENCING_AIRFLOW is added to the mob.
on_airflow_trait_lossCalled when TRAIT_EXPERIENCING_AIRFLOW is removed from the mob.
on_clumsy_trait_gainCalled when [TRAIT_CLUMSY] is added to the mob.
on_clumsy_trait_lossCalled when [TRAIT_CLUMSY] is removed from the mob.
on_deathcoma_trait_gainCalled when TRAIT_DEATHCOMA is added to the mob.
on_deathcoma_trait_lossCalled when TRAIT_DEATHCOMA is removed from the mob.
on_exhausted_trait_gainCalled when TRAIT_EXHAUSTED is added to the mob.
on_exhausted_trait_lossCalled when TRAIT_EXHAUSTED is removed from the mob.
on_fallCalled when mob changes from a standing position into a prone while lacking the ability to stand up at the moment.
on_fire_stackHandles effects happening when mob is on normal fire
on_floored_endProc to append behavior to the condition of being floored. Called when the condition ends.
on_floored_startProc to append behavior to the condition of being floored. Called when the condition starts.
on_floored_trait_gainCalled when TRAIT_FLOORED is added to the mob.
on_floored_trait_lossCalled when TRAIT_FLOORED is removed from the mob.
on_force_gravityCalled when TRAIT_FORCED_GRAVITY is gained or lost
on_forced_standing_trait_gainCalled when TRAIT_FORCED_STANDING is added to the mob.
on_forced_standing_trait_lossCalled when TRAIT_FORCED_STANDING is removed from the mob.
on_handsblocked_endProc to append behavior to the condition of being handsblocked. Called when the condition ends.
on_handsblocked_startProc to append behavior to the condition of being handsblocked. Called when the condition starts.
on_handsblocked_trait_gainCalled when TRAIT_HANDS_BLOCKED is added to the mob.
on_handsblocked_trait_lossCalled when TRAIT_HANDS_BLOCKED is removed from the mob.
on_hearing_lossCalled when [TRAIT_DEAF] is added to the mob.
on_hearing_regainCalled when [TRAIT_DEAF] is added to the mob.
on_ignore_gravityCalled when TRAIT_IGNORING_GRAVITY is gained or lost
on_immobilized_trait_gainCalled when TRAIT_IMMOBILIZED is added to the mob.
on_immobilized_trait_lossCalled when TRAIT_IMMOBILIZED is removed from the mob.
on_incapacitated_trait_gainCalled when [TRAIT_INCAPACITATED] is added to the mob.
on_incapacitated_trait_lossCalled when [TRAIT_INCAPACITATED] is removed from the mob.
on_knockedout_trait_gainCalled when TRAIT_KNOCKEDOUT is added to the mob.
on_knockedout_trait_lossCalled when TRAIT_KNOCKEDOUT is removed from the mob.
on_loc_force_gravityCalled when our loc's TRAIT_FORCED_GRAVITY is gained or lost
on_lying_downProc to append behavior related to lying down.
on_movement_type_flag_disabledFrom [element/movetype_handler/on_movement_type_trait_loss()]
on_movement_type_flag_enabledFrom [element/movetype_handler/on_movement_type_trait_gain()]
on_negate_gravityCalled when TRAIT_NEGATES_GRAVITY is gained or lost
on_pull_blocked_trait_gainCalled when TRAIT_PULL_BLOCKED is added to the mob.
on_pull_blocked_trait_lossCalled when TRAIT_PULL_BLOCKED is removed from the mob.
on_restrained_trait_gainCalled when TRAIT_ARMS_RESTRAINED is added to the mob.
on_restrained_trait_lossCalled when TRAIT_ARMS_RESTRAINED is removed from the mob.
on_skittish_trait_gainCalled when [TRAIT_SKITTISH] is added to the mob.
on_skittish_trait_lossCalled when [TRAIT_SKITTISH] is removed from the mob.
on_stamina_updateCalled by [update()][/datum/stamina_container/proc/update]
on_standing_upProc to append behavior related to lying down.
on_ui_blocked_trait_gainCalled when TRAIT_UI_BLOCKED is added to the mob.
on_ui_blocked_trait_lossCalled when TRAIT_UI_BLOCKED is removed from the mob.
pre_stamina_changeCalled by the stamina holder, passing the change in stamina to modify.
recursively_get_all_grabbed_movablesGets every grabbed atom of this mob, and every grabbed atom of that grabber, repeat
recursively_get_conga_lineGets every grab object owned by this mob, and every grabbed atom of those grabbed mobs
refresh_gravityHandles gravity effects. Call if something about our gravity has potentially changed!
register_init_signalsCalled on /mob/living/Initialize(mapload), for the mob to register to relevant signals.
release_active_grabReleases the currently selected grab item
release_all_grabsRelease all grabs we have
release_grabsRelease the given movable from a grab
remove_body_temperature_changeremove_body_temperature_change Removes the modifications to the body temperature
remove_emote_popup_on_mobA proc that is automatically called whenever flick_emote_popup_on_mob's addtimer expires, and removes the popup.
remove_movespeed_mod_immunitiesUnignores specific slowdowns. Accepts a list of slowdowns.
remove_status_effectRemoves all instances of a given status effect from this mob
resist_buckleAttempt to break out of a buckle. Returns TRUE if successful.
resolve_unarmed_attackCalled by UnarmedAttack(), directs the proc to a type-specified child proc.
right_click_attack_chainChecks for RIGHT_CLICK in modifiers and runs attack_hand_secondary if so. Returns TRUE if normal chain blocked
set_body_positionChanges the value of the [living/body_position] variable.
set_buckledReports the event of the change in value of the buckled variable.
set_drunk_effectDirectly sets the "drunk value" the mob is currently experiencing to the passed value, or applies a drunk effect with the passed value if the mob isn't currently drunk
set_fire_stacksSet the fire stacks on a mob
set_healthSets the current mob's health value. Do not call directly if you don't know what you are doing, use the damage procs, instead.
set_incapacitated
set_lying_angleChanges the inclination angle of a mob, used by humans and others to differentiate between standing up and prone positions.
set_lying_downChange the [body_position] to LYING_DOWN and update associated behavior.
set_num_handsProc to modify the value of num_hands and hook behavior associated to this event.
set_num_legsProc to modify the value of num_legs and hook behavior associated to this event.
set_restingProc to hook behavior to the change of value in the resting variable.
set_safe_hunger_levelSets the mob's hunger levels to a safe overall level. Useful for TRAIT_NOHUNGER species changes.
set_timed_status_effectSets a timed status effect of some kind on a mob to a specific value. If only_if_higher is TRUE, it will only set the value up to the passed duration, so any pre-existing status effects of the same type won't be reduced down
set_usable_handsProc to modify the value of usable_hands and hook behavior associated to this event.
set_usable_legsProc to modify the value of usable_legs and hook behavior associated to this event.
shared_living_ui_distancepublic
singularity_actLogs, gibs and returns point values of whatever mob is unfortunate enough to get eaten.
sleeping_carp_helpVerb added to humans who learn the art of the sleeping carp.
stamina_swingTake away stamina from an attack being thrown.
stat_rollPerform a stat roll, returning a roll result datum.
take_bodypart_damagedamage ONE external organ, organ gets randomly selected from damaged ones.
take_overall_damagedamage MANY bodyparts, in random order
tram_slam_landA proc triggered by callback when someone gets slammed by the tram and lands somewhere.
transfer_blood_toBLOOD TRANSFERS
treat_messageTreats the passed message with things that may modify speech (stuttering, slurring etc).
try_injectLike can_inject, but it can perform side effects.
try_make_grabAttempt to create a grab, returns TRUE on success
try_slapcraftHave a living mob attempt to do a slapcraft. The mob is using the second item on the first item.
unequip_everythingDrop all items to the floor.
unignore_slowdownUnignores all slowdowns that lack the IGNORE_NOSLOW flag.
update_fire_overlaySets fire overlay of the mob.
update_fullscreenProc used to handle the fullscreen overlay updates, realistically meant for the reset_perspective() proc.
update_med_hudUpdates both the Health and Status huds. ATOM HUDS, NOT SCREEN HUDS.
update_pipe_visionEverything related to pipe vision on ventcrawling is handled by update_pipe_vision(). Called on exit, entrance, and pipenet differences (e.g. moving to a new pipenet). One important thing to note however is that the movement of the client's eye is handled by the relaymove() proc in /obj/machinery/atmospherics. We move first and then call update. Dont flip this around
update_restingProc to append and redefine behavior to the change of the [/mob/living/var/resting] variable.
update_transformCalled whenever the mob is to be resized or when lying/standing up for carbons.
update_wound_overlaysProc that only really gets called for humans, to handle bleeding overlays.
whisperLiving level whisper.
will_escape_storageWhether or not this mob will escape from storages while being picked up/held.
wipe_inventoryDelete all held/equipped items.

Var Details

active_grabs

A lazylist of grab objects we have

blood_volume

converted to a list of stun absorption sources this mob has when one is added

body_position

Variable to track the body position of a mob, regardgless of the actual angle of rotation (usually matching it, but not necessarily).

body_position_pixel_x_offset

The y amount a mob's sprite should be offset due to the current position they're in (e.g. lying down moves your sprite down)

body_position_pixel_y_offset

The x amount a mob's sprite should be offset due to the current position they're in

body_temp_changes

List of changes to body temperature, used by desease symtoms like fever

bubble_icon

used to prevent spam with smoke reagent reaction on mob.

butcher_difficulty

these will always be yielded from butchering

butcher_results

the id a mob gets when it's created

can_buckle_to

Is this mob allowed to be buckled/unbuckled to/from things?

chem_effects

Chemical effects. Built by the chemical processing stage of Life().

combat_mode

If combat mode is on or not

current_turf_slowdown

what multiplicative slowdown we get from turfs currently.

default_num_hands

How many hands does this mob have by default. This shouldn't change at runtime.

default_num_legs

does the mob have distinct limbs?(arms,legs, chest,head) How many legs does this mob have by default. This shouldn't change at runtime.

disease_resistances

list of all diseases in a mob

fire_stack_decay_rate

Rate at which fire stacks should decay from this mob

gravity_state

What our current gravity state is. Used to avoid duplicate animates and such

guaranteed_butcher_results

these will be yielded from butchering with a probability chance equal to the butcher item's effectiveness

gunpoint

Gunpoint container

hardcrit_threshold

when the mob goes from "normal" to crit When the mob enters hard critical state and is fully incapacitated.

has_limbs

more or less efficiency to metabolize helpful/harmful reagents and regulate body temperature..

health

The mob's current health.

health_doll_icon

what icon the mob uses for speechbubbles

held_type

The type of /obj/item/mob_holder to create if the mob is picked up.

held_w_class

The w_class of the holder when held.

implants

a list of all status effects the mob has

incorporeal_move

Allows mobs to move through dense areas without restriction. For instance, in space or out of holder objects.

FALSE is off, INCORPOREAL_MOVE_BASIC is normal, INCORPOREAL_MOVE_SHADOW is for ninjas and INCORPOREAL_MOVE_JAUNT is blocked by holy water/salt

last_bumped

if this exists AND the normal sprite is bigger than 32x32, this is the replacement icon state (because health doll size limitations). the icon will always be screen_gen.dmi

last_special

Directly affects how long a mob will hallucinate for

last_vent_dir

The last direction we moved in a vent. Used to make holding two directions feel nice

lastattacker

Badminnery resize

life_ticks

How many ticks of Life() has this mob gone through

living_flags

Generic bitflags for boolean conditions at the /mob/living level. Keep this for inherent traits of living types, instead of runtime-changeable ones.

lying_angle

Number of degrees of rotation of a mob. 0 means no rotation, up-side facing NORTH. 90 means up-side rotated to face EAST, and so on.

lying_prev

Value of lying lying_angle before last change. TODO: Remove the need for this.

maxHealth

Maximum health that should be possible.

mob_surgery_speed_mod

Mob specific surgery speed modifier

mobility_flags

Flags that determine the potential of a mob to perform certain actions. Do not change this directly.

navigate_cooldown

Cooldown of the navigate() verb.

num_hands

How many hands hands does this mob currently have. Should only be changed through set_num_hands()

num_legs

How many legs does this mob currently have. Should only be changed through set_num_legs()

numba

if a mob's name should be appended with an id when created e.g. Mob (666)

on_fire

Helper vars for quick access to firestacks, these should be updated every time firestacks are adjusted

pipetracker

Cell tracker datum we use to manage the pipes around us, for faster ventcrawling Should only exist if you're in a pipe

see_override

how much blood the mob has

stamina

The holder for stamina handling

stasis_level

For each life tick, how many do we skip?

stasis_sources

List of stasis sources to their given value

stats

The container for stats and skills

status_effects

0 for no override, sets see_invisible = see_override in silicon & carbon life process via update_sight()

stun_absorption

effectiveness prob. is modified negatively by this amount; positive numbers make it more difficult, negative ones make it easier

surgeries_in_progress

A lazylist of active surgeries and their relevant data.

talkcount

The amount of times we've opened our stupid mouth

timeofdeath

Used by the resist verb, likely used to prevent players from bypassing next_move by logging in/out.

tod

Time of death

usable_hands

How many usable hands does this mob currently have. Should only be changed through set_usable_hands()

usable_legs

How many usable legs this mob currently has. Should only be changed through set_usable_legs()

ventcrawl_layer

used for database logging

voice_type

The talk chime set to use when speaking.

worn_slot_flags

if it can be held, can it be equipped to any slots? (think pAI's on head)

z_eye

Used for lookup/lookdown verbs

Proc Details

Disorient

Applies the "disoriented" status effect to the mob, among other potential statuses. Args:

Hear

Play a sound to indicate we just spoke

IsDisoriented

placeholder

IsFrozen

FROZEN

Life

Handles the biological and general over-time processes of the mob.

Arguments:

PermaSleeping

Allows us to set a permanent sleep on a player (use with caution and remember to unset it with SetSleeping() after the effect is over)

Write_Memory

Proc used by different station pets such as Ian and Poly so that some of their data can persist between rounds. This base definition only contains a trait and comsig to stop memory from being (over)written. Specific behavior is defined on subtypes that use it.

add_body_temperature_change

add_body_temperature_change Adds modifications to the body temperature

This collects all body temperature changes that the mob is experiencing to the list body_temp_changes the aggrogate result is used to derive the new body temperature for the mob

arguments:

add_movespeed_mod_immunities

Ignores specific slowdowns. Accepts a list of slowdowns.

add_quirk

Adds the passed quirk to the mob

Arguments

Returns TRUE on success, FALSE on failure (already has the quirk, etc)

adjustBloodVolume

BLOOD SYSTEM Adjusts blood volume, returning the difference.

adjust_drunk_effect

Adjust the "drunk value" the mob is currently experiencing, or applies a drunk effect if the mob isn't currently drunk (or tipsy)

The drunk effect doesn't have a set duration, like dizziness or drugginess, but instead relies on a value that decreases every status effect tick (2 seconds) by: 4% the current drunk_value + 0.01

A "drunk value" of 6 is the border between "tipsy" and "drunk".

amount - the amount of "drunkness" to apply to the mob. down_to - the lower end of the clamp, when adding the value up_to - the upper end of the clamp, when adding the value

adjust_fire_stacks

Adjust the amount of fire stacks on a mob

This modifies the fire stacks on a mob.

Vars:

adjust_incapacitated

adjust_status_effects_on_shake_up

CLEAR STATUS

adjust_timed_status_effect

Adjusts a timed status effect on the mob,taking into account any existing timed status effects. This can be any status effect that takes into account "duration" with their initialize arguments.

Positive durations will add deciseconds to the duration of existing status effects or apply a new status effect of that duration to the mob.

Negative durations will remove deciseconds from the duration of an existing version of the status effect, removing the status effect entirely if the duration becomes less than zero (less than the current world time).

duration - the duration, in deciseconds, to add or remove from the effect effect - the type of status effect being adjusted on the mob max_duration - optional - if set, positive durations will only be added UP TO the passed max duration

admin_give_speech_impediment

Admin only proc for giving a certain speech impediment to this mob

after_grab_release

Called by grab objects when a grab has been released

amount_incapacitated

Proc that returns the remaining duration of the status efect in deciseconds.

apply_damage

Applies damage to this mob

Sends COMSIG_MOB_APPLY_DAMAGE

Arguuments:

Returns TRUE if damage applied

apply_damage_type

like apply_damage except it always uses the damage procs

apply_damages

applies multiple damages at once via /mob/living/proc/apply_damage

apply_effect

applies various common status effects or common hardcoded mob effects

apply_effects

Applies multiple effects at once via /mob/living/proc/apply_effect

Pretty much only used for projectiles applying effects on hit, don't use this for anything else please just cause the effects directly

apply_martial_art

Apply a martial art move from src to target.

This is used to process martial art attacks against nonhumans. It is also used to process martial art attacks by nonhumans, even against humans Human vs human attacks are handled in species code right now.

apply_pain

Applies pain to a mob.

Arguments:

apply_prefs_job

Applies the preference options to the spawning mob, taking the job into account. Assumes the client has the proper mind.

apply_status_effect

Applies a given status effect to this mob.

new_effect - TYPEPATH of a status effect to apply. Additional status effect arguments can be passed.

Returns the instance of the created effected, if successful. Returns 'null' if unsuccessful.

blurry_vision_change

Called when [TRAIT_BLURRY_EYES] is added or removed

can_enter_vent

Checks if the mob is able to enter the vent, and provides feedback if they are unable to.

can_inject

Returns whether or not the mob can be injected. Should not perform any side effects.

Arguments:

can_look_up

Checks if the user is incapacitated or on cooldown.

can_unarmed_attack

Checks if this mob is in a valid state to punch someone.

canface

Checks mobility move as well as parent checks

do_jitter_animation

Helper proc that causes the mob to do a jittering animation by jitter_amount. jitter_amount will only apply up to 300 (maximum jitter effect).

do_slap_animation

Does a slap animation on an atom

Uses do_attack_animation to animate the attacker attacking then draws a hand moving across the top half of the target(where a mobs head would usually be) to look like a slap Arguments:

drag_damage

Take damage from being dragged while prone. Or not. You decide.

dust

This is the proc for turning a mob into ash. Dusting robots does not eject the MMI, so it's a bit more powerful than gib()

Arguments:

electrocute_act

As the name suggests, this should be called to apply electric shocks.

execute_resist

proc extender of [/mob/living/verb/resist] meant to make the process queable if the server is overloaded when the verb is called

expose_reagents

extinguish_mob

Extinguish all fire on the mob

This removes all fire stacks, fire effects, alerts, and moods Signals the extinguishing.

fakedeath

Induces fake death on a living mob.

find_nearest_stair_or_ladder

Finds nearest ladder or staircase either up or down.

Arguments:

flick_emote_popup_on_mob

A proc type that, when called, causes a image/sprite to appear above whatever entity it is called on.

There are two types: on_mob and on_obj, they can only be called on their respective typepaths.

Arguments:

get_active_grab

Returns the currently selected grab item

get_all_grabbed_movables

Returns a list of every movable we are grabbing

get_attack_type

Returns the attack damage type of a living mob such as BRUTE.

get_blood_dna_list

returns the mob's dna info as a list, to be inserted in an object's blood_DNA list

get_body_temp_cold_damage_limit

Returns the body temperature at which this mob will start taking cold damage.

get_body_temp_heat_damage_limit

Returns the body temperature at which this mob will start taking heat damage.

get_body_temp_normal

get_body_temp_normal Returns the mobs normal body temperature with any modifications applied

This applies the result from proc/get_body_temp_normal_change() against the BODYTEMP_NORMAL and returns the result

arguments:

get_body_temp_normal_change

get_body_temp_normal_change Returns the aggregate change to body temperature

This aggregates all the changes in the body_temp_changes list and returns the result

get_damage_amount

return the damage amount for the type given

get_drunk_amount

Helper to get the amount of drunkness the mob's currently experiencing.

get_exp_list

Returns an assoc list of assignments and minutes for updating a client's exp time in the databse.

Arguments:

get_fullness

Get the fullness of the mob

This returns a value form 0 upwards to represent how full the mob is. The value is a total amount of consumable reagents in the body combined with the total amount of nutrition they have. This does not have an upper limit.

get_idcard

Gets ID card from a mob. Argument:

get_organic_health

Returns the health of the mob while ignoring damage of non-organic (prosthetic) limbs Used by cryo cells to not permanently imprison those with damage from prosthetics, as they cannot be healed through chemicals.

get_quirk_string

get_quirk_string() is used to get a printable string of all the quirk traits someone has for certain criteria

Arguments:

get_status_effect_examinations

The first 1-FLAVOR_PREVIEW_LIMIT characters in the mob's "examine_text" variable. FLAVOR_PREVIEW_LIMIT is defined in flavor_defines.dm. Shows any and all examine text related to any status effects the user has.

get_taste_sensitivity

Gets taste sensitivity of given mob

This is used in calculating what flavours the mob can pick up, with a lower number being able to pick up more distinct flavours.

get_timed_status_effect_duration

Gets how many deciseconds are remaining in the duration of the passed status effect on this mob.

If the mob is unaffected by the passed effect, returns 0.

gib

Blow up the mob into giblets

Arguments:

give_unique_name

Gives simple mobs their unique/randomized name.

gravity_setup

Living Mob use event based gravity We check here to ensure we haven't dropped any gravity changes

handle_grabs_during_movement

Called during or immediately after movement. Used to move grab targets around to ensure the grabs do not break during movement.

handle_ventcrawl

Handles the entrance and exit on ventcrawling

has_reagent

Check if the mob contains this reagent.

This will validate the the reagent holder for the mob and any sub holders contain the requested reagent. Vars:

has_status_effect

Checks if this mob has a status effect that shares the passed effect's ID

checked_effect - TYPEPATH of a status effect to check for. Checks for its ID, not it's typepath

Returns an instance of a status effect, or NULL if none were found.

has_status_effect_list

Returns a list of all status effects that share the passed effect type's ID

checked_effect - TYPEPATH of a status effect to check for. Checks for its ID, not it's typepath

Returns a list

hasparasites

parasite tracking/finding procs

heal_bodypart_damage

heal ONE external organ, organ gets randomly selected from damaged ones.

needs to return amount healed in order to calculate things like tend wounds xp gain

heal_ordered_damage

heal up to amount damage, in a given order

heal_overall_damage

heal MANY bodyparts, in random order

ignore_slowdown

Ignores all slowdowns that lack the IGNORE_NOSLOW flag.

in_fov

Is observed_atom in a mob's field of view? This takes blindness, nearsightness and FOV into consideration

incapacitate

incapacitated

Checks if a mob is incapacitated

Normally being restrained, agressively grabbed, or in stasis counts as incapacitated unless there is a flag being used to check if it's ignored

args:

bitflags: (see code/__DEFINES/status_effects.dm)

is_face_visible

Only defined for carbons who can wear masks and helmets, we just assume other mobs have visible faces

is_grabbing

Returns TRUE if src is grabbing hold of the target

leavesBloodTrail

Returns TRUE if we should try to leave a blood trail.

lying_angle_on_movement

Called by mob Move() when the lying_angle is different than zero, to better visually simulate crawling.

makeBloodTrail

Creates a trail of blood on Start, facing Direction

mob_pickup

Spawn a /obj/item/mob_holder, move src into it, and put it into the hands of user.

/mob/living/proc/mob_try_pickup should be called instead of this under most circumstances.

Arguments:

mob_try_pickup

Attempt to pick up a mob.

src is the mob being picked up, user is the mob doing the pick upping.

Arguments:

move_grabbed_atoms_towards

Move grabbed atoms towards a destination

move_into_vent

Moves living mob directly into the vent as a ventcrawler

Arguments:

on_airflow_trait_gain

Called when TRAIT_EXPERIENCING_AIRFLOW is added to the mob.

on_airflow_trait_loss

Called when TRAIT_EXPERIENCING_AIRFLOW is removed from the mob.

on_clumsy_trait_gain

Called when [TRAIT_CLUMSY] is added to the mob.

on_clumsy_trait_loss

Called when [TRAIT_CLUMSY] is removed from the mob.

on_deathcoma_trait_gain

Called when TRAIT_DEATHCOMA is added to the mob.

on_deathcoma_trait_loss

Called when TRAIT_DEATHCOMA is removed from the mob.

on_exhausted_trait_gain

Called when TRAIT_EXHAUSTED is added to the mob.

on_exhausted_trait_loss

Called when TRAIT_EXHAUSTED is removed from the mob.

on_fall

Called when mob changes from a standing position into a prone while lacking the ability to stand up at the moment.

on_fire_stack

Handles effects happening when mob is on normal fire

Vars:

on_floored_end

Proc to append behavior to the condition of being floored. Called when the condition ends.

on_floored_start

Proc to append behavior to the condition of being floored. Called when the condition starts.

on_floored_trait_gain

Called when TRAIT_FLOORED is added to the mob.

on_floored_trait_loss

Called when TRAIT_FLOORED is removed from the mob.

on_force_gravity

Called when TRAIT_FORCED_GRAVITY is gained or lost

on_forced_standing_trait_gain

Called when TRAIT_FORCED_STANDING is added to the mob.

on_forced_standing_trait_loss

Called when TRAIT_FORCED_STANDING is removed from the mob.

on_handsblocked_end

Proc to append behavior to the condition of being handsblocked. Called when the condition ends.

on_handsblocked_start

Proc to append behavior to the condition of being handsblocked. Called when the condition starts.

on_handsblocked_trait_gain

Called when TRAIT_HANDS_BLOCKED is added to the mob.

on_handsblocked_trait_loss

Called when TRAIT_HANDS_BLOCKED is removed from the mob.

on_hearing_loss

Called when [TRAIT_DEAF] is added to the mob.

on_hearing_regain

Called when [TRAIT_DEAF] is added to the mob.

on_ignore_gravity

Called when TRAIT_IGNORING_GRAVITY is gained or lost

on_immobilized_trait_gain

Called when TRAIT_IMMOBILIZED is added to the mob.

on_immobilized_trait_loss

Called when TRAIT_IMMOBILIZED is removed from the mob.

on_incapacitated_trait_gain

Called when [TRAIT_INCAPACITATED] is added to the mob.

on_incapacitated_trait_loss

Called when [TRAIT_INCAPACITATED] is removed from the mob.

on_knockedout_trait_gain

Called when TRAIT_KNOCKEDOUT is added to the mob.

on_knockedout_trait_loss

Called when TRAIT_KNOCKEDOUT is removed from the mob.

on_loc_force_gravity

Called when our loc's TRAIT_FORCED_GRAVITY is gained or lost

on_lying_down

Proc to append behavior related to lying down.

on_movement_type_flag_disabled

From [element/movetype_handler/on_movement_type_trait_loss()]

on_movement_type_flag_enabled

From [element/movetype_handler/on_movement_type_trait_gain()]

on_negate_gravity

Called when TRAIT_NEGATES_GRAVITY is gained or lost

on_pull_blocked_trait_gain

Called when TRAIT_PULL_BLOCKED is added to the mob.

on_pull_blocked_trait_loss

Called when TRAIT_PULL_BLOCKED is removed from the mob.

on_restrained_trait_gain

Called when TRAIT_ARMS_RESTRAINED is added to the mob.

on_restrained_trait_loss

Called when TRAIT_ARMS_RESTRAINED is removed from the mob.

on_skittish_trait_gain

Called when [TRAIT_SKITTISH] is added to the mob.

on_skittish_trait_loss

Called when [TRAIT_SKITTISH] is removed from the mob.

on_stamina_update

Called by [update()][/datum/stamina_container/proc/update]

on_standing_up

Proc to append behavior related to lying down.

on_ui_blocked_trait_gain

Called when TRAIT_UI_BLOCKED is added to the mob.

on_ui_blocked_trait_loss

Called when TRAIT_UI_BLOCKED is removed from the mob.

pre_stamina_change

Called by the stamina holder, passing the change in stamina to modify.

recursively_get_all_grabbed_movables

Gets every grabbed atom of this mob, and every grabbed atom of that grabber, repeat

recursively_get_conga_line

Gets every grab object owned by this mob, and every grabbed atom of those grabbed mobs

refresh_gravity

Handles gravity effects. Call if something about our gravity has potentially changed!

register_init_signals

Called on /mob/living/Initialize(mapload), for the mob to register to relevant signals.

release_active_grab

Releases the currently selected grab item

release_all_grabs

Release all grabs we have

release_grabs

Release the given movable from a grab

remove_body_temperature_change

remove_body_temperature_change Removes the modifications to the body temperature

This removes the recorded change to body temperature from the body_temp_changes list

arguments:

remove_emote_popup_on_mob

A proc that is automatically called whenever flick_emote_popup_on_mob's addtimer expires, and removes the popup.

Arguments:

remove_movespeed_mod_immunities

Unignores specific slowdowns. Accepts a list of slowdowns.

remove_status_effect

Removes all instances of a given status effect from this mob

removed_effect - TYPEPATH of a status effect to remove. Additional status effect arguments can be passed - these are passed into before_remove.

Returns TRUE if at least one was removed.

resist_buckle

Attempt to break out of a buckle. Returns TRUE if successful.

resolve_unarmed_attack

Called by UnarmedAttack(), directs the proc to a type-specified child proc.

right_click_attack_chain

Checks for RIGHT_CLICK in modifiers and runs attack_hand_secondary if so. Returns TRUE if normal chain blocked

set_body_position

Changes the value of the [living/body_position] variable.

set_buckled

Reports the event of the change in value of the buckled variable.

set_drunk_effect

Directly sets the "drunk value" the mob is currently experiencing to the passed value, or applies a drunk effect with the passed value if the mob isn't currently drunk

set_to - the amount of "drunkness" to set on the mob.

set_fire_stacks

Set the fire stacks on a mob

This sets the fire stacks on a mob, stacks are clamped between -20 and 20. If the fire stacks are reduced to 0 then we will extinguish the mob.

Vars:

set_health

Sets the current mob's health value. Do not call directly if you don't know what you are doing, use the damage procs, instead.

set_incapacitated

set_lying_angle

Changes the inclination angle of a mob, used by humans and others to differentiate between standing up and prone positions.

In BYOND-angles 0 is NORTH, 90 is EAST, 180 is SOUTH and 270 is WEST. This usually means that 0 is standing up, 90 and 270 are horizontal positions to right and left respectively, and 180 is upside-down. Mobs that do now follow these conventions due to unusual sprites should require a special handling or redefinition of this proc, due to the density and layer changes. The return of this proc is the previous value of the modified lying_angle if a change was successful (might include zero), or null if no change was made.

set_lying_down

Change the [body_position] to LYING_DOWN and update associated behavior.

set_num_hands

Proc to modify the value of num_hands and hook behavior associated to this event.

set_num_legs

Proc to modify the value of num_legs and hook behavior associated to this event.

set_resting

Proc to hook behavior to the change of value in the resting variable.

set_safe_hunger_level

Sets the mob's hunger levels to a safe overall level. Useful for TRAIT_NOHUNGER species changes.

set_timed_status_effect

Sets a timed status effect of some kind on a mob to a specific value. If only_if_higher is TRUE, it will only set the value up to the passed duration, so any pre-existing status effects of the same type won't be reduced down

duration - the duration, in deciseconds, of the effect. 0 or lower will either remove the current effect or do nothing if none are present effect - the type of status effect given to the mob only_if_higher - if TRUE, we will only set the effect to the new duration if the new duration is longer than any existing duration

set_usable_hands

Proc to modify the value of usable_hands and hook behavior associated to this event.

set_usable_legs

Proc to modify the value of usable_legs and hook behavior associated to this event.

shared_living_ui_distance

public

Distance versus interaction check.

required src_object atom/movable The object which owns the UI.

return UI_state The state of the UI.

singularity_act

Logs, gibs and returns point values of whatever mob is unfortunate enough to get eaten.

sleeping_carp_help

Verb added to humans who learn the art of the sleeping carp.

stamina_swing

Take away stamina from an attack being thrown.

stat_roll

Perform a stat roll, returning a roll result datum.

args:

take_bodypart_damage

damage ONE external organ, organ gets randomly selected from damaged ones.

take_overall_damage

damage MANY bodyparts, in random order

tram_slam_land

A proc triggered by callback when someone gets slammed by the tram and lands somewhere.

This proc is used to force people to fall through things like lattice and unplated flooring at the expense of some extra damage, so jokers can't use half a stack of iron rods to make getting hit by the tram immediately lethal.

transfer_blood_to

BLOOD TRANSFERS

treat_message

Treats the passed message with things that may modify speech (stuttering, slurring etc).

message - The message to treat. correct_grammar - Whether or not to capitalize the first letter and add punctuation.

try_inject

Like can_inject, but it can perform side effects.

Arguments:

try_make_grab

Attempt to create a grab, returns TRUE on success

try_slapcraft

Have a living mob attempt to do a slapcraft. The mob is using the second item on the first item.

unequip_everything

Drop all items to the floor.

unignore_slowdown

Unignores all slowdowns that lack the IGNORE_NOSLOW flag.

update_fire_overlay

Sets fire overlay of the mob.

Vars:

This should return last_icon_state for the fire status efect

update_fullscreen

Proc used to handle the fullscreen overlay updates, realistically meant for the reset_perspective() proc.

update_med_hud

Updates both the Health and Status huds. ATOM HUDS, NOT SCREEN HUDS.

update_pipe_vision

Everything related to pipe vision on ventcrawling is handled by update_pipe_vision(). Called on exit, entrance, and pipenet differences (e.g. moving to a new pipenet). One important thing to note however is that the movement of the client's eye is handled by the relaymove() proc in /obj/machinery/atmospherics. We move first and then call update. Dont flip this around

update_resting

Proc to append and redefine behavior to the change of the [/mob/living/var/resting] variable.

update_transform

Called whenever the mob is to be resized or when lying/standing up for carbons.

update_wound_overlays

Proc that only really gets called for humans, to handle bleeding overlays.

whisper

Living level whisper.

Living mobs which whisper have their message only appear to people very close.

message - the message to display bubble_type - the type of speech bubble that shows up when they speak (currently does nothing) spans - a list of spans to apply around the message sanitize - whether we sanitize the message language - typepath language to force them to speak / whisper in ignore_spam - whether we ignore the spam filter forced - string source of what forced this speech to happen, also bypasses spam filter / mutes if supplied filterproof - whether we ignore the word filter

will_escape_storage

Whether or not this mob will escape from storages while being picked up/held.

wipe_inventory

Delete all held/equipped items.