code/__DEFINES/flags.dm 
| ALL_CARDINALS | All the cardinal direction bitflags. |
|---|---|
| CONDUCT | Conducts electricity (metal etc.) |
| ON_BORDER | Atom has priority to check when entering or leaving turfs |
| PREVENT_CLICK_UNDER | Self explanatory, prevents any clicks through ourselves |
| CHECK_RICOCHET | Сould this item be suitable as a ricochet target? |
| BLOCKS_LIGHT | Whether this atom prevents light from being attached |
| HOLOGRAM | Whether this atom is only a hologram object |
| ADMIN_SPAWNED | Was this spawned by an admin? used for stat tracking stuff. |
| INITIALIZED | Whether /atom/Initialize() has already run for the object |
| SUPERMATTER_IGNORES | Does the supermatter skip over this atom? |
| IGNORE_TURF_PIXEL_OFFSET | This atom always returns its turf in get_turf_pixel instead of the turf from its offsets |
| DECAL_INIT_UPDATE_EXPERIENCED | If this atom has experienced a decal element "init finished" sourced appearance update We use this to ensure stacked decals don't double up appearance updates for no reason Flag as an optimization, don't make this a trait without profiling Yes I know this is a stupid flag, no you can't take him from me |
| NO_SCREENTIPS | Whether or not this atom shows screentips when hovered over |
| NO_NEW_GAGS_PREVIEW | This atom does not need to generate its own preview icon for GAGS |
| HAS_CONTEXTUAL_SCREENTIPS | Whether or not this atom has contextual screentips when hovered OVER |
| UPDATE_NAME | Update the atom's name |
| UPDATE_DESC | Update the atom's desc |
| UPDATE_ICON_STATE | Update the atom's icon state |
| UPDATE_OVERLAYS | Update the atom's overlays |
| UPDATE_GREYSCALE | Update the atom's greyscaling |
| UPDATE_ICON | Update the atom's icon |
| RICOCHET_SHINY | If the thing can reflect light (lasers/energy) |
| RICOCHET_HARD | If the thing can reflect matter (bullets/bomb shrapnel) |
| RICOCHET_BALLISTIC | If the thing can reflect ballistic bullets with low chance |
| PASSTABLE | These defines are used specifically with the atom/pass_flags bitmask the atom/checkpass() proc uses them (tables will call movable atom checkpass(PASSTABLE) for example) Allows you to pass over tables. |
| PASSGLASS | Allows you to pass over glass(this generally includes anything see-through that's glass-adjacent, ie. windows, windoors, airlocks with glass, etc.) |
| PASSGRILLE | Allows you to pass over grilles. |
| PASSBLOB | Allows you to pass over blob tiles. |
| PASSMOB | Allows you to pass over mobs. |
| LETPASSTHROW | Let thrown things past us. ONLY MEANINGFUL ON pass_flags_self! |
| PASSMACHINE | Allows you to pass over machinery, ie. vending machines, computers, protolathes, etc. |
| PASSSTRUCTURE | Allows you to pass over structures, ie. racks, tables(if you don't already have PASSTABLE), etc. |
| PASSFLAPS | Allows you to pass over plastic flaps, often found at cargo or MULE dropoffs. |
| PASSFENCE | Allows you to pass over fences. |
| PASSDOOR | Allows you to pass over airlocks and mineral doors. |
| PASSVEHICLE | Allows you to pass over vehicles, ie. mecha, secways, the pimpin' ride, etc. |
| PASSITEM | Allows you to pass over dense items. |
| LETPASSCLICKS | Do not intercept click attempts during Adjacent() checks. See turf/proc/ClickCross. ONLY MEANINGFUL ON pass_flags_self! |
| PASSPROJECTILE | Allows projectiles to pass through. |
| PHASING | When moving, will Cross() everything, but won't stop or Bump() anything. |
| UPSIDE_DOWN | The mob is walking on the ceiling. Or is generally just, upside down. |
| MOVETYPES_NOT_TOUCHING_GROUND | Combination flag for movetypes which, for all intents and purposes, mean the mob is not touching the ground |
| SOURCE_MOVETYPES | Trait source for stuff movetypes applies |
| NOJAUNT | If a turf cant be jaunted through. |
| UNUSED_RESERVATION_TURF | If a turf is an usused reservation turf awaiting assignment |
| RESERVATION_TURF | If a turf is a reserved turf |
| NO_LAVA_GEN | Blocks lava rivers being generated on the turf. |
| NO_RUINS | Blocks ruins spawning on the turf. |
| UNIQUE_AREA | If false, loading multiple maps with this area type will create multiple instances. |
| CAVES_ALLOWED | If mining tunnel generation is allowed in this area |
| FLORA_ALLOWED | If flora are allowed to spawn in this area randomly through tunnel generation |
| MOB_SPAWN_ALLOWED | If mobs can be spawned by natural random generation |
| MEGAFAUNA_SPAWN_ALLOWED | If megafauna can be spawned by natural random generation |
| BLOBS_ALLOWED | If blobs can spawn there and if it counts towards their score. |
| MORTAR_ALLOWED | If blobs can spawn there and if it counts towards their score. |
| FIRE_PROOF | 100% immune to fire damage (but not necessarily to lava or heat) |
| FLAMMABLE | atom is flammable and can have the burning component |
| ON_FIRE | currently burning |
| UNACIDABLE | acid can't even appear on it, let alone melt it. |
| ACID_PROOF | acid stuck on it doesn't melt it. |
| INDESTRUCTIBLE | doesn't take damage |
| FREEZE_PROOF | can't be frozen |
| NO_MALF_EFFECT | malf cannot blow certain things |
| NO_MOUSTACHING | saves from super hairgrowium shenanigans |
| MOBILITY_MOVE | can move |
| MOBILITY_STAND | can, and is, standing up |
| MOBILITY_PICKUP | can pickup items |
| MOBILITY_USE | can hold and use items |
| MOBILITY_UI | can use interfaces like machinery |
| MOBILITY_STORAGE | can use storage item |
| MOBILITY_PULL | can pull things |
| MOBILITY_REST | can rest |
| MOBILITY_LIEDOWN | can lie down |
| DA_IGNORE_USER_LOC_CHANGE | Can do the action even if mob moves location. |
| DA_IGNORE_SPACE_DRIFT | If we are checking for mob's loc change space drift will be ignored. |
| DA_IGNORE_TARGET_LOC_CHANGE | Can do the action even if the target moves location. |
| DA_IGNORE_CONSCIOUSNESS | Can do the action even if the user is UNCONSCIOUS or DEAD. |
| DA_IGNORE_LYING | Can do the action even if the user is lying. |
| DA_IGNORE_RESTRAINED | Can do the action even if the user is restrained. |
| DA_IGNORE_INCAPACITATED | Can do the action even if the user is incapacitated (weakened/stunned/stamcrited/paralyzed/sleeping). |
| DA_IGNORE_HELD_ITEM | Can do the action even if the item is no longer being held. |
| DA_IGNORE_EMPTY_GRIPPER | If actively held item is cyborg gripper we will not check whether its empty during the process. |
| DA_IGNORE_SLOWDOWNS | Used to prevent important slowdowns to be modified by mob's actions slowdown |
| DEFAULT_DOAFTER_IGNORE | All ignore flags considered as default old do_after behavior. |
Define Details
ACID_PROOF 
acid stuck on it doesn't melt it.
ADMIN_SPAWNED 
Was this spawned by an admin? used for stat tracking stuff.
ALL_CARDINALS 
All the cardinal direction bitflags.
BLOBS_ALLOWED 
If blobs can spawn there and if it counts towards their score.
BLOCKS_LIGHT 
Whether this atom prevents light from being attached
CAVES_ALLOWED 
If mining tunnel generation is allowed in this area
CHECK_RICOCHET 
Сould this item be suitable as a ricochet target?
CONDUCT 
Conducts electricity (metal etc.)
DA_IGNORE_CONSCIOUSNESS 
Can do the action even if the user is UNCONSCIOUS or DEAD.
DA_IGNORE_EMPTY_GRIPPER 
If actively held item is cyborg gripper we will not check whether its empty during the process.
DA_IGNORE_HELD_ITEM 
Can do the action even if the item is no longer being held.
DA_IGNORE_INCAPACITATED 
Can do the action even if the user is incapacitated (weakened/stunned/stamcrited/paralyzed/sleeping).
DA_IGNORE_LYING 
Can do the action even if the user is lying.
DA_IGNORE_RESTRAINED 
Can do the action even if the user is restrained.
DA_IGNORE_SLOWDOWNS 
Used to prevent important slowdowns to be modified by mob's actions slowdown
DA_IGNORE_SPACE_DRIFT 
If we are checking for mob's loc change space drift will be ignored.
DA_IGNORE_TARGET_LOC_CHANGE 
Can do the action even if the target moves location.
DA_IGNORE_USER_LOC_CHANGE 
Can do the action even if mob moves location.
DECAL_INIT_UPDATE_EXPERIENCED 
If this atom has experienced a decal element "init finished" sourced appearance update We use this to ensure stacked decals don't double up appearance updates for no reason Flag as an optimization, don't make this a trait without profiling Yes I know this is a stupid flag, no you can't take him from me
DEFAULT_DOAFTER_IGNORE 
All ignore flags considered as default old do_after behavior.
FIRE_PROOF 
100% immune to fire damage (but not necessarily to lava or heat)
FLAMMABLE 
atom is flammable and can have the burning component
FLORA_ALLOWED 
If flora are allowed to spawn in this area randomly through tunnel generation
FREEZE_PROOF 
can't be frozen
HAS_CONTEXTUAL_SCREENTIPS 
Whether or not this atom has contextual screentips when hovered OVER
HOLOGRAM 
Whether this atom is only a hologram object
IGNORE_TURF_PIXEL_OFFSET 
This atom always returns its turf in get_turf_pixel instead of the turf from its offsets
INDESTRUCTIBLE 
doesn't take damage
INITIALIZED 
Whether /atom/Initialize() has already run for the object
LETPASSCLICKS 
Do not intercept click attempts during Adjacent() checks. See turf/proc/ClickCross. ONLY MEANINGFUL ON pass_flags_self!
LETPASSTHROW 
Let thrown things past us. ONLY MEANINGFUL ON pass_flags_self!
MEGAFAUNA_SPAWN_ALLOWED 
If megafauna can be spawned by natural random generation
MOBILITY_LIEDOWN 
can lie down
MOBILITY_MOVE 
can move
MOBILITY_PICKUP 
can pickup items
MOBILITY_PULL 
can pull things
MOBILITY_REST 
can rest
MOBILITY_STAND 
can, and is, standing up
MOBILITY_STORAGE 
can use storage item
MOBILITY_UI 
can use interfaces like machinery
MOBILITY_USE 
can hold and use items
MOB_SPAWN_ALLOWED 
If mobs can be spawned by natural random generation
MORTAR_ALLOWED 
If blobs can spawn there and if it counts towards their score.
MOVETYPES_NOT_TOUCHING_GROUND 
Combination flag for movetypes which, for all intents and purposes, mean the mob is not touching the ground
NOJAUNT 
If a turf cant be jaunted through.
NO_LAVA_GEN 
Blocks lava rivers being generated on the turf.
NO_MALF_EFFECT 
malf cannot blow certain things
NO_MOUSTACHING 
saves from super hairgrowium shenanigans
NO_NEW_GAGS_PREVIEW 
This atom does not need to generate its own preview icon for GAGS
NO_RUINS 
Blocks ruins spawning on the turf.
NO_SCREENTIPS 
Whether or not this atom shows screentips when hovered over
ON_BORDER 
Atom has priority to check when entering or leaving turfs
ON_FIRE 
currently burning
PASSBLOB 
Allows you to pass over blob tiles.
PASSDOOR 
Allows you to pass over airlocks and mineral doors.
PASSFENCE 
Allows you to pass over fences.
PASSFLAPS 
Allows you to pass over plastic flaps, often found at cargo or MULE dropoffs.
PASSGLASS 
Allows you to pass over glass(this generally includes anything see-through that's glass-adjacent, ie. windows, windoors, airlocks with glass, etc.)
PASSGRILLE 
Allows you to pass over grilles.
PASSITEM 
Allows you to pass over dense items.
PASSMACHINE 
Allows you to pass over machinery, ie. vending machines, computers, protolathes, etc.
PASSMOB 
Allows you to pass over mobs.
PASSPROJECTILE 
Allows projectiles to pass through.
PASSSTRUCTURE 
Allows you to pass over structures, ie. racks, tables(if you don't already have PASSTABLE), etc.
PASSTABLE 
These defines are used specifically with the atom/pass_flags bitmask the atom/checkpass() proc uses them (tables will call movable atom checkpass(PASSTABLE) for example) Allows you to pass over tables.
PASSVEHICLE 
Allows you to pass over vehicles, ie. mecha, secways, the pimpin' ride, etc.
PHASING 
When moving, will Cross() everything, but won't stop or Bump() anything.
PREVENT_CLICK_UNDER 
Self explanatory, prevents any clicks through ourselves
RESERVATION_TURF 
If a turf is a reserved turf
RICOCHET_BALLISTIC 
If the thing can reflect ballistic bullets with low chance
RICOCHET_HARD 
If the thing can reflect matter (bullets/bomb shrapnel)
RICOCHET_SHINY 
If the thing can reflect light (lasers/energy)
SOURCE_MOVETYPES 
Trait source for stuff movetypes applies
SUPERMATTER_IGNORES 
Does the supermatter skip over this atom?
UNACIDABLE 
acid can't even appear on it, let alone melt it.
UNIQUE_AREA 
If false, loading multiple maps with this area type will create multiple instances.
UNUSED_RESERVATION_TURF 
If a turf is an usused reservation turf awaiting assignment
UPDATE_DESC 
Update the atom's desc
UPDATE_GREYSCALE 
Update the atom's greyscaling
UPDATE_ICON 
Update the atom's icon
UPDATE_ICON_STATE 
Update the atom's icon state
UPDATE_NAME 
Update the atom's name
UPDATE_OVERLAYS 
Update the atom's overlays
UPSIDE_DOWN 
The mob is walking on the ceiling. Or is generally just, upside down.