/tg/ Station 13 - Modules - TypesVar Details

global_vars

Vars

GPS_listGlobal GPS_list. All GPS components get saved in here for easy reference.
WALLITEMS_INTERIORChecks if that loc and dir has an item on the wall
acid_overlayACID
adamantine_recipesOthers
admin_statetgui state: admin_state
ai_employersemployers for malfunctioning ais. they do not have sides, unlike traitors.
alive_player_listAll alive mobs with clients.
all_voice_of_god_triggersUsed to stop listeners with silly or clown-esque (first) names such as "Honk" or "Flip" from screwing up certain commands.
always_statetgui state: always_state
announcer_keysGlobal list of all of our announcer keys.
areas_by_typeAn association from typepath to area instance. Only includes areas with unique set.
bsa_unlockBSA unlocked by head ID swipes
cached_storage_typecachesAlmost 100% of the time the lists passed into set_holdable are reused for each instance of the component Just fucking cache it 4head Yes I could generalize this, but I don't want anyone else using it. in fact, DO NOT COPY THIS If you find yourself needing this pattern, you're likely better off using static typecaches I'm not because I do not trust implementers of the storage component to use them, BUT IF I FIND YOU USING THIS PATTERN IN YOUR CODE I WILL BREAK YOU ACROSS MY KNEES ~Lemon
cell_line_tablesThese global lists exist to allow our element to have weight tables without having to be separate instances. Assoc list of cell line define | assoc list of datum | cell_line
cell_virus_tablesAssoc list of cell virus define | assoc list of datum | cell_virus
conscious_statetgui state: conscious_state
contained_statetgui state: contained_state
current_anonymous_themeglobal reference to the current theme, if there is one.
current_living_antagsAll alive antags with clients.
current_observers_listAll observers with clients that joined as observers.
dead_player_listAll dead mobs with clients. Does not include observers.
deep_inventory_statetgui state: deep_inventory_state
default_statetgui state: default_state
department_order_cooldownscooldown for each department, assoc type 2 cooldown. global, so rebuilding the console doesn't refresh the cd
drone_machine_blacklist_enabledIf drones are blacklisted from certain sensitive machines
dug_up_basaltUsed by ashstorms to replenish basalt tiles that have been dug up without going through all of them.
editable_sign_typesThis is a global list of all signs you can change an existing sign or new sign backing to, when using a pen on them.
em_block_colorA globaly cached version of EM_BLOCK_COLOR for quick access.
em_mask_matrixA globaly cached version of EM_MASK_MATRIX for quick access.
emissive_colorA globaly cached version of EMISSIVE_COLOR for quick access.
exodrone_launchersAll exodrone launchers.
exodronesAll exodrones.
exoscanner_bandsList of scanned distances
exploration_sitesAll exploration site instances
explorer_drone_adventure_db_entriesAll possible adventures in raw form
families_override_themeForces the Families theme to be the one in this variable via variable editing. Used for debugging.
features_block_lengthsThe same rules of the above also apply here, with the exception that this is for the unique_features string variable (commonly abbreviated with uf) and its blocks. Both ui and uf have a standard block length of 3 ASCII characters.
features_by_speciesAn assoc list of species types to their features (from get_features())
fileaccess_timerFor FTP requests. (i.e. downloading runtime logs.)
gas_id_to_canisterList of all the gases, used in labelling the canisters
gas_recipe_metaGlobal list of recipes for atmospheric machines to use
gateway_destinationsList of possible gateway destinations.
glide_size_multiplierCompensating for time dialation
global_funny_embeddingset this to a new instance of a SUBTYPE of global_funny_embedding. The main type is a prototype and will runtime really hard
hands_statetgui state: hands_state
has_antagonist_hudsAll active /datum/atom_hud/alternate_appearance/basic/has_antagonist instances
hfr_fuels_listGlobal list of recipes for atmospheric machines to use
hijack_employersemployers who hire agents to do the hijack
human_adjacent_statetgui state: human_adjacent_state
ice_cream_flavoursICE CREAM FLAVOUR DATUM STUFF
identity_block_lengthsSome identity blocks (basically pieces of the unique_identity string variable of the dna datum, commonly abbreviated with ui) may have a length that differ from standard length of 3 ASCII characters. This list is necessary for these non-standard blocks to work, as well as the entire unique identity string. Should you add a new ui block which size differ from the standard (again, 3 ASCII characters), like for example, a color, please do not forget to also include it in this list in the following format: "[dna block number]" = dna block size, Failure to do that may result in bugs. Thanks.
integrated_circuitsA list of all integrated circuits
intento_playersAll people who have used an Intento this round along with their high scores.
inventory_statetgui state: inventory_state
language_menu_statetgui state: language_menu_state
mafia_bad_signuplist of ghosts who want to play mafia that have since disconnected. They are kept in the lobby, but not counted for starting a game.
mafia_gamethe current global mafia game running.
mafia_signuplist of ghosts who want to play mafia, every time someone enters the list it checks to see if enough are in
map_reportsGlobal list of map report datums
marker_beacon_colorsMarker Beacons
megafauna_spawn_listGlobal list of megafauna spawns on cave gen
message_modes_stat_limitsWhitelist of saymodes or radio extensions that can be spoken through even if not fully conscious. Associated values are their maximum allowed mob stats.
mimic_blacklistMimics can't be made out of these objects
mod_themesGlobal list of all /datum/mod_theme
nanotrasen_employersemployers that are from nanotrasen
narcd_underagesunderages who have been reported to security for trying to buy things they shouldn't, so they can't spam
nearsighted_glassesLists related to quirk selection Types of glasses that can be selected at character selection with the Nearsighted quirk
never_statetgui state: never_state
new_player_statetgui state: new_player_state
normal_employersemployers who hire agents to do a task and escape... or martyrdom. whatever
not_incapacitated_statetgui state: not_incapacitated_state
not_incapacitated_turf_statetgui state: not_incapacitated_turf_state
notcontained_statetgui state: notcontained_state
observer_statetgui state: observer_state
organ_process_orderOrgan slot processing order for life proc
orion_eventsassoc list, [datum singleton] = weight
paicard_statetgui state: paicard_state
phobia_typesPhobia types that can be pulled randomly for brain traumas. Also determines what phobias you can choose as your preference with the quirk.
physical_obscured_statetgui state: physical_obscured_state
physical_statepaicard is in the user's closest inventory paicard is in a pda slot which is in the user's closest inventory tgui state: physical_state
picture_log_directoryPicture logging
pipe_color_nameNames shown in the examine for every colored atmos component
pipe_colors_orderedList that sorts the colors and is used for setting up the pipes layer so that they overlap correctly
pipe_paint_colorsAll colors available to pipes and atmos components
player_detailsassoc list of ckey -> /datum/player_details
poll_optionsAll poll option datums of running polls
pollsAll currently running polls held as datums
preference_entriesAn assoc list list of types to instantiated /datum/preference instances
preference_entries_by_keyAn assoc list of preference entries by their savefile_key
reality_smash_trackWe want reality_smash_tracker to exist only once and be accessible from anywhere.
req_console_assistanceRequests Console
rpgloot_controllerHolds the global datum for rpgloot, so anywhere may check for its existence (it signals into whatever it needs to modify, so it shouldn't require fetching)
rpgtitle_controllerHolds the global datum for rpgtitle, so anywhere may check for its existence (it signals into whatever it needs to modify, so it shouldn't require fetching)
rune_typesAssoc list of every rune that can be drawn by ritual daggers. [rune_name] = [typepath]
sacrificedlist of weakrefs to mobs OR minds that have been sacrificed
scan_conditionsScan condition instances
security_officer_distributionThe department distribution of the security officers.
self_statetgui state: self_state
special_rolesThis defines the antagonists you can operate with in the settings. Keys are the antagonist, values are the number of days since the player's first connection in order to play.
species_listAn assoc list of species IDs to type paths
stat_panel_verbsBare minimum required verbs for stat panel operation
station_goalsList of available station goals for the crew to be working on
station_was_nukedTRUE only if the station was actually hit by the nuke, otherwise FALSE
syndicate_employersemployers that are from the syndicate
teleport_runesList of all teleport runes
teleportlocsA list of teleport locations
the_gatewayStation home gateway
time_last_changed_positionThe time since the last job opening was created
timezoneOffsetThe difference betwen midnight (of the host computer) and 0 world.ticks.
total_uf_len_by_blockDitto but for unique features. Used by the datum/dna/set_uni_feature_block and datum/dna/get_uni_feature_block procs.
total_ui_len_by_blockA list of numbers that keeps track of where ui blocks start in the unique_identity string variable of the dna datum. Commonly used by the datum/dna/set_uni_identity_block and datum/dna/get_uni_identity_block procs.
trait_name_mapvalue -> trait name, generated on use from trait_by_type global
triple_ai_controllerglobal reference to the current theme, if there is one.
typecache_elevated_structuresA typecache listing structures that are considered to have surfaces that you can place items on that are higher than the floor. This, of course, should be restricted to /atom/movables. This is primarily used for food decomposition code.
typecache_general_bad_hostile_attack_targetsA typecache of objects that player controlled, easily accessible, hostile mobs should not be able to attack
typecache_general_bad_things_to_easily_moveA typecache of objects that player controlled, easily accessible, hostile mobs should not be able to move around easily
typecache_holodeck_linked_floorcheck_oktypecache for turfs that should be considered ok during floorchecks. A linked turf being anything not in this typecache will cause the holodeck to perform an emergency shutdown.
vampire_houseslist that stores a vampire house name for each department
voice_of_god_commandsList of all voice of god commands
wiremod_basic_typesThe basic player-facing types that don't have any super special behaviour.
wiremod_fundamental_typesThe fundamental datatypes of the byond game engine.
world_suspicious_login_logLog associated with [/proc/log_suspicious_login()] - Intended to hold all logins that failed due to suspicious circumstances such as ban detection, CID randomisation etc.
xeno_sample_colorsList of all possible sample colors
z_statetgui state: z_state

Var Details

GPS_list

Global GPS_list. All GPS components get saved in here for easy reference.

WALLITEMS_INTERIOR

Checks if that loc and dir has an item on the wall

acid_overlay

ACID

adamantine_recipes

Others

admin_state

tgui state: admin_state

Checks that the user is an admin, end-of-story.

ai_employers

employers for malfunctioning ais. they do not have sides, unlike traitors.

alive_player_list

All alive mobs with clients.

all_voice_of_god_triggers

Used to stop listeners with silly or clown-esque (first) names such as "Honk" or "Flip" from screwing up certain commands.

always_state

tgui state: always_state

Always grants the user UI_INTERACTIVE. Period.

announcer_keys

Global list of all of our announcer keys.

areas_by_type

An association from typepath to area instance. Only includes areas with unique set.

bsa_unlock

BSA unlocked by head ID swipes

cached_storage_typecaches

Almost 100% of the time the lists passed into set_holdable are reused for each instance of the component Just fucking cache it 4head Yes I could generalize this, but I don't want anyone else using it. in fact, DO NOT COPY THIS If you find yourself needing this pattern, you're likely better off using static typecaches I'm not because I do not trust implementers of the storage component to use them, BUT IF I FIND YOU USING THIS PATTERN IN YOUR CODE I WILL BREAK YOU ACROSS MY KNEES ~Lemon

cell_line_tables

These global lists exist to allow our element to have weight tables without having to be separate instances. Assoc list of cell line define | assoc list of datum | cell_line

cell_virus_tables

Assoc list of cell virus define | assoc list of datum | cell_virus

conscious_state

tgui state: conscious_state

Only checks if the user is conscious.

contained_state

tgui state: contained_state

Checks that the user is inside the src_object.

current_anonymous_theme

global reference to the current theme, if there is one.

current_living_antags

All alive antags with clients.

current_observers_list

All observers with clients that joined as observers.

dead_player_list

All dead mobs with clients. Does not include observers.

deep_inventory_state

tgui state: deep_inventory_state

Checks that the src_object is in the user's deep (backpack, box, toolbox, etc) inventory.

default_state

tgui state: default_state

Checks a number of things -- mostly physical distance for humans and view for robots.

department_order_cooldowns

cooldown for each department, assoc type 2 cooldown. global, so rebuilding the console doesn't refresh the cd

drone_machine_blacklist_enabled

If drones are blacklisted from certain sensitive machines

dug_up_basalt

Used by ashstorms to replenish basalt tiles that have been dug up without going through all of them.

editable_sign_types

This is a global list of all signs you can change an existing sign or new sign backing to, when using a pen on them.

em_block_color

A globaly cached version of EM_BLOCK_COLOR for quick access.

em_mask_matrix

A globaly cached version of EM_MASK_MATRIX for quick access.

emissive_color

A globaly cached version of EMISSIVE_COLOR for quick access.

exodrone_launchers

All exodrone launchers.

exodrones

All exodrones.

exoscanner_bands

List of scanned distances

exploration_sites

All exploration site instances

explorer_drone_adventure_db_entries

All possible adventures in raw form

families_override_theme

Forces the Families theme to be the one in this variable via variable editing. Used for debugging.

features_block_lengths

The same rules of the above also apply here, with the exception that this is for the unique_features string variable (commonly abbreviated with uf) and its blocks. Both ui and uf have a standard block length of 3 ASCII characters.

features_by_species

An assoc list of species types to their features (from get_features())

fileaccess_timer

For FTP requests. (i.e. downloading runtime logs.)

However it'd be ok to use for accessing attack logs and such too, which are even laggier.

gas_id_to_canister

List of all the gases, used in labelling the canisters

gas_recipe_meta

Global list of recipes for atmospheric machines to use

gateway_destinations

List of possible gateway destinations.

glide_size_multiplier

Compensating for time dialation

global_funny_embedding

set this to a new instance of a SUBTYPE of global_funny_embedding. The main type is a prototype and will runtime really hard

hands_state

tgui state: hands_state

Checks that the src_object is in the user's hands.

has_antagonist_huds

All active /datum/atom_hud/alternate_appearance/basic/has_antagonist instances

hfr_fuels_list

Global list of recipes for atmospheric machines to use

hijack_employers

employers who hire agents to do the hijack

human_adjacent_state

tgui state: human_adjacent_state

In addition to default checks, only allows interaction for a human adjacent user.

ice_cream_flavours

ICE CREAM FLAVOUR DATUM STUFF

identity_block_lengths

Some identity blocks (basically pieces of the unique_identity string variable of the dna datum, commonly abbreviated with ui) may have a length that differ from standard length of 3 ASCII characters. This list is necessary for these non-standard blocks to work, as well as the entire unique identity string. Should you add a new ui block which size differ from the standard (again, 3 ASCII characters), like for example, a color, please do not forget to also include it in this list in the following format: "[dna block number]" = dna block size, Failure to do that may result in bugs. Thanks.

integrated_circuits

A list of all integrated circuits

intento_players

All people who have used an Intento this round along with their high scores.

inventory_state

tgui state: inventory_state

Checks that the src_object is in the user's top-level (hand, ear, pocket, belt, etc) inventory.

language_menu_state

tgui state: language_menu_state

mafia_bad_signup

list of ghosts who want to play mafia that have since disconnected. They are kept in the lobby, but not counted for starting a game.

mafia_game

the current global mafia game running.

mafia_signup

list of ghosts who want to play mafia, every time someone enters the list it checks to see if enough are in

map_reports

Global list of map report datums

marker_beacon_colors

Marker Beacons

megafauna_spawn_list

Global list of megafauna spawns on cave gen

message_modes_stat_limits

Whitelist of saymodes or radio extensions that can be spoken through even if not fully conscious. Associated values are their maximum allowed mob stats.

mimic_blacklist

Mimics can't be made out of these objects

mod_themes

Global list of all /datum/mod_theme

nanotrasen_employers

employers that are from nanotrasen

narcd_underages

underages who have been reported to security for trying to buy things they shouldn't, so they can't spam

nearsighted_glasses

Lists related to quirk selection Types of glasses that can be selected at character selection with the Nearsighted quirk

never_state

tgui state: never_state

Always closes the UI, no matter what. See the ui_state in religious_tool.dm to see an example

new_player_state

tgui state: new_player_state

Checks that the user is a new_player, or if user is an admin

normal_employers

employers who hire agents to do a task and escape... or martyrdom. whatever

not_incapacitated_state

tgui state: not_incapacitated_state

Checks that the user isn't incapacitated

not_incapacitated_turf_state

tgui state: not_incapacitated_turf_state

Checks that the user isn't incapacitated and that their loc is a turf

notcontained_state

tgui state: notcontained_state

Checks that the user is not inside src_object, and then makes the default checks.

observer_state

tgui state: observer_state

Checks that the user is an observer/ghost.

organ_process_order

Organ slot processing order for life proc

orion_events

assoc list, [datum singleton] = weight

paicard_state

tgui state: paicard_state

Checks that the paicard is in the user's top-level (hand, ear, pocket, belt, etc) inventory OR if the paicard has been slotted into a PDA which is also on the user's person.

phobia_types

Phobia types that can be pulled randomly for brain traumas. Also determines what phobias you can choose as your preference with the quirk.

physical_obscured_state

tgui state: physical_obscured_state

Short-circuits the default state to only check physical distance, being in view doesn't matter

physical_state

paicard is in the user's closest inventory paicard is in a pda slot which is in the user's closest inventory tgui state: physical_state

Short-circuits the default state to only check physical distance.

picture_log_directory

Picture logging

pipe_color_name

Names shown in the examine for every colored atmos component

pipe_colors_ordered

List that sorts the colors and is used for setting up the pipes layer so that they overlap correctly

pipe_paint_colors

All colors available to pipes and atmos components

player_details

assoc list of ckey -> /datum/player_details

poll_options

All poll option datums of running polls

polls

All currently running polls held as datums

preference_entries

An assoc list list of types to instantiated /datum/preference instances

preference_entries_by_key

An assoc list of preference entries by their savefile_key

reality_smash_track

We want reality_smash_tracker to exist only once and be accessible from anywhere.

req_console_assistance

Requests Console

Originally written by errorage, updated by: Carn, needs more work though. I just added some security fixes

rpgloot_controller

Holds the global datum for rpgloot, so anywhere may check for its existence (it signals into whatever it needs to modify, so it shouldn't require fetching)

rpgtitle_controller

Holds the global datum for rpgtitle, so anywhere may check for its existence (it signals into whatever it needs to modify, so it shouldn't require fetching)

rune_types

Assoc list of every rune that can be drawn by ritual daggers. [rune_name] = [typepath]

sacrificed

list of weakrefs to mobs OR minds that have been sacrificed

scan_conditions

Scan condition instances

security_officer_distribution

The department distribution of the security officers.

Keys are refs of the security officer mobs. This is to preserve the list's structure even if the mob gets deleted. This is also safe, as mobs are guaranteed to have a unique ref, as per /mob/GenerateTag().

self_state

tgui state: self_state

Only checks that the user and src_object are the same.

special_roles

This defines the antagonists you can operate with in the settings. Keys are the antagonist, values are the number of days since the player's first connection in order to play.

species_list

An assoc list of species IDs to type paths

stat_panel_verbs

Bare minimum required verbs for stat panel operation

station_goals

List of available station goals for the crew to be working on

station_was_nuked

TRUE only if the station was actually hit by the nuke, otherwise FALSE

syndicate_employers

employers that are from the syndicate

teleport_runes

List of all teleport runes

teleportlocs

A list of teleport locations

Adding a wizard area teleport list because motherfucking lag -- Urist I am far too lazy to make it a proper list of areas so I'll just make it run the usual telepot routine at the start of the game

the_gateway

Station home gateway

time_last_changed_position

The time since the last job opening was created

timezoneOffset

The difference betwen midnight (of the host computer) and 0 world.ticks.

total_uf_len_by_block

Ditto but for unique features. Used by the datum/dna/set_uni_feature_block and datum/dna/get_uni_feature_block procs.

total_ui_len_by_block

A list of numbers that keeps track of where ui blocks start in the unique_identity string variable of the dna datum. Commonly used by the datum/dna/set_uni_identity_block and datum/dna/get_uni_identity_block procs.

trait_name_map

value -> trait name, generated on use from trait_by_type global

triple_ai_controller

global reference to the current theme, if there is one.

typecache_elevated_structures

A typecache listing structures that are considered to have surfaces that you can place items on that are higher than the floor. This, of course, should be restricted to /atom/movables. This is primarily used for food decomposition code.

typecache_general_bad_hostile_attack_targets

A typecache of objects that player controlled, easily accessible, hostile mobs should not be able to attack

typecache_general_bad_things_to_easily_move

A typecache of objects that player controlled, easily accessible, hostile mobs should not be able to move around easily

typecache_holodeck_linked_floorcheck_ok

typecache for turfs that should be considered ok during floorchecks. A linked turf being anything not in this typecache will cause the holodeck to perform an emergency shutdown.

vampire_houses

list that stores a vampire house name for each department

voice_of_god_commands

List of all voice of god commands

wiremod_basic_types

The basic player-facing types that don't have any super special behaviour.

wiremod_fundamental_types

The fundamental datatypes of the byond game engine.

world_suspicious_login_log

Log associated with [/proc/log_suspicious_login()] - Intended to hold all logins that failed due to suspicious circumstances such as ban detection, CID randomisation etc.

xeno_sample_colors

List of all possible sample colors

z_state

tgui state: z_state

Only checks that the Z-level of the user and src_object are the same.