Shiptest 13 - Modules - TypesVar Details - Proc Details

mob

The mob, usually meant to be a creature of some type

Has a client attached that is a living person (most of the time), although I have to admit sometimes it's hard to tell they're sentient

Has a lot of the creature game world logic, such as health etc SUBTLE COMMAND//////////////////// (ported from citadel, needed for LOOC and flavour text)

Vars

LAssailantA weakref to the last mob/living/carbon to push/drag/grab this mob (exclusively used by slimes friend recognition)
a_intentThe current intent of the mob
actionsList of action hud items the user has
active_hand_indexWhat hand is the active hand
active_storageStorage component (for mob inventory)
bodytemperatureDefault body temperature
buckledmovable atom we are buckled to
bucklingmovable atoms buckled to this mob
cached_multiplicative_slowdownThe calculated mob speed slowdown based on the modifiers list
chameleon_item_actionsA special action? No idea why this lives here
click_interceptAllows a datum to intercept all click calls this mob is the source of
control_objectUsed by admins to possess objects. All mobs should have this var
create_area_cooldownLast time an area was created by a mob plus a short cooldown period
deathsoundThe sound made on death
dizzinessDizziness level of the mob
do_aftersFor storing what do_after's someone has, key = string, value = amount of interactions of that type happening.
drowsynessDrowsyness level of the mob
emotes_usedUsed for tracking last uses of emotes for cooldown purposes
examine_cursor_iconCursor icon used when holding shift over things
eye_blindIs the mob blind
eye_blurryDoes the mob have blurry sight
factionA list of factions that this mob is currently in, for hostile mob targetting, amongst other things
has_unlimited_silicon_privilegeCan they interact with station electronics
held_itemslist of items held in hands
hud_usedActive hud
is_shiftedIs the mob pixel shifted?
jitterinessJitteryness level of the mob
jobWhat job does this mob have
listed_turfthe current turf being examined in the stat panel
m_intentThe movement intent of the mob (run/wal)
machineThe machine the mob is interacting with (this is very bad old code btw)
mob_spell_listconstruct spells and mime spells.
move_on_shuttleCan this mob enter shuttles
movespeed_mod_immunitiesList of movement speed modifiers ignored by this mob. List -> List (id) -> List (sources)
movespeed_modificationList of movement speed modifiers applying to this mob
name_archiveback up of the real name during admin possession
next_moveTick time the mob can next move
notransformMagic var that stops you moving and interacting with anything
nutritionHunger level of the mob
observersThe list of people observing this mob.
overeatdurationHow many ticks this mob has been over reating
passthroughableTakes the four cardinal direction defines. Any atoms moving into this atom's tile will be allowed to from the added directions.
possible_a_intentsList of possible intents a mob can have
progressbarsList of progress bars this mob is currently seeing for actions
real_nameWhat is the mobs real name (name is overridden for disguises etc)
remote_controlCalls relay_move() to whatever this is set to when the mob tries to move
research_scannerIt allows for scientific knowledge to be imparted (e.g. blob strain, if an object has research value, if it boosts a technode)
satietySatiation level of the mob
screenscontains /atom/movable/screen/alert only // On /mob so clientless mobs will throw alerts properly
shiftingIs the mob actively shifting?
sound_environment_overrideOverride for sound_environments. If this is set the user will always hear a specific type of reverb (Instead of the area defined reverb)
statWhether a mob is alive or dead. TODO: Move this to living - Nodrak (2019, still here)
status_flagsbitflags defining which status effects can be inflicted (replaces canknockdown, canstun, etc)
tgui_open_uisglobal
throw_modeIs the mob throw intent on
typing_indicatorWhether the typing indicator is on. Not on /living level because of verbs
updating_glide_sizeWhether the mob is updating glide size when movespeed updates or not
vis_flagswhen this be added to vis_contents of something it inherit something.plane, important for visualisation of mob in openspace.
zone_selectedThe zone this mob is currently targeting

Procs

AddSpellAdd a spell to the mobs spell list
AltClickOnAlt click Unused except for AI
CellSome kind of debug verb that gives atmosphere environment details
ClickOnStandard mob ClickOn() Handles exceptions: Buildmode, middle click, modified clicks, mech actions
CtrlClickOnCtrl click For most objects, pull
CtrlShiftClickOnControl+Shift click
DblClickOnDefault behavior: ignore double clicks (the second click that makes the doubleclick call already calls for a normal click)
DestroyDelete a mob
DizzySet the dizzyness of a mob to a passed in amount
GenerateTagGenerate the tag for this mob
InitializeIntialize a mob
IsAdvancedToolUserThis might need a rename but it should replace the can this mob use things check
JitterSet the jitter of a mob
LoginRun when a client is put in this mob or reconnets to byond and their client was on this mob
MiddleClickOnMiddle click Mainly used for swapping hands
MouseDropControls if a mouse drop succeeds (return null if it doesnt)
MouseDrop_THandle the result of a click drag onto this mob
MouseWheelOnMouseWheelOn
Process_SpacemoveHandles mob/living movement in space (or no gravity)
RangedAttackRanged unarmed attack:
RemoveSpellRemove a spell from the mobs spell list
ShiftClickOnShift click For most mobs, examine. This is overridden in ai.dm
TopicTopic call back for any mob
UnarmedAttackTranslates into atom/proc/attack_hand, etc.
_pointedpossibly delayed verb that finishes the pointing process starting in [/mob/verb/pointed()]. either called immediately or in the tick after pointed() was called, as per the [DEFAULT_QUEUE_OR_CALL_VERB()] macro
a_intent_changechange a mob's act-intent.
abandon_mobAllows you to respawn, abandoning your current mob
add_client_colourAdds an instance of colour_type to the mob's client_colours list colour_type - a typepath (subtyped from /datum/client_colour)
add_memoryAdd a note to the mind datum
add_movespeed_modifierAdd a move speed modifier to a mob. If a variable subtype is passed in as the first argument, it will make a new datum. If ID conflicts, it will overwrite the old ID.
add_to_alive_mob_listAdds the mob reference to the list of all mobs alive. If mob is cliented, it adds it to the list of all living player-mobs.
add_to_current_dead_playersAdds the cliented mob reference to either the list of dead player-mobs or to the list of observers, depending on how they joined the game.
add_to_current_living_antagsAdds the cliented mob reference to the list of living antag player-mobs.
add_to_current_living_playersAdds the cliented mob reference to the list of living player-mobs. If the mob is an antag, it adds it to the list of living antag player-mobs.
add_to_dead_mob_listAdds the mob reference to the list of all the dead mobs. If mob is cliented, it adds it to the list of all dead player-mobs.
add_to_mob_listAdds the mob reference to the list and directory of all mobs. Called on Initialize().
add_to_player_listAdds the cliented mob reference to the list of all player-mobs, besides to either the of dead or alive player-mob lists, as appropriate. Called on Login().
adjust_blindnessAdjust a mobs blindness by an amount
adjust_blurrinessAdjust the current blurriness of the mobs vision by amount
adjust_bodytemperatureAdjust the body temperature of a mob, with min/max settings
adjust_disgustAdjust the disgust level of a mob
adjust_drugginessAdjust the drugginess of a mob
adjust_nutritionAdjust the nutrition of a mob
animate_client_colourWorks similarly to 'update_client_colour', but animated.
anti_magic_checkReturn any anti magic atom on this mob that matches the magic type
attack_uiThis proc is called whenever someone clicks an inventory ui slot.
audible_messageShow a message to all mobs in earshot of this one
auto_deadmin_on_loginChecks if the attached client is an admin and may deadmin them
blind_eyesBlind a mobs eyes by amount
blur_eyesMake the mobs vision blurry
borercheckWS Begin - Check if the mob has a borer hivemind channel
buckle_mobBuckle to another mob
canUseStorageCan this mob use storage
canUseTopicCan the mob use Topic to interact with machines
canZMoveCan this mob move between z levels
can_bucklecan the mob be buckled to something by default?
can_hearCan the mob hear
can_hold_itemsCan this mob hold items
can_interact_withCan the mob interact() with an atom?
can_readCan this mob read (is literate and not blind)
can_resistCan this mob resist (default FALSE)
can_see_reagentsCan the mob see reagents inside of containers?
can_unbucklecan the mob be unbuckled from something by default?
cancel_cameraSometimes helps if the user is stuck in another perspective or camera
canfaceReturns true if a mob can turn to face things
check_emoteCheck if this message is an emote
clear_client_in_contentsClears the client in contents list of our current "eye". Prevents hard deletes
clear_from_recent_examineshow long it takes for the blind person to find the thing they're examining our current intent, so we can go back to it after touching
click_random_mobClicks a random nearby mob with the source from this mob
common_trait_examineExamine text for traits shared by multiple types.
create_chat_messageCreates a message overlay at a defined location for a given speaker
do_set_blindnessProc that handles adding and removing the blindness overlays.
downMoves a mob down a z level
dropItemToGroundUsed to drop an item (if it exists) to the ground.
eastfaceHidden verb to turn east
equip_to_appropriate_slotAuto equip the passed in item the appropriate slot based on equipment priority
equip_to_slotActually equips an item to a slot (UNSAFE)
equip_to_slot_if_possibleTry to equip an item to a slot on the mob
equip_to_slot_or_delEquip an item to the slot or delete
equipped_speed_modsGets the combined speed modification of all worn items Except base mob type doesnt really wear items
examinateExamine a mob
execute_modeproc version to finish /mob/verb/mode() execution. used in case the proc needs to be queued for the tick after its first called
execute_quick_equipproc extender of [/mob/verb/quick_equip] used to make the verb queuable if the server is overloaded
face_atomSimple helper to face what you clicked on, in case it should be needed in more than one place
faction_check_mobCheck if the other mob has any factions the same as us
first_nameFind the first name of a mob from the real name with regex
fully_replace_character_nameFully update the name of a mob
get_active_handGet the bodypart for whatever hand we have active, Only relevant for carbons
get_active_held_itemReturns the thing we're currently holding
get_broken_legsGets how many legs are broken (of the two possible.) Used for slowdown calculation.
get_config_multiplicative_speedGet the global config movespeed of a mob by type
get_ghostGet the ghost of this mob (from the mind)
get_idcardGet the id card on this mob
get_item_by_slotGet the item on the mob in the storage slot identified by the id passed in
get_message_modsExtracts and cleans message of any extenstions at the begining of the message Inserts the info into the passed list, returns the cleaned message
get_mob_buckling_heightreturns the height in pixel the mob should have when buckled to another mob.
get_movespeed_modifiersGet the move speed modifiers list of the mob
get_photo_descriptionReturn the desc of this mob for a photo
get_policy_keywordsGet the list of keywords for policy config
get_proc_holdersGets all relevant proc holders for the browser statpenl
get_realname_stringReturns a mob's real name between brackets. Useful when you want to display a mob's name alongside their real name
get_slot_by_itemGets what slot the item on the mob is held in. Returns null if the item isn't in any slots on our mob. Does not check if the passed item is null, which may result in unexpected outcoms.
get_spacemove_backupFind movable atoms? near a mob that are viable for pushing off when moving
get_spells_for_statpanelConvert a list of spells into a displyable list for the statpanel
get_status_tab_itemsAdds this list to the output to the stat browser
getorganGet the organ object from the mob matching the passed in typepath
getorganslotReturns a list of all organs in specified slot
getorganszoneGet organ objects by zone
grab_ghostForce get the ghost from the mind
guestbookShows guestbook tgui window
hallucinatingIs the mob hallucinating?
handle_eye_contacthandle_eye_contact() is called when we examine() something. If we examine an alive mob with a mind who has examined us in the last second within 5 tiles, we make eye contact!
has_movespeed_modifierIs there a movespeed modifier for this mob
hivecheckCheck if the mob has a hivemind channel
incapacitatedIs the mob incapacitated
is_blindChecks if the mob is able to see or not. eye_blind is temporary blindness, the trait is if they're permanently blind.
is_floatingIs the mob a floating mob
is_flyingIs the mob a flying mob
is_literateThis mob is abile to read books
is_muzzledIs the mob muzzled (default false)
limb_attack_selfCalled by using Activate Held Object with an empty hand/limb
lingcheckCheck if the mob has a ling hivemind
log_messageLogs a message in a mob's individual log, and in the global logs as well if log_globally is true
lowest_buckled_mobFind the mob at the bottom of a buckle chain
manual_emoteAllows the intrepid coder to send a basic emote Takes text as input, sends it out to those who need to know after some light parsing If you need something more complex, make it into a datum emote Arguments:
me_verbThe me emote verb
memoryGet the notes of this mob
mob_has_gravityReturns true if a mob has gravity
mob_negates_gravityDoes this mob ignore gravity
modeVerb to activate the object in your held hand
northfaceHidden verb to turn north
notify_ghost_cloningNotify a ghost that it's body is being cloned
onShuttleMoveMob move procs
open_language_menuShow the language menu for this mob
play_screen_textproc for playing a screen_text on a mob. enqueues it if a screen text is running and plays i otherwise Arguments:
pointedPoint at an atom
post_buckle_mobCall back post buckle to a mob to offset your visual height
post_unbuckle_mobCall back post unbuckle from a mob, (reset your visual height here)
remove_client_colourRemoves an instance of colour_type from the mob's client_colours list colour_type - a typepath (subtyped from /datum/client_colour)
remove_from_alive_mob_listRemoves the mob reference from the list of all mobs alive. If mob is cliented, it removes it from the list of all living player-mobs.
remove_from_current_dead_playersRemoves the mob reference from either the list of dead player-mobs or from the list of observers, depending on how they joined the game.
remove_from_current_living_antagsRemoves the mob reference from the list of living antag player-mobs.
remove_from_current_living_playersRemoves the mob reference from the list of living player-mobs. If the mob is an antag, it removes it from the list of living antag player-mobs.
remove_from_dead_mob_listRemvoes the mob reference from list of all the dead mobs. If mob is cliented, it adds it to the list of all dead player-mobs.
remove_from_mob_listRemoves the mob reference from the list and directory of all mobs. Called on Destroy().
remove_from_player_listRemoves the mob reference from the list of all player-mobs, besides from either the of dead or alive player-mob lists, as appropriate. Called on Logout().
remove_movespeed_modifierRemove a move speed modifier from a mob, whether static or variable.
replace_identification_nameupdate the ID name of this mob
replace_records_nameUpdates GLOB.data_core records with new name , see mob/living/carbon/human
reset_perspectiveReset the attached clients perspective (viewpoint)
say_deadSpeak as a dead person (ghost etc)
say_verbSay verb
set_blindnessForce set the blindness of a mob to some level
set_blurrinessSet the mobs blurriness of vision to an amount
set_disgustSet the disgust level of a mob
set_dizzinessFOrce set the dizzyness of a mob
set_drugginessSet the drugginess of a mob
set_nutritionForce set the mob nutrition
set_typing_indicatorUsed for typing indicator, relevant on /living level
shared_ui_interactionpublic
show_invShow the mob's inventory to another mob
show_messageShow a message to this mob (visual or audible)
shuttleRotateMob rotate procs
slipCalled when this mob slips over, override as needed
southfaceHidden verb to turn south
spinSpin this mob around it's central axis
sync_lighting_plane_alphaSet the lighting plane hud alpha to the mobs lighting_alpha var
toggle_move_intentToggle the move intent of the mob
total_multiplicative_slowdownCalculate the total slowdown of all movespeed modifiers
upMoves a mob upwards in z level
update_blindnessproc that adds and removes blindness overlays when necessary
update_client_colourResets the mob's client.color to null, and then reapplies a new color based on the client_colour datums it currently has.
update_config_movespeedSet or update the global movespeed config on a mob
update_eye_blurApply the blurry overlays to a mobs clients screen
update_gravityUpdate the gravity status of this mob
update_mouse_pointerUpdate the mouse pointer of the attached client in this mob
update_movespeedGo through the list of movespeed modifiers and calculate a final movespeed. ANY ADD/REMOVE DONE IN UPDATE_MOVESPEED MUST HAVE THE UPDATE ARGUMENT SET AS FALSE!
update_pull_hud_iconUpdate the pulling hud icon
update_rest_hud_iconUpdate the resting hud icon
update_sightUpdate the lighting plane and sight of this mob (sends COMSIG_MOB_UPDATE_SIGHT)
visible_messageAdds the functionality to self_message.
voteMob level verb that allows players to vote on the current vote.
vv_edit_varHandles the special case of editing the movement var
vv_get_dropdownGet the mob VV dropdown extras
vv_get_varextra var handling for the logging var
westfaceHidden verb to turn west
whisperwhisper a message
whisper_verbWhisper verb
zMoveMove a mob between z levels, if it's valid to move z's on this turf

Var Details

LAssailant

A weakref to the last mob/living/carbon to push/drag/grab this mob (exclusively used by slimes friend recognition)

a_intent

The current intent of the mob

actions

List of action hud items the user has

active_hand_index

What hand is the active hand

active_storage

Storage component (for mob inventory)

bodytemperature

Default body temperature

buckled

movable atom we are buckled to

buckling

movable atoms buckled to this mob

cached_multiplicative_slowdown

The calculated mob speed slowdown based on the modifiers list

chameleon_item_actions

A special action? No idea why this lives here

click_intercept

Allows a datum to intercept all click calls this mob is the source of

control_object

Used by admins to possess objects. All mobs should have this var

create_area_cooldown

Last time an area was created by a mob plus a short cooldown period

deathsound

The sound made on death

leave null for no sound. used for *deathgasp

dizziness

Dizziness level of the mob

do_afters

For storing what do_after's someone has, key = string, value = amount of interactions of that type happening.

drowsyness

Drowsyness level of the mob

emotes_used

Used for tracking last uses of emotes for cooldown purposes

examine_cursor_icon

Cursor icon used when holding shift over things

eye_blind

Is the mob blind

eye_blurry

Does the mob have blurry sight

faction

A list of factions that this mob is currently in, for hostile mob targetting, amongst other things

has_unlimited_silicon_privilege

Can they interact with station electronics

held_items

list of items held in hands

len = number of hands, eg: 2 nulls is 2 empty hands, 1 item and 1 null is 1 full hand and 1 empty hand.

NB: contains nulls!

held_items[active_hand_index] is the actively held item, but please use get_active_held_item() instead, because OOP

hud_used

Active hud

is_shifted

Is the mob pixel shifted?

jitteriness

Jitteryness level of the mob

job

What job does this mob have

listed_turf

the current turf being examined in the stat panel

m_intent

The movement intent of the mob (run/wal)

machine

The machine the mob is interacting with (this is very bad old code btw)

mob_spell_list

construct spells and mime spells.

Spells that do not transfer from one mob to another and can not be lost in mindswap. obviously do not live in the mind

move_on_shuttle

Can this mob enter shuttles

movespeed_mod_immunities

List of movement speed modifiers ignored by this mob. List -> List (id) -> List (sources)

movespeed_modification

List of movement speed modifiers applying to this mob

name_archive

back up of the real name during admin possession

If an admin possesses an object it's real name is set to the admin name and this stores whatever the real name was previously. When possession ends, the real name is reset to this value

next_move

Tick time the mob can next move

notransform

Magic var that stops you moving and interacting with anything

Set when you're being turned into something else and also used in a bunch of places it probably shouldn't really be

nutrition

Hunger level of the mob

observers

The list of people observing this mob.

overeatduration

How many ticks this mob has been over reating

passthroughable

Takes the four cardinal direction defines. Any atoms moving into this atom's tile will be allowed to from the added directions.

possible_a_intents

List of possible intents a mob can have

progressbars

List of progress bars this mob is currently seeing for actions

real_name

What is the mobs real name (name is overridden for disguises etc)

remote_control

Calls relay_move() to whatever this is set to when the mob tries to move

research_scanner

It allows for scientific knowledge to be imparted (e.g. blob strain, if an object has research value, if it boosts a technode)

satiety

Satiation level of the mob

screens

contains /atom/movable/screen/alert only // On /mob so clientless mobs will throw alerts properly

shifting

Is the mob actively shifting?

sound_environment_override

Override for sound_environments. If this is set the user will always hear a specific type of reverb (Instead of the area defined reverb)

stat

Whether a mob is alive or dead. TODO: Move this to living - Nodrak (2019, still here)

status_flags

bitflags defining which status effects can be inflicted (replaces canknockdown, canstun, etc)

tgui_open_uis

global

Tracks open UIs for a user.

throw_mode

Is the mob throw intent on

typing_indicator

Whether the typing indicator is on. Not on /living level because of verbs

updating_glide_size

Whether the mob is updating glide size when movespeed updates or not

vis_flags

when this be added to vis_contents of something it inherit something.plane, important for visualisation of mob in openspace.

zone_selected

The zone this mob is currently targeting

Proc Details

AddSpell

Add a spell to the mobs spell list

AltClickOn

Alt click Unused except for AI

Cell

Some kind of debug verb that gives atmosphere environment details

ClickOn

Standard mob ClickOn() Handles exceptions: Buildmode, middle click, modified clicks, mech actions

After that, mostly just check your state, check whether you're holding an item, check whether you're adjacent to the target, then pass off the click to whoever is receiving it. The most common are:

CtrlClickOn

Ctrl click For most objects, pull

CtrlShiftClickOn

Control+Shift click

DblClickOn

Default behavior: ignore double clicks (the second click that makes the doubleclick call already calls for a normal click)

Destroy

Delete a mob

Removes mob from the following global lists

Unsets the focus var

Clears alerts for this mob

Resets all the observers perspectives to the tile this mob is on

qdels any client colours in place on this mob

Clears any refs to the mob inside its current location

Ghostizes the client attached to this mob

If our mind still exists, clear its current var to prevent harddels

Parent call

Dizzy

Set the dizzyness of a mob to a passed in amount

Except if dizziness is already higher in which case it does nothing

GenerateTag

Generate the tag for this mob

This is simply "mob_"+ a global incrementing counter that goes up for every mob

Initialize

Intialize a mob

Sends global signal COMSIG_GLOB_MOB_CREATED

Adds to global lists

Other stuff:

IsAdvancedToolUser

This might need a rename but it should replace the can this mob use things check

Jitter

Set the jitter of a mob

Login

Run when a client is put in this mob or reconnets to byond and their client was on this mob

Things it does:

MiddleClickOn

Middle click Mainly used for swapping hands

MouseDrop

Controls if a mouse drop succeeds (return null if it doesnt)

MouseDrop_T

Handle the result of a click drag onto this mob

For mobs this just shows the inventory

MouseWheelOn

MouseWheelOn

Process_Spacemove

Handles mob/living movement in space (or no gravity)

Called by /client/Move()

return TRUE for movement or FALSE for none

You can move in space if you have a spacewalk ability

RangedAttack

Ranged unarmed attack:

This currently is just a default for all mobs, involving laser eyes and telekinesis. You could easily add exceptions for things like ranged glove touches, spitting alien acid/neurotoxin, animals lunging, etc.

RemoveSpell

Remove a spell from the mobs spell list

ShiftClickOn

Shift click For most mobs, examine. This is overridden in ai.dm

Topic

Topic call back for any mob

UnarmedAttack

Translates into atom/proc/attack_hand, etc.

Note: proximity_flag here is used to distinguish between normal usage (flag=1), and usage when clicking on things telekinetically (flag=0). This proc will not be called at ranged except with telekinesis.

proximity_flag is not currently passed to attack_hand, and is instead used in human click code to allow glove touches only at melee range.

_pointed

possibly delayed verb that finishes the pointing process starting in [/mob/verb/pointed()]. either called immediately or in the tick after pointed() was called, as per the [DEFAULT_QUEUE_OR_CALL_VERB()] macro

a_intent_change

change a mob's act-intent.

Input the intent as a string such as "help" or use "right"/"left

abandon_mob

Allows you to respawn, abandoning your current mob

This sends you back to the lobby creating a new dead mob

Only works if flag/norespawn is allowed in config

add_client_colour

Adds an instance of colour_type to the mob's client_colours list colour_type - a typepath (subtyped from /datum/client_colour)

add_memory

Add a note to the mind datum

add_movespeed_modifier

Add a move speed modifier to a mob. If a variable subtype is passed in as the first argument, it will make a new datum. If ID conflicts, it will overwrite the old ID.

add_to_alive_mob_list

Adds the mob reference to the list of all mobs alive. If mob is cliented, it adds it to the list of all living player-mobs.

add_to_current_dead_players

Adds the cliented mob reference to either the list of dead player-mobs or to the list of observers, depending on how they joined the game.

add_to_current_living_antags

Adds the cliented mob reference to the list of living antag player-mobs.

add_to_current_living_players

Adds the cliented mob reference to the list of living player-mobs. If the mob is an antag, it adds it to the list of living antag player-mobs.

add_to_dead_mob_list

Adds the mob reference to the list of all the dead mobs. If mob is cliented, it adds it to the list of all dead player-mobs.

add_to_mob_list

Adds the mob reference to the list and directory of all mobs. Called on Initialize().

add_to_player_list

Adds the cliented mob reference to the list of all player-mobs, besides to either the of dead or alive player-mob lists, as appropriate. Called on Login().

adjust_blindness

Adjust a mobs blindness by an amount

Will apply the blind alerts if needed

adjust_blurriness

Adjust the current blurriness of the mobs vision by amount

adjust_bodytemperature

Adjust the body temperature of a mob, with min/max settings

adjust_disgust

Adjust the disgust level of a mob

adjust_drugginess

Adjust the drugginess of a mob

adjust_nutrition

Adjust the nutrition of a mob

animate_client_colour

Works similarly to 'update_client_colour', but animated.

anti_magic_check

Return any anti magic atom on this mob that matches the magic type

attack_ui

This proc is called whenever someone clicks an inventory ui slot.

Mostly tries to put the item into the slot if possible, or call attack hand on the item in the slot if the users active hand is empty

audible_message

Show a message to all mobs in earshot of this one

This would be for audible actions by the src mob

vars:

auto_deadmin_on_login

Checks if the attached client is an admin and may deadmin them

Configs:

Called from login

blind_eyes

Blind a mobs eyes by amount

blur_eyes

Make the mobs vision blurry

borercheck

WS Begin - Check if the mob has a borer hivemind channel

buckle_mob

Buckle to another mob

You can buckle on mobs if you're next to them since most are dense

Turns you to face the other mob too

canUseStorage

Can this mob use storage

canUseTopic

Can the mob use Topic to interact with machines

canZMove

Can this mob move between z levels

can_buckle

can the mob be buckled to something by default?

can_hear

Can the mob hear

can_hold_items

Can this mob hold items

can_interact_with

Can the mob interact() with an atom?

can_read

Can this mob read (is literate and not blind)

can_resist

Can this mob resist (default FALSE)

can_see_reagents

Can the mob see reagents inside of containers?

can_unbuckle

can the mob be unbuckled from something by default?

cancel_camera

Sometimes helps if the user is stuck in another perspective or camera

canface

Returns true if a mob can turn to face things

Conditions:

check_emote

Check if this message is an emote

clear_client_in_contents

Clears the client in contents list of our current "eye". Prevents hard deletes

clear_from_recent_examines

how long it takes for the blind person to find the thing they're examining our current intent, so we can go back to it after touching

click_random_mob

Clicks a random nearby mob with the source from this mob

common_trait_examine

Examine text for traits shared by multiple types.

I wish examine was less copypasted. (oranges say, be the change you want to see buddy)

create_chat_message

Creates a message overlay at a defined location for a given speaker

Arguments:

do_set_blindness

Proc that handles adding and removing the blindness overlays.

down

Moves a mob down a z level

dropItemToGround

Used to drop an item (if it exists) to the ground.

eastface

Hidden verb to turn east

equip_to_appropriate_slot

Auto equip the passed in item the appropriate slot based on equipment priority

puts the item "W" into an appropriate slot in a human's inventory

returns 0 if it cannot, 1 if successful

equip_to_slot

Actually equips an item to a slot (UNSAFE)

This is an UNSAFE proc. It merely handles the actual job of equipping. All the checks on whether you can or can't equip need to be done before! Use mob_can_equip() for that task.

In most cases you will want to use equip_to_slot_if_possible()

equip_to_slot_if_possible

Try to equip an item to a slot on the mob

This is a SAFE proc. Use this instead of equip_to_slot()!

set qdel_on_fail to have it delete W if it fails to equip

set disable_warning to disable the 'you are unable to equip that' warning.

unset redraw_mob to prevent the mob icons from being redrawn at the end.

Initial is used to indicate whether or not this is the initial equipment (job datums etc) or just a player doing it

equip_to_slot_or_del

Equip an item to the slot or delete

This is just a commonly used configuration for the equip_to_slot_if_possible() proc, used to equip people when the round starts and when events happen and such.

Also bypasses equip delay checks, since the mob isn't actually putting it on. Initial is used to indicate whether or not this is the initial equipment (job datums etc) or just a player doing it

equipped_speed_mods

Gets the combined speed modification of all worn items Except base mob type doesnt really wear items

examinate

Examine a mob

mob verbs are faster than object verbs. See this byond forum post for why this isn't atom/verb/examine()

execute_mode

proc version to finish /mob/verb/mode() execution. used in case the proc needs to be queued for the tick after its first called

execute_quick_equip

proc extender of [/mob/verb/quick_equip] used to make the verb queuable if the server is overloaded

face_atom

Simple helper to face what you clicked on, in case it should be needed in more than one place

faction_check_mob

Check if the other mob has any factions the same as us

If exact match is set, then all our factions must match exactly

first_name

Find the first name of a mob from the real name with regex

fully_replace_character_name

Fully update the name of a mob

This will update a mob's name, real_name, mind.name, GLOB.data_core records, pda, id and traitor text

Calling this proc without an oldname will only update the mob and skip updating the pda, id and records ~Carn

get_active_hand

Get the bodypart for whatever hand we have active, Only relevant for carbons

get_active_held_item

Returns the thing we're currently holding

get_broken_legs

Gets how many legs are broken (of the two possible.) Used for slowdown calculation.

get_config_multiplicative_speed

Get the global config movespeed of a mob by type

get_ghost

Get the ghost of this mob (from the mind)

get_idcard

Get the id card on this mob

get_item_by_slot

Get the item on the mob in the storage slot identified by the id passed in

get_message_mods

Extracts and cleans message of any extenstions at the begining of the message Inserts the info into the passed list, returns the cleaned message

Result can be

get_mob_buckling_height

returns the height in pixel the mob should have when buckled to another mob.

get_movespeed_modifiers

Get the move speed modifiers list of the mob

get_photo_description

Return the desc of this mob for a photo

get_policy_keywords

Get the list of keywords for policy config

This gets the type, mind assigned roles and antag datums as a list, these are later used to send the user relevant headadmin policy config

get_proc_holders

Gets all relevant proc holders for the browser statpenl

get_realname_string

Returns a mob's real name between brackets. Useful when you want to display a mob's name alongside their real name

get_slot_by_item

Gets what slot the item on the mob is held in. Returns null if the item isn't in any slots on our mob. Does not check if the passed item is null, which may result in unexpected outcoms.

get_spacemove_backup

Find movable atoms? near a mob that are viable for pushing off when moving

get_spells_for_statpanel

Convert a list of spells into a displyable list for the statpanel

Shows charge and other important info

get_status_tab_items

Adds this list to the output to the stat browser

getorgan

Get the organ object from the mob matching the passed in typepath

Arguments:

getorganslot

Returns a list of all organs in specified slot

Arguments:

getorganszone

Get organ objects by zone

This will return a list of all the organs that are relevant to the zone that is passedin

Arguments:

grab_ghost

Force get the ghost from the mind

guestbook

Shows guestbook tgui window

hallucinating

Is the mob hallucinating?

handle_eye_contact

handle_eye_contact() is called when we examine() something. If we examine an alive mob with a mind who has examined us in the last second within 5 tiles, we make eye contact!

Note that if either party has their face obscured, the other won't get the notice about the eye contact Also note that examine_more() doesn't proc this or extend the timer, just because it's simpler this way and doesn't lose much. The nice part about relying on examining is that we don't bother checking visibility, because we already know they were both visible to each other within the last second, and the one who triggers it is currently seeing them

has_movespeed_modifier

Is there a movespeed modifier for this mob

hivecheck

Check if the mob has a hivemind channel

incapacitated

Is the mob incapacitated

is_blind

Checks if the mob is able to see or not. eye_blind is temporary blindness, the trait is if they're permanently blind.

is_floating

Is the mob a floating mob

is_flying

Is the mob a flying mob

is_literate

This mob is abile to read books

is_muzzled

Is the mob muzzled (default false)

limb_attack_self

Called by using Activate Held Object with an empty hand/limb

Does nothing by default. The intended use is to allow limbs to call their own attack_self procs. It is up to the individual mob to override this parent and actually use it.

lingcheck

Check if the mob has a ling hivemind

log_message

Logs a message in a mob's individual log, and in the global logs as well if log_globally is true

lowest_buckled_mob

Find the mob at the bottom of a buckle chain

manual_emote

Allows the intrepid coder to send a basic emote Takes text as input, sends it out to those who need to know after some light parsing If you need something more complex, make it into a datum emote Arguments:

me_verb

The me emote verb

memory

Get the notes of this mob

This actually gets the mind datums notes

mob_has_gravity

Returns true if a mob has gravity

I hate that this exists

mob_negates_gravity

Does this mob ignore gravity

mode

Verb to activate the object in your held hand

Calls attack self on the item and updates the inventory hud for hands

northface

Hidden verb to turn north

notify_ghost_cloning

Notify a ghost that it's body is being cloned

onShuttleMove

Mob move procs

open_language_menu

Show the language menu for this mob

play_screen_text

proc for playing a screen_text on a mob. enqueues it if a screen text is running and plays i otherwise Arguments:

pointed

Point at an atom

mob verbs are faster than object verbs. See this byond forum post for why this isn't atom/verb/pointed()

note: ghosts can point, this is intended

visible_message will handle invisibility properly

overridden here and in /mob/dead/observer for different point span classes and sanity checks

post_buckle_mob

Call back post buckle to a mob to offset your visual height

post_unbuckle_mob

Call back post unbuckle from a mob, (reset your visual height here)

remove_client_colour

Removes an instance of colour_type from the mob's client_colours list colour_type - a typepath (subtyped from /datum/client_colour)

remove_from_alive_mob_list

Removes the mob reference from the list of all mobs alive. If mob is cliented, it removes it from the list of all living player-mobs.

remove_from_current_dead_players

Removes the mob reference from either the list of dead player-mobs or from the list of observers, depending on how they joined the game.

remove_from_current_living_antags

Removes the mob reference from the list of living antag player-mobs.

remove_from_current_living_players

Removes the mob reference from the list of living player-mobs. If the mob is an antag, it removes it from the list of living antag player-mobs.

remove_from_dead_mob_list

Remvoes the mob reference from list of all the dead mobs. If mob is cliented, it adds it to the list of all dead player-mobs.

remove_from_mob_list

Removes the mob reference from the list and directory of all mobs. Called on Destroy().

remove_from_player_list

Removes the mob reference from the list of all player-mobs, besides from either the of dead or alive player-mob lists, as appropriate. Called on Logout().

remove_movespeed_modifier

Remove a move speed modifier from a mob, whether static or variable.

replace_identification_name

update the ID name of this mob

replace_records_name

Updates GLOB.data_core records with new name , see mob/living/carbon/human

reset_perspective

Reset the attached clients perspective (viewpoint)

reset_perspective() set eye to common default : mob on turf, loc otherwise reset_perspective(thing) set the eye to the thing (if it's equal to current default reset to mob perspective)

say_dead

Speak as a dead person (ghost etc)

say_verb

Say verb

set_blindness

Force set the blindness of a mob to some level

set_blurriness

Set the mobs blurriness of vision to an amount

set_disgust

Set the disgust level of a mob

set_dizziness

FOrce set the dizzyness of a mob

set_drugginess

Set the drugginess of a mob

set_nutrition

Force set the mob nutrition

set_typing_indicator

Used for typing indicator, relevant on /living level

shared_ui_interaction

public

Standard interaction/sanity checks. Different mob types may have overrides.

return UI_state The state of the UI.

show_inv

Show the mob's inventory to another mob

show_message

Show a message to this mob (visual or audible)

shuttleRotate

Mob rotate procs

slip

Called when this mob slips over, override as needed

southface

Hidden verb to turn south

spin

Spin this mob around it's central axis

sync_lighting_plane_alpha

Set the lighting plane hud alpha to the mobs lighting_alpha var

toggle_move_intent

Toggle the move intent of the mob

triggers an update the move intent hud as well

total_multiplicative_slowdown

Calculate the total slowdown of all movespeed modifiers

up

Moves a mob upwards in z level

update_blindness

proc that adds and removes blindness overlays when necessary

update_client_colour

Resets the mob's client.color to null, and then reapplies a new color based on the client_colour datums it currently has.

update_config_movespeed

Set or update the global movespeed config on a mob

update_eye_blur

Apply the blurry overlays to a mobs clients screen

update_gravity

Update the gravity status of this mob

update_mouse_pointer

Update the mouse pointer of the attached client in this mob

update_movespeed

Go through the list of movespeed modifiers and calculate a final movespeed. ANY ADD/REMOVE DONE IN UPDATE_MOVESPEED MUST HAVE THE UPDATE ARGUMENT SET AS FALSE!

update_pull_hud_icon

Update the pulling hud icon

update_rest_hud_icon

Update the resting hud icon

update_sight

Update the lighting plane and sight of this mob (sends COMSIG_MOB_UPDATE_SIGHT)

visible_message

Adds the functionality to self_message.

vote

Mob level verb that allows players to vote on the current vote.

vv_edit_var

Handles the special case of editing the movement var

vv_get_dropdown

Get the mob VV dropdown extras

vv_get_var

extra var handling for the logging var

westface

Hidden verb to turn west

whisper

whisper a message

whisper_verb

Whisper verb

zMove

Move a mob between z levels, if it's valid to move z's on this turf