diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/CNAME b/CNAME new file mode 100644 index 000000000000..3c47c69fcca6 --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +docs.cm-ss13.com diff --git a/area.html b/area.html new file mode 100644 index 000000000000..d4c3a05e29ca --- /dev/null +++ b/area.html @@ -0,0 +1,101 @@ + + + + + + + /area - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Unknown + + + +

+ + + + + + + + + + + +

Vars

ambience_exteriorDefault sound to play as ambience for clients entering the area
area_has_base_lightingWhether this area has a currently active base lighting, bool
base_lighting_alphaalpha 0-255 of lighting_effect and thus baselighting intensity
base_lighting_colorThe colour of the light acting on this area
block_game_interactionIf this area is outside the game's normal interactivity and should be excluded from things like EOR reports and crew monitors. +Doesn't need to be set for areas/Z levels that are marked as admin-only
flags_areaBitfield of special area features
lighting_effectThe mutable appearance we underlay to show light
sound_environmentDefault sound environment to use for the area, as list or int BYOND preset: http://www.byond.com/docs/ref/#/sound/var/environment
static_lightingWhether this area allows static lighting and thus loads the lighting objects

Procs

get_sound_ambienceReturns the correct ambience sound track for a client in this area
+

Var Details

ambience_exterior + + + + +

+

Default sound to play as ambience for clients entering the area

area_has_base_lighting + + + + +

+

Whether this area has a currently active base lighting, bool

base_lighting_alpha + + + + +

+

alpha 0-255 of lighting_effect and thus baselighting intensity

base_lighting_color + + + + +

+

The colour of the light acting on this area

block_game_interaction + + + + +

+

If this area is outside the game's normal interactivity and should be excluded from things like EOR reports and crew monitors. +Doesn't need to be set for areas/Z levels that are marked as admin-only

flags_area + + + + +

+

Bitfield of special area features

lighting_effect + + + + +

+

The mutable appearance we underlay to show light

sound_environment + + + + +

+

Default sound environment to use for the area, as list or int BYOND preset: http://www.byond.com/docs/ref/#/sound/var/environment

static_lighting + + + + +

+

Whether this area allows static lighting and thus loads the lighting objects

Proc Details

get_sound_ambience +

+

Returns the correct ambience sound track for a client in this area

+ + + diff --git a/area/almayer.html b/area/almayer.html new file mode 100644 index 000000000000..14948404c6d7 --- /dev/null +++ b/area/almayer.html @@ -0,0 +1,50 @@ + + + + + + + /area/almayer - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/area/almayer + + + +

+ + + + +

Vars

hijack_evacuation_areaWhether this area is used for hijack evacuation progress
hijack_evacuation_typeWhether this area is additive or multiplicative towards evacuation progress
hijack_evacuation_weightThe weight this area gives towards hijack evacuation progress
+

Var Details

hijack_evacuation_area + + + + +

+

Whether this area is used for hijack evacuation progress

hijack_evacuation_type + + + + +

+

Whether this area is additive or multiplicative towards evacuation progress

hijack_evacuation_weight + + + + +

+

The weight this area gives towards hijack evacuation progress

+ + + diff --git a/area/shuttle.html b/area/shuttle.html new file mode 100644 index 000000000000..7d5cf7215865 --- /dev/null +++ b/area/shuttle.html @@ -0,0 +1,35 @@ + + + + + + + /area/shuttle - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Shuttle + + + +

+ + +

Procs

PlaceOnTopReactarea/shuttle/Initialize()

Proc Details

PlaceOnTopReact +

+

area/shuttle/Initialize()

+ + + diff --git a/atom.html b/atom.html new file mode 100644 index 000000000000..05794693e057 --- /dev/null +++ b/atom.html @@ -0,0 +1,463 @@ + + + + + + + /atom - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/atom + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

base_pixel_xDefault pixel x shifting for the atom's icon.
base_pixel_yDefault pixel y shifting for the atom's icon.
base_transformBase transform matrix, edited by admin tooling and such
hybrid_light_sourcesAny light sources that are "inside" of us, for example, if src here was a mob that's carrying a flashlight, that flashlight's light source would be part of this list.
lightOur light source. Don't fuck with this directly unless you have a good reason!
light_colorHexadecimal RGB string representing the colour of the light. White by default.
light_flagsBitflags to determine lighting-related atom properties.
light_mask_typetypepath for the lighting maskfor dynamic light sources
light_onBoolean variable for toggleable lights. Has no effect without the proper light_system, light_range and light_power values.
light_pixel_xx offset for dynamic lights on this atom
light_pixel_yy offset for dynamic lights on this atom
light_powerIntensity of the light. The stronger, the less shadows you will see on the lit area.
light_rangeRange of the light in tiles. Zero means no light.
light_systemLight systems, only one of the three should be active at the same time.
minimap_colorThe color this atom will be if we choose to draw it on the minimap
orbit_targetReference to atom being orbited
raw_transformLast transform used before being compound with base_transform +This allows us to re-create transform if only base_transform changes
reagentsChemistry.
static_lightThe light source, datum. Dont fuck with this directly
static_light_sourcesStatic light sources currently attached to this atom, this includes ones owned by atoms inside this atom

Procs

GetAllContentsWill return the contents of an atom recursivly to a depth of 'searchDepth', not including starting atom
TopicPasses Stat Browser Panel clicks to the game and calls client click on an atom
add_bloodadd_blood
add_mob_bloodAdjust the randomness there so everyone gets the same thing +Shout it at everyone
apply_transformUpdates the atom's transform compounding it with /atom/var/base_transform
attack_alien*The parent proc, will default to UnarmedAttack behaviour unless overridden +Return XENO_ATTACK_ACTION if it does something and the attack should have full attack delay. +Return XENO_NONCOMBAT_ACTION if it did something and should have some delay. +Return XENO_NO_DELAY_ACTION if it gave an error message or should have no delay at all, ex. "You can't X that, it's Y!" +Return FALSE if it didn't do anything and should count as a missed slash.
balloon_alertCreates text that will float from the atom upwards to the viewer.
balloon_alert_to_viewersCreate balloon alerts (text that floats up) to everything within range. +Will only display to people who can see.
beamThis is what you use to start a beam. Example: origin.Beam(target, args). Store the return of this proc if you don't set maxdist or time, you need it to delete the beam.
connect_to_shuttleThis proc is called on atoms when they are loaded into a shuttle
get_all_contentsReturns the src and all recursive contents as a list. Includes the starting atom.
get_all_orbitersRecursive getter method to return a list of all ghosts orbitting this atom
get_storage_depth_toReturns the storage depth of an atom. This is the number of items the atom is nested in before reaching the designated container, counted inclusively. +Returning 1 == directly inside the container's contents, 2 == inside something which is itself inside the container, etc. +An alternative to loc.loc; looked at another way, the number it returns is the number of loc checks before reaching the target. +Returns FALSE if the atom isn't somewhere inside the container's contents.
get_storage_depth_turfLike get storage depth to, but returns the depth to the nearest turf, inclusively +Returns FALSE if no top level turf (a loc was null somewhere, or a non-turf atom's loc was an area somehow).
langchat_display_image
langchat_drop_imageHides the image, if one exists. Do not null the langchat image; it is rotated when the mob is buckled or proned to maintain text orientation.
langchat_make_imageCreates the image if one does not exist, resets settings that are modified by speech procs.
reset_lightTurn on the light, should be called by a timer
setDirHook for running code when a dir change occurs
set_densitySetter for the density variable to append behavior related to its changing.
set_light_flagsSetter for the light flags of this atom.
set_opacityUpdates the atom's opacity value.
static_update_lightPretty simple, just updates static lights on this atom
transfer_label_component//////////////////// Hand Labeler //////////////////////////////// +meant for use with qdelling/newing things to transfer labels between them
transition_filter
turn_lightIf this object has lights, turn it on/off. +user: the mob actioning this +toggle_on: if TRUE, will try to turn ON the light. Opposite if FALSE +cooldown: how long until you can toggle the light on/off again +sparks: if a spark effect will be generated +forced: if TRUE and toggle_on = FALSE, will cause the light to turn on in cooldown second +originated_turf: if not null, will check if the obj_turf is closer than distance_max to originated_turf, and the proc will return if not +distance_max: used to check if originated_turf is close to obj.loc
update_base_transformUpates the base_transform which will be compounded with other transforms
update_lightWill update the light (duh).Creates or destroys it if needed, makes it update values, makes sure it's got the correct source turf...
vv_get_dropdownReturn the markup to for the dropdown list for the VV panel for this atom
+

Var Details

base_pixel_x + + + + +

+

Default pixel x shifting for the atom's icon.

base_pixel_y + + + + +

+

Default pixel y shifting for the atom's icon.

base_transform + + + + +

+

Base transform matrix, edited by admin tooling and such

hybrid_light_sources + + + + +

+

Any light sources that are "inside" of us, for example, if src here was a mob that's carrying a flashlight, that flashlight's light source would be part of this list.

light + + + + +

+

Our light source. Don't fuck with this directly unless you have a good reason!

light_color + + + + +

+

Hexadecimal RGB string representing the colour of the light. White by default.

light_flags + + + + +

+

Bitflags to determine lighting-related atom properties.

light_mask_type + + + + +

+

typepath for the lighting maskfor dynamic light sources

light_on + + + + +

+

Boolean variable for toggleable lights. Has no effect without the proper light_system, light_range and light_power values.

light_pixel_x + + + + +

+

x offset for dynamic lights on this atom

light_pixel_y + + + + +

+

y offset for dynamic lights on this atom

light_power + + + + +

+

Intensity of the light. The stronger, the less shadows you will see on the lit area.

light_range + + + + +

+

Range of the light in tiles. Zero means no light.

light_system + + + + +

+

Light systems, only one of the three should be active at the same time.

minimap_color + + + + +

+

The color this atom will be if we choose to draw it on the minimap

orbit_target + + + + +

+

Reference to atom being orbited

raw_transform + + + + +

+

Last transform used before being compound with base_transform +This allows us to re-create transform if only base_transform changes

reagents + + + + +

+

Chemistry.

static_light + + + + +

+

The light source, datum. Dont fuck with this directly

static_light_sources + + + + +

+

Static light sources currently attached to this atom, this includes ones owned by atoms inside this atom

Proc Details

GetAllContents +

+

Will return the contents of an atom recursivly to a depth of 'searchDepth', not including starting atom

Topic +

+

Passes Stat Browser Panel clicks to the game and calls client click on an atom

add_blood +

+

add_blood

add_mob_blood +

+

Adjust the randomness there so everyone gets the same thing +Shout it at everyone

apply_transform +

+

Updates the atom's transform compounding it with /atom/var/base_transform

attack_alien +

+

*The parent proc, will default to UnarmedAttack behaviour unless overridden +Return XENO_ATTACK_ACTION if it does something and the attack should have full attack delay. +Return XENO_NONCOMBAT_ACTION if it did something and should have some delay. +Return XENO_NO_DELAY_ACTION if it gave an error message or should have no delay at all, ex. "You can't X that, it's Y!" +Return FALSE if it didn't do anything and should count as a missed slash.

+

If using do_afters or sleeps, use invoke_async (or manually add the relevant action delayand return FALSE +so that it doesn't double up on the delays) so that it applies the delay immediately instead of when it finishes.*

balloon_alert +

+

Creates text that will float from the atom upwards to the viewer.

balloon_alert_to_viewers +

+

Create balloon alerts (text that floats up) to everything within range. +Will only display to people who can see.

beam +

+

This is what you use to start a beam. Example: origin.Beam(target, args). Store the return of this proc if you don't set maxdist or time, you need it to delete the beam.

+

Unless you're making a custom beam effect (see the beam_type argument), you won't actually have to mess with any other procs. Make sure you store the return of this Proc, you'll need it +to kill the beam. +Arguments: +BeamTarget: Where you're beaming from. Where do you get origin? You didn't read the docs, fuck you. +icon_state: What the beam's icon_state is. The datum effect isn't the ebeam object, it doesn't hold any icon and isn't type dependent. +icon: What the beam's icon file is. Don't change this, man. All beam icons should be in beam.dmi anyways. +maxdistance: how far the beam will go before stopping itself. Used mainly for two things: preventing lag if the beam may go in that direction and setting a range to abilities that use beams. +beam_type: The type of your custom beam. This is for adding other wacky stuff for your beam only. Most likely, you won't (and shouldn't) change it.

connect_to_shuttle +

+

This proc is called on atoms when they are loaded into a shuttle

get_all_contents +

+

Returns the src and all recursive contents as a list. Includes the starting atom.

get_all_orbiters +

+

Recursive getter method to return a list of all ghosts orbitting this atom

+

This will work fine without manually passing arguments.

get_storage_depth_to +

+

Returns the storage depth of an atom. This is the number of items the atom is nested in before reaching the designated container, counted inclusively. +Returning 1 == directly inside the container's contents, 2 == inside something which is itself inside the container, etc. +An alternative to loc.loc; looked at another way, the number it returns is the number of loc checks before reaching the target. +Returns FALSE if the atom isn't somewhere inside the container's contents.

get_storage_depth_turf +

+

Like get storage depth to, but returns the depth to the nearest turf, inclusively +Returns FALSE if no top level turf (a loc was null somewhere, or a non-turf atom's loc was an area somehow).

langchat_display_image +

+

langchat_drop_image +

+

Hides the image, if one exists. Do not null the langchat image; it is rotated when the mob is buckled or proned to maintain text orientation.

langchat_make_image +

+

Creates the image if one does not exist, resets settings that are modified by speech procs.

reset_light +

+

Turn on the light, should be called by a timer

setDir +

+

Hook for running code when a dir change occurs

+

Not recommended to override, listen for the COMSIG_ATOM_DIR_CHANGE signal instead (sent by this proc)

set_density +

+

Setter for the density variable to append behavior related to its changing.

set_light_flags +

+

Setter for the light flags of this atom.

set_opacity +

+

Updates the atom's opacity value.

+

This exists to act as a hook for associated behavior. +It notifies (potentially) affected light sources so they can update (if needed).

static_update_light +

+

Pretty simple, just updates static lights on this atom

transfer_label_component +

+

//////////////////// Hand Labeler //////////////////////////////// +meant for use with qdelling/newing things to transfer labels between them

transition_filter +

+

turn_light +

+

If this object has lights, turn it on/off. +user: the mob actioning this +toggle_on: if TRUE, will try to turn ON the light. Opposite if FALSE +cooldown: how long until you can toggle the light on/off again +sparks: if a spark effect will be generated +forced: if TRUE and toggle_on = FALSE, will cause the light to turn on in cooldown second +originated_turf: if not null, will check if the obj_turf is closer than distance_max to originated_turf, and the proc will return if not +distance_max: used to check if originated_turf is close to obj.loc

update_base_transform +

+

Upates the base_transform which will be compounded with other transforms

update_light +

+

Will update the light (duh).Creates or destroys it if needed, makes it update values, makes sure it's got the correct source turf...

vv_get_dropdown +

+

Return the markup to for the dropdown list for the VV panel for this atom

+

Override in subtypes to add custom VV handling in the VV panel

+ + + diff --git a/atom/movable.html b/atom/movable.html new file mode 100644 index 000000000000..114fb6805c47 --- /dev/null +++ b/atom/movable.html @@ -0,0 +1,141 @@ + + + + + + + /atom/movable - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/atom/movable + + + +

+ + + + + + + + + + + + + + + +

Vars

affected_movable_lightsLazylist to keep track on the sources of illumination.
affecting_dynamic_lumiHighest-intensity light affecting us, which determines our visibility.
black_market_valueHow much this mob|object is worth when lowered into the ASRS pit while the black market is unlocked.
blocks_emissiveEither FALSE, EMISSIVE_BLOCK_GENERIC, or EMISSIVE_BLOCK_UNIQUE
em_blockInternal holder for emissive blocker object, do not use directly use blocks_emissive
emissive_overlayHolds a reference to the emissive blocker overlay

Procs

CollideCalled when a movable atom has hit an atom via movement
CollidedCalled when an atom has been hit by a movable atom via movement
abstract_movemeant for movement with zero side effects. only use for objects that are supposed to move "invisibly" (like camera mobs or ghosts) +if you want something to move onto a tile with a beartrap or recycler or tripmine or mouse without that object knowing about it at all, use this +most of the time you want forceMove()
destroy_clone---Var-Copy---
keybind_face_directionA wrapper for setDir that should only be able to fail by living mobs.
set_light_range_power_colorHelper to change several lighting overlay settings.
ui_interactThe ui_interact proc is used to open and update Nano UIs +If ui_interact is not used then the UI will not update correctly +ui_interact is currently defined for /atom/movable
update_dynamic_luminosityKeeps track of the sources of dynamic luminosity and updates our visibility with the highest.
+

Var Details

affected_movable_lights + + + + +

+

Lazylist to keep track on the sources of illumination.

affecting_dynamic_lumi + + + + +

+

Highest-intensity light affecting us, which determines our visibility.

black_market_value + + + + +

+

How much this mob|object is worth when lowered into the ASRS pit while the black market is unlocked.

blocks_emissive + + + + +

+

Either FALSE, EMISSIVE_BLOCK_GENERIC, or EMISSIVE_BLOCK_UNIQUE

em_block + + + + +

+

Internal holder for emissive blocker object, do not use directly use blocks_emissive

emissive_overlay + + + + +

+

Holds a reference to the emissive blocker overlay

Proc Details

Collide +

+

Called when a movable atom has hit an atom via movement

Collided +

+

Called when an atom has been hit by a movable atom via movement

abstract_move +

+

meant for movement with zero side effects. only use for objects that are supposed to move "invisibly" (like camera mobs or ghosts) +if you want something to move onto a tile with a beartrap or recycler or tripmine or mouse without that object knowing about it at all, use this +most of the time you want forceMove()

destroy_clone +

+

---Var-Copy---

keybind_face_direction +

+

A wrapper for setDir that should only be able to fail by living mobs.

+

Called from [/atom/movable/proc/keyLoop], this exists to be overwritten by living mobs with a check to see if we're actually alive enough to change directions

set_light_range_power_color +

+

Helper to change several lighting overlay settings.

ui_interact +

+

The ui_interact proc is used to open and update Nano UIs +If ui_interact is not used then the UI will not update correctly +ui_interact is currently defined for /atom/movable

+

@param user /mob The mob who is interacting with this ui +@param ui_key string A string key to use for this ui. Allows for multiple unique uis on one obj/mob (defaut value "main") +@param ui /datum/nanoui This parameter is passed by the nanoui process() proc when updating an open ui +@param force_open boolean Force the UI to (re)open, even if it's already open

+

@return nothing

update_dynamic_luminosity +

+

Keeps track of the sources of dynamic luminosity and updates our visibility with the highest.

+ + + diff --git a/atom/movable/emissive_blocker.html b/atom/movable/emissive_blocker.html new file mode 100644 index 000000000000..1a015bd0d231 --- /dev/null +++ b/atom/movable/emissive_blocker.html @@ -0,0 +1,32 @@ + + + + + + + /atom/movable/emissive_blocker - byond + + +
+ byond - + Modules - + Types +
+
+

emissive blocker + + + +

+ +

Internal atom that copies an appearance on to the blocker plane

+

Copies an appearance vis render_target and render_source on to the emissive blocking plane. +This means that the atom in question will block any emissive sprites. +This should only be used internally. If you are directly creating more of these, you're +almost guaranteed to be doing something wrong.

+ + + diff --git a/atom/movable/lighting_mask.html b/atom/movable/lighting_mask.html new file mode 100644 index 000000000000..75093ea9815d --- /dev/null +++ b/atom/movable/lighting_mask.html @@ -0,0 +1,213 @@ + + + + + + + /atom/movable/lighting_mask - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/atom/movable/lighting_mask + + + +

+ + + + + + + + + + + + + + + + + + + + + + + +

Vars

affecting_turfsTurfs that are being affected by this mask, this is for the sake of luminosity
attached_atomThe atom that we are attached to, does not need hard del protection as we are deleted with it
awaiting_updatePrevents us from registering for update twice before SSlighting init
current_angleThe current angle the item is pointing at
is_directionalSet to TRUE if you want the light to rotate with the owner
mask_holderReference to the holder /obj/effect
radiusThe radius of illumination of the mask
shadowslist of mutable appearance shadows

Procs

apply_matrixif you want the matrix to grow or shrink, you can do that using this proc when applyng it
calculate_lighting_shadowsReturns a list of matrices corresponding to the matrices that should be applied to triangles of +coordinates (0,0),(1,0),(0,1) to create a triangcalculate_shadows_matricesle that respresents the shadows +takes in the old turf to smoothly animate shadow movement
calculate_triangle_verticesBasically takes the 2-4 corners, extends them and then generates triangle coordinates representing shadows +Input: list(list(list(x, y), list(x, y))) +Layer 1: Lines +Layer 2: Vertex +Layer 3: X/Y value +OUTPUT: The same thing but with 3 lists embedded rather than 2 because they are triangles not lines now.
cull_blocked_in_groupTakes in the list of lines and sight blockers and returns only the lines that are not blocked
get_corners_from_coordsConverts the corners into the 3 (or 2) valid points +For example if a wall is top right of the source, the bottom left wall corner +can be removed otherwise the wall itself will be in the shadow. +Input: list(list(x1, y1), list(x2, y2)) +Output: list(list(list(x, y), list(x, y))) <-- 2 coordinates that form a line
get_matrixCreates a matrix for the lighting mak to use
group_atomsGroups things into vertical and horizontal lines. +Input: All atoms ungrouped list(atom1, atom2, atom3) +Output: List(List(Group), list(group2), ... , list(groupN)) +Output: List(List(atom1, atom2), list(atom3, atom4...), ... , list(atom))
queue_mask_updateEnqueues the mask in the queue properly
rotateRotates the light source to angle degrees.
rotate_mask_on_holder_turnThe holder atom turned, spins the mask if it's needed
set_colorSetter proc for colors
set_intensitySetter proc for the intensity of the mask
set_radiusSets the radius of the mask, and updates everything that needs to be updated
triangle_to_matrixConverts a triangle into a matrix that can be applied to a standardized triangle +to make it represent the points.
+

Var Details

affecting_turfs + + + + +

+

Turfs that are being affected by this mask, this is for the sake of luminosity

attached_atom + + + + +

+

The atom that we are attached to, does not need hard del protection as we are deleted with it

awaiting_update + + + + +

+

Prevents us from registering for update twice before SSlighting init

current_angle + + + + +

+

The current angle the item is pointing at

is_directional + + + + +

+

Set to TRUE if you want the light to rotate with the owner

mask_holder + + + + +

+

Reference to the holder /obj/effect

radius + + + + +

+

The radius of illumination of the mask

shadows + + + + +

+

list of mutable appearance shadows

Proc Details

apply_matrix +

+

if you want the matrix to grow or shrink, you can do that using this proc when applyng it

calculate_lighting_shadows +

+

Returns a list of matrices corresponding to the matrices that should be applied to triangles of +coordinates (0,0),(1,0),(0,1) to create a triangcalculate_shadows_matricesle that respresents the shadows +takes in the old turf to smoothly animate shadow movement

calculate_triangle_vertices +

+

Basically takes the 2-4 corners, extends them and then generates triangle coordinates representing shadows +Input: list(list(list(x, y), list(x, y))) +Layer 1: Lines +Layer 2: Vertex +Layer 3: X/Y value +OUTPUT: The same thing but with 3 lists embedded rather than 2 because they are triangles not lines now.

cull_blocked_in_group +

+

Takes in the list of lines and sight blockers and returns only the lines that are not blocked

get_corners_from_coords +

+

Converts the corners into the 3 (or 2) valid points +For example if a wall is top right of the source, the bottom left wall corner +can be removed otherwise the wall itself will be in the shadow. +Input: list(list(x1, y1), list(x2, y2)) +Output: list(list(list(x, y), list(x, y))) <-- 2 coordinates that form a line

get_matrix +

+

Creates a matrix for the lighting mak to use

group_atoms +

+

Groups things into vertical and horizontal lines. +Input: All atoms ungrouped list(atom1, atom2, atom3) +Output: List(List(Group), list(group2), ... , list(groupN)) +Output: List(List(atom1, atom2), list(atom3, atom4...), ... , list(atom))

queue_mask_update +

+

Enqueues the mask in the queue properly

rotate +

+

Rotates the light source to angle degrees.

rotate_mask_on_holder_turn +

+

The holder atom turned, spins the mask if it's needed

set_color +

+

Setter proc for colors

set_intensity +

+

Setter proc for the intensity of the mask

set_radius +

+

Sets the radius of the mask, and updates everything that needs to be updated

triangle_to_matrix +

+

Converts a triangle into a matrix that can be applied to a standardized triangle +to make it represent the points.

+ + + diff --git a/atom/movable/plane_master_controller.html b/atom/movable/plane_master_controller.html new file mode 100644 index 000000000000..d26e76250c38 --- /dev/null +++ b/atom/movable/plane_master_controller.html @@ -0,0 +1,78 @@ + + + + + + + /atom/movable/plane_master_controller - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/atom/movable/plane_master_controller + + + +

+ +

Atom that manages and controls multiple planes. It's an atom so we can hook into add_filter etc. Multiple controllers can control one plane.

+ + + + + + +

Vars

controlled_planesList of planes in this controllers control. Initially this is a normal list, but becomes an assoc list of plane numbers as strings | plane instance
owner_hudhud that owns this controller

Procs

InitializeEnsures that all the planes are correctly in the controlled_planes list.
add_filterFull override so we can just use filterrific
get_filtersGets all filters for this controllers plane masters
remove_filterFull override so we can just use filterrific
transition_filterTransitions all filters owned by this plane master controller
+

Var Details

controlled_planes + + + + +

+

List of planes in this controllers control. Initially this is a normal list, but becomes an assoc list of plane numbers as strings | plane instance

owner_hud + + + + +

+

hud that owns this controller

Proc Details

Initialize +

+

Ensures that all the planes are correctly in the controlled_planes list.

add_filter +

+

Full override so we can just use filterrific

get_filters +

+

Gets all filters for this controllers plane masters

remove_filter +

+

Full override so we can just use filterrific

transition_filter +

+

Transitions all filters owned by this plane master controller

+ + + diff --git a/atom/movable/screen.html b/atom/movable/screen.html new file mode 100644 index 000000000000..bef23bfc143c --- /dev/null +++ b/atom/movable/screen.html @@ -0,0 +1,96 @@ + + + + + + + /atom/movable/screen - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/atom/movable/screen + + + +

+ +

A screen object, which acts as a container for turfs and other things +you want to show on the map, which you usually attach to "vis_contents".

+ + + + + + + +

Vars

assigned_mapMap name assigned to this object. +Automatically set by /client/proc/add_obj_to_map.
clear_with_screenIf FALSE, this will not be cleared when calling /client/clear_screen()
del_on_map_removalMark this object as garbage-collectible after you clean the map +it was registered on.
hudA reference to the owner HUD, if any.
masterA reference to the object in the slot. Grabs or items, generally.

Procs

fill_rectSets screen_loc to fill a rectangular area of the map.
set_positionSets screen_loc of this screen object, in form of point coordinates, +with optional pixel offset (px, py).
update_iconle awesome parent type
+

Var Details

assigned_map + + + + +

+

Map name assigned to this object. +Automatically set by /client/proc/add_obj_to_map.

clear_with_screen + + + + +

+

If FALSE, this will not be cleared when calling /client/clear_screen()

del_on_map_removal + + + + +

+

Mark this object as garbage-collectible after you clean the map +it was registered on.

+

This could probably be changed to be a proc, for conditional removal. +But for now, this works.

hud + + + + +

+

A reference to the owner HUD, if any.

master + + + + +

+

A reference to the object in the slot. Grabs or items, generally.

Proc Details

fill_rect +

+

Sets screen_loc to fill a rectangular area of the map.

+

If applicable, "assigned_map" has to be assigned before this proc call.

set_position +

+

Sets screen_loc of this screen object, in form of point coordinates, +with optional pixel offset (px, py).

+

If applicable, "assigned_map" has to be assigned before this proc call.

update_icon +

+

le awesome parent type

+ + + diff --git a/atom/movable/screen/alert.html b/atom/movable/screen/alert.html new file mode 100644 index 000000000000..19bbfceb8e86 --- /dev/null +++ b/atom/movable/screen/alert.html @@ -0,0 +1,57 @@ + + + + + + + /atom/movable/screen/alert - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Alert + + + +

+ + + + + +

Vars

click_masterBoolean. If TRUE, the Click() proc will attempt to Click() on the master first if there is a master.
override_alertsIf it is overriding other alerts of the same type
ownerAlert owner
timeoutIf set to a number, this alert will clear itself after that many deciseconds
+

Var Details

click_master + + + + +

+

Boolean. If TRUE, the Click() proc will attempt to Click() on the master first if there is a master.

override_alerts + + + + +

+

If it is overriding other alerts of the same type

owner + + + + +

+

Alert owner

timeout + + + + +

+

If set to a number, this alert will clear itself after that many deciseconds

+ + + diff --git a/atom/movable/screen/alert/status_effect.html b/atom/movable/screen/alert/status_effect.html new file mode 100644 index 000000000000..5fd1e865f99a --- /dev/null +++ b/atom/movable/screen/alert/status_effect.html @@ -0,0 +1,36 @@ + + + + + + + /atom/movable/screen/alert/status_effect - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Curse of Mundanity + + + +

+ +

Alert base type for status effect alerts

+

Vars

attached_effectThe status effect we're linked to
+

Var Details

attached_effect + + + + +

+

The status effect we're linked to

+ + + diff --git a/atom/movable/screen/color_matrix_proxy_view.html b/atom/movable/screen/color_matrix_proxy_view.html new file mode 100644 index 000000000000..9b790bfa68a6 --- /dev/null +++ b/atom/movable/screen/color_matrix_proxy_view.html @@ -0,0 +1,36 @@ + + + + + + + /atom/movable/screen/color_matrix_proxy_view - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

color_matrix_proxy_view + + + +

+ + +

Vars

clientThe client that is watching this view
+

Var Details

client + + + + +

+

The client that is watching this view

+ + + diff --git a/atom/movable/screen/escape_menu/home_button_text.html b/atom/movable/screen/escape_menu/home_button_text.html new file mode 100644 index 000000000000..2ffff24ed856 --- /dev/null +++ b/atom/movable/screen/escape_menu/home_button_text.html @@ -0,0 +1,35 @@ + + + + + + + /atom/movable/screen/escape_menu/home_button_text - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/atom/movable/screen/escape_menu/home_button_text + + + +

+ + +

Procs

set_hoveredSets the hovered state of the button, and updates the text

Proc Details

set_hovered +

+

Sets the hovered state of the button, and updates the text

+ + + diff --git a/atom/movable/screen/fullscreen.html b/atom/movable/screen/fullscreen.html new file mode 100644 index 000000000000..b8ca6e6e3b3f --- /dev/null +++ b/atom/movable/screen/fullscreen.html @@ -0,0 +1,36 @@ + + + + + + + /atom/movable/screen/fullscreen - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/atom/movable/screen/fullscreen + + + +

+ + +

Vars

should_resizeIf this should try and resize if the user's view is bigger than the default
+

Var Details

should_resize + + + + +

+

If this should try and resize if the user's view is bigger than the default

+ + + diff --git a/atom/movable/screen/gun.html b/atom/movable/screen/gun.html new file mode 100644 index 000000000000..e7e3ba8a2179 --- /dev/null +++ b/atom/movable/screen/gun.html @@ -0,0 +1,36 @@ + + + + + + + /atom/movable/screen/gun - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/atom/movable/screen/gun + + + +

+ + +

Vars

gun_proc_refThe proc/verb which should be called on the gun.
+

Var Details

gun_proc_ref + + + + +

+

The proc/verb which should be called on the gun.

+ + + diff --git a/atom/movable/screen/plane_master.html b/atom/movable/screen/plane_master.html new file mode 100644 index 000000000000..29de30a9e253 --- /dev/null +++ b/atom/movable/screen/plane_master.html @@ -0,0 +1,77 @@ + + + + + + + /atom/movable/screen/plane_master - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/atom/movable/screen/plane_master + + + +

+ + + + + + +

Vars

blend_mode_overrideinteger: blend mode to apply to the render relay in case you dont want to use the plane_masters blend_mode
generate_render_targetbool: Whether this plane should get a render target automatically generated
relayreference: current relay this plane is utilizing to render
render_relay_planeinteger: what plane we will relay this planes render to

Procs

relay_render_to_planePlane master proc called in backdrop() that creates a relay object, sets it as needed and then adds it to the clients screen +Sets:
+

Var Details

blend_mode_override + + + + +

+

integer: blend mode to apply to the render relay in case you dont want to use the plane_masters blend_mode

generate_render_target + + + + +

+

bool: Whether this plane should get a render target automatically generated

relay + + + + +

+

reference: current relay this plane is utilizing to render

render_relay_plane + + + + +

+

integer: what plane we will relay this planes render to

Proc Details

relay_render_to_plane +

+

Plane master proc called in backdrop() that creates a relay object, sets it as needed and then adds it to the clients screen +Sets:

+
+ + + diff --git a/atom/movable/screen/plane_master/rendering_plate.html b/atom/movable/screen/plane_master/rendering_plate.html new file mode 100644 index 000000000000..7b15af701025 --- /dev/null +++ b/atom/movable/screen/plane_master/rendering_plate.html @@ -0,0 +1,33 @@ + + + + + + + /atom/movable/screen/plane_master/rendering_plate - byond + + +
+ byond - + Modules - + Types +
+
+

default rendering plate + + + +

+ +Rendering plate +

Acts like a plane master, but for plane masters +Renders other planes onto this plane, through the use of render objects +Any effects applied onto this plane will act on the unified plane +IE a bulge filter will apply as if the world was one object +remember that once planes are unified on a render plate you cant change the layering of them!

+ + + diff --git a/atom/movable/screen/queen_locator.html b/atom/movable/screen/queen_locator.html new file mode 100644 index 000000000000..36fc5ee2c330 --- /dev/null +++ b/atom/movable/screen/queen_locator.html @@ -0,0 +1,45 @@ + + + + + + + /atom/movable/screen/queen_locator - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

queen locator + + + +

+ + + +

Vars

tracker_typeThe 'category' of the atom currently being tracked. (Defaults to TRACKER_QUEEN)
tracking_refA weak reference to the atom currently being tracked. +(Note: This is null for TRACKER_QUEEN and TRACKER_HIVE, as those are accessed through the user's hive datum.)
+

Var Details

tracker_type + + + + +

+

The 'category' of the atom currently being tracked. (Defaults to TRACKER_QUEEN)

tracking_ref + + + + +

+

A weak reference to the atom currently being tracked. +(Note: This is null for TRACKER_QUEEN and TRACKER_HIVE, as those are accessed through the user's hive datum.)

+ + + diff --git a/atom/movable/screen/text/screen_text.html b/atom/movable/screen/text/screen_text.html new file mode 100644 index 000000000000..954d0cd54d32 --- /dev/null +++ b/atom/movable/screen/text/screen_text.html @@ -0,0 +1,113 @@ + + + + + + + /atom/movable/screen/text/screen_text - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/atom/movable/screen/text/screen_text + + + +

+ + + + + + + + + + + + + +

Vars

fade_in_timeTime taken to fade in as we start printing text
fade_out_delayTime before fade out after printing is finished
fade_out_timeTime taken when fading out after fade_out_delay
letters_per_updateletters to update by per text to per play_delay
play_delaydelay between playing each letter. in general use 1 for fluff and 0.5 for time sensitive messsages
playerThe client that this text is for
style_closeclosing styling for the message
style_openopening styling for the message
text_to_playvar for the text we are going to play

Procs

after_playhandles post-play effects like fade out after the fade out delay
end_playends the play then deletes this screen object and plays the next one in queue if it exists
play_to_clientproc for actually playing this screen_text on a mob.
+

Var Details

fade_in_time + + + + +

+

Time taken to fade in as we start printing text

fade_out_delay + + + + +

+

Time before fade out after printing is finished

fade_out_time + + + + +

+

Time taken when fading out after fade_out_delay

letters_per_update + + + + +

+

letters to update by per text to per play_delay

play_delay + + + + +

+

delay between playing each letter. in general use 1 for fluff and 0.5 for time sensitive messsages

player + + + + +

+

The client that this text is for

style_close + + + + +

+

closing styling for the message

style_open + + + + +

+

opening styling for the message

text_to_play + + + + +

+

var for the text we are going to play

Proc Details

after_play +

+

handles post-play effects like fade out after the fade out delay

end_play +

+

ends the play then deletes this screen object and plays the next one in queue if it exists

play_to_client +

+

proc for actually playing this screen_text on a mob.

+ + + diff --git a/atom/movable/vis_obj/weed_food.html b/atom/movable/vis_obj/weed_food.html new file mode 100644 index 000000000000..f17d7685c8c6 --- /dev/null +++ b/atom/movable/vis_obj/weed_food.html @@ -0,0 +1,35 @@ + + + + + + + /atom/movable/vis_obj/weed_food - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

weeds + + + +

+ + +

Procs

on_animation_timerTimer callback for changing the icon_state

Proc Details

on_animation_timer +

+

Timer callback for changing the icon_state

+ + + diff --git a/client.html b/client.html new file mode 100644 index 000000000000..a92d91b47220 --- /dev/null +++ b/client.html @@ -0,0 +1,562 @@ + + + + + + + /client - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/client + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

adminhelptimeridClient var used for returning the ahelp verb
completed_asset_jobsList of all completed blocking send jobs awaiting acknowledgement by send_asset
connection_timeworld.time they connected
current_ticketClient var used for tracking the ticket the (usually) not-admin client is dealing with
holding_clickWhether or not the player is holding their mouse click
ignore_next_clickMeans that there can only be one click per mousedown.
key_combos_heldA buffer for combinations such of modifiers + keys (ex: CtrlD, AltE, ShiftT). Format: "key" -> "combo" (ex: "D" -> "CtrlD")
keys_heldA buffer of currently held keys.
last_asset_jobLast asset send job id.
mouse_trace_historyThe history of all atoms that were hovered over while the mouse was depressed
movement_keyscustom movement keys for this client
movement_lockedAre we locking our movement input?
next_move_dir_addOn next move, add this dir to the move that would otherwise be done
next_move_dir_subOn next move, subtract this dir from the move that would otherwise be done
obj_windowOur object window datum. It stores info about and handles behavior for the object tab
panel_tabslist of all tabs
recent_examinesA lazy list of atoms we've examined in the last EXAMINE_MORE_TIME (default 1.5) seconds, so that we will call [/atom/proc/examine_more] instead of [/atom/proc/examine] on them when examining
screen_mapsAssoc list with all the active maps - when a screen obj is added to +a map, it's put in here as well.
screen_textslazylist of screen_texts for this client, first in this list is the one playing
stat_panelStat panel window declaration
stat_tabour current tab
tgui_cache_reloadedglobal
tgui_sayAssigned say modal of the client
tgui_windowsglobal
tooltipsdatum that controls the displaying and hiding of tooltips
topiclimiterUsed for limiting the rate of topic sends by the client to avoid abuse
typing_indicatorsDoes this client have typing indicators enabled?
urgent_ahelp_cooldownThe last urgent ahelp that this player sent

Procs

adaptive_zoomAttempts to scale client zoom automatically to fill 1080p multiples. Best used with auto fit viewport.
add_to_screenWrapper for adding anything to a client's screen
admin_followAttempts to make the client orbit the given object, for administrative purposes. +If they are not an observer, will try to aghost them.
asset_cache_confirm_arrivalProcess asset cache client topic calls for "asset_cache_confirm_arrival=[INT]"
asset_cache_preload_dataProcess asset cache client topic calls for "asset_cache_preload_data=[HTML+JSON_STRING]
asset_cache_update_jsonUpdates the client side stored json file used to keep track of what assets the client has between restarts/reconnects.
browse_queue_flushBlocks until all currently sending browse and browse_rsc assets have been sent. +Due to byond limitations, this proc will sleep for 1 client round trip even if the client has no pending asset sends. +This proc will return an untrue value if it had to return before confirming the send, such as timeout or the client going away.
check_localhost_statusLogical OR list, not match all.
clear_all_mapsClears all the maps of registered screen objects.
clear_mapClears the map of registered screen objects.
clear_screenClears the client's screen, aside from ones that opt out
close_popupCloses a popup.
create_popupCreates a popup window with a basic map element in it, without any +further initialization.
erase_all_macrosErases macros set by the keybinding system
fix_tgui_paneltgui panel / chat troubleshooting verb
get_total_drone_playtimeplaytime for drone and drone evolution castes
get_total_t3_playtimeplaytime for t3 castes and queen
get_total_xeno_playtimeplaytime for all castes
handle_ooc_prefixUsed by OOC chat to generate icons for player prefix. Intended to make it easy to see at a glance if someone is staff, WL Council or Mentor.
handle_popup_closeWhen the popup closes in any way (player or proc call) it calls this.
init_verbsCompiles a full list of verbs to be sent to the browser +Sends the 2D verbs vector of (verb category, verb name)
keyUpCheck if the key is short enough to even be a real key
nanocloseCalled when a Nano UI window is closed +This is how Nano handles closed windows +It must be a verb so that it can be called using winset
notify_loginHandles login-related logging and associated notifications
on_stat_panel_messageHandles incoming messages from the stat-panel TGUI.
open_escape_menuOpens the escape menu. +Verb, hardcoded to Escape, set in the client skin.
open_particle_editoropens the particle editor UI for the in_atom object for this client
register_map_objRegisters screen obj with the client, which makes it visible on the +assigned map, and becomes a part of the assigned map's lifecycle.
remove_from_screenWrapper for removing anything from a client's screen
reset_held_keysManually clears any held keys, in case due to lag or other undefined behavior a key gets stuck.
set_crit_typeToggle in character preferences and toggle preferences to configure what kind of crit overlay is used in game; Either white or grey.
set_eye_blur_typeToggle in character preferences and toggle preferences to configure what kind of blur overlay is used in game; Either blurry, impaired, or legacy.
set_flash_typeToggle in character preferences and toggle preferences to configure what kind of flash overlay is used in game; Either white or black.
set_macrosRequest blocking update of keybinds to client, clearing old ones
setup_popupCreate the popup, and get it ready for generic use by giving +it a background.
show_other_recordManagement Access +Edit Access +Note category options
tgui_say_create_open_commandCreates a JSON encoded message to open TGUI say modals properly.
toggle_dualwieldToggle whether dual-wielding fires both guns at once or swaps between them.
typing_indicatorWhether or not to show a typing indicator when speaking. Defaults to on.
uicloseverb
update_special_keybindsUpdates the keybinds for special keys
+

Var Details

adminhelptimerid + + + + +

+

Client var used for returning the ahelp verb

completed_asset_jobs + + + + +

+

List of all completed blocking send jobs awaiting acknowledgement by send_asset

connection_time + + + + +

+

world.time they connected

current_ticket + + + + +

+

Client var used for tracking the ticket the (usually) not-admin client is dealing with

holding_click + + + + +

+

Whether or not the player is holding their mouse click

ignore_next_click + + + + +

+

Means that there can only be one click per mousedown.

key_combos_held + + + + +

+

A buffer for combinations such of modifiers + keys (ex: CtrlD, AltE, ShiftT). Format: "key" -> "combo" (ex: "D" -> "CtrlD")

keys_held + + + + +

+

A buffer of currently held keys.

last_asset_job + + + + +

+

Last asset send job id.

mouse_trace_history + + + + +

+

The history of all atoms that were hovered over while the mouse was depressed

movement_keys + + + + +

+

custom movement keys for this client

movement_locked + + + + +

+

Are we locking our movement input?

next_move_dir_add + + + + +

+

On next move, add this dir to the move that would otherwise be done

next_move_dir_sub + + + + +

+

On next move, subtract this dir from the move that would otherwise be done

obj_window + + + + +

+

Our object window datum. It stores info about and handles behavior for the object tab

panel_tabs + + + + +

+

list of all tabs

recent_examines + + + + +

+

A lazy list of atoms we've examined in the last EXAMINE_MORE_TIME (default 1.5) seconds, so that we will call [/atom/proc/examine_more] instead of [/atom/proc/examine] on them when examining

screen_maps + + + + +

+

Assoc list with all the active maps - when a screen obj is added to +a map, it's put in here as well.

+

Format: list( = list(/atom/movable/screen))

screen_texts + + + + +

+

lazylist of screen_texts for this client, first in this list is the one playing

stat_panel + + + + +

+

Stat panel window declaration

stat_tab + + + + +

+

our current tab

tgui_cache_reloaded + + + + +

+

global

+

TRUE if cache was reloaded by tgui dev server at least once.

tgui_say + + + + +

+

Assigned say modal of the client

tgui_windows + + + + +

+

global

+

Tracks open windows for a user.

tooltips + + + + +

+

datum that controls the displaying and hiding of tooltips

topiclimiter + + + + +

+

Used for limiting the rate of topic sends by the client to avoid abuse

typing_indicators + + + + +

+

Does this client have typing indicators enabled?

urgent_ahelp_cooldown + + + + +

+

The last urgent ahelp that this player sent

Proc Details

adaptive_zoom +

+

Attempts to scale client zoom automatically to fill 1080p multiples. Best used with auto fit viewport.

add_to_screen +

+

Wrapper for adding anything to a client's screen

admin_follow +

+

Attempts to make the client orbit the given object, for administrative purposes. +If they are not an observer, will try to aghost them.

asset_cache_confirm_arrival +

+

Process asset cache client topic calls for "asset_cache_confirm_arrival=[INT]"

asset_cache_preload_data +

+

Process asset cache client topic calls for "asset_cache_preload_data=[HTML+JSON_STRING]

asset_cache_update_json +

+

Updates the client side stored json file used to keep track of what assets the client has between restarts/reconnects.

browse_queue_flush +

+

Blocks until all currently sending browse and browse_rsc assets have been sent. +Due to byond limitations, this proc will sleep for 1 client round trip even if the client has no pending asset sends. +This proc will return an untrue value if it had to return before confirming the send, such as timeout or the client going away.

check_localhost_status +

+

Logical OR list, not match all.

clear_all_maps +

+

Clears all the maps of registered screen objects.

clear_map +

+

Clears the map of registered screen objects.

+

Not really needed most of the time, as the client's screen list gets reset +on relog. any of the buttons are going to get caught by garbage collection +anyway. they're effectively qdel'd.

clear_screen +

+

Clears the client's screen, aside from ones that opt out

close_popup +

+

Closes a popup.

create_popup +

+

Creates a popup window with a basic map element in it, without any +further initialization.

+

Ratio is how many pixels by how many pixels (keep it simple).

+

Returns a map name.

erase_all_macros +

+

Erases macros set by the keybinding system

fix_tgui_panel +

+

tgui panel / chat troubleshooting verb

get_total_drone_playtime +

+

playtime for drone and drone evolution castes

get_total_t3_playtime +

+

playtime for t3 castes and queen

get_total_xeno_playtime +

+

playtime for all castes

handle_ooc_prefix +

+

Used by OOC chat to generate icons for player prefix. Intended to make it easy to see at a glance if someone is staff, WL Council or Mentor.

handle_popup_close +

+

When the popup closes in any way (player or proc call) it calls this.

init_verbs +

+

Compiles a full list of verbs to be sent to the browser +Sends the 2D verbs vector of (verb category, verb name)

keyUp +

+

Check if the key is short enough to even be a real key

nanoclose +

+

Called when a Nano UI window is closed +This is how Nano handles closed windows +It must be a verb so that it can be called using winset

+

@return nothing

notify_login +

+

Handles login-related logging and associated notifications

on_stat_panel_message +

+

Handles incoming messages from the stat-panel TGUI.

open_escape_menu +

+

Opens the escape menu. +Verb, hardcoded to Escape, set in the client skin.

open_particle_editor +

+

opens the particle editor UI for the in_atom object for this client

register_map_obj +

+

Registers screen obj with the client, which makes it visible on the +assigned map, and becomes a part of the assigned map's lifecycle.

remove_from_screen +

+

Wrapper for removing anything from a client's screen

reset_held_keys +

+

Manually clears any held keys, in case due to lag or other undefined behavior a key gets stuck.

set_crit_type +

+

Toggle in character preferences and toggle preferences to configure what kind of crit overlay is used in game; Either white or grey.

set_eye_blur_type +

+

Toggle in character preferences and toggle preferences to configure what kind of blur overlay is used in game; Either blurry, impaired, or legacy.

set_flash_type +

+

Toggle in character preferences and toggle preferences to configure what kind of flash overlay is used in game; Either white or black.

set_macros +

+

Request blocking update of keybinds to client, clearing old ones

setup_popup +

+

Create the popup, and get it ready for generic use by giving +it a background.

+

Width and height are multiplied by 64 by default.

show_other_record +

+

Management Access +Edit Access +Note category options

tgui_say_create_open_command +

+

Creates a JSON encoded message to open TGUI say modals properly.

+

Arguments: +channel - The channel to open the modal in. +Returns: +string - A JSON encoded message to open the modal.

toggle_dualwield +

+

Toggle whether dual-wielding fires both guns at once or swaps between them.

typing_indicator +

+

Whether or not to show a typing indicator when speaking. Defaults to on.

uiclose +

+

verb

+

Called by UIs when they are closed. +Must be a verb so winset() can call it.

+

required uiref ref The UI that was closed.

update_special_keybinds +

+

Updates the keybinds for special keys

+

Handles adding macros for the keys that need it +And adding movement keys to the clients movement_keys list +At the time of writing this, communication(OOC, Say, IC) require macros +Arguments:

+
+ + + diff --git a/code/__DEFINES/ARES.html b/code/__DEFINES/ARES.html new file mode 100644 index 000000000000..1b93b0239df3 --- /dev/null +++ b/code/__DEFINES/ARES.html @@ -0,0 +1,144 @@ + + + + + + + code/__DEFINES/ARES.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/ARES.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + +
ARES_ACCESS_BASICGeneric access for 1:1 conversations with ARES and unrestricted commands.
ARES_ACCESS_COMMANDSecure Access, can read ARES Announcements and Bioscans.
ARES_ACCESS_CORPORATECL, can read Apollo Log and also Delete Announcements.
ARES_ACCESS_SENIORSenior Command, can Delete Bioscans.
ARES_ACCESS_CESynth, CE & Commanding Officer, can read the access log.
ARES_ACCESS_HIGHHigh Command, can read the deletion log.
ARES_ACCESS_DEBUGDebugging. Allows me to view everything without using a high command rank.
ARES_LOG_NONENot by ARES logged through marine_announcement()
ARES_LOG_MAINLogged with all announcements
ARES_LOG_SECURITYLogged in the security updates
TICKET_PENDINGTicket statuses, both for Access and Maintenance +Pending assignment/rejection
TICKET_ASSIGNEDAssigned to a WJ
TICKET_CANCELLEDCancelled by reporter
TICKET_REJECTEDRejected by WJs
TICKET_COMPLETEDCompleted by WJs
TICKET_GRANTEDGranted Access Ticket
TICKET_REVOKEDRevoked Access Ticket
TICKET_RETURNEDSelf-Returned Access Ticket
TICKET_OPENChecks for if buttons can be used, these may yet be removed and internalised to the UI programming
TICKET_PRIORITYUpgraded to Priority
TICKET_NON_PRIORITYDowngraded from Priority
COOLDOWN_ARES_SENSORCooldowns
JOE_JOIN_DEAD_TIMETime until someone can respawn as Working Joe

Define Details

+

ARES_ACCESS_BASIC + + +

+

Generic access for 1:1 conversations with ARES and unrestricted commands.

ARES_ACCESS_CE + + +

+

Synth, CE & Commanding Officer, can read the access log.

ARES_ACCESS_COMMAND + + +

+

Secure Access, can read ARES Announcements and Bioscans.

ARES_ACCESS_CORPORATE + + +

+

CL, can read Apollo Log and also Delete Announcements.

ARES_ACCESS_DEBUG + + +

+

Debugging. Allows me to view everything without using a high command rank.

ARES_ACCESS_HIGH + + +

+

High Command, can read the deletion log.

ARES_ACCESS_SENIOR + + +

+

Senior Command, can Delete Bioscans.

ARES_LOG_MAIN + + +

+

Logged with all announcements

ARES_LOG_NONE + + +

+

Not by ARES logged through marine_announcement()

ARES_LOG_SECURITY + + +

+

Logged in the security updates

COOLDOWN_ARES_SENSOR + + +

+

Cooldowns

JOE_JOIN_DEAD_TIME + + +

+

Time until someone can respawn as Working Joe

TICKET_ASSIGNED + + +

+

Assigned to a WJ

TICKET_CANCELLED + + +

+

Cancelled by reporter

TICKET_COMPLETED + + +

+

Completed by WJs

TICKET_GRANTED + + +

+

Granted Access Ticket

TICKET_NON_PRIORITY + + +

+

Downgraded from Priority

TICKET_OPEN + + +

+

Checks for if buttons can be used, these may yet be removed and internalised to the UI programming

TICKET_PENDING + + +

+

Ticket statuses, both for Access and Maintenance +Pending assignment/rejection

TICKET_PRIORITY + + +

+

Upgraded to Priority

TICKET_REJECTED + + +

+

Rejected by WJs

TICKET_RETURNED + + +

+

Self-Returned Access Ticket

TICKET_REVOKED + + +

+

Revoked Access Ticket

+ + + diff --git a/code/__DEFINES/MC.html b/code/__DEFINES/MC.html new file mode 100644 index 000000000000..de91ee172cc5 --- /dev/null +++ b/code/__DEFINES/MC.html @@ -0,0 +1,154 @@ + + + + + + + code/__DEFINES/MC.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/MC.dm + +

+ + + + + + + + + + + + + + + + + + + + + +
MC_AVG_OVER_TIMEcreates a running average of "things elapsed" per time period when you need to count via a smaller time period. +eg you want an average number of things happening per second but you measure the event every tick (50 milliseconds). +make sure both time intervals are in the same units. doesnt work if current_duration > total_duration or if total_duration == 0
MC_RUNNINGReturns true if the MC is initialized and running. +Optional argument init_stage controls what stage the mc must have initializted to count as initialized. Defaults to INITSTAGE_MAX if not specified.

SubSystem flags (Please design any new flags so that the default is off, to make adding flags to subsystems easier)

SS_NO_INITsubsystem does not initialize.
SS_NO_FIREsubsystem does not fire. +(like can_fire = 0, but keeps it from getting added to the processing subsystems list) +(Requires a MC restart to change)
SS_BACKGROUNDSubsystem only runs on spare cpu (after all non-background subsystems have ran that tick) +SS_BACKGROUND has its own priority bracket, this overrides SS_TICKER's priority bump
SS_TICKERTreat wait as a tick count, not DS, run every wait ticks. +(also forces it to run first in the tick (unless SS_BACKGROUND)) +(We don't want to be choked out by other subsystems queuing into us) +(implies all runlevels because of how it works) +This is designed for basically anything that works as a mini-mc (like SStimer)
SS_KEEP_TIMINGkeep the subsystem's timing on point by firing early if it fired late last fire because of lag +ie: if a 20ds subsystem fires say 5 ds late due to lag or what not, its next fire would be in 15ds, not 20ds.
SS_POST_FIRE_TIMINGCalculate its next fire after its fired. +(IE: if a 5ds wait SS takes 2ds to run, its next fire should be 5ds away, not 3ds like it normally would be) +This flag overrides SS_KEEP_TIMING
SS_OK_TO_FAIL_INITIf this subsystem doesn't initialize, it should not report as a hard error in CI. +This should be used for subsystems that are flaky for complicated reasons, such as +the Lua subsystem, which relies on auxtools, which is unstable. +It should not be used simply to silence CI.

SUBSYSTEM STATES

+
SS_IDLEain't doing shit.
SS_QUEUEDqueued to run
SS_RUNNINGactively running
SS_PAUSEDpaused by mc_tick_check
SS_SLEEPINGfire() slept.
SS_PAUSINGin the middle of pausing
INITSTAGE_EARLY! Early init stuff that doesn't need to wait for mapload
INITSTAGE_MAIN! Main init stage
INITSTAGE_MAX! Highest initstage.

Define Details

+

INITSTAGE_EARLY + + +

+

! Early init stuff that doesn't need to wait for mapload

INITSTAGE_MAIN + + +

+

! Main init stage

INITSTAGE_MAX + + +

+

! Highest initstage.

MC_AVG_OVER_TIME + + + +

+

creates a running average of "things elapsed" per time period when you need to count via a smaller time period. +eg you want an average number of things happening per second but you measure the event every tick (50 milliseconds). +make sure both time intervals are in the same units. doesnt work if current_duration > total_duration or if total_duration == 0

MC_RUNNING + + + +

+

Returns true if the MC is initialized and running. +Optional argument init_stage controls what stage the mc must have initializted to count as initialized. Defaults to INITSTAGE_MAX if not specified.

SS_BACKGROUND + + +

+

Subsystem only runs on spare cpu (after all non-background subsystems have ran that tick) +SS_BACKGROUND has its own priority bracket, this overrides SS_TICKER's priority bump

SS_IDLE + + +

+

ain't doing shit.

SS_KEEP_TIMING + + +

+

keep the subsystem's timing on point by firing early if it fired late last fire because of lag +ie: if a 20ds subsystem fires say 5 ds late due to lag or what not, its next fire would be in 15ds, not 20ds.

SS_NO_FIRE + + +

+

subsystem does not fire. +(like can_fire = 0, but keeps it from getting added to the processing subsystems list) +(Requires a MC restart to change)

SS_NO_INIT + + +

+

subsystem does not initialize.

SS_OK_TO_FAIL_INIT + + +

+

If this subsystem doesn't initialize, it should not report as a hard error in CI. +This should be used for subsystems that are flaky for complicated reasons, such as +the Lua subsystem, which relies on auxtools, which is unstable. +It should not be used simply to silence CI.

SS_PAUSED + + +

+

paused by mc_tick_check

SS_PAUSING + + +

+

in the middle of pausing

SS_POST_FIRE_TIMING + + +

+

Calculate its next fire after its fired. +(IE: if a 5ds wait SS takes 2ds to run, its next fire should be 5ds away, not 3ds like it normally would be) +This flag overrides SS_KEEP_TIMING

SS_QUEUED + + +

+

queued to run

SS_RUNNING + + +

+

actively running

SS_SLEEPING + + +

+

fire() slept.

SS_TICKER + + +

+

Treat wait as a tick count, not DS, run every wait ticks. +(also forces it to run first in the tick (unless SS_BACKGROUND)) +(We don't want to be choked out by other subsystems queuing into us) +(implies all runlevels because of how it works) +This is designed for basically anything that works as a mini-mc (like SStimer)

+ + + diff --git a/code/__DEFINES/__game.html b/code/__DEFINES/__game.html new file mode 100644 index 000000000000..157f4f7cd72b --- /dev/null +++ b/code/__DEFINES/__game.html @@ -0,0 +1,212 @@ + + + + + + + code/__DEFINES/__game.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/__game.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NO_FLAGSTo make it even more clear that something is a bitfield.
PLAYERCOUNT_LOWPOP_MAP_LIMITNumber of players before we switch to lowpop maps only (LV, BR, Prison).
PREROUND_TIMETime before the round starts.
CANDLE_LUMFor how bright candles are.
SPLIT_ADMIN_TABSSplits admin tabs in Statpanel
DOCK_ATTEMPT_TIMEOUThow long in ticks we wait before assuming the docking controller is broken or blown up.
ROUNDSTART_LOGOUT_REPORT_TIMEAmount of time (in deciseconds) after the rounds starts, that the player disconnect report is issued.
TRANSITIONEDGEDistance from edge to move to another z-level.
GET_RANDOM_FREQFrequency stuff only works with 45kbps oggs.
CEILING_NO_PROTECTIONDo not block any ordnance
CEILING_PROTECTION_TIER_1Blocks mortar placement, lasing, and medevac
CEILING_PROTECTION_TIER_2Blocks CAS signals, supply drops, fultoning, and mortar fire
CEILING_PROTECTION_TIER_3Blocks CAS fire
CEILING_PROTECTION_TIER_4Blocks OB fire
CEILING_IS_PROTECTEDOnly use the CEILING_PROTECTION_TIER_X defines for protection_level
BARRICADE_BSTATE_UNSECUREDIntermediate state before cade is movable (no apparent effect on health).
BARRICADE_BSTATE_MOVABLEReady to be deconstructed and can be moved.
EXTINGUISHER_WATER_USE_AMTAmount of water consumed by extinguisher per use.//why is this a define let alone a GLOBAL define oh my good lord
CHAT_CPM_ALLOWEDMax characters per minute allowed to speak
CHAT_CPM_MINIMUMMinimum character length counted for a single message
CHAT_CPM_PERIODBuffer period over which speaking budget is considered
CHAT_TYPE_ALLThis is so if we have newer flags, we still have ALL working. This will work for 16 first flags.
CHAT_TYPE_ALL_COMBATUsed for pre-setting tgchat message type as combat messages
TOGGLE_WINDOW_SKINWindow skin types
QUADTREE_CAPACITYMax amount of player coordinates in a quadtree cell
QUADTREE_BOUNDARY_MINIMUM_WIDTHMinimum X width up to which we keep dividing the tree (meaning cells can be half that)
QUADTREE_BOUNDARY_MINIMUM_HEIGHTMinimum Y height up to which we keep dividing the tree (meaning cells can be half that)
QTREE_SCAN_MOBSReturn mob list instead of client list.
/proc/get_ceiling_protection_levelConvert a turf protection level to a ceiling protection level
BEAM_INFINITE_DURATIONFor beams with an infinite duration (deletion is handled separately)
AMOUNT_PER_TIMEUsed for calculations with delta_time when figuring how much "amount" to give per "time" +amount - The number to get per time +time - The time period in which to gain this amount +To be used with delta_time. Multiplied by 10 to convert from deciseconds to seconds
PERF_TOGGLE_LAZYSSSet conservative MC timings on game start
PERF_TOGGLE_NOBLOODPRINTSDisable bloody footprints
PERF_TOGGLE_ATTACKLOGSDisable file-based attacklogs
PERF_TOGGLE_SHUTTLESDisables loading/ticking shuttle controllers
PERF_TOGGLE_TECHWEBSDisables loading Techwebs and additional Z-Levels

Define Details

+

AMOUNT_PER_TIME + + + +

+

Used for calculations with delta_time when figuring how much "amount" to give per "time" +amount - The number to get per time +time - The time period in which to gain this amount +To be used with delta_time. Multiplied by 10 to convert from deciseconds to seconds

BARRICADE_BSTATE_MOVABLE + + +

+

Ready to be deconstructed and can be moved.

BARRICADE_BSTATE_UNSECURED + + +

+

Intermediate state before cade is movable (no apparent effect on health).

BEAM_INFINITE_DURATION + + +

+

For beams with an infinite duration (deletion is handled separately)

CANDLE_LUM + + +

+

For how bright candles are.

CEILING_IS_PROTECTED + + + +

+

Only use the CEILING_PROTECTION_TIER_X defines for protection_level

CEILING_NO_PROTECTION + + +

+

Do not block any ordnance

CEILING_PROTECTION_TIER_1 + + +

+

Blocks mortar placement, lasing, and medevac

CEILING_PROTECTION_TIER_2 + + +

+

Blocks CAS signals, supply drops, fultoning, and mortar fire

CEILING_PROTECTION_TIER_3 + + +

+

Blocks CAS fire

CEILING_PROTECTION_TIER_4 + + +

+

Blocks OB fire

CHAT_CPM_ALLOWED + + +

+

Max characters per minute allowed to speak

CHAT_CPM_MINIMUM + + +

+

Minimum character length counted for a single message

CHAT_CPM_PERIOD + + +

+

Buffer period over which speaking budget is considered

CHAT_TYPE_ALL + + +

+

This is so if we have newer flags, we still have ALL working. This will work for 16 first flags.

CHAT_TYPE_ALL_COMBAT + + +

+

Used for pre-setting tgchat message type as combat messages

DOCK_ATTEMPT_TIMEOUT + + +

+

how long in ticks we wait before assuming the docking controller is broken or blown up.

EXTINGUISHER_WATER_USE_AMT + + +

+

Amount of water consumed by extinguisher per use.//why is this a define let alone a GLOBAL define oh my good lord

GET_RANDOM_FREQ + + +

+

Frequency stuff only works with 45kbps oggs.

NO_FLAGS + + +

+

To make it even more clear that something is a bitfield.

PERF_TOGGLE_ATTACKLOGS + + +

+

Disable file-based attacklogs

PERF_TOGGLE_LAZYSS + + +

+

Set conservative MC timings on game start

PERF_TOGGLE_NOBLOODPRINTS + + +

+

Disable bloody footprints

PERF_TOGGLE_SHUTTLES + + +

+

Disables loading/ticking shuttle controllers

PERF_TOGGLE_TECHWEBS + + +

+

Disables loading Techwebs and additional Z-Levels

PLAYERCOUNT_LOWPOP_MAP_LIMIT + + +

+

Number of players before we switch to lowpop maps only (LV, BR, Prison).

PREROUND_TIME + + +

+

Time before the round starts.

QTREE_SCAN_MOBS + + +

+

Return mob list instead of client list.

QUADTREE_BOUNDARY_MINIMUM_HEIGHT + + +

+

Minimum Y height up to which we keep dividing the tree (meaning cells can be half that)

QUADTREE_BOUNDARY_MINIMUM_WIDTH + + +

+

Minimum X width up to which we keep dividing the tree (meaning cells can be half that)

QUADTREE_CAPACITY + + +

+

Max amount of player coordinates in a quadtree cell

ROUNDSTART_LOGOUT_REPORT_TIME + + +

+

Amount of time (in deciseconds) after the rounds starts, that the player disconnect report is issued.

SPLIT_ADMIN_TABS + + +

+

Splits admin tabs in Statpanel

TOGGLE_WINDOW_SKIN + + +

+

Window skin types

TRANSITIONEDGE + + +

+

Distance from edge to move to another z-level.

+ + + diff --git a/code/__DEFINES/__rust_g.html b/code/__DEFINES/__rust_g.html new file mode 100644 index 000000000000..a91436226538 --- /dev/null +++ b/code/__DEFINES/__rust_g.html @@ -0,0 +1,43 @@ + + + + + + + code/__DEFINES/__rust_g.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/__rust_g.dm + +

+ + +
rustg_cnoise_generateThis proc generates a cellular automata noise grid which can be used in procedural generation methods.

Define Details

+

rustg_cnoise_generate + + + +

+

This proc generates a cellular automata noise grid which can be used in procedural generation methods.

+

Returns a single string that goes row by row, with values of 1 representing an alive cell, and a value of 0 representing a dead cell.

+

Arguments:

+
+ + + diff --git a/code/__DEFINES/_click.html b/code/__DEFINES/_click.html new file mode 100644 index 000000000000..d8f01203bfc0 --- /dev/null +++ b/code/__DEFINES/_click.html @@ -0,0 +1,34 @@ + + + + + + + code/__DEFINES/_click.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/_click.dm + +

+ + +
BUTTONMouse button that was just clicked/released +if(modifiersBUTTON == LEFT_CLICK)

Define Details

+

BUTTON + + +

+

Mouse button that was just clicked/released +if(modifiersBUTTON == LEFT_CLICK)

+ + + diff --git a/code/__DEFINES/_globals.html b/code/__DEFINES/_globals.html new file mode 100644 index 000000000000..f91adfdd472b --- /dev/null +++ b/code/__DEFINES/_globals.html @@ -0,0 +1,153 @@ + + + + + + + code/__DEFINES/_globals.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/_globals.dm + +

+ + + + + + + + + + + + + + + + + + + + + + +
GLOBAL_MANAGEDCreates a global initializer with a given InitValue expression, do not use
GLOBAL_UNMANAGEDCreates an empty global initializer, do not use
GLOBAL_SUBTYPE_INDEXEDCreates name keyed subtype instance list
GLOBAL_SUBTYPE_PATH_INDEXEDLists subtypes of a given type, indexed by initial value of a variable
GLOBAL_PROTECTPrevents a given global from being VV'd
GLOBAL_REAL_VARStandard BYOND global, do not use
GLOBAL_REALStandard typed BYOND global, do not use
GLOBAL_RAWDefines a global var on the controller, do not use
GLOBAL_VAR_INITCreate an untyped global with an initializer expression
GLOBAL_VAR_CONSTCreate a global const var, do not use
GLOBAL_LIST_INITCreate a list global with an initializer expression
GLOBAL_LIST_EMPTYCreate a list global that is initialized as an empty list
GLOBAL_LIST_INIT_TYPEDCreate a typed list global with an initializer expression
GLOBAL_LIST_EMPTY_TYPEDCreate a typed list global that is initialized as an empty list
GLOBAL_DATUM_INITCreate a typed global with an initializer expression
GLOBAL_VARCreate an untyped null global
GLOBAL_LISTCreate a null global list
GLOBAL_DATUMCreate a typed null global
GLOBAL_LIST_FILE_LOADLoad a file in as a global list
GLOBAL_REFERENCE_LIST_INDEXEDCreates datum reference list
GLOBAL_SUBTYPE_PATHS_LIST_INDEXEDCreates list of subtype paths indexed by a variable

Define Details

+

GLOBAL_DATUM + + + +

+

Create a typed null global

GLOBAL_DATUM_INIT + + + +

+

Create a typed global with an initializer expression

GLOBAL_LIST + + + +

+

Create a null global list

GLOBAL_LIST_EMPTY + + + +

+

Create a list global that is initialized as an empty list

GLOBAL_LIST_EMPTY_TYPED + + + +

+

Create a typed list global that is initialized as an empty list

GLOBAL_LIST_FILE_LOAD + + + +

+

Load a file in as a global list

GLOBAL_LIST_INIT + + + +

+

Create a list global with an initializer expression

GLOBAL_LIST_INIT_TYPED + + + +

+

Create a typed list global with an initializer expression

GLOBAL_MANAGED + + + +

+

Creates a global initializer with a given InitValue expression, do not use

GLOBAL_PROTECT + + + +

+

Prevents a given global from being VV'd

GLOBAL_RAW + + + +

+

Defines a global var on the controller, do not use

GLOBAL_REAL + + + +

+

Standard typed BYOND global, do not use

GLOBAL_REAL_VAR + + + +

+

Standard BYOND global, do not use

GLOBAL_REFERENCE_LIST_INDEXED + + + +

+

Creates datum reference list

GLOBAL_SUBTYPE_INDEXED + + + +

+

Creates name keyed subtype instance list

GLOBAL_SUBTYPE_PATHS_LIST_INDEXED + + + +

+

Creates list of subtype paths indexed by a variable

GLOBAL_SUBTYPE_PATH_INDEXED + + + +

+

Lists subtypes of a given type, indexed by initial value of a variable

GLOBAL_UNMANAGED + + + +

+

Creates an empty global initializer, do not use

GLOBAL_VAR + + + +

+

Create an untyped null global

GLOBAL_VAR_CONST + + + +

+

Create a global const var, do not use

GLOBAL_VAR_INIT + + + +

+

Create an untyped global with an initializer expression

+ + + diff --git a/code/__DEFINES/_macros.html b/code/__DEFINES/_macros.html new file mode 100644 index 000000000000..70792a535b61 --- /dev/null +++ b/code/__DEFINES/_macros.html @@ -0,0 +1,45 @@ + + + + + + + code/__DEFINES/_macros.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/_macros.dm + +

+ + + + +
calculateticksConverts your ticks to proper tenths.
tcheckShorthand of checking and then sleeping a process based on world CPU.
text_refTakes a datum as input, returns its ref string

Define Details

+

calculateticks + + + +

+

Converts your ticks to proper tenths.

tcheck + + + +

+

Shorthand of checking and then sleeping a process based on world CPU.

text_ref + + + +

+

Takes a datum as input, returns its ref string

+ + + diff --git a/code/__DEFINES/_math.html b/code/__DEFINES/_math.html new file mode 100644 index 000000000000..f8f4ec9ff4ba --- /dev/null +++ b/code/__DEFINES/_math.html @@ -0,0 +1,47 @@ + + + + + + + code/__DEFINES/_math.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/_math.dm + +

+ + + + +
get_turfGet the turf that A resides in, regardless of any containers.
SIGNGets the sign of x, returns -1 if negative, 0 if 0, 1 if positive
LERPPerforms a linear interpolation between a and b. Note that amount=0 returns a, amount=1 returns b, and amount=0.5 returns the mean of a and b.

Define Details

+

LERP + + + +

+

Performs a linear interpolation between a and b. Note that amount=0 returns a, amount=1 returns b, and amount=0.5 returns the mean of a and b.

SIGN + + + +

+

Gets the sign of x, returns -1 if negative, 0 if 0, 1 if positive

get_turf + + + +

+

Get the turf that A resides in, regardless of any containers.

+

Use in favor of A.loc or src.loc so that things work correctly when +stored inside an inventory, locker, or other container.

+ + + diff --git a/code/__DEFINES/_tick.html b/code/__DEFINES/_tick.html new file mode 100644 index 000000000000..eb6f2c5a8e48 --- /dev/null +++ b/code/__DEFINES/_tick.html @@ -0,0 +1,77 @@ + + + + + + + code/__DEFINES/_tick.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/_tick.dm + +

+ + + + + + + + + + + +
TICK_BYOND_RESERVETick limit while running normally
TICK_LIMIT_TO_RUNTick limit used to resume things in stoplag
TICK_LIMIT_MCTick limit for MC while running
TICK_LIMIT_MC_INIT_DEFAULTTick limit while initializing
TICK_USAGEfor general usage of tick_usage
TICK_USAGE_REALto be used where the result isn't checked
TICK_CHECKReturns true if tick_usage is above the limit
CHECK_TICKruns stoplag if tick_usage is above the limit
TICK_CHECK_HIGH_PRIORITYReturns true if tick usage is above 95, for high priority usage
CHECK_TICK_HIGH_PRIORITYruns stoplag if tick_usage is above 95, for high priority usage

Define Details

+

CHECK_TICK + + +

+

runs stoplag if tick_usage is above the limit

CHECK_TICK_HIGH_PRIORITY + + +

+

runs stoplag if tick_usage is above 95, for high priority usage

TICK_BYOND_RESERVE + + +

+

Tick limit while running normally

TICK_CHECK + + +

+

Returns true if tick_usage is above the limit

TICK_CHECK_HIGH_PRIORITY + + +

+

Returns true if tick usage is above 95, for high priority usage

TICK_LIMIT_MC + + +

+

Tick limit for MC while running

TICK_LIMIT_MC_INIT_DEFAULT + + +

+

Tick limit while initializing

TICK_LIMIT_TO_RUN + + +

+

Tick limit used to resume things in stoplag

TICK_USAGE + + +

+

for general usage of tick_usage

TICK_USAGE_REAL + + +

+

to be used where the result isn't checked

+ + + diff --git a/code/__DEFINES/access.html b/code/__DEFINES/access.html new file mode 100644 index 000000000000..0b44508b1c4f --- /dev/null +++ b/code/__DEFINES/access.html @@ -0,0 +1,212 @@ + + + + + + + code/__DEFINES/access.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/access.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ACCESS_MARINE_AI_TEMPUsed in temporary passes
ACCESS_MARINE_AIUsed as dedicated access to ARES Core.
ACCESS_ARES_DEBUGUsed to access Maintenance Protocols on ARES Interface.
ACCESS_ILLEGAL_PIRATEThe generic "I'm a bad guy" access
ACCESS_WY_GENERALFound on just about all corporate ID cards
ACCESS_WY_COLONIALWY employee override for most colonial areas
ACCESS_WY_EXECWY access given to field executives, like a marine liaison.
ACCESS_WY_SECRETSSecret research or other projects with highly restricted access
ACCESS_WY_SENIOR_LEADSenior leadership, the highest ranks
ACCESS_UPP_GENERALFound on just about all Union ID cards
ACCESS_UPP_SENIOR_LEADSenior leadership, the highest ranks
ACCESS_CLF_GENERALFound on just about all CLF ID cards
ACCESS_CLF_SENIOR_LEADSenior leadership, the highest ranks
ACCESS_TWE_GENERALFound on just about all Imperial ID cards
ACCESS_TWE_SENIOR_LEADSenior leadership, the highest ranks
ACCESS_YAUTJA_SECURERequires a visible ID chip to open
ACCESS_YAUTJA_ELDERElders+ only
ACCESS_YAUTJA_ANCIENTAncients only
ACCESS_TUTORIAL_LOCKEDAnything in a tutorial sequence that shouldn't be accessed
ACCESS_COME_BACK_TO_METemporary, just so I can flag places I need to change
ACCESS_LIST_GLOBALWell... everything (non Yautja).
ACCESS_LIST_MARINE_MAINMost of the USCM Access Levels used on the USS Almayer, excluding highly restricted ones.
ACCESS_LIST_MARINE_ALLAll USCM Access levels used on the USS Almayer
ACCESS_LIST_MARINE_LIAISONUsed by the Wey-Yu - USCM Liaison
ACCESS_LIST_EMERGENCY_RESPONSEThe accesses granted to emergency responders.
ACCESS_LIST_UAAccess used by United Americas responders.
ACCESS_LIST_WY_BASEGeneric/basic access to Wey-Yu stuff
ACCESS_LIST_WY_GOONWey-Yu Corp Security access.
ACCESS_LIST_WY_PMCWey-Yu PMCs access.
ACCESS_LIST_WY_SENIORAccess levels for WY senior leadership
ACCESS_LIST_WY_ALLAll access levels associated with Weyland Yutani
ACCESS_LIST_COLONIAL_ALLAll the access levels in the civillian category, excluding Press.
ACCESS_LIST_CIVIL_LIAISONUsed by the Wey-Yu - Civil Authority Liaison
ACCESS_LIST_DELIVERYThe access used by delivery ERT (Pizza/Souto)
ACCESS_LIST_UPP_ALLAll access levels associated with UPP
ACCESS_LIST_CLF_BASEGeneric/basic access to CLF stuff
ACCESS_LIST_CLF_ALLAll access levels associated with CLF

Define Details

+

ACCESS_ARES_DEBUG + + +

+

Used to access Maintenance Protocols on ARES Interface.

ACCESS_CLF_GENERAL + + +

+

Found on just about all CLF ID cards

ACCESS_CLF_SENIOR_LEAD + + +

+

Senior leadership, the highest ranks

ACCESS_COME_BACK_TO_ME + + +

+

Temporary, just so I can flag places I need to change

ACCESS_ILLEGAL_PIRATE + + +

+

The generic "I'm a bad guy" access

ACCESS_LIST_CIVIL_LIAISON + + +

+

Used by the Wey-Yu - Civil Authority Liaison

ACCESS_LIST_CLF_ALL + + +

+

All access levels associated with CLF

ACCESS_LIST_CLF_BASE + + +

+

Generic/basic access to CLF stuff

ACCESS_LIST_COLONIAL_ALL + + +

+

All the access levels in the civillian category, excluding Press.

ACCESS_LIST_DELIVERY + + +

+

The access used by delivery ERT (Pizza/Souto)

ACCESS_LIST_EMERGENCY_RESPONSE + + +

+

The accesses granted to emergency responders.

ACCESS_LIST_GLOBAL + + +

+

Well... everything (non Yautja).

ACCESS_LIST_MARINE_ALL + + +

+

All USCM Access levels used on the USS Almayer

ACCESS_LIST_MARINE_LIAISON + + +

+

Used by the Wey-Yu - USCM Liaison

ACCESS_LIST_MARINE_MAIN + + +

+

Most of the USCM Access Levels used on the USS Almayer, excluding highly restricted ones.

ACCESS_LIST_UA + + +

+

Access used by United Americas responders.

ACCESS_LIST_UPP_ALL + + +

+

All access levels associated with UPP

ACCESS_LIST_WY_ALL + + +

+

All access levels associated with Weyland Yutani

ACCESS_LIST_WY_BASE + + +

+

Generic/basic access to Wey-Yu stuff

ACCESS_LIST_WY_GOON + + +

+

Wey-Yu Corp Security access.

ACCESS_LIST_WY_PMC + + +

+

Wey-Yu PMCs access.

ACCESS_LIST_WY_SENIOR + + +

+

Access levels for WY senior leadership

ACCESS_MARINE_AI + + +

+

Used as dedicated access to ARES Core.

ACCESS_MARINE_AI_TEMP + + +

+

Used in temporary passes

ACCESS_TUTORIAL_LOCKED + + +

+

Anything in a tutorial sequence that shouldn't be accessed

ACCESS_TWE_GENERAL + + +

+

Found on just about all Imperial ID cards

ACCESS_TWE_SENIOR_LEAD + + +

+

Senior leadership, the highest ranks

ACCESS_UPP_GENERAL + + +

+

Found on just about all Union ID cards

ACCESS_UPP_SENIOR_LEAD + + +

+

Senior leadership, the highest ranks

ACCESS_WY_COLONIAL + + +

+

WY employee override for most colonial areas

ACCESS_WY_EXEC + + +

+

WY access given to field executives, like a marine liaison.

ACCESS_WY_GENERAL + + +

+

Found on just about all corporate ID cards

ACCESS_WY_SECRETS + + +

+

Secret research or other projects with highly restricted access

ACCESS_WY_SENIOR_LEAD + + +

+

Senior leadership, the highest ranks

ACCESS_YAUTJA_ANCIENT + + +

+

Ancients only

ACCESS_YAUTJA_ELDER + + +

+

Elders+ only

ACCESS_YAUTJA_SECURE + + +

+

Requires a visible ID chip to open

+ + + diff --git a/code/__DEFINES/admin.html b/code/__DEFINES/admin.html new file mode 100644 index 000000000000..07c7feed0054 --- /dev/null +++ b/code/__DEFINES/admin.html @@ -0,0 +1,97 @@ + + + + + + + code/__DEFINES/admin.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/admin.dm + +

+ + + + + + + + + + + + + + + +
MAX_KEYPRESS_COMMANDLENGTHMax length of a keypress command before it's considered to be a forged packet/bogus command
MAX_COMMANDS_PER_KEYMaximum keys that can be bound to one button
MAX_KEYS_PER_KEYBINDMaximum keys per keybind
MAX_KEYPRESS_AUTOKICKMax amount of keypress messages per second over two seconds before client is autokicked
HELD_KEY_BUFFER_LENGTHLength of held key buffer
NOTE_ADMINThis note is used by staff for disciplinary record keeping.
NOTE_MERITThis note is used by staff for positive record keeping.
NOTE_WHITELISTThese notes are automatically applied by the Whitelist Panel.
ASAY_LINK_NEW_MESSAGE_INDEXfor /proc/check_asay_links, if there are any actionable refs in the asay message, this index in the return list contains the new message text to be printed
ASAY_LINK_PINGED_ADMINS_INDEXfor /proc/check_asay_links, if there are any admin pings in the asay message, this index in the return list contains a list of admins to ping
ANTIGRIEF_DISABLEDDisables antigrief entirely: Anyone can activate explosives at any time on the Almayer.
ANTIGRIEF_NEW_PLAYERSEnables antigrief on the Almayer, but only for new players: Those who've had less than 10 total human hours.
ANTIGRIEF_ENABLEDEnables antigrief entirely: Nobody can activate explosives on the Almayer, unless the ship crashed.
PROC_BLOCKEDProc has been blocked by IsAdminAdvancedProcCall()

Define Details

+

ANTIGRIEF_DISABLED + + +

+

Disables antigrief entirely: Anyone can activate explosives at any time on the Almayer.

ANTIGRIEF_ENABLED + + +

+

Enables antigrief entirely: Nobody can activate explosives on the Almayer, unless the ship crashed.

ANTIGRIEF_NEW_PLAYERS + + +

+

Enables antigrief on the Almayer, but only for new players: Those who've had less than 10 total human hours.

+

for /proc/check_asay_links, if there are any actionable refs in the asay message, this index in the return list contains the new message text to be printed

+

for /proc/check_asay_links, if there are any admin pings in the asay message, this index in the return list contains a list of admins to ping

HELD_KEY_BUFFER_LENGTH + + +

+

Length of held key buffer

MAX_COMMANDS_PER_KEY + + +

+

Maximum keys that can be bound to one button

MAX_KEYPRESS_AUTOKICK + + +

+

Max amount of keypress messages per second over two seconds before client is autokicked

MAX_KEYPRESS_COMMANDLENGTH + + +

+

Max length of a keypress command before it's considered to be a forged packet/bogus command

MAX_KEYS_PER_KEYBIND + + +

+

Maximum keys per keybind

NOTE_ADMIN + + +

+

This note is used by staff for disciplinary record keeping.

NOTE_MERIT + + +

+

This note is used by staff for positive record keeping.

NOTE_WHITELIST + + +

+

These notes are automatically applied by the Whitelist Panel.

PROC_BLOCKED + + +

+

Proc has been blocked by IsAdminAdvancedProcCall()

+ + + diff --git a/code/__DEFINES/assert.html b/code/__DEFINES/assert.html new file mode 100644 index 000000000000..98433c12e3c0 --- /dev/null +++ b/code/__DEFINES/assert.html @@ -0,0 +1,33 @@ + + + + + + + code/__DEFINES/assert.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/assert.dm + +

+ + +
ASSERTOverride BYOND's native ASSERT to optionally specify a message

Define Details

+

ASSERT + + + +

+

Override BYOND's native ASSERT to optionally specify a message

+ + + diff --git a/code/__DEFINES/atmospherics.html b/code/__DEFINES/atmospherics.html new file mode 100644 index 000000000000..e76c83df6d69 --- /dev/null +++ b/code/__DEFINES/atmospherics.html @@ -0,0 +1,77 @@ + + + + + + + code/__DEFINES/atmospherics.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/atmospherics.dm + +

+ + + + + + + + + + + +
TEMPERATURE_DAMAGE_COEFFICIENTThis is used in handle_temperature_damage() for humans, and in reagents that affect body temperature. Temperature damage is multiplied by this amount.
BODYTEMP_AUTORECOVERY_DIVISORThis is the divisor which handles how much of the temperature difference between the current body temperature and 310.15K (optimal temperature) humans auto-regenerate each tick. The higher the number, the slower the recovery. This is applied each tick, so long as the mob is alive.
BODYTEMP_AUTORECOVERY_MINIMUMMinimum amount of kelvin moved toward 310.15K per tick. So long as abs(310.15 - bodytemp) is more than 50.
BODYTEMP_COLD_DIVISORSimilar to the BODYTEMP_AUTORECOVERY_DIVISOR, but this is the divisor which is applied at the stage that follows autorecovery. This is the divisor which comes into play when the human's loc temperature is lower than their body temperature. Make it lower to lose bodytemp faster.
BODYTEMP_HEAT_DIVISORSimilar to the BODYTEMP_AUTORECOVERY_DIVISOR, but this is the divisor which is applied at the stage that follows autorecovery. This is the divisor which comes into play when the human's loc temperature is higher than their body temperature. Make it lower to gain bodytemp faster.
BODYTEMP_COOLING_MAXThe maximum number of degrees that your body can cool in 1 tick, when in a cold area.
BODYTEMP_HEATING_MAXThe maximum number of degrees that your body can heat up in 1 tick, when in a hot area.
BODYTEMP_HEAT_DAMAGE_LIMITThe limit the human body can take before it starts taking damage from heat.
BODYTEMP_COLD_DAMAGE_LIMITThe limit the human body can take before it starts taking damage from coldness.
VENT_GAS_SMOKEUsed in /obj/structure/pipes/vents/proc/create_gas

Define Details

+

BODYTEMP_AUTORECOVERY_DIVISOR + + +

+

This is the divisor which handles how much of the temperature difference between the current body temperature and 310.15K (optimal temperature) humans auto-regenerate each tick. The higher the number, the slower the recovery. This is applied each tick, so long as the mob is alive.

BODYTEMP_AUTORECOVERY_MINIMUM + + +

+

Minimum amount of kelvin moved toward 310.15K per tick. So long as abs(310.15 - bodytemp) is more than 50.

BODYTEMP_COLD_DAMAGE_LIMIT + + +

+

The limit the human body can take before it starts taking damage from coldness.

BODYTEMP_COLD_DIVISOR + + +

+

Similar to the BODYTEMP_AUTORECOVERY_DIVISOR, but this is the divisor which is applied at the stage that follows autorecovery. This is the divisor which comes into play when the human's loc temperature is lower than their body temperature. Make it lower to lose bodytemp faster.

BODYTEMP_COOLING_MAX + + +

+

The maximum number of degrees that your body can cool in 1 tick, when in a cold area.

BODYTEMP_HEATING_MAX + + +

+

The maximum number of degrees that your body can heat up in 1 tick, when in a hot area.

BODYTEMP_HEAT_DAMAGE_LIMIT + + +

+

The limit the human body can take before it starts taking damage from heat.

BODYTEMP_HEAT_DIVISOR + + +

+

Similar to the BODYTEMP_AUTORECOVERY_DIVISOR, but this is the divisor which is applied at the stage that follows autorecovery. This is the divisor which comes into play when the human's loc temperature is higher than their body temperature. Make it lower to gain bodytemp faster.

TEMPERATURE_DAMAGE_COEFFICIENT + + +

+

This is used in handle_temperature_damage() for humans, and in reagents that affect body temperature. Temperature damage is multiplied by this amount.

VENT_GAS_SMOKE + + +

+

Used in /obj/structure/pipes/vents/proc/create_gas

+ + + diff --git a/code/__DEFINES/autofire.html b/code/__DEFINES/autofire.html new file mode 100644 index 000000000000..46eff1bd8579 --- /dev/null +++ b/code/__DEFINES/autofire.html @@ -0,0 +1,33 @@ + + + + + + + code/__DEFINES/autofire.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/autofire.dm + +

+ + +
AUTOFIRE_BUCKET_POSHelper for getting the correct bucket

Define Details

+

AUTOFIRE_BUCKET_POS + + + +

+

Helper for getting the correct bucket

+ + + diff --git a/code/__DEFINES/autolathe.html b/code/__DEFINES/autolathe.html new file mode 100644 index 000000000000..9c3586df50b0 --- /dev/null +++ b/code/__DEFINES/autolathe.html @@ -0,0 +1,47 @@ + + + + + + + code/__DEFINES/autolathe.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/autolathe.dm + +

+ + + + + +
AUTOLATHE_CATEGORY_ALLCATEGORY DEFINES
AUTOLATHE_STANDARD_CATEGORIES_LISTstandard lathe
AUTOLATHE_ARMYLATHE_CATEGORIES_LISTarmylathe
AUTOLATHE_MEDILATHE_CATEGORIES_LISTmedilathe

Define Details

+

AUTOLATHE_ARMYLATHE_CATEGORIES_LIST + + +

+

armylathe

AUTOLATHE_CATEGORY_ALL + + +

+

CATEGORY DEFINES

AUTOLATHE_MEDILATHE_CATEGORIES_LIST + + +

+

medilathe

AUTOLATHE_STANDARD_CATEGORIES_LIST + + +

+

standard lathe

+ + + diff --git a/code/__DEFINES/bullet_traits.html b/code/__DEFINES/bullet_traits.html new file mode 100644 index 000000000000..6e9bc288c3ab --- /dev/null +++ b/code/__DEFINES/bullet_traits.html @@ -0,0 +1,49 @@ + + + + + + + code/__DEFINES/bullet_traits.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/bullet_traits.dm + +

+ + + + +
BULLET_TRAIT_ENTRYAn entry to a list for giving projectiles bullet traits +Must be placed inside of a list
BULLET_TRAIT_ENTRY_IDAn entry to a list for giving projectiles bullet traits with a unique ID +Must be placed inside of a list
GIVE_BULLET_TRAITHelper define for directly changing a projectile's bullet traits

Define Details

+

BULLET_TRAIT_ENTRY + + + +

+

An entry to a list for giving projectiles bullet traits +Must be placed inside of a list

BULLET_TRAIT_ENTRY_ID + + + +

+

An entry to a list for giving projectiles bullet traits with a unique ID +Must be placed inside of a list

GIVE_BULLET_TRAIT + + + +

+

Helper define for directly changing a projectile's bullet traits

+ + + diff --git a/code/__DEFINES/chat.html b/code/__DEFINES/chat.html new file mode 100644 index 000000000000..60a579cccf18 --- /dev/null +++ b/code/__DEFINES/chat.html @@ -0,0 +1,35 @@ + + + + + + + code/__DEFINES/chat.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/chat.dm + +

+ + + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

examine_blockAdds a generic box around whatever message you're sending in chat. Really makes things stand out.

Define Details

+

examine_block + + + +

+

Adds a generic box around whatever message you're sending in chat. Really makes things stand out.

+ + + diff --git a/code/__DEFINES/chemistry.html b/code/__DEFINES/chemistry.html new file mode 100644 index 000000000000..33aef15e2044 --- /dev/null +++ b/code/__DEFINES/chemistry.html @@ -0,0 +1,162 @@ + + + + + + + code/__DEFINES/chemistry.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/chemistry.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
BOTTLE_ICON_CHOICESAmount of bottle icon variations in total
PILL_ICON_CHOICESAmount of random icon variations for pills in total
CHEM_CLASS_NONEDefault. Chemicals not used in the chem generator
CHEM_CLASS_BASICChemicals that can be dispensed directly from the dispenser (iron, oxygen)
CHEM_CLASS_COMMONChemicals which recipe is commonly known and made (bicaridine, alkysine, salt)
CHEM_CLASS_UNCOMMONChemicals which recipe is uncommonly known and made (spacedrugs, foaming agent)
CHEM_CLASS_RAREChemicals without a recipe but can be obtained on the Almayer, or requires rare components
CHEM_CLASS_SPECIALChemicals without a recipe and can't be obtained on the Almayer, or requires special components
CHEM_CLASS_ULTRARandomly generated chemicals
REAGENT_TYPE_MEDICALUsed to restrict recipes in the generator from employing all reagents of this type
REAGENT_SCANNABLEWhether the reagent shows up on health analysers.
REAGENT_NOT_INGESTIBLEWhether the reagent canNOT be ingested and must be delivered through injection. Used by electrogenetic property.
REAGENT_CANNOT_OVERDOSEWhether the reagent canNOT trigger its overdose effects. Used by regulating property. For ordinary reagents with no overdose effect, instead keep var/overdose at 0.
REAGENT_NO_GENERATIONReagent doesn't randomly generate in chemicals
PROPERTY_DISABLEDthe property is disabled and can't spawn anywhere, however is still functional
PROPERTY_COMMONcan be generated anywhere and available in round start chems
PROPERTY_UNCOMMONcan be generated anywhere, but not available in round start chems
PROPERTY_RAREcan only be generated at specific gen_tiers, but can also be made through specific property combinations
PROPERTY_LEGENDARYcan strictly only be generated at specific gen_tiers
PROPERTY_ADMINcan only be spawned through admin powers
RESEARCH_LEVEL_INCREASE_MULTIPLIERScales cost of increasing clearance using credits
TECHTREE_LEVEL_MULTIPLIERScales tech level to max amplification level
CHEM_FIRE_PENETRATION_THRESHOLDThe minimum amount of a fire penetrating chemical required to turn a fire into fire penetrating
CHEM_FIRE_STAR_THRESHOLDAn intensity greater than this will cause a fire to be star shape
CHEM_FIRE_PHOSPHORUS_PER_RADIUSAmount of phosphorus that equals 1 radius of white phosphorus smoke
EXPLOSION_PHORON_THRESHOLDThe minimum amount of phoron required to turn shrapnel into incendiary shrapnel
INCENDIARY_SHARDS_MAX_REDUCTIONThe maximum amount of shards is divided by this number if the shards are incendiary

Define Details

+

BOTTLE_ICON_CHOICES + + +

+

Amount of bottle icon variations in total

CHEM_CLASS_BASIC + + +

+

Chemicals that can be dispensed directly from the dispenser (iron, oxygen)

CHEM_CLASS_COMMON + + +

+

Chemicals which recipe is commonly known and made (bicaridine, alkysine, salt)

CHEM_CLASS_NONE + + +

+

Default. Chemicals not used in the chem generator

CHEM_CLASS_RARE + + +

+

Chemicals without a recipe but can be obtained on the Almayer, or requires rare components

CHEM_CLASS_SPECIAL + + +

+

Chemicals without a recipe and can't be obtained on the Almayer, or requires special components

CHEM_CLASS_ULTRA + + +

+

Randomly generated chemicals

CHEM_CLASS_UNCOMMON + + +

+

Chemicals which recipe is uncommonly known and made (spacedrugs, foaming agent)

CHEM_FIRE_PENETRATION_THRESHOLD + + +

+

The minimum amount of a fire penetrating chemical required to turn a fire into fire penetrating

CHEM_FIRE_PHOSPHORUS_PER_RADIUS + + +

+

Amount of phosphorus that equals 1 radius of white phosphorus smoke

CHEM_FIRE_STAR_THRESHOLD + + +

+

An intensity greater than this will cause a fire to be star shape

EXPLOSION_PHORON_THRESHOLD + + +

+

The minimum amount of phoron required to turn shrapnel into incendiary shrapnel

INCENDIARY_SHARDS_MAX_REDUCTION + + +

+

The maximum amount of shards is divided by this number if the shards are incendiary

PILL_ICON_CHOICES + + +

+

Amount of random icon variations for pills in total

PROPERTY_ADMIN + + +

+

can only be spawned through admin powers

PROPERTY_COMMON + + +

+

can be generated anywhere and available in round start chems

PROPERTY_DISABLED + + +

+

the property is disabled and can't spawn anywhere, however is still functional

PROPERTY_LEGENDARY + + +

+

can strictly only be generated at specific gen_tiers

PROPERTY_RARE + + +

+

can only be generated at specific gen_tiers, but can also be made through specific property combinations

PROPERTY_UNCOMMON + + +

+

can be generated anywhere, but not available in round start chems

REAGENT_CANNOT_OVERDOSE + + +

+

Whether the reagent canNOT trigger its overdose effects. Used by regulating property. For ordinary reagents with no overdose effect, instead keep var/overdose at 0.

REAGENT_NOT_INGESTIBLE + + +

+

Whether the reagent canNOT be ingested and must be delivered through injection. Used by electrogenetic property.

REAGENT_NO_GENERATION + + +

+

Reagent doesn't randomly generate in chemicals

REAGENT_SCANNABLE + + +

+

Whether the reagent shows up on health analysers.

REAGENT_TYPE_MEDICAL + + +

+

Used to restrict recipes in the generator from employing all reagents of this type

RESEARCH_LEVEL_INCREASE_MULTIPLIER + + +

+

Scales cost of increasing clearance using credits

TECHTREE_LEVEL_MULTIPLIER + + +

+

Scales tech level to max amplification level

+ + + diff --git a/code/__DEFINES/clans.html b/code/__DEFINES/clans.html new file mode 100644 index 000000000000..daff331e7c63 --- /dev/null +++ b/code/__DEFINES/clans.html @@ -0,0 +1,107 @@ + + + + + + + code/__DEFINES/clans.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/clans.dm + +

+ + + + + + + + + + + + + + + + + +
CLAN_PERMISSION_USER_MODIFYModify ranks within clan
CLAN_PERMISSION_ADMIN_VIEWView all clans
CLAN_PERMISSION_ADMIN_MODIFYModify all clans
CLAN_PERMISSION_ADMIN_MOVEMove people to and from clans
CLAN_PERMISSION_ADMIN_MANAGERManages the ancients
CLAN_RANK_UNBLOODEDUnused for the moment
CLAN_RANK_YOUNGClanless
CLAN_RANK_BLOODEDNew to the clan
CLAN_RANK_ADMINMust be given by someone with CLAN_PERMISSION_ADMIN_MODIFY
CLAN_LIMIT_NUMBERHard limit
CLAN_LIMIT_SIZEScales with clan size
CLAN_ACTION_CLAN_RENAMESet name of clan
CLAN_ACTION_CLAN_SETDESCSet description of clan
CLAN_ACTION_CLAN_SETHONORSet honor of clan
CLAN_ACTION_PLAYER_MOVECLANSet a player's clan
CLAN_ACTION_PLAYER_MODIFYRANKSet a player's rank. Resets when moved from clan to Young Blood

Define Details

+

CLAN_ACTION_CLAN_RENAME + + +

+

Set name of clan

CLAN_ACTION_CLAN_SETDESC + + +

+

Set description of clan

CLAN_ACTION_CLAN_SETHONOR + + +

+

Set honor of clan

CLAN_ACTION_PLAYER_MODIFYRANK + + +

+

Set a player's rank. Resets when moved from clan to Young Blood

CLAN_ACTION_PLAYER_MOVECLAN + + +

+

Set a player's clan

CLAN_LIMIT_NUMBER + + +

+

Hard limit

CLAN_LIMIT_SIZE + + +

+

Scales with clan size

CLAN_PERMISSION_ADMIN_MANAGER + + +

+

Manages the ancients

CLAN_PERMISSION_ADMIN_MODIFY + + +

+

Modify all clans

CLAN_PERMISSION_ADMIN_MOVE + + +

+

Move people to and from clans

CLAN_PERMISSION_ADMIN_VIEW + + +

+

View all clans

CLAN_PERMISSION_USER_MODIFY + + +

+

Modify ranks within clan

CLAN_RANK_ADMIN + + +

+

Must be given by someone with CLAN_PERMISSION_ADMIN_MODIFY

CLAN_RANK_BLOODED + + +

+

New to the clan

CLAN_RANK_UNBLOODED + + +

+

Unused for the moment

CLAN_RANK_YOUNG + + +

+

Clanless

+ + + diff --git a/code/__DEFINES/client_prefs.html b/code/__DEFINES/client_prefs.html new file mode 100644 index 000000000000..d871e9e5cfcd --- /dev/null +++ b/code/__DEFINES/client_prefs.html @@ -0,0 +1,59 @@ + + + + + + + code/__DEFINES/client_prefs.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/client_prefs.dm + +

+ + + + + + + +
XENO_ABILITY_CLICK_MIDDLEDetermines how abilities are activated, whether they're activated via middle click, shift click or right click.
XENO_ABILITY_CLICK_MAXUpdate this to whatever the largest value of the XENO_ABILITY_CLICK_* defines is.
TOGGLE_AMMO_DISPLAY_TYPElimit how often the ammo is displayed when using semi-automatic fire
DUAL_WIELD_FIREdual_wield_pref from /datum/preferences +Fire both weapons when dual wielding
DUAL_WIELD_SWAPSwap to the other weapon when dual wielding
DUAL_WIELD_NONEDo nothing when dual wielding

Define Details

+

DUAL_WIELD_FIRE + + +

+

dual_wield_pref from /datum/preferences +Fire both weapons when dual wielding

DUAL_WIELD_NONE + + +

+

Do nothing when dual wielding

DUAL_WIELD_SWAP + + +

+

Swap to the other weapon when dual wielding

TOGGLE_AMMO_DISPLAY_TYPE + + +

+

limit how often the ammo is displayed when using semi-automatic fire

XENO_ABILITY_CLICK_MAX + + +

+

Update this to whatever the largest value of the XENO_ABILITY_CLICK_* defines is.

XENO_ABILITY_CLICK_MIDDLE + + +

+

Determines how abilities are activated, whether they're activated via middle click, shift click or right click.

+ + + diff --git a/code/__DEFINES/colours.html b/code/__DEFINES/colours.html new file mode 100644 index 000000000000..b9d7c463cc51 --- /dev/null +++ b/code/__DEFINES/colours.html @@ -0,0 +1,250 @@ + + + + + + + code/__DEFINES/colours.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/colours.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ADMIN_COLOR_PRIORITYOnly used by rare effects like greentext coloring mobs and when admins varedit color
TEMPORARY_COLOR_PRIORITYe.g. purple effect of the revenant on a mob, black effect when mob electrocuted
WASHABLE_COLOR_PRIORITYColor splashed onto an atom (e.g. paint on turf)
FIXED_COLOR_PRIORITYColor inherent to the atom (e.g. blob color)
COLOR_PRIORITY_AMOUNThow many color priority levels there are.
COLOR_WHITEWhite rgb(255, 255, 255)
COLOR_BLACKBlack rgb(0, 0, 0)
COLOR_REDRed rgb(255, 0, 0)
COLOR_GREENGreen rgb(0, 255, 0)
COLOR_BLUEBlue rgb(0, 0, 255)
COLOR_CYANCyan rgb(0, 255, 255) B + G
COLOR_MAGENTAMagenta rgb(255, 0, 255) R+B
COLOR_YELLOWYellow rgb(255, 255, 0) R+G
COLOR_OLIVEOlive rgb(128, 128, 0)
COLOR_SILVERSilver rgb(192, 192, 192) shade of grey
COLOR_GRAYGray rgb(128, 128, 128)
COLOR_MAROONMaroon rgb(128, 0, 0) shade of red
COLOR_LIGHT_GREENlight green rgb( 0, 128, 0)
COLOR_PURPLEPurple rgb( 128, 0, 128)
LIGHT_COLOR_GREENSome defines to generalise Colors used in lighting.
LIGHT_COLOR_BLUECold, diluted blue. rgb(100, 150, 250)
LIGHT_COLOR_BLUEGREENLight blueish green. rgb(125, 225, 175)
LIGHT_COLOR_CYANDiluted cyan. rgb(125, 225, 225)
LIGHT_COLOR_LIGHT_CYANMore-saturated cyan. rgb(64, 206, 255)
LIGHT_COLOR_DARK_BLUESaturated blue. rgb(51, 117, 248)
LIGHT_COLOR_PINKDiluted, mid-warmth pink. rgb(225, 125, 225)
LIGHT_COLOR_YELLOWDimmed yellow, leaning kaki. rgb(225, 225, 125)
LIGHT_COLOR_BROWNClear brown, mostly dim. rgb(150, 100, 50)
LIGHT_COLOR_ORANGEMostly pure orange. rgb(250, 150, 50)
LIGHT_COLOR_PURPLELight Purple. rgb(149, 44, 244)
LIGHT_COLOR_LAVENDERLess-saturated light purple. rgb(155, 81, 255)
LIGHT_COLOR_HOLY_MAGICslightly desaturated bright yellow.
LIGHT_COLOR_BLOOD_MAGICdeep crimson
LIGHT_COLOR_REDWarm red color rgb(250, 66, 66)
LIGHT_COLOR_FIREWarm orange color, leaning strongly towards yellow. rgb(250, 160, 25)
LIGHT_COLOR_LAVAVery warm yellow, leaning slightly towards orange. rgb(196, 138, 24)
LIGHT_COLOR_FLAREBright, non-saturated red. Leaning slightly towards pink for visibility. rgb(250, 100, 75)
LIGHT_COLOR_SLIME_LAMPWeird color, between yellow and green, very slimy. rgb(175, 200, 75)
LIGHT_COLOR_TUNGSTENExtremely diluted yellow, close to skin color (for some reason). rgb(250, 225, 175)
LIGHT_COLOR_HALOGENBarely visible cyan-ish hue, as the doctor prescribed. rgb(240, 250, 250)
COLOR_MOSTLY_PURE_REDThe default color for admin say, used as a fallback when the preference is not enabled
AMBIENT_OCCLUSIONIcon filter that creates ambient occlusion
GAUSSIAN_BLURIcon filter that creates gaussian blur
COLOR_LASER_REDGun muzzle colors

Define Details

+

ADMIN_COLOR_PRIORITY + + +

+

Only used by rare effects like greentext coloring mobs and when admins varedit color

AMBIENT_OCCLUSION + + +

+

Icon filter that creates ambient occlusion

COLOR_BLACK + + +

+

Black rgb(0, 0, 0)

COLOR_BLUE + + +

+

Blue rgb(0, 0, 255)

COLOR_CYAN + + +

+

Cyan rgb(0, 255, 255) B + G

COLOR_GRAY + + +

+

Gray rgb(128, 128, 128)

COLOR_GREEN + + +

+

Green rgb(0, 255, 0)

COLOR_LASER_RED + + +

+

Gun muzzle colors

COLOR_LIGHT_GREEN + + +

+

light green rgb( 0, 128, 0)

COLOR_MAGENTA + + +

+

Magenta rgb(255, 0, 255) R+B

COLOR_MAROON + + +

+

Maroon rgb(128, 0, 0) shade of red

COLOR_MOSTLY_PURE_RED + + +

+

The default color for admin say, used as a fallback when the preference is not enabled

COLOR_OLIVE + + +

+

Olive rgb(128, 128, 0)

COLOR_PRIORITY_AMOUNT + + +

+

how many color priority levels there are.

COLOR_PURPLE + + +

+

Purple rgb( 128, 0, 128)

COLOR_RED + + +

+

Red rgb(255, 0, 0)

COLOR_SILVER + + +

+

Silver rgb(192, 192, 192) shade of grey

COLOR_WHITE + + +

+

White rgb(255, 255, 255)

COLOR_YELLOW + + +

+

Yellow rgb(255, 255, 0) R+G

FIXED_COLOR_PRIORITY + + +

+

Color inherent to the atom (e.g. blob color)

GAUSSIAN_BLUR + + + +

+

Icon filter that creates gaussian blur

LIGHT_COLOR_BLOOD_MAGIC + + +

+

deep crimson

LIGHT_COLOR_BLUE + + +

+

Cold, diluted blue. rgb(100, 150, 250)

LIGHT_COLOR_BLUEGREEN + + +

+

Light blueish green. rgb(125, 225, 175)

LIGHT_COLOR_BROWN + + +

+

Clear brown, mostly dim. rgb(150, 100, 50)

LIGHT_COLOR_CYAN + + +

+

Diluted cyan. rgb(125, 225, 225)

LIGHT_COLOR_DARK_BLUE + + +

+

Saturated blue. rgb(51, 117, 248)

LIGHT_COLOR_FIRE + + +

+

Warm orange color, leaning strongly towards yellow. rgb(250, 160, 25)

LIGHT_COLOR_FLARE + + +

+

Bright, non-saturated red. Leaning slightly towards pink for visibility. rgb(250, 100, 75)

LIGHT_COLOR_GREEN + + +

+

Some defines to generalise Colors used in lighting.

+

Important note: Colors can end up significantly different from the basic html picture, especially when saturated +Bright but quickly dissipating neon green. rgb(100, 200, 100)

LIGHT_COLOR_HALOGEN + + +

+

Barely visible cyan-ish hue, as the doctor prescribed. rgb(240, 250, 250)

LIGHT_COLOR_HOLY_MAGIC + + +

+

slightly desaturated bright yellow.

LIGHT_COLOR_LAVA + + +

+

Very warm yellow, leaning slightly towards orange. rgb(196, 138, 24)

LIGHT_COLOR_LAVENDER + + +

+

Less-saturated light purple. rgb(155, 81, 255)

LIGHT_COLOR_LIGHT_CYAN + + +

+

More-saturated cyan. rgb(64, 206, 255)

LIGHT_COLOR_ORANGE + + +

+

Mostly pure orange. rgb(250, 150, 50)

LIGHT_COLOR_PINK + + +

+

Diluted, mid-warmth pink. rgb(225, 125, 225)

LIGHT_COLOR_PURPLE + + +

+

Light Purple. rgb(149, 44, 244)

LIGHT_COLOR_RED + + +

+

Warm red color rgb(250, 66, 66)

LIGHT_COLOR_SLIME_LAMP + + +

+

Weird color, between yellow and green, very slimy. rgb(175, 200, 75)

LIGHT_COLOR_TUNGSTEN + + +

+

Extremely diluted yellow, close to skin color (for some reason). rgb(250, 225, 175)

LIGHT_COLOR_YELLOW + + +

+

Dimmed yellow, leaning kaki. rgb(225, 225, 125)

TEMPORARY_COLOR_PRIORITY + + +

+

e.g. purple effect of the revenant on a mob, black effect when mob electrocuted

WASHABLE_COLOR_PRIORITY + + +

+

Color splashed onto an atom (e.g. paint on turf)

+ + + diff --git a/code/__DEFINES/combat.html b/code/__DEFINES/combat.html new file mode 100644 index 000000000000..c556e68fd482 --- /dev/null +++ b/code/__DEFINES/combat.html @@ -0,0 +1,57 @@ + + + + + + + code/__DEFINES/combat.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/combat.dm + +

+ + + + + + + +
DECLOAK_FORCEDForced for any unspecified reason.
DECLOAK_SPECIESCaused by being worn by non humans.
DECLOAK_EXTINGUISHERCaused by fire extinguisher.
DECLOAK_PREDALIENCaused by predalien screech.
DECLOAK_SUBMERGEDCaused by being in a body of water.
DECLOAK_EMPCaused by an EMP.

Define Details

+

DECLOAK_EMP + + +

+

Caused by an EMP.

DECLOAK_EXTINGUISHER + + +

+

Caused by fire extinguisher.

DECLOAK_FORCED + + +

+

Forced for any unspecified reason.

DECLOAK_PREDALIEN + + +

+

Caused by predalien screech.

DECLOAK_SPECIES + + +

+

Caused by being worn by non humans.

DECLOAK_SUBMERGED + + +

+

Caused by being in a body of water.

+ + + diff --git a/code/__DEFINES/conflict.html b/code/__DEFINES/conflict.html new file mode 100644 index 000000000000..93bd2f590df7 --- /dev/null +++ b/code/__DEFINES/conflict.html @@ -0,0 +1,187 @@ + + + + + + + code/__DEFINES/conflict.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/conflict.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AMMO_ANTISTRUCTPrimarily for railgun but can be implemented for other projectiles that are for antitank and antistructure (wall/machine)
AMMO_STRIKES_SURFACEIf the projectile hits a dense turf it'll do on_hit_turf on the turf just in front of the turf instead of on the turf itself
AMMO_HITS_TARGET_TURFWhether or not the bullet hits the target that was clicked or if it keeps travelling
AMMO_NO_DEFLECTCan't be deflected
AMMO_MPCan only hit people with criminal status
AMMO_FLAMEHandles sentry flamers glob
PROJECTILE_SHRAPNELProjectile is shrpanel which allow it to skip some collisions
PROJECTILE_BULLSEYEApply additional effects upon hitting clicked target
GUN_INTERNAL_MAGIf checking for ammo with current.mag you have to check it against numerical values, as booleans will not trigger.
GUN_ONE_HAND_WIELDEDremoves unwielded accuracy and scatter penalties (not recoil)
GUN_RECOIL_BUILDUPWhether the gun has been fired by its current user (reset upon dropped())
GUN_SUPPORT_PLATFORMsupport weapon, bipod will grant autofire
GUN_NO_DESCRIPTIONNo gun description, only base desc
ATTACH_PROJECTILEfor attachments that fire bullets
ATTACH_WEAPONis a weapon that fires stuff
ATTACH_IGNORE_EMPTYThis attachment should override ignore if it is empty
ATTACH_MELEEThis attachment should activate if you attack() with it attached.
ATTACH_WIELD_OVERRIDEOverride for attachies so you can fire them with a single hand . ONLY FOR PROJECTILES!!
AMMUNITION_HANDFUL_BOXfor dump_ammo_to(), boxes of handfuls like shotgun shell boxes
AMMUNITION_SLAP_TRANSFERIf this magazine can transfer to other magazines of the same type by slapping one with the other
SHOES_SLOWDOWNHow much shoes slow you down by default. Negative values speed you up
THROW_DELAYThis is how long you must wait to throw again after throwing two things
EXPLOSION_THRESHOLD_GIBhow much it takes to gib a mob
EXPLOSION_PRONE_MULTIPLIERprone mobs receive less damage from explosions
FALLOFF_PER_TILE1 % per 1 tile per 1 normalcy
THROWFORCE_COEFFCoefficient of throwforce when calculating damage from an atom colliding with a mob
MOB_SIZE_COEFFCoefficient of mobsize when calculating damage from a mob colliding with a dense atom
THROW_SPEED_DENSE_COEFFCoefficient of throwspeed when calculating damage from a mob colliding with a dense atom
THROW_SPEED_IMPACT_COEFFCoefficient of throwspeed when calculating damage from an atom colliding with a mob
GUN_LOW_AMMO_PERCENTAGEA gun filled with this percentage of it's total ammo or lower is considered to have low ammo
DMG_ORGAN_DAM_PROB_MULTThe multiplier to damage when calculating organ damage probability
BRUTE_ORGAN_DAM_PROB_MULTThe multiplier to existing brute damage when calculating organ damage probability

Define Details

+

AMMO_ANTISTRUCT + + +

+

Primarily for railgun but can be implemented for other projectiles that are for antitank and antistructure (wall/machine)

AMMO_FLAME + + +

+

Handles sentry flamers glob

AMMO_HITS_TARGET_TURF + + +

+

Whether or not the bullet hits the target that was clicked or if it keeps travelling

AMMO_MP + + +

+

Can only hit people with criminal status

AMMO_NO_DEFLECT + + +

+

Can't be deflected

AMMO_STRIKES_SURFACE + + +

+

If the projectile hits a dense turf it'll do on_hit_turf on the turf just in front of the turf instead of on the turf itself

AMMUNITION_HANDFUL_BOX + + +

+

for dump_ammo_to(), boxes of handfuls like shotgun shell boxes

AMMUNITION_SLAP_TRANSFER + + +

+

If this magazine can transfer to other magazines of the same type by slapping one with the other

ATTACH_IGNORE_EMPTY + + +

+

This attachment should override ignore if it is empty

ATTACH_MELEE + + +

+

This attachment should activate if you attack() with it attached.

ATTACH_PROJECTILE + + +

+

for attachments that fire bullets

ATTACH_WEAPON + + +

+

is a weapon that fires stuff

ATTACH_WIELD_OVERRIDE + + +

+

Override for attachies so you can fire them with a single hand . ONLY FOR PROJECTILES!!

BRUTE_ORGAN_DAM_PROB_MULT + + +

+

The multiplier to existing brute damage when calculating organ damage probability

DMG_ORGAN_DAM_PROB_MULT + + +

+

The multiplier to damage when calculating organ damage probability

EXPLOSION_PRONE_MULTIPLIER + + +

+

prone mobs receive less damage from explosions

EXPLOSION_THRESHOLD_GIB + + +

+

how much it takes to gib a mob

FALLOFF_PER_TILE + + +

+

1 % per 1 tile per 1 normalcy

GUN_INTERNAL_MAG + + +

+

If checking for ammo with current.mag you have to check it against numerical values, as booleans will not trigger.

GUN_LOW_AMMO_PERCENTAGE + + +

+

A gun filled with this percentage of it's total ammo or lower is considered to have low ammo

GUN_NO_DESCRIPTION + + +

+

No gun description, only base desc

GUN_ONE_HAND_WIELDED + + +

+

removes unwielded accuracy and scatter penalties (not recoil)

GUN_RECOIL_BUILDUP + + +

+

Whether the gun has been fired by its current user (reset upon dropped())

GUN_SUPPORT_PLATFORM + + +

+

support weapon, bipod will grant autofire

MOB_SIZE_COEFF + + +

+

Coefficient of mobsize when calculating damage from a mob colliding with a dense atom

PROJECTILE_BULLSEYE + + +

+

Apply additional effects upon hitting clicked target

PROJECTILE_SHRAPNEL + + +

+

Projectile is shrpanel which allow it to skip some collisions

SHOES_SLOWDOWN + + +

+

How much shoes slow you down by default. Negative values speed you up

THROWFORCE_COEFF + + +

+

Coefficient of throwforce when calculating damage from an atom colliding with a mob

THROW_DELAY + + +

+

This is how long you must wait to throw again after throwing two things

THROW_SPEED_DENSE_COEFF + + +

+

Coefficient of throwspeed when calculating damage from a mob colliding with a dense atom

THROW_SPEED_IMPACT_COEFF + + +

+

Coefficient of throwspeed when calculating damage from an atom colliding with a mob

+ + + diff --git a/code/__DEFINES/cooldowns.html b/code/__DEFINES/cooldowns.html new file mode 100644 index 000000000000..0acf8ee7d284 --- /dev/null +++ b/code/__DEFINES/cooldowns.html @@ -0,0 +1,39 @@ + + + + + + + code/__DEFINES/cooldowns.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/cooldowns.dm + +

+ + + +
COMSIG_CD_STOPCOOLDOWN SYSTEMS
COOLDOWN_SECONDSLEFTjust pre-divides the result by 10 to give an output in seconds

Define Details

+

COMSIG_CD_STOP + + + +

+

COOLDOWN SYSTEMS

COOLDOWN_SECONDSLEFT + + + +

+

just pre-divides the result by 10 to give an output in seconds

+ + + diff --git a/code/__DEFINES/dcs/flags.html b/code/__DEFINES/dcs/flags.html new file mode 100644 index 000000000000..c0a9fc4db516 --- /dev/null +++ b/code/__DEFINES/dcs/flags.html @@ -0,0 +1,83 @@ + + + + + + + code/__DEFINES/dcs/flags.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/flags.dm + +

+ + + + + + + + + + + +
COMPONENT_INCOMPATIBLEReturn this from /datum/component/Initialize or datum/component/OnTransfer to have the component be deleted if it's applied to an incorrect type. +parent must not be modified if this is to be returned. +This will be noted in the runtime logs
COMPONENT_NOTRANSFERReturned in PostTransfer to prevent transfer, similar to COMPONENT_INCOMPATIBLE
ELEMENT_INCOMPATIBLEReturn value to cancel attaching
ELEMENT_DETACHCauses the detach proc to be called when the host object is being deleted
ELEMENT_BESPOKEOnly elements created with the same arguments given after id_arg_index share an element instance +The arguments are the same when the text and number values are the same and all other values have the same ref
COMPONENT_DUPE_HIGHLANDERold component is deleted (default)
COMPONENT_DUPE_ALLOWEDduplicates allowed
COMPONENT_DUPE_UNIQUEnew component is deleted
COMPONENT_DUPE_UNIQUE_PASSARGSold component is given the initialization args of the new
COMPONENT_DUPE_SELECTIVEeach component of the same type is consulted as to whether the duplicate should be allowed

Define Details

+

COMPONENT_DUPE_ALLOWED + + +

+

duplicates allowed

COMPONENT_DUPE_HIGHLANDER + + +

+

old component is deleted (default)

COMPONENT_DUPE_SELECTIVE + + +

+

each component of the same type is consulted as to whether the duplicate should be allowed

COMPONENT_DUPE_UNIQUE + + +

+

new component is deleted

COMPONENT_DUPE_UNIQUE_PASSARGS + + +

+

old component is given the initialization args of the new

COMPONENT_INCOMPATIBLE + + +

+

Return this from /datum/component/Initialize or datum/component/OnTransfer to have the component be deleted if it's applied to an incorrect type. +parent must not be modified if this is to be returned. +This will be noted in the runtime logs

COMPONENT_NOTRANSFER + + +

+

Returned in PostTransfer to prevent transfer, similar to COMPONENT_INCOMPATIBLE

ELEMENT_BESPOKE + + +

+

Only elements created with the same arguments given after id_arg_index share an element instance +The arguments are the same when the text and number values are the same and all other values have the same ref

ELEMENT_DETACH + + +

+

Causes the detach proc to be called when the host object is being deleted

ELEMENT_INCOMPATIBLE + + +

+

Return value to cancel attaching

+ + + diff --git a/code/__DEFINES/dcs/helpers.html b/code/__DEFINES/dcs/helpers.html new file mode 100644 index 000000000000..9a8c0a4171dc --- /dev/null +++ b/code/__DEFINES/dcs/helpers.html @@ -0,0 +1,71 @@ + + + + + + + code/__DEFINES/dcs/helpers.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/helpers.dm + +

+ + + + + + + +
SEND_SIGNALUsed to trigger signals and call procs registered for that signal +The datum hosting the signal is automaticaly added as the first argument +Returns a bitfield gathered from all registered procs +Arguments given here are packaged in a list and given to _SendSignal
SIGNAL_HANDLERSignifies that this proc is used to handle signals. +Every proc you pass to RegisterSignal must have this.
SIGNAL_HANDLER_DOES_SLEEPSignifies that this proc is used to handle signals, but also sleeps. +Do not use this for new work.
AddElementA wrapper for _AddElement that allows us to pretend we're using normal named arguments
RemoveElementA wrapper for _RemoveElement that allows us to pretend we're using normal named arguments
AddComponentA wrapper for _AddComponent that allows us to pretend we're using normal named arguments

Define Details

+

AddComponent + + + +

+

A wrapper for _AddComponent that allows us to pretend we're using normal named arguments

AddElement + + + +

+

A wrapper for _AddElement that allows us to pretend we're using normal named arguments

RemoveElement + + + +

+

A wrapper for _RemoveElement that allows us to pretend we're using normal named arguments

SEND_SIGNAL + + + +

+

Used to trigger signals and call procs registered for that signal +The datum hosting the signal is automaticaly added as the first argument +Returns a bitfield gathered from all registered procs +Arguments given here are packaged in a list and given to _SendSignal

SIGNAL_HANDLER + + +

+

Signifies that this proc is used to handle signals. +Every proc you pass to RegisterSignal must have this.

SIGNAL_HANDLER_DOES_SLEEP + + +

+

Signifies that this proc is used to handle signals, but also sleeps. +Do not use this for new work.

+ + + diff --git a/code/__DEFINES/dcs/signals/atom/mob/living/signals_human.html b/code/__DEFINES/dcs/signals/atom/mob/living/signals_human.html new file mode 100644 index 000000000000..6e71407bdf57 --- /dev/null +++ b/code/__DEFINES/dcs/signals/atom/mob/living/signals_human.html @@ -0,0 +1,122 @@ + + + + + + + code/__DEFINES/dcs/signals/atom/mob/living/signals_human.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/atom/mob/living/signals_human.dm + +

+ + + + + + + + + + + + + + + + + + + + +
COMSIG_HUMAN_FORCESAYfrom /mob/living/carbon/human/proc/force_say(): ()
COMSIG_HUMAN_EXTINGUISHFrom /mob/living/carbon/human/ExtinguishMob()
COMSIG_HUMAN_REVIVEDFrom /obj/item/device/defibrillator/attack
COMSIG_HUMAN_PRE_BULLET_ACTFrom /mob/living/carbon/human/bullet_act
COMSIG_HUMAN_BULLET_ACTFrom /mob/living/carbon/human/bullet_act(): (damage_result, ammo_flags, obj/projectile/P)
COMSIG_HUMAN_BLOOD_CROSSEDFrom /obj/effect/decal/cleanable/blood/Crossed(): (amount, bcolor, dry_time_left)
COMSIG_HUMAN_ALIEN_ATTACKfrom /mob/living/carbon/human/attack_alien()
COMSIG_HUMAN_IMPREGNATEFrom /obj/item/clothing/mask/facehugger/proc/impregnate(): (obj/item/clothing/mask/facehugger/hugger)
COMSIG_HUMAN_OVERLAY_APPLIEDFrom /mob/living/carbon/human/apply_overlay(): (cache_index, overlay_image)
COMSIG_HUMAN_OVERLAY_REMOVEDFrom /mob/living/carbon/human/remove_overlay(): (cache_index, overlay_image)
COMSIG_HUMAN_FLAY_ATTEMPTFrom /datum/flaying_datum
COMSIG_HUMAN_MOVEMENT_CANCEL_INTERACTIONfrom /mob/living/carbon/human/movement_delay()
COMSIG_HUMAN_POST_UPDATE_SIGHTfrom /mob/living/carbon/human/update_sight()
COMSIG_HUMAN_POST_MOVE_DELAYfrom /mob/living/carbon/human/movement_delay(): (list/movedata)
COMSIG_HUMAN_CARRYFrom /mob/living/carbon/human/MouseDrop_T(atom/dropping, mob/user)
COMSIG_HUMAN_ATTEMPTING_EQUIPFrom /mob/proc/equip_to_slot_if_possible()
COMSIG_HUMAN_SURGERY_APPLY_MODIFIERSfrom /datum/surgery_step/proc/attempt_step()
COMSIG_HUMAN_COLD_PROTECTION_APPLY_MODIFIERSFrom /mob/living/carbon/human/proc/get_flags_cold_protection()
COMSIG_HUMAN_SHRAPNEL_REMOVEDFrom /obj/item/proc/dig_out_shrapnel() : ()

Define Details

+

COMSIG_HUMAN_ALIEN_ATTACK + + +

+

from /mob/living/carbon/human/attack_alien()

COMSIG_HUMAN_ATTEMPTING_EQUIP + + +

+

From /mob/proc/equip_to_slot_if_possible()

COMSIG_HUMAN_BLOOD_CROSSED + + +

+

From /obj/effect/decal/cleanable/blood/Crossed(): (amount, bcolor, dry_time_left)

COMSIG_HUMAN_BULLET_ACT + + +

+

From /mob/living/carbon/human/bullet_act(): (damage_result, ammo_flags, obj/projectile/P)

COMSIG_HUMAN_CARRY + + +

+

From /mob/living/carbon/human/MouseDrop_T(atom/dropping, mob/user)

COMSIG_HUMAN_COLD_PROTECTION_APPLY_MODIFIERS + + +

+

From /mob/living/carbon/human/proc/get_flags_cold_protection()

COMSIG_HUMAN_EXTINGUISH + + +

+

From /mob/living/carbon/human/ExtinguishMob()

COMSIG_HUMAN_FLAY_ATTEMPT + + +

+

From /datum/flaying_datum

COMSIG_HUMAN_FORCESAY + + +

+

from /mob/living/carbon/human/proc/force_say(): ()

COMSIG_HUMAN_IMPREGNATE + + +

+

From /obj/item/clothing/mask/facehugger/proc/impregnate(): (obj/item/clothing/mask/facehugger/hugger)

COMSIG_HUMAN_MOVEMENT_CANCEL_INTERACTION + + +

+

from /mob/living/carbon/human/movement_delay()

COMSIG_HUMAN_OVERLAY_APPLIED + + +

+

From /mob/living/carbon/human/apply_overlay(): (cache_index, overlay_image)

COMSIG_HUMAN_OVERLAY_REMOVED + + +

+

From /mob/living/carbon/human/remove_overlay(): (cache_index, overlay_image)

COMSIG_HUMAN_POST_MOVE_DELAY + + +

+

from /mob/living/carbon/human/movement_delay(): (list/movedata)

COMSIG_HUMAN_POST_UPDATE_SIGHT + + +

+

from /mob/living/carbon/human/update_sight()

COMSIG_HUMAN_PRE_BULLET_ACT + + +

+

From /mob/living/carbon/human/bullet_act

COMSIG_HUMAN_REVIVED + + +

+

From /obj/item/device/defibrillator/attack

COMSIG_HUMAN_SHRAPNEL_REMOVED + + +

+

From /obj/item/proc/dig_out_shrapnel() : ()

COMSIG_HUMAN_SURGERY_APPLY_MODIFIERS + + +

+

from /datum/surgery_step/proc/attempt_step()

+ + + diff --git a/code/__DEFINES/dcs/signals/atom/mob/living/signals_living.html b/code/__DEFINES/dcs/signals/atom/mob/living/signals_living.html new file mode 100644 index 000000000000..dac97ccf8d66 --- /dev/null +++ b/code/__DEFINES/dcs/signals/atom/mob/living/signals_living.html @@ -0,0 +1,102 @@ + + + + + + + code/__DEFINES/dcs/signals/atom/mob/living/signals_living.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/atom/mob/living/signals_living.dm + +

+ + + + + + + + + + + + + + + + +
COMSIG_MOB_RESISTEDFrom /mob/living/verb/resist()
COMSIG_MOB_RECALCULATE_CLIENT_COLORFrom /mob/living/verb/resist()
COMSIG_LIVING_REJUVENATEDFrom /mob/living/rejuvenate
COMSIG_LIVING_PREIGNITIONFrom /mob/living/proc/IgniteMob
COMSIG_LIVING_FLAMER_CROSSEDFrom /obj/flamer_fire/Crossed
COMSIG_LIVING_FLAMER_FLAMEDFrom /obj/flamer_fire/Initialize
COMSIG_LIVING_ZOOM_OUTFrom /obj/item/proc/unzoom
COMSIG_LIVING_CLIMB_STRUCTUREFrom /obj/structure/proc/do_climb(var/mob/living/user, mods)
COMSIG_LIVING_PRE_COLLIDEFrom /mob/living/Collide(): (atom/A)
COMSIG_LIVING_GHOSTEDFrom /mob/living/proc/do_ghost() : (mob/dead/observer/ghost)
COMSIG_LIVING_ATTACKHAND_HUMANFrom /mob/living/carbon/human/attack_hand() : (mob/living/carbon/human/attacked_mob)
COMSIG_LIVING_HYPOSPRAY_INJECTEDFrom /obj/item/reagent_container/hypospray/attack() : (obj/item/reagent_container/hypospray/injector)
COMSIG_LIVING_SET_BUCKLEDfrom base of mob/living/set_buckled(): (new_buckled)
COMSIG_LIVING_SET_BODY_POSITIONfrom base of mob/living/set_body_position()
COMSIG_LIVING_APPLY_EFFECTfrom base of /mob/living/apply_status_effect(): (datum/status_effect/new_effect)

Define Details

+

COMSIG_LIVING_APPLY_EFFECT + + +

+

from base of /mob/living/apply_status_effect(): (datum/status_effect/new_effect)

COMSIG_LIVING_ATTACKHAND_HUMAN + + +

+

From /mob/living/carbon/human/attack_hand() : (mob/living/carbon/human/attacked_mob)

COMSIG_LIVING_CLIMB_STRUCTURE + + +

+

From /obj/structure/proc/do_climb(var/mob/living/user, mods)

COMSIG_LIVING_FLAMER_CROSSED + + +

+

From /obj/flamer_fire/Crossed

COMSIG_LIVING_FLAMER_FLAMED + + +

+

From /obj/flamer_fire/Initialize

COMSIG_LIVING_GHOSTED + + +

+

From /mob/living/proc/do_ghost() : (mob/dead/observer/ghost)

COMSIG_LIVING_HYPOSPRAY_INJECTED + + +

+

From /obj/item/reagent_container/hypospray/attack() : (obj/item/reagent_container/hypospray/injector)

COMSIG_LIVING_PREIGNITION + + +

+

From /mob/living/proc/IgniteMob

COMSIG_LIVING_PRE_COLLIDE + + +

+

From /mob/living/Collide(): (atom/A)

COMSIG_LIVING_REJUVENATED + + +

+

From /mob/living/rejuvenate

COMSIG_LIVING_SET_BODY_POSITION + + +

+

from base of mob/living/set_body_position()

COMSIG_LIVING_SET_BUCKLED + + +

+

from base of mob/living/set_buckled(): (new_buckled)

COMSIG_LIVING_ZOOM_OUT + + +

+

From /obj/item/proc/unzoom

COMSIG_MOB_RECALCULATE_CLIENT_COLOR + + +

+

From /mob/living/verb/resist()

COMSIG_MOB_RESISTED + + +

+

From /mob/living/verb/resist()

+ + + diff --git a/code/__DEFINES/dcs/signals/atom/mob/living/signals_xeno.html b/code/__DEFINES/dcs/signals/atom/mob/living/signals_xeno.html new file mode 100644 index 000000000000..d239d80d4b24 --- /dev/null +++ b/code/__DEFINES/dcs/signals/atom/mob/living/signals_xeno.html @@ -0,0 +1,147 @@ + + + + + + + code/__DEFINES/dcs/signals/atom/mob/living/signals_xeno.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/atom/mob/living/signals_xeno.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + +
COMSIG_XENO_ALIEN_ATTACKfrom /mob/living/carbon/xenomorph/attack_alien()
COMSIG_XENO_POST_SPITFrom ../xeno_action/activable/xeno_spit/use_ability
COMSIG_XENO_REVIVEDFrom /mob/living/carbon/xenomorph/revive()
COMSIG_XENO_PRE_CALCULATE_ARMOURED_DAMAGE_PROJECTILEfrom /mob/living/carbon/xenomorph/bullet_act(): (list/damagedata)
COMSIG_XENO_PRE_APPLY_ARMOURED_DAMAGEfrom /mob/living/carbon/xenomorph/apply_armoured_damage(): (list/damagedata)
COMSIG_XENO_BULLET_ACTFrom /mob/living/carbon/xenomorph/bullet_act
COMSIG_XENO_APPEND_TO_STATfrom /mob/living/carbon/xenomorph/get_status_tab_items(): (list/statdata)
COMSIG_XENO_MOVEMENT_DELAYfrom /mob/living/carbon/xenomorph/movement_delay()
COMSIG_XENO_STOP_MOMENTUMCalled whenever xeno should stop momentum (when charging)
COMSIG_XENO_START_CHARGINGCalled whenever xeno should resume charge
COMSIG_XENO_ACTION_USEDFrom /datum/action/xeno_action/proc/use_ability_wrapper(): (mob/owner)
COMSIG_XENO_PRE_ACTION_USEDFrom /datum/action/xeno_action/proc/use_ability_wrapper(): (mob/owner)
COMSIG_XENO_FAILED_ACTION_USEDFrom /datum/action/xeno_action/proc/use_ability_wrapper(): (mob/owner)
COMSIG_XENO_DEAL_ACID_DAMAGEFrom /mob/living/carbon/xenomorph/proc/check_blood_splash()
COMSIG_XENO_RECALCULATE_SPEEDFrom /mob/living/carbon/xenomorph/proc/recalculate_speed()
COMSIG_QUEEN_MOUNT_OVIPOSITORFrom /mob/living/carbon/xenomorph/queen/proc/mount_ovipositor
COMSIG_QUEEN_DISMOUNT_OVIPOSITORFrom /mob/living/carbon/xenomorph/queen/proc/dismount_ovipositor(): (instant_dismount)
COMSIG_XENO_SLASH_ADDITIONAL_EFFECTS_SELFFor any additional things that should happen when a xeno's melee_attack_additional_effects_self() proc is called
COMSIG_XENO_PLANT_RESIN_NODEFrom /datum/action/xeno_action/onclick/plant_weeds/use_ability(): (atom/A)
COMSIG_XENO_START_EMIT_PHEROMONESFrom //mob/living/carbon/xenomorph/proc/emit_pheromones(): (pheromone, emit_cost)
COMSIG_XENO_TAKE_HUGGER_FROM_MORPHERFrom /obj/effect/alien/resin/special/eggmorph/attack_alien: (mob/living/carbon/xenomorph/M)
COMSIG_XENO_ENTER_CRITFrom /mob/living/carbon/xenomorph/proc/handle_crit()
COMSIG_XENO_TRY_HIVEMIND_TALKFrom /mob/living/carbon/xenomorph/proc/hivemind_talk(): (message)
COMSIG_XENO_DEBUFF_CLEANSEused in /datum/component/status_effect/cleanse()

Define Details

+

COMSIG_QUEEN_DISMOUNT_OVIPOSITOR + + +

+

From /mob/living/carbon/xenomorph/queen/proc/dismount_ovipositor(): (instant_dismount)

COMSIG_QUEEN_MOUNT_OVIPOSITOR + + +

+

From /mob/living/carbon/xenomorph/queen/proc/mount_ovipositor

COMSIG_XENO_ACTION_USED + + +

+

From /datum/action/xeno_action/proc/use_ability_wrapper(): (mob/owner)

COMSIG_XENO_ALIEN_ATTACK + + +

+

from /mob/living/carbon/xenomorph/attack_alien()

COMSIG_XENO_APPEND_TO_STAT + + +

+

from /mob/living/carbon/xenomorph/get_status_tab_items(): (list/statdata)

COMSIG_XENO_BULLET_ACT + + +

+

From /mob/living/carbon/xenomorph/bullet_act

COMSIG_XENO_DEAL_ACID_DAMAGE + + +

+

From /mob/living/carbon/xenomorph/proc/check_blood_splash()

COMSIG_XENO_DEBUFF_CLEANSE + + +

+

used in /datum/component/status_effect/cleanse()

COMSIG_XENO_ENTER_CRIT + + +

+

From /mob/living/carbon/xenomorph/proc/handle_crit()

COMSIG_XENO_FAILED_ACTION_USED + + +

+

From /datum/action/xeno_action/proc/use_ability_wrapper(): (mob/owner)

COMSIG_XENO_MOVEMENT_DELAY + + +

+

from /mob/living/carbon/xenomorph/movement_delay()

COMSIG_XENO_PLANT_RESIN_NODE + + +

+

From /datum/action/xeno_action/onclick/plant_weeds/use_ability(): (atom/A)

COMSIG_XENO_POST_SPIT + + +

+

From ../xeno_action/activable/xeno_spit/use_ability

COMSIG_XENO_PRE_ACTION_USED + + +

+

From /datum/action/xeno_action/proc/use_ability_wrapper(): (mob/owner)

COMSIG_XENO_PRE_APPLY_ARMOURED_DAMAGE + + +

+

from /mob/living/carbon/xenomorph/apply_armoured_damage(): (list/damagedata)

COMSIG_XENO_PRE_CALCULATE_ARMOURED_DAMAGE_PROJECTILE + + +

+

from /mob/living/carbon/xenomorph/bullet_act(): (list/damagedata)

COMSIG_XENO_RECALCULATE_SPEED + + +

+

From /mob/living/carbon/xenomorph/proc/recalculate_speed()

COMSIG_XENO_REVIVED + + +

+

From /mob/living/carbon/xenomorph/revive()

COMSIG_XENO_SLASH_ADDITIONAL_EFFECTS_SELF + + +

+

For any additional things that should happen when a xeno's melee_attack_additional_effects_self() proc is called

COMSIG_XENO_START_CHARGING + + +

+

Called whenever xeno should resume charge

COMSIG_XENO_START_EMIT_PHEROMONES + + +

+

From //mob/living/carbon/xenomorph/proc/emit_pheromones(): (pheromone, emit_cost)

COMSIG_XENO_STOP_MOMENTUM + + +

+

Called whenever xeno should stop momentum (when charging)

COMSIG_XENO_TAKE_HUGGER_FROM_MORPHER + + +

+

From /obj/effect/alien/resin/special/eggmorph/attack_alien: (mob/living/carbon/xenomorph/M)

COMSIG_XENO_TRY_HIVEMIND_TALK + + +

+

From /mob/living/carbon/xenomorph/proc/hivemind_talk(): (message)

+ + + diff --git a/code/__DEFINES/dcs/signals/atom/mob/signals_mind.html b/code/__DEFINES/dcs/signals/atom/mob/signals_mind.html new file mode 100644 index 000000000000..26102b8a4b67 --- /dev/null +++ b/code/__DEFINES/dcs/signals/atom/mob/signals_mind.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/dcs/signals/atom/mob/signals_mind.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/atom/mob/signals_mind.dm + +

+ + +
COMSIG_MIND_TRANSFERREDfrom mind/transfer_to. Sent after the mind has been transferred to a different body: (mob/previous_body)

Define Details

+

COMSIG_MIND_TRANSFERRED + + +

+

from mind/transfer_to. Sent after the mind has been transferred to a different body: (mob/previous_body)

+ + + diff --git a/code/__DEFINES/dcs/signals/atom/mob/signals_mob.html b/code/__DEFINES/dcs/signals/atom/mob/signals_mob.html new file mode 100644 index 000000000000..5f3a78be7be6 --- /dev/null +++ b/code/__DEFINES/dcs/signals/atom/mob/signals_mob.html @@ -0,0 +1,281 @@ + + + + + + + code/__DEFINES/dcs/signals/atom/mob/signals_mob.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/atom/mob/signals_mob.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
COMSIG_MOB_STATCHANGEfrom base of mob/set_stat(): (new_stat, old_stat)
COMSIG_MOB_DESTROY_AIRLOCKFrom /obj/structure/machinery/door/airlock/proc/take_damage
COMSIG_MOB_DISASSEMBLE_AIRLOCKFrom /obj/structure/machinery/door/airlock/attackby
COMSIG_MOB_DESTROY_WALLFrom /turf/closed/wall/proc/take_damage
COMSIG_MOB_EXPLODED_WALLFrom /turf/closed/wall/ex_act
COMSIG_MOB_CONSTRUCT_WALLFrom /obj/structure/girder/proc/do_wall
COMSIG_MOB_EXPLODE_W_FRAMEFrom /obj/structure/window/framed/ex_act
COMSIG_MOB_DISASSEMBLE_W_FRAMEFrom /obj/structure/window_frame/attackby
COMSIG_MOB_DESTROY_WINDOWFrom /obj/structure/window/proc/healthcheck
COMSIG_MOB_WINDOW_EXPLODEDFrom /obj/structure/window/ex_act
COMSIG_MOB_CONSTRUCT_WINDOWFrom /obj/structure/window_frame/attackby
COMSIG_MOB_DISASSEMBLE_WINDOWFrom /obj/structure/window/attackby
COMSIG_MOB_APC_REMOVE_BOARDFrom /obj/structure/machinery/power/apc/attackby
COMSIG_MOB_APC_REMOVE_CELLFrom /obj/structure/machinery/power/apc/attack_hand
COMSIG_MOB_APC_CUT_WIREFrom /obj/structure/machinery/power/apc/proc/cut
COMSIG_MOB_APC_POWER_PULSEFrom /obj/structure/machinery/power/apc/proc/pulse
COMSIG_MOB_FIRED_GUNFrom /projectiles/updated_projectiles/guns/proc/fire
COMSIG_MOB_FIRED_GUN_ATTACHMENTFrom /projectiles/updated_projectiles/guns/proc/fire_attachment
COMSIG_MOB_DEATHFrom /mob/proc/death
COMSIG_MOB_DRAGGEDFor when a mob is dragged
COMSIG_MOB_ITEM_UNEQUIPPEDFrom /obj/item/proc/unequipped()
COMSIG_MOB_ATTEMPTING_EQUIPFrom /mob/proc/equip_to_slot_if_possible()
COMSIG_MOB_DEVOUREDFor when a mob is devoured by a Xeno
COMSIG_MOB_SET_FACE_DIRFrom base of /mob/proc/set_face_dir(): (newdir)
COMSIG_MOB_WEED_SLOWDOWNFrom /obj/effect/alien/weeds/Crossed(atom/movable/AM)
COMSIG_MOB_TACKLED_DOWNFrom /mob/living/carbon/human/attack_alien(): (mob/living/carbon/xenomorph/M, dam_bonus)
COMSIG_MOB_CHANGE_VIEWcalled in /client/change_view()
COMSIG_MOB_RESET_VIEWCalled in /mob/reset_view(): (atom/A)
COMSIG_MOB_LOGINFrom base of /mob/Login(), called when a client logs into this mob: () +Not to be confused with COMSIG_MOB_LOGGED_IN
COMSIG_MOB_LOGGED_INFrom base of /mob/Login(), called after a client logs into this mob: () +Not to be confused with COMSIG_MOB_LOGIN
COMSIG_MOB_LOGOUTFrom base of /mob/Logout(): ()
COMSIG_MOB_REAL_NAME_CHANGEDFrom /mob/proc/change_real_name(): (old_name, new_name)
COMSIG_MOB_GRAB_UPGRADEFrom /obj/item/grab/attack_self(mob/user)
COMSIG_LIVING_POST_FULLY_HEALfrom rejuv
COMSIG_MOB_EMOTEfrom /mob/living/emote(): ()
COMSIG_MOB_GHOSTIZEWhen a mob is turned into a /mob/dead/observer at /mob/proc/ghostize()
COMSIG_MOB_NEW_MINDWhen a mob gets a new mind via transfer at /datum/mind/proc/transfer_to()
COMSIG_MOB_PICKUP_ITEMFrom /obj/item/proc/pickup() : (obj/item/picked_up)
COMSIG_MOB_ITEM_ATTACK_SELFFrom /obj/item/proc/attack_self() : (obj/item/used)
COMSIG_MOB_ITEM_DROPPEDFrom /obj/item/proc/dropped() : (obj/item/dropped)
COMSIG_MOB_EATEN_SNACKFrom /obj/item/reagent_container/food/snacks/proc/on_Consume() : (obj/item/reagent_container/food/snacks/eaten_food)
COMSIG_MOB_PARENT_ATTACKBYFrom /atom/proc/attackby() : (atom/attacked, obj/item/attacked_with)
COMSIG_MOB_GUN_EMPTYFrom /obj/item/weapon/gun/proc/reload_into_chamber() : (obj/item/weapon/gun/empty_gun)
COMSIG_MOB_RELOADED_GUNFrom /obj/item/weapon/gun/proc/reload() : (obj/item/weapon/gun/reloaded)
COMSIG_MOB_GET_STATUS_TAB_ITEMSFrom /mob/proc/get_status_tab_items() : (list/status_list)
COMSIG_MOB_TUTORIAL_UPDATE_OBJECTIVEFrom /datum/tutorial/proc/update_objective() : (new_objective)
COMSIG_MOB_SWAPPED_HANDFrom /mob/proc/swap_hand() : ()
COMSIG_MOB_INTENT_CHANGEFrom /mob/proc/a_intent_change() : (new_intent)
COMSIG_MOB_AGGRESSIVELY_GRABBEDFrom /obj/item/grab/proc/progress_passive() : (mob/living/carbon/human/grabber)
COMSIG_MOB_EFFECT_CLOAK_CANCELCancels all running cloaking effects on target

Define Details

+

COMSIG_LIVING_POST_FULLY_HEAL + + +

+

from rejuv

COMSIG_MOB_AGGRESSIVELY_GRABBED + + +

+

From /obj/item/grab/proc/progress_passive() : (mob/living/carbon/human/grabber)

COMSIG_MOB_APC_CUT_WIRE + + +

+

From /obj/structure/machinery/power/apc/proc/cut

COMSIG_MOB_APC_POWER_PULSE + + +

+

From /obj/structure/machinery/power/apc/proc/pulse

COMSIG_MOB_APC_REMOVE_BOARD + + +

+

From /obj/structure/machinery/power/apc/attackby

COMSIG_MOB_APC_REMOVE_CELL + + +

+

From /obj/structure/machinery/power/apc/attack_hand

COMSIG_MOB_ATTEMPTING_EQUIP + + +

+

From /mob/proc/equip_to_slot_if_possible()

COMSIG_MOB_CHANGE_VIEW + + +

+

called in /client/change_view()

COMSIG_MOB_CONSTRUCT_WALL + + +

+

From /obj/structure/girder/proc/do_wall

COMSIG_MOB_CONSTRUCT_WINDOW + + +

+

From /obj/structure/window_frame/attackby

COMSIG_MOB_DEATH + + +

+

From /mob/proc/death

COMSIG_MOB_DESTROY_AIRLOCK + + +

+

From /obj/structure/machinery/door/airlock/proc/take_damage

COMSIG_MOB_DESTROY_WALL + + +

+

From /turf/closed/wall/proc/take_damage

COMSIG_MOB_DESTROY_WINDOW + + +

+

From /obj/structure/window/proc/healthcheck

COMSIG_MOB_DEVOURED + + +

+

For when a mob is devoured by a Xeno

COMSIG_MOB_DISASSEMBLE_AIRLOCK + + +

+

From /obj/structure/machinery/door/airlock/attackby

COMSIG_MOB_DISASSEMBLE_WINDOW + + +

+

From /obj/structure/window/attackby

COMSIG_MOB_DISASSEMBLE_W_FRAME + + +

+

From /obj/structure/window_frame/attackby

COMSIG_MOB_DRAGGED + + +

+

For when a mob is dragged

COMSIG_MOB_EATEN_SNACK + + +

+

From /obj/item/reagent_container/food/snacks/proc/on_Consume() : (obj/item/reagent_container/food/snacks/eaten_food)

COMSIG_MOB_EFFECT_CLOAK_CANCEL + + +

+

Cancels all running cloaking effects on target

COMSIG_MOB_EMOTE + + +

+

from /mob/living/emote(): ()

COMSIG_MOB_EXPLODED_WALL + + +

+

From /turf/closed/wall/ex_act

COMSIG_MOB_EXPLODE_W_FRAME + + +

+

From /obj/structure/window/framed/ex_act

COMSIG_MOB_FIRED_GUN + + +

+

From /projectiles/updated_projectiles/guns/proc/fire

COMSIG_MOB_FIRED_GUN_ATTACHMENT + + +

+

From /projectiles/updated_projectiles/guns/proc/fire_attachment

COMSIG_MOB_GET_STATUS_TAB_ITEMS + + +

+

From /mob/proc/get_status_tab_items() : (list/status_list)

COMSIG_MOB_GHOSTIZE + + +

+

When a mob is turned into a /mob/dead/observer at /mob/proc/ghostize()

COMSIG_MOB_GRAB_UPGRADE + + +

+

From /obj/item/grab/attack_self(mob/user)

COMSIG_MOB_GUN_EMPTY + + +

+

From /obj/item/weapon/gun/proc/reload_into_chamber() : (obj/item/weapon/gun/empty_gun)

COMSIG_MOB_INTENT_CHANGE + + +

+

From /mob/proc/a_intent_change() : (new_intent)

COMSIG_MOB_ITEM_ATTACK_SELF + + +

+

From /obj/item/proc/attack_self() : (obj/item/used)

COMSIG_MOB_ITEM_DROPPED + + +

+

From /obj/item/proc/dropped() : (obj/item/dropped)

COMSIG_MOB_ITEM_UNEQUIPPED + + +

+

From /obj/item/proc/unequipped()

COMSIG_MOB_LOGGED_IN + + +

+

From base of /mob/Login(), called after a client logs into this mob: () +Not to be confused with COMSIG_MOB_LOGIN

COMSIG_MOB_LOGIN + + +

+

From base of /mob/Login(), called when a client logs into this mob: () +Not to be confused with COMSIG_MOB_LOGGED_IN

COMSIG_MOB_LOGOUT + + +

+

From base of /mob/Logout(): ()

COMSIG_MOB_NEW_MIND + + +

+

When a mob gets a new mind via transfer at /datum/mind/proc/transfer_to()

COMSIG_MOB_PARENT_ATTACKBY + + +

+

From /atom/proc/attackby() : (atom/attacked, obj/item/attacked_with)

COMSIG_MOB_PICKUP_ITEM + + +

+

From /obj/item/proc/pickup() : (obj/item/picked_up)

COMSIG_MOB_REAL_NAME_CHANGED + + +

+

From /mob/proc/change_real_name(): (old_name, new_name)

COMSIG_MOB_RELOADED_GUN + + +

+

From /obj/item/weapon/gun/proc/reload() : (obj/item/weapon/gun/reloaded)

COMSIG_MOB_RESET_VIEW + + +

+

Called in /mob/reset_view(): (atom/A)

COMSIG_MOB_SET_FACE_DIR + + +

+

From base of /mob/proc/set_face_dir(): (newdir)

COMSIG_MOB_STATCHANGE + + +

+

from base of mob/set_stat(): (new_stat, old_stat)

COMSIG_MOB_SWAPPED_HAND + + +

+

From /mob/proc/swap_hand() : ()

COMSIG_MOB_TACKLED_DOWN + + +

+

From /mob/living/carbon/human/attack_alien(): (mob/living/carbon/xenomorph/M, dam_bonus)

COMSIG_MOB_TUTORIAL_UPDATE_OBJECTIVE + + +

+

From /datum/tutorial/proc/update_objective() : (new_objective)

COMSIG_MOB_WEED_SLOWDOWN + + +

+

From /obj/effect/alien/weeds/Crossed(atom/movable/AM)

COMSIG_MOB_WINDOW_EXPLODED + + +

+

From /obj/structure/window/ex_act

+ + + diff --git a/code/__DEFINES/dcs/signals/atom/signals_atom.html b/code/__DEFINES/dcs/signals/atom/signals_atom.html new file mode 100644 index 000000000000..4de3f8eb0a5f --- /dev/null +++ b/code/__DEFINES/dcs/signals/atom/signals_atom.html @@ -0,0 +1,112 @@ + + + + + + + code/__DEFINES/dcs/signals/atom/signals_atom.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/atom/signals_atom.dm + +

+ + + + + + + + + + + + + + + + + + +
COMSIG_ATOM_DECORATEDFrom /atom/proc/Decorate
COMSIG_ATOM_DIR_CHANGEfrom base of atom/setDir(): (old_dir, new_dir). Called before the direction changes.
COMSIG_ATOM_TEMPORARY_ANIMATION_STARTgenerally called before temporary non-parallel animate()s on the atom (animation_duration)
COMSIG_ATOM_ORBIT_BEGINcalled when an atom starts orbiting another atom: (atom)
COMSIG_ATOM_ORBIT_STOPcalled when an atom stops orbiting another atom: (atom)
COMSIG_ATOM_HITBYfrom /atom/hitby(): (atom/movable/AM)
COMSIG_ATOM_TURF_CHANGEfrom /turf/ChangeTurf
COMSIG_ATOM_SET_LIGHT_RANGECalled right before the atom changes the value of light_range to a different one, from base atom/set_light_range(): (new_range)
COMSIG_ATOM_SET_LIGHT_POWERCalled right before the atom changes the value of light_power to a different one, from base atom/set_light_power(): (new_power)
COMSIG_ATOM_SET_LIGHT_COLORCalled right before the atom changes the value of light_color to a different one, from base atom/set_light_color(): (new_color)
COMSIG_ATOM_SET_LIGHT_ONCalled right before the atom changes the value of light_on to a different one, from base atom/set_light_on(): (new_value)
COMSIG_ATOM_SET_LIGHT_FLAGSCalled right before the atom changes the value of light_flags to a different one, from base atom/set_light_flags(): (new_value)
COMSIG_ATOM_SET_OPACITYfrom base of atom/set_opacity(): (new_opacity)
COMSIG_ATOM_VV_MODIFY_TRANSFORMWhen the transform or an atom is varedited through vv topic.
COMSIG_ATOM_DROPPED_ONCalled when an atom has something mouse dropped on it, from /client/MouseDrop: (atom/dropped_on)
COMSIG_ATOM_DROP_ONCalled when an atom is mouse dropped on another atom, from /client/MouseDrop: (atom/dropped_onto)
COMSIG_ATOM_EMP_ACTCalled when an atom has emp_act called on it, from /atom/emp_act: (severity)

Define Details

+

COMSIG_ATOM_DECORATED + + +

+

From /atom/proc/Decorate

COMSIG_ATOM_DIR_CHANGE + + +

+

from base of atom/setDir(): (old_dir, new_dir). Called before the direction changes.

COMSIG_ATOM_DROPPED_ON + + +

+

Called when an atom has something mouse dropped on it, from /client/MouseDrop: (atom/dropped_on)

COMSIG_ATOM_DROP_ON + + +

+

Called when an atom is mouse dropped on another atom, from /client/MouseDrop: (atom/dropped_onto)

COMSIG_ATOM_EMP_ACT + + +

+

Called when an atom has emp_act called on it, from /atom/emp_act: (severity)

COMSIG_ATOM_HITBY + + +

+

from /atom/hitby(): (atom/movable/AM)

COMSIG_ATOM_ORBIT_BEGIN + + +

+

called when an atom starts orbiting another atom: (atom)

COMSIG_ATOM_ORBIT_STOP + + +

+

called when an atom stops orbiting another atom: (atom)

COMSIG_ATOM_SET_LIGHT_COLOR + + +

+

Called right before the atom changes the value of light_color to a different one, from base atom/set_light_color(): (new_color)

COMSIG_ATOM_SET_LIGHT_FLAGS + + +

+

Called right before the atom changes the value of light_flags to a different one, from base atom/set_light_flags(): (new_value)

COMSIG_ATOM_SET_LIGHT_ON + + +

+

Called right before the atom changes the value of light_on to a different one, from base atom/set_light_on(): (new_value)

COMSIG_ATOM_SET_LIGHT_POWER + + +

+

Called right before the atom changes the value of light_power to a different one, from base atom/set_light_power(): (new_power)

COMSIG_ATOM_SET_LIGHT_RANGE + + +

+

Called right before the atom changes the value of light_range to a different one, from base atom/set_light_range(): (new_range)

COMSIG_ATOM_SET_OPACITY + + +

+

from base of atom/set_opacity(): (new_opacity)

COMSIG_ATOM_TEMPORARY_ANIMATION_START + + +

+

generally called before temporary non-parallel animate()s on the atom (animation_duration)

COMSIG_ATOM_TURF_CHANGE + + +

+

from /turf/ChangeTurf

COMSIG_ATOM_VV_MODIFY_TRANSFORM + + +

+

When the transform or an atom is varedited through vv topic.

+ + + diff --git a/code/__DEFINES/dcs/signals/atom/signals_cell.html b/code/__DEFINES/dcs/signals/atom/signals_cell.html new file mode 100644 index 000000000000..579a09921699 --- /dev/null +++ b/code/__DEFINES/dcs/signals/atom/signals_cell.html @@ -0,0 +1,52 @@ + + + + + + + code/__DEFINES/dcs/signals/atom/signals_cell.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/atom/signals_cell.dm + +

+ + + + + + +
COMSIG_CELL_USE_CHARGE(charge_amount)
COMSIG_CELL_ADD_CHARGE(charge_amount)
COMSIG_CELL_TRY_RECHARGING(mob/living/user)
COMSIG_CELL_CHECK_CHARGE(charge_amount)
COMSIG_CELL_REMOVE_CELL(mob/living/user)

Define Details

+

COMSIG_CELL_ADD_CHARGE + + +

+

(charge_amount)

COMSIG_CELL_CHECK_CHARGE + + +

+

(charge_amount)

COMSIG_CELL_REMOVE_CELL + + +

+

(mob/living/user)

COMSIG_CELL_TRY_RECHARGING + + +

+

(mob/living/user)

COMSIG_CELL_USE_CHARGE + + +

+

(charge_amount)

+ + + diff --git a/code/__DEFINES/dcs/signals/atom/signals_item.html b/code/__DEFINES/dcs/signals/atom/signals_item.html new file mode 100644 index 000000000000..e3bd9a0402cb --- /dev/null +++ b/code/__DEFINES/dcs/signals/atom/signals_item.html @@ -0,0 +1,97 @@ + + + + + + + code/__DEFINES/dcs/signals/atom/signals_item.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/atom/signals_item.dm + +

+ + + + + + + + + + + + + + + +
COMSIG_ITEM_ATTACKEDfrom /obj/item/attackby() : (obj/item, mob/user)
COMSIG_ITEM_DROPPEDfrom base of obj/item/dropped(): (mob/user)
COMSIG_ITEM_EQUIPPEDFrom base of /obj/item/proc/equipped(): (mob/user, slot)
COMSIG_ITEM_UNEQUIPPEDFrom base of /obj/item/proc/unequipped(): (mob/user, slot)
COMSIG_ITEM_UNWIELDfrom /obj/item/proc/unwield
COMSIG_ITEM_ATTACK_SELFFrom base of /obj/item/proc/attack_self(): (mob/user)
COMSIG_SNACK_EATENfrom /obj/item/reagent_container/food/snacks/proc/On_Consume
COMSIG_BROADCAST_GO_LIVEfrom /obj/item/device/camera/broadcasting
COMSIG_ITEM_ATTEMPTING_EQUIPfrom /obj/item/proc/mob_can_equip
COMPONENT_CANCEL_EQUIPReturn this in response if you don't want items equipped
COMSIG_ITEM_ZOOMfrom /obj/item/proc/do_zoom() : (mob/user)
COMSIG_ITEM_UNZOOMfrom /obj/item/proc/unzoom() : (mob/user)
COMSIG_GUN_RECALCULATE_ATTACHMENT_BONUSESfrom /obj/item/weapon/gun/proc/recalculate_attachment_bonuses() : ()
COMSIG_GUN_INTERRUPT_FIREfrom /obj/item/weapon/gun/proc/load_into_chamber() : ()

Define Details

+

COMPONENT_CANCEL_EQUIP + + +

+

Return this in response if you don't want items equipped

COMSIG_BROADCAST_GO_LIVE + + +

+

from /obj/item/device/camera/broadcasting

COMSIG_GUN_INTERRUPT_FIRE + + +

+

from /obj/item/weapon/gun/proc/load_into_chamber() : ()

COMSIG_GUN_RECALCULATE_ATTACHMENT_BONUSES + + +

+

from /obj/item/weapon/gun/proc/recalculate_attachment_bonuses() : ()

COMSIG_ITEM_ATTACKED + + +

+

from /obj/item/attackby() : (obj/item, mob/user)

COMSIG_ITEM_ATTACK_SELF + + +

+

From base of /obj/item/proc/attack_self(): (mob/user)

COMSIG_ITEM_ATTEMPTING_EQUIP + + +

+

from /obj/item/proc/mob_can_equip

COMSIG_ITEM_DROPPED + + +

+

from base of obj/item/dropped(): (mob/user)

COMSIG_ITEM_EQUIPPED + + +

+

From base of /obj/item/proc/equipped(): (mob/user, slot)

COMSIG_ITEM_UNEQUIPPED + + +

+

From base of /obj/item/proc/unequipped(): (mob/user, slot)

COMSIG_ITEM_UNWIELD + + +

+

from /obj/item/proc/unwield

COMSIG_ITEM_UNZOOM + + +

+

from /obj/item/proc/unzoom() : (mob/user)

COMSIG_ITEM_ZOOM + + +

+

from /obj/item/proc/do_zoom() : (mob/user)

COMSIG_SNACK_EATEN + + +

+

from /obj/item/reagent_container/food/snacks/proc/On_Consume

+ + + diff --git a/code/__DEFINES/dcs/signals/atom/signals_movable.html b/code/__DEFINES/dcs/signals/atom/signals_movable.html new file mode 100644 index 000000000000..4529c6f73c0c --- /dev/null +++ b/code/__DEFINES/dcs/signals/atom/signals_movable.html @@ -0,0 +1,67 @@ + + + + + + + code/__DEFINES/dcs/signals/atom/signals_movable.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/atom/signals_movable.dm + +

+ + + + + + + + + +
COMSIG_MOVABLE_PRE_THROWFrom /atom/movable/proc/launch_towards
COMSIG_MOVABLE_MOVEDfrom base of atom/movable/Moved(): (/atom, dir, forced)
COMSIG_MOVABLE_PRE_MOVEFrom /atom/movable/Move(): (atom/NewLoc)
COMSIG_MOVABLE_ENTERED_RIVERFrom /turf/open/gm/river/Entered(): (turf/open/gm/river/river, covered)
COMSIG_MOVABLE_FORCEMOVE_PRE_CROSSEDFrom /atom/movable/proc/doMove: I think it only works with forceMove so watch out
COMSIG_MOVABLE_XENO_START_PULLINGfrom /mob/living/carbon/xenomorph/start_pulling(): (mob/living/carbon/xenomorph/X)
COMSIG_MOVABLE_SHUTTLE_CRUSHshuttle crushing something
COMSIG_MOVABLE_UPDATE_GLIDE_SIZEfrom base of /atom/movable/proc/set_glide_size(): (target)

Define Details

+

COMSIG_MOVABLE_ENTERED_RIVER + + +

+

From /turf/open/gm/river/Entered(): (turf/open/gm/river/river, covered)

COMSIG_MOVABLE_FORCEMOVE_PRE_CROSSED + + +

+

From /atom/movable/proc/doMove: I think it only works with forceMove so watch out

COMSIG_MOVABLE_MOVED + + +

+

from base of atom/movable/Moved(): (/atom, dir, forced)

COMSIG_MOVABLE_PRE_MOVE + + +

+

From /atom/movable/Move(): (atom/NewLoc)

COMSIG_MOVABLE_PRE_THROW + + +

+

From /atom/movable/proc/launch_towards

COMSIG_MOVABLE_SHUTTLE_CRUSH + + +

+

shuttle crushing something

COMSIG_MOVABLE_UPDATE_GLIDE_SIZE + + +

+

from base of /atom/movable/proc/set_glide_size(): (target)

COMSIG_MOVABLE_XENO_START_PULLING + + +

+

from /mob/living/carbon/xenomorph/start_pulling(): (mob/living/carbon/xenomorph/X)

+ + + diff --git a/code/__DEFINES/dcs/signals/atom/signals_obj.html b/code/__DEFINES/dcs/signals/atom/signals_obj.html new file mode 100644 index 000000000000..822d29da8cd8 --- /dev/null +++ b/code/__DEFINES/dcs/signals/atom/signals_obj.html @@ -0,0 +1,87 @@ + + + + + + + code/__DEFINES/dcs/signals/atom/signals_obj.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/atom/signals_obj.dm + +

+ + + + + + + + + + + + + +
COMSIG_WEEDNODE_GROWTH_COMPLETEFrom /obj/effect/alien/weeds/Initialize()
COMSIG_WEEDNODE_GROWTHFrom /obj/effect/alien/weeds/Initialize()
COMSIG_WEEDNODE_CANNOT_EXPAND_FURTHERFrom /obj/effect/alien/weeds/proc/on_weed_expand()
COMSIG_SHUTTLE_SETMODEshuttle mode change
COMSIG_TRANSMITTER_UPDATE_ICONfrom /obj/structure/transmitter/update_icon()
COMSIG_OBJ_AFTER_BUCKLEfrom /obj/proc/afterbuckle()
COMSIG_INTEL_DISK_LOST_POWERfrom /datum/cm_objective/retrieve_data/disk/process()
COMSIG_INTEL_DISK_COMPLETEDfrom /datum/cm_objective/retrieve_data/disk/complete()
COMSIG_ARC_ANTENNA_TOGGLEDfrom /obj/vehicle/multitile/arc/toggle_antenna()
COMSIG_CRYOPOD_GO_OUTfrom /obj/structure/machinery/cryopod/go_out()
COMSIG_VENDOR_SUCCESSFUL_VENDfrom /proc/vendor_successful_vend() : (obj/structure/machinery/cm_vending/vendor, list/itemspec, mob/living/carbon/human/user)
COMSIG_LIMB_STOP_BLEEDINGfrom /obj/limb/proc/remove_all_bleeding() : (external, internal)

Define Details

+

COMSIG_ARC_ANTENNA_TOGGLED + + +

+

from /obj/vehicle/multitile/arc/toggle_antenna()

COMSIG_CRYOPOD_GO_OUT + + +

+

from /obj/structure/machinery/cryopod/go_out()

COMSIG_INTEL_DISK_COMPLETED + + +

+

from /datum/cm_objective/retrieve_data/disk/complete()

COMSIG_INTEL_DISK_LOST_POWER + + +

+

from /datum/cm_objective/retrieve_data/disk/process()

COMSIG_LIMB_STOP_BLEEDING + + +

+

from /obj/limb/proc/remove_all_bleeding() : (external, internal)

COMSIG_OBJ_AFTER_BUCKLE + + +

+

from /obj/proc/afterbuckle()

COMSIG_SHUTTLE_SETMODE + + +

+

shuttle mode change

COMSIG_TRANSMITTER_UPDATE_ICON + + +

+

from /obj/structure/transmitter/update_icon()

COMSIG_VENDOR_SUCCESSFUL_VEND + + +

+

from /proc/vendor_successful_vend() : (obj/structure/machinery/cm_vending/vendor, list/itemspec, mob/living/carbon/human/user)

COMSIG_WEEDNODE_CANNOT_EXPAND_FURTHER + + +

+

From /obj/effect/alien/weeds/proc/on_weed_expand()

COMSIG_WEEDNODE_GROWTH + + +

+

From /obj/effect/alien/weeds/Initialize()

COMSIG_WEEDNODE_GROWTH_COMPLETE + + +

+

From /obj/effect/alien/weeds/Initialize()

+ + + diff --git a/code/__DEFINES/dcs/signals/atom/signals_projectile.html b/code/__DEFINES/dcs/signals/atom/signals_projectile.html new file mode 100644 index 000000000000..d547f1168353 --- /dev/null +++ b/code/__DEFINES/dcs/signals/atom/signals_projectile.html @@ -0,0 +1,94 @@ + + + + + + + code/__DEFINES/dcs/signals/atom/signals_projectile.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/atom/signals_projectile.dm + +

+ + + + + + + + + + + + + + +
COMSIG_BULLET_ACT_LIVINGCalled when a bullet hits a living mob
COMSIG_POST_BULLET_ACT_HUMANCalled when a bullet hits a human
COMSIG_BULLET_ACT_XENOCalled when a bullet hits a xenomorph
COMSIG_BULLET_USER_EFFECTSApply any effects to the bullet (primarily through bullet traits) +based on the user
COMSIG_BULLET_CHECK_MOB_SKIPPINGCalled when checking whether bullet should skip mob for whatever reasons (like IFF)
COMSIG_AMMO_POINT_BLANKCalled on point blank for ammo effects
COMSIG_BULLET_PRE_HANDLE_MOBFrom /obj/projectile/handle_mob(): (mob/living/target)
COMSIG_BULLET_POST_HANDLE_MOBFrom /obj/projectile/handle_mob(): (mob/living/target)
COMSIG_BULLET_POST_HANDLE_OBJFrom /obj/projectile/handle_obj(): (obj/target, did_hit)
COMSIG_BULLET_PRE_HANDLE_OBJFrom /obj/projectile/handle_obj(): (obj/target)
COMSIG_BULLET_POST_HANDLE_TURFFrom /obj/projectile/scan_a_turf(): (turf/target)
COMSIG_BULLET_PRE_HANDLE_TURFFrom /obj/projectile/scan_a_turf(): (turf/target)
COMSIG_BULLET_DIRECT_HITCalled when a bullet hits a living mob on a sprite click (original target is final target)

Define Details

+

COMSIG_AMMO_POINT_BLANK + + +

+

Called on point blank for ammo effects

COMSIG_BULLET_ACT_LIVING + + +

+

Called when a bullet hits a living mob

COMSIG_BULLET_ACT_XENO + + +

+

Called when a bullet hits a xenomorph

COMSIG_BULLET_CHECK_MOB_SKIPPING + + +

+

Called when checking whether bullet should skip mob for whatever reasons (like IFF)

COMSIG_BULLET_DIRECT_HIT + + +

+

Called when a bullet hits a living mob on a sprite click (original target is final target)

COMSIG_BULLET_POST_HANDLE_MOB + + +

+

From /obj/projectile/handle_mob(): (mob/living/target)

COMSIG_BULLET_POST_HANDLE_OBJ + + +

+

From /obj/projectile/handle_obj(): (obj/target, did_hit)

COMSIG_BULLET_POST_HANDLE_TURF + + +

+

From /obj/projectile/scan_a_turf(): (turf/target)

COMSIG_BULLET_PRE_HANDLE_MOB + + +

+

From /obj/projectile/handle_mob(): (mob/living/target)

COMSIG_BULLET_PRE_HANDLE_OBJ + + +

+

From /obj/projectile/handle_obj(): (obj/target)

COMSIG_BULLET_PRE_HANDLE_TURF + + +

+

From /obj/projectile/scan_a_turf(): (turf/target)

COMSIG_BULLET_USER_EFFECTS + + +

+

Apply any effects to the bullet (primarily through bullet traits) +based on the user

COMSIG_POST_BULLET_ACT_HUMAN + + +

+

Called when a bullet hits a human

+ + + diff --git a/code/__DEFINES/dcs/signals/atom/signals_turf.html b/code/__DEFINES/dcs/signals/atom/signals_turf.html new file mode 100644 index 000000000000..184ce65e24c7 --- /dev/null +++ b/code/__DEFINES/dcs/signals/atom/signals_turf.html @@ -0,0 +1,57 @@ + + + + + + + code/__DEFINES/dcs/signals/atom/signals_turf.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/atom/signals_turf.dm + +

+ + + + + + + +
COMSIG_MOVABLE_TURF_ENTEREDfrom /turf/Entered
COMSIG_TURF_BULLET_ACTCalled when a bullet hits a turf
COMSIG_WALL_RESIN_XENO_ATTACKFrom /turf/closed/wall/resin/attack_alien(): (mob/living/carbon/xenomorph/X)
COMSIG_WALL_RESIN_ATTACKBYFrom /turf/closed/wall/resin/attackby(): (obj/item/I, mob/M)
COMSIG_POSTER_PLACEDfrom /turf/closed/wall/proc/place_poster
COMSIG_TURF_RESERVATION_RELEASEDfrom base of /datum/turf_reservation/proc/Release: (datum/turf_reservation/reservation)

Define Details

+

COMSIG_MOVABLE_TURF_ENTERED + + +

+

from /turf/Entered

COMSIG_POSTER_PLACED + + +

+

from /turf/closed/wall/proc/place_poster

COMSIG_TURF_BULLET_ACT + + +

+

Called when a bullet hits a turf

COMSIG_TURF_RESERVATION_RELEASED + + +

+

from base of /datum/turf_reservation/proc/Release: (datum/turf_reservation/reservation)

COMSIG_WALL_RESIN_ATTACKBY + + +

+

From /turf/closed/wall/resin/attackby(): (obj/item/I, mob/M)

COMSIG_WALL_RESIN_XENO_ATTACK + + +

+

From /turf/closed/wall/resin/attack_alien(): (mob/living/carbon/xenomorph/X)

+ + + diff --git a/code/__DEFINES/dcs/signals/signals_admin.html b/code/__DEFINES/dcs/signals/signals_admin.html new file mode 100644 index 000000000000..2601048d569e --- /dev/null +++ b/code/__DEFINES/dcs/signals/signals_admin.html @@ -0,0 +1,37 @@ + + + + + + + code/__DEFINES/dcs/signals/signals_admin.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/signals_admin.dm + +

+ + + +
COMSIG_ADMIN_HELP_REPLIEDCalled on the /datum/admin_help when the player replies. From /client/proc/cmd_admin_pm().
COMSIG_ADMIN_HELP_RECEIVEDCalled on a client when a player receives an adminhelp. From /client/proc/receive_ahelp(message)

Define Details

+

COMSIG_ADMIN_HELP_RECEIVED + + +

+

Called on a client when a player receives an adminhelp. From /client/proc/receive_ahelp(message)

COMSIG_ADMIN_HELP_REPLIED + + +

+

Called on the /datum/admin_help when the player replies. From /client/proc/cmd_admin_pm().

+ + + diff --git a/code/__DEFINES/dcs/signals/signals_client.html b/code/__DEFINES/dcs/signals/signals_client.html new file mode 100644 index 000000000000..a5e9f4e4b834 --- /dev/null +++ b/code/__DEFINES/dcs/signals/signals_client.html @@ -0,0 +1,57 @@ + + + + + + + code/__DEFINES/dcs/signals/signals_client.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/signals_client.dm + +

+ + + + + + + +
COMSIG_CLIENT_PRE_CLICKfrom /mob/do_click(): (atom/A, list/mods)
COMSIG_CLIENT_VERB_ADDEDCalled after one or more verbs are added: (list of verbs added)
COMSIG_CLIENT_VERB_REMOVEDCalled after one or more verbs are added: (list of verbs added)
COMSIG_CLIENT_MOB_LOGGED_INCalled from /mob/Login() after a client logs into a mob: (mob)
COMSIG_CLIENT_SCREEN_ADDCalled when something is added to a client's screen : /client/proc/add_to_screen(screen_add)
COMSIG_CLIENT_SCREEN_REMOVECalled when something is removed from a client's screen : /client/proc/remove_from_screen(screen_remove)

Define Details

+

COMSIG_CLIENT_MOB_LOGGED_IN + + +

+

Called from /mob/Login() after a client logs into a mob: (mob)

COMSIG_CLIENT_PRE_CLICK + + +

+

from /mob/do_click(): (atom/A, list/mods)

COMSIG_CLIENT_SCREEN_ADD + + +

+

Called when something is added to a client's screen : /client/proc/add_to_screen(screen_add)

COMSIG_CLIENT_SCREEN_REMOVE + + +

+

Called when something is removed from a client's screen : /client/proc/remove_from_screen(screen_remove)

COMSIG_CLIENT_VERB_ADDED + + +

+

Called after one or more verbs are added: (list of verbs added)

COMSIG_CLIENT_VERB_REMOVED + + +

+

Called after one or more verbs are added: (list of verbs added)

+ + + diff --git a/code/__DEFINES/dcs/signals/signals_datum.html b/code/__DEFINES/dcs/signals/signals_datum.html new file mode 100644 index 000000000000..140e51eb1e26 --- /dev/null +++ b/code/__DEFINES/dcs/signals/signals_datum.html @@ -0,0 +1,132 @@ + + + + + + + code/__DEFINES/dcs/signals/signals_datum.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/signals_datum.dm + +

+ + + + + + + + + + + + + + + + + + + + + + +
COMSIG_COMPONENT_ADDEDwhen a component is added to a datum: (/datum/component)
COMSIG_COMPONENT_REMOVINGbefore a component is removed from a datum because of RemoveComponent: (/datum/component)
COMSIG_PARENT_PREQDELETEDbefore a datum's Destroy() is called: (force), returning a COMPONENT_ABORT_QDEL value will cancel the qdel operation
COMSIG_PARENT_QDELETINGjust before a datum's Destroy() is called: (force), at this point none of the other components chose to interrupt qdel and Destroy will be called
COMSIG_TOPICgeneric topic handler (usr, href_list)
COMSIG_UI_ACTfrom datum ui_act (usr, action)
COMSIG_PARENT_ATTACKBYfrom base of atom/attackby(): (/obj/item, /mob/living, params)
COMPONENT_NO_AFTERATTACKReturn this in response if you don't want afterattack to be called
COMSIG_PARENT_EXAMINEfrom base of atom/examine(): (/mob, list/examine_text)
COMSIG_VV_TOPIChandler for vv_do_topic (usr, href_list)
COMSIG_ELEMENT_ATTACHfires on the target datum when an element is attached to it (/datum/element)
COMSIG_ELEMENT_DETACHfires on the target datum when an element is attached to it (/datum/element)
COMSIG_ACTION_GIVENFrom /datum/action/proc/give_to(): (mob/owner)
COMSIG_ACTION_REMOVEDFrom base of /datum/action/proc/remove_from(): (mob/owner)
COMSIG_ACTION_HIDDENFrom base of /datum/action/proc/hide_from(): (mob/owner)
COMSIG_ACTION_UNHIDDENFrom base of /datum/action/proc/unhide_from(): (mob/owner)
COMSIG_ACTION_ACTIVATEDFrom base of /datum/action/proc/action_activate() : ()
COMSIG_BONUS_DAMAGEfrom /datum/component/bonus_damage_stack
COMSIG_SET_SQUADfrom /datum/squad/proc/put_marine_in_squad
COMSIG_DROP_RETRIEVAL_CHECKFrom /datum/element/drop_retrieval usage: /obj/item/attachable/magnetic_harness/can_be_attached_to_gun(), /obj/item/storage/pouch/sling/can_be_inserted() (/obj/item/I)
COMSIG_LAZY_TEMPLATE_LOADEDFired on the lazy template datum when the template is finished loading. (list/loaded_atom_movables, list/loaded_turfs, list/loaded_areas)

Define Details

+

COMPONENT_NO_AFTERATTACK + + +

+

Return this in response if you don't want afterattack to be called

COMSIG_ACTION_ACTIVATED + + +

+

From base of /datum/action/proc/action_activate() : ()

COMSIG_ACTION_GIVEN + + +

+

From /datum/action/proc/give_to(): (mob/owner)

COMSIG_ACTION_HIDDEN + + +

+

From base of /datum/action/proc/hide_from(): (mob/owner)

COMSIG_ACTION_REMOVED + + +

+

From base of /datum/action/proc/remove_from(): (mob/owner)

COMSIG_ACTION_UNHIDDEN + + +

+

From base of /datum/action/proc/unhide_from(): (mob/owner)

COMSIG_BONUS_DAMAGE + + +

+

from /datum/component/bonus_damage_stack

COMSIG_COMPONENT_ADDED + + +

+

when a component is added to a datum: (/datum/component)

COMSIG_COMPONENT_REMOVING + + +

+

before a component is removed from a datum because of RemoveComponent: (/datum/component)

COMSIG_DROP_RETRIEVAL_CHECK + + +

+

From /datum/element/drop_retrieval usage: /obj/item/attachable/magnetic_harness/can_be_attached_to_gun(), /obj/item/storage/pouch/sling/can_be_inserted() (/obj/item/I)

COMSIG_ELEMENT_ATTACH + + +

+

fires on the target datum when an element is attached to it (/datum/element)

COMSIG_ELEMENT_DETACH + + +

+

fires on the target datum when an element is attached to it (/datum/element)

COMSIG_LAZY_TEMPLATE_LOADED + + +

+

Fired on the lazy template datum when the template is finished loading. (list/loaded_atom_movables, list/loaded_turfs, list/loaded_areas)

COMSIG_PARENT_ATTACKBY + + +

+

from base of atom/attackby(): (/obj/item, /mob/living, params)

COMSIG_PARENT_EXAMINE + + +

+

from base of atom/examine(): (/mob, list/examine_text)

COMSIG_PARENT_PREQDELETED + + +

+

before a datum's Destroy() is called: (force), returning a COMPONENT_ABORT_QDEL value will cancel the qdel operation

COMSIG_PARENT_QDELETING + + +

+

just before a datum's Destroy() is called: (force), at this point none of the other components chose to interrupt qdel and Destroy will be called

COMSIG_SET_SQUAD + + +

+

from /datum/squad/proc/put_marine_in_squad

COMSIG_TOPIC + + +

+

generic topic handler (usr, href_list)

COMSIG_UI_ACT + + +

+

from datum ui_act (usr, action)

COMSIG_VV_TOPIC + + +

+

handler for vv_do_topic (usr, href_list)

+ + + diff --git a/code/__DEFINES/dcs/signals/signals_global.html b/code/__DEFINES/dcs/signals/signals_global.html new file mode 100644 index 000000000000..ca1f7df5967a --- /dev/null +++ b/code/__DEFINES/dcs/signals/signals_global.html @@ -0,0 +1,152 @@ + + + + + + + code/__DEFINES/dcs/signals/signals_global.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/signals_global.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
COMSIG_GLOB_NEW_Zfrom base of datum/controller/subsystem/mapping/proc/add_new_zlevel(): (list/args)
COMSIG_GLOB_EXPANDED_WORLD_BOUNDSsent after world.maxx and/or world.maxy are expanded: (has_exapnded_world_maxx, has_expanded_world_maxy)
COMSIG_GLOB_VEHICLE_ORDEREDfrom base of datum/controller/subsystem/mapping/proc/add_new_zlevel(): (list/args)
COMSIG_GLOB_MODE_PREGAME_LOBBYfrom /datum/controller/subsystem/ticker/fire
COMSIG_GLOB_MODE_PRESETUPfrom /datum/game_mode/proc/pre_setup
COMSIG_GLOB_MODE_POSTSETUPfrom /datum/game_mode/proc/post_setup
COMSIG_GLOB_DS_FIRST_LANDEDfrom /datum/game_mode/proc/ds_first_landed
COMSIG_GLOB_MARINE_DEATHfrom /mob/living/carbon/human/death
COMSIG_GLOB_XENO_DEATHfrom /mob/living/carbon/xenomorph/death
COMSIG_GLOB_VAR_EDITcalled after a successful var edit somewhere in the world: (list/args)
COMSIG_GLOB_XENO_SPAWNfrom /mob/living/carbon/xenomorph/initialize
COMSIG_GLOB_CLIENT_LOGGED_INCalled from /client/New() when a client logs in to the game: (client)
COMSIG_GLOB_MOB_LOGGED_INCalled from /mob/Login() when a client logs into a mob: (mob)
COMSIG_GLOB_POST_SETUPfrom /datum/controller/subsystem/ticker/PostSetup
COMSIG_GLOB_SECURITY_LEVEL_CHANGEDfrom /proc/set_security_level
COMSIG_GLOB_RANDOM_EVENTCalled by (/datum/round_event_control/RunEvent).
CANCEL_RANDOM_EVENTDo not allow this random event to continue.
COMSIG_GLOB_GROUNDSIDE_TELECOMM_TURNED_OFFFrom /obj/structure/machinery/telecomms/proc/tcomms_shutdown(), called when the relay turns off
COMSIG_GLOB_PREDATOR_ROUND_TOGGLEDFrom /datum/admins/proc/force_predator_round()
COMSIG_GLOB_GROUNDSIDE_FORSAKEN_HANDLINGFrom /datum/game_mode/colonialmarines/proc/check_ground_humans()
COMSIG_GLOB_YAUTJA_ARMORY_OPENEDFrom
COMSIG_GLOB_RESEARCH_LOCKDOWNFrom /proc/biohazard_lockdown()
COMSIG_GLOB_AICORE_LOCKDOWNFrom /proc/aicore_lockdown()
COMSIG_GLOB_GENERATOR_SET_OVERLOADINGFrom /obj/structure/machinery/power/reactor/proc/set_overloading() : (set_overloading)
COMSIG_GLOB_FUEL_PUMP_UPDATEFrom /datum/controller/subsystem/hijack/fire()

Define Details

+

CANCEL_RANDOM_EVENT + + +

+

Do not allow this random event to continue.

COMSIG_GLOB_AICORE_LOCKDOWN + + +

+

From /proc/aicore_lockdown()

COMSIG_GLOB_CLIENT_LOGGED_IN + + +

+

Called from /client/New() when a client logs in to the game: (client)

COMSIG_GLOB_DS_FIRST_LANDED + + +

+

from /datum/game_mode/proc/ds_first_landed

COMSIG_GLOB_EXPANDED_WORLD_BOUNDS + + +

+

sent after world.maxx and/or world.maxy are expanded: (has_exapnded_world_maxx, has_expanded_world_maxy)

COMSIG_GLOB_FUEL_PUMP_UPDATE + + +

+

From /datum/controller/subsystem/hijack/fire()

COMSIG_GLOB_GENERATOR_SET_OVERLOADING + + +

+

From /obj/structure/machinery/power/reactor/proc/set_overloading() : (set_overloading)

COMSIG_GLOB_GROUNDSIDE_FORSAKEN_HANDLING + + +

+

From /datum/game_mode/colonialmarines/proc/check_ground_humans()

COMSIG_GLOB_GROUNDSIDE_TELECOMM_TURNED_OFF + + +

+

From /obj/structure/machinery/telecomms/proc/tcomms_shutdown(), called when the relay turns off

COMSIG_GLOB_MARINE_DEATH + + +

+

from /mob/living/carbon/human/death

COMSIG_GLOB_MOB_LOGGED_IN + + +

+

Called from /mob/Login() when a client logs into a mob: (mob)

COMSIG_GLOB_MODE_POSTSETUP + + +

+

from /datum/game_mode/proc/post_setup

COMSIG_GLOB_MODE_PREGAME_LOBBY + + +

+

from /datum/controller/subsystem/ticker/fire

COMSIG_GLOB_MODE_PRESETUP + + +

+

from /datum/game_mode/proc/pre_setup

COMSIG_GLOB_NEW_Z + + +

+

from base of datum/controller/subsystem/mapping/proc/add_new_zlevel(): (list/args)

COMSIG_GLOB_POST_SETUP + + +

+

from /datum/controller/subsystem/ticker/PostSetup

COMSIG_GLOB_PREDATOR_ROUND_TOGGLED + + +

+

From /datum/admins/proc/force_predator_round()

COMSIG_GLOB_RANDOM_EVENT + + +

+

Called by (/datum/round_event_control/RunEvent).

COMSIG_GLOB_RESEARCH_LOCKDOWN + + +

+

From /proc/biohazard_lockdown()

COMSIG_GLOB_SECURITY_LEVEL_CHANGED + + +

+

from /proc/set_security_level

COMSIG_GLOB_VAR_EDIT + + +

+

called after a successful var edit somewhere in the world: (list/args)

COMSIG_GLOB_VEHICLE_ORDERED + + +

+

from base of datum/controller/subsystem/mapping/proc/add_new_zlevel(): (list/args)

COMSIG_GLOB_XENO_DEATH + + +

+

from /mob/living/carbon/xenomorph/death

COMSIG_GLOB_XENO_SPAWN + + +

+

from /mob/living/carbon/xenomorph/initialize

COMSIG_GLOB_YAUTJA_ARMORY_OPENED + + +

+

From

+ + + diff --git a/code/__DEFINES/dcs/signals/signals_subsystem.html b/code/__DEFINES/dcs/signals/signals_subsystem.html new file mode 100644 index 000000000000..c0e197a6785c --- /dev/null +++ b/code/__DEFINES/dcs/signals/signals_subsystem.html @@ -0,0 +1,39 @@ + + + + + + + code/__DEFINES/dcs/signals/signals_subsystem.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/signals_subsystem.dm + +

+ + + +
COMSIG_SUBSYSTEM_POST_INITIALIZESubsystem signals +From base of datum/controller/subsystem/Initialize
COMSIG_SSRADIO_GET_AVAILABLE_TCOMMS_ZSfrom /datum/controller/subsystem/radio/get_available_tcomm_zs(): (list/tcomms)

Define Details

+

COMSIG_SSRADIO_GET_AVAILABLE_TCOMMS_ZS + + +

+

from /datum/controller/subsystem/radio/get_available_tcomm_zs(): (list/tcomms)

COMSIG_SUBSYSTEM_POST_INITIALIZE + + +

+

Subsystem signals +From base of datum/controller/subsystem/Initialize

+ + + diff --git a/code/__DEFINES/equipment.html b/code/__DEFINES/equipment.html new file mode 100644 index 000000000000..1f351ba97285 --- /dev/null +++ b/code/__DEFINES/equipment.html @@ -0,0 +1,417 @@ + + + + + + + code/__DEFINES/equipment.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/equipment.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NOINTERACTYou can't interact with it, at all. Useful when doing certain animations.
FPRINTtakes a fingerprint
CONDUCTconducts electricity (metal etc.)
ON_BORDER'border object'. item has priority to check when entering or leaving
NOBLOODYDon't want a blood overlay on this one.
DIRLOCKmovable atom won't change direction when Moving()ing. Useful for items that have several dir states.
NOREACTReagents dont' react inside this container.
OPENCONTAINERis an open container for chemistry purposes
RELAY_CLICKThis is used for /obj/ that relay your clicks via handle_click(), mostly for MGs ~Art
ITEM_UNCATCHABLEThe item can't be caught out of the air.
NO_NAME_OVERRIDEUsed for nonstandard marine clothing to ignore 'specialty' var.
NO_SNOW_TYPEUsed for armors or uniforms that don't have a snow/desert/etc icon state set via select_gamemode_skin (not all item types currently perform this test though).
CAN_BE_SYRINGEDsyringes can inject or drain reagents in this even if it isn't an OPENCONTAINER
CAN_BE_DISPENSED_INTOChem dispenser can dispense in this even if it isn't an OPENCONTAINER
INITIALIZEDInitialized by SSatoms.
ATOM_DECORATEDHas run Decorate() as part of subsystem init
USES_HEARINGWhether or not the object uses hearing
HTML_USE_INITAL_ICONShould we use the initial icon for display? Mostly used by overlay only objects
NODROPCannot be dropped/unequipped at all, only deleted.
NOBLUDGEONwhen an item has this it produces no "X has been hit by Y with Z" message with the default handler
NOSHIELDweapon not affected by shield (does nothing currently)
DELONDROPDeletes on drop instead of falling on the floor.
TWOHANDEDThe item is twohanded.
WIELDEDThe item is wielded with both hands.
ITEM_ABSTRACTThe item is abstract (grab, powerloader_clamp, etc)
ITEM_PREDATORSpecific predator item interactions.
MOB_LOCK_ON_EQUIPLock this item to the mob that equips it up until permadeath
NO_CRYO_STOREThis item deletes itself when put in cryo storage
ITEM_OVERRIDE_NORTHFACEFor backpacks if they should have unique layering functions
CAN_DIG_SHRAPNELwhether activating it digs shrapnel out of the user and striking others with medical skills can dig shapnel out of other people.
ANIMATED_SURGICAL_TOOLwhether it has an animated icon state of "[icon_state]_on" to be used during surgeries.
IGNITING_ITEMHas heat source but isn't 'on fire' and thus can be stored
FORCEDROP_CONDITIONALOverrides NODROP in some cases (stripping)
SMARTGUNNER_BACKPACK_OVERRIDEOverrides smartgunner not being able to wear backpacks
HIDEEARS(ears means headsets and such)
HIDEEYES(eyes means glasses)
HIDELOWHAIRtemporarily removes the user's facial hair overlay.
HIDETOPHAIRtemporarily removes the user's hair overlay. Leaves facial hair.
HIDEALLHAIRtemporarily removes the user's hair, facial and otherwise.
HIDEFACEDictates whether we appear as unknown.
COVEREYESCovers the eyes/protects them.
COVERMOUTHCovers the mouth.
ALLOWINTERNALSmask allows internals
ALLOWREBREATHMask allows to breath in really hot or really cold air.
BLOCKGASEFFECTblocks the effect that chemical clouds would have on a mob --glasses, mask and helmets
ALLOWCPRAllows CPR even though the face is covered by a mask
FULL_DECAP_PROTECTIONHelmet does not fall off when blocking a decapitation
BLOCKSHARPOBJFrom /tg: prevents syringes, parapens and hypos if the external suit or helmet (if targeting head) has this flag. Example: space suits, biosuit, bombsuits, thick suits that cover your body.
NOPRESSUREDMAGEThis flag is used on the flags variable for SUIT and HEAD items which stop pressure damage.
BLOCK_KNOCKDOWNSuits only. Wearing this will stop you from being pushed over.
SMARTGUN_HARNESSWhether wearing this suit grants you the ability to fire a smartgun
VISION_IMPAIR_NONENo visual impairment
VISION_IMPAIR_MIN1 tile of partial impairment
VISION_IMPAIR_WEAK2 tiles of partial impairment
VISION_IMPAIR_MED3 tiles of partial impairment
VISION_IMPAIR_HIGH1 tile of full and 2 of partial impairment
VISION_IMPAIR_STRONG2 tiles of full and 2 of partial impairment
VISION_IMPAIR_MAX3 tiles of full and 2 of partial impairment (original one)
UNIFORM_SLEEVE_ROLLABLEcan we roll the sleeves on this uniform?
UNIFORM_SLEEVE_CUTTABLEcan the sleeves be cut?
UNIFORM_JACKET_REMOVABLEcan the jacket be removed?
UNIFORM_DO_NOT_HIDE_ACCESSORIESare accessories never hidden by sleeve/jacket state? (meant for snow uniform which rolls collar instead of sleeves)
SLOT_BLOCK_SUIT_STOREAnything with this flag cannot be worn in suit storage, period.
SPACE_HELMET_MIN_COLD_PROTwhat min_cold_protection_temperature is set to for space-helmet quality headwear. MUST NOT BE 0.
SPACE_SUIT_MIN_COLD_PROTwhat min_cold_protection_temperature is set to for space-suit quality jumpsuits or suits. MUST NOT BE 0.
SPACE_SUIT_MAX_HEAT_PROTThese need better heat protect, but not as good heat protect as firesuits.
FIRESUIT_MAX_HEAT_PROTwhat max_heat_protection_temperature is set to for firesuit quality headwear. MUST NOT BE 0.
FIRE_HELMET_MAX_HEAT_PROTfor fire helmet quality items (red and white hardhats)
HELMET_MIN_COLD_PROTFor normal helmets
HELMET_MAX_HEAT_PROTFor normal helmets
ARMOR_MIN_COLD_PROTFor armor
ARMOR_MAX_HEAT_PROTFor armor
GLOVES_MIN_COLD_PROTFor some gloves (black and)
GLOVES_MAX_HEAT_PROTFor some gloves
SHOE_MIN_COLD_PROTFor shoes
SHOE_MAX_HEAT_PROTFor shoes
ICE_PLANET_MIN_COLD_PROTFor the ice planet map protection from the elements.
ACCESSORY_SLOT_ARMOR_CUsed for uniform armor inserts.

Define Details

+

ACCESSORY_SLOT_ARMOR_C + + +

+

Used for uniform armor inserts.

ALLOWCPR + + +

+

Allows CPR even though the face is covered by a mask

ALLOWINTERNALS + + +

+

mask allows internals

ALLOWREBREATH + + +

+

Mask allows to breath in really hot or really cold air.

ANIMATED_SURGICAL_TOOL + + +

+

whether it has an animated icon state of "[icon_state]_on" to be used during surgeries.

ARMOR_MAX_HEAT_PROT + + +

+

For armor

ARMOR_MIN_COLD_PROT + + +

+

For armor

ATOM_DECORATED + + +

+

Has run Decorate() as part of subsystem init

BLOCKGASEFFECT + + +

+

blocks the effect that chemical clouds would have on a mob --glasses, mask and helmets

BLOCKSHARPOBJ + + +

+

From /tg: prevents syringes, parapens and hypos if the external suit or helmet (if targeting head) has this flag. Example: space suits, biosuit, bombsuits, thick suits that cover your body.

BLOCK_KNOCKDOWN + + +

+

Suits only. Wearing this will stop you from being pushed over.

CAN_BE_DISPENSED_INTO + + +

+

Chem dispenser can dispense in this even if it isn't an OPENCONTAINER

CAN_BE_SYRINGED + + +

+

syringes can inject or drain reagents in this even if it isn't an OPENCONTAINER

CAN_DIG_SHRAPNEL + + +

+

whether activating it digs shrapnel out of the user and striking others with medical skills can dig shapnel out of other people.

CONDUCT + + +

+

conducts electricity (metal etc.)

COVEREYES + + +

+

Covers the eyes/protects them.

COVERMOUTH + + +

+

Covers the mouth.

DELONDROP + + +

+

Deletes on drop instead of falling on the floor.

DIRLOCK + + +

+

movable atom won't change direction when Moving()ing. Useful for items that have several dir states.

FIRESUIT_MAX_HEAT_PROT + + +

+

what max_heat_protection_temperature is set to for firesuit quality headwear. MUST NOT BE 0.

FIRE_HELMET_MAX_HEAT_PROT + + +

+

for fire helmet quality items (red and white hardhats)

FORCEDROP_CONDITIONAL + + +

+

Overrides NODROP in some cases (stripping)

FPRINT + + +

+

takes a fingerprint

FULL_DECAP_PROTECTION + + +

+

Helmet does not fall off when blocking a decapitation

GLOVES_MAX_HEAT_PROT + + +

+

For some gloves

GLOVES_MIN_COLD_PROT + + +

+

For some gloves (black and)

HELMET_MAX_HEAT_PROT + + +

+

For normal helmets

HELMET_MIN_COLD_PROT + + +

+

For normal helmets

HIDEALLHAIR + + +

+

temporarily removes the user's hair, facial and otherwise.

HIDEEARS + + +

+

(ears means headsets and such)

HIDEEYES + + +

+

(eyes means glasses)

HIDEFACE + + +

+

Dictates whether we appear as unknown.

HIDELOWHAIR + + +

+

temporarily removes the user's facial hair overlay.

HIDETOPHAIR + + +

+

temporarily removes the user's hair overlay. Leaves facial hair.

HTML_USE_INITAL_ICON + + +

+

Should we use the initial icon for display? Mostly used by overlay only objects

ICE_PLANET_MIN_COLD_PROT + + +

+

For the ice planet map protection from the elements.

IGNITING_ITEM + + +

+

Has heat source but isn't 'on fire' and thus can be stored

INITIALIZED + + +

+

Initialized by SSatoms.

ITEM_ABSTRACT + + +

+

The item is abstract (grab, powerloader_clamp, etc)

ITEM_OVERRIDE_NORTHFACE + + +

+

For backpacks if they should have unique layering functions

ITEM_PREDATOR + + +

+

Specific predator item interactions.

ITEM_UNCATCHABLE + + +

+

The item can't be caught out of the air.

MOB_LOCK_ON_EQUIP + + +

+

Lock this item to the mob that equips it up until permadeath

NOBLOODY + + +

+

Don't want a blood overlay on this one.

NOBLUDGEON + + +

+

when an item has this it produces no "X has been hit by Y with Z" message with the default handler

NODROP + + +

+

Cannot be dropped/unequipped at all, only deleted.

NOINTERACT + + +

+

You can't interact with it, at all. Useful when doing certain animations.

NOPRESSUREDMAGE + + +

+

This flag is used on the flags variable for SUIT and HEAD items which stop pressure damage.

NOREACT + + +

+

Reagents dont' react inside this container.

NOSHIELD + + +

+

weapon not affected by shield (does nothing currently)

NO_CRYO_STORE + + +

+

This item deletes itself when put in cryo storage

NO_NAME_OVERRIDE + + +

+

Used for nonstandard marine clothing to ignore 'specialty' var.

NO_SNOW_TYPE + + +

+

Used for armors or uniforms that don't have a snow/desert/etc icon state set via select_gamemode_skin (not all item types currently perform this test though).

ON_BORDER + + +

+

'border object'. item has priority to check when entering or leaving

OPENCONTAINER + + +

+

is an open container for chemistry purposes

RELAY_CLICK + + +

+

This is used for /obj/ that relay your clicks via handle_click(), mostly for MGs ~Art

SHOE_MAX_HEAT_PROT + + +

+

For shoes

SHOE_MIN_COLD_PROT + + +

+

For shoes

SLOT_BLOCK_SUIT_STORE + + +

+

Anything with this flag cannot be worn in suit storage, period.

SMARTGUNNER_BACKPACK_OVERRIDE + + +

+

Overrides smartgunner not being able to wear backpacks

SMARTGUN_HARNESS + + +

+

Whether wearing this suit grants you the ability to fire a smartgun

SPACE_HELMET_MIN_COLD_PROT + + +

+

what min_cold_protection_temperature is set to for space-helmet quality headwear. MUST NOT BE 0.

SPACE_SUIT_MAX_HEAT_PROT + + +

+

These need better heat protect, but not as good heat protect as firesuits.

SPACE_SUIT_MIN_COLD_PROT + + +

+

what min_cold_protection_temperature is set to for space-suit quality jumpsuits or suits. MUST NOT BE 0.

TWOHANDED + + +

+

The item is twohanded.

UNIFORM_DO_NOT_HIDE_ACCESSORIES + + +

+

are accessories never hidden by sleeve/jacket state? (meant for snow uniform which rolls collar instead of sleeves)

UNIFORM_JACKET_REMOVABLE + + +

+

can the jacket be removed?

UNIFORM_SLEEVE_CUTTABLE + + +

+

can the sleeves be cut?

UNIFORM_SLEEVE_ROLLABLE + + +

+

can we roll the sleeves on this uniform?

USES_HEARING + + +

+

Whether or not the object uses hearing

VISION_IMPAIR_HIGH + + +

+

1 tile of full and 2 of partial impairment

VISION_IMPAIR_MAX + + +

+

3 tiles of full and 2 of partial impairment (original one)

VISION_IMPAIR_MED + + +

+

3 tiles of partial impairment

VISION_IMPAIR_MIN + + +

+

1 tile of partial impairment

VISION_IMPAIR_NONE + + +

+

No visual impairment

VISION_IMPAIR_STRONG + + +

+

2 tiles of full and 2 of partial impairment

VISION_IMPAIR_WEAK + + +

+

2 tiles of partial impairment

WIELDED + + +

+

The item is wielded with both hands.

+ + + diff --git a/code/__DEFINES/flags.html b/code/__DEFINES/flags.html new file mode 100644 index 000000000000..b68b47e5a3ce --- /dev/null +++ b/code/__DEFINES/flags.html @@ -0,0 +1,62 @@ + + + + + + + code/__DEFINES/flags.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/flags.dm + +

+ + + + + + + + +
ALL_CARDINALSAll the cardinal direction bitflags.
EMOTE_AUDIBLEIs the emote audible
EMOTE_VISIBLEIs the emote visible
EMOTE_IMPORTANTIs it an emote that should be shown regardless of blindness/deafness
EMOTE_NO_MESSAGEDoes the emote not have a message?
WORKING_JOE_EMOTEWorking Joe emote
HAZARD_JOE_EMOTEHazard Joe emote

Define Details

+

ALL_CARDINALS + + +

+

All the cardinal direction bitflags.

EMOTE_AUDIBLE + + +

+

Is the emote audible

EMOTE_IMPORTANT + + +

+

Is it an emote that should be shown regardless of blindness/deafness

EMOTE_NO_MESSAGE + + +

+

Does the emote not have a message?

EMOTE_VISIBLE + + +

+

Is the emote visible

HAZARD_JOE_EMOTE + + +

+

Hazard Joe emote

WORKING_JOE_EMOTE + + +

+

Working Joe emote

+ + + diff --git a/code/__DEFINES/fonts.html b/code/__DEFINES/fonts.html new file mode 100644 index 000000000000..dda8030c1bf2 --- /dev/null +++ b/code/__DEFINES/fonts.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/fonts.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/fonts.dm + +

+ + +
EMOJI_SETEmoji icon set

Define Details

+

EMOJI_SET + + +

+

Emoji icon set

+ + + diff --git a/code/__DEFINES/guns.html b/code/__DEFINES/guns.html new file mode 100644 index 000000000000..ffb9a4ef3b60 --- /dev/null +++ b/code/__DEFINES/guns.html @@ -0,0 +1,37 @@ + + + + + + + code/__DEFINES/guns.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/guns.dm + +

+ + + +
CO_GUNSBase CO special weapons options
COUNCIL_CO_GUNSCouncil CO special weapons options

Define Details

+

COUNCIL_CO_GUNS + + +

+

Council CO special weapons options

CO_GUNS + + +

+

Base CO special weapons options

+ + + diff --git a/code/__DEFINES/hud.html b/code/__DEFINES/hud.html new file mode 100644 index 000000000000..d43e43125aa7 --- /dev/null +++ b/code/__DEFINES/hud.html @@ -0,0 +1,37 @@ + + + + + + + code/__DEFINES/hud.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/hud.dm + +

+ + + +
APPEARANCE_UI_IGNORE_ALPHAUsed for progress bars and chat messages
APPEARANCE_UIUsed for HUD objects

Define Details

+

APPEARANCE_UI + + +

+

Used for HUD objects

APPEARANCE_UI_IGNORE_ALPHA + + +

+

Used for progress bars and chat messages

+ + + diff --git a/code/__DEFINES/human.html b/code/__DEFINES/human.html new file mode 100644 index 000000000000..5adb57a3660c --- /dev/null +++ b/code/__DEFINES/human.html @@ -0,0 +1,152 @@ + + + + + + + code/__DEFINES/human.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/human.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
HUMAN_MAX_OXYLOSSDefines how much oxyloss humans can get per tick. A tile with no air at all (such as space) applies this value, otherwise it's a percentage of it.
HUMAN_CRIT_MAX_OXYLOSSThe amount of damage you'll get when in critical condition. We want this to be a 5 minute deal = 300s. There are 50HP to get through, so (1/6)*last_tick_duration per second. Breaths however only happen every 3 ticks.
HUMAN_BLOODTYPESHUMAN BLOODTYPES
HUMAN_MAX_PALENESSthis is added to human skin tone to get value of pale_max variable
HUMAN_STRIP_DELAYtakes 40ds = 4s to strip someone.
LIMB_ORGANICLIMB FLAGS
LIMB_SYNTHSKINnot completely robot, but pseudohuman
LIMB_DESTROYEDlimb is missing
LIMB_MUTATEDlimb is deformed by mutations
LIMB_AMPUTATEDlimb was amputated cleanly or destroyed limb was cleaned up, thus causing no pain
LIMB_SPLINTED_INDESTRUCTIBLESplint is indestructible
LIMB_UNCALIBRATED_PROSTHETICA prosthetic that's been attached to the body but not connected to the brain.
WOUND_BANDAGEDWOUND DEFINES
WOUNDS_BANDAGEDRelevant wounds exist, bandaged them.
WOUNDS_ALREADY_TREATEDRelevant wounds exist, but they're already bandaged.
HEMOSTAT_MIN_DURATIONOLD SURGERY DEFINES, USED BY AUTODOC
FLAY_LAYERFor use by Hunter Flay
TAIL_LAYERbs12 specific. this hack is probably gonna come back to haunt me
MEDICAL_LAYERFor splint and gauze overlays
HEADSHOT_LAYERUnrevivable headshot overlays, suicide/execution.
BACK_FRONT_LAYERFor backpacks when mob is facing north
BURST_LAYERChestburst overlay
TARGETED_LAYERfor target sprites when held at gun point, and holo cards.
FIRE_LAYERIf you're on fire
EFFECTS_LAYERIf you're hit by an acid DoT

Define Details

+

BACK_FRONT_LAYER + + +

+

For backpacks when mob is facing north

BURST_LAYER + + +

+

Chestburst overlay

EFFECTS_LAYER + + +

+

If you're hit by an acid DoT

FIRE_LAYER + + +

+

If you're on fire

FLAY_LAYER + + +

+

For use by Hunter Flay

HEADSHOT_LAYER + + +

+

Unrevivable headshot overlays, suicide/execution.

HEMOSTAT_MIN_DURATION + + +

+

OLD SURGERY DEFINES, USED BY AUTODOC

HUMAN_BLOODTYPES + + +

+

HUMAN BLOODTYPES

HUMAN_CRIT_MAX_OXYLOSS + + +

+

The amount of damage you'll get when in critical condition. We want this to be a 5 minute deal = 300s. There are 50HP to get through, so (1/6)*last_tick_duration per second. Breaths however only happen every 3 ticks.

HUMAN_MAX_OXYLOSS + + +

+

Defines how much oxyloss humans can get per tick. A tile with no air at all (such as space) applies this value, otherwise it's a percentage of it.

HUMAN_MAX_PALENESS + + +

+

this is added to human skin tone to get value of pale_max variable

HUMAN_STRIP_DELAY + + +

+

takes 40ds = 4s to strip someone.

LIMB_AMPUTATED + + +

+

limb was amputated cleanly or destroyed limb was cleaned up, thus causing no pain

LIMB_DESTROYED + + +

+

limb is missing

LIMB_MUTATED + + +

+

limb is deformed by mutations

LIMB_ORGANIC + + +

+

LIMB FLAGS

LIMB_SPLINTED_INDESTRUCTIBLE + + +

+

Splint is indestructible

LIMB_SYNTHSKIN + + +

+

not completely robot, but pseudohuman

LIMB_UNCALIBRATED_PROSTHETIC + + +

+

A prosthetic that's been attached to the body but not connected to the brain.

MEDICAL_LAYER + + +

+

For splint and gauze overlays

TAIL_LAYER + + +

+

bs12 specific. this hack is probably gonna come back to haunt me

TARGETED_LAYER + + +

+

for target sprites when held at gun point, and holo cards.

WOUNDS_ALREADY_TREATED + + +

+

Relevant wounds exist, but they're already bandaged.

WOUNDS_BANDAGED + + +

+

Relevant wounds exist, bandaged them.

WOUND_BANDAGED + + +

+

WOUND DEFINES

+ + + diff --git a/code/__DEFINES/job.html b/code/__DEFINES/job.html new file mode 100644 index 000000000000..76d87de38534 --- /dev/null +++ b/code/__DEFINES/job.html @@ -0,0 +1,39 @@ + + + + + + + code/__DEFINES/job.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/job.dm + +

+ + + +
JOB_OBSERVERFor monthly time tracking
JOB_ERT_GRUNT_LISTFor denying certain traits being applied to people. ie. bad leg +'Grunt' lists are for people who wouldn't logically get the bad leg trait, ie. UPP marine counterparts.

Define Details

+

JOB_ERT_GRUNT_LIST + + +

+

For denying certain traits being applied to people. ie. bad leg +'Grunt' lists are for people who wouldn't logically get the bad leg trait, ie. UPP marine counterparts.

JOB_OBSERVER + + +

+

For monthly time tracking

+ + + diff --git a/code/__DEFINES/layers.html b/code/__DEFINES/layers.html new file mode 100644 index 000000000000..497aae80bea6 --- /dev/null +++ b/code/__DEFINES/layers.html @@ -0,0 +1,287 @@ + + + + + + + code/__DEFINES/layers.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/layers.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
UNDERFLOOR_OBJ_LAYERbluespace beacon, navigation beacon, etc
CATWALK_LAYERcatwalk overlay of /turf/open/floor/plating/plating_catwalk
WEED_LAYERAlien weeds and node layer
ABOVE_WEED_LAYEROver weeds, such as blood
ATMOS_DEVICE_LAYERvents, connector ports, atmos devices that should be above pipe layer.
FIREDOOR_OPEN_LAYERRight under poddoors
PODDOOR_OPEN_LAYERUnder doors and virtually everything that's "above the floor"
CONVEYOR_LAYERconveyor belt
DOOR_OPEN_LAYERUnder all objects if opened. 2.85 due to tables being at 2.8
HATCH_LAYERFor hatches on the floor.
BELOW_OBJ_LAYERjust below all items
LOWER_ITEM_LAYERfor items that should be at the bottom of the pile of items
BETWEEN_OBJECT_ITEM_LAYERA layer above objects (like structures) but below items
ITEM_LAYERThe layer on which items lay
UPPER_ITEM_LAYERfor items that should be at the top of the pile of items
ABOVE_OBJ_LAYERjust above all items
DOOR_CLOSED_LAYERAbove most items if closed
FIREDOOR_CLOSED_LAYERRight under poddoors
PODDOOR_CLOSED_LAYERAbove doors which are at 3.1
WINDOW_LAYERabove closed doors
WALL_OBJ_LAYERposters on walls
POWERLOADER_LAYERabove windows and wall mounts so the top of the loader doesn't clip.
ABOVE_LYING_MOB_LAYERdrone (not the xeno)
BIG_XENO_LAYERabove ABOVE_MOB_LAYER because it's used for shallow river overlays which clips with the top of large xeno sprites.
ABOVE_XENO_LAYERfor xenos to hide behind bushes and tall grass
FACEHUGGER_LAYERFor facehuggers
WEATHER_LAYERFor WEATHER
BELOW_FULLSCREEN_LAYERblip from motion detector
FULLSCREEN_WEATHER_LAYERWeather
FULLSCREEN_IMPAIRED_LAYERvisual impairment from wearing welding helmet, etc.
FULLSCREEN_FLASH_LAYERflashed
FULLSCREEN_DAMAGE_LAYERred circles when hurt
FULLSCREEN_BLIND_LAYERunconscious
FULLSCREEN_PAIN_LAYERpain flashes
FULLSCREEN_VULTURE_SCOPE_LAYERVulture sniper/spotter scope
FULLSCREEN_CRIT_LAYERin critical
AREAS_LAYERfor areas, so they appear above everything else on map file.
EMISSIVE_PLANEThis plane masks out lighting to create an "emissive" effect, ie for glowing lights in otherwise dark areas.
EMISSIVE_RENDER_TARGETThe render target used by the emissive layer.
EMISSIVE_LAYER_UNBLOCKABLEThe layer you should use if you really don't want an emissive overlay to be blocked.
BALLOON_CHAT_PLANEPlane for balloon text (text that fades up)
TYPING_LAYERBubble for typing indicators
LOWEST_EVER_PLANENEVER HAVE ANYTHING BELOW THIS PLANE ADJUST IF YOU NEED MORE SPACE
FLOOR_PLANEFloor plane, self explanatory. Used for Ambient Occlusion filter
GAME_PLANEGame Plane, where most of the game objects reside
ABOVE_GAME_PLANEAbove Game Plane. For things which are above game objects, but below screen effects.
ROOF_PLANERoof plane, disappearing when entering buildings
BLACKNESS_PLANETo keep from conflicts with SEE_BLACKNESS internals
LIGHTING_PLANE--------------- FULLSCREEN RUNECHAT BUBBLES ------------
RUNECHAT_PLANEPopup Chat Messages
HUD_PLANEHUD layer defines
PLANE_MASTERS_GAMEPlane master controller keys

Define Details

+

ABOVE_GAME_PLANE + + +

+

Above Game Plane. For things which are above game objects, but below screen effects.

ABOVE_LYING_MOB_LAYER + + +

+

drone (not the xeno)

ABOVE_OBJ_LAYER + + +

+

just above all items

ABOVE_WEED_LAYER + + +

+

Over weeds, such as blood

ABOVE_XENO_LAYER + + +

+

for xenos to hide behind bushes and tall grass

AREAS_LAYER + + +

+

for areas, so they appear above everything else on map file.

ATMOS_DEVICE_LAYER + + +

+

vents, connector ports, atmos devices that should be above pipe layer.

BALLOON_CHAT_PLANE + + +

+

Plane for balloon text (text that fades up)

BELOW_FULLSCREEN_LAYER + + +

+

blip from motion detector

BELOW_OBJ_LAYER + + +

+

just below all items

BETWEEN_OBJECT_ITEM_LAYER + + +

+

A layer above objects (like structures) but below items

BIG_XENO_LAYER + + +

+

above ABOVE_MOB_LAYER because it's used for shallow river overlays which clips with the top of large xeno sprites.

BLACKNESS_PLANE + + +

+

To keep from conflicts with SEE_BLACKNESS internals

CATWALK_LAYER + + +

+

catwalk overlay of /turf/open/floor/plating/plating_catwalk

CONVEYOR_LAYER + + +

+

conveyor belt

DOOR_CLOSED_LAYER + + +

+

Above most items if closed

DOOR_OPEN_LAYER + + +

+

Under all objects if opened. 2.85 due to tables being at 2.8

EMISSIVE_LAYER_UNBLOCKABLE + + +

+

The layer you should use if you really don't want an emissive overlay to be blocked.

EMISSIVE_PLANE + + +

+

This plane masks out lighting to create an "emissive" effect, ie for glowing lights in otherwise dark areas.

EMISSIVE_RENDER_TARGET + + +

+

The render target used by the emissive layer.

FACEHUGGER_LAYER + + +

+

For facehuggers

FIREDOOR_CLOSED_LAYER + + +

+

Right under poddoors

FIREDOOR_OPEN_LAYER + + +

+

Right under poddoors

FLOOR_PLANE + + +

+

Floor plane, self explanatory. Used for Ambient Occlusion filter

FULLSCREEN_BLIND_LAYER + + +

+

unconscious

FULLSCREEN_CRIT_LAYER + + +

+

in critical

FULLSCREEN_DAMAGE_LAYER + + +

+

red circles when hurt

FULLSCREEN_FLASH_LAYER + + +

+

flashed

FULLSCREEN_IMPAIRED_LAYER + + +

+

visual impairment from wearing welding helmet, etc.

FULLSCREEN_PAIN_LAYER + + +

+

pain flashes

FULLSCREEN_VULTURE_SCOPE_LAYER + + +

+

Vulture sniper/spotter scope

FULLSCREEN_WEATHER_LAYER + + +

+

Weather

GAME_PLANE + + +

+

Game Plane, where most of the game objects reside

HATCH_LAYER + + +

+

For hatches on the floor.

HUD_PLANE + + +

+

HUD layer defines

ITEM_LAYER + + +

+

The layer on which items lay

LIGHTING_PLANE + + +

+

--------------- FULLSCREEN RUNECHAT BUBBLES ------------

LOWER_ITEM_LAYER + + +

+

for items that should be at the bottom of the pile of items

LOWEST_EVER_PLANE + + +

+

NEVER HAVE ANYTHING BELOW THIS PLANE ADJUST IF YOU NEED MORE SPACE

PLANE_MASTERS_GAME + + +

+

Plane master controller keys

PODDOOR_CLOSED_LAYER + + +

+

Above doors which are at 3.1

PODDOOR_OPEN_LAYER + + +

+

Under doors and virtually everything that's "above the floor"

POWERLOADER_LAYER + + +

+

above windows and wall mounts so the top of the loader doesn't clip.

ROOF_PLANE + + +

+

Roof plane, disappearing when entering buildings

RUNECHAT_PLANE + + +

+

Popup Chat Messages

TYPING_LAYER + + +

+

Bubble for typing indicators

UNDERFLOOR_OBJ_LAYER + + +

+

bluespace beacon, navigation beacon, etc

UPPER_ITEM_LAYER + + +

+

for items that should be at the top of the pile of items

WALL_OBJ_LAYER + + +

+

posters on walls

WEATHER_LAYER + + +

+

For WEATHER

WEED_LAYER + + +

+

Alien weeds and node layer

WINDOW_LAYER + + +

+

above closed doors

+ + + diff --git a/code/__DEFINES/lighting.html b/code/__DEFINES/lighting.html new file mode 100644 index 000000000000..29c50a929a7c --- /dev/null +++ b/code/__DEFINES/lighting.html @@ -0,0 +1,121 @@ + + + + + + + code/__DEFINES/lighting.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/lighting.dm + +

+ + + + + + + + + + + + + + + + + + + +
NO_LIGHT_SUPPORTObject doesn't use any of the light systems. Should be changed to add a light source to the object.
STATIC_LIGHTLight made with the lighting datums, applying a matrix.
MOVABLE_LIGHTLight made by masking the lighting darkness plane.
HYBRID_LIGHTA mix of the above, cheaper on moving items than dynamic, but heavier on rendering than movable
DIRECTIONAL_LIGHTPointy light
LIGHTING_ICON_BIGicon used for lighting shading effects
LIGHTING_PLANE_ALPHA_YAUTJAThe dim natural vision of Yautja
EMISSIVE_BLOCK_GENERICUses vis_overlays to leverage caching so that very few new items need to be made for the overlay. For anything that doesn't change outline or opaque area much or at all.
EMISSIVE_BLOCK_UNIQUEUses a dedicated render_target object to copy the entire appearance in real time to the blocking layer. For things that can change in appearance a lot from the base state, like humans.
EMISSIVE_COLORThe color matrix applied to all emissive overlays. Should be solely dependent on alpha and not have RGB overlap with EM_BLOCK_COLOR.
EM_BLOCK_COLORThe color matrix applied to all emissive blockers. Should be solely dependent on alpha and not have RGB overlap with EMISSIVE_COLOR.
EMISSIVE_APPEARANCE_FLAGSA set of appearance flags applied to all emissive and emissive blocker overlays.
EM_MASK_MATRIXThe color matrix used to mask out emissive blockers on the emissive plane. Alpha should default to zero, be solely dependent on the RGB value of EMISSIVE_COLOR, and be independent of the RGB value of EM_BLOCK_COLOR.
GETREDPARTReturns the red part of a #RRGGBB hex sequence as number
GETGREENPARTReturns the green part of a #RRGGBB hex sequence as number
GETBLUEPARTReturns the blue part of a #RRGGBB hex sequence as number
PARSE_LIGHT_COLORParse the hexadecimal color into lumcounts of each perspective.
LIGHTING_SOFT_THRESHOLDIf the max of the lighting lumcounts of each spectrum drops below this, disable luminosity on the lighting objects. Set to zero to disable soft lighting. Luminosity changes then work if it's lit at all.

Define Details

+

DIRECTIONAL_LIGHT + + +

+

Pointy light

EMISSIVE_APPEARANCE_FLAGS + + +

+

A set of appearance flags applied to all emissive and emissive blocker overlays.

EMISSIVE_BLOCK_GENERIC + + +

+

Uses vis_overlays to leverage caching so that very few new items need to be made for the overlay. For anything that doesn't change outline or opaque area much or at all.

EMISSIVE_BLOCK_UNIQUE + + +

+

Uses a dedicated render_target object to copy the entire appearance in real time to the blocking layer. For things that can change in appearance a lot from the base state, like humans.

EMISSIVE_COLOR + + +

+

The color matrix applied to all emissive overlays. Should be solely dependent on alpha and not have RGB overlap with EM_BLOCK_COLOR.

EM_BLOCK_COLOR + + +

+

The color matrix applied to all emissive blockers. Should be solely dependent on alpha and not have RGB overlap with EMISSIVE_COLOR.

EM_MASK_MATRIX + + +

+

The color matrix used to mask out emissive blockers on the emissive plane. Alpha should default to zero, be solely dependent on the RGB value of EMISSIVE_COLOR, and be independent of the RGB value of EM_BLOCK_COLOR.

GETBLUEPART + + + +

+

Returns the blue part of a #RRGGBB hex sequence as number

GETGREENPART + + + +

+

Returns the green part of a #RRGGBB hex sequence as number

GETREDPART + + + +

+

Returns the red part of a #RRGGBB hex sequence as number

HYBRID_LIGHT + + +

+

A mix of the above, cheaper on moving items than dynamic, but heavier on rendering than movable

LIGHTING_ICON_BIG + + +

+

icon used for lighting shading effects

LIGHTING_PLANE_ALPHA_YAUTJA + + +

+

The dim natural vision of Yautja

LIGHTING_SOFT_THRESHOLD + + +

+

If the max of the lighting lumcounts of each spectrum drops below this, disable luminosity on the lighting objects. Set to zero to disable soft lighting. Luminosity changes then work if it's lit at all.

MOVABLE_LIGHT + + +

+

Light made by masking the lighting darkness plane.

NO_LIGHT_SUPPORT + + +

+

Object doesn't use any of the light systems. Should be changed to add a light source to the object.

PARSE_LIGHT_COLOR + + + +

+

Parse the hexadecimal color into lumcounts of each perspective.

STATIC_LIGHT + + +

+

Light made with the lighting datums, applying a matrix.

+ + + diff --git a/code/__DEFINES/maps.html b/code/__DEFINES/maps.html new file mode 100644 index 000000000000..116499759c52 --- /dev/null +++ b/code/__DEFINES/maps.html @@ -0,0 +1,69 @@ + + + + + + + code/__DEFINES/maps.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/maps.dm + +

+ + + + + + + + + +
ZTRAIT_BOMBCAP_MULTIPLIERnumber - bombcap is multiplied by this before being applied to bombs
ZTRAIT_GRAVITYnumber - default gravity if there's no gravity generators or area overrides present
UNAFFECTEDUNAFFECTED if absent - no space transitions
SELFLOOPINGSELFLOOPING - space transitions always self-loop
CROSSLINKEDCROSSLINKED - mixed in with the cross-linked space pool
RESERVED_TURF_TYPEReserved/Transit turf type +What the turf is when not being used
PLACEMENT_TRIESHow many times we try to fit the ruin somewhere until giving up (really should just swap to some packing algo)
SPACE_KEYA map key that corresponds to being one exclusively for Space.

Define Details

+

CROSSLINKED + + +

+

CROSSLINKED - mixed in with the cross-linked space pool

PLACEMENT_TRIES + + +

+

How many times we try to fit the ruin somewhere until giving up (really should just swap to some packing algo)

RESERVED_TURF_TYPE + + +

+

Reserved/Transit turf type +What the turf is when not being used

SELFLOOPING + + +

+

SELFLOOPING - space transitions always self-loop

SPACE_KEY + + +

+

A map key that corresponds to being one exclusively for Space.

UNAFFECTED + + +

+

UNAFFECTED if absent - no space transitions

ZTRAIT_BOMBCAP_MULTIPLIER + + +

+

number - bombcap is multiplied by this before being applied to bombs

ZTRAIT_GRAVITY + + +

+

number - default gravity if there's no gravity generators or area overrides present

+ + + diff --git a/code/__DEFINES/math_physics.html b/code/__DEFINES/math_physics.html new file mode 100644 index 000000000000..0bf5db004ae8 --- /dev/null +++ b/code/__DEFINES/math_physics.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/math_physics.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/math_physics.dm + +

+ + +
GAS_CRITICAL_TEMPERATUREK. The critical point temperature for air.

Define Details

+

GAS_CRITICAL_TEMPERATURE + + +

+

K. The critical point temperature for air.

+ + + diff --git a/code/__DEFINES/minimap.html b/code/__DEFINES/minimap.html new file mode 100644 index 000000000000..54582d9fc809 --- /dev/null +++ b/code/__DEFINES/minimap.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/minimap.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/minimap.dm + +

+ + +
MINIMAP_SCALEConverts the overworld x and y to minimap x and y values

Define Details

+

MINIMAP_SCALE + + +

+

Converts the overworld x and y to minimap x and y values

+ + + diff --git a/code/__DEFINES/misc.html b/code/__DEFINES/misc.html new file mode 100644 index 000000000000..d9e3588dce49 --- /dev/null +++ b/code/__DEFINES/misc.html @@ -0,0 +1,144 @@ + + + + + + + code/__DEFINES/misc.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/misc.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + +
AREA_AVOID_BIOSCANused to make mobs skip bioscans
AREA_NOTUNNELmakes it so the area can not be tunneled to
AREA_ALLOW_XENO_JOINxenos can join whilst in this area (for admin zlevel)
AREA_CONTAINMENTFlags the area as a containment area
AREA_UNWEEDABLEFlags the area as permanently unweedable. Still requires is_resin_allowed = FALSE
DA_DEFAULT_NUM_TICKSDefault number of ticks for do_after
CELLSAmount of cells per row/column in grid
CELLSIZESize of a cell in pixel
INTERRUPT_DIFF_TURFMight want to consider adding a separate flag for DIFF_COORDS
INTERRUPT_UNCONSCIOUSRelevant to stat var for mobs
INTERRUPT_RESISTAllows timed actions to be cancelled upon hitting resist, on by default
INTERRUPT_DIFF_SELECT_ZONEBy default not in INTERRUPT_ALL (too niche)
INTERRUPT_OUT_OF_RANGEBy default not in INTERRUPT_ALL, should not be used in conjunction with INTERRUPT_DIFF_TURF
INTERRUPT_DIFF_INTENTBy default not in INTERRUPT_ALL (too niche) (Doesn't actually exist.)
INTERRUPT_LCLICKMainly for boiler globs
BEHAVIOR_IMMOBILEYou cannot move the person while this action is being performed
SIZE_TINYHelmets
SIZE_SMALLArmor, pouch slots/pockets
SIZE_MEDIUMBackpacks, belts. Size of pistols, general magazines
SIZE_LARGESize of rifles, SMGs
SIZE_HUGEUsing Large does the same job
get_areaGet the ultimate area of A, similarly to get_turf.
COOLDOWN_BRACER_CHARGECooldown for pred recharge

Define Details

+

AREA_ALLOW_XENO_JOIN + + +

+

xenos can join whilst in this area (for admin zlevel)

AREA_AVOID_BIOSCAN + + +

+

used to make mobs skip bioscans

AREA_CONTAINMENT + + +

+

Flags the area as a containment area

AREA_NOTUNNEL + + +

+

makes it so the area can not be tunneled to

AREA_UNWEEDABLE + + +

+

Flags the area as permanently unweedable. Still requires is_resin_allowed = FALSE

BEHAVIOR_IMMOBILE + + +

+

You cannot move the person while this action is being performed

CELLS + + +

+

Amount of cells per row/column in grid

CELLSIZE + + +

+

Size of a cell in pixel

COOLDOWN_BRACER_CHARGE + + +

+

Cooldown for pred recharge

DA_DEFAULT_NUM_TICKS + + +

+

Default number of ticks for do_after

INTERRUPT_DIFF_INTENT + + +

+

By default not in INTERRUPT_ALL (too niche) (Doesn't actually exist.)

INTERRUPT_DIFF_SELECT_ZONE + + +

+

By default not in INTERRUPT_ALL (too niche)

INTERRUPT_DIFF_TURF + + +

+

Might want to consider adding a separate flag for DIFF_COORDS

INTERRUPT_LCLICK + + +

+

Mainly for boiler globs

INTERRUPT_OUT_OF_RANGE + + +

+

By default not in INTERRUPT_ALL, should not be used in conjunction with INTERRUPT_DIFF_TURF

INTERRUPT_RESIST + + +

+

Allows timed actions to be cancelled upon hitting resist, on by default

INTERRUPT_UNCONSCIOUS + + +

+

Relevant to stat var for mobs

SIZE_HUGE + + +

+

Using Large does the same job

SIZE_LARGE + + +

+

Size of rifles, SMGs

SIZE_MEDIUM + + +

+

Backpacks, belts. Size of pistols, general magazines

SIZE_SMALL + + +

+

Armor, pouch slots/pockets

SIZE_TINY + + +

+

Helmets

get_area + + + +

+

Get the ultimate area of A, similarly to get_turf.

+

Use instead of A.loc.loc.

+ + + diff --git a/code/__DEFINES/mobs.html b/code/__DEFINES/mobs.html new file mode 100644 index 000000000000..7a1987338e17 --- /dev/null +++ b/code/__DEFINES/mobs.html @@ -0,0 +1,67 @@ + + + + + + + code/__DEFINES/mobs.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/mobs.dm + +

+ + + + + + + + + +
GLOBAL_STATUS_MULTIPLIERMultiplier for Stun/KD/KO/etc durations in new backend, due to old system being based on life ticks
STANDING_UPMob is standing up, usually associated with lying_angle value of 0.
LYING_DOWNMob is lying down, usually associated with lying_angle values of 90 or 270.
NO_BUCKLE_LYINGPossible value of /atom/movable/buckle_lying. If set to a different (positive-or-zero) value than this, the buckling thing will force a lying angle on the buckled.
MOBILITY_MOVEcan move
MOBILITY_STANDcan, and is, standing up
MOBILITY_RESTcan rest
MOBILITY_LIEDOWNcan lie down

Define Details

+

GLOBAL_STATUS_MULTIPLIER + + +

+

Multiplier for Stun/KD/KO/etc durations in new backend, due to old system being based on life ticks

LYING_DOWN + + +

+

Mob is lying down, usually associated with lying_angle values of 90 or 270.

MOBILITY_LIEDOWN + + +

+

can lie down

MOBILITY_MOVE + + +

+

can move

MOBILITY_REST + + +

+

can rest

MOBILITY_STAND + + +

+

can, and is, standing up

NO_BUCKLE_LYING + + +

+

Possible value of /atom/movable/buckle_lying. If set to a different (positive-or-zero) value than this, the buckling thing will force a lying angle on the buckled.

STANDING_UP + + +

+

Mob is standing up, usually associated with lying_angle value of 0.

+ + + diff --git a/code/__DEFINES/mode.html b/code/__DEFINES/mode.html new file mode 100644 index 000000000000..c42fe6c1b53b --- /dev/null +++ b/code/__DEFINES/mode.html @@ -0,0 +1,117 @@ + + + + + + + code/__DEFINES/mode.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/mode.dm + +

+ + + + + + + + + + + + + + + + + + + +
MODE_NO_SNIPER_SENTRYUpgrade kits will no longer allow you to select long-range upgrades
MODE_NO_ATTACK_DEADPeople will not be able to shoot at corpses
MODE_NO_STRIPDRAG_ENEMYCan't strip or drag dead enemies
MODE_STRIP_NONUNIFORM_ENEMYCan strip enemy, but not their boots, uniform, armor, helmet, or ID
MODE_STRONG_DEFIBSDefibs Ignore Armor
MODE_BLOOD_OPTIMIZATIONBlood spawns without a dry timer, and do not cause footprints
MODE_NO_COMBAT_CASPrevents POs and DCCs from creating combat CAS equipment
MODE_LZ_PROTECTIONPrevents the LZ from being mortared
MODE_SHIPSIDE_SDToggles whether Predators can big SD when not on the groundmap
MODE_HARDCORE_PERMAToggles Hardcore for all marines, meaning they instantly perma upon death
MARINE_GEAR_SCALING_NORMALNumber of weighted marine players for 1 gear_scale. gear_scale is clamped to 1 minimum
WHITELIST_YAUTJA_LEGACYOld holders of YAUTJA_ELDER
WHITELIST_YAUTJA_COUNCIL_LEGACYOld holders of YAUTJA_COUNCIL for 3 months
WHITELIST_COMMANDER_COUNCIL_LEGACYOld holders of COMMANDER_COUNCIL for 3 months
WHITELIST_COMMANDER_COLONELFormer CO senator/whitelist overseer award
WHITELIST_SYNTHETIC_COUNCIL_LEGACYOld holders of SYNTHETIC_COUNCIL for 3 months
WHITELIST_MENTORSenior Enlisted Advisor, auto granted by R_MENTOR
APC_SCORE_INTERVALMisc. defines for objectives

Define Details

+

APC_SCORE_INTERVAL + + +

+

Misc. defines for objectives

MARINE_GEAR_SCALING_NORMAL + + +

+

Number of weighted marine players for 1 gear_scale. gear_scale is clamped to 1 minimum

MODE_BLOOD_OPTIMIZATION + + +

+

Blood spawns without a dry timer, and do not cause footprints

MODE_HARDCORE_PERMA + + +

+

Toggles Hardcore for all marines, meaning they instantly perma upon death

MODE_LZ_PROTECTION + + +

+

Prevents the LZ from being mortared

MODE_NO_ATTACK_DEAD + + +

+

People will not be able to shoot at corpses

MODE_NO_COMBAT_CAS + + +

+

Prevents POs and DCCs from creating combat CAS equipment

MODE_NO_SNIPER_SENTRY + + +

+

Upgrade kits will no longer allow you to select long-range upgrades

MODE_NO_STRIPDRAG_ENEMY + + +

+

Can't strip or drag dead enemies

MODE_SHIPSIDE_SD + + +

+

Toggles whether Predators can big SD when not on the groundmap

MODE_STRIP_NONUNIFORM_ENEMY + + +

+

Can strip enemy, but not their boots, uniform, armor, helmet, or ID

MODE_STRONG_DEFIBS + + +

+

Defibs Ignore Armor

WHITELIST_COMMANDER_COLONEL + + +

+

Former CO senator/whitelist overseer award

WHITELIST_COMMANDER_COUNCIL_LEGACY + + +

+

Old holders of COMMANDER_COUNCIL for 3 months

WHITELIST_MENTOR + + +

+

Senior Enlisted Advisor, auto granted by R_MENTOR

WHITELIST_SYNTHETIC_COUNCIL_LEGACY + + +

+

Old holders of SYNTHETIC_COUNCIL for 3 months

WHITELIST_YAUTJA_COUNCIL_LEGACY + + +

+

Old holders of YAUTJA_COUNCIL for 3 months

WHITELIST_YAUTJA_LEGACY + + +

+

Old holders of YAUTJA_ELDER

+ + + diff --git a/code/__DEFINES/nightmare.html b/code/__DEFINES/nightmare.html new file mode 100644 index 000000000000..c8eac68736f5 --- /dev/null +++ b/code/__DEFINES/nightmare.html @@ -0,0 +1,52 @@ + + + + + + + code/__DEFINES/nightmare.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/nightmare.dm + +

+ + + + + + +
NIGHTMARE_CTX_GLOBALGlobal Nightmare context: Performs any global game setup
NIGHTMARE_CTX_GROUNDGround Map Context: Performs actions relevant to the ground map
NIGHTMARE_CTX_SHIPShip Map Context: Performs actions relevant to the ship map
NIGHTMARE_TASKFLAG_DISABLEDThis task can not be executed
NIGHTMARE_TASKFLAG_ONESHOTThis task can only be executed once

Define Details

+

NIGHTMARE_CTX_GLOBAL + + +

+

Global Nightmare context: Performs any global game setup

NIGHTMARE_CTX_GROUND + + +

+

Ground Map Context: Performs actions relevant to the ground map

NIGHTMARE_CTX_SHIP + + +

+

Ship Map Context: Performs actions relevant to the ship map

NIGHTMARE_TASKFLAG_DISABLED + + +

+

This task can not be executed

NIGHTMARE_TASKFLAG_ONESHOT + + +

+

This task can only be executed once

+ + + diff --git a/code/__DEFINES/objects.html b/code/__DEFINES/objects.html new file mode 100644 index 000000000000..f938d1e71fc4 --- /dev/null +++ b/code/__DEFINES/objects.html @@ -0,0 +1,57 @@ + + + + + + + code/__DEFINES/objects.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/objects.dm + +

+ + + + + + + +
TOUCHReaction type from touching it
INGESTReaction type from eating it
OBJ_ORGANICMarks an object as organic. Used for alien structures and any other organic material
OBJ_NO_HELMET_BANDMakes the item not spawn a band around the helmet if it's used as a helmet garb
OBJ_IS_HELMET_GARBMarks the object as helmet garb
OBJ_UNIQUE_RENAMEcan you customize the description/name of the thing?

Define Details

+

INGEST + + +

+

Reaction type from eating it

OBJ_IS_HELMET_GARB + + +

+

Marks the object as helmet garb

OBJ_NO_HELMET_BAND + + +

+

Makes the item not spawn a band around the helmet if it's used as a helmet garb

OBJ_ORGANIC + + +

+

Marks an object as organic. Used for alien structures and any other organic material

OBJ_UNIQUE_RENAME + + +

+

can you customize the description/name of the thing?

TOUCH + + +

+

Reaction type from touching it

+ + + diff --git a/code/__DEFINES/paygrade_defs/civilian.html b/code/__DEFINES/paygrade_defs/civilian.html new file mode 100644 index 000000000000..88e43b7e6ee1 --- /dev/null +++ b/code/__DEFINES/paygrade_defs/civilian.html @@ -0,0 +1,87 @@ + + + + + + + code/__DEFINES/paygrade_defs/civilian.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/paygrade_defs/civilian.dm + +

+ + + + + + + + + + + + + +
PAY_SHORT_CIVCIV, Civilian
PAY_SHORT_CNURCNUR, Nurse
PAY_SHORT_CDOCCDOC, Doctor
PAY_SHORT_CCMOCCMO, Professor
PAY_SHORT_CREPCREP, Representative
PAY_SHORT_SYNSYN, Synthetic
PAY_SHORT_OPROPR, Operator
PAY_SHORT_CDNMCDNM, Operative (intended for codenamed people IE Operative Theta)
PAY_SHORT_CPOCPO, Officer
PAY_SHORT_CSPOCSPO, Senior Officer
PAY_SHORT_REBREB, Rebel
PAY_SHORT_REBCREBC, Rebel Commander "REBC"

Define Details

+

PAY_SHORT_CCMO + + +

+

CCMO, Professor

PAY_SHORT_CDNM + + +

+

CDNM, Operative (intended for codenamed people IE Operative Theta)

PAY_SHORT_CDOC + + +

+

CDOC, Doctor

PAY_SHORT_CIV + + +

+

CIV, Civilian

PAY_SHORT_CNUR + + +

+

CNUR, Nurse

PAY_SHORT_CPO + + +

+

CPO, Officer

PAY_SHORT_CREP + + +

+

CREP, Representative

PAY_SHORT_CSPO + + +

+

CSPO, Senior Officer

PAY_SHORT_OPR + + +

+

OPR, Operator

PAY_SHORT_REB + + +

+

REB, Rebel

PAY_SHORT_REBC + + +

+

REBC, Rebel Commander "REBC"

PAY_SHORT_SYN + + +

+

SYN, Synthetic

+ + + diff --git a/code/__DEFINES/paygrade_defs/cmb.html b/code/__DEFINES/paygrade_defs/cmb.html new file mode 100644 index 000000000000..2a77efa66c6a --- /dev/null +++ b/code/__DEFINES/paygrade_defs/cmb.html @@ -0,0 +1,57 @@ + + + + + + + code/__DEFINES/paygrade_defs/cmb.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/paygrade_defs/cmb.dm + +

+ + + + + + + +
PAY_SHORT_IHROIHRO, Interstellar Human Rights Observer
PAY_SHORT_ICCLICCL, Interstellar Commerce Commission Corporate Liaison
PAY_SHORT_ICCAICCA, Interstellar Commerce Commission Agent
PAY_SHORT_CMBMCMBM, CMB Marshal
PAY_SHORT_CMBDCMBD, CMB Deputy
PAY_SHORT_CMBSCMBS, CMB Synthetic

Define Details

+

PAY_SHORT_CMBD + + +

+

CMBD, CMB Deputy

PAY_SHORT_CMBM + + +

+

CMBM, CMB Marshal

PAY_SHORT_CMBS + + +

+

CMBS, CMB Synthetic

PAY_SHORT_ICCA + + +

+

ICCA, Interstellar Commerce Commission Agent

PAY_SHORT_ICCL + + +

+

ICCL, Interstellar Commerce Commission Corporate Liaison

PAY_SHORT_IHRO + + +

+

IHRO, Interstellar Human Rights Observer

+ + + diff --git a/code/__DEFINES/paygrade_defs/dutch.html b/code/__DEFINES/paygrade_defs/dutch.html new file mode 100644 index 000000000000..45f70627d9f9 --- /dev/null +++ b/code/__DEFINES/paygrade_defs/dutch.html @@ -0,0 +1,52 @@ + + + + + + + code/__DEFINES/paygrade_defs/dutch.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/paygrade_defs/dutch.dm + +

+ + + + + + +
PAY_SHORT_DTCDTC, Dutch's Dozen Standard Mercenary
PAY_SHORT_DTCMDTCM, Dutch's Dozen Medic
PAY_SHORT_DTCFDTCF, Dutch's Dozen Flamethrower Specialist
PAY_SHORT_DTCMGDTCMG, Dutch's Dozen Machinegunner
PAY_SHORT_DTCADTCA, Arnold

Define Details

+

PAY_SHORT_DTC + + +

+

DTC, Dutch's Dozen Standard Mercenary

PAY_SHORT_DTCA + + +

+

DTCA, Arnold

PAY_SHORT_DTCF + + +

+

DTCF, Dutch's Dozen Flamethrower Specialist

PAY_SHORT_DTCM + + +

+

DTCM, Dutch's Dozen Medic

PAY_SHORT_DTCMG + + +

+

DTCMG, Dutch's Dozen Machinegunner

+ + + diff --git a/code/__DEFINES/paygrade_defs/marines.html b/code/__DEFINES/paygrade_defs/marines.html new file mode 100644 index 000000000000..19c2a4735e2d --- /dev/null +++ b/code/__DEFINES/paygrade_defs/marines.html @@ -0,0 +1,157 @@ + + + + + + + code/__DEFINES/paygrade_defs/marines.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/paygrade_defs/marines.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
PAY_SHORT_ME1ME1, Private
PAY_SHORT_ME2ME2, Private First Class
PAY_SHORT_ME3ME3, Lance Corporal
PAY_SHORT_ME4ME4, Corporal
PAY_SHORT_ME5ME5, Sergeant
PAY_SHORT_ME6ME6, Staff Sergeant
PAY_SHORT_ME7ME7, Gunnery Sergeant
PAY_SHORT_ME8ME8, Master Sergeant
PAY_SHORT_ME8EME8E, First Sergeant
PAY_SHORT_ME9ME9, Master Gunnery Sergeant
PAY_SHORT_ME9EME9E, Sergeant Major
PAY_SHORT_ME9CME9C, Sergeant Major of the Colonial Marine Corps
PAY_SHORT_MO1MO1, Second Lieutenant
PAY_SHORT_MO2MO2, First Lieutenant
PAY_SHORT_MO3MO3, Captain
PAY_SHORT_MO4MO4, Major
PAY_SHORT_MO5MO5, Lieutenant Colonel
PAY_SHORT_MO6MO6, Colonel
PAY_SHORT_MO6EMO6E, Senior Colonel
PAY_SHORT_MO6CMO6C, Division Colonel
PAY_SHORT_MO7MO7, Brigadier General
PAY_SHORT_MO8MO8, Major General
PAY_SHORT_MO9MO9, Lieutenant General
PAY_SHORT_MO10MO10, General
PAY_SHORT_MO10CMO10C, Assistant Commandant of the Marine Corps
PAY_SHORT_MO10SMO10S, Commandant of the Marine Corps

Define Details

+

PAY_SHORT_ME1 + + +

+

ME1, Private

PAY_SHORT_ME2 + + +

+

ME2, Private First Class

PAY_SHORT_ME3 + + +

+

ME3, Lance Corporal

PAY_SHORT_ME4 + + +

+

ME4, Corporal

PAY_SHORT_ME5 + + +

+

ME5, Sergeant

PAY_SHORT_ME6 + + +

+

ME6, Staff Sergeant

PAY_SHORT_ME7 + + +

+

ME7, Gunnery Sergeant

PAY_SHORT_ME8 + + +

+

ME8, Master Sergeant

PAY_SHORT_ME8E + + +

+

ME8E, First Sergeant

PAY_SHORT_ME9 + + +

+

ME9, Master Gunnery Sergeant

PAY_SHORT_ME9C + + +

+

ME9C, Sergeant Major of the Colonial Marine Corps

PAY_SHORT_ME9E + + +

+

ME9E, Sergeant Major

PAY_SHORT_MO1 + + +

+

MO1, Second Lieutenant

PAY_SHORT_MO10 + + +

+

MO10, General

PAY_SHORT_MO10C + + +

+

MO10C, Assistant Commandant of the Marine Corps

PAY_SHORT_MO10S + + +

+

MO10S, Commandant of the Marine Corps

PAY_SHORT_MO2 + + +

+

MO2, First Lieutenant

PAY_SHORT_MO3 + + +

+

MO3, Captain

PAY_SHORT_MO4 + + +

+

MO4, Major

PAY_SHORT_MO5 + + +

+

MO5, Lieutenant Colonel

PAY_SHORT_MO6 + + +

+

MO6, Colonel

PAY_SHORT_MO6C + + +

+

MO6C, Division Colonel

PAY_SHORT_MO6E + + +

+

MO6E, Senior Colonel

PAY_SHORT_MO7 + + +

+

MO7, Brigadier General

PAY_SHORT_MO8 + + +

+

MO8, Major General

PAY_SHORT_MO9 + + +

+

MO9, Lieutenant General

+ + + diff --git a/code/__DEFINES/paygrade_defs/mercs.html b/code/__DEFINES/paygrade_defs/mercs.html new file mode 100644 index 000000000000..3fb2c8d086f0 --- /dev/null +++ b/code/__DEFINES/paygrade_defs/mercs.html @@ -0,0 +1,97 @@ + + + + + + + code/__DEFINES/paygrade_defs/mercs.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/paygrade_defs/mercs.dm + +

+ + + + + + + + + + + + + + + +
PAY_SHORT_FL_SFL-S, Standard
PAY_SHORT_FL_MFL-M, Medic
PAY_SHORT_FL_WLFL-WL, Warlord
PAY_SHORT_EFL_SEFL-S, Elite Standard
PAY_SHORT_EFL_MEFL-M, Elite Medic
PAY_SHORT_EFL_EEFL-E, Elite Engineer
PAY_SHORT_EFL_HEFL-H, Elite Heavy
PAY_SHORT_EFL_TLEFL-WL, Elite Warlord
PAY_SHORT_VAI_SVAI-S, Standard
PAY_SHORT_VAI_MVAI-M, Medic
PAY_SHORT_VAI_EVAI-E, Engineer
PAY_SHORT_VAI_GVAI-G, Machinegunner
PAY_SHORT_VAI_SNVAI-SN, Synthetic
PAY_SHORT_VAI_LVAI-L, Team Leader

Define Details

+

PAY_SHORT_EFL_E + + +

+

EFL-E, Elite Engineer

PAY_SHORT_EFL_H + + +

+

EFL-H, Elite Heavy

PAY_SHORT_EFL_M + + +

+

EFL-M, Elite Medic

PAY_SHORT_EFL_S + + +

+

EFL-S, Elite Standard

PAY_SHORT_EFL_TL + + +

+

EFL-WL, Elite Warlord

PAY_SHORT_FL_M + + +

+

FL-M, Medic

PAY_SHORT_FL_S + + +

+

FL-S, Standard

PAY_SHORT_FL_WL + + +

+

FL-WL, Warlord

PAY_SHORT_VAI_E + + +

+

VAI-E, Engineer

PAY_SHORT_VAI_G + + +

+

VAI-G, Machinegunner

PAY_SHORT_VAI_L + + +

+

VAI-L, Team Leader

PAY_SHORT_VAI_M + + +

+

VAI-M, Medic

PAY_SHORT_VAI_S + + +

+

VAI-S, Standard

PAY_SHORT_VAI_SN + + +

+

VAI-SN, Synthetic

+ + + diff --git a/code/__DEFINES/paygrade_defs/navy.html b/code/__DEFINES/paygrade_defs/navy.html new file mode 100644 index 000000000000..7458129e8b2f --- /dev/null +++ b/code/__DEFINES/paygrade_defs/navy.html @@ -0,0 +1,147 @@ + + + + + + + code/__DEFINES/paygrade_defs/navy.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/paygrade_defs/navy.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + +
PAY_SHORT_NE1NE1, Seaman Recruit
PAY_SHORT_NE2NE2M, Seaman Apprentice
PAY_SHORT_NE3NE3, Seaman
PAY_SHORT_NE4NE4, Petty Officer 3rd Class
PAY_SHORT_NE5NE5, Petty Officer 2nd Class
PAY_SHORT_NE6NE6, Petty Officer 1st Class
PAY_SHORT_NE7NE7, Chief Petty Officer
PAY_SHORT_NE8NE8, Senior Chief Petty Officer
PAY_SHORT_NE8CNE8C, Command Senior Chief Petty Officer
PAY_SHORT_NE9NE9, Master Chief Petty Officer
PAY_SHORT_NE9CNE9C, Command Master Chief Petty Officer
PAY_SHORT_NO1NO1, Ensign
PAY_SHORT_NO2NO2, Lieutenant Junior Grade
PAY_SHORT_NO3NO3, Lieutenant
PAY_SHORT_NO4NO4, Lieutenant Commander
PAY_SHORT_NO5NO5, Commander
PAY_SHORT_NO6NO6, Captain
PAY_SHORT_NO6ENO6E, Commodore
PAY_SHORT_NO6CNO6C, Senior Commodore
PAY_SHORT_NO7NO7, Rear Admiral (Lower Half)
PAY_SHORT_NO8NO8, Rear Admiral (Upper Half)
PAY_SHORT_NO9NO9, Vice Admiral
PAY_SHORT_NO10NO10, Admiral
PAY_SHORT_NO10CNO10C, Chief of Naval Operations

Define Details

+

PAY_SHORT_NE1 + + +

+

NE1, Seaman Recruit

PAY_SHORT_NE2 + + +

+

NE2M, Seaman Apprentice

PAY_SHORT_NE3 + + +

+

NE3, Seaman

PAY_SHORT_NE4 + + +

+

NE4, Petty Officer 3rd Class

PAY_SHORT_NE5 + + +

+

NE5, Petty Officer 2nd Class

PAY_SHORT_NE6 + + +

+

NE6, Petty Officer 1st Class

PAY_SHORT_NE7 + + +

+

NE7, Chief Petty Officer

PAY_SHORT_NE8 + + +

+

NE8, Senior Chief Petty Officer

PAY_SHORT_NE8C + + +

+

NE8C, Command Senior Chief Petty Officer

PAY_SHORT_NE9 + + +

+

NE9, Master Chief Petty Officer

PAY_SHORT_NE9C + + +

+

NE9C, Command Master Chief Petty Officer

PAY_SHORT_NO1 + + +

+

NO1, Ensign

PAY_SHORT_NO10 + + +

+

NO10, Admiral

PAY_SHORT_NO10C + + +

+

NO10C, Chief of Naval Operations

PAY_SHORT_NO2 + + +

+

NO2, Lieutenant Junior Grade

PAY_SHORT_NO3 + + +

+

NO3, Lieutenant

PAY_SHORT_NO4 + + +

+

NO4, Lieutenant Commander

PAY_SHORT_NO5 + + +

+

NO5, Commander

PAY_SHORT_NO6 + + +

+

NO6, Captain

PAY_SHORT_NO6C + + +

+

NO6C, Senior Commodore

PAY_SHORT_NO6E + + +

+

NO6E, Commodore

PAY_SHORT_NO7 + + +

+

NO7, Rear Admiral (Lower Half)

PAY_SHORT_NO8 + + +

+

NO8, Rear Admiral (Upper Half)

PAY_SHORT_NO9 + + +

+

NO9, Vice Admiral

+ + + diff --git a/code/__DEFINES/paygrade_defs/paygrade.html b/code/__DEFINES/paygrade_defs/paygrade.html new file mode 100644 index 000000000000..6e0730826ebe --- /dev/null +++ b/code/__DEFINES/paygrade_defs/paygrade.html @@ -0,0 +1,42 @@ + + + + + + + code/__DEFINES/paygrade_defs/paygrade.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/paygrade_defs/paygrade.dm + +

+ + + + +
GRADE_ENLISTEDPaygrade is equivalent to or is an enlisted position.
GRADE_OFFICERPaygrade is equivalent to or is an officer.
GRADE_FLAGPaygrade is for high command or senior leadership. Military flag officers.

Define Details

+

GRADE_ENLISTED + + +

+

Paygrade is equivalent to or is an enlisted position.

GRADE_FLAG + + +

+

Paygrade is for high command or senior leadership. Military flag officers.

GRADE_OFFICER + + +

+

Paygrade is equivalent to or is an officer.

+ + + diff --git a/code/__DEFINES/paygrade_defs/provost.html b/code/__DEFINES/paygrade_defs/provost.html new file mode 100644 index 000000000000..76c18c095a33 --- /dev/null +++ b/code/__DEFINES/paygrade_defs/provost.html @@ -0,0 +1,62 @@ + + + + + + + code/__DEFINES/paygrade_defs/provost.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/paygrade_defs/provost.dm + +

+ + + + + + + + +
PAY_SHORT_PVAPvI, Provost Advisor
PAY_SHORT_PVIPvI, Provost Inspector
PAY_SHORT_PVCIPvCI, Provost Chief Inspector
PAY_SHORT_PVDMPvDM, Provost Deputy Marshal
PAY_SHORT_PVMPvM, Provost Marshal
PAY_SHORT_PVSMPvSM, Provost Sector Marshal
PAY_SHORT_PVCMPvCM, Provost Chief Marshal

Define Details

+

PAY_SHORT_PVA + + +

+

PvI, Provost Advisor

PAY_SHORT_PVCI + + +

+

PvCI, Provost Chief Inspector

PAY_SHORT_PVCM + + +

+

PvCM, Provost Chief Marshal

PAY_SHORT_PVDM + + +

+

PvDM, Provost Deputy Marshal

PAY_SHORT_PVI + + +

+

PvI, Provost Inspector

PAY_SHORT_PVM + + +

+

PvM, Provost Marshal

PAY_SHORT_PVSM + + +

+

PvSM, Provost Sector Marshal

+ + + diff --git a/code/__DEFINES/paygrade_defs/twe.html b/code/__DEFINES/paygrade_defs/twe.html new file mode 100644 index 000000000000..ff2efb227c58 --- /dev/null +++ b/code/__DEFINES/paygrade_defs/twe.html @@ -0,0 +1,87 @@ + + + + + + + code/__DEFINES/paygrade_defs/twe.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/paygrade_defs/twe.dm + +

+ + + + + + + + + + + + + +
PAY_SHORT_RMC1RMC1, Heitai-Marine
PAY_SHORT_RMC2RMC2, Santo-Lance Corporal
PAY_SHORT_RMC3RMC3, Nito-Corporal
PAY_SHORT_RMC4RMC4, Itto-Sergeant
PAY_SHORT_RNOWRNOW, Warrant Officer
PAY_SHORT_RNO1RNO1, Second Lieutenant
PAY_SHORT_RNO2RNO2, First Lieutenant
PAY_SHORT_RNO3RNO3, Standing Officer
PAY_SHORT_RNO4RNO4, Captain
PAY_SHORT_RNO5RNO5, Admiral
PAY_SHORT_RNO6RNO6, Grand Admiral
PAY_SHORT_EMPEMP, Emperor

Define Details

+

PAY_SHORT_EMP + + +

+

EMP, Emperor

PAY_SHORT_RMC1 + + +

+

RMC1, Heitai-Marine

PAY_SHORT_RMC2 + + +

+

RMC2, Santo-Lance Corporal

PAY_SHORT_RMC3 + + +

+

RMC3, Nito-Corporal

PAY_SHORT_RMC4 + + +

+

RMC4, Itto-Sergeant

PAY_SHORT_RNO1 + + +

+

RNO1, Second Lieutenant

PAY_SHORT_RNO2 + + +

+

RNO2, First Lieutenant

PAY_SHORT_RNO3 + + +

+

RNO3, Standing Officer

PAY_SHORT_RNO4 + + +

+

RNO4, Captain

PAY_SHORT_RNO5 + + +

+

RNO5, Admiral

PAY_SHORT_RNO6 + + +

+

RNO6, Grand Admiral

PAY_SHORT_RNOW + + +

+

RNOW, Warrant Officer

+ + + diff --git a/code/__DEFINES/paygrade_defs/upp.html b/code/__DEFINES/paygrade_defs/upp.html new file mode 100644 index 000000000000..f85a78d29c01 --- /dev/null +++ b/code/__DEFINES/paygrade_defs/upp.html @@ -0,0 +1,127 @@ + + + + + + + code/__DEFINES/paygrade_defs/upp.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/paygrade_defs/upp.dm + +

+ + + + + + + + + + + + + + + + + + + + + +
PAY_SHORT_UECUE,
PAY_SHORT_UE1UE1, Private
PAY_SHORT_UE2UE2, Private First Class
PAY_SHORT_UE3UE3, Korporal
PAY_SHORT_UE4UE4, unior Serzhant
PAY_SHORT_UE5UE5, Serzhant
PAY_SHORT_UE6UE6, Master Serzhant
PAY_SHORT_UC1UC1, Junior Kommando
PAY_SHORT_UC2UC2, 2nd Kommando
PAY_SHORT_UC3UC3, 1st Kommando
PAY_SHORT_UO1UO1, Leytenant
PAY_SHORT_UO2UO2, Senior Leytenant
PAY_SHORT_UO3UO3, Kapitan
PAY_SHORT_UO4UO4, Mayjor
PAY_SHORT_UO4PUO4P, Political Commissar
PAY_SHORT_UO5UO5, Leytenant Kolonel
PAY_SHORT_UO6UO6, Kolonel
PAY_SHORT_UO7UO7, Mayjor General
PAY_SHORT_UO8UO8, Leytenant General
PAY_SHORT_UO9UO9, Army General

Define Details

+

PAY_SHORT_UC1 + + +

+

UC1, Junior Kommando

PAY_SHORT_UC2 + + +

+

UC2, 2nd Kommando

PAY_SHORT_UC3 + + +

+

UC3, 1st Kommando

PAY_SHORT_UE1 + + +

+

UE1, Private

PAY_SHORT_UE2 + + +

+

UE2, Private First Class

PAY_SHORT_UE3 + + +

+

UE3, Korporal

PAY_SHORT_UE4 + + +

+

UE4, unior Serzhant

PAY_SHORT_UE5 + + +

+

UE5, Serzhant

PAY_SHORT_UE6 + + +

+

UE6, Master Serzhant

PAY_SHORT_UEC + + +

+

UE,

PAY_SHORT_UO1 + + +

+

UO1, Leytenant

PAY_SHORT_UO2 + + +

+

UO2, Senior Leytenant

PAY_SHORT_UO3 + + +

+

UO3, Kapitan

PAY_SHORT_UO4 + + +

+

UO4, Mayjor

PAY_SHORT_UO4P + + +

+

UO4P, Political Commissar

PAY_SHORT_UO5 + + +

+

UO5, Leytenant Kolonel

PAY_SHORT_UO6 + + +

+

UO6, Kolonel

PAY_SHORT_UO7 + + +

+

UO7, Mayjor General

PAY_SHORT_UO8 + + +

+

UO8, Leytenant General

PAY_SHORT_UO9 + + +

+

UO9, Army General

+ + + diff --git a/code/__DEFINES/paygrade_defs/weyland.html b/code/__DEFINES/paygrade_defs/weyland.html new file mode 100644 index 000000000000..32690bb48bf5 --- /dev/null +++ b/code/__DEFINES/paygrade_defs/weyland.html @@ -0,0 +1,152 @@ + + + + + + + code/__DEFINES/paygrade_defs/weyland.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/paygrade_defs/weyland.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
PAY_SHORT_WYC1WYC1, Trainee
PAY_SHORT_WYC2WYC2, Junior Executive
PAY_SHORT_WYC3WYC3, Executive
PAY_SHORT_WYC4WYC4, Senior Executive
PAY_SHORT_WYC5WYC5, Executive Specialist
PAY_SHORT_WYC6WYC6, Executive Supervisor
PAY_SHORT_WYC7WYC7, Assistant Manager
PAY_SHORT_WYC8WYC8, Division Manager
PAY_SHORT_WYC9WYC9, Chief Executive
PAY_SHORT_WYC10WYC10, Director
PAY_SHORT_PMC_OPPMC-OP, Operator, standard PMC.
PAY_SHORT_PMC_ENPMC-EN, Enforcer
PAY_SHORT_PMC_SSPMC-SS, Support Specialist
PAY_SHORT_PMC_MSPMC-MS, Medical Specialist
PAY_SHORT_PMC_WSPMC-WS, Weapons Specialist
PAY_SHORT_PMC_VSPMC-VS, Vehicle Specialist
PAY_SHORT_PMC_XSPMC-XS, Xeno Specialist (Handler)
PAY_SHORT_PMC_TLPMC-TL, Team Leader
PAY_SHORT_PMC_DOCPMC-DOC, Trauma Surgeon
PAY_SHORT_PMC_TECPMC-ENG, Technician
PAY_SHORT_PMC_ELRPMC-ELR, Elite Responder
PAY_SHORT_PMC_ELMPMC-ELM, Elite Medic
PAY_SHORT_PMC_ELGPMC-ELG, Elite Gunner
PAY_SHORT_PMC_ETLPMC-ETL, Elite Team Leader
PAY_SHORT_PMC_DIRPMC-DIR, PMC Director

Define Details

+

PAY_SHORT_PMC_DIR + + +

+

PMC-DIR, PMC Director

PAY_SHORT_PMC_DOC + + +

+

PMC-DOC, Trauma Surgeon

PAY_SHORT_PMC_ELG + + +

+

PMC-ELG, Elite Gunner

PAY_SHORT_PMC_ELM + + +

+

PMC-ELM, Elite Medic

PAY_SHORT_PMC_ELR + + +

+

PMC-ELR, Elite Responder

PAY_SHORT_PMC_EN + + +

+

PMC-EN, Enforcer

PAY_SHORT_PMC_ETL + + +

+

PMC-ETL, Elite Team Leader

PAY_SHORT_PMC_MS + + +

+

PMC-MS, Medical Specialist

PAY_SHORT_PMC_OP + + +

+

PMC-OP, Operator, standard PMC.

PAY_SHORT_PMC_SS + + +

+

PMC-SS, Support Specialist

PAY_SHORT_PMC_TEC + + +

+

PMC-ENG, Technician

PAY_SHORT_PMC_TL + + +

+

PMC-TL, Team Leader

PAY_SHORT_PMC_VS + + +

+

PMC-VS, Vehicle Specialist

PAY_SHORT_PMC_WS + + +

+

PMC-WS, Weapons Specialist

PAY_SHORT_PMC_XS + + +

+

PMC-XS, Xeno Specialist (Handler)

PAY_SHORT_WYC1 + + +

+

WYC1, Trainee

PAY_SHORT_WYC10 + + +

+

WYC10, Director

PAY_SHORT_WYC2 + + +

+

WYC2, Junior Executive

PAY_SHORT_WYC3 + + +

+

WYC3, Executive

PAY_SHORT_WYC4 + + +

+

WYC4, Senior Executive

PAY_SHORT_WYC5 + + +

+

WYC5, Executive Specialist

PAY_SHORT_WYC6 + + +

+

WYC6, Executive Supervisor

PAY_SHORT_WYC7 + + +

+

WYC7, Assistant Manager

PAY_SHORT_WYC8 + + +

+

WYC8, Division Manager

PAY_SHORT_WYC9 + + +

+

WYC9, Chief Executive

+ + + diff --git a/code/__DEFINES/procpath.html b/code/__DEFINES/procpath.html new file mode 100644 index 000000000000..3ddf451c211d --- /dev/null +++ b/code/__DEFINES/procpath.html @@ -0,0 +1,27 @@ + + + + + + + code/__DEFINES/procpath.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__DEFINES/procpath.dm + +

+ + +
/procpathRepresents a proc or verb path.
+ + + diff --git a/code/__DEFINES/qdel.html b/code/__DEFINES/qdel.html new file mode 100644 index 000000000000..96721b4a6ef8 --- /dev/null +++ b/code/__DEFINES/qdel.html @@ -0,0 +1,99 @@ + + + + + + + code/__DEFINES/qdel.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/qdel.dm + +

+ + + + + + + + + + + + + + + + +

Defines that give qdel hints.

+

These can be given as a return in [/atom/proc/Destroy] or by calling /proc/qdel.

QDEL_HINT_QUEUEqdel should queue the object for deletion.
QDEL_HINT_LETMELIVEqdel should let the object live after calling [/atom/proc/Destroy].
QDEL_HINT_IWILLGCFunctionally the same as the above. qdel should assume the object will gc on its own, and not check it.
QDEL_HINT_HARDDELQdel should assume this object won't GC, and queue a hard delete using a hard reference.
GC_QUEUE_FILTERshort queue to filter out quick gc successes so they don't hang around in the main queue for 5 minutes
GC_QUEUE_CHECKmain queue that waits 5 minutes because thats the longest byond can hold a reference to our shit.
GC_QUEUE_HARDDELETEshort queue for things that hard delete instead of going thru the gc subsystem, this is purely so if they can softdelete, they will soft delete rather then wasting time with a hard delete.
GC_QUEUE_COUNTNumber of queues, used for allocating the nested lists. Don't forget to increase this if you add a new queue stage
GC_QUEUE_ITEM_QUEUE_TIMETime this item entered the queue
GC_QUEUE_ITEM_REFRef to the item
GC_QUEUE_ITEM_GCD_DESTROYEDItem's gc_destroyed var value. Used to detect ref reuse.
GC_QUEUE_ITEM_INDEX_COUNTNumber of item indexes, used for allocating the nested lists. Don't forget to increase this if you add a new queue item index
QDEL_ITEM_ADMINS_WARNEDSet when admins are told about lag causing qdels in this type.
QDEL_ITEM_SUSPENDED_FOR_LAGSet when a type can no longer be hard deleted on failure because of lag it causes while this happens.

Define Details

+

GC_QUEUE_CHECK + + +

+

main queue that waits 5 minutes because thats the longest byond can hold a reference to our shit.

GC_QUEUE_COUNT + + +

+

Number of queues, used for allocating the nested lists. Don't forget to increase this if you add a new queue stage

GC_QUEUE_FILTER + + +

+

short queue to filter out quick gc successes so they don't hang around in the main queue for 5 minutes

GC_QUEUE_HARDDELETE + + +

+

short queue for things that hard delete instead of going thru the gc subsystem, this is purely so if they can softdelete, they will soft delete rather then wasting time with a hard delete.

GC_QUEUE_ITEM_GCD_DESTROYED + + +

+

Item's gc_destroyed var value. Used to detect ref reuse.

GC_QUEUE_ITEM_INDEX_COUNT + + +

+

Number of item indexes, used for allocating the nested lists. Don't forget to increase this if you add a new queue item index

GC_QUEUE_ITEM_QUEUE_TIME + + +

+

Time this item entered the queue

GC_QUEUE_ITEM_REF + + +

+

Ref to the item

QDEL_HINT_HARDDEL + + +

+

Qdel should assume this object won't GC, and queue a hard delete using a hard reference.

QDEL_HINT_IWILLGC + + +

+

Functionally the same as the above. qdel should assume the object will gc on its own, and not check it.

QDEL_HINT_LETMELIVE + + +

+

qdel should let the object live after calling [/atom/proc/Destroy].

QDEL_HINT_QUEUE + + +

+

qdel should queue the object for deletion.

QDEL_ITEM_ADMINS_WARNED + + +

+

Set when admins are told about lag causing qdels in this type.

QDEL_ITEM_SUSPENDED_FOR_LAG + + +

+

Set when a type can no longer be hard deleted on failure because of lag it causes while this happens.

+ + + diff --git a/code/__DEFINES/shuttles.html b/code/__DEFINES/shuttles.html new file mode 100644 index 000000000000..b443216618c9 --- /dev/null +++ b/code/__DEFINES/shuttles.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/shuttles.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/shuttles.dm + +

+ + +
GAMEMODE_IMMUNEshuttle is immune to gamemode timer restrictions

Define Details

+

GAMEMODE_IMMUNE + + +

+

shuttle is immune to gamemode timer restrictions

+ + + diff --git a/code/__DEFINES/skills.html b/code/__DEFINES/skills.html new file mode 100644 index 000000000000..4940414010bc --- /dev/null +++ b/code/__DEFINES/skills.html @@ -0,0 +1,77 @@ + + + + + + + code/__DEFINES/skills.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/skills.dm + +

+ + + + + + + + + + + +
SKILL_SPEC_TRAINEDIs trained to use specialist gear, but hasn't picked a kit.
SKILL_SPEC_KITTEDIs trained to use specialist gear & HAS picked a kit. (Functionally same as SPEC_ROCKET)
SKILL_SPEC_ROCKETCan use RPG
SKILL_SPEC_SCOUTCan use thermal cloaks and custom M4RA rifle
SKILL_SPEC_SNIPERCan use sniper rifles and camo suits
SKILL_SPEC_GRENADIERCan use the rotary grenade launcher and heavy armor
SKILL_SPEC_PYROCan use heavy flamers
SKILL_SPEC_SMARTGUNCan use smartguns
SKILL_SPEC_UPPUPP special training
SKILL_SPEC_ALLCan use ALL specialist weapons

Define Details

+

SKILL_SPEC_ALL + + +

+

Can use ALL specialist weapons

SKILL_SPEC_GRENADIER + + +

+

Can use the rotary grenade launcher and heavy armor

SKILL_SPEC_KITTED + + +

+

Is trained to use specialist gear & HAS picked a kit. (Functionally same as SPEC_ROCKET)

SKILL_SPEC_PYRO + + +

+

Can use heavy flamers

SKILL_SPEC_ROCKET + + +

+

Can use RPG

SKILL_SPEC_SCOUT + + +

+

Can use thermal cloaks and custom M4RA rifle

SKILL_SPEC_SMARTGUN + + +

+

Can use smartguns

SKILL_SPEC_SNIPER + + +

+

Can use sniper rifles and camo suits

SKILL_SPEC_TRAINED + + +

+

Is trained to use specialist gear, but hasn't picked a kit.

SKILL_SPEC_UPP + + +

+

UPP special training

+ + + diff --git a/code/__DEFINES/status_effects.html b/code/__DEFINES/status_effects.html new file mode 100644 index 000000000000..3b8be340d70b --- /dev/null +++ b/code/__DEFINES/status_effects.html @@ -0,0 +1,79 @@ + + + + + + + code/__DEFINES/status_effects.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/status_effects.dm + +

+ + + + + + + + + + + +
STATUS_EFFECT_MULTIPLEif it allows multiple instances of the effect
STATUS_EFFECT_UNIQUEif it allows only one, preventing new instances
STATUS_EFFECT_REPLACEif it allows only one, but new instances replace
STATUS_EFFECT_REFRESHif it only allows one, and new instances just instead refresh the timer
STATUS_EFFECT_FAST_PROCESSProcessing flags - used to define the speed at which the status will work +This is fast - 0.2s between ticks (I believe!)
STATUS_EFFECT_NORMAL_PROCESSThis is slower and better for more intensive status effects - 1s between ticks
IGNORE_RESTRAINTSIf the incapacitated status effect will ignore a mob in restraints (handcuffs)
IGNORE_STASISIf the incapacitated status effect will ignore a mob in stasis (stasis beds)
IGNORE_GRABIf the incapacitated status effect will ignore a mob being agressively grabbed
STATUS_EFFECT_TIME_THRESHOLDTime threshold after which we launch ending timer - this should be higher than the slowest processing rate

Define Details

+

IGNORE_GRAB + + +

+

If the incapacitated status effect will ignore a mob being agressively grabbed

IGNORE_RESTRAINTS + + +

+

If the incapacitated status effect will ignore a mob in restraints (handcuffs)

IGNORE_STASIS + + +

+

If the incapacitated status effect will ignore a mob in stasis (stasis beds)

STATUS_EFFECT_FAST_PROCESS + + +

+

Processing flags - used to define the speed at which the status will work +This is fast - 0.2s between ticks (I believe!)

STATUS_EFFECT_MULTIPLE + + +

+

if it allows multiple instances of the effect

STATUS_EFFECT_NORMAL_PROCESS + + +

+

This is slower and better for more intensive status effects - 1s between ticks

STATUS_EFFECT_REFRESH + + +

+

if it only allows one, and new instances just instead refresh the timer

STATUS_EFFECT_REPLACE + + +

+

if it allows only one, but new instances replace

STATUS_EFFECT_TIME_THRESHOLD + + +

+

Time threshold after which we launch ending timer - this should be higher than the slowest processing rate

STATUS_EFFECT_UNIQUE + + +

+

if it allows only one, preventing new instances

+ + + diff --git a/code/__DEFINES/strippable.html b/code/__DEFINES/strippable.html new file mode 100644 index 000000000000..ff44476ff94d --- /dev/null +++ b/code/__DEFINES/strippable.html @@ -0,0 +1,42 @@ + + + + + + + code/__DEFINES/strippable.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/strippable.dm + +

+ + + + +
STRIPPABLE_OBSCURING_NONEThis slot is not obscured.
STRIPPABLE_OBSCURING_COMPLETELYThis slot is completely obscured, and cannot be accessed.
STRIPPABLE_OBSCURING_HIDDENThis slot can't be seen, but can be accessed.

Define Details

+

STRIPPABLE_OBSCURING_COMPLETELY + + +

+

This slot is completely obscured, and cannot be accessed.

STRIPPABLE_OBSCURING_HIDDEN + + +

+

This slot can't be seen, but can be accessed.

STRIPPABLE_OBSCURING_NONE + + +

+

This slot is not obscured.

+ + + diff --git a/code/__DEFINES/subsystems.html b/code/__DEFINES/subsystems.html new file mode 100644 index 000000000000..340f082fa779 --- /dev/null +++ b/code/__DEFINES/subsystems.html @@ -0,0 +1,214 @@ + + + + + + + code/__DEFINES/subsystems.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/subsystems.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Defines for subsystems and overlays

+

Lots of important stuff in here, make sure you have your brain switched on +when editing this file

+Timing subsystem
TIMER_UNIQUEDon't run if there is an identical unique timer active
TIMER_OVERRIDEFor unique timers: Replace the old timer rather then not start this one
TIMER_CLIENT_TIMETiming should be based on how timing progresses on clients, not the server.
TIMER_STOPPABLETimer can be stopped using deltimer()
TIMER_NO_HASH_WAITprevents distinguishing identical timers with the wait variable
TIMER_LOOPLoops the timer repeatedly until qdeleted
TIMER_DELETE_MEDelete the timer on parent datum Destroy() and when deltimer'd
TIMER_ID_NULLEmpty ID define
PROCESS_KILLUsed to trigger object removal from a processing list
Initialization subsystem
INITIALIZATION_INSSATOMSNew should not call Initialize
INITIALIZATION_INNEW_MAPLOADNew should call Initialize(TRUE)
INITIALIZATION_INNEW_REGULARNew should call Initialize(FALSE)
Initialization hints
INITIALIZE_HINT_NORMALNothing happens
INITIALIZE_HINT_LATELOADcall LateInitialize at the end of all atom Initalization
INITIALIZE_HINT_QDELCall qdel on the atom after intialization
INITIALIZE_HINT_ROUNDSTARTCall LateInitialize on roundstart
INITIALIZE_IMMEDIATEtype and all subtypes should always immediately call Initialize in New()
SS initialization hints
SS_INIT_FAILURENegative values incidate a failure or warning of some kind, positive are good. +0 and 1 are unused so that TRUE and FALSE are guaranteed to be invalid values. +Subsystem failed to initialize entirely. Print a warning, log, and disable firing.
SS_INIT_NONEThe default return value which must be overridden. Will succeed with a warning.
SS_INIT_SUCCESSSubsystem initialized sucessfully.
SS_INIT_NO_NEEDSuccessful, but don't print anything. Useful if subsystem was disabled.
SS initialization load orders
GAME_STATE_STARTUPGame is loading
GAME_STATE_PREGAMEGame is loaded and in pregame lobby
GAME_STATE_SETTING_UPGame is attempting to start the round
GAME_STATE_PLAYINGGame has round in progress
GAME_STATE_FINISHEDGame has round finished
addtimerCreate a new timer and add it to the queue.
SS_INIT_TIMER_KEYThe timer key used to know how long subsystem initialization takes

Define Details

+

GAME_STATE_FINISHED + + +

+

Game has round finished

GAME_STATE_PLAYING + + +

+

Game has round in progress

GAME_STATE_PREGAME + + +

+

Game is loaded and in pregame lobby

GAME_STATE_SETTING_UP + + +

+

Game is attempting to start the round

GAME_STATE_STARTUP + + +

+

Game is loading

INITIALIZATION_INNEW_MAPLOAD + + +

+

New should call Initialize(TRUE)

INITIALIZATION_INNEW_REGULAR + + +

+

New should call Initialize(FALSE)

INITIALIZATION_INSSATOMS + + +

+

New should not call Initialize

INITIALIZE_HINT_LATELOAD + + +

+

call LateInitialize at the end of all atom Initalization

+

The item will be added to the late_loaders list, this is iterated over after +initalization of subsystems is complete and calls LateInitalize on the atom +see this file for the LateIntialize proc

INITIALIZE_HINT_NORMAL + + +

+

Nothing happens

INITIALIZE_HINT_QDEL + + +

+

Call qdel on the atom after intialization

INITIALIZE_HINT_ROUNDSTART + + +

+

Call LateInitialize on roundstart

INITIALIZE_IMMEDIATE + + + +

+

type and all subtypes should always immediately call Initialize in New()

PROCESS_KILL + + +

+

Used to trigger object removal from a processing list

SS_INIT_FAILURE + + +

+

Negative values incidate a failure or warning of some kind, positive are good. +0 and 1 are unused so that TRUE and FALSE are guaranteed to be invalid values. +Subsystem failed to initialize entirely. Print a warning, log, and disable firing.

SS_INIT_NONE + + +

+

The default return value which must be overridden. Will succeed with a warning.

SS_INIT_NO_NEED + + +

+

Successful, but don't print anything. Useful if subsystem was disabled.

SS_INIT_SUCCESS + + +

+

Subsystem initialized sucessfully.

SS_INIT_TIMER_KEY + + +

+

The timer key used to know how long subsystem initialization takes

TIMER_CLIENT_TIME + + +

+

Timing should be based on how timing progresses on clients, not the server.

+

Tracking this is more expensive, +should only be used in conjuction with things that have to progress client side, such as +animate() or sound()

TIMER_DELETE_ME + + +

+

Delete the timer on parent datum Destroy() and when deltimer'd

TIMER_ID_NULL + + +

+

Empty ID define

TIMER_LOOP + + +

+

Loops the timer repeatedly until qdeleted

+

In most cases you want a subsystem instead, so don't use this unless you have a good reason

TIMER_NO_HASH_WAIT + + +

+

prevents distinguishing identical timers with the wait variable

+

To be used with TIMER_UNIQUE

TIMER_OVERRIDE + + +

+

For unique timers: Replace the old timer rather then not start this one

TIMER_STOPPABLE + + +

+

Timer can be stopped using deltimer()

TIMER_UNIQUE + + +

+

Don't run if there is an identical unique timer active

+

if the arguments to addtimer are the same as an existing timer, it doesn't create a new timer, +and returns the id of the existing timer

addtimer + + + +

+

Create a new timer and add it to the queue.

+
+ + + diff --git a/code/__DEFINES/supply.html b/code/__DEFINES/supply.html new file mode 100644 index 000000000000..7a9619bf9b37 --- /dev/null +++ b/code/__DEFINES/supply.html @@ -0,0 +1,42 @@ + + + + + + + code/__DEFINES/supply.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/supply.dm + +

+ + + + +
ASRS_POOL_MAINMain pool of ASRS supplies, dispensing military supplies such as ammo
ASRS_POOL_FOODSecondary ASRS pool dispening food related items for MessTech
ASRS_XENO_CRATES_DIVIDERDivider to the amount of xeno forces on the planet to ASRS provided crates. It is used as such sqrt(xenos/ASRS_XENO_CRATES_DIVIDER))

Define Details

+

ASRS_POOL_FOOD + + +

+

Secondary ASRS pool dispening food related items for MessTech

ASRS_POOL_MAIN + + +

+

Main pool of ASRS supplies, dispensing military supplies such as ammo

ASRS_XENO_CRATES_DIVIDER + + +

+

Divider to the amount of xeno forces on the planet to ASRS provided crates. It is used as such sqrt(xenos/ASRS_XENO_CRATES_DIVIDER))

+ + + diff --git a/code/__DEFINES/surgery.html b/code/__DEFINES/surgery.html new file mode 100644 index 000000000000..7a6aee109f24 --- /dev/null +++ b/code/__DEFINES/surgery.html @@ -0,0 +1,205 @@ + + + + + + + code/__DEFINES/surgery.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/surgery.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
is_surgery_toolchecks if the item has a path that can be specifically used in a surgery step.
is_surgery_init_toolchecks if the item has a path that can be specifically used in a surgery step and is not flagged to not message on failed init - ex. cable coil, trauma kits etc.
SELF_SURGERY_SLOWDOWNMultiplier to surgery times when working on yourself.
SURGERY_DEPTH_SURFACENo incision.
SURGERY_DEPTH_SHALLOWAn incision has been opened.
SURGERY_DEPTH_DEEPDeep incision - opened ribcage/skull.
SURGERY_SURFACE_MULT_AWFULA surface that's utterly unsuitable for complex surgery. Worst possible case.
SURGERY_SURFACE_MULT_UNSUITEDA surface unsuited for surgery, but better than nothing.
SURGERY_SURFACE_MULT_ADEQUATEA surface that's adequate for surgery, if not ideal.
SURGERY_SURFACE_MULT_IDEALA surface that's ideal for performing surgeries.
SURGERY_TOOL_MULT_AWFULA tool that's badly unsuitable for the surgery. Worst usable case. Using a glass shard instead of a scalpel, using a bayonet to saw off a limb's bone.
SURGERY_TOOL_MULT_BAD_SUBSTITUTEAn improvised substitute for an ill-fitting tool. Using wirecutters instead of a retractor.
SURGERY_TOOL_MULT_SUBSTITUTEA tool that's functional, but hardly good. Generally an improvised substitute for a well-matching tool - wirecutters instead of haemostat.
SURGERY_TOOL_MULT_SUBOPTIMALA tool that's a good, if not ideal, fit for the surgery -- generally a real surgical tool used slightly out of its role. Haemostat instead of retractor, fixovein instead of sutures.
SURGERY_TOOL_MULT_IDEALA tool that's perfect for the surgery.
SURGERY_FAILURE_IMPOSSIBLEThe (no) chance of failure for surgery because the correct tools/conditions are used or skill compensates
SURGERY_FAILURE_UNLIKELYThe chance of failure for surgery because the the tool/ground is SURGERY_TOOL_MULT_BAD_SUBSTITUTE/SURGERY_SURFACE_MULT_UNSUITED and skill can't compensate enough
SURGERY_FAILURE_POSSIBLEThe chance of failure for surgery because the the tool/ground is SURGERY_TOOL_MULT_AWFUL/SURGERY_SURFACE_MULT_AWFUL and skill can't compensate enough
SURGERY_FAILURE_LIKELYThe chance of failure for surgery because the the tool and ground is some combination worse than awful and skill can't compensate enough
SURGERY_PRIORITY_MAXIMUMAppears first in lists. Ex. larva surgery, opening incision. Immediately life-threatening or initiation surgeries.
SURGERY_PRIORITY_HIGHAppears second in lists. Ex. IB fix, bleeding surgeries. Life-threatening or liable to get worse.
SURGERY_PRIORITY_MODERATEAppears third in lists. Ex. bone fix, tending wounds. Worth doing but not immediately threatening. Most surgeries will be here.
SURGERY_PRIORITY_LOWAppears fourth in lists. Ex. opening ribs, amputation. Things that shouldn't be at the top of a list.
SURGERY_PRIORITY_MINIMUMAppears last in lists. Ex. cauterizing incision, closing ribcage. Concluding steps.
SURGERY_TOOLS_NO_INIT_MSGTools routinely used to hit people, which wouldn't make sense to give 'you can't open an incision with xyz' messages.
SURGERY_TOOLS_INCISIONTools used to open incisions or cut flesh. IMS listed separately as the generic incision surgery uses it to skip steps. +PICT isn't as fast as standard to disincentivise using it instead of a normal scalpel. +See also /datum/surgery_step/cut_larval_pseudoroots, /datum/surgery_step/retract_skin.
SURGERY_TOOLS_CAUTERIZETools used to close incisions. May need surgical line in future. Check /datum/surgery_step/cauterize var/tools_lit if adding activatable tools.
SURGERY_TOOLS_PINCHTools used to grab and remove things delicately. See also /datum/surgery_step/remove_larva.
SURGERY_TOOLS_PRY_DELICATETools used to pry things very finely. No crowbar, fork works decently; it can't pinch, but it's easier to maneuver precisely than wirecutters.
SURGERY_TOOLS_MEND_BLOODVESSELTools used to patch damaged bloodvessels. Same tools as SUTURE, but fixovein exists specifically for this work and is best at it.
SURGERY_TOOLS_SUTURETools used to suture damaged flesh. Same tools as BLOODVESSEL, but surgical line is ideal for this.
SURGERY_TOOLS_SEVER_BONETools used to sever limb bones. Same tools as /datum/surgery_step/saw_encased, but with hacking/chopping tools being better than sawing. +See also /datum/surgery_step/saw_off_limb/failure var/list/cannot_hack, listing the tools that can't instantly chop a limb.
SURGERY_TOOLS_PRY_ENCASEDTools used to open and close ribs/skull. Heavy-duty prying, haemostat/wirecutter won't cut it.
SURGERY_TOOLS_BONE_MENDTools used to patch lightly damaged bones or before setting. May need surgical line in future.

Define Details

+

SELF_SURGERY_SLOWDOWN + + +

+

Multiplier to surgery times when working on yourself.

SURGERY_DEPTH_DEEP + + +

+

Deep incision - opened ribcage/skull.

SURGERY_DEPTH_SHALLOW + + +

+

An incision has been opened.

SURGERY_DEPTH_SURFACE + + +

+

No incision.

SURGERY_FAILURE_IMPOSSIBLE + + +

+

The (no) chance of failure for surgery because the correct tools/conditions are used or skill compensates

SURGERY_FAILURE_LIKELY + + +

+

The chance of failure for surgery because the the tool and ground is some combination worse than awful and skill can't compensate enough

SURGERY_FAILURE_POSSIBLE + + +

+

The chance of failure for surgery because the the tool/ground is SURGERY_TOOL_MULT_AWFUL/SURGERY_SURFACE_MULT_AWFUL and skill can't compensate enough

SURGERY_FAILURE_UNLIKELY + + +

+

The chance of failure for surgery because the the tool/ground is SURGERY_TOOL_MULT_BAD_SUBSTITUTE/SURGERY_SURFACE_MULT_UNSUITED and skill can't compensate enough

SURGERY_PRIORITY_HIGH + + +

+

Appears second in lists. Ex. IB fix, bleeding surgeries. Life-threatening or liable to get worse.

SURGERY_PRIORITY_LOW + + +

+

Appears fourth in lists. Ex. opening ribs, amputation. Things that shouldn't be at the top of a list.

SURGERY_PRIORITY_MAXIMUM + + +

+

Appears first in lists. Ex. larva surgery, opening incision. Immediately life-threatening or initiation surgeries.

SURGERY_PRIORITY_MINIMUM + + +

+

Appears last in lists. Ex. cauterizing incision, closing ribcage. Concluding steps.

SURGERY_PRIORITY_MODERATE + + +

+

Appears third in lists. Ex. bone fix, tending wounds. Worth doing but not immediately threatening. Most surgeries will be here.

SURGERY_SURFACE_MULT_ADEQUATE + + +

+

A surface that's adequate for surgery, if not ideal.

SURGERY_SURFACE_MULT_AWFUL + + +

+

A surface that's utterly unsuitable for complex surgery. Worst possible case.

SURGERY_SURFACE_MULT_IDEAL + + +

+

A surface that's ideal for performing surgeries.

SURGERY_SURFACE_MULT_UNSUITED + + +

+

A surface unsuited for surgery, but better than nothing.

SURGERY_TOOLS_BONE_MEND + + +

+

Tools used to patch lightly damaged bones or before setting. May need surgical line in future.

SURGERY_TOOLS_CAUTERIZE + + +

+

Tools used to close incisions. May need surgical line in future. Check /datum/surgery_step/cauterize var/tools_lit if adding activatable tools.

SURGERY_TOOLS_INCISION + + +

+

Tools used to open incisions or cut flesh. IMS listed separately as the generic incision surgery uses it to skip steps. +PICT isn't as fast as standard to disincentivise using it instead of a normal scalpel. +See also /datum/surgery_step/cut_larval_pseudoroots, /datum/surgery_step/retract_skin.

SURGERY_TOOLS_MEND_BLOODVESSEL + + +

+

Tools used to patch damaged bloodvessels. Same tools as SUTURE, but fixovein exists specifically for this work and is best at it.

SURGERY_TOOLS_NO_INIT_MSG + + +

+

Tools routinely used to hit people, which wouldn't make sense to give 'you can't open an incision with xyz' messages.

SURGERY_TOOLS_PINCH + + +

+

Tools used to grab and remove things delicately. See also /datum/surgery_step/remove_larva.

SURGERY_TOOLS_PRY_DELICATE + + +

+

Tools used to pry things very finely. No crowbar, fork works decently; it can't pinch, but it's easier to maneuver precisely than wirecutters.

SURGERY_TOOLS_PRY_ENCASED + + +

+

Tools used to open and close ribs/skull. Heavy-duty prying, haemostat/wirecutter won't cut it.

SURGERY_TOOLS_SEVER_BONE + + +

+

Tools used to sever limb bones. Same tools as /datum/surgery_step/saw_encased, but with hacking/chopping tools being better than sawing. +See also /datum/surgery_step/saw_off_limb/failure var/list/cannot_hack, listing the tools that can't instantly chop a limb.

SURGERY_TOOLS_SUTURE + + +

+

Tools used to suture damaged flesh. Same tools as BLOODVESSEL, but surgical line is ideal for this.

SURGERY_TOOL_MULT_AWFUL + + +

+

A tool that's badly unsuitable for the surgery. Worst usable case. Using a glass shard instead of a scalpel, using a bayonet to saw off a limb's bone.

SURGERY_TOOL_MULT_BAD_SUBSTITUTE + + +

+

An improvised substitute for an ill-fitting tool. Using wirecutters instead of a retractor.

SURGERY_TOOL_MULT_IDEAL + + +

+

A tool that's perfect for the surgery.

SURGERY_TOOL_MULT_SUBOPTIMAL + + +

+

A tool that's a good, if not ideal, fit for the surgery -- generally a real surgical tool used slightly out of its role. Haemostat instead of retractor, fixovein instead of sutures.

SURGERY_TOOL_MULT_SUBSTITUTE + + +

+

A tool that's functional, but hardly good. Generally an improvised substitute for a well-matching tool - wirecutters instead of haemostat.

is_surgery_init_tool + + + +

+

checks if the item has a path that can be specifically used in a surgery step and is not flagged to not message on failed init - ex. cable coil, trauma kits etc.

is_surgery_tool + + + +

+

checks if the item has a path that can be specifically used in a surgery step.

+ + + diff --git a/code/__DEFINES/techtree.html b/code/__DEFINES/techtree.html new file mode 100644 index 000000000000..318c8d280df3 --- /dev/null +++ b/code/__DEFINES/techtree.html @@ -0,0 +1,47 @@ + + + + + + + code/__DEFINES/techtree.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/techtree.dm + +

+ + + + + +
TECH_FLAG_MULTIUSEThe tech can be purchased multiple times
TECH_FLAG_DISABLEDPrevents a tech from being added to the tech trees
TECH_FLAG_NO_ANNOUNCEDon't announce when this tech is bought.
PASSIVE_INCREASE_AMOUNTControls the passive increase amount.

Define Details

+

PASSIVE_INCREASE_AMOUNT + + +

+

Controls the passive increase amount.

TECH_FLAG_DISABLED + + +

+

Prevents a tech from being added to the tech trees

TECH_FLAG_MULTIUSE + + +

+

The tech can be purchased multiple times

TECH_FLAG_NO_ANNOUNCE + + +

+

Don't announce when this tech is bought.

+ + + diff --git a/code/__DEFINES/text.html b/code/__DEFINES/text.html new file mode 100644 index 000000000000..00092e2a5379 --- /dev/null +++ b/code/__DEFINES/text.html @@ -0,0 +1,62 @@ + + + + + + + code/__DEFINES/text.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/text.dm + +

+ + + + + + + +
MAPTEXTPrepares a text to be used for maptext. Use this so it doesn't look hideous.
MAPTEXT_VCR_OSD_MONOPrepares a text to be used for maptext, using a font that can handle larger text better.
WXH_TO_HEIGHTMacro from Lummox used to get height from a MeasureText proc
SANITIZE_FILENAMERemoves characters incompatible with file names.
STRIP_HTML_SIMPLESimply removes the < and > characters, and limits the length of the message.
SHOW_MESSAGE_VISIBLEdefines related to text related procs

Define Details

+

MAPTEXT + + + +

+

Prepares a text to be used for maptext. Use this so it doesn't look hideous.

MAPTEXT_VCR_OSD_MONO + + + +

+

Prepares a text to be used for maptext, using a font that can handle larger text better.

SANITIZE_FILENAME + + + +

+

Removes characters incompatible with file names.

SHOW_MESSAGE_VISIBLE + + +

+

defines related to text related procs

STRIP_HTML_SIMPLE + + + +

+

Simply removes the < and > characters, and limits the length of the message.

WXH_TO_HEIGHT + + + +

+

Macro from Lummox used to get height from a MeasureText proc

+ + + diff --git a/code/__DEFINES/tgs.html b/code/__DEFINES/tgs.html new file mode 100644 index 000000000000..d9a9cce25c69 --- /dev/null +++ b/code/__DEFINES/tgs.html @@ -0,0 +1,237 @@ + + + + + + + code/__DEFINES/tgs.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/tgs.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TGS_FILE2TEXT_NATIVEConsumers SHOULD create this define if you want to do TGS configuration outside of this file.
TGS_EVENT_REBOOT_MODE_CHANGEBefore a reboot mode change, extras parameters are the current and new reboot mode enums.
TGS_EVENT_PORT_SWAPBefore a port change is about to happen, extra parameters is new port.
TGS_EVENT_INSTANCE_RENAMEDBefore the instance is renamed, extra parameter is the new name.
TGS_EVENT_WATCHDOG_REATTACHAfter the watchdog reattaches to DD, extra parameter is the new /datum/tgs_version of the server.
TGS_EVENT_HEALTH_CHECKWhen the watchdog sends a health check to DD. No parameters.
TGS_EVENT_REPO_RESET_ORIGINWhen the repository is reset to its origin reference. Parameters: Reference name, Commit SHA.
TGS_EVENT_REPO_CHECKOUTWhen the repository performs a checkout. Parameters: Checkout git object.
TGS_EVENT_REPO_FETCHWhen the repository performs a fetch operation. No parameters.
TGS_EVENT_REPO_MERGE_PULL_REQUESTWhen the repository test merges. Parameters: PR Number, PR Sha, (Nullable) Comment made by TGS user.
TGS_EVENT_REPO_PRE_SYNCHRONIZEBefore the repository makes a sychronize operation. Parameters: Absolute repostiory path.
TGS_EVENT_ENGINE_INSTALL_STARTBefore a engine install operation begins. Parameters: Version string of the installing engine.
TGS_EVENT_ENGINE_INSTALL_FAILWhen a engine install operation fails. Parameters: Error message
TGS_EVENT_ENGINE_ACTIVE_VERSION_CHANGEWhen the active engine version changes. Parameters: (Nullable) Version string of the current engine, version string of the new engine.
TGS_EVENT_COMPILE_STARTWhen the compiler starts running. Parameters: Game directory path, origin commit SHA.
TGS_EVENT_COMPILE_CANCELLEDWhen a compile is cancelled. No parameters.
TGS_EVENT_COMPILE_FAILUREWhen a compile fails. Parameters: Game directory path, [TRUE]/[FALSE] based on if the cause for failure was DMAPI validation.
TGS_EVENT_COMPILE_COMPLETEWhen a compile operation completes. Note, this event fires before the new .dmb is loaded into the watchdog. Consider using the TGS_EVENT_DEPLOYMENT_COMPLETE instead. Parameters: Game directory path.
TGS_EVENT_INSTANCE_AUTO_UPDATE_STARTWhen an automatic update for the current instance begins. No parameters.
TGS_EVENT_REPO_MERGE_CONFLICTWhen the repository encounters a merge conflict: Parameters: Base SHA, target SHA, base reference, target reference.
TGS_EVENT_DEPLOYMENT_COMPLETEWhen a deployment completes. No Parameters.
TGS_EVENT_WATCHDOG_SHUTDOWNBefore the watchdog shuts down. Not sent for graceful shutdowns. No parameters.
TGS_EVENT_WATCHDOG_DETACHBefore the watchdog detaches for a TGS update/restart. No parameters.
TGS_EVENT_WORLD_PRIMEWatchdog event when TgsInitializationComplete() is called. No parameters.
TGS_EVENT_REPO_SUBMODULE_UPDATEAfter a single submodule update is performed. Parameters: Updated submodule name.
TGS_EVENT_PRE_DREAM_MAKERAfter CodeModifications are applied, before DreamMaker is run. Parameters: Game directory path, origin commit sha, version string of the used engine.
TGS_EVENT_DEPLOYMENT_CLEANUPWhenever a deployment folder is deleted from disk. Parameters: Game directory path.
TGS_REBOOT_MODE_NORMALThe server will reboot normally.
TGS_REBOOT_MODE_SHUTDOWNThe server will stop running on reboot.
TGS_REBOOT_MODE_RESTARTThe watchdog will restart on reboot.
TGS_SECURITY_TRUSTEDDreamDaemon Trusted security level.
TGS_SECURITY_SAFEDreamDaemon Safe security level.
TGS_SECURITY_ULTRASAFEDreamDaemon Ultrasafe security level.
TGS_VISIBILITY_PUBLICDreamDaemon public visibility level.
TGS_VISIBILITY_PRIVATEDreamDaemon private visibility level.
TGS_VISIBILITY_INVISIBLEDreamDaemon invisible visibility level.
TGS_ENGINE_TYPE_BYONDThe Build Your Own Net Dream engine.
TGS_ENGINE_TYPE_OPENDREAMThe OpenDream engine.
TGS_TOPICConsumers MUST run this macro at the start of [/world/proc/Topic].
/datum/tgs_revision_informationRepresents git revision information.
/datum/tgs_versionRepresents a version.
/datum/tgs_revision_information/test_mergeRepresents a merge of a GitHub pull request.
/datum/tgs_chat_channelRepresents a connected chat channel.
/datum/tgs_event_handlerUser definable handler for TGS events This abstract version SHOULD be overridden to be used.
/datum/tgs_http_handlerUser definable handler for HTTP calls. This abstract version MUST be overridden to be used.
/datum/tgs_http_resultResult of a /datum/tgs_http_handler call. MUST NOT be overridden.
/datum/tgs_chat_commandUser definable chat command. This abstract version MUST be overridden to be used.
/datum/tgs_message_contentUser definable chat message. MUST NOT be overridden.
/datum/tgs_chat_embed/structureUser definable chat embed. Currently mirrors Discord chat embeds. See https://discord.com/developers/docs/resources/message#embed-object for details.
/datum/tgs_chat_embed/mediaCommon datum for similar Discord embed medias.
/datum/tgs_chat_embed/footerSee https://discord.com/developers/docs/resources/message#embed-object-embed-footer-structure for details.
/datum/tgs_chat_embed/providerSee https://discord.com/developers/docs/resources/message#embed-object-embed-provider-structure for details.
/datum/tgs_chat_embed/provider/authorSee https://discord.com/developers/docs/resources/message#embed-object-embed-author-structure for details. Must have name set in New().
/datum/tgs_chat_embed/fieldSee https://discord.com/developers/docs/resources/message#embed-object-embed-field-structure for details.

Define Details

+

TGS_ENGINE_TYPE_BYOND + + +

+

The Build Your Own Net Dream engine.

TGS_ENGINE_TYPE_OPENDREAM + + +

+

The OpenDream engine.

TGS_EVENT_COMPILE_CANCELLED + + +

+

When a compile is cancelled. No parameters.

TGS_EVENT_COMPILE_COMPLETE + + +

+

When a compile operation completes. Note, this event fires before the new .dmb is loaded into the watchdog. Consider using the TGS_EVENT_DEPLOYMENT_COMPLETE instead. Parameters: Game directory path.

TGS_EVENT_COMPILE_FAILURE + + +

+

When a compile fails. Parameters: Game directory path, [TRUE]/[FALSE] based on if the cause for failure was DMAPI validation.

TGS_EVENT_COMPILE_START + + +

+

When the compiler starts running. Parameters: Game directory path, origin commit SHA.

TGS_EVENT_DEPLOYMENT_CLEANUP + + +

+

Whenever a deployment folder is deleted from disk. Parameters: Game directory path.

TGS_EVENT_DEPLOYMENT_COMPLETE + + +

+

When a deployment completes. No Parameters.

TGS_EVENT_ENGINE_ACTIVE_VERSION_CHANGE + + +

+

When the active engine version changes. Parameters: (Nullable) Version string of the current engine, version string of the new engine.

TGS_EVENT_ENGINE_INSTALL_FAIL + + +

+

When a engine install operation fails. Parameters: Error message

TGS_EVENT_ENGINE_INSTALL_START + + +

+

Before a engine install operation begins. Parameters: Version string of the installing engine.

TGS_EVENT_HEALTH_CHECK + + +

+

When the watchdog sends a health check to DD. No parameters.

TGS_EVENT_INSTANCE_AUTO_UPDATE_START + + +

+

When an automatic update for the current instance begins. No parameters.

TGS_EVENT_INSTANCE_RENAMED + + +

+

Before the instance is renamed, extra parameter is the new name.

TGS_EVENT_PORT_SWAP + + +

+

Before a port change is about to happen, extra parameters is new port.

TGS_EVENT_PRE_DREAM_MAKER + + +

+

After CodeModifications are applied, before DreamMaker is run. Parameters: Game directory path, origin commit sha, version string of the used engine.

TGS_EVENT_REBOOT_MODE_CHANGE + + +

+

Before a reboot mode change, extras parameters are the current and new reboot mode enums.

TGS_EVENT_REPO_CHECKOUT + + +

+

When the repository performs a checkout. Parameters: Checkout git object.

TGS_EVENT_REPO_FETCH + + +

+

When the repository performs a fetch operation. No parameters.

TGS_EVENT_REPO_MERGE_CONFLICT + + +

+

When the repository encounters a merge conflict: Parameters: Base SHA, target SHA, base reference, target reference.

TGS_EVENT_REPO_MERGE_PULL_REQUEST + + +

+

When the repository test merges. Parameters: PR Number, PR Sha, (Nullable) Comment made by TGS user.

TGS_EVENT_REPO_PRE_SYNCHRONIZE + + +

+

Before the repository makes a sychronize operation. Parameters: Absolute repostiory path.

TGS_EVENT_REPO_RESET_ORIGIN + + +

+

When the repository is reset to its origin reference. Parameters: Reference name, Commit SHA.

TGS_EVENT_REPO_SUBMODULE_UPDATE + + +

+

After a single submodule update is performed. Parameters: Updated submodule name.

TGS_EVENT_WATCHDOG_DETACH + + +

+

Before the watchdog detaches for a TGS update/restart. No parameters.

TGS_EVENT_WATCHDOG_REATTACH + + +

+

After the watchdog reattaches to DD, extra parameter is the new /datum/tgs_version of the server.

TGS_EVENT_WATCHDOG_SHUTDOWN + + +

+

Before the watchdog shuts down. Not sent for graceful shutdowns. No parameters.

TGS_EVENT_WORLD_PRIME + + +

+

Watchdog event when TgsInitializationComplete() is called. No parameters.

TGS_FILE2TEXT_NATIVE + + +

+

Consumers SHOULD create this define if you want to do TGS configuration outside of this file.

TGS_REBOOT_MODE_NORMAL + + +

+

The server will reboot normally.

TGS_REBOOT_MODE_RESTART + + +

+

The watchdog will restart on reboot.

TGS_REBOOT_MODE_SHUTDOWN + + +

+

The server will stop running on reboot.

TGS_SECURITY_SAFE + + +

+

DreamDaemon Safe security level.

TGS_SECURITY_TRUSTED + + +

+

DreamDaemon Trusted security level.

TGS_SECURITY_ULTRASAFE + + +

+

DreamDaemon Ultrasafe security level.

TGS_TOPIC + + +

+

Consumers MUST run this macro at the start of [/world/proc/Topic].

TGS_VISIBILITY_INVISIBLE + + +

+

DreamDaemon invisible visibility level.

TGS_VISIBILITY_PRIVATE + + +

+

DreamDaemon private visibility level.

TGS_VISIBILITY_PUBLIC + + +

+

DreamDaemon public visibility level.

+ + + diff --git a/code/__DEFINES/tgui.html b/code/__DEFINES/tgui.html new file mode 100644 index 000000000000..4f10875c35e4 --- /dev/null +++ b/code/__DEFINES/tgui.html @@ -0,0 +1,106 @@ + + + + + + + code/__DEFINES/tgui.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/tgui.dm + +

+ + + + + + + + + + + + + + + + +
UI_INTERACTIVEGreen eye; fully interactive
UI_UPDATEOrange eye; updates but is not interactive
UI_DISABLEDRed eye; disabled, does not update
UI_CLOSEUI Should close
TGUI_WINDOW_SOFT_LIMITMaximum number of windows that can be suspended/reused
TGUI_WINDOW_HARD_LIMITMaximum number of open windows
TGUI_PING_TIMEOUTMaximum ping timeout allowed to detect zombie windows
TGUI_REFRESH_FULL_UPDATE_COOLDOWNUsed for rate-limiting to prevent DoS by excessively refreshing a TGUI window
TGUI_WINDOW_CLOSEDWindow does not exist
TGUI_WINDOW_LOADINGWindow was just opened, but is still not ready to be sent data
TGUI_WINDOW_READYWindow is free and ready to receive data
TGUI_WINDOW_IDGet a window id based on the provided pool index
TGUI_WINDOW_INDEXGet a pool index of the provided window id
TGUI_CREATE_MESSAGECreates a message packet for sending via output()
TGUI_CREATE_OPEN_MESSAGECreates a message packet for sending via output() specifically for opening tgsay using an embedded winget

Define Details

+

TGUI_CREATE_MESSAGE + + + +

+

Creates a message packet for sending via output()

TGUI_CREATE_OPEN_MESSAGE + + + +

+

Creates a message packet for sending via output() specifically for opening tgsay using an embedded winget

TGUI_PING_TIMEOUT + + +

+

Maximum ping timeout allowed to detect zombie windows

TGUI_REFRESH_FULL_UPDATE_COOLDOWN + + +

+

Used for rate-limiting to prevent DoS by excessively refreshing a TGUI window

TGUI_WINDOW_CLOSED + + +

+

Window does not exist

TGUI_WINDOW_HARD_LIMIT + + +

+

Maximum number of open windows

TGUI_WINDOW_ID + + + +

+

Get a window id based on the provided pool index

TGUI_WINDOW_INDEX + + + +

+

Get a pool index of the provided window id

TGUI_WINDOW_LOADING + + +

+

Window was just opened, but is still not ready to be sent data

TGUI_WINDOW_READY + + +

+

Window is free and ready to receive data

TGUI_WINDOW_SOFT_LIMIT + + +

+

Maximum number of windows that can be suspended/reused

UI_CLOSE + + +

+

UI Should close

UI_DISABLED + + +

+

Red eye; disabled, does not update

UI_INTERACTIVE + + +

+

Green eye; fully interactive

UI_UPDATE + + +

+

Orange eye; updates but is not interactive

+ + + diff --git a/code/__DEFINES/traits.html b/code/__DEFINES/traits.html new file mode 100644 index 000000000000..458c5806d1d1 --- /dev/null +++ b/code/__DEFINES/traits.html @@ -0,0 +1,529 @@ + + + + + + + code/__DEFINES/traits.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/traits.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GET_TRAIT_SOURCESReturns a list of trait sources for this trait. Only useful for wacko cases and internal futzing +You should not be using this
COUNT_TRAIT_SOURCESReturns the amount of sources for a trait. useful if you don't want to have a "thing counter" stuck around all the time
HAS_MIND_TRAITA simple helper for checking traits in a mob's mind
TRAIT_UNDENSEExample trait +Apply this to make a mob not dense, and remove it when you want it to no longer make them undense, other sorces of undesity will still apply. Always define a unique source when adding a new instance of this!
TRAIT_KNOCKEDOUTForces the user to stay unconscious.
TRAIT_IMMOBILIZEDPrevents voluntary movement.
TRAIT_FLOOREDPrevents voluntary standing or staying up on its own.
TRAIT_FORCED_STANDINGForces user to stay standing
TRAIT_INCAPACITATEDStuns preventing movement and using objects but without further impairement
TRAIT_DAZEDDisoriented. Unable to talk properly, and unable to use some skills as Xeno
TRAIT_MERGED_WITH_WEEDSApply this to identify a mob as merged with weeds
TRAIT_TEMPORARILY_MUTEDApply this to identify a mob as temporarily muted
TRAIT_NO_STRAYMob wont get hit by stray projectiles
TRAIT_YAUTJA_TECHKnowledge of Yautja technology
TRAIT_SUPER_STRONGAbsolutely RIPPED. Can do misc. heavyweight stuff others can't. (Yautja, Synths)
TRAIT_FOREIGN_BIOForeign biology. Basic medHUDs won't show the mob. (Yautja, Zombies)
TRAIT_INTENT_EYESEye color changes on intent. (G1 Synths and WJs)
TRAIT_INFILTRATOR_SYNTHMasked synthetic biology. Basic medHUDs will perceive the mob as human. (Infiltrator Synths)
TRAIT_UNSTRIPPABLEMakes it impossible to strip the inventory of this mob.
TRAIT_XENONIDIf the Hive is a Xenonid Hive
TRAIT_HIVEMIND_INTERFERENCEif the xeno's connection to the hivemind is cut
TRAIT_OPPOSABLE_THUMBSIf the hive or xeno can use objects.
TRAIT_NO_HIVE_DELAYIf the Hive delays round end (this is overridden for some hives). Does not occur naturally. Must be applied in events.
TRAIT_NO_COLORIf the Hive uses it's colors on the mobs. Does not occur naturally, excepting the Mutated hive.
TRAIT_NESTEDIf the mob is nested.
TRAIT_CRAWLERIf the mob can crawl through pipes equipped
TRAIT_SIMPLE_DESCIf the mob is hidden from examination
TRAIT_LISPINGReplace s with th in talking
TRAIT_TWOBORE_TRAININGIf the mob can handle the superheavy two-bore rifle and speaks its fluff lines when landing hits with it.
TRAIT_NEARSIGHTED_EQUIPMENTIf the mob has equipment that alleviates nearsightedness
TRAIT_DEXTROUSIf the mob is affected by drag delay.
TRAIT_CHARGINGIf the mob is currently charging (xeno only)
TRAIT_LEADERSHIPIf the mob has leadership abilities (giving orders).
TRAIT_REAGENT_SCANNERIf the mob can see the reagents contents of stuff
TRAIT_CANNOT_EATIf the mob cannot eat/be fed
TRAIT_SPOTTER_LAZEDIf the mob is being lazed by a sniper spotter
TRAIT_EAR_PROTECTIONIf the mob has ear protection. Protects from external ear damage effects. Includes explosions, firing the RPG, screeching DEAFNESS only, and flashbangs.
TRAIT_SANTAIf the mob is Santa. Enough said.
TRAIT_BIMEXIf the mob is wearing bimex glasses. Used for badass laser deflection flavor text.
TRAIT_EMOTE_CD_EXEMPTStops emote cooldown
TRAIT_HOLDS_CANEIf the mob is holding a cane.
TRAIT_USING_WHEELCHAIRIf the mob is buckled to a wheelchair.
TRAIT_HARDCOREIf the mob will instantly go permadead upon death
TRAIT_VULTURE_USERIf the mob is able to use the vulture rifle or spotting scope
TRAIT_IN_TUTORIALIf the mob is currently loading a tutorial
TRAIT_CLOAKEDIf the mob is cloaked in any form
TRAIT_SPEC_VENDORIf the mob claimed a specialist set from a vendor
TRAIT_SPEC_KITIf the mob claimed a specialist set from a kit
TRAIT_SPECWhat spec set the mob has claimed, if any
TRAIT_IRON_TEETHIf the mob won't drop items held in face slot when downed
TRAIT_ABILITY_NO_PLASMA_TRANSFERXenos with this trait cannot have plasma transfered to them
TRAIT_ABILITY_OVIPOSITORShows that the xeno queen is on ovi
TRAIT_ABILITY_BURROWEDUsed for burrowed mobs, prevent's SG/sentrys/claymores from autofiring
TRAIT_TOOL_TRADEBANDCan lockout blackmarket from ASRS console circuits.
TRAIT_TOOL_BLACKMARKET_HACKERCan hack ASRS consoles to access the black market
TRAIT_ERT_IDIf this ID belongs to an ERT member
TRAIT_TABLE_FLIPPINGIf the table is being flipped, prevent any changes that will mess with adjacency handling
TRAIT_SOURCE_INHERENTExample trait source
ROUNDSTART_TRAITcannot be removed without admin intervention
LYING_TRAITStatus trait coming from lying down through update_canmove()
TRAIT_SOURCE_SPECIESStatus trait coming from species. .human/species_gain()
TRAIT_SOURCE_HIVEStatus trait coming from the hive.
TRAIT_SOURCE_BUCKLEStatus trait coming from being buckled.
TRAIT_SOURCE_SQUAD_LEADERStatus trait coming from being assigned as [acting] squad leader.
TRAIT_SOURCE_JOBStatus trait coming from their job
TRAIT_SOURCE_ADMINStatus trait forced by staff
TRAIT_SOURCE_TUTORIALStatus trait coming from a tutorial
TRAIT_SOURCE_EQUIPMENTStatus trait coming from equipment
TRAIT_SOURCE_SKILLStatus trait coming from skill
TRAIT_SOURCE_ATTACHMENTStatus trait coming from attachment
TRAIT_SOURCE_ABILITYStatus trait coming from ability
TRAIT_SOURCE_TEMPORARY_MUTEStatus trait coming from temporary_mute
TRAIT_SOURCE_XENO_ACTION_CHARGEStatus trait forced by the xeno action charge
TRAIT_SOURCE_HIVEMIND_INTERFERENCEStatus trait coming from hivemind interference
XENO_NEST_TRAITStatus trait coming from a xeno nest
XENO_THROW_TRAITStatus trait from a generic throw by xeno abilities
TRAIT_SOURCE_FLIP_TABLEStatus trait coming from being flipped or unflipped.
TRAIT_SOURCE_WEAPONStatus trait from weapons?? buh
TRAIT_SOURCE_ITEMStatus trait coming from generic items
BUCKLED_TRAITtrait associated to being buckled
FAKEDEATH_TRAITtrait source when an effect is coming from a fakedeath effect (refactor this)
BODY_TRAITtrait source where a condition comes from body state
LYING_DOWN_TRAITTrait associated to lying down (having a [lying_angle] of a different value than zero).
STAT_TRAITtrait associated to a stat value or range of
OVIPOSITOR_TRAITtrait effect related to the queen ovipositor
CHOKEHOLD_TRAITtrait associated to being held in a chokehold
SPECIALIST_GEAR_TRAITtrait effect related to active specialist gear
DOUBLE_SEATS_TRAITtraits associated with usage of snowflake dropship double seats
XENO_WEED_TRAITtraits associated with xeno on-ground weeds
INTERACTION_TRAITtraits associated with actively interacted machinery
TRAIT_SOURCE_DROPSHIP_INTERACTIONtraits associated with interacting with a dropship
STUNNED_TRAITtraits bound by stunned status effects
KNOCKEDDOWN_TRAITtraits bound by knocked_down status effect
KNOCKEDOUT_TRAITtraits bound by knocked_out status effect
POUNCED_TRAITtraits from being pounced
STEP_TRIGGER_TRAITtraits from step_triggers on the map
HACKED_TRAITtraits from hacked machine interactions
CHLOROFORM_TRAITtraits from chloroform usage

Define Details

+

BODY_TRAIT + + +

+

trait source where a condition comes from body state

BUCKLED_TRAIT + + +

+

trait associated to being buckled

CHLOROFORM_TRAIT + + +

+

traits from chloroform usage

CHOKEHOLD_TRAIT + + +

+

trait associated to being held in a chokehold

COUNT_TRAIT_SOURCES + + + +

+

Returns the amount of sources for a trait. useful if you don't want to have a "thing counter" stuck around all the time

DOUBLE_SEATS_TRAIT + + +

+

traits associated with usage of snowflake dropship double seats

FAKEDEATH_TRAIT + + +

+

trait source when an effect is coming from a fakedeath effect (refactor this)

GET_TRAIT_SOURCES + + + +

+

Returns a list of trait sources for this trait. Only useful for wacko cases and internal futzing +You should not be using this

HACKED_TRAIT + + +

+

traits from hacked machine interactions

HAS_MIND_TRAIT + + + +

+

A simple helper for checking traits in a mob's mind

INTERACTION_TRAIT + + +

+

traits associated with actively interacted machinery

KNOCKEDDOWN_TRAIT + + +

+

traits bound by knocked_down status effect

KNOCKEDOUT_TRAIT + + +

+

traits bound by knocked_out status effect

LYING_DOWN_TRAIT + + +

+

Trait associated to lying down (having a [lying_angle] of a different value than zero).

LYING_TRAIT + + +

+

Status trait coming from lying down through update_canmove()

OVIPOSITOR_TRAIT + + +

+

trait effect related to the queen ovipositor

POUNCED_TRAIT + + +

+

traits from being pounced

ROUNDSTART_TRAIT + + +

+

cannot be removed without admin intervention

SPECIALIST_GEAR_TRAIT + + +

+

trait effect related to active specialist gear

STAT_TRAIT + + +

+

trait associated to a stat value or range of

STEP_TRIGGER_TRAIT + + +

+

traits from step_triggers on the map

STUNNED_TRAIT + + +

+

traits bound by stunned status effects

TRAIT_ABILITY_BURROWED + + +

+

Used for burrowed mobs, prevent's SG/sentrys/claymores from autofiring

TRAIT_ABILITY_NO_PLASMA_TRANSFER + + +

+

Xenos with this trait cannot have plasma transfered to them

TRAIT_ABILITY_OVIPOSITOR + + +

+

Shows that the xeno queen is on ovi

TRAIT_BIMEX + + +

+

If the mob is wearing bimex glasses. Used for badass laser deflection flavor text.

TRAIT_CANNOT_EAT + + +

+

If the mob cannot eat/be fed

TRAIT_CHARGING + + +

+

If the mob is currently charging (xeno only)

TRAIT_CLOAKED + + +

+

If the mob is cloaked in any form

TRAIT_CRAWLER + + +

+

If the mob can crawl through pipes equipped

TRAIT_DAZED + + +

+

Disoriented. Unable to talk properly, and unable to use some skills as Xeno

TRAIT_DEXTROUS + + +

+

If the mob is affected by drag delay.

TRAIT_EAR_PROTECTION + + +

+

If the mob has ear protection. Protects from external ear damage effects. Includes explosions, firing the RPG, screeching DEAFNESS only, and flashbangs.

TRAIT_EMOTE_CD_EXEMPT + + +

+

Stops emote cooldown

TRAIT_ERT_ID + + +

+

If this ID belongs to an ERT member

TRAIT_FLOORED + + +

+

Prevents voluntary standing or staying up on its own.

TRAIT_FORCED_STANDING + + +

+

Forces user to stay standing

TRAIT_FOREIGN_BIO + + +

+

Foreign biology. Basic medHUDs won't show the mob. (Yautja, Zombies)

TRAIT_HARDCORE + + +

+

If the mob will instantly go permadead upon death

TRAIT_HIVEMIND_INTERFERENCE + + +

+

if the xeno's connection to the hivemind is cut

TRAIT_HOLDS_CANE + + +

+

If the mob is holding a cane.

TRAIT_IMMOBILIZED + + +

+

Prevents voluntary movement.

TRAIT_INCAPACITATED + + +

+

Stuns preventing movement and using objects but without further impairement

TRAIT_INFILTRATOR_SYNTH + + +

+

Masked synthetic biology. Basic medHUDs will perceive the mob as human. (Infiltrator Synths)

TRAIT_INTENT_EYES + + +

+

Eye color changes on intent. (G1 Synths and WJs)

TRAIT_IN_TUTORIAL + + +

+

If the mob is currently loading a tutorial

TRAIT_IRON_TEETH + + +

+

If the mob won't drop items held in face slot when downed

TRAIT_KNOCKEDOUT + + +

+

Forces the user to stay unconscious.

TRAIT_LEADERSHIP + + +

+

If the mob has leadership abilities (giving orders).

TRAIT_LISPING + + +

+

Replace s with th in talking

TRAIT_MERGED_WITH_WEEDS + + +

+

Apply this to identify a mob as merged with weeds

TRAIT_NEARSIGHTED_EQUIPMENT + + +

+

If the mob has equipment that alleviates nearsightedness

TRAIT_NESTED + + +

+

If the mob is nested.

TRAIT_NO_COLOR + + +

+

If the Hive uses it's colors on the mobs. Does not occur naturally, excepting the Mutated hive.

TRAIT_NO_HIVE_DELAY + + +

+

If the Hive delays round end (this is overridden for some hives). Does not occur naturally. Must be applied in events.

TRAIT_NO_STRAY + + +

+

Mob wont get hit by stray projectiles

TRAIT_OPPOSABLE_THUMBS + + +

+

If the hive or xeno can use objects.

TRAIT_REAGENT_SCANNER + + +

+

If the mob can see the reagents contents of stuff

TRAIT_SANTA + + +

+

If the mob is Santa. Enough said.

TRAIT_SIMPLE_DESC + + +

+

If the mob is hidden from examination

TRAIT_SOURCE_ABILITY + + + +

+

Status trait coming from ability

TRAIT_SOURCE_ADMIN + + +

+

Status trait forced by staff

TRAIT_SOURCE_ATTACHMENT + + + +

+

Status trait coming from attachment

TRAIT_SOURCE_BUCKLE + + +

+

Status trait coming from being buckled.

TRAIT_SOURCE_DROPSHIP_INTERACTION + + +

+

traits associated with interacting with a dropship

TRAIT_SOURCE_EQUIPMENT + + + +

+

Status trait coming from equipment

TRAIT_SOURCE_FLIP_TABLE + + +

+

Status trait coming from being flipped or unflipped.

TRAIT_SOURCE_HIVE + + +

+

Status trait coming from the hive.

TRAIT_SOURCE_HIVEMIND_INTERFERENCE + + +

+

Status trait coming from hivemind interference

TRAIT_SOURCE_INHERENT + + +

+

Example trait source

TRAIT_SOURCE_ITEM + + +

+

Status trait coming from generic items

TRAIT_SOURCE_JOB + + +

+

Status trait coming from their job

TRAIT_SOURCE_SKILL + + + +

+

Status trait coming from skill

TRAIT_SOURCE_SPECIES + + +

+

Status trait coming from species. .human/species_gain()

TRAIT_SOURCE_SQUAD_LEADER + + +

+

Status trait coming from being assigned as [acting] squad leader.

TRAIT_SOURCE_TEMPORARY_MUTE + + +

+

Status trait coming from temporary_mute

TRAIT_SOURCE_TUTORIAL + + +

+

Status trait coming from a tutorial

TRAIT_SOURCE_WEAPON + + +

+

Status trait from weapons?? buh

TRAIT_SOURCE_XENO_ACTION_CHARGE + + +

+

Status trait forced by the xeno action charge

TRAIT_SPEC + + + +

+

What spec set the mob has claimed, if any

TRAIT_SPEC_KIT + + +

+

If the mob claimed a specialist set from a kit

TRAIT_SPEC_VENDOR + + +

+

If the mob claimed a specialist set from a vendor

TRAIT_SPOTTER_LAZED + + +

+

If the mob is being lazed by a sniper spotter

TRAIT_SUPER_STRONG + + +

+

Absolutely RIPPED. Can do misc. heavyweight stuff others can't. (Yautja, Synths)

TRAIT_TABLE_FLIPPING + + +

+

If the table is being flipped, prevent any changes that will mess with adjacency handling

TRAIT_TEMPORARILY_MUTED + + +

+

Apply this to identify a mob as temporarily muted

TRAIT_TOOL_BLACKMARKET_HACKER + + +

+

Can hack ASRS consoles to access the black market

TRAIT_TOOL_TRADEBAND + + +

+

Can lockout blackmarket from ASRS console circuits.

TRAIT_TWOBORE_TRAINING + + +

+

If the mob can handle the superheavy two-bore rifle and speaks its fluff lines when landing hits with it.

TRAIT_UNDENSE + + +

+

Example trait +Apply this to make a mob not dense, and remove it when you want it to no longer make them undense, other sorces of undesity will still apply. Always define a unique source when adding a new instance of this!

TRAIT_UNSTRIPPABLE + + +

+

Makes it impossible to strip the inventory of this mob.

TRAIT_USING_WHEELCHAIR + + +

+

If the mob is buckled to a wheelchair.

TRAIT_VULTURE_USER + + +

+

If the mob is able to use the vulture rifle or spotting scope

TRAIT_XENONID + + +

+

If the Hive is a Xenonid Hive

TRAIT_YAUTJA_TECH + + +

+

Knowledge of Yautja technology

XENO_NEST_TRAIT + + +

+

Status trait coming from a xeno nest

XENO_THROW_TRAIT + + +

+

Status trait from a generic throw by xeno abilities

XENO_WEED_TRAIT + + +

+

traits associated with xeno on-ground weeds

+ + + diff --git a/code/__DEFINES/turf_flags.html b/code/__DEFINES/turf_flags.html new file mode 100644 index 000000000000..984e1203d040 --- /dev/null +++ b/code/__DEFINES/turf_flags.html @@ -0,0 +1,52 @@ + + + + + + + code/__DEFINES/turf_flags.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/turf_flags.dm + +

+ + + + + + +
TURF_ORGANICMarks a turf as organic. Used for alien wall and membranes.
UNUSED_RESERVATION_TURFIf a turf is an usused reservation turf awaiting assignment
RESERVATION_TURFIf a turf is a reserved turf
CHANGETURF_IGNORE_AIRThis flag prevents changeturf from gathering air from nearby turfs to fill the new turf with an approximation of local air
CHANGETURF_SKIPA flag for PlaceOnTop to just instance the new turf instead of calling ChangeTurf. Used for uninitialized turfs NOTHING ELSE

Define Details

+

CHANGETURF_IGNORE_AIR + + +

+

This flag prevents changeturf from gathering air from nearby turfs to fill the new turf with an approximation of local air

CHANGETURF_SKIP + + +

+

A flag for PlaceOnTop to just instance the new turf instead of calling ChangeTurf. Used for uninitialized turfs NOTHING ELSE

RESERVATION_TURF + + +

+

If a turf is a reserved turf

TURF_ORGANIC + + +

+

Marks a turf as organic. Used for alien wall and membranes.

UNUSED_RESERVATION_TURF + + +

+

If a turf is an usused reservation turf awaiting assignment

+ + + diff --git a/code/__DEFINES/turfs.html b/code/__DEFINES/turfs.html new file mode 100644 index 000000000000..9a9d12a1b129 --- /dev/null +++ b/code/__DEFINES/turfs.html @@ -0,0 +1,69 @@ + + + + + + + code/__DEFINES/turfs.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/turfs.dm + +

+ + + + + + + + +
RECT_TURFSReturns a list of turfs within H_RADIUS tiles horizontally and V_RADIUS tiles vertically of CENTER.
RANGE_TURFSReturns a list of turfs within Dist tiles of Center. When Dist >= 5 faster than a range() filtered to /turfs.
ORANGE_TURFSReturns a list of turfs within Dist tiles of Center, excluding Center. When Dist >= 5 faster than an orange() filtered to /turfs.
Z_TURFSReturns all turfs in a zlevel
CORNER_BLOCKReturns a list of turfs in the rectangle specified by BOTTOM LEFT corner and height/width
CORNER_BLOCK_OFFSETReturns a list of turfs similar to CORNER_BLOCK but with offsets
CORNER_OUTLINEReturns an outline (neighboring turfs) of the given block

Define Details

+

CORNER_BLOCK + + + +

+

Returns a list of turfs in the rectangle specified by BOTTOM LEFT corner and height/width

CORNER_BLOCK_OFFSET + + + +

+

Returns a list of turfs similar to CORNER_BLOCK but with offsets

CORNER_OUTLINE + + + +

+

Returns an outline (neighboring turfs) of the given block

ORANGE_TURFS + + + +

+

Returns a list of turfs within Dist tiles of Center, excluding Center. When Dist >= 5 faster than an orange() filtered to /turfs.

RANGE_TURFS + + + +

+

Returns a list of turfs within Dist tiles of Center. When Dist >= 5 faster than a range() filtered to /turfs.

RECT_TURFS + + + +

+

Returns a list of turfs within H_RADIUS tiles horizontally and V_RADIUS tiles vertically of CENTER.

Z_TURFS + + + +

+

Returns all turfs in a zlevel

+ + + diff --git a/code/__DEFINES/unit_tests.html b/code/__DEFINES/unit_tests.html new file mode 100644 index 000000000000..c0adbf29db8e --- /dev/null +++ b/code/__DEFINES/unit_tests.html @@ -0,0 +1,49 @@ + + + + + + + code/__DEFINES/unit_tests.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/unit_tests.dm + +

+ + + +
PERFORM_ALL_TESTSAre tests enabled with no focus? +Use this when performing test assertions outside of a unit test, +since a focused test means that you're trying to run a test quickly. +If a parameter is provided, will check if the focus is on that test name. +For example, PERFORM_ALL_TESTS(log_mapping) will only run if either +no test is focused, or the focus is log_mapping.
TEST_ONLY_ASSERTASSERT(), but it only actually does anything during unit tests

Define Details

+

PERFORM_ALL_TESTS + + + +

+

Are tests enabled with no focus? +Use this when performing test assertions outside of a unit test, +since a focused test means that you're trying to run a test quickly. +If a parameter is provided, will check if the focus is on that test name. +For example, PERFORM_ALL_TESTS(log_mapping) will only run if either +no test is focused, or the focus is log_mapping.

TEST_ONLY_ASSERT + + + +

+

ASSERT(), but it only actually does anything during unit tests

+ + + diff --git a/code/__DEFINES/vehicle.html b/code/__DEFINES/vehicle.html new file mode 100644 index 000000000000..f37cc1ef80b6 --- /dev/null +++ b/code/__DEFINES/vehicle.html @@ -0,0 +1,42 @@ + + + + + + + code/__DEFINES/vehicle.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/vehicle.dm + +

+ + + + +
VEHICLE_TOGGLE_SHIFT_CLICK_GUNNERToggle between Shift click and MMB click for gunner
VEHICLE_CLASS_WEAKVehicle Classes (for future)
VEHICLE_BYPASS_BLOCKERSVehicle can bypass vehicle blockers, typically going further into maps than intended

Define Details

+

VEHICLE_BYPASS_BLOCKERS + + +

+

Vehicle can bypass vehicle blockers, typically going further into maps than intended

VEHICLE_CLASS_WEAK + + +

+

Vehicle Classes (for future)

VEHICLE_TOGGLE_SHIFT_CLICK_GUNNER + + +

+

Toggle between Shift click and MMB click for gunner

+ + + diff --git a/code/__DEFINES/vendors.html b/code/__DEFINES/vendors.html new file mode 100644 index 000000000000..db04c9c7dc04 --- /dev/null +++ b/code/__DEFINES/vendors.html @@ -0,0 +1,44 @@ + + + + + + + code/__DEFINES/vendors.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/vendors.dm + +

+ + + + +
VEND_STOCK_DYNAMICVendors with this flag will fill retroactively based on latejoining players, +and expect a scale multiplier instead of amount of items
VEND_PROPSVends props looking like the items instead of the actual items. Basically for tutorials.
VEND_TOKEN_VOIDToken invalid/unrecognised.

Define Details

+

VEND_PROPS + + +

+

Vends props looking like the items instead of the actual items. Basically for tutorials.

VEND_STOCK_DYNAMIC + + +

+

Vendors with this flag will fill retroactively based on latejoining players, +and expect a scale multiplier instead of amount of items

VEND_TOKEN_VOID + + +

+

Token invalid/unrecognised.

+ + + diff --git a/code/__DEFINES/weapon_stats.html b/code/__DEFINES/weapon_stats.html new file mode 100644 index 000000000000..c90c604858b4 --- /dev/null +++ b/code/__DEFINES/weapon_stats.html @@ -0,0 +1,37 @@ + + + + + + + code/__DEFINES/weapon_stats.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/weapon_stats.dm + +

+ + + +
FIRE_VARIANT_DEFAULTDefault fire behavior: No associated values.
FIRE_VARIANT_TYPE_B"Type B" Armor Shredding Greenfire: Burn Time T5, Burn Level T2, Slows on Tile, Increased Tile Damage, Easier Extinguishing.

Define Details

+

FIRE_VARIANT_DEFAULT + + +

+

Default fire behavior: No associated values.

FIRE_VARIANT_TYPE_B + + +

+

"Type B" Armor Shredding Greenfire: Burn Time T5, Burn Level T2, Slows on Tile, Increased Tile Damage, Easier Extinguishing.

+ + + diff --git a/code/__DEFINES/xeno.html b/code/__DEFINES/xeno.html new file mode 100644 index 000000000000..2923dc8e330f --- /dev/null +++ b/code/__DEFINES/xeno.html @@ -0,0 +1,170 @@ + + + + + + + code/__DEFINES/xeno.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/xeno.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FACEHUGGER_WINDUP_DURATIONThe duration it takes a player controlled facehugger to leap or hug adjacently
XENO_ATTACK_ACTIONFull attack delay.
XENO_NONCOMBAT_ACTIONNoticeable but shorter than full delay.
XENO_NO_DELAY_ACTIONNo delay at all.
xeno_attack_delayUsually 1 second delay.
xeno_noncombat_delay0.4 seconds, legacy 'open hand clicked something adjacent' delay.
xeno_miss_delayUsually half a second's delay.
SINGLETARGETGUTDefines for Abomination ability /datum/action/xeno_action/activable/feralfrenzy
BUILD_TIME_MULT_LESSER_DRONEMultiplier for time taken for a xeno to place down a resin structure
XENO_NOBODYNobody can create constructions. (Feral)
WEED_XENO_DAMAGEMULTMultiplicative. The amount of damage xenos do to weeds.
XENO_JOIN_DEAD_LARVA_TIMEThe time you must be dead to join as a xeno larva
XENO_JOIN_DEAD_TIMEThe time you must be dead to join as xeno (not larva)
XENO_JOIN_AFK_TIME_LIMITThe time of inactivity you cannot exceed to join as a xeno
XENO_BURIED_LARVA_TIME_LIMITThe amount of time after round start before buried larva spawns are disallowed
XENO_COMM_ACQUISITION_TIMEThe time when xenos can start taking over comm towers
XENO_PYLON_ACTIVATION_COOLDOWNThe time it takes for a pylon to give one larva while activated
XENO_PYLON_DESTRUCTION_DELAYThe time until you can re-corrupt a comms relay after the last pylon was destroyed
XENO_HIJACK_EVILUTION_BUFFEvolution boost during hijack
XENO_HIJACK_EVILUTION_TIMEFor how long the buff lasts
HIJACK_RATIO_FOR_TACMAPIf this is marine to xeno ratio during hijack, xenos see marines on tacmap
ENDGAME_LARVA_CAP_MULTIPLIERXenos need to have their number to marines ratio lower than this to get larvae from pylons
LARVA_ADDITION_MULTIPLIERWhat percent of their numbers xeno get from pylons
XENO_LEAVE_TIMER_LARVAThe time against away_timer when an AFK xeno larva can be replaced
XENO_LEAVE_TIMERThe time against away_timer when an AFK xeno (not larva) can be replaced
XENO_FACEHUGGER_LEAVE_TIMERThe time against away_timer when an AFK facehugger converts to a npc
XENO_AVAILABLE_TIMERThe time against away_timer when an AFK xeno gets listed in the available list so ghosts can get ready
WEED_EXPLOSION_DAMAGEMULTBetween 2% to 10% of explosion severity

Define Details

+

BUILD_TIME_MULT_LESSER_DRONE + + +

+

Multiplier for time taken for a xeno to place down a resin structure

ENDGAME_LARVA_CAP_MULTIPLIER + + +

+

Xenos need to have their number to marines ratio lower than this to get larvae from pylons

FACEHUGGER_WINDUP_DURATION + + +

+

The duration it takes a player controlled facehugger to leap or hug adjacently

HIJACK_RATIO_FOR_TACMAP + + +

+

If this is marine to xeno ratio during hijack, xenos see marines on tacmap

LARVA_ADDITION_MULTIPLIER + + +

+

What percent of their numbers xeno get from pylons

SINGLETARGETGUT + + +

+

Defines for Abomination ability /datum/action/xeno_action/activable/feralfrenzy

WEED_EXPLOSION_DAMAGEMULT + + +

+

Between 2% to 10% of explosion severity

WEED_XENO_DAMAGEMULT + + +

+

Multiplicative. The amount of damage xenos do to weeds.

XENO_ATTACK_ACTION + + +

+

Full attack delay.

XENO_AVAILABLE_TIMER + + +

+

The time against away_timer when an AFK xeno gets listed in the available list so ghosts can get ready

XENO_BURIED_LARVA_TIME_LIMIT + + +

+

The amount of time after round start before buried larva spawns are disallowed

XENO_COMM_ACQUISITION_TIME + + +

+

The time when xenos can start taking over comm towers

XENO_FACEHUGGER_LEAVE_TIMER + + +

+

The time against away_timer when an AFK facehugger converts to a npc

XENO_HIJACK_EVILUTION_BUFF + + +

+

Evolution boost during hijack

XENO_HIJACK_EVILUTION_TIME + + +

+

For how long the buff lasts

XENO_JOIN_AFK_TIME_LIMIT + + +

+

The time of inactivity you cannot exceed to join as a xeno

XENO_JOIN_DEAD_LARVA_TIME + + +

+

The time you must be dead to join as a xeno larva

XENO_JOIN_DEAD_TIME + + +

+

The time you must be dead to join as xeno (not larva)

XENO_LEAVE_TIMER + + +

+

The time against away_timer when an AFK xeno (not larva) can be replaced

XENO_LEAVE_TIMER_LARVA + + +

+

The time against away_timer when an AFK xeno larva can be replaced

XENO_NOBODY + + +

+

Nobody can create constructions. (Feral)

XENO_NONCOMBAT_ACTION + + +

+

Noticeable but shorter than full delay.

XENO_NO_DELAY_ACTION + + +

+

No delay at all.

XENO_PYLON_ACTIVATION_COOLDOWN + + +

+

The time it takes for a pylon to give one larva while activated

XENO_PYLON_DESTRUCTION_DELAY + + +

+

The time until you can re-corrupt a comms relay after the last pylon was destroyed

xeno_attack_delay + + + +

+

Usually 1 second delay.

xeno_miss_delay + + + +

+

Usually half a second's delay.

xeno_noncombat_delay + + + +

+

0.4 seconds, legacy 'open hand clicked something adjacent' delay.

+ + + diff --git a/code/__HELPERS/#maths.html b/code/__HELPERS/#maths.html new file mode 100644 index 000000000000..587777f68b53 --- /dev/null +++ b/code/__HELPERS/#maths.html @@ -0,0 +1,37 @@ + + + + + + + code/__HELPERS/#maths.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/#maths.dm + +

+ + + + + + + + + + + +
/proc/display_powerFormat a power value in W, kW, MW, or GW.
/proc/anyprobchances are 1:value. anyprob(1) will always return true
/proc/bit_countcounts the number of bits in Byond's 16-bit width field, in constant time and memory!
/proc/make_tupleReturns the name of the mathematical tuple of same length as the number arg (rounded down).
/proc/at_leastTakes a value, and a threshold it has to at least match +returns the correctly signed value max'd to the threshold
+ + + diff --git a/code/__HELPERS/_lists.html b/code/__HELPERS/_lists.html new file mode 100644 index 000000000000..957b5dc3738f --- /dev/null +++ b/code/__HELPERS/_lists.html @@ -0,0 +1,77 @@ + + + + + + + code/__HELPERS/_lists.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__HELPERS/_lists.dm + +

+ + + + + + + + + + + + + + + + + + +
COMPARE_KEYPassed into BINARY_INSERT to compare keys
COMPARE_VALUEPassed into BINARY_INSERT to compare values
BINARY_INSERTBinary search sorted insert +INPUT: Object to be inserted +LIST: List to insert object into +TYPECONT: The typepath of the contents of the list +COMPARE: The object to compare against, usualy the same as INPUT +COMPARISON: The variable on the objects to compare +COMPTYPE: How should the values be compared? Either COMPARE_KEY or COMPARE_VALUE.
/proc/sort_listsort any value in a list
/proc/bitfield_to_listConverts a bitfield to a list of numbers (or words if a wordlist is provided)
/proc/pick_weightPicks a random element from a list based on a weighting system. +For example, given the following list: +A = 6, B = 3, C = 1, D = 0 +A would have a 60% chance of being picked, +B would have a 30% chance of being picked, +C would have a 10% chance of being picked, +and D would have a 0% chance of being picked. +You should only pass integers in.
/proc/list_clear_nullsRemoves any null entries from the list +Returns TRUE if the list had nulls, FALSE otherwise
/proc/unique_listReturn a list with no duplicate entries
/proc/unique_list_in_placesame as unique_list, but returns nothing and acts on list in place (also handles associated values properly)
/proc/shuffle_inplacesame as shuffle, but returns nothing and acts on list in place

Define Details

+

BINARY_INSERT + + + +

+

Binary search sorted insert +INPUT: Object to be inserted +LIST: List to insert object into +TYPECONT: The typepath of the contents of the list +COMPARE: The object to compare against, usualy the same as INPUT +COMPARISON: The variable on the objects to compare +COMPTYPE: How should the values be compared? Either COMPARE_KEY or COMPARE_VALUE.

COMPARE_KEY + + +

+

Passed into BINARY_INSERT to compare keys

COMPARE_VALUE + + +

+

Passed into BINARY_INSERT to compare values

+ + + diff --git a/code/__HELPERS/_time.html b/code/__HELPERS/_time.html new file mode 100644 index 000000000000..bdd57c216d8b --- /dev/null +++ b/code/__HELPERS/_time.html @@ -0,0 +1,28 @@ + + + + + + + code/__HELPERS/_time.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/_time.dm + +

+ + + +
/proc/worldtime2textReturns the world time in english. Do not use to get date information - starts at 0 + a random time offset from 10 minutes to 24 hours.
+ + + diff --git a/code/__HELPERS/animations.html b/code/__HELPERS/animations.html new file mode 100644 index 000000000000..b522f01de957 --- /dev/null +++ b/code/__HELPERS/animations.html @@ -0,0 +1,32 @@ + + + + + + + code/__HELPERS/animations.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__HELPERS/animations.dm + +

+ + +
UPDATE_TRANSFORM_ANIMATION_TIMEThe duration of the animate call in mob/living/update_transform

Define Details

+

UPDATE_TRANSFORM_ANIMATION_TIME + + +

+

The duration of the animate call in mob/living/update_transform

+ + + diff --git a/code/__HELPERS/chat.html b/code/__HELPERS/chat.html new file mode 100644 index 000000000000..572d77da662e --- /dev/null +++ b/code/__HELPERS/chat.html @@ -0,0 +1,30 @@ + + + + + + + code/__HELPERS/chat.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/chat.dm + +

+ + + + + +
/proc/send2chatAsynchronously sends a message to TGS chat channels.
/proc/send2adminchatSends a message to TGS admin chat channels.
+ + + diff --git a/code/__HELPERS/cmp.html b/code/__HELPERS/cmp.html new file mode 100644 index 000000000000..43ade4a2483c --- /dev/null +++ b/code/__HELPERS/cmp.html @@ -0,0 +1,31 @@ + + + + + + + code/__HELPERS/cmp.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/cmp.dm + +

+ + + + + +
/proc/cmp_mob_deathtime_ascCompares mobs based on their timeofdeath value in ascending order
/proc/cmp_obs_larvaqueuetime_ascCompares observers based on their larva_queue_time value in ascending order +Assumes the client on the observer is not null
+ + + diff --git a/code/__HELPERS/datums.html b/code/__HELPERS/datums.html new file mode 100644 index 000000000000..324209d3ea55 --- /dev/null +++ b/code/__HELPERS/datums.html @@ -0,0 +1,28 @@ + + + + + + + code/__HELPERS/datums.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/datums.dm + +

+ + + +
/proc/is_valid_srcCheck if a datum has not been deleted and is a valid source
+ + + diff --git a/code/__HELPERS/files.html b/code/__HELPERS/files.html new file mode 100644 index 000000000000..3f1784fb4866 --- /dev/null +++ b/code/__HELPERS/files.html @@ -0,0 +1,29 @@ + + + + + + + code/__HELPERS/files.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/files.dm + +

+ + + +
/proc/md5asfileSave file as an external file then md5 it. +Used because md5ing files stored in the rsc sometimes gives incorrect md5 results.
+ + + diff --git a/code/__HELPERS/game.html b/code/__HELPERS/game.html new file mode 100644 index 000000000000..a911878aa2a7 --- /dev/null +++ b/code/__HELPERS/game.html @@ -0,0 +1,44 @@ + + + + + + + code/__HELPERS/game.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/game.dm + +

+ + + + + + + + + + + + + + + + + + + +
/proc/recursive_holder_checkWill attempt to find what's holding this item if it's being contained by something, ie if it's in a satchel held by a human, this'll return the human
/proc/get_radios_in_viewonly gets FUNCTIONING radios
/proc/get_alien_candidatesGet a list of observers that can be alien candidates.
/proc/message_alien_candidatesMessages observers that are currently candidates an update on the queue.
/proc/get_bbox_of_atomsGet a bounding box of a list of atoms.
/proc/remove_image_from_clientRemoves an image from a client's .images. Useful as a callback.
/proc/remove_images_from_clientsLike remove_image_from_client, but will remove the image from a list of clients
/proc/flick_overlay_to_clientsAdd an image to a list of clients and calls a proc to remove it after a duration
/proc/get_active_player_countGet active players who are playing in the round
+ + + diff --git a/code/__HELPERS/generators.html b/code/__HELPERS/generators.html new file mode 100644 index 000000000000..3dc759dd23b8 --- /dev/null +++ b/code/__HELPERS/generators.html @@ -0,0 +1,29 @@ + + + + + + + code/__HELPERS/generators.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/generators.dm + +

+ + + +
/proc/return_generator_argsreturns the arguments given to a generator and manually extracts them from the internal byond object +returns:
+ + + diff --git a/code/__HELPERS/guid.html b/code/__HELPERS/guid.html new file mode 100644 index 000000000000..ee2a82e45058 --- /dev/null +++ b/code/__HELPERS/guid.html @@ -0,0 +1,30 @@ + + + + + + + code/__HELPERS/guid.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/guid.dm + +

+ + + +
/proc/GUIDreturns a GUID like identifier (using a mostly made up record format) +guids are not on their own suitable for access or security tokens, as most of their bits are predictable. +(But may make a nice salt to one)
+ + + diff --git a/code/__HELPERS/icons.html b/code/__HELPERS/icons.html new file mode 100644 index 000000000000..63496e419fa1 --- /dev/null +++ b/code/__HELPERS/icons.html @@ -0,0 +1,60 @@ + + + + + + + code/__HELPERS/icons.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/icons.dm + +

+ + + + + + + + + + + + + + + + + +
/proc/getFlatIconCreate a single /icon from a given /atom or /image.
/proc/generate_and_hash_rsc_filegenerates a filename for a given asset. +like generate_asset_name(), except returns the rsc reference and the rsc file hash as well as the asset name (sans extension) +used so that certain asset files dont have to be hashed twice
/proc/is_valid_dmi_filegiven a text string, returns whether it is a valid dmi icons folder path
/proc/get_icon_dmi_pathgiven an icon object, dmi file path, or atom/image/mutable_appearance, attempts to find and return an associated dmi file path. +a weird quirk about dm is that /icon objects represent both compile-time or dynamic icons in the rsc, +but stringifying rsc references returns a dmi file path +ONLY if that icon represents a completely unchanged dmi file from when the game was compiled. +so if the given object is associated with an icon that was in the rsc when the game was compiled, this returns a path. otherwise it returns ""
/proc/icon2htmlthe dmi file path we attempt to return if the given object argument is associated with a stringifiable icon +if successful, this looks like "icons/path/to/dmi_file.dmi" +but they pass both isicon() and isfile() checks. theyre the easiest case since stringifying them gives us the path we want +generate an asset for the given icon or the icon of the given appearance for [thing], and send it to any clients in target. +Arguments:
/proc/generate_asset_nameGenerate a filename for this asset +The same asset will always lead to the same asset name +(Generated names do not include file extention.)
/proc/icon_existsChecks if the given iconstate exists in the given file, caching the result. Setting scream to TRUE will print a stack trace ONCE.
/proc/center_imageCenter's an image. +Requires: +The Image +The x dimension of the icon file used in the image +The y dimension of the icon file used in the image +eg: center_image(image_to_center, 32,32) +eg2: center_image(image_to_center, 96,96)
+ + + diff --git a/code/__HELPERS/lazy_templates.html b/code/__HELPERS/lazy_templates.html new file mode 100644 index 000000000000..49ba923dd0b7 --- /dev/null +++ b/code/__HELPERS/lazy_templates.html @@ -0,0 +1,28 @@ + + + + + + + code/__HELPERS/lazy_templates.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/lazy_templates.dm + +

+ + + +
/proc/generate_lazy_template_mapIterates through all lazy template datums that exist and returns a list of them as an associative list of type -> instance.
+ + + diff --git a/code/__HELPERS/lighting.html b/code/__HELPERS/lighting.html new file mode 100644 index 000000000000..4db4399db4bd --- /dev/null +++ b/code/__HELPERS/lighting.html @@ -0,0 +1,30 @@ + + + + + + + code/__HELPERS/lighting.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/lighting.dm + +

+ + + + + +
/proc/emissive_appearanceProduces a mutable appearance glued to the EMISSIVE_PLANE dyed to be the EMISSIVE_COLOR.
/proc/emissive_blockerProduces a mutable appearance glued to the EMISSIVE_PLANE dyed to be the EM_BLOCK_COLOR.
+ + + diff --git a/code/__HELPERS/lists.html b/code/__HELPERS/lists.html new file mode 100644 index 000000000000..4eba4bf7eea9 --- /dev/null +++ b/code/__HELPERS/lists.html @@ -0,0 +1,34 @@ + + + + + + + code/__HELPERS/lists.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/lists.dm + +

+ + + + + + + + + +
/proc/pick_n_takePick a random element from the list and remove it from the list.
/proc/mergeListsSumSums values in two associative lists, from mergee into result, in place
/proc/sort_list_distReturns a list of atoms sorted by each entry's distance to target.
/proc/reverse_rangereplaces reverseList ~Carnie
+ + + diff --git a/code/__HELPERS/logging.html b/code/__HELPERS/logging.html new file mode 100644 index 000000000000..4a7d77c41d54 --- /dev/null +++ b/code/__HELPERS/logging.html @@ -0,0 +1,32 @@ + + + + + + + code/__HELPERS/logging.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/logging.dm + +

+ + + + + + + +
/proc/log_perfLogging for game performance
/proc/log_tguiAppends a tgui-related log entry. All arguments are optional.
/proc/log_mappingLogging for mapping errors
+ + + diff --git a/code/__HELPERS/matrices.html b/code/__HELPERS/matrices.html new file mode 100644 index 000000000000..7e2a6c67c9bd --- /dev/null +++ b/code/__HELPERS/matrices.html @@ -0,0 +1,37 @@ + + + + + + + code/__HELPERS/matrices.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/matrices.dm + +

+ + + + + + + +
/proc/color_matrix_from_stringConverts a hex color string to a color matrix.
/proc/color_matrix_recolor_rgbCreates a matrix to re-paint a sprite, replacing pure red, green, and blue with 3 different shades. Doesn't work with mixed tones of RGB or whites or greys +-- must be pure. R/G/B 255 becomes the new color, darker shades become correspondingly darker. +The arg is a list of hex colours, for ex "list("#d4c218", "#b929f7", "#339933"". +if you want variations of the same color, color_matrix_recolor_red() is simpler.
/proc/color_matrix_recolor_redCreates a matrix to re-paint a sprite, replacing shades of red with corresponding shades of a new color. In the base sprite, Hue must always be pure red. +Saturation and Lightness can be anything. Arg is a hex string for a color. Proc is by Lummox JR, www.byond.com/forum/post/2209545 +color_matrix_recolor_rgb is more complex, but gives more precise control over the palette, at least if using 3 or fewer colours.
+ + + diff --git a/code/__HELPERS/nameof.html b/code/__HELPERS/nameof.html new file mode 100644 index 000000000000..9ea424ff28a6 --- /dev/null +++ b/code/__HELPERS/nameof.html @@ -0,0 +1,43 @@ + + + + + + + code/__HELPERS/nameof.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__HELPERS/nameof.dm + +

+ + + +
NAMEOFNAMEOF: Compile time checked variable name to string conversion +evaluates to a string equal to "X", but compile errors if X isn't a var on datum. +datum may be null, but it does need to be a typed var.
NAMEOF_STATICNAMEOF that actually works in static definitions because src::type requires src to be defined

Define Details

+

NAMEOF + + + +

+

NAMEOF: Compile time checked variable name to string conversion +evaluates to a string equal to "X", but compile errors if X isn't a var on datum. +datum may be null, but it does need to be a typed var.

NAMEOF_STATIC + + + +

+

NAMEOF that actually works in static definitions because src::type requires src to be defined

+ + + diff --git a/code/__HELPERS/qdel.html b/code/__HELPERS/qdel.html new file mode 100644 index 000000000000..d76d007152bf --- /dev/null +++ b/code/__HELPERS/qdel.html @@ -0,0 +1,28 @@ + + + + + + + code/__HELPERS/qdel.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/qdel.dm + +

+ + + +
/proc/______qdel_list_wrapperthe underscores are to encourage people not to use this directly.
+ + + diff --git a/code/__HELPERS/string_lists.html b/code/__HELPERS/string_lists.html new file mode 100644 index 000000000000..556673feaa47 --- /dev/null +++ b/code/__HELPERS/string_lists.html @@ -0,0 +1,30 @@ + + + + + + + code/__HELPERS/string_lists.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/string_lists.dm + +

+ + + + + +
/proc/string_listCaches lists with non-numeric stringify-able values (text or typepath).
/proc/baseturfs_string_listA wrapper for baseturf string lists, to offer support of non list values, and a stack_trace if we have major issues
+ + + diff --git a/code/__HELPERS/text.html b/code/__HELPERS/text.html new file mode 100644 index 000000000000..9cbceadca43c --- /dev/null +++ b/code/__HELPERS/text.html @@ -0,0 +1,32 @@ + + + + + + + code/__HELPERS/text.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/text.dm + +

+ + + + + + + +
/proc/replace_non_alphanumeric_plusHelper for only alphanumeric characters plus common punctuation, spaces, underscore and hyphen _ -.
/proc/capitalize_first_lettersFinds the first letter of each word in the provided string and capitalize them
/proc/string_starts_withCheck if the string haystack begins with the string needle.
+ + + diff --git a/code/__HELPERS/traits.html b/code/__HELPERS/traits.html new file mode 100644 index 000000000000..925033348c86 --- /dev/null +++ b/code/__HELPERS/traits.html @@ -0,0 +1,30 @@ + + + + + + + code/__HELPERS/traits.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/traits.dm + +

+ + + + + +
/proc/___TraitAddDO NOT USE ___TraitAdd OR ___TraitRemove as a replacement for ADD_TRAIT / REMOVE_TRAIT defines. To be used explicitly for callback.
/proc/___TraitRemoveDO NOT USE ___TraitAdd OR ___TraitRemove as a replacement for ADD_TRAIT / REMOVE_TRAIT defines. To be used explicitly for callback.
+ + + diff --git a/code/__HELPERS/type2type.html b/code/__HELPERS/type2type.html new file mode 100644 index 000000000000..67ccd287a52a --- /dev/null +++ b/code/__HELPERS/type2type.html @@ -0,0 +1,31 @@ + + + + + + + code/__HELPERS/type2type.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/type2type.dm + +

+ + + + + +
/proc/url2htmlloaderReturn html to load a url. +for use inside of browse() calls to html assets that might be loaded on a cdn.
/proc/big_number_to_textFormats a larger number to correct textual representation without losing data
+ + + diff --git a/code/__HELPERS/unsorted.html b/code/__HELPERS/unsorted.html new file mode 100644 index 000000000000..07b18b6a6e2c --- /dev/null +++ b/code/__HELPERS/unsorted.html @@ -0,0 +1,67 @@ + + + + + + + code/__HELPERS/unsorted.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__HELPERS/unsorted.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
/proc/get_pixel_position_xGives X position on pixel grid of an object, accounting for offsets
/proc/get_pixel_position_yGives Y position on pixel grid of an object, accounting for offsets
/proc/Get_AngleCalculate the angle between two atoms. Uses north-clockwise convention: NORTH = 0, EAST = 90, etc.
/proc/delta_to_angleCalculate the angle produced by a pair of x and y deltas. Uses north-clockwise convention: NORTH = 0, EAST = 90, etc.
/proc/TurfBlockedNonWindowthe actual dir between the start and target turf +The direction that mover's path is being blocked by
/proc/get_cardinal_dirReturns the nearest cardinal dir between two atoms. Favors NORTH/SOUTH on perfect diagonals. Consistent and reversible.
/proc/get_lineGet a list of turfs in a line from start_atom to end_atom.
/proc/dviewVersion of view() which ignores darkness, because BYOND doesn't have it (I actually suggested it but it was tagged redundant, BUT HEARERS IS A T- /rant).
/proc/doviewVersion of oview() which ignores darkness
VARSET_WEAK_CALLBACKSame as VARSET_CALLBACK, but uses a weakref to the datum. +Use this if the timer is exceptionally long.
UNTIL_OR_TIMEOUTMacro for cases where an UNTIL() may go on forever (such as for an http request)
/proc/getpoisReturns a list of all items of interest with their name
/proc/get_related_directionsGiven a direction, return the direction and the +-45 degree directions next to it
/proc/should_block_game_interactionReturns TRUE if the target is somewhere that the game should not interact with if possible +In this case, admin Zs and tutorial areas

Define Details

+

UNTIL_OR_TIMEOUT + + + +

+

Macro for cases where an UNTIL() may go on forever (such as for an http request)

VARSET_WEAK_CALLBACK + + + +

+

Same as VARSET_CALLBACK, but uses a weakref to the datum. +Use this if the timer is exceptionally long.

+ + + diff --git a/code/__HELPERS/verb_helpers.html b/code/__HELPERS/verb_helpers.html new file mode 100644 index 000000000000..0ef131441c76 --- /dev/null +++ b/code/__HELPERS/verb_helpers.html @@ -0,0 +1,30 @@ + + + + + + + code/__HELPERS/verb_helpers.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/verb_helpers.dm + +

+ + + + + +
/proc/add_verbhandles adding verbs and updating the stat panel browser
/proc/remove_verbhandles removing verb and sending it to browser to update, use this for removing verbs
+ + + diff --git a/code/_byond_version_compat.html b/code/_byond_version_compat.html new file mode 100644 index 000000000000..911e21a41601 --- /dev/null +++ b/code/_byond_version_compat.html @@ -0,0 +1,57 @@ + + + + + + + code/_byond_version_compat.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/_byond_version_compat.dm + +

+ + + + + + +
PROC_REFCall by name proc references, checks if the proc exists on either this type or as a global proc.
VERB_REFCall by name verb references, checks if the verb exists on either this type or as a global verb.
TYPE_PROC_REFCall by name proc reference, checks if the proc exists on either the given type or as a global proc
TYPE_VERB_REFCall by name verb reference, checks if the verb exists on either the given type or as a global verb
GLOBAL_PROC_REFCall by name proc reference, checks if the proc is an existing global proc

Define Details

+

GLOBAL_PROC_REF + + + +

+

Call by name proc reference, checks if the proc is an existing global proc

PROC_REF + + + +

+

Call by name proc references, checks if the proc exists on either this type or as a global proc.

TYPE_PROC_REF + + + +

+

Call by name proc reference, checks if the proc exists on either the given type or as a global proc

TYPE_VERB_REF + + + +

+

Call by name verb reference, checks if the verb exists on either the given type or as a global verb

VERB_REF + + + +

+

Call by name verb references, checks if the verb exists on either this type or as a global verb.

+ + + diff --git a/code/_globalvars/bitfields.html b/code/_globalvars/bitfields.html new file mode 100644 index 000000000000..205a857304fc --- /dev/null +++ b/code/_globalvars/bitfields.html @@ -0,0 +1,29 @@ + + + + + + + code/_globalvars/bitfields.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/_globalvars/bitfields.dm + +

+ + + + +
/datum/bitfieldSpecifies a bitfield for smarter debugging
/proc/generate_bitfieldsTurns /datum/bitfield subtypes into a list for use in debugging
+ + + diff --git a/code/_globalvars/global_lists.html b/code/_globalvars/global_lists.html new file mode 100644 index 000000000000..88646b21367d --- /dev/null +++ b/code/_globalvars/global_lists.html @@ -0,0 +1,30 @@ + + + + + + + code/_globalvars/global_lists.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/_globalvars/global_lists.dm + +

+ + + + + +
/proc/setup_working_joe_emotesSetup for Working joe emotes and category list, returns data for wj_emotes
/proc/setup_hazard_joe_emotesSetup for Hazard joe emotes and category list, returns data for hj_emotes
+ + + diff --git a/code/_globalvars/lists/keybindings.html b/code/_globalvars/lists/keybindings.html new file mode 100644 index 000000000000..e78efbcbbd49 --- /dev/null +++ b/code/_globalvars/lists/keybindings.html @@ -0,0 +1,30 @@ + + + + + + + code/_globalvars/lists/keybindings.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/_globalvars/lists/keybindings.dm + +

+ + + + + +
/proc/init_keybindingsCreates and sorts all the keybinding datums
/proc/add_keybindingAdds an instanced keybinding to the global tracker
+ + + diff --git a/code/_globalvars/misc.html b/code/_globalvars/misc.html new file mode 100644 index 000000000000..265088263c91 --- /dev/null +++ b/code/_globalvars/misc.html @@ -0,0 +1,39 @@ + + + + + + + code/_globalvars/misc.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/_globalvars/misc.dm + +

+ + + + + +
shuttle_time_in_station3 minutes in the station.
shuttle_time_to_arrive10 minutes to arrive.
/proc/setup_offsetSets the offset 2 lines above.

Define Details

+

shuttle_time_in_station + + +

+

3 minutes in the station.

shuttle_time_to_arrive + + +

+

10 minutes to arrive.

+ + + diff --git a/code/_macros.html b/code/_macros.html new file mode 100644 index 000000000000..de18560b60d4 --- /dev/null +++ b/code/_macros.html @@ -0,0 +1,69 @@ + + + + + + + code/_macros.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/_macros.dm + +

+ + + + + + + + +
debug_msgA message define designed to be easily found and deleted
LAZYFINDReturns the key of the submitted item in the list
LAZYADDASSOCAdds to the item K the value V, if the list is null it will initialize it
LAZYADDASSOCLISTThis is used to add onto lazy assoc list when the value you're adding is a /list/. This one has extra safety over lazyaddassoc because the value could be null (and thus cant be used to += objects)
LAZYREMOVEASSOCRemoves the value V from the item K, if the item K is empty will remove it from the list, if the list is empty will set the list to null
LAZYACCESSASSOCAccesses an associative list, returns null if nothing is found
LAZYORASSOCLISTPerforms an insertion on the given lazy list with the given key and value. If the value already exists, a new one will not be made.

Define Details

+

LAZYACCESSASSOC + + + +

+

Accesses an associative list, returns null if nothing is found

LAZYADDASSOC + + + +

+

Adds to the item K the value V, if the list is null it will initialize it

LAZYADDASSOCLIST + + + +

+

This is used to add onto lazy assoc list when the value you're adding is a /list/. This one has extra safety over lazyaddassoc because the value could be null (and thus cant be used to += objects)

LAZYFIND + + + +

+

Returns the key of the submitted item in the list

LAZYORASSOCLIST + + + +

+

Performs an insertion on the given lazy list with the given key and value. If the value already exists, a new one will not be made.

LAZYREMOVEASSOC + + + +

+

Removes the value V from the item K, if the item K is empty will remove it from the list, if the list is empty will set the list to null

debug_msg + + + +

+

A message define designed to be easily found and deleted

+ + + diff --git a/code/_onclick/hud/map_popups.html b/code/_onclick/hud/map_popups.html new file mode 100644 index 000000000000..f41048586639 --- /dev/null +++ b/code/_onclick/hud/map_popups.html @@ -0,0 +1,33 @@ + + + + + + + code/_onclick/hud/map_popups.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/_onclick/hud/map_popups.dm + +

+ + + + +
/atom/movable/screenA screen object, which acts as a container for turfs and other things +you want to show on the map, which you usually attach to "vis_contents".
/atom/movable/screen/map_viewA screen object, which acts as a container for turfs and other things +you want to show on the map, which you usually attach to "vis_contents".
/atom/movable/screen/backgroundA generic background object. +It is also implicitly used to allocate a rectangle on the map, which will +be used for auto-scaling the map.
+ + + diff --git a/code/_onclick/hud/rendering/_render_readme.html b/code/_onclick/hud/rendering/_render_readme.html new file mode 100644 index 000000000000..66abc71ced5d --- /dev/null +++ b/code/_onclick/hud/rendering/_render_readme.html @@ -0,0 +1,67 @@ + + + + + + + code/_onclick/hud/rendering/_render_readme.md - byond + + +
+ byond - + Modules - + Types +
+
+

The Render Readme + +

+ + +
    +
  1. Byond internal functionality
  2. +
  3. Known internal snowflake
  4. +
  5. The rendering solution
  6. +
  7. Render plates
  8. +
+Byond internal functionality +

This part of the guide will assume that you have read the byond reference entry for rendering at www.byond.com/docs/ref//#/{notes}/renderer

+

When you create an atom, this will always create an internal byond structure called an "appearance". This appearance you will likely be familiar with, as it is exposed through the /atom/var/appearance var. This appearance var holds data on how to render the object, ie what icon/icon_state/color etc it is using. Note that appearance vars will always copy, and do not hold a reference. When you update a var, for example let's pretend we add a filter, the appearance will be updated to include the filter. Note that, however, vis_contents objets are uniquely excluded from appearances. Then, when the filter is updated, the appearance will be recreated, and the atom marked as "dirty". After it has been updated, the SendMaps() function (sometimes also called maptick), which is an internal byond function that iterates over all objects in a client's view and in the clients.mob.contents, checks for "dirty" atoms, then resends any "dirty" appearances to clients as needed and unmarks them as dirty. This function is notoriously slow, but we can see its tick usage through the world.map_cpu var. We can also avoid more complex checks checking whether an object is visible on a client's screen by using the TILE_BOUND appearance flag.

+

Finally, we arrive at clientside behavior, where we have two main clientside functions: GetMapIcons, and Render. GetMapIcons is repsonsible for actual rendering calculations on the clientside, such as "Group Icons and Set bounds", which performs clientside calculations for transform matrixes. Note that particles here are handled in a separate thread and are not diplayed in the clientside profiler. Render handles the actual drawing of the screen.

+

For debugging rendering issues its reccomended you do two things: +A) Talk to someone who has inside knowledge(like lummox) about it, most of this is undocumented and bugs often +B) Use the undocumented debug printer which reads of data on icons rendering, this is very dense but can be useful in some cases. To use: Right click top tab -> Options & Messages -> Client -> Command -> Enter ".debug profile mapicons" and press Enter -> go to your Byond directory and find BYOND/cfg/mapicons.json . Yes this is one giant one-line json.

+Known internal snowflake +

The following is an incomplete list of pitfalls that come from byond snowflake that are known, this list is obviously incomplete.

+
    +
  1. Transforms are very slow on clientside. This is not usually noticable, but if you start using large amounts of them it will grind you to a halt quickly, regardless of whether its on overlays or objs
  2. +
  3. The darkness plane. The darkness plane has specific variables it needs to render correctly, and these can be found in the plane masters file. it is composed internally of two parts, a black mask over the clients screen, and a non rendering mask that blocks all luminosity=0 turfs and their contents from rendering if the SEE_BLACKNESS flag is set properly. It behaves very oddly, such as forcing itself to ALWAYS render or pre-render on blend_multiply blend mode or refusing to render the black mask properly otherwise. The blocker will always block rendering but the mask can be layered under other objects.
  4. +
  5. render_target/source. Render_target/source will only copy certain rendering instructions, and these are only defined as "etc." in the byond reference. Known non copied appearance vars include: blend_mode, plane, layer, vis_contents, mouse_opacity...
  6. +
  7. Large icons on the screen that peek over the edge will instead of only rendering partly like you would expect will instead stretch the screen while not adgusting the render buffer, which means that you can actively see as tiles and map objects are rendered. You can use this for an easy "offscreen" UI.
  8. +
  9. Numerically large filters on objects of any size will torpedo performance, even though large objects with small filters will perform massively better. (ie blur(size=20) BAD)
  10. +
  11. Texture Atlas: the texture atlas byond uses to render icons is very susceptible to corruption and can regularily replace icons with other icons or just not render at all. This can be exasperated by alt tabbing or pausing the dreamseeker process.
  12. +
  13. The renderer is awful code and lummox said he will try changing a large part of it for 515 so keep an eye on that
  14. +
  15. Byond uses DirectX 9 (Lummox said he wants to update to DirectX 11)
  16. +
  17. Particles are just fancy overlays and are not independent of their owner
  18. +
  19. Maptick items inside mob.contents are cheaper compared to most other movables
  20. +
  21. Displacement filter: The byond "displacement filter" does not, as the name would make you expect, use displacement maps, but instead uses normal maps.
  22. +
+The rendering solution +

One of the main issues with making pretty effects is how objects can only render to one plane, and how filters can only be applied to single objects. Quite simply it means we cant apply effects to multiple planes at once, and an effect to one plane only by treating it as a single unit:

+

+

A semi-fix to stop from having to apply effects to every single plane is to use the render controllers, to automatically apply filters and colors automatically onto their controlled planes.

+

The solution is thus instead we replace plane masters rendering directly to client with planes that render multiple planes onto them as objects in order to be able to affect multiple planes while treating them as a single object. This is done by relaying the plane using a "render relay" onto a "render plate" which acts as a plane master of plane masters of sorts, and since planes are rendered onto it as single objects any filters we apply to them will render over the planes, treating them as a single unit.

+

+

We can also choose to render these by decreasing the scaling all applied effects (effect_size/number_of_plates_rendered_to) then rendering it onto multiple planes:

+

+

Through these this allows us to treat planes as single objects, and lets us distort them as a single unit, most notably works wonders with the displacement filter. Specifically, here you can displacement_filter a plane onto a plate, which then will treat all the other planes rendered on that plate as a single unit.

+Render plates +

The rendering system uses two objects to unify planes: render_relay and render_plates. Render relays use render_target/source and the relay_render_to_plane proc to replicate the plane master on the render relay. This render relay is then rendered onto a render_plate, which is a plane master that renders the render_relays onto itself. This plate can then be hierachically rendered with the same process until it reaches the master render_plate, which is the plate that will actually render to the player. These plates naturally in the byond style have quirks. For example, rendering to two plates will double any effects such as color or filters, and as such you need to carefully manage how you render them. Keep in mind as well that when sorting the layers for rendering on a plane that they should not be negative, this is handled automatically in relay_render_to_plane. When debugging note that mouse_opacity can act bizzarly with this method, such as only allowing you to click things that are layered over objects on a certain plane but auomatically setting the mouse_opacity should be handling this. Note that if you decide to manipulate a plane with internal byond objects that you will have to manually extrapolate the vars that are set if you want to render them to another plane (See blackness plane for example), and that this is not documented anywhere.

+

Goodluck and godspeed with coding +- Just another contributor

+ + + diff --git a/code/_onclick/hud/rendering/plane_master.html b/code/_onclick/hud/rendering/plane_master.html new file mode 100644 index 000000000000..f25b36b8967b --- /dev/null +++ b/code/_onclick/hud/rendering/plane_master.html @@ -0,0 +1,40 @@ + + + + + + + code/_onclick/hud/rendering/plane_master.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/_onclick/hud/rendering/plane_master.dm + +

+ + + + + + + +
/atom/movable/screen/plane_master/game_worldContains most things in the game world
/atom/movable/screen/plane_master/roofPlane master handling display of building roofs. They're meant to become invisible when inside a building.
/atom/movable/screen/plane_master/blacknessPlane master handling byond internal blackness +vars are set as to replicate behavior when rendering to other planes +do not touch this unless you know what you are doing

This system works by exploiting BYONDs color matrix filter to use layers to handle emissive blockers.

+

Emissive overlays are pasted with an atom color that converts them to be entirely some specific color. +Emissive blockers are pasted with an atom color that converts them to be entirely some different color. +Emissive overlays and emissive blockers are put onto the same plane. +The layers for the emissive overlays and emissive blockers cause them to mask eachother similar to normal BYOND objects. +A color matrix filter is applied to the emissive plane to mask out anything that isn't whatever the emissive color is. +This is then used to alpha mask the lighting plane.

/atom/movable/screen/plane_master/lightingContains all lighting objects
/atom/movable/screen/plane_master/emissiveHandles emissive overlays and emissive blockers.
+ + + diff --git a/code/_onclick/hud/rendering/plane_master_controller.html b/code/_onclick/hud/rendering/plane_master_controller.html new file mode 100644 index 000000000000..9affe34867c0 --- /dev/null +++ b/code/_onclick/hud/rendering/plane_master_controller.html @@ -0,0 +1,29 @@ + + + + + + + code/_onclick/hud/rendering/plane_master_controller.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/_onclick/hud/rendering/plane_master_controller.dm + +

+ + + +
/atom/movable/plane_master_controllerAtom that manages and controls multiple planes. It's an atom so we can hook into add_filter etc. Multiple controllers can control one plane.
/atom/movable/plane_master_controller/non_masterExists for convienience when referencing all non-master render plates. +This is the whole game and the UI, but not the escape menu.
+ + + diff --git a/code/_onclick/hud/rendering/render_plate.html b/code/_onclick/hud/rendering/render_plate.html new file mode 100644 index 000000000000..5234a517accf --- /dev/null +++ b/code/_onclick/hud/rendering/render_plate.html @@ -0,0 +1,34 @@ + + + + + + + code/_onclick/hud/rendering/render_plate.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/_onclick/hud/rendering/render_plate.dm + +

+ + + + + + + +

Custom rendering solution to allow for advanced effects +We (ab)use plane masters and render source/target to cheaply render 2+ planes as 1 +if you want to read more read the _render_readme.md

/obj/render_plane_relayRender relay object assigned to a plane master to be able to relay it's render onto other planes that are not it's own
/atom/movable/screen/plane_master/rendering_plate
/atom/movable/screen/plane_master/rendering_plate/masterthis plate renders the final screen to show to the player
/atom/movable/screen/plane_master/rendering_plate/game_worldrenders general in charachter game objects
/atom/movable/screen/plane_master/rendering_plate/non_gamerender plate for OOC stuff like ghosts, hud-screen effects, etc
+ + + diff --git a/code/_onclick/hud/screen_object_holder.html b/code/_onclick/hud/screen_object_holder.html new file mode 100644 index 000000000000..81e05ae49ca0 --- /dev/null +++ b/code/_onclick/hud/screen_object_holder.html @@ -0,0 +1,28 @@ + + + + + + + code/_onclick/hud/screen_object_holder.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/_onclick/hud/screen_object_holder.dm + +

+ + +
/datum/screen_object_holderA helper instance that will handle adding objects from the client's screen +to easily remove from later.
+ + + diff --git a/code/controllers/configuration/config_entry.html b/code/controllers/configuration/config_entry.html new file mode 100644 index 000000000000..e64d81aac1a3 --- /dev/null +++ b/code/controllers/configuration/config_entry.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/config_entry.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/configuration/config_entry.dm + +

+ + +
/datum/config_entry/str_listList config entry, used for configuring a list of strings
+ + + diff --git a/code/controllers/configuration/entries/game_options.html b/code/controllers/configuration/entries/game_options.html new file mode 100644 index 000000000000..3b5749612580 --- /dev/null +++ b/code/controllers/configuration/entries/game_options.html @@ -0,0 +1,28 @@ + + + + + + + code/controllers/configuration/entries/game_options.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/configuration/entries/game_options.dm + +

+ + + +
/datum/config_entry/string/nightmare_pathRelative inclusion path for nightmare configuration files
/datum/config_entry/number/extra_larva_per_burstUsed to determine how many extra larva you want per burst. Supports fractions. See /datum/hive_status/proc/increase_larva_after_burst()
+ + + diff --git a/code/controllers/configuration/entries/general.html b/code/controllers/configuration/entries/general.html new file mode 100644 index 000000000000..4f7ef97e7f78 --- /dev/null +++ b/code/controllers/configuration/entries/general.html @@ -0,0 +1,41 @@ + + + + + + + code/controllers/configuration/entries/general.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/configuration/entries/general.dm + +

+ + + + + + + + + + + + + + + +
/datum/config_entry/string/manager_urlServer to notify of game events
/datum/config_entry/string/centcom_ban_dbURL for the CentCom Galactic Ban DB API
/datum/config_entry/string/webmap_hostHost of the webmap
/datum/config_entry/flag/log_timers_on_bucket_resetlogs all timers in buckets on automatic bucket reset (Useful for timer debugging) +logs all timers in buckets on automatic bucket reset (Useful for timer debugging)
/datum/config_entry/flag/ephemeral_map_modeForce map bypassing configuration, and ignore map changes
/datum/config_entry/string/ephemeral_ground_mapMap configuration file to use in ephemeral mode
/datum/config_entry/string/influxdb_hostInfluxDB v2 Host to connect to for sending statistics (over HTTP API)
/datum/config_entry/string/influxdb_bucketInfluxDB v2 Bucket to send staistics to
/datum/config_entry/string/influxdb_orgInfluxDB v2 Organization to access buckets of
/datum/config_entry/string/influxdb_tokenInfluxDB v2 API Token to access the organization and bucket
/datum/config_entry/number/influxdb_stats_periodHow often to snapshot general game statistics to influxdb driver
/datum/config_entry/number/influxdb_mcstats_periodHow often to snapshot MC statistics
/datum/config_entry/number/influxdb_send_periodHow often to send queued influxdb statistics
/datum/config_entry/keyed_list/connection_relay_pingRelay Ping Browser configuration
+ + + diff --git a/code/controllers/mc/failsafe.html b/code/controllers/mc/failsafe.html new file mode 100644 index 000000000000..160d15a6661f --- /dev/null +++ b/code/controllers/mc/failsafe.html @@ -0,0 +1,32 @@ + + + + + + + code/controllers/mc/failsafe.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/mc/failsafe.dm + +

+ + + + + + + +
/var/FailsafeFailsafe
/proc/recover_all_SS_and_recreate_masterRecreate all SSs which will still cause data survive due to Recover(), the new Master will then find and take them from global.vars
/proc/delete_all_SS_and_recreate_masterDelete all existing SS to basically start over
+ + + diff --git a/code/controllers/mc/master.html b/code/controllers/mc/master.html new file mode 100644 index 000000000000..30e8ede5369c --- /dev/null +++ b/code/controllers/mc/master.html @@ -0,0 +1,32 @@ + + + + + + + code/controllers/mc/master.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/mc/master.dm + +

+ + + + +
/var/MasterStonedMC
/datum/controller/masterStart of queue linked list +End of queue linked list (used for appending to the list) +Are we loading in a new map? +for scheduling different subsystems for different stages of the round
+ + + diff --git a/code/controllers/mc/subsystem.html b/code/controllers/mc/subsystem.html new file mode 100644 index 000000000000..54932b5bf41d --- /dev/null +++ b/code/controllers/mc/subsystem.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/mc/subsystem.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/mc/subsystem.dm + +

+ + +
/datum/controller/subsystemDefines a subsystem to be managed by the Master Controller
+ + + diff --git a/code/controllers/subsystem/autofire.html b/code/controllers/subsystem/autofire.html new file mode 100644 index 000000000000..ae8928e45c5f --- /dev/null +++ b/code/controllers/subsystem/autofire.html @@ -0,0 +1,28 @@ + + + + + + + code/controllers/subsystem/autofire.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/autofire.dm + +

+ + + +
/var/SSautomatedfire
+ + + diff --git a/code/controllers/subsystem/chat.html b/code/controllers/subsystem/chat.html new file mode 100644 index 000000000000..f511d26c8d98 --- /dev/null +++ b/code/controllers/subsystem/chat.html @@ -0,0 +1,28 @@ + + + + + + + code/controllers/subsystem/chat.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/chat.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/controllers/subsystem/game_decorator.html b/code/controllers/subsystem/game_decorator.html new file mode 100644 index 000000000000..4bd91de190a8 --- /dev/null +++ b/code/controllers/subsystem/game_decorator.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/subsystem/game_decorator.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/game_decorator.dm + +

+ + +

So map decoration is done post-setup after nightmare and spawners

+ + + diff --git a/code/controllers/subsystem/garbage.html b/code/controllers/subsystem/garbage.html new file mode 100644 index 000000000000..33321e2190e0 --- /dev/null +++ b/code/controllers/subsystem/garbage.html @@ -0,0 +1,56 @@ + + + + + + + code/controllers/subsystem/garbage.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/garbage.dm + +

+ + + + + + +
Debugging GC issues +

In order to debug qdel() failures, there are several tools available. +To enable these tools, define TESTING in _compile_options.dm.

+

First is a verb called "Find References", which lists every refererence to an object in the world. This allows you to track down any indirect or obfuscated references that you might have missed.

+

Complementing this is another verb, "qdel() then Find References". +This does exactly what you'd expect; it calls qdel() on the object and then it finds all references remaining. +This is great, because it means that Destroy() will have been called before it starts to find references, +so the only references you'll find will be the ones preventing the object from qdel()ing gracefully.

+

If you have a datum or something you are not destroying directly (say via the singulo), +the next tool is QDEL_HINT_FINDREFERENCE. You can return this in Destroy() (where you would normally return ..()), +to print a list of references once it enters the GC queue.

+

Finally is a verb, "Show qdel() Log", which shows the deletion log that the garbage subsystem keeps. This is helpful if you are having race conditions or need to review the order of deletions.

+

Note that for any of these tools to work TESTING must be defined. +By using these methods of finding references, you can make your life far, far easier when dealing with qdel() failures.

/datum/qdel_itemQdel Item: Holds statistics on each type that passes thru qdel +Holds the type as a string for this type +Total number of times it's passed thru qdel. +Total amount of milliseconds spent processing this type's Destroy() +Times it was queued for soft deletion but failed to soft delete. +Different from failures because it also includes QDEL_HINT_HARDDEL deletions +Total amount of milliseconds spent hard deleting this type. +Highest time spent hard_deleting this in ms. +Number of times hard deletes took longer than the configured threshold +Number of times it's not respected force=TRUE +Number of times it's not even bother to give a qdel hint +Number of times it's slept in its destroy

Flags related to this type's trip thru qdel.

+
/proc/qdelShould be treated as a replacement for the 'del' keyword.
+ + + diff --git a/code/controllers/subsystem/influxdriver.html b/code/controllers/subsystem/influxdriver.html new file mode 100644 index 000000000000..52f15a598126 --- /dev/null +++ b/code/controllers/subsystem/influxdriver.html @@ -0,0 +1,28 @@ + + + + + + + code/controllers/subsystem/influxdriver.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/influxdriver.dm + +

+ + + +
/var/SSinfluxdriverSends collected statistics to an influxdb v2 backend periodically
+ + + diff --git a/code/controllers/subsystem/influxstats.html b/code/controllers/subsystem/influxstats.html new file mode 100644 index 000000000000..50c6b29f1c01 --- /dev/null +++ b/code/controllers/subsystem/influxstats.html @@ -0,0 +1,30 @@ + + + + + + + code/controllers/subsystem/influxstats.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/influxstats.dm + +

+ + + + + +
/var/SSinfluxstatsSends generic round running statistics to the InfluxDB backend
/datum/controller/subsystem/influxstatsCounter of data snapshots sent

Current task in progress, for pausing/resuming

+ + + diff --git a/code/controllers/subsystem/lighting.html b/code/controllers/subsystem/lighting.html new file mode 100644 index 000000000000..eab58e73498e --- /dev/null +++ b/code/controllers/subsystem/lighting.html @@ -0,0 +1,30 @@ + + + + + + + code/controllers/subsystem/lighting.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/lighting.dm + +

+ + + +
/datum/controller/subsystem/lightingList of static lighting sources queued for update. +List of lighting corners queued for update. +List of lighting objects queued for update.

List of hybrid lighting sources queued for update.

+ + + diff --git a/code/controllers/subsystem/minimap.html b/code/controllers/subsystem/minimap.html new file mode 100644 index 000000000000..df686d21e9bc --- /dev/null +++ b/code/controllers/subsystem/minimap.html @@ -0,0 +1,49 @@ + + + + + + + code/controllers/subsystem/minimap.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/minimap.dm + +

+ + + + + + + + + + + + + + + + + +
/var/SSminimaps
/datum/hud_displaysHolder datum for a zlevels data, concerning the overlays and the drawn level itself +The individual image trackers have a raw and a normal list +raw lists just store the images, while the normal ones are assoc list of [tracked_atom] = image +the raw lists are to speed up the Fire() of the subsystem so we dont have to filter through +WARNING! +There is a byond bug: http://www.byond.com/forum/post/2661309 +That that forces us to use a separate list ref when accessing the lists of this datum +Yea it hurts me too
/datum/minimap_updatorHolder datum to ease updating of atoms to update
/proc/get_tacmap_data_pngFetches the datum containing an announced flattend map png reference.
/proc/get_unannounced_tacmap_data_pngFetches the datum containing the latest unannounced flattend map png reference.
/proc/get_tacmap_data_svgFetches the last set of svg coordinates for the tacmap drawing.
/proc/resend_current_map_pngRe-sends relevant flattened tacmaps to a single client.
/atom/movable/screen/minimapDefault HUD screen minimap object
/datum/action/minimapAction that gives the owner access to the minimap pool
/proc/get_minimap_flag_for_factionGets the MINIMAP_FLAG for the provided faction or hivenumber if one exists
+ + + diff --git a/code/controllers/subsystem/pager_status.html b/code/controllers/subsystem/pager_status.html new file mode 100644 index 000000000000..e1fe1fd70a39 --- /dev/null +++ b/code/controllers/subsystem/pager_status.html @@ -0,0 +1,28 @@ + + + + + + + code/controllers/subsystem/pager_status.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/pager_status.dm + +

+ + + +
/var/SSpager_statusUpdates BYOND pager status periodically
+ + + diff --git a/code/controllers/subsystem/ping.html b/code/controllers/subsystem/ping.html new file mode 100644 index 000000000000..575673f79160 --- /dev/null +++ b/code/controllers/subsystem/ping.html @@ -0,0 +1,28 @@ + + + + + + + code/controllers/subsystem/ping.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/ping.dm + +

+ + +

Copyright (c) 2022 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/controllers/subsystem/shuttles.html b/code/controllers/subsystem/shuttles.html new file mode 100644 index 000000000000..2f8154c9a74c --- /dev/null +++ b/code/controllers/subsystem/shuttles.html @@ -0,0 +1,44 @@ + + + + + + + code/controllers/subsystem/shuttles.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/controllers/subsystem/shuttles.dm + +

+ + + + +
MAX_TRANSIT_TILE_COUNTHow many turfs to allow before we stop blocking transit requests
SOFT_TRANSIT_RESERVATION_THRESHOLDHow many turfs to allow before we start freeing up existing "soft reserved" transit docks +If we're under load we want to allow for cycling, but if not we want to preserve already generated docks for use
SHUTTLE_SPAWN_BUFFERGive a shuttle 10 "fires" (~10 seconds) to spawn before it can be cleaned up.

Define Details

+

MAX_TRANSIT_TILE_COUNT + + +

+

How many turfs to allow before we stop blocking transit requests

SHUTTLE_SPAWN_BUFFER + + +

+

Give a shuttle 10 "fires" (~10 seconds) to spawn before it can be cleaned up.

SOFT_TRANSIT_RESERVATION_THRESHOLD + + +

+

How many turfs to allow before we start freeing up existing "soft reserved" transit docks +If we're under load we want to allow for cycling, but if not we want to preserve already generated docks for use

+ + + diff --git a/code/controllers/subsystem/statpanel.html b/code/controllers/subsystem/statpanel.html new file mode 100644 index 000000000000..c6719feb34e6 --- /dev/null +++ b/code/controllers/subsystem/statpanel.html @@ -0,0 +1,29 @@ + + + + + + + code/controllers/subsystem/statpanel.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/statpanel.dm + +

+ + +
/datum/object_window_infoDatum that holds and tracks info about a client's object window +Really only exists because I want to be able to do logic with signals +And need a safe place to do the registration
+ + + diff --git a/code/controllers/subsystem/tgui.html b/code/controllers/subsystem/tgui.html new file mode 100644 index 000000000000..c65b182dbdff --- /dev/null +++ b/code/controllers/subsystem/tgui.html @@ -0,0 +1,30 @@ + + + + + + + code/controllers/subsystem/tgui.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/tgui.dm + +

+ + + + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

/var/SStguitgui subsystem
+ + + diff --git a/code/controllers/subsystem/timer.html b/code/controllers/subsystem/timer.html new file mode 100644 index 000000000000..7993c8c39b95 --- /dev/null +++ b/code/controllers/subsystem/timer.html @@ -0,0 +1,63 @@ + + + + + + + code/controllers/subsystem/timer.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/controllers/subsystem/timer.dm + +

+ + + + + + + + + + + + + + + + +
BUCKET_LENControls how many buckets should be kept, each representing a tick. (1 minutes worth)
BUCKET_POSHelper for getting the correct bucket for a given timer
TIMER_MAXGets the maximum time at which timers will be invoked from buckets, used for deferring to secondary queue
TIMER_ID_MAXMax float with integer precision
/var/SStimer
/datum/timedeventThis is the actual timer, it contains the callback and necessary data to maintain +the timer.
/proc/_addtimerCreate a new timer and insert it in the queue. +You should not call this directly, and should instead use the addtimer macro, which includes source information.
/proc/deltimerDelete a timer
/proc/timeleftGet the remaining deciseconds on a timer
/proc/updatetimedelayUpdate the delay on an existing LOOPING timer +Will come into effect on the next process

Define Details

+

BUCKET_LEN + + +

+

Controls how many buckets should be kept, each representing a tick. (1 minutes worth)

BUCKET_POS + + + +

+

Helper for getting the correct bucket for a given timer

TIMER_ID_MAX + + +

+

Max float with integer precision

TIMER_MAX + + + +

+

Gets the maximum time at which timers will be invoked from buckets, used for deferring to secondary queue

+ + + diff --git a/code/datums/action.html b/code/datums/action.html new file mode 100644 index 000000000000..100a9e16adba --- /dev/null +++ b/code/datums/action.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/action.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/action.dm + +

+ + + +
/proc/give_actionGives an action to a mob and returns it
+ + + diff --git a/code/datums/balloon_alerts/balloon_alerts.html b/code/datums/balloon_alerts/balloon_alerts.html new file mode 100644 index 000000000000..688eec09d4be --- /dev/null +++ b/code/datums/balloon_alerts/balloon_alerts.html @@ -0,0 +1,37 @@ + + + + + + + code/datums/balloon_alerts/balloon_alerts.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/datums/balloon_alerts/balloon_alerts.dm + +

+ + + +
BALLOON_TEXT_CHAR_LIFETIME_INCREASE_MULTThe increase in duration per character in seconds
BALLOON_TEXT_CHAR_LIFETIME_INCREASE_MINThe amount of characters needed before this increase takes into effect

Define Details

+

BALLOON_TEXT_CHAR_LIFETIME_INCREASE_MIN + + +

+

The amount of characters needed before this increase takes into effect

BALLOON_TEXT_CHAR_LIFETIME_INCREASE_MULT + + +

+

The increase in duration per character in seconds

+ + + diff --git a/code/datums/beam.html b/code/datums/beam.html new file mode 100644 index 000000000000..7fbd16d73ee2 --- /dev/null +++ b/code/datums/beam.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/beam.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/beam.dm + +

+ + +
/datum/beam
+ + + diff --git a/code/datums/components/_component.html b/code/datums/components/_component.html new file mode 100644 index 000000000000..ca1993a97fb8 --- /dev/null +++ b/code/datums/components/_component.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/_component.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/_component.dm + +

+ + +
/datum/componentThe component datum
+ + + diff --git a/code/datums/components/armor_link.html b/code/datums/components/armor_link.html new file mode 100644 index 000000000000..36f438661642 --- /dev/null +++ b/code/datums/components/armor_link.html @@ -0,0 +1,30 @@ + + + + + + + code/datums/components/armor_link.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/armor_link.dm + +

+ + +
/datum/component/armor_linkReturn the object that is the host of any UI's that this component has +datum/component/ui_host() +Allows a piece of clothing to have their armor values change based on the values of another piece of clothing +Ex: Marine boots have their armor values change based on what type of armor you're wearing on your chest
+ + + diff --git a/code/datums/components/bad_leg.html b/code/datums/components/bad_leg.html new file mode 100644 index 000000000000..fae0943c48c4 --- /dev/null +++ b/code/datums/components/bad_leg.html @@ -0,0 +1,32 @@ + + + + + + + code/datums/components/bad_leg.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/datums/components/bad_leg.dm + +

+ + +
MAX_STEPSMaximum amount of steps you can take until you get stunned from pain.

Define Details

+

MAX_STEPS + + +

+

Maximum amount of steps you can take until you get stunned from pain.

+ + + diff --git a/code/datums/components/bonus_damage_stack.html b/code/datums/components/bonus_damage_stack.html new file mode 100644 index 000000000000..29dd34496d5d --- /dev/null +++ b/code/datums/components/bonus_damage_stack.html @@ -0,0 +1,37 @@ + + + + + + + code/datums/components/bonus_damage_stack.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/datums/components/bonus_damage_stack.dm + +

+ + + +
BONUS_DAMAGE_MAX_ALPHAMax alpha for the filter outline.
BONUS_DAMAGE_STACK_LOSS_PER_SECONDLoss of stack every second once it's been more than 5 seconds since last_stack.

Define Details

+

BONUS_DAMAGE_MAX_ALPHA + + +

+

Max alpha for the filter outline.

BONUS_DAMAGE_STACK_LOSS_PER_SECOND + + +

+

Loss of stack every second once it's been more than 5 seconds since last_stack.

+ + + diff --git a/code/datums/components/cluster_stack.html b/code/datums/components/cluster_stack.html new file mode 100644 index 000000000000..923e70be1805 --- /dev/null +++ b/code/datums/components/cluster_stack.html @@ -0,0 +1,42 @@ + + + + + + + code/datums/components/cluster_stack.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/datums/components/cluster_stack.dm + +

+ + + + +
CLUSTER_MAX_ALPHAMax alpha for the filter outline.
MAX_CLUSTER_STACKSOnce cluster_stacks reaches this number, it triggers apply_cluster_stacks() and resets to zero.
CLUSTER_STACK_LOSS_PER_SECONDLoss of stack every second once it's been more than 5 seconds since last_stack.

Define Details

+

CLUSTER_MAX_ALPHA + + +

+

Max alpha for the filter outline.

CLUSTER_STACK_LOSS_PER_SECOND + + +

+

Loss of stack every second once it's been more than 5 seconds since last_stack.

MAX_CLUSTER_STACKS + + +

+

Once cluster_stacks reaches this number, it triggers apply_cluster_stacks() and resets to zero.

+ + + diff --git a/code/datums/components/connect_mob_behalf.html b/code/datums/components/connect_mob_behalf.html new file mode 100644 index 000000000000..94a0593b669d --- /dev/null +++ b/code/datums/components/connect_mob_behalf.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/components/connect_mob_behalf.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/connect_mob_behalf.dm + +

+ + +
/datum/component/connect_mob_behalfThis component behaves similar to connect_loc_behalf, but working off clients and mobs instead of loc +To be clear, we hook into a signal on a tracked client's mob +We retain the ability to react to that signal on a separate listener, which makes this quite powerful
+ + + diff --git a/code/datums/components/footstep.html b/code/datums/components/footstep.html new file mode 100644 index 000000000000..d45f10b9feca --- /dev/null +++ b/code/datums/components/footstep.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/footstep.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/footstep.dm + +

+ + +
/datum/component/footstepFootstep component. Plays footsteps at parents location when it is appropriate.
+ + + diff --git a/code/datums/components/label.html b/code/datums/components/label.html new file mode 100644 index 000000000000..0a58411cab98 --- /dev/null +++ b/code/datums/components/label.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/label.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/label.dm + +

+ + +
/datum/component/labelThe label component.
+ + + diff --git a/code/datums/components/overlay_lighting.html b/code/datums/components/overlay_lighting.html new file mode 100644 index 000000000000..f3a57235f91c --- /dev/null +++ b/code/datums/components/overlay_lighting.html @@ -0,0 +1,38 @@ + + + + + + + code/datums/components/overlay_lighting.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/datums/components/overlay_lighting.dm + +

+ + + + +
LIGHTING_ONFor switchable lights, is it on and currently emitting light?
LIGHTING_ATTACHEDIs the parent attached to something else, its loc? Then we need to keep an eye of this.
/datum/component/overlay_lightingMovable atom overlay-based lighting component.

Define Details

+

LIGHTING_ATTACHED + + +

+

Is the parent attached to something else, its loc? Then we need to keep an eye of this.

LIGHTING_ON + + +

+

For switchable lights, is it on and currently emitting light?

+ + + diff --git a/code/datums/components/rename.html b/code/datums/components/rename.html new file mode 100644 index 000000000000..32ac34a188c1 --- /dev/null +++ b/code/datums/components/rename.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/rename.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/rename.dm + +

+ + +
/datum/component/renameThe rename component.
+ + + diff --git a/code/datums/components/weed_food.html b/code/datums/components/weed_food.html new file mode 100644 index 000000000000..db680adb9927 --- /dev/null +++ b/code/datums/components/weed_food.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/components/weed_food.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/weed_food.dm + +

+ + +
/datum/component/weed_foodA component that can be attached to a mob/living to be merged with weeds after a delay. +Attempting to attach a new weed_food even if one already exists is equivalent to calling start().
+ + + diff --git a/code/datums/datum.html b/code/datums/datum.html new file mode 100644 index 000000000000..201b0fdd29e1 --- /dev/null +++ b/code/datums/datum.html @@ -0,0 +1,31 @@ + + + + + + + code/datums/datum.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/datum.dm + +

+ + + + + + +
/datumThe absolute base class for everything
/proc/end_cooldownCallback called by a timer to end an associative-list-indexed cooldown.
/proc/reset_cooldownProc used by stoppable timers to end a cooldown before the time has ran out.
+ + + diff --git a/code/datums/decorators/gamemode_decorator.html b/code/datums/decorators/gamemode_decorator.html new file mode 100644 index 000000000000..3552d00da92f --- /dev/null +++ b/code/datums/decorators/gamemode_decorator.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/decorators/gamemode_decorator.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/decorators/gamemode_decorator.dm + +

+ + +
/datum/decorator/gamemodeGamemode decorators allow us to make changes to edits on specific gamemodes, +to assist in balancing varied gameplay in different modes
+ + + diff --git a/code/datums/elements/_element.html b/code/datums/elements/_element.html new file mode 100644 index 000000000000..d4275c246eab --- /dev/null +++ b/code/datums/elements/_element.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/elements/_element.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/elements/_element.dm + +

+ + +
/datum/elementA holder for simple behaviour that can be attached to many different types
+ + + diff --git a/code/datums/elements/bullet_trait/bullet_trait.html b/code/datums/elements/bullet_trait/bullet_trait.html new file mode 100644 index 000000000000..10faf74635ae --- /dev/null +++ b/code/datums/elements/bullet_trait/bullet_trait.html @@ -0,0 +1,46 @@ + + + + + + + code/datums/elements/bullet_trait/bullet_trait.md - byond + + +
+ byond - + Modules - + Types +
+
+

A PROTOTYPE FOR MAKING ANY BULLET TRAITS + +

+ + +

Element representing traits that can be applied to bullets upon being fired

+
    +
  • Must be attached to a projectile (/obj/projectile in projectile.dm)
  • +
  • Allows for the customization of bullet behavior based on ammo types or guns (or other things)
  • +
+

By convention, bullet_traits should be named bullet_trait_[insert rest of name here]

+
/datum/element/bullet_trait
+	// General bullet trait vars
+	// ALWAYS INCLUDE THESE TWO LINES IN THE BULLET TRAIT DEF
+	element_flags = ELEMENT_DETACH|ELEMENT_BESPOKE
+	id_arg_index = 2
+
+/datum/element/bullet_trait/databaseAttach(datum/target)
+	. = ..()
+	// All bullet traits can only be applied to projectiles
+	if(!istype(target, /obj/projectile))
+		return ELEMENT_INCOMPATIBLE
+
+	[handling here]
+
+ + + diff --git a/code/datums/elements/light_blocking.html b/code/datums/elements/light_blocking.html new file mode 100644 index 000000000000..6e91c55f1a00 --- /dev/null +++ b/code/datums/elements/light_blocking.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/elements/light_blocking.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/elements/light_blocking.dm + +

+ + +
/datum/element/light_blockingAttached to movable atoms with opacity. Listens to them move and updates their old and new turf loc's opacity accordingly.
+ + + diff --git a/code/datums/elements/strippable.html b/code/datums/elements/strippable.html new file mode 100644 index 000000000000..7fe429e505fe --- /dev/null +++ b/code/datums/elements/strippable.html @@ -0,0 +1,32 @@ + + + + + + + code/datums/elements/strippable.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/elements/strippable.dm + +

+ + + + + + + +
/datum/element/strippableAn element for atoms that, when dragged and dropped onto a mob, opens a strip panel.
/datum/strippable_itemA representation of an item that can be stripped down
/datum/strippable_item/mob_item_slotA preset for equipping items onto mob slots
/datum/strip_menuA representation of the stripping UI
/proc/create_strippable_listCreates an assoc list of keys to /datum/strippable_item
+ + + diff --git a/code/datums/elements/suturing.html b/code/datums/elements/suturing.html new file mode 100644 index 000000000000..2332ba2d0a07 --- /dev/null +++ b/code/datums/elements/suturing.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/elements/suturing.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/elements/suturing.dm + +

+ + +
/datum/suture_handlerHandles sutures for this limb. Doesn't process, updates on limb damage and new suture attempts.
+ + + diff --git a/code/datums/emotes.html b/code/datums/emotes.html new file mode 100644 index 000000000000..c681227c7d9f --- /dev/null +++ b/code/datums/emotes.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/emotes.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/emotes.dm + +

+ + +
/datum/emoteMost of the text that's not someone talking is based off of this.
+ + + diff --git a/code/datums/entities/player_note.html b/code/datums/entities/player_note.html new file mode 100644 index 000000000000..a742046f7ea6 --- /dev/null +++ b/code/datums/entities/player_note.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/entities/player_note.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/entities/player_note.dm + +

+ + + +
/proc/get_all_notesReturns all notes associated with a CKEY, structured as a list of strings.
+ + + diff --git a/code/datums/entities/player_times.html b/code/datums/entities/player_times.html new file mode 100644 index 000000000000..297729865a69 --- /dev/null +++ b/code/datums/entities/player_times.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/entities/player_times.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/entities/player_times.dm + +

+ + + +
/proc/get_total_living_playtimeReturns the total time in minutes a specific player ID has played for
+ + + diff --git a/code/datums/helper_datums/stack_end_detector.html b/code/datums/helper_datums/stack_end_detector.html new file mode 100644 index 000000000000..48e5a3ceee10 --- /dev/null +++ b/code/datums/helper_datums/stack_end_detector.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/helper_datums/stack_end_detector.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/helper_datums/stack_end_detector.dm + +

+ + + +
/datum/stack_end_detectorStack End Detector. +Can detect if a given code stack has exited, used by the mc for stack overflow detection.
/datum/stack_canaryStack canary. Will go away if the stack it was primed by is ended by byond for return or stack overflow reasons.
+ + + diff --git a/code/datums/lazy_template.html b/code/datums/lazy_template.html new file mode 100644 index 000000000000..fd477f08c274 --- /dev/null +++ b/code/datums/lazy_template.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/lazy_template.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/lazy_template.dm + +

+ + +
/datum/lazy_templateDatum used to designate certain areas that do not need to exist nor be loaded at world start +but do want to be loaded under certain circumstances. Use this for stuff like the nukie base or wizden, aka stuff that only matters when their antag is rolled.
+ + + diff --git a/code/datums/looping_sounds/_looping_sound.html b/code/datums/looping_sounds/_looping_sound.html new file mode 100644 index 000000000000..74d28ca0d3eb --- /dev/null +++ b/code/datums/looping_sounds/_looping_sound.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/looping_sounds/_looping_sound.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/looping_sounds/_looping_sound.dm + +

+ + +
/datum/looping_soundA datum for sounds that need to loop, with a high amount of configurability.
+ + + diff --git a/code/datums/movement_detector.html b/code/datums/movement_detector.html new file mode 100644 index 000000000000..853f867242b7 --- /dev/null +++ b/code/datums/movement_detector.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/movement_detector.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/movement_detector.dm + +

+ + +
/datum/movement_detectorA datum to handle the busywork of registering signals to handle in depth tracking of a movable
+ + + diff --git a/code/datums/mutable_appearance.html b/code/datums/mutable_appearance.html new file mode 100644 index 000000000000..0fe0acf20c66 --- /dev/null +++ b/code/datums/mutable_appearance.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/mutable_appearance.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/mutable_appearance.dm + +

+ + + +
/proc/mutable_appearanceHelper similar to image()
+ + + diff --git a/code/datums/quadtree.html b/code/datums/quadtree.html new file mode 100644 index 000000000000..4c6d7b35b42b --- /dev/null +++ b/code/datums/quadtree.html @@ -0,0 +1,31 @@ + + + + + + + code/datums/quadtree.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/quadtree.dm + +

+ + + + + + +
/datum/shapeA simple geometric shape for testing collisions and intersections. This one is a single point.
/datum/shape/rectangleA simple geometric shape for testing collisions and intersections. This one is an axis-aligned rectangle.
/datum/shape/rectangle/squareA simple geometric shape for testing collisions and intersections. This one is an axis-aligned square.
/datum/shape/ellipseA simple geometric shape for testing collisions and intersections. This one is an axis-aligned ellipse.
/datum/shape/ellipse/circleA simple geometric shape for testing collisions and intersections. This one is a circle.
+ + + diff --git a/code/datums/redis/callbacks/_redis_callback.html b/code/datums/redis/callbacks/_redis_callback.html new file mode 100644 index 000000000000..6360f0440878 --- /dev/null +++ b/code/datums/redis/callbacks/_redis_callback.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/redis/callbacks/_redis_callback.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/redis/callbacks/_redis_callback.dm + +

+ + +
/datum/redis_callbackThis datum is used for assigning callbacks that run +when a message is received on a specific channel. Subtypes of this +are automatically registered in SSredis initialization
+ + + diff --git a/code/datums/redis/redis_message.html b/code/datums/redis/redis_message.html new file mode 100644 index 000000000000..a93f47b4f31a --- /dev/null +++ b/code/datums/redis/redis_message.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/redis/redis_message.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/redis/redis_message.dm + +

+ + +
/datum/redis_messageUsed to hold redis messages created prior to the initialization of SSredis
+ + + diff --git a/code/datums/skills/skills.html b/code/datums/skills/skills.html new file mode 100644 index 000000000000..0337a7195922 --- /dev/null +++ b/code/datums/skills/skills.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/skills/skills.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/skills/skills.dm + +

+ + +
/datum/skillsSkill with an extra S at the end is a collection of multiple skills. Basically a skillSET +This is to organize and provide a common interface to the huge heap of skills there are
+ + + diff --git a/code/datums/statistics/entities/human_stats.html b/code/datums/statistics/entities/human_stats.html new file mode 100644 index 000000000000..862d830a5eaf --- /dev/null +++ b/code/datums/statistics/entities/human_stats.html @@ -0,0 +1,30 @@ + + + + + + + code/datums/statistics/entities/human_stats.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/statistics/entities/human_stats.dm + +

+ + + +
/datum/entity/player_stats/humanindexed list of types /datum/entity/weapon_stats +indexed list of types /datum/entity/job_stats +reference to /datum/entity/weapon_stats (like tac-shotty)

list of all medals earned

+ + + diff --git a/code/datums/statistics/entities/player_entity.html b/code/datums/statistics/entities/player_entity.html new file mode 100644 index 000000000000..713973ef3724 --- /dev/null +++ b/code/datums/statistics/entities/player_entity.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/statistics/entities/player_entity.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/statistics/entities/player_entity.dm + +

+ + +
/datum/entity/player_entityIndeed list of /datum/entity/player_stats +Indexed list of /datum/entity/statistic/death
+ + + diff --git a/code/datums/statistics/entities/weapon_stats.html b/code/datums/statistics/entities/weapon_stats.html new file mode 100644 index 000000000000..be3a731220fc --- /dev/null +++ b/code/datums/statistics/entities/weapon_stats.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/statistics/entities/weapon_stats.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/statistics/entities/weapon_stats.dm + +

+ + +
/datum/entity/weapon_statsIndexed list of /datum/entity/statistic, "Total Reloads" = number +Indexed list of /datum/entity/statistic, "jobname2" = number +Indexed list of /datum/entity/statistic, "caste" = number
+ + + diff --git a/code/datums/status_effects/_status_effect.html b/code/datums/status_effects/_status_effect.html new file mode 100644 index 000000000000..f47bd9c4a238 --- /dev/null +++ b/code/datums/status_effects/_status_effect.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/status_effects/_status_effect.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/status_effects/_status_effect.dm + +

+ + + +
/datum/status_effectStatus effects are used to apply temporary or permanent effects to mobs. +This file contains their code, plus code for applying and removing them.
/atom/movable/screen/alert/status_effectAlert base type for status effect alerts
+ + + diff --git a/code/datums/status_effects/debuffs/debuffs.html b/code/datums/status_effects/debuffs/debuffs.html new file mode 100644 index 000000000000..58d75a47404e --- /dev/null +++ b/code/datums/status_effects/debuffs/debuffs.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/status_effects/debuffs/debuffs.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/status_effects/debuffs/debuffs.dm + +

+ + +
/datum/status_effect/incapacitating/dazedDAZED: +This prevents talking as human or using abilities as Xenos, mainly
+ + + diff --git a/code/datums/status_effects/grouped_effect.html b/code/datums/status_effects/grouped_effect.html new file mode 100644 index 000000000000..86874092f820 --- /dev/null +++ b/code/datums/status_effects/grouped_effect.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/status_effects/grouped_effect.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/status_effects/grouped_effect.dm + +

+ + +
/datum/status_effect/groupedStatus effect from multiple sources, when all sources are removed, so is the effect
+ + + diff --git a/code/datums/status_effects/limited_effect.html b/code/datums/status_effects/limited_effect.html new file mode 100644 index 000000000000..6178aeff5254 --- /dev/null +++ b/code/datums/status_effects/limited_effect.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/status_effects/limited_effect.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/status_effects/limited_effect.dm + +

+ + +
/datum/status_effect/limited_buffThese effects reapply their on_apply() effect when refreshed while stacks < max_stacks.
+ + + diff --git a/code/datums/status_effects/stacking_effect.html b/code/datums/status_effects/stacking_effect.html new file mode 100644 index 000000000000..eac3679ba26d --- /dev/null +++ b/code/datums/status_effects/stacking_effect.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/status_effects/stacking_effect.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/status_effects/stacking_effect.dm + +

+ + +
/datum/status_effect/stackingStatus effects that can stack.
+ + + diff --git a/code/datums/tutorial/_tutorial.html b/code/datums/tutorial/_tutorial.html new file mode 100644 index 000000000000..13ef15688847 --- /dev/null +++ b/code/datums/tutorial/_tutorial.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/tutorial/_tutorial.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/tutorial/_tutorial.dm + +

+ + +
/datum/tutorialA tutorial datum contains a set of instructions for a player tutorial, such as what to spawn, what's scripted to occur, and so on.
+ + + diff --git a/code/datums/tutorial/creating_a_tutorial.html b/code/datums/tutorial/creating_a_tutorial.html new file mode 100644 index 000000000000..9be0bd9d462d --- /dev/null +++ b/code/datums/tutorial/creating_a_tutorial.html @@ -0,0 +1,199 @@ + + + + + + + code/datums/tutorial/creating_a_tutorial.md - byond + + +
+ byond - + Modules - + Types +
+
+

Tutorial Creation + +

+ + +
Step 1: Identifying the Goal +

Your first objective when making a tutorial should be to have a clear and concise vision of what you want the tutorial to convey to the user. People absorb information better in smaller chunks, so you should ideally keep a tutorial to one section of information at a time.

+

For example, if you are making a tutorial for new CM players, it should be split into multiple parts like:

+
    +
  • Basics
  • +
  • Medical
  • +
  • Weaponry
  • +
  • Requisitions/Communication
  • +
+Step 2: Coding +

For an example of the current code standards for tutorials, see this file.

+

The API for tutorials is designed to be very simple, so I'll go over all the base /datum/tutorial procs and some vars here:

+Variables +
    +
  • name<string> +
      +
    • This is the player-facing name of the tutorial.
    • +
    +
  • +
  • tutorial_id<string> +
      +
    • This is the back-end ID of the tutorial, used for save files. Try not to change a tutorial's ID after it's on the live server.
    • +
    +
  • +
  • category<string> +
      +
    • This is what category the tutorial should be under. Use the TUTORIAL_CATEGORY_XXXX macros.
    • +
    +
  • +
  • tutorial_template</datum/map_template/tutorial> +
      +
    • This is what type the map template of the tutorial should be. The default space is 12x12; ideally make it so it fits the given scale of the tutorial with some wiggle room for the player to move around.
    • +
    +
  • +
  • parent_path<path> +
      +
    • This is the top-most parent /datum/tutorial path, used to exclude abstract parents from the tutorial menu. For example, /datum/tutorial/marine/basic would have a parent_path of /datum/tutorial/marine, since that path is the top-most abstract path.
    • +
    +
  • +
  • completion_marked<bool> +
      +
    • If this is TRUE, the tutorial will be marked as completed if ended in any way. You can modify this with mark_completed() but is not necessary if end_tutorial(TRUE) is called.
    • +
    +
  • +
+Procs +
    +
  • start_tutorial(mob/starting_mob) +
      +
    • This proc starts the tutorial, setting up the map template and player. This should be overridden with a parent call before any overridden code.
    • +
    +
  • +
  • end_tutorial(completed = FALSE) +
      +
    • This proc ends the tutorial, sending the player back to the lobby and deleting the tutorial itself. A parent call on any subtypes should be at the end of the overridden segment. If completed is TRUE, then the tutorial will save as a completed one for the user. If mark_completed() was called previously, the tutorial will count as completed regardless of if this is called with an argument of TRUE or FALSE.
    • +
    +
  • +
  • add_highlight(atom/target, color = "#d19a02") +
      +
    • This proc adds a highlight filter around an atom, by default this color. Successive calls of highlight on the same atom will override the last.
    • +
    +
  • +
  • remove_highlight(atom/target) +
      +
    • This proc removes the tutorial highlight from a target.
    • +
    +
  • +
  • add_to_tracking_atoms(atom/reference) +
      +
    • This proc will add a reference to the tutorial's tracked atom dictionary. For what a tracked atom is, see Step 2.1.
    • +
    +
  • +
  • remove_from_tracking_atoms(atom/reference) +
      +
    • This proc will remove a reference from the tutorial's tracked atom dictionary. For what a tracked atom is, see Step 2.1.
    • +
    +
  • +
  • message_to_player(message) +
      +
    • This proc is the ideal way to communicate to a player. It is visually similar to overwatch messages or weather alerts, but appears and disappears much faster. The messages sent should be consise, but can have a degree of dialogue to them.
    • +
    +
  • +
  • update_objective(message) +
      +
    • This proc is used to update the player's objective in their status panel. This should be only what is required and how to do it without any dialogue or extra text.
    • +
    +
  • +
  • init_mob() +
      +
    • This proc is used to initialize the mob and set them up correctly.
    • +
    +
  • +
  • init_map() +
      +
    • This proc does nothing by default, but can be overriden to spawn any atoms necessary for the tutorial from the very start.
    • +
    +
  • +
  • tutorial_end_in(time = 5 SECONDS, completed = TRUE) +
      +
    • This proc will end the tutorial in the given time, defaulting to 5 seconds. Once the proc is called, the player will be booted back to the menu screen after the time is up. Will mark the tutorial as completed if completed is TRUE
    • +
    +
  • +
  • loc_from_corner(offset_x = 0, offset_y = 0) +
      +
    • This proc will return a turf offset from the bottom left corner of the tutorial zone. Keep in mind, the bottom left corner is NOT on a wall, it is on the first floor on the bottom left corner. offset_x and offset_y are used to offset what turf you want to get, and should never be negative.
    • +
    +
  • +
  • on_ghost(datum/source, mob/dead/observer/ghost) +
      +
    • This proc is used to properly end and clean up the tutorial should a player ghost out. You shouldn't need to override or modify this when making a tutorial.
    • +
    +
  • +
  • signal_end_tutorial(datum/source) +
      +
    • This proc is used to call end_tutorial() via signals. If something (e.g. a player dying) should send a signal that ends the tutorial, have the signal call this proc.
    • +
    +
  • +
  • on_logout(datum/source) +
      +
    • This proc is called when a player logs out, disconnecting their client from the server. As with on_ghost() and similar procs, it cleans up and ends the tutorial.
    • +
    +
  • +
  • generate_binds() +
      +
    • This proc generates a dictionary of the player's keybinds, in the form of {"action_name" : "key_to_press"}. This is used for the retrieve_bind() proc to be able to tell the user what buttons to press.
    • +
    +
  • +
  • retrieve_bind(action_name) +
      +
    • This proc will be one you'll get a fair amount of use from. Whenever you tell the user to do something like "drop an item", you should tell them what button to press by calling retrieve_bind("drop_item") in the string telling them to drop an item.
    • +
    +
  • +
  • mark_completed() +
      +
    • This proc can be used as an alternative to calling end_tutorial(TRUE). Calling this proc means any method of exiting the tutorial (ghosting, dying, pressing the exit button) will mark the tutorial as completed.
    • +
    +
  • +
+Step 2.1: Tracking Atoms +

Naturally, you will need to keep track of certain objects or mobs for signal purposes, so the tracking system exists to fill that purpose. When you add a reference to the tracking atom list with add_to_tracking_atoms(), it gets put into a dictionary of {path : reference}. Because of this limitation, you should not track more than 1 object of the same type. To get a tracked atom, use of the TUTORIAL_ATOM_FROM_TRACKING(path, varname) macro is recommended. path should be replaced with the precise typepath of the tracked atom, and varname should be replaced with the variable name you wish to use. If an object is going to be deleted, remove it with remove_from_tracking_atoms() first.

+Step 2.2: Scripting Format +

Any proc whose main purpose is to advance the tutorial will be hereon referred to as a "script proc", as part of the entire "script". In the vast majority of cases, a script proc should hand off to the next using signals. Here is an example from basic_marine.dm:

+
/datum/tutorial/marine/basic/proc/on_cryopod_exit()
+	SIGNAL_HANDLER
+
+	UnregisterSignal(tracking_atoms[/obj/structure/machinery/cryopod/tutorial], COMSIG_CRYOPOD_GO_OUT)
+	message_to_player("Good. You may notice the yellow \"food\" icon on the right side of your screen. Proceed to the outlined <b>Food Vendor</b> and vend the <b>USCM Protein Bar</b>.")
+	update_objective("Vend a <b>USCM Protein Bar</b> from the outlined <b>ColMarTech Food Vendor</b>.")
+	TUTORIAL_ATOM_FROM_TRACKING(/obj/structure/machinery/cm_vending/sorted/marine_food/tutorial, food_vendor)
+	add_highlight(food_vendor)
+	food_vendor.req_access = list()
+	RegisterSignal(food_vendor, COMSIG_VENDOR_SUCCESSFUL_VEND, PROC_REF(on_food_vend))
+
+
+

Line-by-line:

+
    +
  • SIGNAL_HANDLER is necessary as this proc was called via signal.
  • +
  • Here we are unregistering the signal we registered in the previous proc to call this one, which inthis case was waiting for the player to leave the tracked cryopod.
  • +
  • Now, we tell the user the next step in the script, which is sent to their screen.
  • +
  • Here we update the player's status panel with similar info to the above line, but far morecondensed.
  • +
  • Since we need to access the food vendor, we use the TUTORIAL_ATOM_FROM_TRACKING() macro to get aref to it.
  • +
  • We add a yellow outline to the food vendor to make it more clear what is wanted of the player
  • +
  • The tutorial food vendors are locked to ACCESS_TUTORIAL_LOCKED by default, so here we remove thataccess requirement
  • +
  • And finally, we register a signal for the next script proc, waiting for the user to vend something from the food vendor.
  • +
+Step 2.3: Quirks & Tips +
    +
  • Generally speaking, you will want to create /tutorial subtypes of anything you add in the tutorial, should it need any special functions or similar.
  • +
  • Restrict access from players as much as possible. As seen in the example above, restricting access to vendors and similar machines is recommended to prevent sequence breaking. Additionally, avoid adding anything that detracts from the tutorial itself.
  • +
  • Attempt to avoid softlocks when possible. If someone could reasonably do something (e.g. firing every bullet they have at a ranged target and missing, now unable to kill them and progress) that could softlock them, then there should be a fallback of some sort. However, accomodations don't need to be made for people who purposefully cause a softlock; there's a "stop tutorial" button for a reason.
  • +
  • When calling message_to_player() or update_objective(), bold the names of objects, items, and keybinds.
  • +
  • Attempt to bind as many scripting signals to the tutorial_mob as possible. The nature of SS13 means something as sequence-heavy as this will always be fragile, so keeping the fragility we can affect to a minimum is imperative.
  • +
+ + + diff --git a/code/datums/tutorial/marine/reqs_line.html b/code/datums/tutorial/marine/reqs_line.html new file mode 100644 index 000000000000..d5ad6a8005dc --- /dev/null +++ b/code/datums/tutorial/marine/reqs_line.html @@ -0,0 +1,58 @@ + + + + + + + code/datums/tutorial/marine/reqs_line.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/datums/tutorial/marine/reqs_line.dm + +

+ + + + + + + + +
TUTORIAL_REQS_LINE_STAGE_STARTINGReqs Tutorial Stage 0: Get in position
TUTORIAL_REQS_LINE_STAGE_ATTACHIESReqs Tutorial Stage 1: Give me some attachies
TUTORIAL_REQS_LINE_STAGE_GEARBOXReqs Tutorial Stage 2: I would like an HPR
TUTORIAL_REQS_LINE_STAGE_MIXEDReqs Tutorial Stage 3: Multiple items. Also toss something over..
TUTORIAL_REQS_LINE_STAGE_SURVIVALReqs Tutorial Stage 4: SURVIVAL MODE, random requests in a loop
TUTORIAL_REQS_LINE_SURVIVAL_DIFFICULTYHow fast to increase difficulty in survival mode (amount of items/agents)
/datum/tutorial/marine/reqs_lineSimulates the Requisitions Line experience for newcomers

Define Details

+

TUTORIAL_REQS_LINE_STAGE_ATTACHIES + + +

+

Reqs Tutorial Stage 1: Give me some attachies

TUTORIAL_REQS_LINE_STAGE_GEARBOX + + +

+

Reqs Tutorial Stage 2: I would like an HPR

TUTORIAL_REQS_LINE_STAGE_MIXED + + +

+

Reqs Tutorial Stage 3: Multiple items. Also toss something over..

TUTORIAL_REQS_LINE_STAGE_STARTING + + +

+

Reqs Tutorial Stage 0: Get in position

TUTORIAL_REQS_LINE_STAGE_SURVIVAL + + +

+

Reqs Tutorial Stage 4: SURVIVAL MODE, random requests in a loop

TUTORIAL_REQS_LINE_SURVIVAL_DIFFICULTY + + +

+

How fast to increase difficulty in survival mode (amount of items/agents)

+ + + diff --git a/code/datums/weather/weather_map_holders/sorokyne.html b/code/datums/weather/weather_map_holders/sorokyne.html new file mode 100644 index 000000000000..341f306c6deb --- /dev/null +++ b/code/datums/weather/weather_map_holders/sorokyne.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/weather/weather_map_holders/sorokyne.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/weather/weather_map_holders/sorokyne.dm + +

+ + +
/datum/weather_ss_map_holder/sorokyneSorokyne's map holder
+ + + diff --git a/code/game/area/areas.html b/code/game/area/areas.html new file mode 100644 index 000000000000..c2b0b5e45257 --- /dev/null +++ b/code/game/area/areas.html @@ -0,0 +1,32 @@ + + + + + + + code/game/area/areas.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/game/area/areas.dm + +

+ + +
AREA_MUTEDdefine used to mute an area base_muffle = AREA_MUTED

Define Details

+

AREA_MUTED + + +

+

define used to mute an area base_muffle = AREA_MUTED

+ + + diff --git a/code/game/area/strata.html b/code/game/area/strata.html new file mode 100644 index 000000000000..8b08d126e21d --- /dev/null +++ b/code/game/area/strata.html @@ -0,0 +1,40 @@ + + + + + + + code/game/area/strata.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/area/strata.dm + +

+ + + + + + + + + + + + + + +
/area/strata/ag/exterior/research_decksResearch Station
/area/strata/ag/exterior/paths/southresearchclose to research
/area/strata/ag/interior/tcommsTelecomms
/area/strata/ug/interior/jungle/END OUTPOST DEFINES/ +DEEP JUNGLE
/area/strata/ag/interior/engi_shedEngineering Terminals / Sheds, whatever. Map Power
/area/strata/ag/interior/outpostOUTPOST INTERIOR
/area/strata/ag/interior/outpost/maintALL MAINTENANCE AREAS
/area/strata/ag/interior/outpost/medOUTPOST MEDICAL
/area/strata/ag/interior/outpost/engiOUTPOST ENGINEERING
/area/strata/ag/interior/outpost/securityOUTPOST SECURITY
/area/strata/ag/interior/outpost/adminOUTPOST ADMINISTRATION
/area/strata/ag/interior/outpost/canteenCANTEEN / GENERAL QUARTERS
/area/strata/ug/interior/outpost/jungJUNGLE STRUCTURES - UNDERGROUND
+ + + diff --git a/code/game/jobs/job/antag/antag.html b/code/game/jobs/job/antag/antag.html new file mode 100644 index 000000000000..90858f6de04c --- /dev/null +++ b/code/game/jobs/job/antag/antag.html @@ -0,0 +1,28 @@ + + + + + + + code/game/jobs/job/antag/antag.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/jobs/job/antag/antag.dm + +

+ + + +
/datum/timelock/dronecounts drone caste evo time as well
/datum/timelock/tier3t3 and queen time
+ + + diff --git a/code/game/jobs/whitelist.html b/code/game/jobs/whitelist.html new file mode 100644 index 000000000000..3cca40567535 --- /dev/null +++ b/code/game/jobs/whitelist.html @@ -0,0 +1,28 @@ + + + + + + + code/game/jobs/whitelist.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/jobs/whitelist.dm + +

+ + + +
/proc/get_whitelisted_rolesreturns a list of strings containing the whitelists held by a specific ckey
+ + + diff --git a/code/game/machinery/ARES/ARES.html b/code/game/machinery/ARES/ARES.html new file mode 100644 index 000000000000..1e02f4cc2148 --- /dev/null +++ b/code/game/machinery/ARES/ARES.html @@ -0,0 +1,29 @@ + + + + + + + code/game/machinery/ARES/ARES.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/machinery/ARES/ARES.dm + +

+ + + + +
/obj/structure/machinery/aresset ticket back to pending
/obj/structure/machinery/ares/cpuCentral Core
/obj/structure/machinery/ares/substrateMemory Substrate,
+ + + diff --git a/code/game/machinery/ARES/ARES_interface_apollo.html b/code/game/machinery/ARES/ARES_interface_apollo.html new file mode 100644 index 000000000000..22e18ecb7c8c --- /dev/null +++ b/code/game/machinery/ARES/ARES_interface_apollo.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/ARES/ARES_interface_apollo.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/machinery/ARES/ARES_interface_apollo.dm + +

+ + +
/obj/structure/machinery/computer/working_joeset ticket back to pending
+ + + diff --git a/code/game/machinery/ARES/ARES_step_triggers.html b/code/game/machinery/ARES/ARES_step_triggers.html new file mode 100644 index 000000000000..03c9e8ead44f --- /dev/null +++ b/code/game/machinery/ARES/ARES_step_triggers.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/ARES/ARES_step_triggers.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/machinery/ARES/ARES_step_triggers.dm + +

+ + +
/obj/effect/step_trigger/ares_alert/access_controlTrigger will remove ACCESS_MARINE_AI_TEMP unless ACCESS_MARINE_AI is also present.
+ + + diff --git a/code/game/machinery/doors/multi_tile.html b/code/game/machinery/doors/multi_tile.html new file mode 100644 index 000000000000..4bc3a03bff44 --- /dev/null +++ b/code/game/machinery/doors/multi_tile.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/doors/multi_tile.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/machinery/doors/multi_tile.dm + +

+ + +
/obj/structure/machinery/door/airlock/multi_tile/almayer/dropshiprear/lifeboat/blastdoorExternal airlock that is part of the lifeboat dock
+ + + diff --git a/code/game/machinery/fax_machine.html b/code/game/machinery/fax_machine.html new file mode 100644 index 000000000000..560e4ef3b4fa --- /dev/null +++ b/code/game/machinery/fax_machine.html @@ -0,0 +1,28 @@ + + + + + + + code/game/machinery/fax_machine.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/machinery/fax_machine.dm + +

+ + + +
/obj/structure/machinery/faxmachine/backpackThe deployed fax machine backpack
/obj/item/device/fax_backpackThe wearable and deployable part of the fax machine backpack
+ + + diff --git a/code/game/machinery/kitchen/smartfridge.html b/code/game/machinery/kitchen/smartfridge.html new file mode 100644 index 000000000000..2fdbb50e88b3 --- /dev/null +++ b/code/game/machinery/kitchen/smartfridge.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/kitchen/smartfridge.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/machinery/kitchen/smartfridge.dm + +

+ + +
/obj/structure/machinery/smartfridgeAssoc list of names -> list(items)
+ + + diff --git a/code/game/machinery/pipe/construction.html b/code/game/machinery/pipe/construction.html new file mode 100644 index 000000000000..d924d5da5653 --- /dev/null +++ b/code/game/machinery/pipe/construction.html @@ -0,0 +1,32 @@ + + + + + + + code/game/machinery/pipe/construction.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/game/machinery/pipe/construction.dm + +

+ + +
PIPE_UNIVERSALSupply, scrubbers and universal pipes

Define Details

+

PIPE_UNIVERSAL + + +

+

Supply, scrubbers and universal pipes

+ + + diff --git a/code/game/machinery/pipe/pipe_dispenser.html b/code/game/machinery/pipe/pipe_dispenser.html new file mode 100644 index 000000000000..e41985ef6faf --- /dev/null +++ b/code/game/machinery/pipe/pipe_dispenser.html @@ -0,0 +1,28 @@ + + + + + + + code/game/machinery/pipe/pipe_dispenser.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/machinery/pipe/pipe_dispenser.dm + +

+ + +
/obj/structure/machinery/pipedispenser/orderableZ-Level stuff +Z-Level stuff
+ + + diff --git a/code/game/objects/effects/aliens.html b/code/game/objects/effects/aliens.html new file mode 100644 index 000000000000..728400a4c0f3 --- /dev/null +++ b/code/game/objects/effects/aliens.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/effects/aliens.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/aliens.dm + +

+ + + +
/obj/effect/xenomorph/xeno_telegraph/abduct_hookThis has a brown icon state and does not have a color overlay by default.
/obj/effect/xenomorph/xeno_telegraph/lashThis has a brown icon state and does not have a color overlay by default.
+ + + diff --git a/code/game/objects/effects/decals/cleanable/misc.html b/code/game/objects/effects/decals/cleanable/misc.html new file mode 100644 index 000000000000..d6931944993e --- /dev/null +++ b/code/game/objects/effects/decals/cleanable/misc.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/decals/cleanable/misc.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/decals/cleanable/misc.dm + +

+ + +
/obj/effect/decal/cleanable/cobweb2/dynamicVariant used for halloween - need to pass info in constructor as its turned in an overlay
+ + + diff --git a/code/game/objects/effects/decals/strata_decals.html b/code/game/objects/effects/decals/strata_decals.html new file mode 100644 index 000000000000..eb261c1cc4e2 --- /dev/null +++ b/code/game/objects/effects/decals/strata_decals.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/effects/decals/strata_decals.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/decals/strata_decals.dm + +

+ + + +
/obj/effect/decal/strata_decals/rocksOUTDOOR STUFF
/obj/effect/decal/strata_decals/grimeINDOORS STUFF
+ + + diff --git a/code/game/objects/effects/effect_system/effect_system.html b/code/game/objects/effects/effect_system/effect_system.html new file mode 100644 index 000000000000..1b1fb8cffce7 --- /dev/null +++ b/code/game/objects/effects/effect_system/effect_system.html @@ -0,0 +1,31 @@ + + + + + + + code/game/objects/effects/effect_system/effect_system.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/effect_system/effect_system.dm + +

+ + + +
/obj/effect/particle_effect/ion_trails///// Attach an Ion trail to any object, that spawns when it moves (like for the jetpack) +just pass in the object to attach it to in set_up +Then do start() to start it and stop() to stop it, obviously +and don't call start() in a loop that will be repeated otherwise it'll get spammed!
/datum/effect_system/steam_trail_followAttach a steam trail to an object (eg. a reacting beaker) that will follow it
+ + + diff --git a/code/game/objects/effects/effect_system/smoke.html b/code/game/objects/effects/effect_system/smoke.html new file mode 100644 index 000000000000..a763ff385486 --- /dev/null +++ b/code/game/objects/effects/effect_system/smoke.html @@ -0,0 +1,33 @@ + + + + + + + code/game/objects/effects/effect_system/smoke.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/game/objects/effects/effect_system/smoke.dm + +

+ + +
BOILER_GAS_CADE_BLOCK_CHANCE/ SMOKE SYSTEMS

Define Details

+

BOILER_GAS_CADE_BLOCK_CHANCE + + +

+

/ SMOKE SYSTEMS

+

Chance that cades block the gas. Smoke spread ticks are calculated very quickly so this has to be high to have a noticeable effect.

+ + + diff --git a/code/game/objects/effects/landmarks/corpsespawner.html b/code/game/objects/effects/landmarks/corpsespawner.html new file mode 100644 index 000000000000..4f92cc0bca5f --- /dev/null +++ b/code/game/objects/effects/landmarks/corpsespawner.html @@ -0,0 +1,31 @@ + + + + + + + code/game/objects/effects/landmarks/corpsespawner.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/landmarks/corpsespawner.dm + +

+ + + + + + +
/obj/effect/landmark/corpsespawnerLANDMARK CORPSE
/obj/effect/landmark/corpsespawner/prisonerCivilians
/obj/effect/landmark/corpsespawner/bridgeofficerOfficers
/obj/effect/landmark/corpsespawner/colonistCM specific jobs
/obj/effect/landmark/corpsespawner/clfFaction Specific Corpses
+ + + diff --git a/code/game/objects/effects/landmarks/landmarks.html b/code/game/objects/effects/landmarks/landmarks.html new file mode 100644 index 000000000000..689949397876 --- /dev/null +++ b/code/game/objects/effects/landmarks/landmarks.html @@ -0,0 +1,31 @@ + + + + + + + code/game/objects/effects/landmarks/landmarks.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/landmarks/landmarks.dm + +

+ + + + +
/obj/effect/landmark/unit_test_bottom_leftMarks the bottom left of the testing zone. +In landmarks.dm and not unit_test.dm so it is always active in the mapping tools.
/obj/effect/landmark/unit_test_top_rightMarks the top right of the testing zone. +In landmarks.dm and not unit_test.dm so it is always active in the mapping tools.
/obj/effect/landmark/tutorial_bottom_leftMarks the bottom left of the tutorial zone.
+ + + diff --git a/code/game/objects/effects/landmarks/structure_spawners/setup_distress.html b/code/game/objects/effects/landmarks/structure_spawners/setup_distress.html new file mode 100644 index 000000000000..7105fdf6c1f5 --- /dev/null +++ b/code/game/objects/effects/landmarks/structure_spawners/setup_distress.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/landmarks/structure_spawners/setup_distress.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/landmarks/structure_spawners/setup_distress.dm + +

+ + +
/obj/effect/landmark/structure_spawner/setup/distressDistress Signal Global Setup Structure spawners
+ + + diff --git a/code/game/objects/effects/landmarks/structure_spawners/structure_spawner.html b/code/game/objects/effects/landmarks/structure_spawners/structure_spawner.html new file mode 100644 index 000000000000..e713033c850d --- /dev/null +++ b/code/game/objects/effects/landmarks/structure_spawners/structure_spawner.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/effects/landmarks/structure_spawners/structure_spawner.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/landmarks/structure_spawners/structure_spawner.dm + +

+ + + +
/obj/effect/landmark/structure_spawnerStructure spawner, representing something that can be spawned by gameplay logic during round or at setup
/obj/effect/landmark/structure_spawner/setupSetup spawners will all be evaluated by game mode on start, and deleted after
+ + + diff --git a/code/game/objects/effects/landmarks/structure_spawners/xvx_hive.html b/code/game/objects/effects/landmarks/structure_spawners/xvx_hive.html new file mode 100644 index 000000000000..f35312ad7af6 --- /dev/null +++ b/code/game/objects/effects/landmarks/structure_spawners/xvx_hive.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/landmarks/structure_spawners/xvx_hive.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/landmarks/structure_spawners/xvx_hive.dm + +

+ + +
/obj/effect/landmark/structure_spawner/xvx_hiveXvX Hive Spawn Structures, spawning alongside a queen in the same area
+ + + diff --git a/code/game/objects/effects/projector.html b/code/game/objects/effects/projector.html new file mode 100644 index 000000000000..dd6dd89a44cd --- /dev/null +++ b/code/game/objects/effects/projector.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/projector.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/projector.dm + +

+ + +
/obj/effect/projectorYou will appear adjacent to the beacon
+ + + diff --git a/code/game/objects/effects/spawners/prop_gun_spawner.html b/code/game/objects/effects/spawners/prop_gun_spawner.html new file mode 100644 index 000000000000..f965861020f6 --- /dev/null +++ b/code/game/objects/effects/spawners/prop_gun_spawner.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/effects/spawners/prop_gun_spawner.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/spawners/prop_gun_spawner.dm + +

+ + +
/obj/item/prop/prop_gunThe source, which the skin will be copied from +The prop itself, which the skin will be copied to
+ + + diff --git a/code/game/objects/effects/spawners/random.html b/code/game/objects/effects/spawners/random.html new file mode 100644 index 000000000000..2a259379c724 --- /dev/null +++ b/code/game/objects/effects/spawners/random.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/spawners/random.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/spawners/random.dm + +

+ + +
/obj/effect/spawner/random/facepaintIf anyone wants to make custom sprites for this and the bala random spawner, be my guest.
+ + + diff --git a/code/game/objects/items/books/book.html b/code/game/objects/items/books/book.html new file mode 100644 index 000000000000..450534dc456c --- /dev/null +++ b/code/game/objects/items/books/book.html @@ -0,0 +1,29 @@ + + + + + + + code/game/objects/items/books/book.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/books/book.dm + +

+ + +
/obj/item/bookCheck if it has the possibility of being a FANCY present +Checks if it might be one of the ULTRA fancy presents. +Default, just in case
+ + + diff --git a/code/game/objects/items/devices/flashlight.html b/code/game/objects/items/devices/flashlight.html new file mode 100644 index 000000000000..f51a4b19125c --- /dev/null +++ b/code/game/objects/items/devices/flashlight.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/items/devices/flashlight.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/devices/flashlight.dm + +

+ + + +
/obj/item/device/flashlight/flare/on/gunFlares deployed by a flare gun
/obj/item/device/flashlight/flare/signal/gunSignal flares deployed by a flare gun
+ + + diff --git a/code/game/objects/items/devices/multitool.html b/code/game/objects/items/devices/multitool.html new file mode 100644 index 000000000000..b3dea249266b --- /dev/null +++ b/code/game/objects/items/devices/multitool.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/devices/multitool.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/devices/multitool.dm + +

+ + +
/obj/item/device/multitoolMultitool -- A multitool is used for hacking electronic devices.
+ + + diff --git a/code/game/objects/items/devices/personal_data_transmitter.html b/code/game/objects/items/devices/personal_data_transmitter.html new file mode 100644 index 000000000000..52684ba7526e --- /dev/null +++ b/code/game/objects/items/devices/personal_data_transmitter.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/devices/personal_data_transmitter.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/devices/personal_data_transmitter.dm + +

+ + +
/obj/item/storage/box/pdt_kit/advancedTHE ADVANCED VERSION... ADMIN SPAWN ONLY... USES TGUI RADAR...
+ + + diff --git a/code/game/objects/items/devices/radio/encryptionkey.html b/code/game/objects/items/devices/radio/encryptionkey.html new file mode 100644 index 000000000000..6fe984f2f936 --- /dev/null +++ b/code/game/objects/items/devices/radio/encryptionkey.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/items/devices/radio/encryptionkey.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/devices/radio/encryptionkey.dm + +

+ + + +
/obj/item/device/encryptionkey/WYFor CL and their Marine goons
/obj/item/device/encryptionkey/mortarUsed by the Mortar Crew in WO game mode - intently has no squad radio access
+ + + diff --git a/code/game/objects/items/explosives/grenades/marines.html b/code/game/objects/items/explosives/grenades/marines.html new file mode 100644 index 000000000000..45e774a2d0e6 --- /dev/null +++ b/code/game/objects/items/explosives/grenades/marines.html @@ -0,0 +1,30 @@ + + + + + + + code/game/objects/items/explosives/grenades/marines.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/explosives/grenades/marines.dm + +

+ + + +
/obj/item/explosive/grenade/sebb/primedDamage equation: damage - (mob distance * falloff_dam_reduction_mult) +Example: A marine is 3 tiles out, the distance (3) is multiplied by falloff_dam_reduction_mult to get falloff. +The raw damage is minused by falloff to get actual damage
/obj/item/explosive/grenade/batonBaton slugs
+ + + diff --git a/code/game/objects/items/explosives/mine.html b/code/game/objects/items/explosives/mine.html new file mode 100644 index 000000000000..cd424dfa3d61 --- /dev/null +++ b/code/game/objects/items/explosives/mine.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/explosives/mine.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/explosives/mine.dm + +

+ + +
/obj/item/explosive/mineMINES
+ + + diff --git a/code/game/objects/items/handheld_distress_beacon.html b/code/game/objects/items/handheld_distress_beacon.html new file mode 100644 index 000000000000..ad54a79690b7 --- /dev/null +++ b/code/game/objects/items/handheld_distress_beacon.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/items/handheld_distress_beacon.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/handheld_distress_beacon.dm + +

+ + + +
/obj/item/handheld_distress_beaconhandheld distress beacons used by goon chem retrieval team to call for PMC back up
/obj/item/handheld_distress_beacon/cmbCMB distress beacon held by CMB Marshal for signalling distress to Anchorpoint Station
+ + + diff --git a/code/game/objects/items/reagent_containers/dropper.html b/code/game/objects/items/reagent_containers/dropper.html new file mode 100644 index 000000000000..4de437c1d72a --- /dev/null +++ b/code/game/objects/items/reagent_containers/dropper.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/reagent_containers/dropper.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/reagent_containers/dropper.dm + +

+ + +
/obj/item/reagent_container/dropperDroppers.
+ + + diff --git a/code/game/objects/items/reagent_containers/food.html b/code/game/objects/items/reagent_containers/food.html new file mode 100644 index 000000000000..084163e64404 --- /dev/null +++ b/code/game/objects/items/reagent_containers/food.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/reagent_containers/food.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/reagent_containers/food.dm + +

+ + +
/obj/item/reagent_container/foodDroppers. END
+ + + diff --git a/code/game/objects/items/reagent_containers/food/condiment.html b/code/game/objects/items/reagent_containers/food/condiment.html new file mode 100644 index 000000000000..e820c4fb6c45 --- /dev/null +++ b/code/game/objects/items/reagent_containers/food/condiment.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/reagent_containers/food/condiment.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/reagent_containers/food/condiment.dm + +

+ + +
/obj/item/reagent_container/food/condimentCondiments
+ + + diff --git a/code/game/objects/items/reagent_containers/food/drinks.html b/code/game/objects/items/reagent_containers/food/drinks.html new file mode 100644 index 000000000000..0c2f5b547a01 --- /dev/null +++ b/code/game/objects/items/reagent_containers/food/drinks.html @@ -0,0 +1,30 @@ + + + + + + + code/game/objects/items/reagent_containers/food/drinks.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/reagent_containers/food/drinks.dm + +

+ + + + + +
/obj/item/reagent_container/food/drinksDrinks.
/obj/item/reagent_container/food/drinks/golden_cupDrinks. END
/obj/item/reagent_container/food/drinks/milkDrinks
/obj/item/reagent_container/food/drinks/shakerdrinkingglass and shaker
+ + + diff --git a/code/game/objects/items/reagent_containers/food/drinks/bottle.html b/code/game/objects/items/reagent_containers/food/drinks/bottle.html new file mode 100644 index 000000000000..796e95576d0b --- /dev/null +++ b/code/game/objects/items/reagent_containers/food/drinks/bottle.html @@ -0,0 +1,30 @@ + + + + + + + code/game/objects/items/reagent_containers/food/drinks/bottle.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/reagent_containers/food/drinks/bottle.dm + +

+ + + + + +
/obj/item/reagent_container/food/drinks/bottleAlchohol bottles and juice mixers! -Agouri
/obj/item/reagent_container/food/drinks/bottle/ginAlcohol bottles and their contents.
/obj/item/reagent_container/food/drinks/bottle/beer/craftBEERS
/obj/item/reagent_container/food/drinks/bottle/orangejuiceJUICES AND STUFF
+ + + diff --git a/code/game/objects/items/reagent_containers/food/drinks/jar.html b/code/game/objects/items/reagent_containers/food/drinks/jar.html new file mode 100644 index 000000000000..668834e8c1ca --- /dev/null +++ b/code/game/objects/items/reagent_containers/food/drinks/jar.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/reagent_containers/food/drinks/jar.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/reagent_containers/food/drinks/jar.dm + +

+ + +
/obj/item/reagent_container/food/drinks/jarjar
+ + + diff --git a/code/game/objects/items/reagent_containers/food/snacks.html b/code/game/objects/items/reagent_containers/food/snacks.html new file mode 100644 index 000000000000..f480905825c4 --- /dev/null +++ b/code/game/objects/items/reagent_containers/food/snacks.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/reagent_containers/food/snacks.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/reagent_containers/food/snacks.dm + +

+ + +
/obj/item/reagent_container/food/snacks/aesirsaladFOOD END
+ + + diff --git a/code/game/objects/items/reagent_containers/food/snacks/meat.html b/code/game/objects/items/reagent_containers/food/snacks/meat.html new file mode 100644 index 000000000000..64b06aa9cebc --- /dev/null +++ b/code/game/objects/items/reagent_containers/food/snacks/meat.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/reagent_containers/food/snacks/meat.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/reagent_containers/food/snacks/meat.dm + +

+ + +
/obj/item/reagent_container/food/snacks/meat/synthmeat/synthfleshMeat made from synthetics. Slightly toxic
+ + + diff --git a/code/game/objects/items/reagent_containers/glass.html b/code/game/objects/items/reagent_containers/glass.html new file mode 100644 index 000000000000..38111dcdf635 --- /dev/null +++ b/code/game/objects/items/reagent_containers/glass.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/reagent_containers/glass.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/reagent_containers/glass.dm + +

+ + +
/obj/item/reagent_container/glass(Mixing) Glass
+ + + diff --git a/code/game/objects/items/reagent_containers/hypospray.html b/code/game/objects/items/reagent_containers/hypospray.html new file mode 100644 index 000000000000..2d8d64353973 --- /dev/null +++ b/code/game/objects/items/reagent_containers/hypospray.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/reagent_containers/hypospray.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/reagent_containers/hypospray.dm + +

+ + +
/obj/item/reagent_container/hyposprayHYPOSPRAY
+ + + diff --git a/code/game/objects/items/reagent_containers/pill.html b/code/game/objects/items/reagent_containers/pill.html new file mode 100644 index 000000000000..d80e161b7c1f --- /dev/null +++ b/code/game/objects/items/reagent_containers/pill.html @@ -0,0 +1,29 @@ + + + + + + + code/game/objects/items/reagent_containers/pill.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/reagent_containers/pill.dm + +

+ + + + +
/proc/map_pill_iconsPills.
/obj/item/reagent_container/pill/antitoxPills. END
+ + + diff --git a/code/game/objects/items/reagent_containers/robot_parts.html b/code/game/objects/items/reagent_containers/robot_parts.html new file mode 100644 index 000000000000..8a6740c173f2 --- /dev/null +++ b/code/game/objects/items/reagent_containers/robot_parts.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/reagent_containers/robot_parts.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/reagent_containers/robot_parts.dm + +

+ + +
/obj/item/fake_robot_headA cameo of a real robotic head with limited gameplay functionality
+ + + diff --git a/code/game/objects/items/reagent_containers/syringes.html b/code/game/objects/items/reagent_containers/syringes.html new file mode 100644 index 000000000000..b7536b09d81c --- /dev/null +++ b/code/game/objects/items/reagent_containers/syringes.html @@ -0,0 +1,33 @@ + + + + + + + code/game/objects/items/reagent_containers/syringes.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/game/objects/items/reagent_containers/syringes.dm + +

+ + + +
SYRINGE_DRAWSyringes.
/obj/item/reagent_container/syringe/inaprovalineSyringes. END

Define Details

+

SYRINGE_DRAW + + +

+

Syringes.

+ + + diff --git a/code/game/objects/items/stacks/flags.html b/code/game/objects/items/stacks/flags.html new file mode 100644 index 000000000000..cbf58b913b4a --- /dev/null +++ b/code/game/objects/items/stacks/flags.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/stacks/flags.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/stacks/flags.dm + +

+ + +
/obj/structure/flag/plantablePLANTABLE FLAG
+ + + diff --git a/code/game/objects/items/stock_parts.html b/code/game/objects/items/stock_parts.html new file mode 100644 index 000000000000..b4e9cf68ef4d --- /dev/null +++ b/code/game/objects/items/stock_parts.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/stock_parts.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/stock_parts.dm + +

+ + +
/obj/item/stock_partsStock Parts
+ + + diff --git a/code/game/objects/items/storage/backpack.html b/code/game/objects/items/storage/backpack.html new file mode 100644 index 000000000000..0979584ae417 --- /dev/null +++ b/code/game/objects/items/storage/backpack.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/storage/backpack.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/storage/backpack.dm + +

+ + +
/obj/item/storage/backpack/general_beltG-8-a general pouch belt
+ + + diff --git a/code/game/objects/items/storage/belt.html b/code/game/objects/items/storage/belt.html new file mode 100644 index 000000000000..c9e95095c2e8 --- /dev/null +++ b/code/game/objects/items/storage/belt.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/items/storage/belt.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/storage/belt.dm + +

+ + + +
/obj/item/storage/belt/gunGUN BELTS
/obj/item/storage/belt/tankOTHER BELTS
+ + + diff --git a/code/game/objects/items/storage/boxes.html b/code/game/objects/items/storage/boxes.html new file mode 100644 index 000000000000..893740ce1df5 --- /dev/null +++ b/code/game/objects/items/storage/boxes.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/storage/boxes.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/storage/boxes.dm + +

+ + +
/obj/item/storage/box/explosive_minesMARINES BOXES
+ + + diff --git a/code/game/objects/items/storage/pouch.html b/code/game/objects/items/storage/pouch.html new file mode 100644 index 000000000000..6734b2843379 --- /dev/null +++ b/code/game/objects/items/storage/pouch.html @@ -0,0 +1,29 @@ + + + + + + + code/game/objects/items/storage/pouch.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/storage/pouch.dm + +

+ + + + +
/obj/item/storage/pouch/pistolPistol pouch.
/obj/item/storage/pouch/pistol/commandCO pouch. This pouch can hold only 1 of each type of item: 1 sidearm, 1 pair of binoculars, 1 CO tablet
/obj/item/storage/pouch/magazineMAGAZINE POUCHES
+ + + diff --git a/code/game/objects/items/storage/storage.html b/code/game/objects/items/storage/storage.html new file mode 100644 index 000000000000..77e627822a5e --- /dev/null +++ b/code/game/objects/items/storage/storage.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/storage/storage.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/storage/storage.dm + +

+ + +
/obj/item/storageThis contains what previously was known as stored_start, stored_continue, and stored_end
+ + + diff --git a/code/game/objects/items/trash.html b/code/game/objects/items/trash.html new file mode 100644 index 000000000000..7989d482a0ed --- /dev/null +++ b/code/game/objects/items/trash.html @@ -0,0 +1,31 @@ + + + + + + + code/game/objects/items/trash.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/trash.dm + +

+ + + + + + +
/obj/item/trashTrash Parent
/obj/item/trash/barcardineWrappers
/obj/item/trash/cigbuttCiagarette Butts
/obj/item/trash/plateDishes
/obj/item/trash/candleMisc
+ + + diff --git a/code/game/objects/items/weapons/twohanded.html b/code/game/objects/items/weapons/twohanded.html new file mode 100644 index 000000000000..9e4a870a771a --- /dev/null +++ b/code/game/objects/items/weapons/twohanded.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/weapons/twohanded.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/weapons/twohanded.dm + +

+ + +
/obj/item/weapon/twohanded/offhandOFFHAND
+ + + diff --git a/code/game/objects/prop.html b/code/game/objects/prop.html new file mode 100644 index 000000000000..f01b11dbdb7a --- /dev/null +++ b/code/game/objects/prop.html @@ -0,0 +1,29 @@ + + + + + + + code/game/objects/prop.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/prop.dm + +

+ + + +
/obj/item/prop/replacerA prop that acts as a replacement for another item, mimicking their looks. +Mainly used in Reqs Tutorial to provide the full item selections without side effects.
/obj/item/prop/alien/huggerXeno-specific props
+ + + diff --git a/code/game/objects/structures/kitchen_spike.html b/code/game/objects/structures/kitchen_spike.html new file mode 100644 index 000000000000..56e26006bc8f --- /dev/null +++ b/code/game/objects/structures/kitchen_spike.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/kitchen_spike.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/structures/kitchen_spike.dm + +

+ + +
/obj/structure/kitchenspikeKitchen Spike
+ + + diff --git a/code/game/objects/structures/pipes/vents/pump_scrubber.html b/code/game/objects/structures/pipes/vents/pump_scrubber.html new file mode 100644 index 000000000000..96dfb6bb87ba --- /dev/null +++ b/code/game/objects/structures/pipes/vents/pump_scrubber.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/pipes/vents/pump_scrubber.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/structures/pipes/vents/pump_scrubber.dm + +

+ + +
/obj/structure/pipes/vents/pump/no_boom/gasVents that are linked to ARES Security Protocols, allowing the ARES Interface to trigger security measures.
+ + + diff --git a/code/game/objects/structures/props.html b/code/game/objects/structures/props.html new file mode 100644 index 000000000000..06f35229667c --- /dev/null +++ b/code/game/objects/structures/props.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/props.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/structures/props.dm + +

+ + +
/obj/structure/prop/invuln/fireDecorative fire.
+ + + diff --git a/code/game/runtimes.html b/code/game/runtimes.html new file mode 100644 index 000000000000..0e5116a8ecd7 --- /dev/null +++ b/code/game/runtimes.html @@ -0,0 +1,29 @@ + + + + + + + code/game/runtimes.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/runtimes.dm + +

+ + +

Shorthand of Static Initializer errors only, for use in STUI +Full text of all Static Initializer + World Init errors, for log backfilling +Truthy when init is done and we don't need these shenanigans anymore

+ + + diff --git a/code/game/sound.html b/code/game/sound.html new file mode 100644 index 000000000000..43f0c271f059 --- /dev/null +++ b/code/game/sound.html @@ -0,0 +1,30 @@ + + + + + + + code/game/sound.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/sound.dm + +

+ + + + + +
/proc/playsound_areaPlays sound to all mobs that are map-level contents of an area
/proc/playsound_zPlay sound for all on-map clients on a given Z-level. Good for ambient sounds.
+ + + diff --git a/code/game/turfs/closed.html b/code/game/turfs/closed.html new file mode 100644 index 000000000000..568619f63abf --- /dev/null +++ b/code/game/turfs/closed.html @@ -0,0 +1,28 @@ + + + + + + + code/game/turfs/closed.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/turfs/closed.dm + +

+ + + +
/turf/closed/cordonCordon turf marking z-level boundaries and surrounding reservations
/turf/closed/cordon/debugUsed as placeholder turf when something went really wrong, as per /tg/ string lists handler
+ + + diff --git a/code/game/turfs/floor_types.html b/code/game/turfs/floor_types.html new file mode 100644 index 000000000000..8d24aa438a28 --- /dev/null +++ b/code/game/turfs/floor_types.html @@ -0,0 +1,31 @@ + + + + + + + code/game/turfs/floor_types.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/turfs/floor_types.dm + +

+ + + + + + +
/turf/open/floor/plating/bare_catwalkVisually like plating+catwalks but without overlaying or interactions - mainly for Reqs Elevator
/turf/open/floor/tdomeAdmin level thunderdome floor. Doesn't get damaged by explosions and such for pristine testing
/turf/open/floor/almayer/emptyBase type of the requisitions and vehicle bay elevator pits.
/turf/open/floor/almayer/empty/requisitionsRequisitions pit.
/turf/open/floor/almayer/empty/vehicle_bayVehicle bay pit.
+ + + diff --git a/code/game/turfs/walls/r_wall.html b/code/game/turfs/walls/r_wall.html new file mode 100644 index 000000000000..c07800732685 --- /dev/null +++ b/code/game/turfs/walls/r_wall.html @@ -0,0 +1,27 @@ + + + + + + + code/game/turfs/walls/r_wall.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/turfs/walls/r_wall.dm + +

+ + +
/turf/closed/wall/r_wall/elevatorDestructible elevator walls, for when you want the elevator to act as a prop rather than an actual elevator
+ + + diff --git a/code/game/turfs/walls/wall_types.html b/code/game/turfs/walls/wall_types.html new file mode 100644 index 000000000000..5876dfc7049d --- /dev/null +++ b/code/game/turfs/walls/wall_types.html @@ -0,0 +1,27 @@ + + + + + + + code/game/turfs/walls/wall_types.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/turfs/walls/wall_types.dm + +

+ + +
/turf/closed/wall/almayer/reinforced/temphullActs like /turf/closed/wall/almayer/outer until post-hijack where it reverts to /turf/closed/wall/almayer/reinforced.
+ + + diff --git a/code/global.html b/code/global.html new file mode 100644 index 000000000000..92f7b2ff1d40 --- /dev/null +++ b/code/global.html @@ -0,0 +1,37 @@ + + + + + + + code/global.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/global.dm + +

+ + + +
RL_EVERYTHINGThe sum of all other rank permissions, other than host or profiler.
RL_HOSTTruely everything

Define Details

+

RL_EVERYTHING + + +

+

The sum of all other rank permissions, other than host or profiler.

RL_HOST + + +

+

Truely everything

+ + + diff --git a/code/modules/admin/NewBan.html b/code/modules/admin/NewBan.html new file mode 100644 index 000000000000..024c0f561139 --- /dev/null +++ b/code/modules/admin/NewBan.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/admin/NewBan.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/NewBan.dm + +

+ + + +
/proc/CreateBansDEBUG
+ + + diff --git a/code/modules/admin/autoreply.html b/code/modules/admin/autoreply.html new file mode 100644 index 000000000000..e21c6b9e962d --- /dev/null +++ b/code/modules/admin/autoreply.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/admin/autoreply.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/autoreply.dm + +

+ + +
/datum/autoreply/admin/handledAdmin Replies
+ + + diff --git a/code/modules/admin/callproc.html b/code/modules/admin/callproc.html new file mode 100644 index 000000000000..c51293cafaac --- /dev/null +++ b/code/modules/admin/callproc.html @@ -0,0 +1,35 @@ + + + + + + + code/modules/admin/callproc.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/callproc.dm + +

+ + + + + + + + +
/mob/proccall_handlerUsed to handle proccalls called indirectly by an admin (namely tgs). +Has to be a mob because IsAdminAdvancedProcCall() checks usr, which is a mob variable. +So usr is set to this for any proccalls that don't have any usr mob/client to refer to.
/proc/HandleUserlessProcCallHandles a userless proccall, used by circuits.
/proc/HandleUserlessSDQLHandles a userless sdql, used by TGS.
/proc/WrapAdminProcCallWrapper for proccalls where the datum is flagged as vareditted
+ + + diff --git a/code/modules/admin/tag.html b/code/modules/admin/tag.html new file mode 100644 index 000000000000..5e024b6bdf07 --- /dev/null +++ b/code/modules/admin/tag.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/admin/tag.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/admin/tag.dm + +

+ + +
TAG_DELQuick define for readability

Define Details

+

TAG_DEL + + + +

+

Quick define for readability

+ + + diff --git a/code/modules/admin/verbs/SDQL2/SDQL_2.html b/code/modules/admin/verbs/SDQL2/SDQL_2.html new file mode 100644 index 000000000000..081261fdf5f2 --- /dev/null +++ b/code/modules/admin/verbs/SDQL2/SDQL_2.html @@ -0,0 +1,64 @@ + + + + + + + code/modules/admin/verbs/SDQL2/SDQL_2.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/admin/verbs/SDQL2/SDQL_2.dm + +

+ + + + + + + + +
SDQL2_OPTION_SELECT_OUTPUT_SKIP_NULLSDon't print nulls that the select picked up. Enabled by default
SDQL2_OPTION_BLOCKING_CALLSRequire proccalls to finish before continuing the query
SDQL2_OPTION_HIGH_PRIORITYHigh priority SDQL query, allow using almost all of the tick.
SDQL2_OPTION_DO_NOT_AUTOGCDo not delete the query after its completion
SDQL2_OPTION_SEQUENTIALQueries chained together with ; will execute in series instead of in parallel
SDQL2_OPTION_OPTIMIZED_SOURCEChange to GLOB.mob_list for /mob or etc. automatically if we're iterating over world. +This isn't default because SDQL2 is a technical tool that should be as failure-safe as possible (such as a mob not being added to GLOB.mob_list, for example)
SDQL2_OPTION_NO_OUTPUT_POPUPWhen using SELECT, don't print a popup. Makes SELECT vastly faster.

Define Details

+

SDQL2_OPTION_BLOCKING_CALLS + + +

+

Require proccalls to finish before continuing the query

SDQL2_OPTION_DO_NOT_AUTOGC + + +

+

Do not delete the query after its completion

SDQL2_OPTION_HIGH_PRIORITY + + +

+

High priority SDQL query, allow using almost all of the tick.

SDQL2_OPTION_NO_OUTPUT_POPUP + + +

+

When using SELECT, don't print a popup. Makes SELECT vastly faster.

SDQL2_OPTION_OPTIMIZED_SOURCE + + +

+

Change to GLOB.mob_list for /mob or etc. automatically if we're iterating over world. +This isn't default because SDQL2 is a technical tool that should be as failure-safe as possible (such as a mob not being added to GLOB.mob_list, for example)

SDQL2_OPTION_SELECT_OUTPUT_SKIP_NULLS + + +

+

Don't print nulls that the select picked up. Enabled by default

SDQL2_OPTION_SEQUENTIAL + + +

+

Queries chained together with ; will execute in series instead of in parallel

+ + + diff --git a/code/modules/admin/verbs/SDQL2/SDQL_2_wrappers.html b/code/modules/admin/verbs/SDQL2/SDQL_2_wrappers.html new file mode 100644 index 000000000000..8f74238fcfe8 --- /dev/null +++ b/code/modules/admin/verbs/SDQL2/SDQL_2_wrappers.html @@ -0,0 +1,40 @@ + + + + + + + code/modules/admin/verbs/SDQL2/SDQL_2_wrappers.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/verbs/SDQL2/SDQL_2_wrappers.dm + +

+ + + + + +
/proc/_pick_listAllow me to explain +for some reason, if pick() is passed arglist(args) directly and args contains only one list +it considers it to be a list of lists +this means something like _pick(list) would fail +need to do this instead
/proc/_animate_filterAuxtools REALLY doesn't know how to handle filters as values; +when passed as arguments to auxtools-called procs, they aren't simply treated as nulls - +they don't even count towards the length of args. +For example, calling some_proc([a filter], foo, bar) from auxtools +is equivalent to calling some_proc(foo, bar). Thus, we can't use _animate directly on filters. +Use this to perform animation steps on a filter. Consecutive steps on the same filter can be +achieved by calling _animate with no target.
+ + + diff --git a/code/modules/admin/verbs/adminhelp.html b/code/modules/admin/verbs/adminhelp.html new file mode 100644 index 000000000000..86fad83df3b3 --- /dev/null +++ b/code/modules/admin/verbs/adminhelp.html @@ -0,0 +1,36 @@ + + + + + + + code/modules/admin/verbs/adminhelp.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/verbs/adminhelp.dm + +

+ + + + + + + +
/datum/admin_help_tickets
/datum/admin_help
/proc/admin_ticket_logUse this proc when an admin takes action that may be related to an open ticket on what +what can be a client, ckey, or mob +player_message: If the message should be shown in the player ticket panel, fill this out +log_in_blackbox: Whether or not this message with the blackbox system. +If disabled, this message should be logged with a different proc call
/proc/check_asay_linksChecks a given message to see if any of the words are something we want to treat specially, as detailed below.
+ + + diff --git a/code/modules/admin/view_variables/debug_variables.html b/code/modules/admin/view_variables/debug_variables.html new file mode 100644 index 000000000000..022d33d175a1 --- /dev/null +++ b/code/modules/admin/view_variables/debug_variables.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/admin/view_variables/debug_variables.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/view_variables/debug_variables.dm + +

+ + + +
/proc/debug_variableGet displayed variable in VV variable list
+ + + diff --git a/code/modules/almayer/shakeship.html b/code/modules/almayer/shakeship.html new file mode 100644 index 000000000000..58e2c3f0dc79 --- /dev/null +++ b/code/modules/almayer/shakeship.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/almayer/shakeship.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/almayer/shakeship.dm + +

+ + + +
/proc/shakeshipShakes the ship around
+ + + diff --git a/code/modules/almayer/weaponhits.html b/code/modules/almayer/weaponhits.html new file mode 100644 index 000000000000..379df1e97934 --- /dev/null +++ b/code/modules/almayer/weaponhits.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/almayer/weaponhits.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/almayer/weaponhits.dm + +

+ + + +
/datum/space_weaponSpace weapons it's self for ship to ship or PKO/Xeno PKO things
/datum/space_weapon_ammoAmmo datum for space weapons
+ + + diff --git a/code/modules/asset_cache.html b/code/modules/asset_cache.html new file mode 100644 index 000000000000..b8837996bd59 --- /dev/null +++ b/code/modules/asset_cache.html @@ -0,0 +1,43 @@ + + + + + + + code/modules/asset_cache/readme.md - byond + + +
+ byond - + Modules - + Types +
+
+

Asset cache system + +

+ + +
Framework for managing browser assets (javascript,css,images,etc) +

This manages getting the asset to the client without doing unneeded re-sends, as well as utilizing any configured cdns.

+

There are two frameworks for using this system:

+Asset datum: +

Make a datum in asset_list_items.dm with your browser assets for your thing.

+

Checkout asset_list.dm for the helper subclasses

+

The simple subclass will most likely be of use for most cases.

+

Call get_asset_datum() with the type of the datum you created to get your asset cache datum

+

Call .send(client|usr) on that datum to send the asset to the client. Depending on the asset transport this may or may not block.

+

Call .get_url_mappings() to get an associated list with the urls your assets can be found at.

+Manual backend: +

See the documentation for /datum/asset_transport for the backend api the asset datums utilize.

+

The global variable SSassets.transport contains the currently configured transport.

+Notes: +

Because byond browse() calls use non-blocking queues, if your code uses output() (which bypasses all of these queues) to invoke javascript functions you will need to first have the javascript announce to the server it has loaded before trying to invoke js functions.

+

To make your code work with any CDNs configured by the server, you must make sure assets are referenced from the url returned by get_url_mappings() or by asset_transport's get_asset_url(). (TGUI also has helpers for this.) If this can not be easily done, you can bypass the cdn using legacy assets, see the simple asset datum for details.

+

CSS files that use url() can be made to use the CDN without needing to rewrite all url() calls in code by using the namespaced helper datum. See the documentation for /datum/asset/simple/namespaced for details.

+ + + diff --git a/code/modules/asset_cache/asset_cache_item.html b/code/modules/asset_cache/asset_cache_item.html new file mode 100644 index 000000000000..fe51ffeea623 --- /dev/null +++ b/code/modules/asset_cache/asset_cache_item.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/asset_cache/asset_cache_item.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/asset_cache/asset_cache_item.dm + +

+ + +
/datum/asset_cache_itemAn internal datum containing info on items in the asset cache. Mainly used to cache md5 info for speed.
+ + + diff --git a/code/modules/asset_cache/asset_list.html b/code/modules/asset_cache/asset_list.html new file mode 100644 index 000000000000..18032f6e9bbf --- /dev/null +++ b/code/modules/asset_cache/asset_list.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/asset_cache/asset_list.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/asset_cache/asset_list.dm + +

+ + + +
/datum/asset/simpleIf you don't need anything complicated.
/datum/asset/simple/namespacedNamespace'ed assets (for static css and html files) +When sent over a cdn transport, all assets in the same asset datum will exist in the same folder, as their plain names. +Used to ensure css files can reference files by url() without having to generate the css at runtime, both the css file and the files it depends on must exist in the same namespace asset datum. (Also works for html) +For example blah.css with asset blah.png will get loaded as namespaces/a3d..14f/f12..d3c.css and namespaces/a3d..14f/blah.png. allowing the css file to load blah.png by a relative url rather then compute the generated url with get_url_mappings(). +The namespace folder's name will change if any of the assets change. (excluding parent assets)
+ + + diff --git a/code/modules/asset_cache/transports/asset_transport.html b/code/modules/asset_cache/transports/asset_transport.html new file mode 100644 index 000000000000..ada4bcc99a05 --- /dev/null +++ b/code/modules/asset_cache/transports/asset_transport.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/asset_cache/transports/asset_transport.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/asset_cache/transports/asset_transport.dm + +

+ + + +
ASSET_CACHE_TELL_CLIENT_AMOUNTWhen sending mutiple assets, how many before we give the client a quaint little sending resources message
/datum/asset_transportBase browse_rsc asset transport

Define Details

+

ASSET_CACHE_TELL_CLIENT_AMOUNT + + +

+

When sending mutiple assets, how many before we give the client a quaint little sending resources message

+ + + diff --git a/code/modules/asset_cache/transports/webroot_transport.html b/code/modules/asset_cache/transports/webroot_transport.html new file mode 100644 index 000000000000..0443d48a7904 --- /dev/null +++ b/code/modules/asset_cache/transports/webroot_transport.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/asset_cache/transports/webroot_transport.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/asset_cache/transports/webroot_transport.dm + +

+ + +
/datum/asset_transport/webrootCDN Webroot asset transport.
+ + + diff --git a/code/modules/autowiki/autowiki.html b/code/modules/autowiki/autowiki.html new file mode 100644 index 000000000000..6cccc36e9c82 --- /dev/null +++ b/code/modules/autowiki/autowiki.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/autowiki/autowiki.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/autowiki/autowiki.dm + +

+ + + +
/proc/generate_autowiki_outputWhen the AUTOWIKI define is enabled, will generate an output file for tools/autowiki/autowiki.js to consume. +Autowiki code intentionally still exists even without the define, to ensure developers notice +when they break it immediately, rather than until CI or worse, call time. +Returns a string of the autowiki output file
+ + + diff --git a/code/modules/autowiki/pages/_page.html b/code/modules/autowiki/pages/_page.html new file mode 100644 index 000000000000..942b372d05b2 --- /dev/null +++ b/code/modules/autowiki/pages/_page.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/autowiki/pages/_page.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/autowiki/pages/_page.dm + +

+ + +
/datum/autowikiA representation of an automated wiki page.
+ + + diff --git a/code/modules/buildmode.html b/code/modules/buildmode.html new file mode 100644 index 000000000000..1053ff841b56 --- /dev/null +++ b/code/modules/buildmode.html @@ -0,0 +1,209 @@ + + + + + + + code/modules/buildmode/README.md - byond + + +
+ byond - + Modules - + Types +
+
+

Buildmode + +

+ + +
Code layoutBuildmode +

Manager for buildmode modes. Contains logic to manage switching between each mode, and presenting a suitable user interface.

+Effects +

Special graphics used by buildmode modes for user interface purposes.

+Buildmode Mode +

Implementer of buildmode behaviors.

+

Existing varieties:

+
    +
  • +

    Basic

    +

    Description:

    +

    Allows creation of simple structures consisting of floors, walls, windows, and airlocks.

    +

    Controls:

    +
      +
    • +

      Left click a turf:

      +

      "Upgrades" the turf based on the following rules below:

      +
        +
      • Space -> Tiled floor
      • +
      • Simulated floor -> Regular wall
      • +
      • Wall -> Reinforced wall
      • +
      +
    • +
    • +

      Right click a turf:

      +

      "Downgrades" the turf based on the following rules below:

      +
        +
      • Reinforced wall -> Regular wall
      • +
      • Wall -> Tiled floor
      • +
      • Simulated floor -> Space
      • +
      +
    • +
    • +

      Right click an object:

      +

      Deletes the clicked object.

      +
    • +
    • +

      Alt+Left click a location:

      +

      Places an airlock at the clicked location.

      +
    • +
    • +

      Ctrl+Left click a location:

      +

      Places a window at the clicked location.

      +
    • +
    +
  • +
  • +

    Advanced

    +

    Description:

    +

    Creates an instance of a configurable atom path where you click.

    +

    Controls:

    +
      +
    • +

      Right click on the mode selector:

      +

      Choose a path to spawn.

      +
    • +
    • +

      Left click a location (requires chosen path):

      +

      Place an instance of the chosen path at the location.

      +
    • +
    • +

      Right click an object:

      +

      Delete the object.

      +
    • +
    +
  • +
  • +

    Fill

    +

    Description:

    +

    Creates an instance of an atom path on every tile in a chosen region.

    +

    With a special control input, instead deletes everything within the region.

    +

    Controls:

    +
      +
    • +

      Right click on the mode selector:

      +

      Choose a path to spawn.

      +
    • +
    • +

      Left click on a region (requires chosen path):

      +

      Fill the region with the chosen path.

      +
    • +
    • +

      Alt+Left click on a region:

      +

      Deletes everything within the region.

      +
    • +
    • +

      Right click during region selection:

      +

      Cancel region selection.

      +
    • +
    +
  • +
  • +

    Copy

    +

    Description:

    +

    Take an existing object in the world, and place duplicates with identical attributes where you click.

    +

    May not always work nicely - "deep" variables such as lists or datums may malfunction.

    +

    Controls:

    +
      +
    • +

      Right click an existing object:

      +

      Select the clicked object as a template.

      +
    • +
    • +

      Left click a location (Requires a selected object as template):

      +

      Place a duplicate of the template at the clicked location.

      +
    • +
    +
  • +
  • +

    Area Edit

    +

    Description:

    +

    Modifies and creates areas.

    +

    The active area will be highlighted in yellow.

    +

    Controls:

    +
      +
    • +

      Right click the mode selector:

      +

      Create a new area, and make it active.

      +
    • +
    • +

      Right click an existing area:

      +

      Make the clicked area active.

      +
    • +
    • +

      Left click a turf:

      +

      When an area is active, adds the turf to the active area.

      +
    • +
    +
  • +
  • +

    Var Edit

    +

    Description:

    +

    Allows for setting and resetting variables of objects with a click.

    +

    If the object does not have the var, will do nothing and print a warning message.

    +

    Controls:

    +
      +
    • +

      Right click the mode selector:

      +

      Choose which variable to set, and what to set it to.

      +
    • +
    • +

      Left click an atom:

      +

      Change the clicked atom's variables as configured.

      +
    • +
    • +

      Right click an atom:

      +

      Reset the targeted variable to its original value in the code.

      +
    • +
    +
  • +
  • +

    Throwing

    +

    Description:

    +

    Select an object with left click, and right click to throw it towards where you clicked.

    +

    Controls:

    +
      +
    • +

      Left click on a movable atom:

      +

      Select the atom for throwing.

      +
    • +
    • +

      Right click on a location:

      +

      Throw the selected atom towards that location.

      +
    • +
    +
  • +
  • +

    Boom

    +

    Description:

    +

    Make explosions where you click.

    +

    Controls:

    +
      +
    • +

      Right click the mode selector:

      +

      Configure the explosion size.

      +
    • +
    • +

      Left click a location:

      +

      Cause an explosion where you clicked.

      +
    • +
    +
  • +
+ + + diff --git a/code/modules/buildmode/bm-mode.html b/code/modules/buildmode/bm-mode.html new file mode 100644 index 000000000000..4c0f172a987c --- /dev/null +++ b/code/modules/buildmode/bm-mode.html @@ -0,0 +1,37 @@ + + + + + + + code/modules/buildmode/bm-mode.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/buildmode/bm-mode.dm + +

+ + + +
AREASELECT_CORNERACorner A area section for buildmode
AREASELECT_CORNERBCorner B area selection for buildmode

Define Details

+

AREASELECT_CORNERA + + +

+

Corner A area section for buildmode

AREASELECT_CORNERB + + +

+

Corner B area selection for buildmode

+ + + diff --git a/code/modules/character_traits/character_trait.html b/code/modules/character_traits/character_trait.html new file mode 100644 index 000000000000..05a1dad7383d --- /dev/null +++ b/code/modules/character_traits/character_trait.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/character_traits/character_trait.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/character_traits/character_trait.dm + +

+ + + +
/datum/character_traitCharacter traits +Similar to the traits from Project Zomboid
/datum/character_trait_groupCharacter trait groups for constraints (if any)
+ + + diff --git a/code/modules/client/statbrowser_options.html b/code/modules/client/statbrowser_options.html new file mode 100644 index 000000000000..1e1c80940ee4 --- /dev/null +++ b/code/modules/client/statbrowser_options.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/client/statbrowser_options.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/client/statbrowser_options.dm + +

+ + +
/datum/statbrowser_optionsHandles the Statbrowser Options window for a given client
+ + + diff --git a/code/modules/clothing/under/marine_uniform.html b/code/modules/clothing/under/marine_uniform.html new file mode 100644 index 000000000000..7f2f21f74be5 --- /dev/null +++ b/code/modules/clothing/under/marine_uniform.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/clothing/under/marine_uniform.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/clothing/under/marine_uniform.dm + +

+ + +
/obj/item/clothing/under/marine/ua_riotCivilians
+ + + diff --git a/code/modules/cm_marines/dropship_ammo.html b/code/modules/cm_marines/dropship_ammo.html new file mode 100644 index 000000000000..9cd77fcd68f1 --- /dev/null +++ b/code/modules/cm_marines/dropship_ammo.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/cm_marines/dropship_ammo.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/cm_marines/dropship_ammo.dm + +

+ + +
/obj/structure/ship_ammoDropship weaponry ammunition
+ + + diff --git a/code/modules/cm_marines/dropship_equipment.html b/code/modules/cm_marines/dropship_equipment.html new file mode 100644 index 000000000000..cc1675d268cf --- /dev/null +++ b/code/modules/cm_marines/dropship_equipment.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/cm_marines/dropship_equipment.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/cm_marines/dropship_equipment.dm + +

+ + + + + + +
/obj/structure/dropship_equipmentDropship equipment, mainly weaponry but also utility implements
/obj/structure/dropship_equipment/sentry_holderTurret holder for dropship automated sentries
/obj/structure/dropship_equipment/mg_holderHolder for the dropship mannable machinegun system
/obj/structure/dropship_equipment/adv_compCOMPUTERS
/obj/structure/dropship_equipment/weaponCAS Dropship weaponry, used for aerial bombardment
+ + + diff --git a/code/modules/cm_marines/marines_consoles.html b/code/modules/cm_marines/marines_consoles.html new file mode 100644 index 000000000000..1eb5818d4142 --- /dev/null +++ b/code/modules/cm_marines/marines_consoles.html @@ -0,0 +1,42 @@ + + + + + + + code/modules/cm_marines/marines_consoles.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/cm_marines/marines_consoles.dm + +

+ + + + +
SENSORS_UPDATE_PERIODHow often the sensor data is updated
UNKNOWN_JOB_IDThe job sorting ID associated with otherwise unknown jobs
RAIDER_OFFICER_SQUADThis is a really hacky way to make SOF work, but the nice and easy alternative would screw with round spawning

Define Details

+

RAIDER_OFFICER_SQUAD + + +

+

This is a really hacky way to make SOF work, but the nice and easy alternative would screw with round spawning

SENSORS_UPDATE_PERIOD + + +

+

How often the sensor data is updated

UNKNOWN_JOB_ID + + +

+

The job sorting ID associated with otherwise unknown jobs

+ + + diff --git a/code/modules/cm_marines/radar.html b/code/modules/cm_marines/radar.html new file mode 100644 index 000000000000..57c27b9d6dd0 --- /dev/null +++ b/code/modules/cm_marines/radar.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/cm_marines/radar.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/cm_marines/radar.dm + +

+ + + +
/datum/radargeneric parent that handles most of the process
/datum/radar/lifelineA program that tracks crew members via suit sensors
+ + + diff --git a/code/modules/cm_marines/specialist.html b/code/modules/cm_marines/specialist.html new file mode 100644 index 000000000000..4c07b0d16322 --- /dev/null +++ b/code/modules/cm_marines/specialist.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/cm_marines/specialist.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/cm_marines/specialist.dm + +

+ + + +
/proc/get_specialist_setGet a specialist set datum typepath given a mob, returns null if they aren't a spec or haven't chosen a kit.
+ + + diff --git a/code/modules/cm_marines/vehicle_part_fabricator.html b/code/modules/cm_marines/vehicle_part_fabricator.html new file mode 100644 index 000000000000..aa786e80346a --- /dev/null +++ b/code/modules/cm_marines/vehicle_part_fabricator.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/cm_marines/vehicle_part_fabricator.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/cm_marines/vehicle_part_fabricator.dm + +

+ + +
/obj/structure/machinery/part_fabricator/tankFabricator for individual tank parts
+ + + diff --git a/code/modules/cm_preds/yaut_mask.html b/code/modules/cm_preds/yaut_mask.html new file mode 100644 index 000000000000..60c72e9ea28d --- /dev/null +++ b/code/modules/cm_preds/yaut_mask.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/cm_preds/yaut_mask.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/cm_preds/yaut_mask.dm + +

+ + +
/obj/item/clothing/mask/gas/yautjaparent type
+ + + diff --git a/code/modules/cm_preds/yaut_weapons.html b/code/modules/cm_preds/yaut_weapons.html new file mode 100644 index 000000000000..a7b6cc1fb8a7 --- /dev/null +++ b/code/modules/cm_preds/yaut_weapons.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/cm_preds/yaut_weapons.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/cm_preds/yaut_weapons.dm + +

+ + +
/datum/flaying_datumRecords status of flaying attempts and handles progress.
+ + + diff --git a/code/modules/cm_tech/techs/abstract/repeatable.html b/code/modules/cm_tech/techs/abstract/repeatable.html new file mode 100644 index 000000000000..20766b0c2f61 --- /dev/null +++ b/code/modules/cm_tech/techs/abstract/repeatable.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/cm_tech/techs/abstract/repeatable.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/cm_tech/techs/abstract/repeatable.dm + +

+ + +
/datum/tech/repeatableA tech that can be purchased multiple times
+ + + diff --git a/code/modules/decorators/christmas.html b/code/modules/decorators/christmas.html new file mode 100644 index 000000000000..a2da941e9fce --- /dev/null +++ b/code/modules/decorators/christmas.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/decorators/christmas.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/decorators/christmas.dm + +

+ + +
/datum/decorator/christmas/foodReplaces marine food dispensers contents with more festive MREs
+ + + diff --git a/code/modules/defenses/sentry_computer.html b/code/modules/defenses/sentry_computer.html new file mode 100644 index 000000000000..f3b2d115a705 --- /dev/null +++ b/code/modules/defenses/sentry_computer.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/defenses/sentry_computer.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/defenses/sentry_computer.dm + +

+ + +
/obj/item/device/sentry_computerSentry gun computer which links to defensive structures.
+ + + diff --git a/code/modules/discord/discord_embed.html b/code/modules/discord/discord_embed.html new file mode 100644 index 000000000000..6eeba950fcc2 --- /dev/null +++ b/code/modules/discord/discord_embed.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/discord/discord_embed.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/discord/discord_embed.dm + +

+ + +
/datum/discord_embedDocumentation for the embed object and all of its variables can be found at +https://discord.com/developers/docs/resources/channel#embed-object +It is recommended to read the documentation on the discord website, as the information below could become outdated in the future.
+ + + diff --git a/code/modules/dropships/attach_points/attach_point.html b/code/modules/dropships/attach_points/attach_point.html new file mode 100644 index 000000000000..5dc17381a897 --- /dev/null +++ b/code/modules/dropships/attach_points/attach_point.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/dropships/attach_points/attach_point.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/dropships/attach_points/attach_point.dm + +

+ + + +
/obj/effect/attach_pointThe bases onto which you attach dropship equipments.
/obj/effect/attach_point/weaponWeapon specific attachment point
+ + + diff --git a/code/modules/dropships/cas/fire_mission_record.html b/code/modules/dropships/cas/fire_mission_record.html new file mode 100644 index 000000000000..e44ef6b10c00 --- /dev/null +++ b/code/modules/dropships/cas/fire_mission_record.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/dropships/cas/fire_mission_record.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/dropships/cas/fire_mission_record.dm + +

+ + +
/datum/cas_fire_mission_recordDefines firing patterns in Fire Missions, transverse to its firing direction
+ + + diff --git a/code/modules/escape_menu/details.html b/code/modules/escape_menu/details.html new file mode 100644 index 000000000000..54f673ec0248 --- /dev/null +++ b/code/modules/escape_menu/details.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/escape_menu/details.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/escape_menu/details.dm + +

+ + + +
/proc/give_escape_menu_detailsProvides a singleton for the escape menu details screen.
+ + + diff --git a/code/modules/escape_menu/subsystem.html b/code/modules/escape_menu/subsystem.html new file mode 100644 index 000000000000..252883bf6f80 --- /dev/null +++ b/code/modules/escape_menu/subsystem.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/escape_menu/subsystem.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/escape_menu/subsystem.dm + +

+ + + +
/var/SSescape_menuSubsystem for controlling anything related to the escape menu
+ + + diff --git a/code/modules/escape_menu/title.html b/code/modules/escape_menu/title.html new file mode 100644 index 000000000000..ed74d9600017 --- /dev/null +++ b/code/modules/escape_menu/title.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/escape_menu/title.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/escape_menu/title.dm + +

+ + + +
/proc/give_escape_menu_titleProvides a singleton for the escape menu details screen.
+ + + diff --git a/code/modules/events/_events.html b/code/modules/events/_events.html new file mode 100644 index 000000000000..4ab04335496d --- /dev/null +++ b/code/modules/events/_events.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/events/_events.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/events/_events.dm + +

+ + +
/datum/round_event_controlthis datum is used by the events controller to dictate how it selects events
+ + + diff --git a/code/modules/flufftext/Chinese.html b/code/modules/flufftext/Chinese.html new file mode 100644 index 000000000000..fd43433fbabf --- /dev/null +++ b/code/modules/flufftext/Chinese.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/flufftext/Chinese.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/flufftext/Chinese.dm + +

+ + +
CHINESE_SOUND_ZERO_INITIAL_CHANCEHow likely the syllable is not to have a consonant at the start, needs to be kinda high

Define Details

+

CHINESE_SOUND_ZERO_INITIAL_CHANCE + + +

+

How likely the syllable is not to have a consonant at the start, needs to be kinda high

+ + + diff --git a/code/modules/flufftext/Japanese.html b/code/modules/flufftext/Japanese.html new file mode 100644 index 000000000000..ceee31c4cf0e --- /dev/null +++ b/code/modules/flufftext/Japanese.html @@ -0,0 +1,67 @@ + + + + + + + code/modules/flufftext/Japanese.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/flufftext/Japanese.dm + +

+ + + + + + + + + + + + + +
JAPANESE_SOUND_GEMINATION_CHANCE_NUCLEUSHow likely the nucleus (vowel) is to geminate ie a -> aa
JAPANESE_SOUND_GEMINATION_CHANCE_INITIALHow likely the initial (consonant) is to geminate ie k -> kk
JAPANESE_SOUND_PALATALISATION_CHANCEHow likely the consonant is to palatalise ie r -> ry
JAPANESE_SOUND_NULL_INITIAL_CHANCEHow likely the syllable is not to have a consonant at the start, needs to be kinda high for convincing diphthongs
JAPANESE_SOUND_N_FINAL_CHANCEHow likely the syllable is to end in an N
JAPANESE_SOUND_APOSTROPHE_CHANCEHow likely it is to insert an apostrophe between two syllables (this can happen anywhere, mainly used for morpheme boundaries.)
JAPANESE_SOUND_GEMINATION_CHANCE_VOICEDhow likely voiced sounds are to geminate, these mainly occur in foreign loans so quite unlikely
/datum/japanese_syllableholds the syllable's sound itself and information such as if it has a null initial or final_syllable
/datum/japanese_sounda generic sound
/datum/japanese_sound/initialan initial sound aka a consonant, contains a lot of data about stuff that only consonants can be
/datum/japanese_sound/nucleusa nucleus, aka a vowel sound
/datum/japanese_sound/final_syllablea final_syllable sound, not used for much since the only one possible is N.

Define Details

+

JAPANESE_SOUND_APOSTROPHE_CHANCE + + +

+

How likely it is to insert an apostrophe between two syllables (this can happen anywhere, mainly used for morpheme boundaries.)

JAPANESE_SOUND_GEMINATION_CHANCE_INITIAL + + +

+

How likely the initial (consonant) is to geminate ie k -> kk

JAPANESE_SOUND_GEMINATION_CHANCE_NUCLEUS + + +

+

How likely the nucleus (vowel) is to geminate ie a -> aa

JAPANESE_SOUND_GEMINATION_CHANCE_VOICED + + +

+

how likely voiced sounds are to geminate, these mainly occur in foreign loans so quite unlikely

JAPANESE_SOUND_NULL_INITIAL_CHANCE + + +

+

How likely the syllable is not to have a consonant at the start, needs to be kinda high for convincing diphthongs

JAPANESE_SOUND_N_FINAL_CHANCE + + +

+

How likely the syllable is to end in an N

JAPANESE_SOUND_PALATALISATION_CHANCE + + +

+

How likely the consonant is to palatalise ie r -> ry

+ + + diff --git a/code/modules/gear_presets/corpses.html b/code/modules/gear_presets/corpses.html new file mode 100644 index 000000000000..67ce2d890b07 --- /dev/null +++ b/code/modules/gear_presets/corpses.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/gear_presets/corpses.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/gear_presets/corpses.dm + +

+ + +
/datum/equipment_preset/corpse/managerOfficers
+ + + diff --git a/code/modules/gear_presets/survivors/lv_522/forcon_survivors.html b/code/modules/gear_presets/survivors/lv_522/forcon_survivors.html new file mode 100644 index 000000000000..721bdd8636bb --- /dev/null +++ b/code/modules/gear_presets/survivors/lv_522/forcon_survivors.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/gear_presets/survivors/lv_522/forcon_survivors.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/gear_presets/survivors/lv_522/forcon_survivors.dm + +

+ + + + + + +
/datum/equipment_preset/survivor/foreconLV-522 Force Recon Survivors**************************
/datum/equipment_preset/survivor/forecon/tech
/datum/equipment_preset/survivor/forecon/marksman
/datum/equipment_preset/survivor/forecon/smartgunner
/datum/equipment_preset/survivor/forecon/sniper
+ + + diff --git a/code/modules/gear_presets/survivors/misc.html b/code/modules/gear_presets/survivors/misc.html new file mode 100644 index 000000000000..a7323dd308da --- /dev/null +++ b/code/modules/gear_presets/survivors/misc.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/gear_presets/survivors/misc.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/gear_presets/survivors/misc.dm + +

+ + +
/datum/equipment_preset/survivor/clf/coldused in Shivas Snowball
+ + + diff --git a/code/modules/holidays/halloween/decorators.html b/code/modules/holidays/halloween/decorators.html new file mode 100644 index 000000000000..d805167f48d8 --- /dev/null +++ b/code/modules/holidays/halloween/decorators.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/holidays/halloween/decorators.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/holidays/halloween/decorators.dm + +

+ + + +
/datum/game_decorator/halloween/pumpkinsPumpkins decorator: adds patches of carvable/wearable pumpkins around the ground level +Amount of pumpkins to place +Amount of pumpkins to remove per day to halloween +Chance reduction per day before halloween
/datum/game_decorator/halloween/cobwebsCobweb decorator: adds more and more cobwebs as you go through the month
+ + + diff --git a/code/modules/holidays/halloween/pumpkins/patches.html b/code/modules/holidays/halloween/pumpkins/patches.html new file mode 100644 index 000000000000..1e4a91367acd --- /dev/null +++ b/code/modules/holidays/halloween/pumpkins/patches.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/holidays/halloween/pumpkins/patches.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/holidays/halloween/pumpkins/patches.dm + +

+ + +
/obj/structure/pumpkin_patchPatches of pumpkins spawned at roundstart from where marines can get their carvable pumpkins +Whether there's still vines to display or not +Amount of pumpkins currently in the patch +Prefix to prepend to icon states, for corrupted pumpkins
+ + + diff --git a/code/modules/holidays/halloween/pumpkins/wearable.html b/code/modules/holidays/halloween/pumpkins/wearable.html new file mode 100644 index 000000000000..110f9638c8e2 --- /dev/null +++ b/code/modules/holidays/halloween/pumpkins/wearable.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/holidays/halloween/pumpkins/wearable.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/holidays/halloween/pumpkins/wearable.dm + +

+ + +
/obj/item/clothing/head/pumpkinCarved Pumpkin from the Halloween event +Icon state prefix for corrupted pumpkin variants +Currently carved pumpkin overlay
+ + + diff --git a/code/modules/keybindings.html b/code/modules/keybindings.html new file mode 100644 index 000000000000..f4b7afb3ccfa --- /dev/null +++ b/code/modules/keybindings.html @@ -0,0 +1,60 @@ + + + + + + + code/modules/keybindings/readme.md - byond + + +
+ byond - + Modules - + Types +
+
+

In-code keypress handling system + +

+ + +

This whole system is heavily based off of forum_account's keyboard library. +Thanks to forum_account for saving the day, the library can be found +here!

+

.dmf macros have some very serious shortcomings. For example, they do not allow reusing parts +of one macro in another, so giving cyborgs their own shortcuts to swap active module couldn't +inherit the movement that all mobs should have anyways. The webclient only supports one macro, +so having more than one was problematic. Additionally each keybind has to call an actual +verb, which meant a lot of hidden verbs that just call one other proc. Also our existing +macro was really bad and tied unrelated behavior into Northeast(), Southeast(), Northwest(), +and Southwest().

+

The basic premise of this system is to not screw with .dmf macro setup at all and handle +pressing those keys in the code instead. We have every key call client.keyDown() +or client.keyUp() with the pressed key as an argument. Certain keys get processed +directly by the client because they should be doable at any time, then we call +keyDown() or keyUp() on the client's holder and the client's mob's focus. +By default mob.focus is the mob itself, but you can set it to any datum to give control of a +client's keypresses to another object. This would be a good way to handle a menu or driving +a mech. You can also set it to null to disregard input from a certain user.

+

Movement is handled by having each client call client.keyLoop() every game tick. +As above, this calls holder and focus.keyLoop(). atom/movable/keyLoop() handles movement +Try to keep the calculations in this proc light. It runs every tick for every client after all!

+

You can also tell which keys are being held down now. Each client a list of keys pressed called +keys_held. Each entry is a key as a text string associated with the world.time when it was +pressed.

+

No client-set keybindings at this time, but it shouldn't be too hard if someone wants.

+

Notes about certain keys:

+
    +
  • Tab has client-sided behavior but acts normally
  • +
  • T, O, and M move focus to the input when pressed. This fires the keyUp macro right away.
  • +
  • \ needs to be escaped in the dmf so any usage is \\
  • +
+

You cannot TICK_CHECK or check world.tick_usage inside of procs called by key down and up +events. They happen outside of a byond tick and have no meaning there. Key looping +works correctly since it's part of a subsystem, not direct input.

+ + + diff --git a/code/modules/lighting/emissive_blocker.html b/code/modules/lighting/emissive_blocker.html new file mode 100644 index 000000000000..a7892441770d --- /dev/null +++ b/code/modules/lighting/emissive_blocker.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/lighting/emissive_blocker.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/lighting/emissive_blocker.dm + +

+ + +
/atom/movable/emissive_blockerInternal atom that copies an appearance on to the blocker plane
+ + + diff --git a/code/modules/lighting/lighting_mask/lighting_mask.html b/code/modules/lighting/lighting_mask/lighting_mask.html new file mode 100644 index 000000000000..fbb0ce1bd362 --- /dev/null +++ b/code/modules/lighting/lighting_mask/lighting_mask.html @@ -0,0 +1,41 @@ + + + + + + + code/modules/lighting/lighting_mask/lighting_mask.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/lighting/lighting_mask/lighting_mask.dm + +

+ + + + + + + +
LIGHTING_MASK_RADIUSLighting mask sprite radius in tiles
LIGHTING_MASK_SPRITE_SIZELighting mask sprite diameter in pixels
/atom/movable/lighting_mask/flickerFlickering lighting mask
/atom/movable/lighting_mask/conicalConical Light mask
/atom/movable/lighting_mask/rotatingRotating Light mask
/atom/movable/lighting_mask/rotating_conicalrotating light mask, but only pointing in one direction

Define Details

+

LIGHTING_MASK_RADIUS + + +

+

Lighting mask sprite radius in tiles

LIGHTING_MASK_SPRITE_SIZE + + +

+

Lighting mask sprite diameter in pixels

+ + + diff --git a/code/modules/lighting/lighting_mask/lighting_mask_holder.html b/code/modules/lighting/lighting_mask/lighting_mask_holder.html new file mode 100644 index 000000000000..51f3e5ed0cf7 --- /dev/null +++ b/code/modules/lighting/lighting_mask/lighting_mask_holder.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/lighting/lighting_mask/lighting_mask_holder.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/lighting/lighting_mask/lighting_mask_holder.dm + +

+ + +
/obj/effect/lighting_mask_holderHolder for lighting mask, this is done for ensuing correct render as a viscontents
+ + + diff --git a/code/modules/lighting/lighting_mask/shadow_calculator.html b/code/modules/lighting/lighting_mask/shadow_calculator.html new file mode 100644 index 000000000000..3c4ac78ca4a6 --- /dev/null +++ b/code/modules/lighting/lighting_mask/shadow_calculator.html @@ -0,0 +1,40 @@ + + + + + + + code/modules/lighting/lighting_mask/shadow_calculator.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/lighting/lighting_mask/shadow_calculator.dm + +

+ + + + + +
RADIUS_BASED_OFFSETEyeball number for radius based offsets do not touch
COORD_LIST_ADDInserts a coord list into a grouped list
/proc/extend_line_to_radiusgets a line from a x and y, to the offset x and y of length radius

Define Details

+

COORD_LIST_ADD + + + +

+

Inserts a coord list into a grouped list

RADIUS_BASED_OFFSET + + +

+

Eyeball number for radius based offsets do not touch

+ + + diff --git a/code/modules/lighting/lighting_turf.html b/code/modules/lighting/lighting_turf.html new file mode 100644 index 000000000000..9ff78ae82ff7 --- /dev/null +++ b/code/modules/lighting/lighting_turf.html @@ -0,0 +1,37 @@ + + + + + + + code/modules/lighting/lighting_turf.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/lighting/lighting_turf.dm + +

+ + +
LIGHT_POWER_ESTIMATIONEstimates the light power based on the alpha of the light and the range. +Assumes a linear fallout at (0, alpha/255) to (range, 0) +Used for lightig mask lumcount calculations

Define Details

+

LIGHT_POWER_ESTIMATION + + + +

+

Estimates the light power based on the alpha of the light and the range. +Assumes a linear fallout at (0, alpha/255) to (range, 0) +Used for lightig mask lumcount calculations

+ + + diff --git a/code/modules/logging/log_category.html b/code/modules/logging/log_category.html new file mode 100644 index 000000000000..02084bd16eee --- /dev/null +++ b/code/modules/logging/log_category.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/logging/log_category.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/logging/log_category.dm + +

+ + + +
/datum/log_categoryThe main datum that contains all log entries for a category
/datum/log_category/backup_category_not_foundBackup log category to catch attempts to log to a category that doesn't exist
+ + + diff --git a/code/modules/logging/log_holder.html b/code/modules/logging/log_holder.html new file mode 100644 index 000000000000..efe381837dca --- /dev/null +++ b/code/modules/logging/log_holder.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/logging/log_holder.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/logging/log_holder.dm + +

+ + +
/datum/log_holderMain datum to manage logging actions
+ + + diff --git a/code/modules/mapping.html b/code/modules/mapping.html new file mode 100644 index 000000000000..ebc0ba58d0bf --- /dev/null +++ b/code/modules/mapping.html @@ -0,0 +1,79 @@ + + + + + + + code/modules/mapping/README.txt - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mapping/README.txt + +

+ + +
The code in this module originally evolved from dmm_suite and has since been
+specialized for SS13 and otherwise tweaked to fit /tg/station's needs.
+
+dmm_suite version 1.0
+	Released January 30th, 2011.
+
+NOTE: Map saving functionality removed
+
+defines the object /dmm_suite
+	- Provides the proc load_map()
+		- Loads the specified map file onto the specified z-level.
+	- provides the proc write_map()
+		- Returns a text string of the map in dmm format
+			ready for output to a file.
+	- provides the proc save_map()
+		- Returns a .dmm file if map is saved
+		- Returns FALSE if map fails to save
+
+The dmm_suite provides saving and loading of map files in BYOND's native DMM map
+format. It approximates the map saving and loading processes of the Dream Maker
+and Dream Seeker programs so as to allow editing, saving, and loading of maps at
+runtime.
+
+------------------------
+
+To save a map at runtime, create an instance of /dmm_suite, and then call
+write_map(), which accepts three arguments:
+	- A turf representing one corner of a three dimensional grid (Required).
+	- Another turf representing the other corner of the same grid (Required).
+	- Any, or a combination, of several bit flags (Optional, see documentation).
+
+The order in which the turfs are supplied does not matter, the /dmm_writer will
+determine the grid containing both, in much the same way as DM's block() function.
+write_map() will then return a string representing the saved map in dmm format;
+this string can then be saved to a file, or used for any other purose.
+
+------------------------
+
+To load a map at runtime, create an instance of /dmm_suite, and then call load_map(),
+which accepts two arguments:
+	- A .dmm file to load (Required).
+	- A number representing the z-level on which to start loading the map (Optional).
+
+The /dmm_suite will load the map file starting on the specified z-level. If no
+z-level	was specified, world.maxz will be increased so as to fit the map. Note
+that if you wish to load a map onto a z-level that already has objects on it,
+you will have to handle the removal of those objects. Otherwise the new map will
+simply load the new objects on top of the old ones.
+
+Also note that all type paths specified in the .dmm file must exist in the world's
+code, and that the /dmm_reader trusts that files to be loaded are in fact valid
+.dmm files. Errors in the .dmm format will cause runtime errors.
+
+ + + diff --git a/code/modules/mapping/preloader.html b/code/modules/mapping/preloader.html new file mode 100644 index 000000000000..d2a31b64d122 --- /dev/null +++ b/code/modules/mapping/preloader.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/mapping/preloader.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mapping/preloader.dm + +

+ + + + +
/datum/map_preloaderPreloader datum
/area/template_noopTemplate noop (no operation) is used to skip a turf or area when the template is loaded this allows for template transparency +ex. if a ship has gaps in it's design, you would use template_noop to fill these in so that when the ship moves z-level, any +tiles these gaps land on will not be deleted and replaced with the ships (empty) tiles
/turf/template_noopSee above explanation
+ + + diff --git a/code/modules/mapping/reader.html b/code/modules/mapping/reader.html new file mode 100644 index 000000000000..88520bac35c0 --- /dev/null +++ b/code/modules/mapping/reader.html @@ -0,0 +1,82 @@ + + + + + + + code/modules/mapping/reader.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/mapping/reader.dm + +

+ + + + + +
MAP_DMMDMM SPEC: +DMM is split into two parts. First we have strings of text linked to lists of paths and their modifications (I will call this the cache) +We call these strings "keys" and the things they point to members. Keys have a static length
MAP_TGMTGM SPEC: +TGM is a derevation of DMM, with restrictions placed on it +to make it easier to parse and to reduce merge conflicts/ease their resolution
/proc/load_mapHelper and recommened way to load a map file

Define Details

+

MAP_DMM + + +

+

DMM SPEC: +DMM is split into two parts. First we have strings of text linked to lists of paths and their modifications (I will call this the cache) +We call these strings "keys" and the things they point to members. Keys have a static length

+

The second part is a list of locations matched to a string of keys. (I'll be calling this the grid) +These are used to lookup the cache we built earlier. +We store location lists as grid_sets. the lines represent different things depending on the spec

+

In standard DMM (which you can treat as the base case, since it also covers weird modifications) each line +represents an x file, and there's typically only one grid set per z level. +The meme is you can look at a DMM formatted map and literally see what it should roughly look like +This differs in TGM, and we can pull some performance from this

+

Any restrictions here also apply to TGM

+

/tg/ Restrictions: +Paths have a specified order. First atoms in the order in which they should be loaded, then a single turf, then the area of the cell +DMM technically supports turf stacking, but this is deprecated for all formats

MAP_TGM + + +

+

TGM SPEC: +TGM is a derevation of DMM, with restrictions placed on it +to make it easier to parse and to reduce merge conflicts/ease their resolution

+

Requirements: +Each "statement" in a key's details ends with a new line, and wrapped in (...) +All paths end with either a comma or occasionally a {, then a new line +Excepting the area, who is listed last and ends with a ) to mark the end of the key

+

{} denotes a list of variable edits applied to the path that came before the first { +the final } is followed by a comma, and then a new line +Variable edits have the form \tname = value;\n +Except the last edit, which has no final ;, and just ends in a newline +No extra padding is permitted +Many values are supported. See parse_constant() +Strings must be wrapped in "...", files in '...', and lists in list(...) +Files are kinda susy, and may not actually work. buyer beware +Lists support assoc values as expected +These constants can be further embedded into lists

+

There can be no padding in front of, or behind a path

+

Therefore: +"key" = ( +/path, +/other/path{ +var = list("name" = 'filepath'); +other_var = /path +}, +/turf, +/area)

+ + + diff --git a/code/modules/mapping/space_management/space_reservation.html b/code/modules/mapping/space_management/space_reservation.html new file mode 100644 index 000000000000..f0c07907ff7c --- /dev/null +++ b/code/modules/mapping/space_management/space_reservation.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mapping/space_management/space_reservation.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mapping/space_management/space_reservation.dm + +

+ + +
/area/misc/cordonCordon area surrounding turf reservations
+ + + diff --git a/code/modules/mapping/verify.html b/code/modules/mapping/verify.html new file mode 100644 index 000000000000..4ab9289ebeb8 --- /dev/null +++ b/code/modules/mapping/verify.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mapping/verify.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mapping/verify.dm + +

+ + +
/datum/map_reportAn error report generated by [parsed_map/check_for_errors].
+ + + diff --git a/code/modules/maptext_alerts/text_blurbs.html b/code/modules/maptext_alerts/text_blurbs.html new file mode 100644 index 000000000000..41a66243cdd1 --- /dev/null +++ b/code/modules/maptext_alerts/text_blurbs.html @@ -0,0 +1,37 @@ + + + + + + + code/modules/maptext_alerts/text_blurbs.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/maptext_alerts/text_blurbs.dm + +

+ + + + + + + +
/proc/show_location_blurbReads out a description of game time, game date, main ship and current area. Originally for displaying roundstart messages on a conventional SS13 server.
/proc/show_blurb_uscmShows operation start blurb to living marines. Slightly different for squad marines, pilots, and deploying ship crew/passengers. +exempt_ztraits = trait or list of traits of zlevels where any marines don't see the message, ex. marine faction survivors colonyside +shouldn't see the ship marines' drop message. Ex. ZTRAIT_GROUND by default. +unit = the unit the marines are from. FF, Dust Raiders etc. Military crew see this. +base = the base the marines are staging from. The ship, Whiskey Outpost etc. Noncombat crew see this.
/proc/show_blurb*Shows a ticker reading out the given text on a client's screen. +targets = mob or list of mobs to show it to.
+ + + diff --git a/code/modules/mob/language/languages.html b/code/modules/mob/language/languages.html new file mode 100644 index 000000000000..4c126b992c7b --- /dev/null +++ b/code/modules/mob/language/languages.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/language/languages.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/language/languages.dm + +

+ + +
/datum/language/event_hivemindFont size
+ + + diff --git a/code/modules/mob/living/carbon/human/species/human.html b/code/modules/mob/living/carbon/human/species/human.html new file mode 100644 index 000000000000..772621dd62a7 --- /dev/null +++ b/code/modules/mob/living/carbon/human/species/human.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/mob/living/carbon/human/species/human.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/carbon/human/species/human.dm + +

+ + +
/datum/species/humanThe blood volume turned into a %, with BLOOD_VOLUME_NORMAL being 100% +How much oxyloss will there be from the next time blood processes +The limit of the oxyloss gained, ignoring oxyloss from the switch statement
+ + + diff --git a/code/modules/mob/living/carbon/human/species/zombie.html b/code/modules/mob/living/carbon/human/species/zombie.html new file mode 100644 index 000000000000..8e83c24fbf29 --- /dev/null +++ b/code/modules/mob/living/carbon/human/species/zombie.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/mob/living/carbon/human/species/zombie.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/mob/living/carbon/human/species/zombie.dm + +

+ + +
ZOMBIE_REVIVE_TIMETime until a zombie rises from the dead

Define Details

+

ZOMBIE_REVIVE_TIME + + +

+

Time until a zombie rises from the dead

+ + + diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/boiler/boiler_abilities.html b/code/modules/mob/living/carbon/xenomorph/abilities/boiler/boiler_abilities.html new file mode 100644 index 000000000000..00decf7590d4 --- /dev/null +++ b/code/modules/mob/living/carbon/xenomorph/abilities/boiler/boiler_abilities.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/carbon/xenomorph/abilities/boiler/boiler_abilities.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/carbon/xenomorph/abilities/boiler/boiler_abilities.dm + +

+ + +
/datum/action/xeno_action/activable/boiler_trapTrapper boiler abilities
+ + + diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/praetorian/praetorian_abilities.html b/code/modules/mob/living/carbon/xenomorph/abilities/praetorian/praetorian_abilities.html new file mode 100644 index 000000000000..9b0dc847958e --- /dev/null +++ b/code/modules/mob/living/carbon/xenomorph/abilities/praetorian/praetorian_abilities.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/mob/living/carbon/xenomorph/abilities/praetorian/praetorian_abilities.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/carbon/xenomorph/abilities/praetorian/praetorian_abilities.dm + +

+ + + + + + +
/datum/action/xeno_action/activable/pierceAbilities PRIMARILY used by Praetorian. +////// VANGUARD ABILITIES
/datum/action/xeno_action/activable/tail_stab/tail_seizeOppressor powers
/datum/action/xeno_action/activable/prae_impaleDancer Abilities
/datum/action/xeno_action/activable/pounce/base_prae_dashBASE PRAE
/datum/action/xeno_action/activable/spray_acid/prae_wardenWARDEN PRAE
+ + + diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/ravager/ravager_abilities.html b/code/modules/mob/living/carbon/xenomorph/abilities/ravager/ravager_abilities.html new file mode 100644 index 000000000000..956acb6e94b9 --- /dev/null +++ b/code/modules/mob/living/carbon/xenomorph/abilities/ravager/ravager_abilities.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mob/living/carbon/xenomorph/abilities/ravager/ravager_abilities.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/carbon/xenomorph/abilities/ravager/ravager_abilities.dm + +

+ + + +
/datum/action/xeno_action/onclick/apprehendBERSERKER ACTIONS
/datum/action/xeno_action/onclick/spike_shieldHEDGEHOG ABILITIES
+ + + diff --git a/code/modules/mob/living/carbon/xenomorph/update_icons.html b/code/modules/mob/living/carbon/xenomorph/update_icons.html new file mode 100644 index 000000000000..9dc4df6a4ba6 --- /dev/null +++ b/code/modules/mob/living/carbon/xenomorph/update_icons.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/carbon/xenomorph/update_icons.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/carbon/xenomorph/update_icons.dm + +

+ + +
/atom/movable/vis_objUsed to display the xeno wounds/backpacks without rapidly switching overlays
+ + + diff --git a/code/modules/mob/living/living_healthscan.html b/code/modules/mob/living/living_healthscan.html new file mode 100644 index 000000000000..cc865912c907 --- /dev/null +++ b/code/modules/mob/living/living_healthscan.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/living_healthscan.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/living_healthscan.dm + +

+ + +
/datum/health_scanvars reffing this on /mob/dead/observer, /obj/item/device/healthanalyzer, /obj/structure/machinery/cm_vending/sorted/medical, /obj/structure/machinery/body_scanconsole are called last_health_display
+ + + diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/giant_lizard.html b/code/modules/mob/living/simple_animal/hostile/retaliate/giant_lizard.html new file mode 100644 index 000000000000..4971a0836a66 --- /dev/null +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/giant_lizard.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/simple_animal/hostile/retaliate/giant_lizard.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/simple_animal/hostile/retaliate/giant_lizard.dm + +

+ + +
/datum/emote/living/giant_lizardCLIENT EMOTES
+ + + diff --git a/code/modules/mob/mob_helpers.html b/code/modules/mob/mob_helpers.html new file mode 100644 index 000000000000..17ef3a00b91c --- /dev/null +++ b/code/modules/mob/mob_helpers.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/mob/mob_helpers.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/mob_helpers.dm + +

+ + + + + +
/proc/stars_decode_htmlSummary: proc that parses an html input string and scrambles the non-html string contents.
/proc/lisp_replaceReplaces S and similar sounds with 'th' and such. Stolen from tg.
+ + + diff --git a/code/modules/nightmare/nmcontext.html b/code/modules/nightmare/nmcontext.html new file mode 100644 index 000000000000..68d3902196cf --- /dev/null +++ b/code/modules/nightmare/nmcontext.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/nightmare/nmcontext.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/nightmare/nmcontext.dm + +

+ + + +
/datum/nmcontextContext within which we resolve nightmare actions
/datum/nmcontext/mapContext belonging to a map scope (ground map, ship map, etc)
+ + + diff --git a/code/modules/nightmare/nmnodes/components.html b/code/modules/nightmare/nmnodes/components.html new file mode 100644 index 000000000000..3c7af5ddd7c4 --- /dev/null +++ b/code/modules/nightmare/nmnodes/components.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/nightmare/nmnodes/components.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/nightmare/nmnodes/components.dm + +

+ + + +
/datum/component/nmnode_condApplies to a /datum/nmnode to enforce scenario constraints
/datum/element/nmnode_probAdds a probability to skip the node
+ + + diff --git a/code/modules/nightmare/nmnodes/flow.html b/code/modules/nightmare/nmnodes/flow.html new file mode 100644 index 000000000000..24d41fddad97 --- /dev/null +++ b/code/modules/nightmare/nmnodes/flow.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/nightmare/nmnodes/flow.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/nightmare/nmnodes/flow.dm + +

+ + + + +
/datum/nmnode/branchHolding node for several child nodes
/datum/nmnode/branch/includeSame as branch, but load node data from another included file
/datum/nmnode/pickerSame as branch, but selects a subset of the given nodes +amount: how many items to pick +choices: nested nodes to pick from +each node should have a 'weight' key if you want to use weighted pick
+ + + diff --git a/code/modules/nightmare/nmnodes/mapload.html b/code/modules/nightmare/nmnodes/mapload.html new file mode 100644 index 000000000000..9de6a2d0d3c9 --- /dev/null +++ b/code/modules/nightmare/nmnodes/mapload.html @@ -0,0 +1,38 @@ + + + + + + + code/modules/nightmare/nmnodes/mapload.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/nightmare/nmnodes/mapload.dm + +

+ + + + + +
/datum/nmnode/maploadAbstract config node designating a map insertion
/datum/nmnode/mapload/landmarkDesignates insert of a given map file at a specified landmark
/datum/nmnode/mapload/variationsInserts a map file among a set of variations in a folder +param: path: some/folder/, landmark +files within should be named with a prefix indicating weighting: +some/folder/20.destroyed.dmm +some/folder/50.spaced.dmm +using + instead of dot means to keep map contents, eg. +some/folder/20+extras.dmm is added on top
/datum/nmnode/mapload/sprinklesSimilar to variations mode, but rolls all files individually rather +than picking one, using name for landmark. The prefix number is used +as a percentage chance.
+ + + diff --git a/code/modules/nightmare/nmnodes/nmnode.html b/code/modules/nightmare/nmnodes/nmnode.html new file mode 100644 index 000000000000..0bef0144b7a0 --- /dev/null +++ b/code/modules/nightmare/nmnodes/nmnode.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/nightmare/nmnodes/nmnode.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/nightmare/nmnodes/nmnode.dm + +

+ + +
/datum/nmnodeDecriptive nightmare config nodes loaded from config files
+ + + diff --git a/code/modules/nightmare/nmtasks/mapload.html b/code/modules/nightmare/nmtasks/mapload.html new file mode 100644 index 000000000000..63590090fb51 --- /dev/null +++ b/code/modules/nightmare/nmtasks/mapload.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/nightmare/nmtasks/mapload.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/nightmare/nmtasks/mapload.dm + +

+ + +
/datum/nmtask/maploadLoads a chunk of map at the specified position
+ + + diff --git a/code/modules/nightmare/nmtasks/mapscheduler.html b/code/modules/nightmare/nmtasks/mapscheduler.html new file mode 100644 index 000000000000..f90b358172fc --- /dev/null +++ b/code/modules/nightmare/nmtasks/mapscheduler.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/nightmare/nmtasks/mapscheduler.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/nightmare/nmtasks/mapscheduler.dm + +

+ + +
/datum/nmtask/scheduler/maploadHandles map insertions sequentially and updating the game to match map insertions
+ + + diff --git a/code/modules/nightmare/nmtasks/nmtask.html b/code/modules/nightmare/nmtasks/nmtask.html new file mode 100644 index 000000000000..d1c89d2df74b --- /dev/null +++ b/code/modules/nightmare/nmtasks/nmtask.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/nightmare/nmtasks/nmtask.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/nightmare/nmtasks/nmtask.dm + +

+ + +
/datum/nmtaskNightmare task, executing game actions as part of context
+ + + diff --git a/code/modules/nightmare/nmtasks/scheduler.html b/code/modules/nightmare/nmtasks/scheduler.html new file mode 100644 index 000000000000..99707559a70d --- /dev/null +++ b/code/modules/nightmare/nmtasks/scheduler.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/nightmare/nmtasks/scheduler.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/nightmare/nmtasks/scheduler.dm + +

+ + +
/datum/nmtask/schedulerSimple blocking executor to execute several tasks in a row
+ + + diff --git a/code/modules/paperwork/paperbin.html b/code/modules/paperwork/paperbin.html new file mode 100644 index 000000000000..e744a0cea132 --- /dev/null +++ b/code/modules/paperwork/paperbin.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/paperwork/paperbin.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/paperwork/paperbin.dm + +

+ + +
/obj/item/form_printerRelic from the days of cyborgs, kept for flavour, an handheld paper +dispenser that was supposed to print pre-filled forms but never did.
+ + + diff --git a/code/modules/paperwork/photocopier.html b/code/modules/paperwork/photocopier.html new file mode 100644 index 000000000000..bdd9d02ba679 --- /dev/null +++ b/code/modules/paperwork/photocopier.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/paperwork/photocopier.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/paperwork/photocopier.dm + +

+ + + + +
/obj/structure/machinery/photocopierNormal Photocopier, made by Seegson
/obj/structure/machinery/photocopier/wyphotocopierUpgraded photocopier, straight upgrade from the normal photocopier, made by Weyland-Yutani
/obj/item/device/tonerThe actual toner cartridge used in photcopiers
+ + + diff --git a/code/modules/paperwork/photography.html b/code/modules/paperwork/photography.html new file mode 100644 index 000000000000..f03cfa67b665 --- /dev/null +++ b/code/modules/paperwork/photography.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/paperwork/photography.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/paperwork/photography.dm + +

+ + +
/datum/picturePicture metadata
+ + + diff --git a/code/modules/power/apc.html b/code/modules/power/apc.html new file mode 100644 index 000000000000..c14845f503a2 --- /dev/null +++ b/code/modules/power/apc.html @@ -0,0 +1,42 @@ + + + + + + + code/modules/power/apc.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/power/apc.dm + +

+ + + + +
APC_NOT_CHARGINGThe APC is not charging.
APC_CHARGINGThe APC is charging.
APC_FULLY_CHARGEDThe APC is fully charged.

Define Details

+

APC_CHARGING + + +

+

The APC is charging.

APC_FULLY_CHARGED + + +

+

The APC is fully charged.

APC_NOT_CHARGING + + +

+

The APC is not charging.

+ + + diff --git a/code/modules/projectiles/gun_helpers.html b/code/modules/projectiles/gun_helpers.html new file mode 100644 index 000000000000..568dafec262d --- /dev/null +++ b/code/modules/projectiles/gun_helpers.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/projectiles/gun_helpers.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/projectiles/gun_helpers.dm + +

+ + + +
/proc/get_turf_on_clickcatcherHelper proc that processes a clicked target, if the target is not black tiles, it will not change it. If they are it will return the turf of the black tiles. It will return null if the object is a screen object other than black tiles.
+ + + diff --git a/code/modules/projectiles/magazines/revolvers.html b/code/modules/projectiles/magazines/revolvers.html new file mode 100644 index 000000000000..36d69b00203a --- /dev/null +++ b/code/modules/projectiles/magazines/revolvers.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/projectiles/magazines/revolvers.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/projectiles/magazines/revolvers.dm + +

+ + + + +
/obj/item/ammo_magazine/revolver/pkdCOLONY REVOLVERS
/obj/item/ammo_magazine/revolver/matebaMATEBA REVOLVER
/obj/item/ammo_magazine/revolver/webleyWEBLEY REVOLVER
+ + + diff --git a/code/modules/reagents/chemical_research/generated_reagents.html b/code/modules/reagents/chemical_research/generated_reagents.html new file mode 100644 index 000000000000..cd2051eb9bb3 --- /dev/null +++ b/code/modules/reagents/chemical_research/generated_reagents.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/reagents/chemical_research/generated_reagents.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/chemical_research/generated_reagents.dm + +

+ + + + + +
/datum/chemical_reaction/generated/alphaTier 1
/datum/chemical_reaction/generated/zetaTier 2
/datum/chemical_reaction/generated/iotaTier 3
/datum/chemical_reaction/generated/lambdaTier 4
+ + + diff --git a/code/modules/reagents/chemistry_reactions/food_drink.html b/code/modules/reagents/chemistry_reactions/food_drink.html new file mode 100644 index 000000000000..98d4d2fa0ebe --- /dev/null +++ b/code/modules/reagents/chemistry_reactions/food_drink.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/chemistry_reactions/food_drink.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/chemistry_reactions/food_drink.dm + +

+ + +
/datum/chemical_reaction/sbitenDRINKS THAT REQUIRED IMPROVED SPRITES BELOW:: -Agouri
+ + + diff --git a/code/modules/reagents/chemistry_reagents/medical.html b/code/modules/reagents/chemistry_reagents/medical.html new file mode 100644 index 000000000000..48b681bc68b9 --- /dev/null +++ b/code/modules/reagents/chemistry_reagents/medical.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/chemistry_reagents/medical.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/chemistry_reagents/medical.dm + +

+ + +
/datum/reagent/medical/antidepressant/methylphenidateANTIDEPRESSANTS
+ + + diff --git a/code/modules/recycling/disposal.html b/code/modules/recycling/disposal.html new file mode 100644 index 000000000000..e9b592967d1c --- /dev/null +++ b/code/modules/recycling/disposal.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/recycling/disposal.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/recycling/disposal.dm + +

+ + +
/obj/structure/disposalholderVirtual disposal object, travels through pipes in lieu of actual items +Contents will be items flushed by the disposal, this allows the gas flushed to be tracked
+ + + diff --git a/code/modules/shuttle/helpers.html b/code/modules/shuttle/helpers.html new file mode 100644 index 000000000000..7ba42d57db2a --- /dev/null +++ b/code/modules/shuttle/helpers.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/shuttle/helpers.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/shuttle/helpers.dm + +

+ + + +
/datum/door_controller/aggregateDatum containing methods to allow for the control over multiple door groups.
/datum/door_controller/singleDatum containing methods to allow for the control over a single door group.
+ + + diff --git a/code/modules/shuttle/shuttles.html b/code/modules/shuttle/shuttles.html new file mode 100644 index 000000000000..13afd0716a34 --- /dev/null +++ b/code/modules/shuttle/shuttles.html @@ -0,0 +1,56 @@ + + + + + + + code/modules/shuttle/shuttles.md - byond + + +
+ byond - + Modules - + Types +
+
+

Shuttle Module + +

+ + +

Heres some notes which help understand what is going on.

+

A shuttle is split into two docking ports: a mobile one, which is the shuttle itself, and the stationary one - where the shuttle can come to a rest.

+

The map template /datum/map_template/shuttle/ert1 - give it a unique name and the shuttle_id parameter is the map name you are using for the shuttle.

+

The map template shuttle_id points to the file in folder maps\shuttles. It also refers to the id variable in the mobile docking port. The best way to resolve this is using a define in code\__DEFINES\shuttles.dm.

+Shuttle map templates +

Shuttle map templates are used to define what the shuttle should look like.

+Shuttle dimensions +

When defining the shuttle dimensions, define the height/width as if it was orienting north. The subsystem will properly line everything up, this allows for stationary docks to be in different orientations to their defined map template.

+

A shuttle has a height, width, dheight and dwidth. The height and width is the size of the shuttle, with respect to its direction. If the template direction is North/South then width is your X coordinate and height is your Y. If the template direction is East/West then width is your Y direction and height is your X. On stationary docking ports, you can specify dwidth and dheight (auto generated for mobile), these are offsets for how your shuttle should land on the site. When a mobile port lands on a stationary port it wants to place the bottom left of the shuttle turfs on the stationary port. The dwidth/dheight allows you to offset this.

+Generic Elevator Shuttle +

The elevator used on Trijent (DesertDam) can be used in any map and multiple can exist on one map.

+

Do not modify the trident shuttle map. You can code in elevators from the following two docking ports (where the elevator can go):

+
    +
  • /obj/docking_port/stationary/trijent_elevator/occupied
  • +
  • /obj/docking_port/stationary/trijent_elevator/empty
  • +
+

An occupied stationary port will start the map with an elevator and an empty one will not. +All docking ports are, by default, linked together. One elevator can go to all docking ports. +To limit access between docking ports you can use tags.

+

To setup an elevator:

+
    +
  • place the docking port where you want the elevator to sit
  • +
  • give the docking port instance a unique ID
  • +
  • give the docking port instance a unique Name
  • +
  • make sure the door direction is correct west/east
  • +
  • give the docking port shuttle_area the area name for where it sits
  • +
  • if you want to build a docking port 'network' then change the roudnstart_template to a subclass
  • +
  • if you want to assign a docking port to a 'network' then give it a value in "tag"
  • +
+

If things are unclear, look at trident. It has two elevator networks.

+ + + diff --git a/code/modules/shuttle/shuttles/crashable/lifeboats.html b/code/modules/shuttle/shuttles/crashable/lifeboats.html new file mode 100644 index 000000000000..b13c97141fc7 --- /dev/null +++ b/code/modules/shuttle/shuttles/crashable/lifeboats.html @@ -0,0 +1,34 @@ + + + + + + + code/modules/shuttle/shuttles/crashable/lifeboats.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/shuttle/shuttles/crashable/lifeboats.dm + +

+ + + + + + + + + +
/obj/docking_port/mobile/crashable/lifeboatGeneric Lifeboat definition
/obj/docking_port/mobile/crashable/lifeboat/portPort Aft Lifeboat (bottom-right, doors on its left side)
/obj/docking_port/mobile/crashable/lifeboat/starboardStarboard Aft Lifeboat (top-right, doors its right side)
/obj/docking_port/stationary/lifeboat_dockGeneric lifeboat dock
/obj/docking_port/stationary/lifeboat_dock/portPort Aft Lifeboat default dock
/obj/docking_port/stationary/lifeboat_dock/starboardPort Aft Lifeboat default dock
/datum/map_template/shuttle/lifeboat_portPort-door lifeboat, bow east
/datum/map_template/shuttle/lifeboat_starboardStarboard-door lifeboat, bow east
+ + + diff --git a/code/modules/surgery/surgery_initiator.html b/code/modules/surgery/surgery_initiator.html new file mode 100644 index 000000000000..eff34c0346dc --- /dev/null +++ b/code/modules/surgery/surgery_initiator.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/surgery/surgery_initiator.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/surgery/surgery_initiator.dm + +

+ + + +
/proc/initiate_surgery_momentDoes the surgery initiation. Returns TRUE if the triggering attack should be halted.
+ + + diff --git a/code/modules/surgery/surgery_procedure.html b/code/modules/surgery/surgery_procedure.html new file mode 100644 index 000000000000..069bfbe552d6 --- /dev/null +++ b/code/modules/surgery/surgery_procedure.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/surgery/surgery_procedure.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/surgery/surgery_procedure.dm + +

+ + +
/datum/surgeryBase surgery datum and procs. There is an important distinction between surgery datums and surgery steps. +The surgery is a separate instance for each individual operation; the steps are shared globally. +datum/surgery and datum/surgery_step are intertwined. The surgery calls the step which modifies the surgery. +Defines are in __DEFINES/human.dm and __DEFINES/surgery.dm.
+ + + diff --git a/code/modules/tents/blockers.html b/code/modules/tents/blockers.html new file mode 100644 index 000000000000..a50b98ffee68 --- /dev/null +++ b/code/modules/tents/blockers.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/tents/blockers.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tents/blockers.dm + +

+ + +
/obj/structure/blocker/tentInvisible Blocker Walls, they link up with the main tent and collapse with it
+ + + diff --git a/code/modules/tents/deployed_tents.html b/code/modules/tents/deployed_tents.html new file mode 100644 index 000000000000..647985f21771 --- /dev/null +++ b/code/modules/tents/deployed_tents.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/tents/deployed_tents.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tents/deployed_tents.dm + +

+ + + + + +
/obj/structure/tentStructures serving as landmarks and providing a buff to its users. +A notable code feature is that they use a separate roof image that phases out when you enter the tent.
/obj/structure/tent/cmdCommand tent, providing basics for field command: a phone, and an overwatch console
/obj/structure/tent/medMedical tent, procures a buff to surgery speed
/obj/structure/tent/bigBig Tent. It's just Big. Use it for shelter or organization!
+ + + diff --git a/code/modules/tents/equipment.html b/code/modules/tents/equipment.html new file mode 100644 index 000000000000..9302a571580a --- /dev/null +++ b/code/modules/tents/equipment.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/tents/equipment.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tents/equipment.dm + +

+ + + + + + + +
/datum/component/tent_powered_machineComponent to handle power requirements following removal of the tent
/datum/component/tent_supported_objectComponent to handle destruction of objects following removal of the tent
/obj/structure/transmitter/tentTelephone
/obj/structure/machinery/computer/ordercomp/tentASRS request console
/obj/structure/machinery/cm_vending/sorted/medical/wall_med/tentNanoMED
/obj/structure/tent_curtainCloseable curtains
+ + + diff --git a/code/modules/tgchat/message.html b/code/modules/tgchat/message.html new file mode 100644 index 000000000000..c2e0356a39d7 --- /dev/null +++ b/code/modules/tgchat/message.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgchat/message.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgchat/message.dm + +

+ + + +
/proc/message_to_htmlMessage-related procs
+ + + diff --git a/code/modules/tgchat/to_chat.html b/code/modules/tgchat/to_chat.html new file mode 100644 index 000000000000..1b993c84d9a8 --- /dev/null +++ b/code/modules/tgchat/to_chat.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/tgchat/to_chat.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgchat/to_chat.dm + +

+ + + + + + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

/proc/to_chat_immediateCircumvents the message queue and sends the message +to the recipient (target) as soon as possible.
/proc/to_chatSends the message to the recipient (target).
+ + + diff --git a/code/modules/tgs.html b/code/modules/tgs.html new file mode 100644 index 000000000000..7daedf90899b --- /dev/null +++ b/code/modules/tgs.html @@ -0,0 +1,40 @@ + + + + + + + code/modules/tgs/README.md - byond + + +
+ byond - + Modules - + Types +
+
+

DMAPI Internals + +

+ + +

This folder should be placed on its own inside a codebase that wishes to use the TGS DMAPI. Warranty void if modified.

+
    +
  • includes.dm is the file that should be included by DM code, it handles including the rest.
  • +
  • The core folder includes all code not directly part of any API version.
  • +
  • The other versioned folders contain code for the different DMAPI versions. +
      +
    • v3210 contains the final TGS3 API.
    • +
    • v4 is the legacy DMAPI 4 (Used in TGS 4.0.X versions).
    • +
    • v5 is the current DMAPI version used by TGS >=4.1.
    • +
    +
  • +
  • LICENSE is the MIT license for the DMAPI.
  • +
+

APIs communicate with TGS in two ways. All versions implement TGS -> DM communication using /world/Topic. DM -> TGS communication, called the bridge method, is different for each version.

+ + + diff --git a/code/modules/tgs/core.html b/code/modules/tgs/core.html new file mode 100644 index 000000000000..cf25fb11f0ff --- /dev/null +++ b/code/modules/tgs/core.html @@ -0,0 +1,34 @@ + + + + + + + code/modules/tgs/core/README.md - byond + + +
+ byond - + Modules - + Types +
+
+

Core DMAPI functions + +

+ + +

This folder contains all DMAPI code not directly involved in an API.

+
    +
  • _definitions.dm contains defines needed across DMAPI internals.
  • +
  • byond_world_export.dm contains the default /datum/tgs_http_handler implementation which uses world.Export().
  • +
  • core.dm contains the implementations of the /world/proc/TgsXXX() procs. Many map directly to the /datum/tgs_api functions. It also contains the /datum selection and setup code.
  • +
  • datum.dm contains the /datum/tgs_api declarations that all APIs must implement.
  • +
  • tgs_version.dm contains the /datum/tgs_version definition
  • +
+ + + diff --git a/code/modules/tgs/v3210.html b/code/modules/tgs/v3210.html new file mode 100644 index 000000000000..ce9d0395f741 --- /dev/null +++ b/code/modules/tgs/v3210.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/tgs/v3210/README.md - byond + + +
+ byond - + Modules - + Types +
+
+

DMAPI V3 + +

+ + +

This DMAPI implements bridge using file output which TGS monitors for.

+
    +
  • api.dm contains the bulk of the API code.
  • +
  • commands.dm contains functions relating to /datum/tgs_chat_commands.
  • +
+ + + diff --git a/code/modules/tgs/v4.html b/code/modules/tgs/v4.html new file mode 100644 index 000000000000..31d4540eb3e4 --- /dev/null +++ b/code/modules/tgs/v4.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/tgs/v4/README.md - byond + + +
+ byond - + Modules - + Types +
+
+

DMAPI V4 + +

+ + +

This DMAPI implements bridge requests using file output which TGS monitors for. It has a safe mode restriction.

+
    +
  • api.dm contains the bulk of the API code.
  • +
  • commands.dm contains functions relating to /datum/tgs_chat_commands.
  • +
+ + + diff --git a/code/modules/tgs/v5.html b/code/modules/tgs/v5.html new file mode 100644 index 000000000000..bf7246c7960b --- /dev/null +++ b/code/modules/tgs/v5.html @@ -0,0 +1,38 @@ + + + + + + + code/modules/tgs/v5/README.md - byond + + +
+ byond - + Modules - + Types +
+
+

DMAPI V5 + +

+ + +

This DMAPI implements bridge requests using HTTP GET requests to TGS. It has no security restrictions.

+
    +
  • __interop_version.dm contains the version of the API used between the DMAPI and TGS.
  • +
  • _defines.dm contains constant definitions.
  • +
  • api.dm contains the bulk of the API code.
  • +
  • bridge.dm contains functions related to making bridge requests.
  • +
  • chunking.dm contains common function for splitting large raw data sets into chunks BYOND can natively process.
  • +
  • commands.dm contains functions relating to /datum/tgs_chat_commands.
  • +
  • serializers.dm contains function to help convert interop /datums into a JSON encodable list() format.
  • +
  • topic.dm contains functions related to processing topic requests.
  • +
  • undefs.dm Undoes the work of _defines.dm.
  • +
+ + + diff --git a/code/modules/tgui/external.html b/code/modules/tgui/external.html new file mode 100644 index 000000000000..911b9d6b40a4 --- /dev/null +++ b/code/modules/tgui/external.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/tgui/external.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/external.dm + +

+ + + + +

External tgui definitions, such as src_object APIs.

+

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

/proc/tgui_TopicMiddleware for /client/Topic.
+ + + diff --git a/code/modules/tgui/states.html b/code/modules/tgui/states.html new file mode 100644 index 000000000000..a5d89d40dae4 --- /dev/null +++ b/code/modules/tgui/states.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/tgui/states.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states.dm + +

+ + +

Base state and helpers for states. Just does some sanity checks, +implement a proper state for in-depth checks.

+

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/admin.html b/code/modules/tgui/states/admin.html new file mode 100644 index 000000000000..7fa4fb5dd1aa --- /dev/null +++ b/code/modules/tgui/states/admin.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/admin.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/admin.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/always.html b/code/modules/tgui/states/always.html new file mode 100644 index 000000000000..2f4049b4e4a8 --- /dev/null +++ b/code/modules/tgui/states/always.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/always.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/always.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/conscious.html b/code/modules/tgui/states/conscious.html new file mode 100644 index 000000000000..49ffc5844fb4 --- /dev/null +++ b/code/modules/tgui/states/conscious.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/conscious.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/conscious.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/contained.html b/code/modules/tgui/states/contained.html new file mode 100644 index 000000000000..9ca576a39b7e --- /dev/null +++ b/code/modules/tgui/states/contained.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/contained.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/contained.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/deep_inventory.html b/code/modules/tgui/states/deep_inventory.html new file mode 100644 index 000000000000..c92a92da9425 --- /dev/null +++ b/code/modules/tgui/states/deep_inventory.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/deep_inventory.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/deep_inventory.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/default.html b/code/modules/tgui/states/default.html new file mode 100644 index 000000000000..74f5ecab937c --- /dev/null +++ b/code/modules/tgui/states/default.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/default.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/default.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/hands.html b/code/modules/tgui/states/hands.html new file mode 100644 index 000000000000..e389cf6d42c4 --- /dev/null +++ b/code/modules/tgui/states/hands.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/hands.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/hands.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/human_adjacent.html b/code/modules/tgui/states/human_adjacent.html new file mode 100644 index 000000000000..b3f955ad869b --- /dev/null +++ b/code/modules/tgui/states/human_adjacent.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/human_adjacent.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/human_adjacent.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/inventory.html b/code/modules/tgui/states/inventory.html new file mode 100644 index 000000000000..75845844a887 --- /dev/null +++ b/code/modules/tgui/states/inventory.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/inventory.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/inventory.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/never.html b/code/modules/tgui/states/never.html new file mode 100644 index 000000000000..64b3a49612be --- /dev/null +++ b/code/modules/tgui/states/never.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/never.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/never.dm + +

+ + +

Copyright (c) 2021 Arm A. Hammer +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/not_incapacitated.html b/code/modules/tgui/states/not_incapacitated.html new file mode 100644 index 000000000000..7925ca289561 --- /dev/null +++ b/code/modules/tgui/states/not_incapacitated.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/not_incapacitated.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/not_incapacitated.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/not_incapacitated_and_inventory.html b/code/modules/tgui/states/not_incapacitated_and_inventory.html new file mode 100644 index 000000000000..9a93f2e0b7ca --- /dev/null +++ b/code/modules/tgui/states/not_incapacitated_and_inventory.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/not_incapacitated_and_inventory.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/not_incapacitated_and_inventory.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/notcontained.html b/code/modules/tgui/states/notcontained.html new file mode 100644 index 000000000000..1a16a57da963 --- /dev/null +++ b/code/modules/tgui/states/notcontained.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/notcontained.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/notcontained.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/observer.html b/code/modules/tgui/states/observer.html new file mode 100644 index 000000000000..bd8b450ede42 --- /dev/null +++ b/code/modules/tgui/states/observer.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/observer.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/observer.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/physical.html b/code/modules/tgui/states/physical.html new file mode 100644 index 000000000000..9519b2879486 --- /dev/null +++ b/code/modules/tgui/states/physical.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/physical.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/physical.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/reverse_contained.html b/code/modules/tgui/states/reverse_contained.html new file mode 100644 index 000000000000..758f1077666c --- /dev/null +++ b/code/modules/tgui/states/reverse_contained.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/tgui/states/reverse_contained.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/reverse_contained.dm + +

+ + +

Not copyrighted, but magatsuchi made it.

+ + + diff --git a/code/modules/tgui/states/self.html b/code/modules/tgui/states/self.html new file mode 100644 index 000000000000..4ccad8fbaf2a --- /dev/null +++ b/code/modules/tgui/states/self.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/self.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/self.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/zlevel.html b/code/modules/tgui/states/zlevel.html new file mode 100644 index 000000000000..dab1d2bed993 --- /dev/null +++ b/code/modules/tgui/states/zlevel.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/zlevel.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/zlevel.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/status_composers.html b/code/modules/tgui/status_composers.html new file mode 100644 index 000000000000..17cb63394e71 --- /dev/null +++ b/code/modules/tgui/status_composers.html @@ -0,0 +1,46 @@ + + + + + + + code/modules/tgui/status_composers.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/status_composers.dm + +

+ + + + + + + + + + + + + +
/proc/default_ui_stateThe sane defaults for a UI such as a computer or a machine.
/proc/ui_status_user_is_adjacentReturns a UI status such that users adjacent to source will be able to interact, +far away users will be able to see, and anyone farther won't see anything. +Dead users will receive updates no matter what, though you likely want to add +a [ui_status_only_living] check for finer observer interactions.
/proc/ui_status_only_livingReturns a UI status such that the dead will be able to watch, but not interact.
/proc/ui_status_user_is_abledReturns a UI status such that users with debilitating conditions, such as +being dead or not having power for silicons, will not be able to interact. +Being dead will disable UI, being incapacitated will continue updating it, +and anything else will make it interactive.
/proc/ui_status_user_is_advanced_tool_userReturns a UI status such that advanced tool users will be able to interact, +but everyone else can only watch.
/proc/ui_status_user_strictly_adjacentReturn UI_INTERACTIVE if the user is strictly adjacent to the target atom, whether they can see it or not. +Return UI_CLOSE otherwise.
+ + + diff --git a/code/modules/tgui/tgui-say/modal.html b/code/modules/tgui/tgui-say/modal.html new file mode 100644 index 000000000000..fe774ee3e6b1 --- /dev/null +++ b/code/modules/tgui/tgui-say/modal.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/tgui/tgui-say/modal.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/tgui-say/modal.dm + +

+ + +
/datum/tgui_sayThe tgui say modal. This initializes an input window which hides until +the user presses one of the speech hotkeys. Once something is entered, it will +delegate the speech to the proper channel.
+ + + diff --git a/code/modules/tgui/tgui.html b/code/modules/tgui/tgui.html new file mode 100644 index 000000000000..3ca21b8ec1c6 --- /dev/null +++ b/code/modules/tgui/tgui.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/tgui/tgui.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/tgui.dm + +

+ + + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

/datum/tguitgui datum (represents a UI).
+ + + diff --git a/code/modules/tgui/tgui_alert.html b/code/modules/tgui/tgui_alert.html new file mode 100644 index 000000000000..d47905b63a7a --- /dev/null +++ b/code/modules/tgui/tgui_alert.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/tgui/tgui_alert.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/tgui_alert.dm + +

+ + + + + + + +
/proc/tgui_alertCreates a TGUI alert window and returns the user's response.
/proc/tgui_alert_asyncCreates an asynchronous TGUI alert window with an associated callback.
/datum/tgui_modalDatum used for instantiating and using a TGUI-controlled modal that prompts the user with +a message and has buttons for responses.
/datum/tgui_modal/asyncAn asynchronous version of tgui_modal to be used with callbacks instead of waiting on user responses.
+ + + diff --git a/code/modules/tgui/tgui_input_list.html b/code/modules/tgui/tgui_input_list.html new file mode 100644 index 000000000000..18a8dbe0229e --- /dev/null +++ b/code/modules/tgui/tgui_input_list.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/tgui/tgui_input_list.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/tgui_input_list.dm + +

+ + + + + + + +
/proc/tgui_input_listCreates a TGUI input list window and returns the user's response.
/proc/tgui_input_list_asyncCreates an asynchronous TGUI input list window with an associated callback.
/datum/tgui_list_inputDatum used for instantiating and using a TGUI-controlled list input that prompts the user with +a message and shows a list of selectable options
/datum/tgui_list_input/asyncAn asynchronous version of tgui_list_input to be used with callbacks instead of waiting on user responses.
+ + + diff --git a/code/modules/tgui/tgui_number_input.html b/code/modules/tgui/tgui_number_input.html new file mode 100644 index 000000000000..4dea91ede8f5 --- /dev/null +++ b/code/modules/tgui/tgui_number_input.html @@ -0,0 +1,35 @@ + + + + + + + code/modules/tgui/tgui_number_input.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/tgui_number_input.dm + +

+ + + + + + + + + +
/proc/tgui_input_numberCreates a TGUI window with a number input. Returns the user's response as num | null.
/proc/tgui_input_real_numberA clone of tgui_input_number that defaults to accepting negative inputs too.
/proc/tgui_input_number_asyncCreates an asynchronous TGUI number input window with an associated callback.
/datum/tgui_input_numberDatum used for instantiating and using a TGUI-controlled number input that prompts the user with +a message and has an input for number entry.
/datum/tgui_input_number/asyncAn asynchronous version of tgui_input_number to be used with callbacks instead of waiting on user responses.
+ + + diff --git a/code/modules/tgui/tgui_window.html b/code/modules/tgui/tgui_window.html new file mode 100644 index 000000000000..97dfe9f91c18 --- /dev/null +++ b/code/modules/tgui/tgui_window.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/tgui_window.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/tgui_window.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui_input/checkboxes.html b/code/modules/tgui_input/checkboxes.html new file mode 100644 index 000000000000..bb3daac0c404 --- /dev/null +++ b/code/modules/tgui_input/checkboxes.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/tgui_input/checkboxes.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui_input/checkboxes.dm + +

+ + + + + + + +
/proc/tgui_input_checkboxes
/proc/tgui_input_checkboxes_async
/datum/tgui_checkbox_inputWindow for tgui_input_checkboxes
/datum/tgui_checkbox_input/asyncAn asynchronous version of tgui_checkbox_input to be used with callbacks instead of waiting on user responses.
+ + + diff --git a/code/modules/tgui_input/text.html b/code/modules/tgui_input/text.html new file mode 100644 index 000000000000..df4164a1c657 --- /dev/null +++ b/code/modules/tgui_input/text.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/tgui_input/text.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui_input/text.dm + +

+ + + + +
/proc/tgui_input_textCreates a TGUI window with a text input. Returns the user's response.
/datum/tgui_input_texttgui_input_text
+ + + diff --git a/code/modules/tgui_panel/audio.html b/code/modules/tgui_panel/audio.html new file mode 100644 index 000000000000..1370735dfb26 --- /dev/null +++ b/code/modules/tgui_panel/audio.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui_panel/audio.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui_panel/audio.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui_panel/external.html b/code/modules/tgui_panel/external.html new file mode 100644 index 000000000000..9976f280e7d5 --- /dev/null +++ b/code/modules/tgui_panel/external.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui_panel/external.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui_panel/external.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui_panel/telemetry.html b/code/modules/tgui_panel/telemetry.html new file mode 100644 index 000000000000..d1cfb6ada768 --- /dev/null +++ b/code/modules/tgui_panel/telemetry.html @@ -0,0 +1,41 @@ + + + + + + + code/modules/tgui_panel/telemetry.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/tgui_panel/telemetry.dm + +

+ + + + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

TGUI_TELEMETRY_MAX_CONNECTIONSMaximum number of connection records allowed to analyze. +Should match the value set in the browser.
TGUI_TELEMETRY_RESPONSE_WINDOWMaximum time allocated for sending a telemetry packet.

Define Details

+

TGUI_TELEMETRY_MAX_CONNECTIONS + + +

+

Maximum number of connection records allowed to analyze. +Should match the value set in the browser.

TGUI_TELEMETRY_RESPONSE_WINDOW + + +

+

Maximum time allocated for sending a telemetry packet.

+ + + diff --git a/code/modules/tgui_panel/tgui_panel.html b/code/modules/tgui_panel/tgui_panel.html new file mode 100644 index 000000000000..d79ced18334c --- /dev/null +++ b/code/modules/tgui_panel/tgui_panel.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/tgui_panel/tgui_panel.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui_panel/tgui_panel.dm + +

+ + + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

/datum/tgui_paneltgui_panel datum +Hosts tgchat and other nice features.
+ + + diff --git a/code/modules/unit_tests.html b/code/modules/unit_tests.html new file mode 100644 index 000000000000..fab368385b58 --- /dev/null +++ b/code/modules/unit_tests.html @@ -0,0 +1,74 @@ + + + + + + + code/modules/unit_tests/README.md - byond + + +
+ byond - + Modules - + Types +
+
+

Unit Tests + +

+ + +
What is unit testing? +

Unit tests are automated code to verify that parts of the game work exactly as they should. For example, a test to make sure that the amputation surgery actually amputates the limb. These are ran every time a PR is made, and thus are very helpful for preventing bugs from cropping up in your code that would've otherwise gone unnoticed. For example, would you have thought to check that beach boys would still work the same after editing pizza? If you value your time, probably not.

+

On their most basic level, when UNIT_TESTS is defined, all subtypes of /datum/unit_test will have their Run proc executed. From here, if Fail is called at any point, then the tests will report as failed.

+How do I write one? +
    +
  1. Find a relevant file.
  2. +
+

All unit test related code is in code/modules/unit_tests. If you are adding a new test for a surgery, for example, then you'd open surgeries.dm. If a relevant file does not exist, simply create one in this folder, then #include it in _unit_tests.dm.

+
    +
  1. Create the unit test.
  2. +
+

To make a new unit test, you simply need to define a /datum/unit_test.

+

For example, let's suppose that we are creating a test to make sure a proc square correctly raises inputs to the power of two. We'd start with first:

+
/datum/unit_test/square/Run()
+
+

This defines our new unit test, /datum/unit_test/square. Inside this function, we're then going to run through whatever we want to check. Tests provide a few assertion functions to make this easy. For now, we're going to use TEST_ASSERT_EQUAL.

+
/datum/unit_test/square/Run()
+    TEST_ASSERT_EQUAL(square(3), 9, "square(3) did not return 9")
+    TEST_ASSERT_EQUAL(square(4), 16, "square(4) did not return 16")
+
+

As you can hopefully tell, we're simply checking if the output of square matches the output we are expecting. If the test fails, it'll report the error message given as well as whatever the actual output was.

+
    +
  1. Run the unit test
  2. +
+

Open code/_compile_options.dm and uncomment the following line.

+
//#define UNIT_TESTS			//If this is uncommented, we do a single run though of the game setup and tear down process with unit tests in between
+
+

Then, run tgstation.dmb in Dream Daemon. Don't bother trying to connect, you won't need to. You'll be able to see the outputs of all the tests. You'll get to see which tests failed and for what reason. If they all pass, you're set!

+How to think about tests +

Unit tests exist to prevent bugs that would happen in a real game. Thus, they should attempt to emulate the game world wherever possible. For example, the quick swap sanity test emulates a real scenario of the bug it fixed occurring by creating a character and giving it real items. The unrecommended alternative would be to create special test-only items. This isn't a hard rule, the reagent method exposure tests create a test-only reagent for example, but do keep it in mind.

+

Unit tests should also be just that--testing units of code. For example, instead of having one massive test for reagents, there are instead several smaller tests for testing exposure, metabolization, etc.

+The unit testing API +

You can find more information about all of these from their respective doc comments, but for a brief overview:

+

/datum/unit_test - The base for all tests to be ran. Subtypes must override Run(). New() and Destroy() can be used for setup and teardown. To fail, use TEST_FAIL(reason).

+

/datum/unit_test/proc/allocate(type, ...) - Allocates an instance of the provided type with the given arguments. Is automatically destroyed when the test is over. Commonly seen in the form of var/mob/living/carbon/human/human = allocate(/mob/living/carbon/human/consistent).

+

TEST_FAIL(reason) - Marks a failure at this location, but does not stop the test.

+

TEST_ASSERT(assertion, reason) - Stops the unit test and fails if the assertion is not met. For example: TEST_ASSERT(powered(), "Machine is not powered").

+

TEST_ASSERT_NOTNULL(a, message) - Same as TEST_ASSERT, but checks if !isnull(a). For example: TEST_ASSERT_NOTNULL(myatom, "My atom was never set!").

+

TEST_ASSERT_NULL(a, message) - Same as TEST_ASSERT, but checks if isnull(a). If not, gives a helpful message showing what a was. For example: TEST_ASSERT_NULL(delme, "Delme was never cleaned up!").

+

TEST_ASSERT_EQUAL(a, b, message) - Same as TEST_ASSERT, but checks if a == b. If not, gives a helpful message showing what both a and b were. For example: TEST_ASSERT_EQUAL(2 + 2, 4, "The universe is falling apart before our eyes!").

+

TEST_ASSERT_NOTEQUAL(a, b, message) - Same as TEST_ASSERT_EQUAL, but reversed.

+

TEST_FOCUS(test_path) - Only run the test provided within the parameters. Useful for reducing noise. For example, if we only want to run our example square test, we can add TEST_FOCUS(/datum/unit_test/square). Should never be pushed in a pull request--you will be laughed at.

+Final Notes +
    +
  • Writing tests before you attempt to fix the bug can actually speed up development a lot! It means you don't have to go in game and folllow the same exact steps manually every time. This process is known as "TDD" (test driven development). Write the test first, make sure it fails, then start work on the fix/feature, and you'll know you're done when your tests pass. If you do try this, do make sure to confirm in a non-testing environment just to double check.
  • +
  • Make sure that your tests don't accidentally call RNG functions like prob. Since RNG is seeded during tests, you may not realize you have until someone else makes a PR and the tests fail!
  • +
  • Do your best not to change the behavior of non-testing code during tests. While it may sometimes be necessary in the case of situations such as the above, it is still a slippery slope that can lead to the code you're testing being too different from the production environment to be useful.
  • +
+ + + diff --git a/code/modules/unit_tests/_unit_tests.html b/code/modules/unit_tests/_unit_tests.html new file mode 100644 index 000000000000..4315887121cd --- /dev/null +++ b/code/modules/unit_tests/_unit_tests.html @@ -0,0 +1,121 @@ + + + + + + + code/modules/unit_tests/_unit_tests.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/unit_tests/_unit_tests.dm + +

+ + + + + + + + + + + + + + + +
TEST_FAILFor advanced cases, fail unconditionally but don't return (so a test can return multiple results)
TEST_ASSERTAsserts that a condition is true +If the condition is not true, fails the test
TEST_ASSERT_NOTNULLAsserts that a parameter is not null
TEST_ASSERT_NULLAsserts that a parameter is null
TEST_ASSERT_EQUALAsserts that the two parameters passed are equal, fails otherwise +Optionally allows an additional message in the case of a failure
TEST_ASSERT_NOTEQUALAsserts that the two parameters passed are not equal, fails otherwise +Optionally allows an additional message in the case of a failure
TEST_FOCUSOnly run the test provided within the parentheses +This is useful for debugging when you want to reduce noise, but should never be pushed +Intended to be used in the manner of TEST_FOCUS(/datum/unit_test/math)
TEST_NOTICELogs a noticeable message on GitHub, but will not mark as an error. +Use this when something shouldn't happen and is of note, but shouldn't block CI. +Does not mark the test as failed.
UNIT_TEST_PASSEDConstants indicating unit test completion status
TEST_LONGERAfter most test steps, used for tests that run long so shorter issues can be noticed faster
TEST_CREATE_AND_DESTROYThis must be the last test to run due to the inherent nature of the test iterating every single tangible atom in the game and qdeleting all of them (while taking long sleeps to make sure the garbage collector fires properly) taking a large amount of time.
TEST_OUTPUT_REDChange color to red on ANSI terminal output, if enabled with -DANSICOLORS.
TEST_OUTPUT_GREENChange color to green on ANSI terminal output, if enabled with -DANSICOLORS.
TRAIT_SOURCE_UNIT_TESTSA trait source when adding traits through unit tests

Define Details

+

TEST_ASSERT + + + +

+

Asserts that a condition is true +If the condition is not true, fails the test

TEST_ASSERT_EQUAL + + + +

+

Asserts that the two parameters passed are equal, fails otherwise +Optionally allows an additional message in the case of a failure

TEST_ASSERT_NOTEQUAL + + + +

+

Asserts that the two parameters passed are not equal, fails otherwise +Optionally allows an additional message in the case of a failure

TEST_ASSERT_NOTNULL + + + +

+

Asserts that a parameter is not null

TEST_ASSERT_NULL + + + +

+

Asserts that a parameter is null

TEST_CREATE_AND_DESTROY + + +

+

This must be the last test to run due to the inherent nature of the test iterating every single tangible atom in the game and qdeleting all of them (while taking long sleeps to make sure the garbage collector fires properly) taking a large amount of time.

TEST_FAIL + + + +

+

For advanced cases, fail unconditionally but don't return (so a test can return multiple results)

TEST_FOCUS + + + +

+

Only run the test provided within the parentheses +This is useful for debugging when you want to reduce noise, but should never be pushed +Intended to be used in the manner of TEST_FOCUS(/datum/unit_test/math)

TEST_LONGER + + +

+

After most test steps, used for tests that run long so shorter issues can be noticed faster

TEST_NOTICE + + + +

+

Logs a noticeable message on GitHub, but will not mark as an error. +Use this when something shouldn't happen and is of note, but shouldn't block CI. +Does not mark the test as failed.

TEST_OUTPUT_GREEN + + + +

+

Change color to green on ANSI terminal output, if enabled with -DANSICOLORS.

TEST_OUTPUT_RED + + + +

+

Change color to red on ANSI terminal output, if enabled with -DANSICOLORS.

TRAIT_SOURCE_UNIT_TESTS + + +

+

A trait source when adding traits through unit tests

UNIT_TEST_PASSED + + +

+

Constants indicating unit test completion status

+ + + diff --git a/code/modules/unit_tests/autowiki.html b/code/modules/unit_tests/autowiki.html new file mode 100644 index 000000000000..42087e3452ea --- /dev/null +++ b/code/modules/unit_tests/autowiki.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/unit_tests/autowiki.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/autowiki.dm + +

+ + + +
/datum/unit_test/autowikiTests that all autowikis generate something without runtiming
/datum/unit_test/autowiki_include_templateTest that include_template produces reasonable results
+ + + diff --git a/code/modules/unit_tests/create_and_destroy.html b/code/modules/unit_tests/create_and_destroy.html new file mode 100644 index 000000000000..e60f9c26daab --- /dev/null +++ b/code/modules/unit_tests/create_and_destroy.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/unit_tests/create_and_destroy.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/create_and_destroy.dm + +

+ + +
/datum/unit_test/create_and_destroyDelete one of every type, sleep a while, then check to see if anything has gone fucky
+ + + diff --git a/code/modules/unit_tests/emote_panels.html b/code/modules/unit_tests/emote_panels.html new file mode 100644 index 000000000000..a371ff06e9b0 --- /dev/null +++ b/code/modules/unit_tests/emote_panels.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/unit_tests/emote_panels.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/emote_panels.dm + +

+ + +
/datum/unit_test/emote_panelsTest that all emotes for Working Joes & Yautja have a category
+ + + diff --git a/code/modules/unit_tests/focus_only_tests.html b/code/modules/unit_tests/focus_only_tests.html new file mode 100644 index 000000000000..75e36f5af761 --- /dev/null +++ b/code/modules/unit_tests/focus_only_tests.html @@ -0,0 +1,37 @@ + + + + + + + code/modules/unit_tests/focus_only_tests.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/focus_only_tests.dm + +

+ + + + + + + +
/datum/unit_test/focus_onlyThese tests perform no behavior of their own, and have their tests offloaded onto other procs. +This is useful in cases like in build_appearance_list where we want to know if any fail, +but is not useful to right a test for. +This file exists so that you can change any of these to TEST_FOCUS and only check for that test. +For example, change /datum/unit_test/focus_only/invalid_overlays to TEST_FOCUS(/datum/unit_test/focus_only/invalid_overlays), +and you will only test the check for invalid overlays in appearance building.
/datum/unit_test/focus_only/invalid_overlaysChecks that every overlay passed into build_appearance_list exists in the icon
/datum/unit_test/focus_only/invalid_research_designsChecks that every icon sent to the research_designs spritesheet is valid
/datum/unit_test/focus_only/invalid_vending_machine_icon_statesChecks that every icon sent to vending machines is valid
/datum/unit_test/focus_only/multiple_space_initializationChecks that space does not initialize multiple times
/datum/unit_test/focus_only/sorted_smoothing_groupsChecks that smoothing_groups and canSmoothWith are properly sorted in /atom/Initialize
+ + + diff --git a/code/modules/unit_tests/missing_icons.html b/code/modules/unit_tests/missing_icons.html new file mode 100644 index 000000000000..9fc866a5b601 --- /dev/null +++ b/code/modules/unit_tests/missing_icons.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/unit_tests/missing_icons.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/missing_icons.dm + +

+ + +
/datum/unit_test/missing_iconsMakes sure objects actually have icons that exist!
+ + + diff --git a/code/modules/unit_tests/spritesheets.html b/code/modules/unit_tests/spritesheets.html new file mode 100644 index 000000000000..ee9745b2c2cd --- /dev/null +++ b/code/modules/unit_tests/spritesheets.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/unit_tests/spritesheets.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/spritesheets.dm + +

+ + +
/datum/unit_test/spritesheetsChecks if spritesheet assets contain icon states with invalid names
+ + + diff --git a/code/modules/unit_tests/subsystem_init.html b/code/modules/unit_tests/subsystem_init.html new file mode 100644 index 000000000000..bf20bee011de --- /dev/null +++ b/code/modules/unit_tests/subsystem_init.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/unit_tests/subsystem_init.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/subsystem_init.dm + +

+ + +
/datum/unit_test/subsystem_initTests that all subsystems that need to properly initialize.
+ + + diff --git a/code/modules/unit_tests/tgui_create_message.html b/code/modules/unit_tests/tgui_create_message.html new file mode 100644 index 000000000000..69f322001eab --- /dev/null +++ b/code/modules/unit_tests/tgui_create_message.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/unit_tests/tgui_create_message.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/tgui_create_message.dm + +

+ + +
/datum/unit_test/tgui_create_messageTest that TGUI_CREATE_MESSAGE is correctly implemented
+ + + diff --git a/code/modules/vehicles/hardpoints/hardpoint.html b/code/modules/vehicles/hardpoints/hardpoint.html new file mode 100644 index 000000000000..f6c6cb0f76b8 --- /dev/null +++ b/code/modules/vehicles/hardpoints/hardpoint.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/vehicles/hardpoints/hardpoint.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/hardpoints/hardpoint.dm + +

+ + +
/obj/item/hardpointHardpoints are any items that attach to a base vehicle, such as wheels/treads, support systems and guns
+ + + diff --git a/code/modules/vehicles/interior/interactable/vendors.html b/code/modules/vehicles/interior/interactable/vendors.html new file mode 100644 index 000000000000..909fedc022b0 --- /dev/null +++ b/code/modules/vehicles/interior/interactable/vendors.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/vehicles/interior/interactable/vendors.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/interior/interactable/vendors.dm + +

+ + +
/obj/structure/machinery/cm_vending/sorted/vehicle_supply/tentModified Restockable APC-based vendor for use by Req in the deployable tent
+ + + diff --git a/code/modules/vehicles/interior/interior.html b/code/modules/vehicles/interior/interior.html new file mode 100644 index 000000000000..188564e72bef --- /dev/null +++ b/code/modules/vehicles/interior/interior.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/vehicles/interior/interior.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/interior/interior.dm + +

+ + +
/datum/role_reserved_slotsspecial role slots datum. Stores category name, roles, amount of taken slots and total slots.
+ + + diff --git a/datum.html b/datum.html new file mode 100644 index 000000000000..8f52d596e8d2 --- /dev/null +++ b/datum.html @@ -0,0 +1,425 @@ + + + + + + + /datum - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum + + + +

+ +

The absolute base class for everything

+

A datum instantiated has no physical world prescence, use an atom if you want something +that actually lives in the world

+

Be very mindful about adding variables to this class, they are inherited by every single +thing in the entire game, and so you can easily cause memory usage to rise a lot with careless +use of variables at this level

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

_status_traitsStatus traits attached to this datum. associative list of the form: list(trait name (string) = list(source1, source2, source3,...))
active_timersActive timers with this datum as the target
comp_lookupAny datum registered to receive signals from this datum is in this list
datum_componentsComponents attached to this datum
datum_flagsDatum level flags
gc_destroyedTick count time when this object was destroyed.
signal_enabledIs this datum capable of sending signals?
signal_procsLazy associated list in the structure of signals:proctype that are run when the datum receives that signal
tgui_shared_statesglobal
weak_referenceA weak reference to another datum

Procs

DestroyDefault implementation of clean-up code.
GetComponentReturn any component assigned to this datum of the given type
GetComponentsGet all components of a given type that are attached to this datum
GetExactComponentReturn any component assigned to this datum of the exact given type
LoadComponentGet existing component of type, or create it and return a reference to it
RegisterSignalRegister to listen for a signal from the passed in target
TakeComponentTransfer this component to another parent
TransferComponentsTransfer all components to target
UnregisterSignalStop listening to a given signal from target
_AddComponentCreates an instance of new_type in the datum and attaches to it as parent
_AddElementFinds the singleton for the element type given and attaches it to src
_RemoveElementFinds the singleton for the element type given and detaches it from src +You only need additional arguments beyond the type if you're using ELEMENT_BESPOKE
_SendSignalInternal proc to handle most all of the signaling procedure
add_traitsProc that handles adding multiple traits to a target via a list. Must have a common source and target.
processThis proc is called on a datum on every "cycle" if it is being processed by a subsystem. The time between each cycle is determined by the subsystem's "wait" setting. +You can start and stop processing a datum using the START_PROCESSING and STOP_PROCESSING defines.
remove_traitsProc that handles removing multiple traits from a target via a list. Must have a common source and target.
tgui_interactpublic
ui_actpublic
ui_assetspublic
ui_closepublic
ui_datapublic
ui_hostprivate
ui_stateprivate
ui_static_datapublic
ui_statuspublic
update_static_datapublic
update_static_data_for_all_viewerspublic
vv_edit_varCalled whenever a var is edited to edit the var, returning FALSE will reject the edit.
+

Var Details

_status_traits + + + + +

+

Status traits attached to this datum. associative list of the form: list(trait name (string) = list(source1, source2, source3,...))

active_timers + + + + +

+

Active timers with this datum as the target

comp_lookup + + + + +

+

Any datum registered to receive signals from this datum is in this list

+

Lazy associated list in the structure of signal:registree/list of registrees

datum_components + + + + +

+

Components attached to this datum

+

Lazy associated list in the structure of type:component/list of components

datum_flags + + + + +

+

Datum level flags

gc_destroyed + + + + +

+

Tick count time when this object was destroyed.

+

If this is non zero then the object has been garbage collected and is awaiting either +a hard del by the GC subsystme, or to be autocollected (if it has no references)

signal_enabled + + + + +

+

Is this datum capable of sending signals?

+

Set to true when a signal has been registered

signal_procs + + + + +

+

Lazy associated list in the structure of signals:proctype that are run when the datum receives that signal

tgui_shared_states + + + + +

+

global

+

Associative list of JSON-encoded shared states that were set by +tgui clients.

weak_reference + + + + +

+

A weak reference to another datum

Proc Details

Destroy +

+

Default implementation of clean-up code.

+

This should be overridden to remove all references pointing to the object being destroyed, if +you do override it, make sure to call the parent and return it's return value by default

+

Return an appropriate QDEL_HINT to modify handling of your deletion; +in most cases this is QDEL_HINT_QUEUE.

+

The base case is responsible for doing the following

+ +

Returns QDEL_HINT_QUEUE

GetComponent +

+

Return any component assigned to this datum of the given type

+

This will throw an error if it's possible to have more than one component of that type on the parent

+

Arguments:

+

GetComponents +

+

Get all components of a given type that are attached to this datum

+

Arguments:

+

GetExactComponent +

+

Return any component assigned to this datum of the exact given type

+

This will throw an error if it's possible to have more than one component of that type on the parent

+

Arguments:

+

LoadComponent +

+

Get existing component of type, or create it and return a reference to it

+

Use this if the item needs to exist at the time of this call, but may not have been created before now

+

Arguments:

+

RegisterSignal +

+

Register to listen for a signal from the passed in target

+

This sets up a listening relationship such that when the target object emits a signal +the source datum this proc is called upon, will receive a callback to the given proctype +Return values from procs registered must be a bitfield

+

Arguments:

+

TakeComponent +

+

Transfer this component to another parent

+

Component is taken from source datum

+

Arguments:

+

TransferComponents +

+

Transfer all components to target

+

All components from source datum are taken

+

Arguments:

+

UnregisterSignal +

+

Stop listening to a given signal from target

+

Breaks the relationship between target and source datum, removing the callback when the signal fires

+

Doesn't care if a registration exists or not

+

Arguments:

+

_AddComponent +

+

Creates an instance of new_type in the datum and attaches to it as parent

+

Sends the COMSIG_COMPONENT_ADDED signal to the datum

+

Returns the component that was created. Or the old component in a dupe situation where COMPONENT_DUPE_UNIQUE was set

+

If this tries to add a component to an incompatible type, the component will be deleted and the result will be null. This is very unperformant, try not to do it

+

Properly handles duplicate situations based on the dupe_mode var

_AddElement +

+

Finds the singleton for the element type given and attaches it to src

_RemoveElement +

+

Finds the singleton for the element type given and detaches it from src +You only need additional arguments beyond the type if you're using ELEMENT_BESPOKE

_SendSignal +

+

Internal proc to handle most all of the signaling procedure

+

Will runtime if used on datums with an empty component list

+

Use the SEND_SIGNAL define instead

add_traits +

+

Proc that handles adding multiple traits to a target via a list. Must have a common source and target.

process +

+

This proc is called on a datum on every "cycle" if it is being processed by a subsystem. The time between each cycle is determined by the subsystem's "wait" setting. +You can start and stop processing a datum using the START_PROCESSING and STOP_PROCESSING defines.

+

Since the wait setting of a subsystem can be changed at any time, it is important that any rate-of-change that you implement in this proc is multiplied by the delta_time that is sent as a parameter, +Additionally, any "prob" you use in this proc should instead use the DT_PROB define to make sure that the final probability per second stays the same even if the subsystem's wait is altered. +Examples where this must be considered:

+ +

If you override this do not call parent, as it will return PROCESS_KILL. This is done to prevent objects that dont override process() from staying in the processing list

remove_traits +

+

Proc that handles removing multiple traits from a target via a list. Must have a common source and target.

tgui_interact +

+

public

+

Used to open and update UIs. +If this proc is not implemented properly, the UI will not update correctly.

+

required user mob The mob who opened/is using the UI. +optional ui datum/tgui The UI to be updated, if it exists.

ui_act +

+

public

+

Called on a UI when the UI receieves a href. +Think of this as Topic().

+

required action string The action/button that has been invoked by the user. +required params list A list of parameters attached to the button.

+

return bool If the user's input has been handled and the UI should update.

ui_assets +

+

public

+

Called on an object when a tgui object is being created, allowing you to +push various assets to tgui, for examples spritesheets.

+

return list List of asset datums or file paths.

ui_close +

+

public

+

Called on a UI's object when the UI is closed, not to be confused with +client/verb/uiclose(), which closes the ui window

ui_data +

+

public

+

Data to be sent to the UI. +This must be implemented for a UI to work.

+

required user mob The mob interacting with the UI.

+

return list Data to be sent to the UI.

ui_host +

+

private

+

The UI's host object (usually src_object). +This allows modules/datums to have the UI attached to them, +and be a part of another object.

ui_state +

+

private

+

The UI's state controller to be used for created uis +This is a proc over a var for memory reasons

ui_static_data +

+

public

+

Static Data to be sent to the UI.

+

Static data differs from normal data in that it's large data that should be +sent infrequently. This is implemented optionally for heavy uis that would +be sending a lot of redundant data frequently. Gets squished into one +object on the frontend side, but the static part is cached.

+

required user mob The mob interacting with the UI.

+

return list Statuic Data to be sent to the UI.

ui_status +

+

public

+

Checks the UI state for a mob.

+

required user mob The mob who opened/is using the UI. +required state datum/ui_state The state to check.

+

return UI_state The state of the UI.

update_static_data +

+

public

+

Forces an update on static data. Should be done manually whenever something +happens to change static data.

+

required user the mob currently interacting with the ui +optional ui ui to be updated

update_static_data_for_all_viewers +

+

public

+

Will force an update on static data for all viewers. +Should be done manually whenever something happens to +change static data.

vv_edit_var +

+

Called whenever a var is edited to edit the var, returning FALSE will reject the edit.

+ + + diff --git a/datum/action.html b/datum/action.html new file mode 100644 index 000000000000..7aee5a38e779 --- /dev/null +++ b/datum/action.html @@ -0,0 +1,66 @@ + + + + + + + /datum/action - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Generic Action + + + +

+ + + + + + +

Vars

hiddenWhether the action is hidden from its owner
listen_signalA signal on the mob that will cause the action to activate
player_hiddenHide the action from the owner without preventing them from using it (incase of keybind listen_signal)

Procs

give_toCannot use arglist for both cases because of +unique BYOND handling of args in New
keybind_activationhandler for when a keybind signal is received by the action, calls the action_activate proc asynchronous
+

Var Details

hidden + + + + +

+

Whether the action is hidden from its owner

listen_signal + + + + +

+

A signal on the mob that will cause the action to activate

player_hidden + + + + +

+

Hide the action from the owner without preventing them from using it (incase of keybind listen_signal)

Proc Details

give_to +

+

Cannot use arglist for both cases because of +unique BYOND handling of args in New

keybind_activation +

+

handler for when a keybind signal is received by the action, calls the action_activate proc asynchronous

+ + + diff --git a/datum/action/ghost.html b/datum/action/ghost.html new file mode 100644 index 000000000000..cb1a0789aec9 --- /dev/null +++ b/datum/action/ghost.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/ghost - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Ghost + + + +

+ + +

Procs

remove_ghostsignal handler to remove the ghost button when someone's not so dead

Proc Details

remove_ghost +

+

signal handler to remove the ghost button when someone's not so dead

+ + + diff --git a/datum/action/item_action/cycle_helmet_huds.html b/datum/action/item_action/cycle_helmet_huds.html new file mode 100644 index 000000000000..6a1947d3d85d --- /dev/null +++ b/datum/action/item_action/cycle_helmet_huds.html @@ -0,0 +1,42 @@ + + + + + + + /datum/action/item_action/cycle_helmet_huds - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/action/item_action/cycle_helmet_huds + + + +

+ + + +

Procs

set_action_overlaySets the action overlay based on the visor type
set_default_overlaySets the action overlay to default hud sight up

Proc Details

set_action_overlay +

+

Sets the action overlay based on the visor type

set_default_overlay +

+

Sets the action overlay to default hud sight up

+ + + diff --git a/datum/action/item_action/reagent_container/set_transfer_amount.html b/datum/action/item_action/reagent_container/set_transfer_amount.html new file mode 100644 index 000000000000..dad83e668a1f --- /dev/null +++ b/datum/action/item_action/reagent_container/set_transfer_amount.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/item_action/reagent_container/set_transfer_amount - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Set Transfer Amount + + + +

+ + +

Vars

containerThe container that transfer amount will be set on
+

Var Details

container + + + + +

+

The container that transfer amount will be set on

+ + + diff --git a/datum/action/item_action/specialist/aimed_shot.html b/datum/action/item_action/specialist/aimed_shot.html new file mode 100644 index 000000000000..159914ca065f --- /dev/null +++ b/datum/action/item_action/specialist/aimed_shot.html @@ -0,0 +1,37 @@ + + + + + + + /datum/action/item_action/specialist/aimed_shot - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/action/item_action/specialist/aimed_shot + + + +

+ + +

Procs

check_can_useAdd a decisecond to the default 1.5 seconds for each two tiles to hit. +/timer is (f_spotting_time + 1 SECONDS) because sometimes it janks out before the doafter is done. blame sleeps or something

Proc Details

check_can_use +

+

Add a decisecond to the default 1.5 seconds for each two tiles to hit. +/timer is (f_spotting_time + 1 SECONDS) because sometimes it janks out before the doafter is done. blame sleeps or something

+ + + diff --git a/datum/action/item_action/specialist/spotter_target.html b/datum/action/item_action/specialist/spotter_target.html new file mode 100644 index 000000000000..4a581c7b0f83 --- /dev/null +++ b/datum/action/item_action/specialist/spotter_target.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/item_action/specialist/spotter_target - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/action/item_action/specialist/spotter_target + + + +

+ + +

Procs

check_can_useAdd a decisecond to the default 1.5 seconds for each two tiles to hit.

Proc Details

check_can_use +

+

Add a decisecond to the default 1.5 seconds for each two tiles to hit.

+ + + diff --git a/datum/action/item_action/taser/change_mode.html b/datum/action/item_action/taser/change_mode.html new file mode 100644 index 000000000000..cc8ad88722d7 --- /dev/null +++ b/datum/action/item_action/taser/change_mode.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/item_action/taser/change_mode - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/action/item_action/taser/change_mode + + + +

+ + +

Procs

update_iconUpdates the action button icon dependant on mode.

Proc Details

update_icon +

+

Updates the action button icon dependant on mode.

+ + + diff --git a/datum/action/minimap.html b/datum/action/minimap.html new file mode 100644 index 000000000000..f900b1af09d7 --- /dev/null +++ b/datum/action/minimap.html @@ -0,0 +1,71 @@ + + + + + + + /datum/action/minimap - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Toggle Minimap + + + +

+ +

Action that gives the owner access to the minimap pool

+ + + + + +

Vars

default_overwatch_levelThis is mostly for the AI & other things which do not move groundside.
mapMinimap object we'll be displaying
marker_flagsmarker flags this will give the target, mostly used for marine minimaps
minimap_displayedboolean as to whether the minimap is currently shown
minimap_flagsFlags to allow the owner to see others of this type

Procs

on_owner_z_changeUpdates the map when the owner changes zlevel
+

Var Details

default_overwatch_level + + + + +

+

This is mostly for the AI & other things which do not move groundside.

map + + + + +

+

Minimap object we'll be displaying

marker_flags + + + + +

+

marker flags this will give the target, mostly used for marine minimaps

minimap_displayed + + + + +

+

boolean as to whether the minimap is currently shown

minimap_flags + + + + +

+

Flags to allow the owner to see others of this type

Proc Details

on_owner_z_change +

+

Updates the map when the owner changes zlevel

+ + + diff --git a/datum/action/predator_action.html b/datum/action/predator_action.html new file mode 100644 index 000000000000..06877332e538 --- /dev/null +++ b/datum/action/predator_action.html @@ -0,0 +1,71 @@ + + + + + + + /datum/action/predator_action - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/action/predator_action + + + +

+ + + + + + + +

Vars

activeIf the action is currently on or in use
bracersThe bracers on the mob (if applicable)
maskThe mask on the mob (if applicable)
require_bracersIf the action requires bracers worn or in-hand
require_maskIf the action requires a yautja mask to be worn
yautjaThe mob calling the action
+

Var Details

active + + + + +

+

If the action is currently on or in use

bracers + + + + +

+

The bracers on the mob (if applicable)

mask + + + + +

+

The mask on the mob (if applicable)

require_bracers + + + + +

+

If the action requires bracers worn or in-hand

require_mask + + + + +

+

If the action requires a yautja mask to be worn

yautja + + + + +

+

The mob calling the action

+ + + diff --git a/datum/action/predator_action/mask/control_falcon_drone.html b/datum/action/predator_action/mask/control_falcon_drone.html new file mode 100644 index 000000000000..f865c64b6b5a --- /dev/null +++ b/datum/action/predator_action/mask/control_falcon_drone.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/predator_action/mask/control_falcon_drone - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Control Falcon Drone + + + +

+ + +

Vars

linked_falcon_droneThe falcon drone that will be sent when the action is pressed
+

Var Details

linked_falcon_drone + + + + +

+

The falcon drone that will be sent when the action is pressed

+ + + diff --git a/datum/action/tutorial_end.html b/datum/action/tutorial_end.html new file mode 100644 index 000000000000..78b758ce3034 --- /dev/null +++ b/datum/action/tutorial_end.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/tutorial_end - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Stop Tutorial + + + +

+ + +

Vars

tutorialWeakref to the tutorial this is related to
+

Var Details

tutorial + + + + +

+

Weakref to the tutorial this is related to

+ + + diff --git a/datum/action/vulture_tripod_unscope.html b/datum/action/vulture_tripod_unscope.html new file mode 100644 index 000000000000..4d8082b1ef12 --- /dev/null +++ b/datum/action/vulture_tripod_unscope.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/vulture_tripod_unscope - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Stop Using Scope + + + +

+ + +

Vars

tripodWeakref to the tripod that this is linked to
+

Var Details

tripod + + + + +

+

Weakref to the tripod that this is linked to

+ + + diff --git a/datum/action/xeno_action.html b/datum/action/xeno_action.html new file mode 100644 index 000000000000..d4f47e7dba63 --- /dev/null +++ b/datum/action/xeno_action.html @@ -0,0 +1,66 @@ + + + + + + + /datum/action/xeno_action - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/action/xeno_action + + + +

+ + + + + + +

Vars

charge_timeWhen set, an ability has to be charged up by being the active ability before it can be used
xeno_cooldownCooldown of the ability (do not use the cooldown var) +Probably should only have the cooldown var, but that is for another rework

Procs

use_ability_wrapperA wrapper for use_ability that sends a signal
verb_acid_lanceName of the action to appear on the ability icon
verb_acid_mineName of the action to appear on the ability icon
+

Var Details

charge_time + + + + +

+

When set, an ability has to be charged up by being the active ability before it can be used

xeno_cooldown + + + + +

+

Cooldown of the ability (do not use the cooldown var) +Probably should only have the cooldown var, but that is for another rework

Proc Details

use_ability_wrapper +

+

A wrapper for use_ability that sends a signal

verb_acid_lance +

+

Name of the action to appear on the ability icon

verb_acid_mine +

+

Name of the action to appear on the ability icon

+ + + diff --git a/datum/action/xeno_action/activable/boiler_trap.html b/datum/action/xeno_action/activable/boiler_trap.html new file mode 100644 index 000000000000..fac133c36b1b --- /dev/null +++ b/datum/action/xeno_action/activable/boiler_trap.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/xeno_action/activable/boiler_trap - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Deploy Trap + + + +

+ +

Trapper boiler abilities

+ +

Vars

trap_ttlConfig

Procs

use_abilityTrapper boiler powers
+

Var Details

trap_ttl + + + + +

+

Config

Proc Details

use_ability +

+

Trapper boiler powers

+ + + diff --git a/datum/action/xeno_action/activable/feralfrenzy.html b/datum/action/xeno_action/activable/feralfrenzy.html new file mode 100644 index 000000000000..233cbcf1d0db --- /dev/null +++ b/datum/action/xeno_action/activable/feralfrenzy.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/xeno_action/activable/feralfrenzy - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Feral Frenzy + + + +

+ + +

Vars

rangeThe orange used for a AOETARGETGUT
+

Var Details

range + + + + +

+

The orange used for a AOETARGETGUT

+ + + diff --git a/datum/action/xeno_action/activable/fortify.html b/datum/action/xeno_action/activable/fortify.html new file mode 100644 index 000000000000..3f3ee528a74c --- /dev/null +++ b/datum/action/xeno_action/activable/fortify.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/xeno_action/activable/fortify - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Fortify + + + +

+ + +

Vars

frontal_armorExtra armor when fortified and facing bullets.
+

Var Details

frontal_armor + + + + +

+

Extra armor when fortified and facing bullets.

+ + + diff --git a/datum/action/xeno_action/activable/pounce.html b/datum/action/xeno_action/activable/pounce.html new file mode 100644 index 000000000000..d58dcbdfb06f --- /dev/null +++ b/datum/action/xeno_action/activable/pounce.html @@ -0,0 +1,65 @@ + + + + + + + /datum/action/xeno_action/activable/pounce - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Pounce + + + +

+ + + + + + +

Procs

additional_effectsAny additional effects to apply to the target +is called if and only if we actually hit a human target
additional_effects_alwaysAdditional effects to apply even if we don't hit anything
post_windup_effectsAny effects to apply to the xenomorph after the windup finishes (or is interrupted)
pre_pounce_effectsEffects to apply inmediately before pouncing.
pre_windup_effectsAny effects to apply to the xenomorph before the windup occurs

Proc Details

additional_effects +

+

Any additional effects to apply to the target +is called if and only if we actually hit a human target

additional_effects_always +

+

Additional effects to apply even if we don't hit anything

post_windup_effects +

+

Any effects to apply to the xenomorph after the windup finishes (or is interrupted)

pre_pounce_effects +

+

Effects to apply inmediately before pouncing.

pre_windup_effects +

+

Any effects to apply to the xenomorph before the windup occurs

+ + + diff --git a/datum/action/xeno_action/activable/prae_impale.html b/datum/action/xeno_action/activable/prae_impale.html new file mode 100644 index 000000000000..896809d62b93 --- /dev/null +++ b/datum/action/xeno_action/activable/prae_impale.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/xeno_action/activable/prae_impale - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Impale + + + +

+ +

Dancer Abilities

+

Procs

use_abilityDancer powers

Proc Details

use_ability +

+

Dancer powers

+ + + diff --git a/datum/action/xeno_action/activable/secrete_resin/remote.html b/datum/action/xeno_action/activable/secrete_resin/remote.html new file mode 100644 index 000000000000..11b0d1a3f586 --- /dev/null +++ b/datum/action/xeno_action/activable/secrete_resin/remote.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/xeno_action/activable/secrete_resin/remote - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Coerce Resin (100) + + + +

+ + +

Procs

can_remote_buildCheck if the target is a resin door and open or close it

Proc Details

can_remote_build +

+

Check if the target is a resin door and open or close it

+ + + diff --git a/datum/action/xeno_action/activable/tail_jab.html b/datum/action/xeno_action/activable/tail_jab.html new file mode 100644 index 000000000000..588812a66498 --- /dev/null +++ b/datum/action/xeno_action/activable/tail_jab.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/xeno_action/activable/tail_jab - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Tail Jab + + + +

+ + +

Procs

reset_directionTo reset the direction if they haven't moved since then in below callback.

Proc Details

reset_direction +

+

To reset the direction if they haven't moved since then in below callback.

+ + + diff --git a/datum/action/xeno_action/activable/tail_stab.html b/datum/action/xeno_action/activable/tail_stab.html new file mode 100644 index 000000000000..88b558bb7f9c --- /dev/null +++ b/datum/action/xeno_action/activable/tail_stab.html @@ -0,0 +1,47 @@ + + + + + + + /datum/action/xeno_action/activable/tail_stab - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Tail Stab + + + +

+ + + +

Vars

blunt_stabUsed for defender's tail 'stab'.

Procs

reset_directionTo reset the direction if they haven't moved since then in below callback. +Direction var to make the tail stab look cool and immersive. +Ditto.
+

Var Details

blunt_stab + + + + +

+

Used for defender's tail 'stab'.

Proc Details

reset_direction +

+

To reset the direction if they haven't moved since then in below callback. +Direction var to make the tail stab look cool and immersive. +Ditto.

+ + + diff --git a/datum/action/xeno_action/activable/tail_stab/tail_seize.html b/datum/action/xeno_action/activable/tail_stab/tail_seize.html new file mode 100644 index 000000000000..11557f3286cd --- /dev/null +++ b/datum/action/xeno_action/activable/tail_stab/tail_seize.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/xeno_action/activable/tail_stab/tail_seize - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Tail Seize + + + +

+ +

Oppressor powers

+

Procs

use_abilityOPPRESSOR POWERS

Proc Details

use_ability +

+

OPPRESSOR POWERS

+ + + diff --git a/datum/action/xeno_action/activable/xeno_spit.html b/datum/action/xeno_action/activable/xeno_spit.html new file mode 100644 index 000000000000..503e4a1cfd63 --- /dev/null +++ b/datum/action/xeno_action/activable/xeno_spit.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/xeno_action/activable/xeno_spit - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Xeno Spit + + + +

+ + +

Vars

spittingVar that keeps track of in-progress wind-up spits like Bombard to prevent spitting multiple spits at the same time
+

Var Details

spitting + + + + +

+

Var that keeps track of in-progress wind-up spits like Bombard to prevent spitting multiple spits at the same time

+ + + diff --git a/datum/action/xeno_action/activable/xeno_spit/bombard.html b/datum/action/xeno_action/activable/xeno_spit/bombard.html new file mode 100644 index 000000000000..a9111380503f --- /dev/null +++ b/datum/action/xeno_action/activable/xeno_spit/bombard.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/xeno_action/activable/xeno_spit/bombard - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Bombard + + + +

+ + + +

Vars

action_types_to_cdThese are actions that will be placed on cooldown for the cooldown_duration when activates. Added acid shroud for now because it can be abused
cooldown_durationDuration for the cooldown of abilities affected by bombard
+

Var Details

action_types_to_cd + + + + +

+

These are actions that will be placed on cooldown for the cooldown_duration when activates. Added acid shroud for now because it can be abused

cooldown_duration + + + + +

+

Duration for the cooldown of abilities affected by bombard

+ + + diff --git a/datum/action/xeno_action/onclick/acid_shroud.html b/datum/action/xeno_action/onclick/acid_shroud.html new file mode 100644 index 000000000000..3f38bf3e08ea --- /dev/null +++ b/datum/action/xeno_action/onclick/acid_shroud.html @@ -0,0 +1,50 @@ + + + + + + + /datum/action/xeno_action/onclick/acid_shroud - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Acid Shroud + + + +

+ + + + +

Vars

action_types_to_cdThese are actions that will be placed on cooldown for the cooldown_duration when activates
cooldown_durationDuration for the cooldown of abilities affected by acid shroud
sound_playAllows the sound to play. Flipped to false when sound is triggered and true after a timer. This prevents soundspam
+

Var Details

action_types_to_cd + + + + +

+

These are actions that will be placed on cooldown for the cooldown_duration when activates

cooldown_duration + + + + +

+

Duration for the cooldown of abilities affected by acid shroud

sound_play + + + + +

+

Allows the sound to play. Flipped to false when sound is triggered and true after a timer. This prevents soundspam

+ + + diff --git a/datum/action/xeno_action/onclick/apprehend.html b/datum/action/xeno_action/onclick/apprehend.html new file mode 100644 index 000000000000..bb41ad30b2cc --- /dev/null +++ b/datum/action/xeno_action/onclick/apprehend.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/xeno_action/onclick/apprehend - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Apprehend + + + +

+ +

BERSERKER ACTIONS

+

Procs

use_abilityBERSERKER POWERS

Proc Details

use_ability +

+

BERSERKER POWERS

+ + + diff --git a/datum/action/xeno_action/onclick/charge_spit.html b/datum/action/xeno_action/onclick/charge_spit.html new file mode 100644 index 000000000000..ac427140fbf2 --- /dev/null +++ b/datum/action/xeno_action/onclick/charge_spit.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/xeno_action/onclick/charge_spit - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Charge Spit + + + +

+ + +

Procs

disable_spatterThough the ability's other buffs are supposed to last for its duration, it's only supposed to enhance one spit.

Proc Details

disable_spatter +

+

Though the ability's other buffs are supposed to last for its duration, it's only supposed to enhance one spit.

+ + + diff --git a/datum/action/xeno_action/onclick/charger_charge.html b/datum/action/xeno_action/onclick/charger_charge.html new file mode 100644 index 000000000000..d624d3e734c4 --- /dev/null +++ b/datum/action/xeno_action/onclick/charger_charge.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/xeno_action/onclick/charger_charge - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Toggle Charging + + + +

+ + + +

Vars

last_charge_moveThe last time the crusher moved while charging
momentumDictates speed and damage dealt via collision, increased with movement
+

Var Details

last_charge_move + + + + +

+

The last time the crusher moved while charging

momentum + + + + +

+

Dictates speed and damage dealt via collision, increased with movement

+ + + diff --git a/datum/action/xeno_action/onclick/empower.html b/datum/action/xeno_action/onclick/empower.html new file mode 100644 index 000000000000..3b935fc009f0 --- /dev/null +++ b/datum/action/xeno_action/onclick/empower.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/xeno_action/onclick/empower - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Empower + + + +

+ + +

Procs

use_abilityBASE RAV POWERS

Proc Details

use_ability +

+

BASE RAV POWERS

+ + + diff --git a/datum/action/xeno_action/onclick/lurker_invisibility.html b/datum/action/xeno_action/onclick/lurker_invisibility.html new file mode 100644 index 000000000000..398127da48b8 --- /dev/null +++ b/datum/action/xeno_action/onclick/lurker_invisibility.html @@ -0,0 +1,39 @@ + + + + + + + /datum/action/xeno_action/onclick/lurker_invisibility - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Turn Invisible + + + +

+ + +

Procs

invisibility_offImplementation for disabling invisibility. +(refund_multiplier) indicates how much cooldown to refund based on time remaining +0 indicates full cooldown; 0.5 indicates 50% of remaining time is refunded

Proc Details

invisibility_off +

+

Implementation for disabling invisibility. +(refund_multiplier) indicates how much cooldown to refund based on time remaining +0 indicates full cooldown; 0.5 indicates 50% of remaining time is refunded

+ + + diff --git a/datum/action/xeno_action/onclick/plant_weeds.html b/datum/action/xeno_action/onclick/plant_weeds.html new file mode 100644 index 000000000000..3fb946bfe415 --- /dev/null +++ b/datum/action/xeno_action/onclick/plant_weeds.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/xeno_action/onclick/plant_weeds - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Plant Weeds (75) + + + +

+ + +

Procs

use_abilityPowers used by multiple Xenomorphs.

Proc Details

use_ability +

+

Powers used by multiple Xenomorphs.

+ + + diff --git a/datum/action/xeno_action/onclick/shift_spits/boiler.html b/datum/action/xeno_action/onclick/shift_spits/boiler.html new file mode 100644 index 000000000000..29bfd3c9d9be --- /dev/null +++ b/datum/action/xeno_action/onclick/shift_spits/boiler.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/xeno_action/onclick/shift_spits/boiler - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Toggle Gas Type + + + +

+ + +

Procs

use_ability0.7 seconds

Proc Details

use_ability +

+

0.7 seconds

+ + + diff --git a/datum/action/xeno_action/onclick/soak.html b/datum/action/xeno_action/onclick/soak.html new file mode 100644 index 000000000000..7eac4a4ec076 --- /dev/null +++ b/datum/action/xeno_action/onclick/soak.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/xeno_action/onclick/soak - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Soak + + + +

+ + + +

Vars

damage_accumulatedInitially zero, gets damage added when the ability is activated
damage_thresholdRequires 140 damage taken within 6 seconds to activate the ability
+

Var Details

damage_accumulated + + + + +

+

Initially zero, gets damage added when the ability is activated

damage_threshold + + + + +

+

Requires 140 damage taken within 6 seconds to activate the ability

+ + + diff --git a/datum/action/xeno_action/onclick/spike_shield.html b/datum/action/xeno_action/onclick/spike_shield.html new file mode 100644 index 000000000000..cd8c57524d6a --- /dev/null +++ b/datum/action/xeno_action/onclick/spike_shield.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/xeno_action/onclick/spike_shield - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Spike Shield (150 shards) + + + +

+ +

HEDGEHOG ABILITIES

+

Procs

use_abilityHEDGEHOG POWERS

Proc Details

use_ability +

+

HEDGEHOG POWERS

+ + + diff --git a/datum/action/xeno_action/onclick/tacmap.html b/datum/action/xeno_action/onclick/tacmap.html new file mode 100644 index 000000000000..0b18e26d45b8 --- /dev/null +++ b/datum/action/xeno_action/onclick/tacmap.html @@ -0,0 +1,49 @@ + + + + + + + /datum/action/xeno_action/onclick/tacmap - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

View Tactical Map + + + +

+ + + + +

Procs

handle_dismount_ovipositordeals with the queen dismounting the ovipositor, hiding the action from the user
handle_mount_ovipositordeals with the queen mounting the ovipositor, unhiding the action from the user
handle_new_queenhandles the addition of a new queen, hiding if appropriate

Proc Details

handle_dismount_ovipositor +

+

deals with the queen dismounting the ovipositor, hiding the action from the user

handle_mount_ovipositor +

+

deals with the queen mounting the ovipositor, unhiding the action from the user

handle_new_queen +

+

handles the addition of a new queen, hiding if appropriate

+ + + diff --git a/datum/action/xeno_action/onclick/toggle_long_range.html b/datum/action/xeno_action/onclick/toggle_long_range.html new file mode 100644 index 000000000000..f55c6e8de36c --- /dev/null +++ b/datum/action/xeno_action/onclick/toggle_long_range.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/xeno_action/onclick/toggle_long_range - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Toggle Long-Range Sight + + + +

+ + + +

Vars

movement_bufferhow much you can move before zoom breaks
movement_slowdownif we can move while zoomed, how slowed will we be when zoomed in? Use speed modifier defines.
+

Var Details

movement_buffer + + + + +

+

how much you can move before zoom breaks

movement_slowdown + + + + +

+

if we can move while zoomed, how slowed will we be when zoomed in? Use speed modifier defines.

+ + + diff --git a/datum/action/xeno_action/onclick/xenohide.html b/datum/action/xeno_action/onclick/xenohide.html new file mode 100644 index 000000000000..efa10dd432df --- /dev/null +++ b/datum/action/xeno_action/onclick/xenohide.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/xeno_action/onclick/xenohide - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Hide + + + +

+ + +

Procs

post_attackremove hide and apply modified attack cooldown

Proc Details

post_attack +

+

remove hide and apply modified attack cooldown

+ + + diff --git a/datum/admin_help.html b/datum/admin_help.html new file mode 100644 index 000000000000..dd8108519bcb --- /dev/null +++ b/datum/admin_help.html @@ -0,0 +1,188 @@ + + + + + + + /datum/admin_help - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Adminhelp Ticket + + + +

+ + + + + + + + + + + + + + + + + + + + + + + +

Vars

admins_involvedList of admin ckeys that are involved, like through responding
closed_atThe time at which the ticket was closed
heard_by_no_adminsIf any admins were online when the ticket was initialized
idUnique ID of the ticket
initial_messageWhat was the first message sent by the player?
initiatorSemi-misnomer, it's the person who ahelped/was bwoinked
initiator_ckeyThe ckey of the initiator
initiator_key_nameThe key name of the initiator
marked_adminWhich admin has marked this ahelp?
nameThe current name of the ticket
opened_atThe time at which the ticket was opened
opening_respondersThe list of clients currently responding to the opening ticket before it gets a response
player_interactionsList of player interactions
player_repliedHas the player replied to this ticket yet?
statclickStatclick holder for the ticket
stateThe current state of the ticket
ticket_counterStatic counter used for generating each ticket ID
ticket_interactionsThe collection of interactions with this ticket. Use AddInteraction() or, preferably, admin_ticket_log()
webhook_sentWhether this ahelp has sent a webhook or not, and what type

Procs

AutoReplyResolve ticket with a premade message
NewCall this on its own to create a ticket, don't manually assign current_ticket
ticket_statusRenders the current status of the ticket into a displayable string
+

Var Details

admins_involved + + + + +

+

List of admin ckeys that are involved, like through responding

closed_at + + + + +

+

The time at which the ticket was closed

heard_by_no_admins + + + + +

+

If any admins were online when the ticket was initialized

id + + + + +

+

Unique ID of the ticket

initial_message + + + + +

+

What was the first message sent by the player?

initiator + + + + +

+

Semi-misnomer, it's the person who ahelped/was bwoinked

initiator_ckey + + + + +

+

The ckey of the initiator

initiator_key_name + + + + +

+

The key name of the initiator

marked_admin + + + + +

+

Which admin has marked this ahelp?

name + + + + +

+

The current name of the ticket

opened_at + + + + +

+

The time at which the ticket was opened

opening_responders + + + + +

+

The list of clients currently responding to the opening ticket before it gets a response

player_interactions + + + + +

+

List of player interactions

player_replied + + + + +

+

Has the player replied to this ticket yet?

statclick + + + + +

+

Statclick holder for the ticket

state + + + + +

+

The current state of the ticket

ticket_counter + + + + +

+

Static counter used for generating each ticket ID

ticket_interactions + + + + +

+

The collection of interactions with this ticket. Use AddInteraction() or, preferably, admin_ticket_log()

webhook_sent + + + + +

+

Whether this ahelp has sent a webhook or not, and what type

Proc Details

AutoReply +

+

Resolve ticket with a premade message

New +

+

Call this on its own to create a ticket, don't manually assign current_ticket

+

Arguments:

+

ticket_status +

+

Renders the current status of the ticket into a displayable string

+ + + diff --git a/datum/admin_help_tickets.html b/datum/admin_help_tickets.html new file mode 100644 index 000000000000..e119bc06fabc --- /dev/null +++ b/datum/admin_help_tickets.html @@ -0,0 +1,50 @@ + + + + + + + /datum/admin_help_tickets - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Adminhelp Ticket Manager + + + +

+ + + + +

Vars

active_ticketsThe set of all active tickets
closed_ticketsThe set of all closed tickets
resolved_ticketsThe set of all resolved tickets
+

Var Details

active_tickets + + + + +

+

The set of all active tickets

closed_tickets + + + + +

+

The set of all closed tickets

resolved_tickets + + + + +

+

The set of all resolved tickets

+ + + diff --git a/datum/admins.html b/datum/admins.html new file mode 100644 index 000000000000..05f7b7d46f73 --- /dev/null +++ b/datum/admins.html @@ -0,0 +1,152 @@ + + + + + + + /datum/admins - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/admins + + + +

+ + + + + + + + + + + + + + + + + +

Vars

invisiminedWhether this admin is invisiminning

Procs

accept_ertnew ban stuff +new ban stuff
accept_handheld_ertHandles calling the ERT sent by handheld distress beacons
add_tagged_datumInserts the target_datum into [/datum/admins/var/tagged_datums], for later reference.
display_tagsDisplay all of the tagged datums
get_tgui_say_extra_channelsgets any additional channels for tgui-say (admin & mentor)
handle_tagged_delGet ahead of the curve with deleting
modify_traitsAllow admin to add or remove traits of datum
remove_tagged_datumAttempts to remove the specified datum from [/datum/admins/var/tagged_datums] if it exists
spawn_atomADMIN HELPER PROCS
toggleabanadmins2.dm merge
view_attack_logShows this round's attack log
view_game_logShows this round's server log
view_href_logShows this round's href log
view_runtime_logShows this round's runtime log
view_tgui_logShows this round's tgui log
+

Var Details

invisimined + + + + +

+

Whether this admin is invisiminning

Proc Details

accept_ert +

+

new ban stuff +new ban stuff

accept_handheld_ert +

+

Handles calling the ERT sent by handheld distress beacons

add_tagged_datum +

+

Inserts the target_datum into [/datum/admins/var/tagged_datums], for later reference.

+

Arguments:

+

display_tags +

+

Display all of the tagged datums

get_tgui_say_extra_channels +

+

gets any additional channels for tgui-say (admin & mentor)

handle_tagged_del +

+

Get ahead of the curve with deleting

modify_traits +

+

Allow admin to add or remove traits of datum

remove_tagged_datum +

+

Attempts to remove the specified datum from [/datum/admins/var/tagged_datums] if it exists

+

Arguments:

+

spawn_atom +

+

ADMIN HELPER PROCS

toggleaban +

+

admins2.dm merge

view_attack_log +

+

Shows this round's attack log

view_game_log +

+

Shows this round's server log

view_href_log +

+

Shows this round's href log

view_runtime_log +

+

Shows this round's runtime log

view_tgui_log +

+

Shows this round's tgui log

+ + + diff --git a/datum/ammo.html b/datum/ammo.html new file mode 100644 index 000000000000..35a3975c7623 --- /dev/null +++ b/datum/ammo.html @@ -0,0 +1,306 @@ + + + + + + + /datum/ammo - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

generic bullet + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

accuracyThis is added to the bullet's base accuracy.
accuracy_var_highThis INCREASES the upper bound of accuracy variance by 2%, to 107%.
accuracy_var_lowHow much the accuracy varies when fired. // This REDUCES the lower bound of accuracy variance by 2%, to 96%.
accurate_rangeFor most guns, this is where the bullet dramatically looses accuracy. Not for snipers though.
accurate_range_minSnipers use this to simulate poor accuracy at close ranges
apply_delegateDoes this apply xenomorph behaviour delegate?
bonus_projectiles_amountHow many extra projectiles it shoots out. Works kind of like firing on burst, but all of the projectiles travel together
bonus_projectiles_typeType path of the extra projectiles
damageThis is the base damage of the bullet as it is fired
damage_armor_punchhow much armor breaking is done by sheer weapon force. This is for big blunt weapons
damage_buildupHow much damage the bullet loses per turf away before the effective range
damage_falloffHow much damage the bullet loses per turf traveled after the effective range
damage_typeBRUTE, BURN, TOX, OXY, CLONE are the only things that should be in here
damage_var_highThis INCREASES the upper bound of damage variance by 2%, to 107%.
damage_var_lowSame as with accuracy variance.
debilitateStun,knockdown,knockout,irradiate,stutter,eyeblur,drowsy,agony
effective_range_maxWhat maximum range the ammo deals full damage, tapers off using damage_falloff after hitting this value. 0 for no maximum. Added onto gun range as a modifier.
effective_range_minWhat minimum range the ammo deals full damage, builds up the closer you get. 0 for no minimum. Added onto gun range as a modifier.
handful_statecustom handful sprite, for shotgun shells or etc.
hit_effect_colorThe flicker that plays when a bullet hits a target. Usually red. Can be nulled so it doesn't show up at all.
max_rangeThis will de-increment a counter on the bullet.
multiple_handful_nameso handfuls say 'buckshot shells' not 'shell'
pen_armor_punchhow much armor breaking will be done per point of penetration. This is for weapons that penetrate with their shape (like needle bullets)
penetrationHow much armor it ignores before calculations take place
pingThe icon that is displayed when the bullet bounces off something.
scatterHow much the ammo scatters when burst fired, added to gun scatter, along with other mods
shell_speedHow fast the projectile moves.
shrapnel_chanceThe % chance it will imbed in a human
shrapnel_typeThe shrapnel type the ammo will embed, if the chance rolls
sound_armorWhen it's blocked by human armor.
sound_bounceWhen it bounces off something.
sound_hitWhen it deals damage.
sound_missWhen it misses someone.
sound_overrideif we should play a special sound when firing.
sound_shield_hitWhen the bullet is absorbed by a xeno_shield
traits_to_giveAn assoc list in the format list(/datum/element/bullet_trait_to_give = list(...args)) +that will be given to a projectile with the current ammo datum

Procs

knockback_effectsEither knockback or slam them into an obstacle. +The applied effects for knockback(), overwrite to change slow/stun amounts for different ammo datums
on_pointblankSpecial effects when pointblanking mobs. Ultimately called from /living/attackby(). Return TRUE to end the PB attempt.
set_bullet_traitsPopulate traits_to_give in this proc
+

Var Details

accuracy + + + + +

+

This is added to the bullet's base accuracy.

accuracy_var_high + + + + +

+

This INCREASES the upper bound of accuracy variance by 2%, to 107%.

accuracy_var_low + + + + +

+

How much the accuracy varies when fired. // This REDUCES the lower bound of accuracy variance by 2%, to 96%.

accurate_range + + + + +

+

For most guns, this is where the bullet dramatically looses accuracy. Not for snipers though.

accurate_range_min + + + + +

+

Snipers use this to simulate poor accuracy at close ranges

apply_delegate + + + + +

+

Does this apply xenomorph behaviour delegate?

bonus_projectiles_amount + + + + +

+

How many extra projectiles it shoots out. Works kind of like firing on burst, but all of the projectiles travel together

bonus_projectiles_type + + + + +

+

Type path of the extra projectiles

damage + + + + +

+

This is the base damage of the bullet as it is fired

damage_armor_punch + + + + +

+

how much armor breaking is done by sheer weapon force. This is for big blunt weapons

damage_buildup + + + + +

+

How much damage the bullet loses per turf away before the effective range

damage_falloff + + + + +

+

How much damage the bullet loses per turf traveled after the effective range

damage_type + + + + +

+

BRUTE, BURN, TOX, OXY, CLONE are the only things that should be in here

damage_var_high + + + + +

+

This INCREASES the upper bound of damage variance by 2%, to 107%.

damage_var_low + + + + +

+

Same as with accuracy variance.

debilitate + + + + +

+

Stun,knockdown,knockout,irradiate,stutter,eyeblur,drowsy,agony

effective_range_max + + + + +

+

What maximum range the ammo deals full damage, tapers off using damage_falloff after hitting this value. 0 for no maximum. Added onto gun range as a modifier.

effective_range_min + + + + +

+

What minimum range the ammo deals full damage, builds up the closer you get. 0 for no minimum. Added onto gun range as a modifier.

handful_state + + + + +

+

custom handful sprite, for shotgun shells or etc.

hit_effect_color + + + + +

+

The flicker that plays when a bullet hits a target. Usually red. Can be nulled so it doesn't show up at all.

max_range + + + + +

+

This will de-increment a counter on the bullet.

multiple_handful_name + + + + +

+

so handfuls say 'buckshot shells' not 'shell'

pen_armor_punch + + + + +

+

how much armor breaking will be done per point of penetration. This is for weapons that penetrate with their shape (like needle bullets)

penetration + + + + +

+

How much armor it ignores before calculations take place

ping + + + + +

+

The icon that is displayed when the bullet bounces off something.

scatter + + + + +

+

How much the ammo scatters when burst fired, added to gun scatter, along with other mods

shell_speed + + + + +

+

How fast the projectile moves.

shrapnel_chance + + + + +

+

The % chance it will imbed in a human

shrapnel_type + + + + +

+

The shrapnel type the ammo will embed, if the chance rolls

sound_armor + + + + +

+

When it's blocked by human armor.

sound_bounce + + + + +

+

When it bounces off something.

sound_hit + + + + +

+

When it deals damage.

sound_miss + + + + +

+

When it misses someone.

sound_override + + + + +

+

if we should play a special sound when firing.

sound_shield_hit + + + + +

+

When the bullet is absorbed by a xeno_shield

traits_to_give + + + + +

+

An assoc list in the format list(/datum/element/bullet_trait_to_give = list(...args)) +that will be given to a projectile with the current ammo datum

Proc Details

knockback_effects +

+

Either knockback or slam them into an obstacle. +The applied effects for knockback(), overwrite to change slow/stun amounts for different ammo datums

on_pointblank +

+

Special effects when pointblanking mobs. Ultimately called from /living/attackby(). Return TRUE to end the PB attempt.

set_bullet_traits +

+

Populate traits_to_give in this proc

+ + + diff --git a/datum/ammo/bullet/rifle/holo_target.html b/datum/ammo/bullet/rifle/holo_target.html new file mode 100644 index 000000000000..fd82d4e50d87 --- /dev/null +++ b/datum/ammo/bullet/rifle/holo_target.html @@ -0,0 +1,50 @@ + + + + + + + /datum/ammo/bullet/rifle/holo_target - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

holo-targeting rifle bullet + + + +

+ + + + +

Vars

bonus_damage_cap_increasemodifies the default cap limit of 100 by this amount
holo_stacksinflicts this many holo stacks per bullet hit
stack_loss_multipliermultiplies the default drain of 5 holo stacks per second by this amount
+

Var Details

bonus_damage_cap_increase + + + + +

+

modifies the default cap limit of 100 by this amount

holo_stacks + + + + +

+

inflicts this many holo stacks per bullet hit

stack_loss_multiplier + + + + +

+

multiplies the default drain of 5 holo stacks per second by this amount

+ + + diff --git a/datum/ammo/bullet/shrapnel/hornet_rounds.html b/datum/ammo/bullet/shrapnel/hornet_rounds.html new file mode 100644 index 000000000000..6bfd998ba417 --- /dev/null +++ b/datum/ammo/bullet/shrapnel/hornet_rounds.html @@ -0,0 +1,50 @@ + + + + + + + /datum/ammo/bullet/shrapnel/hornet_rounds - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

.22 hornet round + + + +

+ + + + +

Vars

bonus_damage_cap_increasemodifies the default cap limit of 100 by this amount
holo_stacksinflicts this many holo stacks per bullet hit
stack_loss_multipliermultiplies the default drain of 5 holo stacks per second by this amount
+

Var Details

bonus_damage_cap_increase + + + + +

+

modifies the default cap limit of 100 by this amount

holo_stacks + + + + +

+

inflicts this many holo stacks per bullet hit

stack_loss_multiplier + + + + +

+

multiplies the default drain of 5 holo stacks per second by this amount

+ + + diff --git a/datum/ammo/bullet/smartgun/holo_target.html b/datum/ammo/bullet/smartgun/holo_target.html new file mode 100644 index 000000000000..a233d0271ec6 --- /dev/null +++ b/datum/ammo/bullet/smartgun/holo_target.html @@ -0,0 +1,50 @@ + + + + + + + /datum/ammo/bullet/smartgun/holo_target - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

holo-targeting smartgun bullet + + + +

+ + + + +

Vars

bonus_damage_cap_increasemodifies the default cap limit of 100 by this amount
holo_stacksinflicts this many holo stacks per bullet hit
stack_loss_multipliermultiplies the default drain of 5 holo stacks per second by this amount
+

Var Details

bonus_damage_cap_increase + + + + +

+

modifies the default cap limit of 100 by this amount

holo_stacks + + + + +

+

inflicts this many holo stacks per bullet hit

stack_loss_multiplier + + + + +

+

multiplies the default drain of 5 holo stacks per second by this amount

+ + + diff --git a/datum/ammo/bullet/sniper/anti_materiel/vulture/holo_target.html b/datum/ammo/bullet/sniper/anti_materiel/vulture/holo_target.html new file mode 100644 index 000000000000..cf6370c80665 --- /dev/null +++ b/datum/ammo/bullet/sniper/anti_materiel/vulture/holo_target.html @@ -0,0 +1,50 @@ + + + + + + + /datum/ammo/bullet/sniper/anti_materiel/vulture/holo_target - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

holo-targeting anti-materiel sniper bullet + + + +

+ + + + +

Vars

bonus_damage_cap_increasemodifies the default cap limit of 100 by this amount
holo_stacksinflicts this many holo stacks per bullet hit
stack_loss_multipliermultiplies the default drain of 5 holo stacks per second by this amount
+

Var Details

bonus_damage_cap_increase + + + + +

+

modifies the default cap limit of 100 by this amount

holo_stacks + + + + +

+

inflicts this many holo stacks per bullet hit

stack_loss_multiplier + + + + +

+

multiplies the default drain of 5 holo stacks per second by this amount

+ + + diff --git a/datum/ammo/xeno.html b/datum/ammo/xeno.html new file mode 100644 index 000000000000..dd78e85db525 --- /dev/null +++ b/datum/ammo/xeno.html @@ -0,0 +1,50 @@ + + + + + + + /datum/ammo/xeno - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/ammo/xeno + + + +

+ + + + +

Vars

added_spit_delayused to make cooldown of the different spits vary.
pre_spit_warnShould there be an additional warning while winding up? (do not put to true if there is not a windup)
spit_windupShould there be a windup for this spit?
+

Var Details

added_spit_delay + + + + +

+

used to make cooldown of the different spits vary.

pre_spit_warn + + + + +

+

Should there be an additional warning while winding up? (do not put to true if there is not a windup)

spit_windup + + + + +

+

Should there be a windup for this spit?

+ + + diff --git a/datum/ammo/xeno/boiler_gas.html b/datum/ammo/xeno/boiler_gas.html new file mode 100644 index 000000000000..1fc723a5f4c1 --- /dev/null +++ b/datum/ammo/xeno/boiler_gas.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/xeno/boiler_gas - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

glob of neuro gas + + + +

+ + +

Vars

smokerangerange on the smoke in tiles from center
+

Var Details

smokerange + + + + +

+

range on the smoke in tiles from center

+ + + diff --git a/datum/ares_console_admin.html b/datum/ares_console_admin.html new file mode 100644 index 000000000000..cf8f7b7ef03c --- /dev/null +++ b/datum/ares_console_admin.html @@ -0,0 +1,50 @@ + + + + + + + /datum/ares_console_admin - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/ares_console_admin + + + +

+ + + + +

Vars

access_listA record of who logged in and when.
last_loginThe last admin to login.
logged_inThe currently logged in admin.
+

Var Details

access_list + + + + +

+

A record of who logged in and when.

last_login + + + + +

+

The last admin to login.

logged_in + + + + +

+

The currently logged in admin.

+ + + diff --git a/datum/ares_datacore.html b/datum/ares_datacore.html new file mode 100644 index 000000000000..d4cb99882bc0 --- /dev/null +++ b/datum/ares_datacore.html @@ -0,0 +1,127 @@ + + + + + + + /datum/ares_datacore - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/ares_datacore + + + +

+ + + + + + + + + + + + + + + +

Vars

ai_lockdown_activeStatus of the AI Core Lockdown
apollo_logThe chat log of the apollo link. Timestamped.
apollo_login_listAccess list for Apollo Maintenance Console
interface_access_listA record of who logged in and when.
nuke_availableIs nuke request usable or not?
records_announcementHolds all (/datum/ares_record/announcement)s
records_asrsHolds all (/datum/ares_record/requisition_log)s
records_bioscanHolds all (/datum/ares_record/bioscan)s
records_bombardmentHolds all (/datum/ares_record/bombardment)s
records_deletionHolds all (/datum/ares_record/deletion)s
records_flightHolds all (/datum/ares_record/flight)s
records_securityHolds all (/datum/ares_record/security)s (including AA)
records_talkingHolds all (/datum/ares_record/talk_log)s
records_techHolds all (/datum/ares_record/tech)s
+

Var Details

ai_lockdown_active + + + + +

+

Status of the AI Core Lockdown

apollo_log + + + + +

+

The chat log of the apollo link. Timestamped.

apollo_login_list + + + + +

+

Access list for Apollo Maintenance Console

interface_access_list + + + + +

+

A record of who logged in and when.

nuke_available + + + + +

+

Is nuke request usable or not?

records_announcement + + + + +

+

Holds all (/datum/ares_record/announcement)s

records_asrs + + + + +

+

Holds all (/datum/ares_record/requisition_log)s

records_bioscan + + + + +

+

Holds all (/datum/ares_record/bioscan)s

records_bombardment + + + + +

+

Holds all (/datum/ares_record/bombardment)s

records_deletion + + + + +

+

Holds all (/datum/ares_record/deletion)s

records_flight + + + + +

+

Holds all (/datum/ares_record/flight)s

records_security + + + + +

+

Holds all (/datum/ares_record/security)s (including AA)

records_talking + + + + +

+

Holds all (/datum/ares_record/talk_log)s

records_tech + + + + +

+

Holds all (/datum/ares_record/tech)s

+ + + diff --git a/datum/ares_link.html b/datum/ares_link.html new file mode 100644 index 000000000000..9b9d474e237b --- /dev/null +++ b/datum/ares_link.html @@ -0,0 +1,64 @@ + + + + + + + /datum/ares_link - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/ares_link + + + +

+ + + + + + +

Vars

linked_alertsAll motion triggers for the link
linked_systemsAll machinery for the link
linked_ventsLinked security gas vents.
tag_numThe tag number for generated vent labels, if none is manually set.
tickets_maintenanceWorking Joe stuff
+

Var Details

linked_alerts + + + + +

+

All motion triggers for the link

linked_systems + + + + +

+

All machinery for the link

linked_vents + + + + +

+

Linked security gas vents.

tag_num + + + + +

+

The tag number for generated vent labels, if none is manually set.

tickets_maintenance + + + + +

+

Working Joe stuff

+ + + diff --git a/datum/ares_record.html b/datum/ares_record.html new file mode 100644 index 000000000000..e325ec162639 --- /dev/null +++ b/datum/ares_record.html @@ -0,0 +1,57 @@ + + + + + + + /datum/ares_record - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/ares_record + + + +

+ + + + + +

Vars

detailsThe content of the record, announcement text/bioscan info etc.
timeWorld time in text format.
titleThe title of the record, usually announcement title.
userThe name of the initiator of certain records. Who fired an OB, or who deleted something etc.
+

Var Details

details + + + + +

+

The content of the record, announcement text/bioscan info etc.

time + + + + +

+

World time in text format.

title + + + + +

+

The title of the record, usually announcement title.

user + + + + +

+

The name of the initiator of certain records. Who fired an OB, or who deleted something etc.

+ + + diff --git a/datum/ares_record/tech.html b/datum/ares_record/tech.html new file mode 100644 index 000000000000..6ff00e1e8b45 --- /dev/null +++ b/datum/ares_record/tech.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ares_record/tech - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/ares_record/tech + + + +

+ + +

Vars

is_tierIf this tech unlock changed the tier.
+

Var Details

is_tier + + + + +

+

If this tech unlock changed the tier.

+ + + diff --git a/datum/ares_ticket.html b/datum/ares_ticket.html new file mode 100644 index 000000000000..34288bba3dac --- /dev/null +++ b/datum/ares_ticket.html @@ -0,0 +1,78 @@ + + + + + + + /datum/ares_ticket - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/ares_ticket + + + +

+ + + + + + + + +

Vars

ticket_assigneeName of who is handling the ticket. Derived from last login.
ticket_detailsThe content of the ticket, usually an explanation of what it is for.
ticket_idNumerical designation of the ticket.
ticket_nameThe name of the ticket.
ticket_priorityWhether or not the tickey is a priority.
ticket_submitterWho submitted the ticket. Derived from last login.
ticket_timeWorld time in text format.
+

Var Details

ticket_assignee + + + + +

+

Name of who is handling the ticket. Derived from last login.

ticket_details + + + + +

+

The content of the ticket, usually an explanation of what it is for.

ticket_id + + + + +

+

Numerical designation of the ticket.

ticket_name + + + + +

+

The name of the ticket.

ticket_priority + + + + +

+

Whether or not the tickey is a priority.

ticket_submitter + + + + +

+

Who submitted the ticket. Derived from last login.

ticket_time + + + + +

+

World time in text format.

+ + + diff --git a/datum/asset.html b/datum/asset.html new file mode 100644 index 000000000000..429000fd263b --- /dev/null +++ b/datum/asset.html @@ -0,0 +1,35 @@ + + + + + + + /datum/asset - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/asset + + + +

+ + +

Procs

get_serialized_url_mappingsReturns a cached tgui message of URL mappings

Proc Details

get_serialized_url_mappings +

+

Returns a cached tgui message of URL mappings

+ + + diff --git a/datum/asset/simple.html b/datum/asset/simple.html new file mode 100644 index 000000000000..e9137201950d --- /dev/null +++ b/datum/asset/simple.html @@ -0,0 +1,56 @@ + + + + + + + /datum/asset/simple - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/asset/simple + + + +

+ +

If you don't need anything complicated.

+ + +

Vars

assetslist of assets for this datum in the form of: +asset_filename = asset_file. At runtime the asset_file will be +converted into a asset_cache datum.
keep_local_nameTRUE for keeping local asset names when browse_rsc backend is used
legacySet to true to have this asset also be sent via the legacy browse_rsc +system when cdn transports are enabled?
+

Var Details

assets + + + + +

+

list of assets for this datum in the form of: +asset_filename = asset_file. At runtime the asset_file will be +converted into a asset_cache datum.

keep_local_name + + + + +

+

TRUE for keeping local asset names when browse_rsc backend is used

legacy + + + + +

+

Set to true to have this asset also be sent via the legacy browse_rsc +system when cdn transports are enabled?

+ + + diff --git a/datum/asset/simple/namespaced.html b/datum/asset/simple/namespaced.html new file mode 100644 index 000000000000..dbea6075bafc --- /dev/null +++ b/datum/asset/simple/namespaced.html @@ -0,0 +1,51 @@ + + + + + + + /datum/asset/simple/namespaced - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/asset/simple/namespaced + + + +

+ +

Namespace'ed assets (for static css and html files) +When sent over a cdn transport, all assets in the same asset datum will exist in the same folder, as their plain names. +Used to ensure css files can reference files by url() without having to generate the css at runtime, both the css file and the files it depends on must exist in the same namespace asset datum. (Also works for html) +For example blah.css with asset blah.png will get loaded as namespaces/a3d..14f/f12..d3c.css and namespaces/a3d..14f/blah.png. allowing the css file to load blah.png by a relative url rather then compute the generated url with get_url_mappings(). +The namespace folder's name will change if any of the assets change. (excluding parent assets)

+ +

Vars

parentsparents - list of the parent asset or assets (in name = file assoicated format) for this namespace. +parent assets must be referenced by their generated url, but if an update changes a parent asset, it won't change the namespace's identity.

Procs

get_htmlloaderGet a html string that will load a html asset. +Needed because byond doesn't allow you to browse() to a url.
+

Var Details

parents + + + + +

+

parents - list of the parent asset or assets (in name = file assoicated format) for this namespace. +parent assets must be referenced by their generated url, but if an update changes a parent asset, it won't change the namespace's identity.

Proc Details

get_htmlloader +

+

Get a html string that will load a html asset. +Needed because byond doesn't allow you to browse() to a url.

+ + + diff --git a/datum/asset_cache_item.html b/datum/asset_cache_item.html new file mode 100644 index 000000000000..79cba2143268 --- /dev/null +++ b/datum/asset_cache_item.html @@ -0,0 +1,74 @@ + + + + + + + /datum/asset_cache_item - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

asset_cache_item + + + +

+ +

An internal datum containing info on items in the asset cache. Mainly used to cache md5 info for speed.

+ + + + +

Vars

keep_local_nameTRUE for keeping local asset names when browse_rsc backend is used
legacyShould this file also be sent via the legacy browse_rsc system +when cdn transports are enabled?
namespaceUsed by the cdn system to keep legacy css assets with their parent +css file. (css files resolve urls relative to the css file, so the +legacy system can't be used if the css file itself could go out over +the cdn)
namespace_parentTrue if this is the parent css or html file for an asset's namespace

Procs

Newpass in a valid file_hash if you have one to save it from needing to do it again. +pass in a valid dmi file path string e.g. "icons/path/to/dmi_file.dmi" to make generating the hash less expensive
+

Var Details

keep_local_name + + + + +

+

TRUE for keeping local asset names when browse_rsc backend is used

legacy + + + + +

+

Should this file also be sent via the legacy browse_rsc system +when cdn transports are enabled?

namespace + + + + +

+

Used by the cdn system to keep legacy css assets with their parent +css file. (css files resolve urls relative to the css file, so the +legacy system can't be used if the css file itself could go out over +the cdn)

namespace_parent + + + + +

+

True if this is the parent css or html file for an asset's namespace

Proc Details

New +

+

pass in a valid file_hash if you have one to save it from needing to do it again. +pass in a valid dmi file path string e.g. "icons/path/to/dmi_file.dmi" to make generating the hash less expensive

+ + + diff --git a/datum/asset_transport.html b/datum/asset_transport.html new file mode 100644 index 000000000000..ba97a7e4550e --- /dev/null +++ b/datum/asset_transport.html @@ -0,0 +1,112 @@ + + + + + + + /datum/asset_transport - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Simple browse_rsc asset transport + + + +

+ +

Base browse_rsc asset transport

+ + + + + + + +

Vars

dont_mutate_filenamesDon't mutate the filename of assets when sending via browse_rsc. +This is to make it easier to debug issues with assets, and allow server operators to bypass issues that make it to production. +If turning this on fixes asset issues, something isn't using get_asset_url and the asset isn't marked legacy, fix one of those.

Procs

InitializeInitialize - Called when SSassets initializes.
LoadCalled when the transport is loaded by the config controller, not called on the default transport unless it gets loaded by a config change.
get_asset_urlReturns a url for a given asset. +asset_name - Name of the asset. +asset_cache_item - asset cache item datum for the asset, optional, overrides asset_name
register_assetRegister a browser asset with the asset cache system. +returns a /datum/asset_cache_item. +mutiple calls to register the same asset under the same asset_name return the same datum.
send_assetsSends a list of browser assets to a client +client - a client or mob +asset_list - A list of asset filenames to be sent to the client. Can optionally be assoicated with the asset's asset_cache_item datum. +Returns TRUE if any assets were sent.
send_assets_slowPrecache files without clogging up the browse() queue, used for passively sending files on connection start.
validate_configCheck the config is valid to load this transport +Returns TRUE or FALSE
+

Var Details

dont_mutate_filenames + + + + +

+

Don't mutate the filename of assets when sending via browse_rsc. +This is to make it easier to debug issues with assets, and allow server operators to bypass issues that make it to production. +If turning this on fixes asset issues, something isn't using get_asset_url and the asset isn't marked legacy, fix one of those.

Proc Details

Initialize +

+

Initialize - Called when SSassets initializes.

Load +

+

Called when the transport is loaded by the config controller, not called on the default transport unless it gets loaded by a config change.

get_asset_url +

+

Returns a url for a given asset. +asset_name - Name of the asset. +asset_cache_item - asset cache item datum for the asset, optional, overrides asset_name

register_asset +

+

Register a browser asset with the asset cache system. +returns a /datum/asset_cache_item. +mutiple calls to register the same asset under the same asset_name return the same datum.

+

Arguments:

+

send_assets +

+

Sends a list of browser assets to a client +client - a client or mob +asset_list - A list of asset filenames to be sent to the client. Can optionally be assoicated with the asset's asset_cache_item datum. +Returns TRUE if any assets were sent.

send_assets_slow +

+

Precache files without clogging up the browse() queue, used for passively sending files on connection start.

validate_config +

+

Check the config is valid to load this transport +Returns TRUE or FALSE

+ + + diff --git a/datum/asset_transport/webroot.html b/datum/asset_transport/webroot.html new file mode 100644 index 000000000000..edb7fcd83541 --- /dev/null +++ b/datum/asset_transport/webroot.html @@ -0,0 +1,80 @@ + + + + + + + /datum/asset_transport/webroot - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

CDN Webroot asset transport + + + +

+ +

CDN Webroot asset transport.

+ + + + + +

Procs

get_asset_urlReturns a url for a given asset. +asset_name - Name of the asset. +asset_cache_item - asset cache item datum for the asset, optional, overrides asset_name
load_existing_assetsProcesses thru any assets that were registered before we were loaded as a transport.
register_assetRegister a browser asset with the asset cache system +We also save it to the CDN webroot at this step instead of waiting for send_assets() +asset_name - the identifier of the asset +asset - the actual asset file or an asset_cache_item datum.
save_asset_to_webrootSaves the asset to the webroot taking into account namespaces and hashes.
send_assetswebroot asset sending - does nothing unless passed legacy assets
send_assets_slowwebroot slow asset sending - does nothing.

Proc Details

get_asset_url +

+

Returns a url for a given asset. +asset_name - Name of the asset. +asset_cache_item - asset cache item datum for the asset, optional, overrides asset_name

load_existing_assets +

+

Processes thru any assets that were registered before we were loaded as a transport.

register_asset +

+

Register a browser asset with the asset cache system +We also save it to the CDN webroot at this step instead of waiting for send_assets() +asset_name - the identifier of the asset +asset - the actual asset file or an asset_cache_item datum.

save_asset_to_webroot +

+

Saves the asset to the webroot taking into account namespaces and hashes.

send_assets +

+

webroot asset sending - does nothing unless passed legacy assets

send_assets_slow +

+

webroot slow asset sending - does nothing.

+ + + diff --git a/datum/authority/branch/role.html b/datum/authority/branch/role.html new file mode 100644 index 000000000000..3abf24a93a66 --- /dev/null +++ b/datum/authority/branch/role.html @@ -0,0 +1,58 @@ + + + + + + + /datum/authority/branch/role - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Role Authority + + + +

+ + + + +

Vars

role_mappingsList of mapped roles that should be used in place of usual ones

Procs

assign_rolesAssign roles to the players. Return roles that are still avialable. +If count is true, return role balancing weight instead.
calculate_role_weightCalculate role balance weight for one person joining as that role. This weight is used +when calculating the number of xenos both roundstart and burrowed larva they get for +people late joining. This weight also controls the size of local wildlife population, +survivors and the number of roundstart Squad Rifleman slots.
+

Var Details

role_mappings + + + + +

+

List of mapped roles that should be used in place of usual ones

Proc Details

assign_roles +

+

Assign roles to the players. Return roles that are still avialable. +If count is true, return role balancing weight instead.

calculate_role_weight +

+

Calculate role balance weight for one person joining as that role. This weight is used +when calculating the number of xenos both roundstart and burrowed larva they get for +people late joining. This weight also controls the size of local wildlife population, +survivors and the number of roundstart Squad Rifleman slots.

+ + + diff --git a/datum/autoreply.html b/datum/autoreply.html new file mode 100644 index 000000000000..ccfcc04dd5de --- /dev/null +++ b/datum/autoreply.html @@ -0,0 +1,50 @@ + + + + + + + /datum/autoreply - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/autoreply + + + +

+ + + + +

Vars

closerIf the autoreply will automatically close the ahelp or not.
messageThe detailed message in the auto reply.
titleWhat shows up in the list of replies, and the big red header on the reply itself.
+

Var Details

closer + + + + +

+

If the autoreply will automatically close the ahelp or not.

message + + + + +

+

The detailed message in the auto reply.

title + + + + +

+

What shows up in the list of replies, and the big red header on the reply itself.

+ + + diff --git a/datum/autowiki.html b/datum/autowiki.html new file mode 100644 index 000000000000..420629f6cca2 --- /dev/null +++ b/datum/autowiki.html @@ -0,0 +1,99 @@ + + + + + + + /datum/autowiki - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/autowiki + + + +

+ +

A representation of an automated wiki page.

+ + + + + +

Vars

generate_multipleIf the generation of this autowiki should call /generate_multiple(), +which should return a list of list(title = "Page Title", contents) +allowing for the generation of multiple pages in the same autowiki
pageThe page on the wiki to be replaced. +This should never be a user-facing page, like "Guide to circuits". +It should always be a template that only Autowiki should touch. +For example: "Template:Autowiki/CircuitInfo".

Procs

escape_valueEscape a parameter such that it can be correctly put inside a wiki output
generateOverride and return the new text of the page. +This proc can be impure, usually to call upload_file.
include_templateGenerates an auto formatted template user. +Your autowiki should ideally be a lot of these. +It lets wiki editors edit it much easier later, without having to enter repo. +Parameters will be passed in by name. That means your template should expect +something that looks like {{ Autowiki_Circuit|name=Combiner|description=This combines }} +Lists, which must be array-like (no keys), will be turned into a flat list with their key and a number, +such that list("food" = list("fruit", "candy")) -> food1=fruit|food2=candy +Your page should respect AUTOWIKI_SKIP, and check for this using IS_AUTOWIKI_SKIP
upload_iconTakes an icon and uploads it to Autowiki-name.png. +Do your best to make sure this is unique, so it doesn't clash with other autowiki icons.
+

Var Details

generate_multiple + + + + +

+

If the generation of this autowiki should call /generate_multiple(), +which should return a list of list(title = "Page Title", contents) +allowing for the generation of multiple pages in the same autowiki

page + + + + +

+

The page on the wiki to be replaced. +This should never be a user-facing page, like "Guide to circuits". +It should always be a template that only Autowiki should touch. +For example: "Template:Autowiki/CircuitInfo".

Proc Details

escape_value +

+

Escape a parameter such that it can be correctly put inside a wiki output

generate +

+

Override and return the new text of the page. +This proc can be impure, usually to call upload_file.

include_template +

+

Generates an auto formatted template user. +Your autowiki should ideally be a lot of these. +It lets wiki editors edit it much easier later, without having to enter repo. +Parameters will be passed in by name. That means your template should expect +something that looks like {{ Autowiki_Circuit|name=Combiner|description=This combines }} +Lists, which must be array-like (no keys), will be turned into a flat list with their key and a number, +such that list("food" = list("fruit", "candy")) -> food1=fruit|food2=candy +Your page should respect AUTOWIKI_SKIP, and check for this using IS_AUTOWIKI_SKIP

upload_icon +

+

Takes an icon and uploads it to Autowiki-name.png. +Do your best to make sure this is unique, so it doesn't clash with other autowiki icons.

+ + + diff --git a/datum/beam.html b/datum/beam.html new file mode 100644 index 000000000000..5b7e7c5a71ee --- /dev/null +++ b/datum/beam.html @@ -0,0 +1,143 @@ + + + + + + + /datum/beam - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/beam + + + +

+ + + + + + + + + + + + + +

Vars

always_turnwill the origin object always turn to face the target?
beam_typethe objects placed in the elements list
elementslist of beam objects. These have their visuals set by the visuals var which is created on starting
iconicon used by the beam.
icon_stateicon state of the main segments of the beam
max_distanceThe beam will qdel if it's longer than this many tiles.
originwhere the beam goes from
targetwhere the beam goes to
visualsThis is used as the visual_contents of beams, so you can apply one effect to this and the whole beam will look like that. never gets deleted on redrawing.

Procs

DrawCreates the beam effects and places them in a line from the origin to the target. Sets their rotation to make the beams face the target, too.
StartProc called by the atom Beam() proc. Sets up signals, and draws the beam for the first time.
redrawingTriggered by signals set up when the beam is set up. If it's still sane to create a beam, it removes the old beam, creates a new one. Otherwise it kills the beam.
+

Var Details

always_turn + + + + +

+

will the origin object always turn to face the target?

beam_type + + + + +

+

the objects placed in the elements list

elements + + + + +

+

list of beam objects. These have their visuals set by the visuals var which is created on starting

icon + + + + +

+

icon used by the beam.

icon_state + + + + +

+

icon state of the main segments of the beam

max_distance + + + + +

+

The beam will qdel if it's longer than this many tiles.

origin + + + + +

+

where the beam goes from

target + + + + +

+

where the beam goes to

visuals + + + + +

+

This is used as the visual_contents of beams, so you can apply one effect to this and the whole beam will look like that. never gets deleted on redrawing.

Proc Details

Draw +

+

Creates the beam effects and places them in a line from the origin to the target. Sets their rotation to make the beams face the target, too.

Start +

+

Proc called by the atom Beam() proc. Sets up signals, and draws the beam for the first time.

redrawing +

+

Triggered by signals set up when the beam is set up. If it's still sane to create a beam, it removes the old beam, creates a new one. Otherwise it kills the beam.

+

Arguments: +mover: either the origin of the beam or the target of the beam that moved. +oldloc: from where mover moved. +direction: in what direction mover moved from.

+ + + diff --git a/datum/behavior_delegate.html b/datum/behavior_delegate.html new file mode 100644 index 000000000000..4a68ae52b9cb --- /dev/null +++ b/datum/behavior_delegate.html @@ -0,0 +1,127 @@ + + + + + + + /datum/behavior_delegate - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Set This + + + +

+ + + + + + + + + + + + + +

Vars

bound_xenoThe Xeno we handle mutator state for
nameUserfriendly name of the mutator

Procs

append_to_statReturns any extra information to display via stat.
handle_slashHandling specific behavior - if TRUE, the attack will not have an attack delay by default.
melee_attack_modify_damageModifies the damage of a slash based on the current mutator state. +Do not override this proc unless you need to affect the rolled damage +of an attack before it happens
on_collideUsed to do something when a xeno collides with a movable atom
on_hitby_projectileAny special behaviors on reception of a projectile attack
on_kill_mobBehaviour when killing people
on_lifeCalled during Xeno life +Handles anything that needs to be periodically ticked +for this mutator to function
on_update_iconsHandling the xeno icon state or overlays, return TRUE if icon state should not be changed
override_intentUsed to override an intent for some abilities that must force harm on next attack_alien()
ranged_attack_on_hitTechnically speaking, these are called whenever a xeno projectile impacts +a target (acid spit), NOT when gas damages them. +If you want to deal any more damage, just do it in the addl. effects proc +adding damage to a projectile in the actual proc is highly nontrivial
+

Var Details

bound_xeno + + + + +

+

The Xeno we handle mutator state for

name + + + + +

+

Userfriendly name of the mutator

Proc Details

append_to_stat +

+

Returns any extra information to display via stat.

handle_slash +

+

Handling specific behavior - if TRUE, the attack will not have an attack delay by default.

melee_attack_modify_damage +

+

Modifies the damage of a slash based on the current mutator state. +Do not override this proc unless you need to affect the rolled damage +of an attack before it happens

on_collide +

+

Used to do something when a xeno collides with a movable atom

on_hitby_projectile +

+

Any special behaviors on reception of a projectile attack

on_kill_mob +

+

Behaviour when killing people

on_life +

+

Called during Xeno life +Handles anything that needs to be periodically ticked +for this mutator to function

on_update_icons +

+

Handling the xeno icon state or overlays, return TRUE if icon state should not be changed

override_intent +

+

Used to override an intent for some abilities that must force harm on next attack_alien()

ranged_attack_on_hit +

+

Technically speaking, these are called whenever a xeno projectile impacts +a target (acid spit), NOT when gas damages them. +If you want to deal any more damage, just do it in the addl. effects proc +adding damage to a projectile in the actual proc is highly nontrivial

+ + + diff --git a/datum/behavior_delegate/carrier_eggsac.html b/datum/behavior_delegate/carrier_eggsac.html new file mode 100644 index 000000000000..5e36d6ebbd10 --- /dev/null +++ b/datum/behavior_delegate/carrier_eggsac.html @@ -0,0 +1,64 @@ + + + + + + + /datum/behavior_delegate/carrier_eggsac - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Eggsac Carrier Behavior Delegate + + + +

+ + + + + + +

Vars

egg_sustain_capTotal number of eggs which can be sustained defined as EGGSAC_OFF_WEED_EGGCAP
eggs_sustainedList of /obj/effect/alien/egg/carrier_egg sustained by the carrier on normal weeds
sustain_distanceDistance from the egg that the carrier can go before it stops sustaining it

Procs

DestroyRemove all references to src in eggs_sustained
remove_egg_ownerRemove owner of egg
+

Var Details

egg_sustain_cap + + + + +

+

Total number of eggs which can be sustained defined as EGGSAC_OFF_WEED_EGGCAP

eggs_sustained + + + + +

+

List of /obj/effect/alien/egg/carrier_egg sustained by the carrier on normal weeds

sustain_distance + + + + +

+

Distance from the egg that the carrier can go before it stops sustaining it

Proc Details

Destroy +

+

Remove all references to src in eggs_sustained

remove_egg_owner +

+

Remove owner of egg

+ + + diff --git a/datum/behavior_delegate/crusher_base.html b/datum/behavior_delegate/crusher_base.html new file mode 100644 index 000000000000..faa786358c05 --- /dev/null +++ b/datum/behavior_delegate/crusher_base.html @@ -0,0 +1,36 @@ + + + + + + + /datum/behavior_delegate/crusher_base - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Base Crusher Behavior Delegate + + + +

+ + +

Vars

is_chargingUtilized to update charging animation.
+

Var Details

is_charging + + + + +

+

Utilized to update charging animation.

+ + + diff --git a/datum/behavior_delegate/lurker_base.html b/datum/behavior_delegate/lurker_base.html new file mode 100644 index 000000000000..65935a1ce1d3 --- /dev/null +++ b/datum/behavior_delegate/lurker_base.html @@ -0,0 +1,42 @@ + + + + + + + /datum/behavior_delegate/lurker_base - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Base Lurker Behavior Delegate + + + +

+ + + +

Procs

on_invisibilityImplementation for enabling invisibility.
on_invisibility_offImplementation for disabling invisibility.

Proc Details

on_invisibility +

+

Implementation for enabling invisibility.

on_invisibility_off +

+

Implementation for disabling invisibility.

+ + + diff --git a/datum/behavior_delegate/praetorian_base.html b/datum/behavior_delegate/praetorian_base.html new file mode 100644 index 000000000000..de196782cd7e --- /dev/null +++ b/datum/behavior_delegate/praetorian_base.html @@ -0,0 +1,36 @@ + + + + + + + /datum/behavior_delegate/praetorian_base - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Base Praetorian Behavior Delegate + + + +

+ + +

Vars

reward_shieldreward for hitting shots instead of spamming acid ball
+

Var Details

reward_shield + + + + +

+

reward for hitting shots instead of spamming acid ball

+ + + diff --git a/datum/bioscan_data.html b/datum/bioscan_data.html new file mode 100644 index 000000000000..4175ebc9a729 --- /dev/null +++ b/datum/bioscan_data.html @@ -0,0 +1,72 @@ + + + + + + + /datum/bioscan_data - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/bioscan_data + + + +

+ + + + + + +

Vars

larvaAll larva on all hives
marine_planet_locationRandom mentioned locations

Procs

ares_bioscanThe announcement to all Humans. Slightly off for the planet and elsewhere, accurate for the ship.
qm_bioscanThe announcement to all Xenos. Slightly off for the human ship, accurate otherwise.
yautja_bioscanAll larva on all hives +Count all larva across all hives +Keeping track of peak numbers to determine when a side is "losing" +Pick one random location to disclose +Inform Yautja and Ghosts exactly what's what.
+

Var Details

larva + + + + +

+

All larva on all hives

marine_planet_location + + + + +

+

Random mentioned locations

Proc Details

ares_bioscan +

+

The announcement to all Humans. Slightly off for the planet and elsewhere, accurate for the ship.

qm_bioscan +

+

The announcement to all Xenos. Slightly off for the human ship, accurate otherwise.

yautja_bioscan +

+

All larva on all hives +Count all larva across all hives +Keeping track of peak numbers to determine when a side is "losing" +Pick one random location to disclose +Inform Yautja and Ghosts exactly what's what.

+ + + diff --git a/datum/bitfield.html b/datum/bitfield.html new file mode 100644 index 000000000000..08636e3a55ba --- /dev/null +++ b/datum/bitfield.html @@ -0,0 +1,43 @@ + + + + + + + /datum/bitfield - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/bitfield + + + +

+ +

Specifies a bitfield for smarter debugging

+ +

Vars

flagsAn associative list of the readable flag and its true value
variableThe variable name that contains the bitfield
+

Var Details

flags + + + + +

+

An associative list of the readable flag and its true value

variable + + + + +

+

The variable name that contains the bitfield

+ + + diff --git a/datum/cas_fire_envelope.html b/datum/cas_fire_envelope.html new file mode 100644 index 000000000000..2281da520d67 --- /dev/null +++ b/datum/cas_fire_envelope.html @@ -0,0 +1,84 @@ + + + + + + + /datum/cas_fire_envelope - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/cas_fire_envelope + + + +

+ + + + + + + + + +

Procs

change_directionChange attack vector for firemission
chat_warningStep 2, 3, 4: Warns nearby mobs of the incoming fire mission. Warning as 1 is non-precise, whereas 2 and 3 are precise.
end_cooldownStep 7: Sets the fire mission stat to FIRE_MISSION_STATE_IDLE
flyoffStep 6: Sets the fire mission stat to FIRE_MISSION_STATE_COOLDOWN
on_tracked_object_delSignal handler for when we are viewing a object in cam is qdel'd (but camera actually is actually some other obj)
open_fireStep 5: Actually executes the fire mission updating stat to FIRE_MISSION_STATE_FIRING and then FIRE_MISSION_STATE_OFF_TARGET
play_soundStep 1: Sets the stat to FIRE_MISSION_STATE_ON_TARGET and starts the sound effect for the fire mission.
untrack_objectCall to unregister the on_tracked_object_del behavior

Proc Details

change_direction +

+

Change attack vector for firemission

chat_warning +

+

Step 2, 3, 4: Warns nearby mobs of the incoming fire mission. Warning as 1 is non-precise, whereas 2 and 3 are precise.

end_cooldown +

+

Step 7: Sets the fire mission stat to FIRE_MISSION_STATE_IDLE

flyoff +

+

Step 6: Sets the fire mission stat to FIRE_MISSION_STATE_COOLDOWN

on_tracked_object_del +

+

Signal handler for when we are viewing a object in cam is qdel'd (but camera actually is actually some other obj)

open_fire +

+

Step 5: Actually executes the fire mission updating stat to FIRE_MISSION_STATE_FIRING and then FIRE_MISSION_STATE_OFF_TARGET

play_sound +

+

Step 1: Sets the stat to FIRE_MISSION_STATE_ON_TARGET and starts the sound effect for the fire mission.

untrack_object +

+

Call to unregister the on_tracked_object_del behavior

+ + + diff --git a/datum/cas_fire_mission.html b/datum/cas_fire_mission.html new file mode 100644 index 000000000000..bd674056ca70 --- /dev/null +++ b/datum/cas_fire_mission.html @@ -0,0 +1,37 @@ + + + + + + + /datum/cas_fire_mission - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Unnamed Firemission + + + +

+ + +

Procs

add_user_to_sim_trackingUsed only in the simulation room, proper tracking is done in the add_user_to_tracking envelop. +This shouldn't be used in any other procs.

Proc Details

add_user_to_sim_tracking +

+

Used only in the simulation room, proper tracking is done in the add_user_to_tracking envelop. +This shouldn't be used in any other procs.

+ + + diff --git a/datum/cas_fire_mission_record.html b/datum/cas_fire_mission_record.html new file mode 100644 index 000000000000..350a7ea4546d --- /dev/null +++ b/datum/cas_fire_mission_record.html @@ -0,0 +1,57 @@ + + + + + + + /datum/cas_fire_mission_record - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/cas_fire_mission_record + + + +

+ +

Defines firing patterns in Fire Missions, transverse to its firing direction

+ + + +

Vars

offsetsList of transverse offsets for each firing step - null meaning not shooting
weaponWeapon relevant to this fire mission record

Procs

get_ammoGet current ammo status for a weapon
get_offsetsGet offset range allowed when firing weapon in this configuration
+

Var Details

offsets + + + + +

+

List of transverse offsets for each firing step - null meaning not shooting

weapon + + + + +

+

Weapon relevant to this fire mission record

Proc Details

get_ammo +

+

Get current ammo status for a weapon

get_offsets +

+

Get offset range allowed when firing weapon in this configuration

+ + + diff --git a/datum/caste_datum.html b/datum/caste_datum.html new file mode 100644 index 000000000000..35ec19d5f645 --- /dev/null +++ b/datum/caste_datum.html @@ -0,0 +1,197 @@ + + + + + + + /datum/caste_datum - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/caste_datum + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

acid_splash_cooldownTime it takes between acid splash retaliate procs. Variable per caste, for if we want future castes that are acid bombs
adjust_size_xAdjust pixel size. 0.x is smaller, 1.x is bigger, percentage based.
armor_deflectionChance of deflecting projectiles.
aura_allowed"Evolving" removed for the time being
aura_strengthThe strength of our aura. Zero means we can't emit one
available_strainsA list of strain typepaths that are able to be chosen by this caste.
build_time_multDefault build time and build distance
deevolves_towhat caste or castes to de-evolve to.
evolution_allowedAre they allowed to evolve (and have their evolution progress group)
evolution_thresholdThreshold to next evolution
evolve_without_queenwhether they can get evo points without needing an ovi queen
evolves_toThis is where you add castes to evolve into. "Separated", "by", "commas"
fire_vulnerability_multif fire_immunity is set to be vulnerable, how much will fire damage be multiplied. Defines in xeno.dm
hugger_nurturingif a hugger is held in hand, won't attempt to leap and kill itself
innate_healingwhether the xeno heals even outside weeds.
is_intelligentIf they can use consoles, etc. Set on Queen
melee_vehicle_damageallows fine tuning melee damage to vehicles per caste.
minimap_iconIconstate for the xeno on the minimap
minimap_leadered_overlayThe iconstate for leadered xenos on the minimap, added as overlay
spit_delayDelay timer for spitting
spit_typeslist of datum projectile types the xeno can use.
spit_windupWindup for spits
tremor_cooldownBig strong ability, big cooldown.
xeno_explosion_resistanceArmor but for explosions
+

Var Details

acid_splash_cooldown + + + + +

+

Time it takes between acid splash retaliate procs. Variable per caste, for if we want future castes that are acid bombs

adjust_size_x + + + + +

+

Adjust pixel size. 0.x is smaller, 1.x is bigger, percentage based.

armor_deflection + + + + +

+

Chance of deflecting projectiles.

aura_allowed + + + + +

+

"Evolving" removed for the time being

aura_strength + + + + +

+

The strength of our aura. Zero means we can't emit one

available_strains + + + + +

+

A list of strain typepaths that are able to be chosen by this caste.

build_time_mult + + + + +

+

Default build time and build distance

deevolves_to + + + + +

+

what caste or castes to de-evolve to.

evolution_allowed + + + + +

+

Are they allowed to evolve (and have their evolution progress group)

evolution_threshold + + + + +

+

Threshold to next evolution

evolve_without_queen + + + + +

+

whether they can get evo points without needing an ovi queen

evolves_to + + + + +

+

This is where you add castes to evolve into. "Separated", "by", "commas"

fire_vulnerability_mult + + + + +

+

if fire_immunity is set to be vulnerable, how much will fire damage be multiplied. Defines in xeno.dm

hugger_nurturing + + + + +

+

if a hugger is held in hand, won't attempt to leap and kill itself

innate_healing + + + + +

+

whether the xeno heals even outside weeds.

is_intelligent + + + + +

+

If they can use consoles, etc. Set on Queen

melee_vehicle_damage + + + + +

+

allows fine tuning melee damage to vehicles per caste.

minimap_icon + + + + +

+

Iconstate for the xeno on the minimap

minimap_leadered_overlay + + + + +

+

The iconstate for leadered xenos on the minimap, added as overlay

spit_delay + + + + +

+

Delay timer for spitting

spit_types + + + + +

+

list of datum projectile types the xeno can use.

spit_windup + + + + +

+

Windup for spits

tremor_cooldown + + + + +

+

Big strong ability, big cooldown.

xeno_explosion_resistance + + + + +

+

Armor but for explosions

+ + + diff --git a/datum/character_trait.html b/datum/character_trait.html new file mode 100644 index 000000000000..7cc7c1f484b9 --- /dev/null +++ b/datum/character_trait.html @@ -0,0 +1,103 @@ + + + + + + + /datum/character_trait - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/character_trait + + + +

+ +

Character traits +Similar to the traits from Project Zomboid

+ + + + + + + + +

Vars

applyableWhether the trait can be applied to mobs +Do not forget to override this var for any child types +Only set this to TRUE for "abstract" parent types
costThe point cost for the preferences menu
refresh_choicesRefreshes the character creation menu when picked
trait_groupTrait groups determine whether this trait +can be applied to a given mob

Procs

apply_traitPut the actual changes made to the human mob in this proc
can_give_traitA wrapper to check if the trait can be applied first
give_traitGives the target the trait
try_give_traitPerforms the check for whether the trait is valid for target and then +gives it to target
unapply_traitRevert character trait changes in this proc
+

Var Details

applyable + + + + +

+

Whether the trait can be applied to mobs +Do not forget to override this var for any child types +Only set this to TRUE for "abstract" parent types

cost + + + + +

+

The point cost for the preferences menu

refresh_choices + + + + +

+

Refreshes the character creation menu when picked

trait_group + + + + +

+

Trait groups determine whether this trait +can be applied to a given mob

+

This var should always be set to the +trait group's typepath

Proc Details

apply_trait +

+

Put the actual changes made to the human mob in this proc

can_give_trait +

+

A wrapper to check if the trait can be applied first

give_trait +

+

Gives the target the trait

try_give_trait +

+

Performs the check for whether the trait is valid for target and then +gives it to target

unapply_trait +

+

Revert character trait changes in this proc

+ + + diff --git a/datum/character_trait/biology/bad_leg.html b/datum/character_trait/biology/bad_leg.html new file mode 100644 index 000000000000..a0ea5a179e6e --- /dev/null +++ b/datum/character_trait/biology/bad_leg.html @@ -0,0 +1,57 @@ + + + + + + + /datum/character_trait/biology/bad_leg - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/character_trait/biology/bad_leg + + + +

+ + + + + +

Vars

bad_cane_rolesRoles that get the shitty wooden pole.
fancy_cane_rolesRoles that get the fancy cane.
inapplicable_rolesRoles that will not allow the trait to be added. (Due to being designed for combat, heavy physical duty, or just being too junior to be worth keeping around as a cripple.)
inapplicable_speciesSpecies that will not allow the trait to be added.
+

Var Details

bad_cane_roles + + + + +

+

Roles that get the shitty wooden pole.

fancy_cane_roles + + + + +

+

Roles that get the fancy cane.

inapplicable_roles + + + + +

+

Roles that will not allow the trait to be added. (Due to being designed for combat, heavy physical duty, or just being too junior to be worth keeping around as a cripple.)

inapplicable_species + + + + +

+

Species that will not allow the trait to be added.

+ + + diff --git a/datum/character_trait/biology/lisp.html b/datum/character_trait/biology/lisp.html new file mode 100644 index 000000000000..daf61ebc9351 --- /dev/null +++ b/datum/character_trait/biology/lisp.html @@ -0,0 +1,50 @@ + + + + + + + /datum/character_trait/biology/lisp - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/character_trait/biology/lisp + + + +

+ + + + +

Vars

inapplicable_rolesRoles that will not allow the trait to be added
inapplicable_speciesSpecies that will not allow the trait to be added.
maximum_rankingMaximum rank at which you can have this trait.
+

Var Details

inapplicable_roles + + + + +

+

Roles that will not allow the trait to be added

inapplicable_species + + + + +

+

Species that will not allow the trait to be added.

maximum_ranking + + + + +

+

Maximum rank at which you can have this trait.

+ + + diff --git a/datum/character_trait_group.html b/datum/character_trait_group.html new file mode 100644 index 000000000000..58ca0eeddf8e --- /dev/null +++ b/datum/character_trait_group.html @@ -0,0 +1,76 @@ + + + + + + + /datum/character_trait_group - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/character_trait_group + + + +

+ +

Character trait groups for constraints (if any)

+ + + + +

Vars

base_typeOverride this variable if you want this +trait group to be constraining +Only need to override for the parent +Example, parent type /datum/character_trait_group/language, +set this var to /datum/character_trait_group/language
maxThe maximum amount of traits from +this trait group that a mob can have
mutually_exclusiveWhether a mob can only have one +trait of this trait group
trait_group_nameFor player prefs menu
traitsA list of this group's traits populated in /datum/character_trait/New()
+

Var Details

base_type + + + + +

+

Override this variable if you want this +trait group to be constraining +Only need to override for the parent +Example, parent type /datum/character_trait_group/language, +set this var to /datum/character_trait_group/language

max + + + + +

+

The maximum amount of traits from +this trait group that a mob can have

mutually_exclusive + + + + +

+

Whether a mob can only have one +trait of this trait group

trait_group_name + + + + +

+

For player prefs menu

traits + + + + +

+

A list of this group's traits populated in /datum/character_trait/New()

+ + + diff --git a/datum/chem_property.html b/datum/chem_property.html new file mode 100644 index 000000000000..35deeaf267e2 --- /dev/null +++ b/datum/chem_property.html @@ -0,0 +1,43 @@ + + + + + + + /datum/chem_property - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/chem_property + + + +

+ + + +

Vars

cost_penaltya cost penalty is added at each level above 5 (+1 at 6, +2 at 7, +4 at 8, +5 at 9, +7 at 10)
volatileShould reagent with this property explode/start fire when mixed more than overdose threshold at once?
+

Var Details

cost_penalty + + + + +

+

a cost penalty is added at each level above 5 (+1 at 6, +2 at 7, +4 at 8, +5 at 9, +7 at 10)

volatile + + + + +

+

Should reagent with this property explode/start fire when mixed more than overdose threshold at once?

+ + + diff --git a/datum/chemical_data.html b/datum/chemical_data.html new file mode 100644 index 000000000000..d16e3e47dbb0 --- /dev/null +++ b/datum/chemical_data.html @@ -0,0 +1,36 @@ + + + + + + + /datum/chemical_data - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/chemical_data + + + +

+ + +

Vars

credits_gainedcredits gained from survivor clearance cards
+

Var Details

credits_gained + + + + +

+

credits gained from survivor clearance cards

+ + + diff --git a/datum/cm_objective.html b/datum/cm_objective.html new file mode 100644 index 000000000000..ad4fbeb69e87 --- /dev/null +++ b/datum/cm_objective.html @@ -0,0 +1,35 @@ + + + + + + + /datum/cm_objective - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

An objective to complete + + + +

+ + +

Procs

award_pointsAdd points to the techtree of whoever owns the objective.

Proc Details

award_points +

+

Add points to the techtree of whoever owns the objective.

+ + + diff --git a/datum/cm_objective/recover_corpses.html b/datum/cm_objective/recover_corpses.html new file mode 100644 index 000000000000..85e1ea7bdc54 --- /dev/null +++ b/datum/cm_objective/recover_corpses.html @@ -0,0 +1,43 @@ + + + + + + + /datum/cm_objective/recover_corpses - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Recover corpses + + + +

+ + + +

Vars

corpsesList of list of active corpses per tech-faction ownership

Procs

score_corpseGet score value for a given corpse
+

Var Details

corpses + + + + +

+

List of list of active corpses per tech-faction ownership

Proc Details

score_corpse +

+

Get score value for a given corpse

+ + + diff --git a/datum/component.html b/datum/component.html new file mode 100644 index 000000000000..de71cbcd11e2 --- /dev/null +++ b/datum/component.html @@ -0,0 +1,181 @@ + + + + + + + /datum/component - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Component + + + +

+ +

The component datum

+

A component should be a single standalone unit +of functionality, that works by receiving signals from it's parent +object to provide some single functionality (i.e a slippery component) +that makes the object it's attached to cause people to slip over. +Useful when you want shared behaviour independent of type inheritance

+ + + + + + + + + + + + + + + + +

Vars

can_transferOnly set to true if you are able to properly transfer this component
dupe_modeDefines how duplicate existing components are handled when added to a datum
dupe_typeThe type to check for duplication
parentThe datum this components belongs to

Procs

CheckDupeComponentCalled on a component when a component of the same type was added to the same parent with COMPONENT_DUPE_SELECTIVE
DestroyProperly removes the component from parent and cleans up references
InheritComponentCalled on a component when a component of the same type was added to the same parent
InitializeCalled during component creation with the same arguments as in new excluding parent.
NewCreate a new component.
PostTransferCallback Just after a component is transferred
PreTransferCallback Just before this component is transferred
RegisterWithParentRegister the component with the parent object
RemoveComponentRemoves the component from parent, ends up with a null parent
UnregisterFromParentUnregister from our parent object
_GetInverseTypeListInternal proc to create a list of our type and all parent types
_JoinParentInternal proc to handle behaviour of components when joining a parent
_RemoveFromParentInternal proc to handle behaviour when being removed from a parent
+

Var Details

can_transfer + + + + +

+

Only set to true if you are able to properly transfer this component

+

At a minimum RegisterWithParent and UnregisterFromParent should be used

+

Make sure you also implement PostTransfer for any post transfer handling

dupe_mode + + + + +

+

Defines how duplicate existing components are handled when added to a datum

+

See COMPONENT_DUPE_* definitions for available options

dupe_type + + + + +

+

The type to check for duplication

+

null means exact match on type (default)

+

Any other type means that and all subtypes

parent + + + + +

+

The datum this components belongs to

Proc Details

CheckDupeComponent +

+

Called on a component when a component of the same type was added to the same parent with COMPONENT_DUPE_SELECTIVE

+

See /datum/component/var/dupe_mode

+

C's type will always be the same of the called component

+

return TRUE if you are absorbing the component, otherwise FALSE if you are fine having it exist as a duplicate component

Destroy +

+

Properly removes the component from parent and cleans up references

+

Arguments:

+

InheritComponent +

+

Called on a component when a component of the same type was added to the same parent

+

See /datum/component/var/dupe_mode

+

C's type will always be the same of the called component

Initialize +

+

Called during component creation with the same arguments as in new excluding parent.

+

Do not call qdel(src) from this function, return COMPONENT_INCOMPATIBLE instead

New +

+

Create a new component.

+

Additional arguments are passed to Initialize()

+

Arguments:

+

PostTransfer +

+

Callback Just after a component is transferred

+

Use this to do any special setup you need to do after being moved to a new object

+

Do not call qdel(src) from this function, return COMPONENT_INCOMPATIBLE instead

PreTransfer +

+

Callback Just before this component is transferred

+

Use this to do any special cleanup you might need to do before being deregged from an object

RegisterWithParent +

+

Register the component with the parent object

+

Use this proc to register with your parent object

+

Overridable proc that's called when added to a new parent

RemoveComponent +

+

Removes the component from parent, ends up with a null parent

UnregisterFromParent +

+

Unregister from our parent object

+

Use this proc to unregister from your parent object

+

Overridable proc that's called when removed from a parent

_GetInverseTypeList +

+

Internal proc to create a list of our type and all parent types

_JoinParent +

+

Internal proc to handle behaviour of components when joining a parent

_RemoveFromParent +

+

Internal proc to handle behaviour when being removed from a parent

+ + + diff --git a/datum/component/automatedfire.html b/datum/component/automatedfire.html new file mode 100644 index 000000000000..e549ba7df09a --- /dev/null +++ b/datum/component/automatedfire.html @@ -0,0 +1,71 @@ + + + + + + + /datum/component/automatedfire - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/component/automatedfire + + + +

+ + + + + + + +

Vars

nextContains the reference to the next component in the bucket, used by autofire subsystem
next_fireContains the scheduled fire time, used for scheduling EOL
prevContains the reference to the previous component in the bucket, used by autofire subsystem
shooterThe owner of this component

Procs

process_shotHandle the firing of the autofire component
schedule_shotschedule the shooter into the system, inserting it into the next fire queue
+

Var Details

next + + + + +

+

Contains the reference to the next component in the bucket, used by autofire subsystem

next_fire + + + + +

+

Contains the scheduled fire time, used for scheduling EOL

prev + + + + +

+

Contains the reference to the previous component in the bucket, used by autofire subsystem

shooter + + + + +

+

The owner of this component

Proc Details

process_shot +

+

Handle the firing of the autofire component

schedule_shot +

+

schedule the shooter into the system, inserting it into the next fire queue

+ + + diff --git a/datum/component/automatedfire/autofire.html b/datum/component/automatedfire/autofire.html new file mode 100644 index 000000000000..50e64adf99d6 --- /dev/null +++ b/datum/component/automatedfire/autofire.html @@ -0,0 +1,185 @@ + + + + + + + /datum/component/automatedfire/autofire - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/component/automatedfire/autofire + + + +

+ + + + + + + + + + + + + + + + + + + + + + + +

Vars

auto_fire_shot_delayDelay between two shots when in full auto
automatic_delay_multThe multiplier for how much slower the parent should fire in automatic mode. 1 is normal, 1.2 is 20% slower, 2 is 100% slower, etc.
burst_shots_to_fireHow many bullets are fired in burst mode
burstfire_shot_delayDelay between two burst shots
burstingIf we are in a burst
callback_burstingCallback to set bursting mode on the parent
callback_display_ammoCallback to ask the parent to display ammo
callback_fireCallback to ask the parent to fire
callback_reset_fireCallback to ask the parent to reset its firing vars
callback_set_firingCallback to set parent's fa_firing
fire_modeThe current fire mode of the shooter
have_to_reset_at_burst_endIf TRUE, the shooter will reset its references at the end of the burst
shootingIf the shooter is currently shooting
shots_firedCount the shots fired when bursting

Procs

hard_resetWe are burst firing, we can't clean the state now. We will do it when the burst is over +Hard reset the autofire, happens when the shooter fall/is thrown, at the end of a burst or when it runs out of ammunition
initiate_shotInsert the component in the bucket system if it was not in already
modify_burst_shots_to_fireSetter for the number of shots in a burst
modify_burstfire_shot_delaySetter for burst shot delay
modify_fire_modeSetter for fire mode
modify_fire_shot_delaySetter for auto fire shot delay
process_shotAsk the shooter to fire and schedule the next shot if need
stop_firingRemove the component from the bucket system if it was in
+

Var Details

auto_fire_shot_delay + + + + +

+

Delay between two shots when in full auto

automatic_delay_mult + + + + +

+

The multiplier for how much slower the parent should fire in automatic mode. 1 is normal, 1.2 is 20% slower, 2 is 100% slower, etc.

burst_shots_to_fire + + + + +

+

How many bullets are fired in burst mode

burstfire_shot_delay + + + + +

+

Delay between two burst shots

bursting + + + + +

+

If we are in a burst

callback_bursting + + + + +

+

Callback to set bursting mode on the parent

callback_display_ammo + + + + +

+

Callback to ask the parent to display ammo

callback_fire + + + + +

+

Callback to ask the parent to fire

callback_reset_fire + + + + +

+

Callback to ask the parent to reset its firing vars

callback_set_firing + + + + +

+

Callback to set parent's fa_firing

fire_mode + + + + +

+

The current fire mode of the shooter

have_to_reset_at_burst_end + + + + +

+

If TRUE, the shooter will reset its references at the end of the burst

shooting + + + + +

+

If the shooter is currently shooting

shots_fired + + + + +

+

Count the shots fired when bursting

Proc Details

hard_reset +

+

We are burst firing, we can't clean the state now. We will do it when the burst is over +Hard reset the autofire, happens when the shooter fall/is thrown, at the end of a burst or when it runs out of ammunition

initiate_shot +

+

Insert the component in the bucket system if it was not in already

modify_burst_shots_to_fire +

+

Setter for the number of shots in a burst

modify_burstfire_shot_delay +

+

Setter for burst shot delay

modify_fire_mode +

+

Setter for fire mode

modify_fire_shot_delay +

+

Setter for auto fire shot delay

process_shot +

+

Ask the shooter to fire and schedule the next shot if need

stop_firing +

+

Remove the component from the bucket system if it was in

+ + + diff --git a/datum/component/bad_leg.html b/datum/component/bad_leg.html new file mode 100644 index 000000000000..d018c7574523 --- /dev/null +++ b/datum/component/bad_leg.html @@ -0,0 +1,71 @@ + + + + + + + /datum/component/bad_leg - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/component/bad_leg + + + +

+ + + + + + + +

Vars

affected_limbBound limb.
bound_actionThe bound action to reduce steps tracker.
last_message_timeHolds the last time a message was sent to prevent spam.
parent_humanBound human.
steps_walkingTracker for steps walked.

Procs

rest_legs_painThis prevents weird shit like corpses being dragged triggering the messages.
+

Var Details

affected_limb + + + + +

+

Bound limb.

bound_action + + + + +

+

The bound action to reduce steps tracker.

last_message_time + + + + +

+

Holds the last time a message was sent to prevent spam.

parent_human + + + + +

+

Bound human.

steps_walking + + + + +

+

Tracker for steps walked.

Proc Details

rest_legs_pain +

+

This prevents weird shit like corpses being dragged triggering the messages.

+ + + diff --git a/datum/component/bonus_damage_stack.html b/datum/component/bonus_damage_stack.html new file mode 100644 index 000000000000..7f9718a99541 --- /dev/null +++ b/datum/component/bonus_damage_stack.html @@ -0,0 +1,64 @@ + + + + + + + /datum/component/bonus_damage_stack - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/component/bonus_damage_stack + + + +

+ + + + + + +

Vars

bonus_damage_capextra damage multiplier, divided by 1000
bonus_damage_cap_increaseextra cap limit added by more powerful bullets
bonus_damage_stacksextra damage multiplier, divided by 1000
last_stackLast world.time that the afflicted was hit by a holo-targeting round.
stack_loss_multipliermultiplies the BONUS_DAMAGE_STACK_LOSS_PER_SECOND calculation, modifying how fast we lose holo stacks
+

Var Details

bonus_damage_cap + + + + +

+

extra damage multiplier, divided by 1000

bonus_damage_cap_increase + + + + +

+

extra cap limit added by more powerful bullets

bonus_damage_stacks + + + + +

+

extra damage multiplier, divided by 1000

last_stack + + + + +

+

Last world.time that the afflicted was hit by a holo-targeting round.

stack_loss_multiplier + + + + +

+

multiplies the BONUS_DAMAGE_STACK_LOSS_PER_SECOND calculation, modifying how fast we lose holo stacks

+ + + diff --git a/datum/component/camera_manager.html b/datum/component/camera_manager.html new file mode 100644 index 000000000000..a63102da47be --- /dev/null +++ b/datum/component/camera_manager.html @@ -0,0 +1,43 @@ + + + + + + + /datum/component/camera_manager - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/component/camera_manager + + + +

+ + + +

Vars

last_camera_turfThe turf where the camera was last updated.

Procs

show_camera_staticSet the displayed camera to the static not-connected.
+

Var Details

last_camera_turf + + + + +

+

The turf where the camera was last updated.

Proc Details

show_camera_static +

+

Set the displayed camera to the static not-connected.

+ + + diff --git a/datum/component/cell.html b/datum/component/cell.html new file mode 100644 index 000000000000..27acd2c15bb6 --- /dev/null +++ b/datum/component/cell.html @@ -0,0 +1,99 @@ + + + + + + + /datum/component/cell - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/component/cell + + + +

+ + + + + + + + + + + +

Vars

cell_insertIf the component requires a cell to be inserted to work instead of having an integrated one
chargeCurrent charge of power cell
charge_drainIf draining charge on process(), how much to drain per process call
charge_examine_rangeFrom how many tiles at the highest someone can examine the parent to see the charge
display_chargeIf the parent should show cell charge on examine
hit_chargeIf the component can be recharged by hitting its parent with a cell
initial_max_chargeInitial max charge of the power cell
inserted_cellRef to an inserted cell. Should only be null if cell_insert is false
max_chargeMaximum charge of the power cell, set to -1 for infinite charge
max_recharge_tickThe maximum amount that can be recharged per tick when using a cell to recharge this component
+

Var Details

cell_insert + + + + +

+

If the component requires a cell to be inserted to work instead of having an integrated one

charge + + + + +

+

Current charge of power cell

charge_drain + + + + +

+

If draining charge on process(), how much to drain per process call

charge_examine_range + + + + +

+

From how many tiles at the highest someone can examine the parent to see the charge

display_charge + + + + +

+

If the parent should show cell charge on examine

hit_charge + + + + +

+

If the component can be recharged by hitting its parent with a cell

initial_max_charge + + + + +

+

Initial max charge of the power cell

inserted_cell + + + + +

+

Ref to an inserted cell. Should only be null if cell_insert is false

max_charge + + + + +

+

Maximum charge of the power cell, set to -1 for infinite charge

max_recharge_tick + + + + +

+

The maximum amount that can be recharged per tick when using a cell to recharge this component

+ + + diff --git a/datum/component/cluster_stack.html b/datum/component/cluster_stack.html new file mode 100644 index 000000000000..61f5b8175015 --- /dev/null +++ b/datum/component/cluster_stack.html @@ -0,0 +1,50 @@ + + + + + + + /datum/component/cluster_stack - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/component/cluster_stack + + + +

+ + + + +

Vars

cluster_stacksCount of how many cluster rounds are in the current stack.
damage_counterCounter of how much damage each cluster round did, 30% of which will be given to the target of apply_cluster_stacks()
last_stackLast world.time that the afflicted was hit by a cluster round.
+

Var Details

cluster_stacks + + + + +

+

Count of how many cluster rounds are in the current stack.

damage_counter + + + + +

+

Counter of how much damage each cluster round did, 30% of which will be given to the target of apply_cluster_stacks()

last_stack + + + + +

+

Last world.time that the afflicted was hit by a cluster round.

+ + + diff --git a/datum/component/connect_mob_behalf.html b/datum/component/connect_mob_behalf.html new file mode 100644 index 000000000000..6fed55efb341 --- /dev/null +++ b/datum/component/connect_mob_behalf.html @@ -0,0 +1,52 @@ + + + + + + + /datum/component/connect_mob_behalf - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/component/connect_mob_behalf + + + +

+ +

This component behaves similar to connect_loc_behalf, but working off clients and mobs instead of loc +To be clear, we hook into a signal on a tracked client's mob +We retain the ability to react to that signal on a separate listener, which makes this quite powerful

+ + +

Vars

connectionsAn assoc list of signal -> procpath to register to the mob our client "owns"
trackedThe master client we're working with
tracked_mobThe mob we're currently tracking
+

Var Details

connections + + + + +

+

An assoc list of signal -> procpath to register to the mob our client "owns"

tracked + + + + +

+

The master client we're working with

tracked_mob + + + + +

+

The mob we're currently tracking

+ + + diff --git a/datum/component/crate_tag.html b/datum/component/crate_tag.html new file mode 100644 index 000000000000..f8b2f9376a33 --- /dev/null +++ b/datum/component/crate_tag.html @@ -0,0 +1,43 @@ + + + + + + + /datum/component/crate_tag - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/component/crate_tag + + + +

+ + + +

Vars

nameThe crate tag used for notifications and as label

Procs

notify_squadHandler to notify an overwatched squad that this crate has been dropped for them
+

Var Details

name + + + + +

+

The crate tag used for notifications and as label

Proc Details

notify_squad +

+

Handler to notify an overwatched squad that this crate has been dropped for them

+ + + diff --git a/datum/component/disk_reader.html b/datum/component/disk_reader.html new file mode 100644 index 000000000000..8bfb132ae734 --- /dev/null +++ b/datum/component/disk_reader.html @@ -0,0 +1,36 @@ + + + + + + + /datum/component/disk_reader - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/component/disk_reader + + + +

+ + +

Vars

diskRef to the inserted disk
+

Var Details

disk + + + + +

+

Ref to the inserted disk

+ + + diff --git a/datum/component/footstep.html b/datum/component/footstep.html new file mode 100644 index 000000000000..f06679e45c8b --- /dev/null +++ b/datum/component/footstep.html @@ -0,0 +1,64 @@ + + + + + + + /datum/component/footstep - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/component/footstep + + + +

+ +

Footstep component. Plays footsteps at parents location when it is appropriate.

+ + + + +

Vars

fallofffalloff of soundfile see playsound()
footstep_soundsThis can be a list OR a soundfile OR null. Determines whatever sound gets played.
rangerange of soundfile see playsound()
stepshow many steps before the footstep sound is played
volumevolume of soundfile see playsound()
+

Var Details

falloff + + + + +

+

falloff of soundfile see playsound()

footstep_sounds + + + + +

+

This can be a list OR a soundfile OR null. Determines whatever sound gets played.

range + + + + +

+

range of soundfile see playsound()

steps + + + + +

+

how many steps before the footstep sound is played

volume + + + + +

+

volume of soundfile see playsound()

+ + + diff --git a/datum/component/label.html b/datum/component/label.html new file mode 100644 index 000000000000..4430dac06226 --- /dev/null +++ b/datum/component/label.html @@ -0,0 +1,94 @@ + + + + + + + /datum/component/label - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/component/label + + + +

+ +

The label component.

+

This component is used to manage labels applied by the hand labeler.

+

Atoms can only have one instance of this component, and therefore only one label at a time. +This is to avoid having names like "Backpack (label1) (label2) (label3)". This is annoying and abnoxious to read.

+

When a player clicks the atom with a hand labeler to apply a label, this component gets applied to it. +If the labeler is off, the component will be removed from it, and the label will be removed from its name.

+ + + + + +

Vars

label_nameThe name of the label the player is applying to the parent.

Procs

ExamineThis proc will trigger when someone examines the parent. +It will attach the text found in the body of the proc to the examine_list and display it to the player examining the parent.
InheritComponentThis proc will fire after the parent is hit by a hand labeler which is trying to apply another label. +Since the parent already has a label, it will remove the old one from the parent's name, and apply the new one.
OnAttackbyThis proc will trigger when any object is used to attack the parent.
apply_labelApplies a label to the name of the parent in the format of: "parent_name (label)"
remove_labelRemoves the label from the parent's name
+

Var Details

label_name + + + + +

+

The name of the label the player is applying to the parent.

Proc Details

Examine +

+

This proc will trigger when someone examines the parent. +It will attach the text found in the body of the proc to the examine_list and display it to the player examining the parent.

+

Arguments:

+

InheritComponent +

+

This proc will fire after the parent is hit by a hand labeler which is trying to apply another label. +Since the parent already has a label, it will remove the old one from the parent's name, and apply the new one.

OnAttackby +

+

This proc will trigger when any object is used to attack the parent.

+

If the attacking object is not a hand labeler, it will return. +If the attacking object is a hand labeler it will restore the name of the parent to what it was before this component was added to it, and the component will be deleted.

+

Arguments:

+

apply_label +

+

Applies a label to the name of the parent in the format of: "parent_name (label)"

remove_label +

+

Removes the label from the parent's name

+ + + diff --git a/datum/component/nmnode_cond.html b/datum/component/nmnode_cond.html new file mode 100644 index 000000000000..595febfb4eea --- /dev/null +++ b/datum/component/nmnode_cond.html @@ -0,0 +1,50 @@ + + + + + + + /datum/component/nmnode_cond - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/component/nmnode_cond + + + +

+ +

Applies to a /datum/nmnode to enforce scenario constraints

+ + +

Vars

negateBy default, the condition is required. If true, invert the check
pnameParameter from scenario storage to check for
pvalueValue to check the parameter against
+

Var Details

negate + + + + +

+

By default, the condition is required. If true, invert the check

pname + + + + +

+

Parameter from scenario storage to check for

pvalue + + + + +

+

Value to check the parameter against

+ + + diff --git a/datum/component/overlay_lighting.html b/datum/component/overlay_lighting.html new file mode 100644 index 000000000000..5be655bb8adc --- /dev/null +++ b/datum/component/overlay_lighting.html @@ -0,0 +1,342 @@ + + + + + + + /datum/component/overlay_lighting - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/component/overlay_lighting + + + +

+ +

Movable atom overlay-based lighting component.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

affected_turfsLazy list to track the turfs being affected by our light, to determine their visibility.
cast_rangeCast range for the directional cast (how far away the atom is moved)
coneA cone overlay for directional light, it's alpha and color are dependant on the light
current_directionCurrent tracked direction for the directional cast behaviour
current_holderMovable atom currently holding the light. Parent might be a flashlight, for example, but that might be held by a mob or something else.
directionalWhether we're a directional light
directional_offset_xTracks current directional x offset so we dont update unecessarily
directional_offset_yTracks current directional y offset so we dont update unecessarily
light_overlaysCache of the possible light overlays, according to size.
lum_powerHow much this light affects the dynamic_lumcount of turfs.
lumcount_rangeCeiling of range, integer without decimal entries.
overlay_lighting_flagsFor light sources that can be turned on and off.
parent_attached_toMovable atom the parent is attached to. For example, a flashlight into a helmet or gun. We'll need to track the thing the parent is attached to as if it were the parent itself.
rangeHow far the light reaches, float.
set_alphaTransparency value.
visible_maskOverlay effect to cut into the darkness and provide light.

Procs

add_dynamic_lumiAdds the luminosity and source for the affected movable atoms to keep track of their visibility.
cast_directional_lightHere we append the behavior associated to changing lum_power.
check_holderUsed to determine the new valid current_holder from the parent's loc.
clean_old_turfsClears the affected_turfs lazylist, removing from its contents the effects of being near the light.
get_new_turfsPopulates the affected_turfs lazylist, adding to its contents the effects of being near the light.
make_luminosity_updateClears the old affected turfs and populates the new ones.
on_holder_dir_changeCalled when current_holder changes loc.
on_holder_movedCalled when current_holder changes loc.
on_holder_qdelCalled when the current_holder is qdeleted, to remove the light effect.
on_light_flags_changeTriggered right after the parent light flags change.
on_parent_attached_to_movedCalled when parent_attached_to changes loc.
on_parent_attached_to_qdelCalled when the current_holder is qdeleted, to remove the light effect.
on_parent_dir_changeCalled when parent changes loc.
on_parent_movedCalled when parent changes loc.
on_toggleToggles the light on and off.
remove_dynamic_lumiRemoves the luminosity and source for the affected movable atoms to keep track of their visibility.
set_colorChanges the light's color, pretty straightforward.
set_directionSets a new direction for the directional cast, then updates luminosity
set_holderCalled to change the value of current_holder.
set_lum_powerHere we append the behavior associated to changing lum_power.
set_parent_attached_toCalled to change the value of parent_attached_to.
set_powerChanges the intensity/brightness of the light by altering the visual object's alpha.
set_rangeChanges the range which the light reaches. 0 means no light, 7 is the maximum value.
turn_offToggles the light off.
turn_onToggles the light on.
+

Var Details

affected_turfs + + + + +

+

Lazy list to track the turfs being affected by our light, to determine their visibility.

cast_range + + + + +

+

Cast range for the directional cast (how far away the atom is moved)

cone + + + + +

+

A cone overlay for directional light, it's alpha and color are dependant on the light

current_direction + + + + +

+

Current tracked direction for the directional cast behaviour

current_holder + + + + +

+

Movable atom currently holding the light. Parent might be a flashlight, for example, but that might be held by a mob or something else.

directional + + + + +

+

Whether we're a directional light

directional_offset_x + + + + +

+

Tracks current directional x offset so we dont update unecessarily

directional_offset_y + + + + +

+

Tracks current directional y offset so we dont update unecessarily

light_overlays + + + + +

+

Cache of the possible light overlays, according to size.

lum_power + + + + +

+

How much this light affects the dynamic_lumcount of turfs.

lumcount_range + + + + +

+

Ceiling of range, integer without decimal entries.

overlay_lighting_flags + + + + +

+

For light sources that can be turned on and off.

parent_attached_to + + + + +

+

Movable atom the parent is attached to. For example, a flashlight into a helmet or gun. We'll need to track the thing the parent is attached to as if it were the parent itself.

range + + + + +

+

How far the light reaches, float.

set_alpha + + + + +

+

Transparency value.

visible_mask + + + + +

+

Overlay effect to cut into the darkness and provide light.

Proc Details

add_dynamic_lumi +

+

Adds the luminosity and source for the affected movable atoms to keep track of their visibility.

cast_directional_light +

+

Here we append the behavior associated to changing lum_power.

check_holder +

+

Used to determine the new valid current_holder from the parent's loc.

clean_old_turfs +

+

Clears the affected_turfs lazylist, removing from its contents the effects of being near the light.

get_new_turfs +

+

Populates the affected_turfs lazylist, adding to its contents the effects of being near the light.

make_luminosity_update +

+

Clears the old affected turfs and populates the new ones.

on_holder_dir_change +

+

Called when current_holder changes loc.

on_holder_moved +

+

Called when current_holder changes loc.

on_holder_qdel +

+

Called when the current_holder is qdeleted, to remove the light effect.

on_light_flags_change +

+

Triggered right after the parent light flags change.

on_parent_attached_to_moved +

+

Called when parent_attached_to changes loc.

on_parent_attached_to_qdel +

+

Called when the current_holder is qdeleted, to remove the light effect.

on_parent_dir_change +

+

Called when parent changes loc.

on_parent_moved +

+

Called when parent changes loc.

on_toggle +

+

Toggles the light on and off.

remove_dynamic_lumi +

+

Removes the luminosity and source for the affected movable atoms to keep track of their visibility.

set_color +

+

Changes the light's color, pretty straightforward.

set_direction +

+

Sets a new direction for the directional cast, then updates luminosity

set_holder +

+

Called to change the value of current_holder.

set_lum_power +

+

Here we append the behavior associated to changing lum_power.

set_parent_attached_to +

+

Called to change the value of parent_attached_to.

set_power +

+

Changes the intensity/brightness of the light by altering the visual object's alpha.

set_range +

+

Changes the range which the light reaches. 0 means no light, 7 is the maximum value.

turn_off +

+

Toggles the light off.

turn_on +

+

Toggles the light on.

+ + + diff --git a/datum/component/rename.html b/datum/component/rename.html new file mode 100644 index 000000000000..c3164404350a --- /dev/null +++ b/datum/component/rename.html @@ -0,0 +1,86 @@ + + + + + + + /datum/component/rename - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/component/rename + + + +

+ +

The rename component.

+

This component is used to manage names and descriptions changed with the pen.

+

Atoms can only have one instance of this component at a time.

+

When a player renames or changes the description of an atom with a pen, this component gets applied to it. +If a player resets the name and description, they will be reverted to their state before being changed and the component will be removed.

+ + + + + + +

Vars

custom_descThe desc the player is applying to the parent.
custom_nameThe name the player is applying to the parent.
original_descThe desc before the player changed it.
original_nameThe name before the player changed it.

Procs

InheritComponentThis proc will fire after the parent's name or desc is changed with a pen, which is trying to apply another rename component. +Since the parent already has a rename component, it will remove the old one and apply the new one. +The name and description changes will be merged or overwritten.
apply_renameSaves the current name and description before changing them to the player's inputs.
revert_renameReverts the name and description to the state before they were changed.
+

Var Details

custom_desc + + + + +

+

The desc the player is applying to the parent.

custom_name + + + + +

+

The name the player is applying to the parent.

original_desc + + + + +

+

The desc before the player changed it.

original_name + + + + +

+

The name before the player changed it.

Proc Details

InheritComponent +

+

This proc will fire after the parent's name or desc is changed with a pen, which is trying to apply another rename component. +Since the parent already has a rename component, it will remove the old one and apply the new one. +The name and description changes will be merged or overwritten.

apply_rename +

+

Saves the current name and description before changing them to the player's inputs.

revert_rename +

+

Reverts the name and description to the state before they were changed.

+ + + diff --git a/datum/component/temporary_mute.html b/datum/component/temporary_mute.html new file mode 100644 index 000000000000..89b5d8d87ea1 --- /dev/null +++ b/datum/component/temporary_mute.html @@ -0,0 +1,57 @@ + + + + + + + /datum/component/temporary_mute - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/component/temporary_mute + + + +

+ + + + + +

Vars

on_emote_messageA message to tell the user when they attempt to emote, if any
on_speak_messageA message to tell the user when they attempt to speak, if any
on_unmute_messageA message to tell the user when they become no longer mute, if any
time_until_unmuteHow long after the component's initialization it should be deleted. -1 means it will never delete
+

Var Details

on_emote_message + + + + +

+

A message to tell the user when they attempt to emote, if any

on_speak_message + + + + +

+

A message to tell the user when they attempt to speak, if any

on_unmute_message + + + + +

+

A message to tell the user when they become no longer mute, if any

time_until_unmute + + + + +

+

How long after the component's initialization it should be deleted. -1 means it will never delete

+ + + diff --git a/datum/component/tutorial_status.html b/datum/component/tutorial_status.html new file mode 100644 index 000000000000..8d1c558967b0 --- /dev/null +++ b/datum/component/tutorial_status.html @@ -0,0 +1,36 @@ + + + + + + + /datum/component/tutorial_status - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/component/tutorial_status + + + +

+ + +

Vars

tutorial_statusWhat the mob's current tutorial status is, displayed in the status panel
+

Var Details

tutorial_status + + + + +

+

What the mob's current tutorial status is, displayed in the status panel

+ + + diff --git a/datum/component/weed_food.html b/datum/component/weed_food.html new file mode 100644 index 000000000000..6b4826758301 --- /dev/null +++ b/datum/component/weed_food.html @@ -0,0 +1,193 @@ + + + + + + + /datum/component/weed_food - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/component/weed_food + + + +

+ +

A component that can be attached to a mob/living to be merged with weeds after a delay. +Attempting to attach a new weed_food even if one already exists is equivalent to calling start().

+

Attach this to any mob/living that is dead (death or initialized dead) and it should handle the rest.

+ + + + + + + + + + + + + + + + + + + + + +

Vars

absorbing_weedsThe weeds that we are merging/merged with
activeWhether we are waiting on timer to merge
mergedWhether we are merged with weeds
parent_buckleThe obj that our parent is buckled to and we have registered a signal
parent_mobThe living mob that we are bound to
parent_nestA nest our parent is buckled to and we have registered a signal
parent_turfThe turf that our parent is on
timer_idAny active timer for a pending merge
unmerged_timeThe time we were unmerged (just to handle weeds upgrading)
weed_appearanceThe overlay image when merged

Procs

merge_with_weedsFinish becomming one with the weeds +Returns TRUE if merged successfully
on_after_buckleSIGNAL_HANDLER for COMSIG_OBJ_AFTER_BUCKLE
on_forsakenSIGNAL_HANDLER for COMSIG_GLOB_GROUNDSIDE_FORSAKEN_HANDLING
on_moveSIGNAL_HANDLER for COMSIG_MOVABLE_TURF_ENTERED
on_nest_deletionSIGNAL_HANDLER for COMSIG_PARENT_QDELETING of nest
on_preignitionSIGNAL_HANDLER for COMSIG_LIVING_PREIGNITION of weeds
on_rejuvSIGNAL_HANDLER for COMSIG_LIVING_REJUVENATED and COMSIG_HUMAN_REVIVED
on_updateSIGNAL_HANDLER for COMSIG_HUMAN_SET_UNDEFIBBABLE & COMSIG_WEEDNODE_GROWTH
on_weed_deletionSIGNAL_HANDLER for COMSIG_PARENT_QDELETING of weeds
startTry to start the process to turn into weeds +Returns TRUE if started successfully
stopTry to stop the process turning into weeds +Returns TRUE if stopped successfully (was active when called)
unmerge_with_weedsUndo the weedening +Returns TRUE if unmerged successfully (always)
+

Var Details

absorbing_weeds + + + + +

+

The weeds that we are merging/merged with

active + + + + +

+

Whether we are waiting on timer to merge

merged + + + + +

+

Whether we are merged with weeds

parent_buckle + + + + +

+

The obj that our parent is buckled to and we have registered a signal

parent_mob + + + + +

+

The living mob that we are bound to

parent_nest + + + + +

+

A nest our parent is buckled to and we have registered a signal

parent_turf + + + + +

+

The turf that our parent is on

timer_id + + + + +

+

Any active timer for a pending merge

unmerged_time + + + + +

+

The time we were unmerged (just to handle weeds upgrading)

weed_appearance + + + + +

+

The overlay image when merged

Proc Details

merge_with_weeds +

+

Finish becomming one with the weeds +Returns TRUE if merged successfully

on_after_buckle +

+

SIGNAL_HANDLER for COMSIG_OBJ_AFTER_BUCKLE

on_forsaken +

+

SIGNAL_HANDLER for COMSIG_GLOB_GROUNDSIDE_FORSAKEN_HANDLING

on_move +

+

SIGNAL_HANDLER for COMSIG_MOVABLE_TURF_ENTERED

on_nest_deletion +

+

SIGNAL_HANDLER for COMSIG_PARENT_QDELETING of nest

on_preignition +

+

SIGNAL_HANDLER for COMSIG_LIVING_PREIGNITION of weeds

on_rejuv +

+

SIGNAL_HANDLER for COMSIG_LIVING_REJUVENATED and COMSIG_HUMAN_REVIVED

on_update +

+

SIGNAL_HANDLER for COMSIG_HUMAN_SET_UNDEFIBBABLE & COMSIG_WEEDNODE_GROWTH

on_weed_deletion +

+

SIGNAL_HANDLER for COMSIG_PARENT_QDELETING of weeds

start +

+

Try to start the process to turn into weeds +Returns TRUE if started successfully

stop +

+

Try to stop the process turning into weeds +Returns TRUE if stopped successfully (was active when called)

unmerge_with_weeds +

+

Undo the weedening +Returns TRUE if unmerged successfully (always)

+ + + diff --git a/datum/computer/file/embedded_program/docking/simple.html b/datum/computer/file/embedded_program/docking/simple.html new file mode 100644 index 000000000000..06ef5f93562b --- /dev/null +++ b/datum/computer/file/embedded_program/docking/simple.html @@ -0,0 +1,35 @@ + + + + + + + /datum/computer/file/embedded_program/docking/simple - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/computer/file/embedded_program/docking/simple + + + +

+ + +

Procs

open_doordatum/computer/file/embedded_program/docking/simple/proc/signal_mech_sensor(command)

Proc Details

open_door +

+

datum/computer/file/embedded_program/docking/simple/proc/signal_mech_sensor(command)

+ + + diff --git a/datum/construction_template.html b/datum/construction_template.html new file mode 100644 index 000000000000..262b52aeeb72 --- /dev/null +++ b/datum/construction_template.html @@ -0,0 +1,35 @@ + + + + + + + /datum/construction_template - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

generic structure + + + +

+ + +

Procs

on_template_creationruns in /obj/effect/alien/resin/construction/proc/set_template() for logic needed to occur then

Proc Details

on_template_creation +

+

runs in /obj/effect/alien/resin/construction/proc/set_template() for logic needed to occur then

+ + + diff --git a/datum/construction_template/xenomorph.html b/datum/construction_template/xenomorph.html new file mode 100644 index 000000000000..b7ca0421dcd9 --- /dev/null +++ b/datum/construction_template/xenomorph.html @@ -0,0 +1,43 @@ + + + + + + + /datum/construction_template/xenomorph - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

xenomorph structure + + + +

+ + + +

Vars

block_rangeThe range around this structure which needs to be clear for it to be constructed.
hive_refThe hive that this structure belongs to.
+

Var Details

block_range + + + + +

+

The range around this structure which needs to be clear for it to be constructed.

hive_ref + + + + +

+

The hive that this structure belongs to.

+ + + diff --git a/datum/construction_template/xenomorph/nest.html b/datum/construction_template/xenomorph/nest.html new file mode 100644 index 000000000000..3bfc5e4be4c2 --- /dev/null +++ b/datum/construction_template/xenomorph/nest.html @@ -0,0 +1,36 @@ + + + + + + + /datum/construction_template/xenomorph/nest - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

thick resin nest + + + +

+ + +

Vars

direction_to_put_nestThis will be used to orient the nest that will be built
+

Var Details

direction_to_put_nest + + + + +

+

This will be used to orient the nest that will be built

+ + + diff --git a/datum/controller/global_vars.html b/datum/controller/global_vars.html new file mode 100644 index 000000000000..77db9ef456e6 --- /dev/null +++ b/datum/controller/global_vars.html @@ -0,0 +1,489 @@ + + + + + + + /datum/controller/global_vars - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Global Variables + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

AdminProcCallHandlerUse this for indirect proccalls which require a user
admin_statetgui state: admin_state
always_statetgui state: always_state
areas_by_typeAn association from typepath to area instance. Only includes areas with unique set.
base_miss_chanceThe base miss chance for the different defence zones
blurb_witnessesList of ckeys that have seen a blurb of a given key.
cached_mapsList of all the maps that have been cached for /proc/load_map
character_trait_groups
cm_vending_clothing_doctordefined in senior_officers.dm
conscious_statetgui state: conscious_state
contained_statetgui state: contained_state
deep_inventory_statetgui state: deep_inventory_state
default_statetgui state: default_state
deployed_fultonsA list of fultons currently airborne.
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.
fallen_list_crossThis is for dogtags placed on crosses- they will show up at the end-round memorial.
focused_testThe name of the test that is currently focused. +Use the PERFORM_ALL_TESTS macro instead.
gamemode_rolesList of roles that can be setup for each gamemode
hands_statetgui state: hands_state
hive_statetgui state: hive_state
hive_state_queentgui state: hive_state_queen
hj_categorieslist of categories for hazard joes
hj_emotesdict ("category" : (emotes)) of every hj emote typepath
human_adjacent_statetgui state: human_adjacent_state
inventory_statetgui state: inventory_state
medals_view_tguiCan remove notes from anyone other than yourself, unless you're the host. So long as you have deletion access anyway.
never_statetgui state: never_state
new_player_statetgui state: new_player_state
not_incapacitated_and_adjacent_statetgui state: not_incapacitated_and_adjacent state
not_incapacitated_and_adjacent_strict_statetgui state: not_incapacitated_and_adjacent_strict state
not_incapacitated_and_adjacent_turf_statetgui state: not_incapacitated_turf_state
not_incapacitated_and_adjacent_turf_strict_statetgui state: not_incapacitated_turf_state
not_incapacitated_and_inventory_statetgui state: not_incapacitated_and_inventory_state
not_incapacitated_and_inventory_turf_statetgui state: not_incapacitated_and_inventory_turf_state
not_incapacitated_statetgui state: not_incapacitated_state
not_incapacitated_turf_statetgui state: not_incapacitated_turf_state
notcontained_statetgui state: notcontained_state
note_categoriesNote categories in text form, in order of their numerical #defines.
obfs_xA number between -500 and 500.
obfs_yA number between -500 and 500.
observer_statetgui state: observer_state
ooc_color_overrideIn-round override to default OOC color
perf_flagsGlobal performance feature toggle flags
physical_obscured_statetgui state: physical_obscured_state
physical_statetgui state: physical_state
reverse_contained_statetgui state: reverse_contained_state
self_statetgui state: self_state
time_offsetOffset for the Operation time
trait_name_mapvalue -> trait name, generated on use from trait_by_type global
unit_test_mapping_logsWhen unit testing, all logs sent to log_mapping are stored here and retrieved in log_mapping unit test.
wj_categorieslist of categories for working joes
wj_emotesdict ("category" : (emotes)) of every wj emote typepath
xeno_datum_listXeno caste datums
xeno_queue_candidate_countThe last count of possible candidates in the xeno larva queue (updated via get_alien_candidates)
z_statetgui state: z_state
+

Var Details

AdminProcCallHandler + + + + +

+

Use this for indirect proccalls which require a user

admin_state + + + + +

+

tgui state: admin_state

+

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

always_state + + + + +

+

tgui state: always_state

+

Always grants the user UI_INTERACTIVE. Period.

areas_by_type + + + + +

+

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

base_miss_chance + + + + +

+

The base miss chance for the different defence zones

blurb_witnesses + + + + +

+

List of ckeys that have seen a blurb of a given key.

cached_maps + + + + +

+

List of all the maps that have been cached for /proc/load_map

character_trait_groups + + + + +

+

cm_vending_clothing_doctor + + + + +

+

defined in senior_officers.dm

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.

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.

deployed_fultons + + + + +

+

A list of fultons currently airborne.

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.

fallen_list_cross + + + + +

+

This is for dogtags placed on crosses- they will show up at the end-round memorial.

focused_test + + + + +

+

The name of the test that is currently focused. +Use the PERFORM_ALL_TESTS macro instead.

gamemode_roles + + + + +

+

List of roles that can be setup for each gamemode

hands_state + + + + +

+

tgui state: hands_state

+

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

hive_state + + + + +

+

tgui state: hive_state

+

Checks that the user is part of a hive.

hive_state_queen + + + + +

+

tgui state: hive_state_queen

+

Checks that the user is part of a hive and is the leading queen of that hive.

hj_categories + + + + +

+

list of categories for hazard joes

hj_emotes + + + + +

+

dict ("category" : (emotes)) of every hj emote typepath

human_adjacent_state + + + + +

+

tgui state: human_adjacent_state

+

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

inventory_state + + + + +

+

tgui state: inventory_state

+

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

medals_view_tgui + + + + +

+

Can remove notes from anyone other than yourself, unless you're the host. So long as you have deletion access anyway.

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

not_incapacitated_and_adjacent_state + + + + +

+

tgui state: not_incapacitated_and_adjacent state

+

Checks that the user isn't incapacitated and that they are adjacent

+

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

not_incapacitated_and_adjacent_strict_state + + + + +

+

tgui state: not_incapacitated_and_adjacent_strict state

+

Checks that the user isn't incapacitated and that they are adjacent and always does ui_close

+

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

not_incapacitated_and_adjacent_turf_state + + + + +

+

tgui state: not_incapacitated_turf_state

+

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

not_incapacitated_and_adjacent_turf_strict_state + + + + +

+

tgui state: not_incapacitated_turf_state

+

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

not_incapacitated_and_inventory_state + + + + +

+

tgui state: not_incapacitated_and_inventory_state

+

Checks that the user isn't incapacitated and the obj is in their inventory

not_incapacitated_and_inventory_turf_state + + + + +

+

tgui state: not_incapacitated_and_inventory_turf_state

+

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

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.

note_categories + + + + +

+

Note categories in text form, in order of their numerical #defines.

obfs_x + + + + +

+

A number between -500 and 500.

obfs_y + + + + +

+

A number between -500 and 500.

observer_state + + + + +

+

tgui state: observer_state

+

Checks that the user is an observer/ghost.

ooc_color_override + + + + +

+

In-round override to default OOC color

perf_flags + + + + +

+

Global performance feature toggle flags

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 + + + + +

+

tgui state: physical_state

+

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

reverse_contained_state + + + + +

+

tgui state: reverse_contained_state

+

Checks if src_object is inside of user.

self_state + + + + +

+

tgui state: self_state

+

Only checks that the user and src_object are the same.

time_offset + + + + +

+

Offset for the Operation time

trait_name_map + + + + +

+

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

unit_test_mapping_logs + + + + +

+

When unit testing, all logs sent to log_mapping are stored here and retrieved in log_mapping unit test.

wj_categories + + + + +

+

list of categories for working joes

wj_emotes + + + + +

+

dict ("category" : (emotes)) of every wj emote typepath

xeno_datum_list + + + + +

+

Xeno caste datums

xeno_queue_candidate_count + + + + +

+

The last count of possible candidates in the xeno larva queue (updated via get_alien_candidates)

z_state + + + + +

+

tgui state: z_state

+

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

+ + + diff --git a/datum/controller/master.html b/datum/controller/master.html new file mode 100644 index 000000000000..b9dbd13c7590 --- /dev/null +++ b/datum/controller/master.html @@ -0,0 +1,147 @@ + + + + + + + /datum/controller/master - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Master + + + +

+ +

Start of queue linked list +End of queue linked list (used for appending to the list) +Are we loading in a new map? +for scheduling different subsystems for different stages of the round

+ + + + + + + + + + + + + + +

Vars

current_initializing_subsystemDuring initialization, will be the instanced subsytem that is currently initializing. +Outside of initialization, returns null.
current_ticklimitcurrent tick limit, assigned before running a subsystem. +used by CHECK_TICK as well so that the procs subsystems call can obey that SS's tick limits
init_stage_completedMost recent init stage to complete init.
iterationHow many times have we ran
last_runworld.time of last fire, for tracking lag outside of the mc
last_type_processedThe type of the last subsystem to be fire()'d.
make_runtimemakes the mc main loop runtime
processingAre we processing (higher values increase the processing delay by n ticks)
skip_ticksOnly run ticker subsystems for the next n ticks.
sleep_deltaHow long is the MC sleeping between runs, read only (set by Loop() based off of anti-tick-contention heuristics)
stack_end_detectorStack end detector to detect stack overflows that kill the mc's main loop
subsystemsList of subsystems to process().

Procs

RunQueueRunQueue - Run thru the queue of subsystems to run, running them while balancing out their allocated tick precentage +Returns 0 if runtimed, a negitive number for logic errors, and a positive number if the operation completed without errors
init_subsystemInitialize a given subsystem and handle the results.
laggy_byond_map_update_incomingWarns us that the end of tick byond map_update will be laggier then normal, so that we can just skip running subsystems this tick.
+

Var Details

current_initializing_subsystem + + + + +

+

During initialization, will be the instanced subsytem that is currently initializing. +Outside of initialization, returns null.

current_ticklimit + + + + +

+

current tick limit, assigned before running a subsystem. +used by CHECK_TICK as well so that the procs subsystems call can obey that SS's tick limits

init_stage_completed + + + + +

+

Most recent init stage to complete init.

iteration + + + + +

+

How many times have we ran

last_run + + + + +

+

world.time of last fire, for tracking lag outside of the mc

last_type_processed + + + + +

+

The type of the last subsystem to be fire()'d.

make_runtime + + + + +

+

makes the mc main loop runtime

processing + + + + +

+

Are we processing (higher values increase the processing delay by n ticks)

skip_ticks + + + + +

+

Only run ticker subsystems for the next n ticks.

sleep_delta + + + + +

+

How long is the MC sleeping between runs, read only (set by Loop() based off of anti-tick-contention heuristics)

stack_end_detector + + + + +

+

Stack end detector to detect stack overflows that kill the mc's main loop

subsystems + + + + +

+

List of subsystems to process().

Proc Details

RunQueue +

+

RunQueue - Run thru the queue of subsystems to run, running them while balancing out their allocated tick precentage +Returns 0 if runtimed, a negitive number for logic errors, and a positive number if the operation completed without errors

init_subsystem +

+

Initialize a given subsystem and handle the results.

+

Arguments:

+

laggy_byond_map_update_incoming +

+

Warns us that the end of tick byond map_update will be laggier then normal, so that we can just skip running subsystems this tick.

+ + + diff --git a/datum/controller/subsystem.html b/datum/controller/subsystem.html new file mode 100644 index 000000000000..53c9b1a17dc8 --- /dev/null +++ b/datum/controller/subsystem.html @@ -0,0 +1,296 @@ + + + + + + + /datum/controller/subsystem - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Subsystem base class + + + +

+ +

Defines a subsystem to be managed by the Master Controller

+

Simply define a child of this subsystem, using the [SUBSYSTEM_DEF] macro, and the MC will handle registration. +Changing the name is required

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

can_fireSet to 0 to prevent fire() calls, mostly for admin use or subsystems that may be resumed later +use the SS_NO_FIRE flag instead for systems that never fire to keep it from even being added to list that is checked every tick
costRunning average of the amount of milliseconds it takes the subsystem to complete a run (including all resumes but not the time spent paused)
failure_strikesHow many times we suspect a subsystem type has crashed the MC, 3 strikes and you're out!
flagsSubsystem Flags to control binary behavior. Flags must be set at compile time or before preinit finishes to take full effect. (You can also restart the mc to force them to process again)
init_orderOrder of initialization. Higher numbers are initialized first, lower numbers later. Use or create defines such as [INIT_ORDER_DEFAULT] so we can see the order in one file.
init_stageWhich stage does this subsystem init at. Earlier stages can fire while later stages init.
initializedThis var is set to TRUE after the subsystem has been initialized.
last_fireLast world.time the subsystem completed a run (as in wasn't paused by [MC_TICK_CHECK])
nameName of the subsystem - you must change this
next_fireScheduled world.time for next fire()
paused_tick_usageTracks how much of a tick the subsystem has consumed in the current run
paused_ticksTracks how many fires the subsystem has consecutively paused on in the current run
postponed_firesHow many fires have we been requested to postpone
priorityPriority Weight: When mutiple subsystems need to run in the same tick, higher priority subsystems will be given a higher share of the tick before MC_TICK_CHECK triggers a sleep, higher priority subsystems also run before lower priority subsystems
queue_nextNext subsystem in the queue of subsystems to run this tick
queue_prevPrevious subsystem in the queue of subsystems to run this tick
queued_priorityPriority at the time the subsystem entered the queue. Needed to avoid changes in priority (by admins and the like) from breaking things.
queued_timeTime the subsystem entered the queue, (for timing and priority reasons)
runlevelsBitmap of what game states can this subsystem fire at. See [RUNLEVELS_DEFAULT] for more details.
slept_countTracks how many times a subsystem has ever slept in fire().
stateTracks the current execution state of the subsystem. Used to handle subsystems that sleep in fire so the mc doesn't run them again while they are sleeping
tick_allocation_avgHow much of a tick (in percents of a tick) do we get allocated by the mc on avg.
tick_allocation_lastHow much of a tick (in percents of a tick) were we allocated last fire.
tick_overrunRunning average of the amount of tick usage (in percents of a game tick) the subsystem has spent past its allocated time without pausing
tick_usageRunning average of the amount of tick usage in percents of a tick it takes the subsystem to complete a run
ticksTracks how many fires the subsystem takes to complete a run on average.
times_firedTracks the amount of completed runs for the subsystem
waitTime to wait (in deciseconds) between each call to fire(). Must be a positive integer.

Procs

InitializeUsed to initialize the subsystem. This is expected to be overridden by subtypes.
OnConfigLoadCalled after the config has been loaded or reloaded.
PreInitdatum/controller/subsystem/New()
enqueueQueue it to run. +(we loop thru a linked list until we get to the end or find the right point) +(this lets us sort our run order correctly without having to re-sort the entire already sorted list)
firepreviously, this would have been named 'process()' but that name is used everywhere for different things! +fire() seems more suitable. This is the procedure that gets called every 'wait' deciseconds. +Sleeping in here prevents future fires until returned.
igniteThis is used so the mc knows when the subsystem sleeps. do not override.
postponeCauses the next "cycle" fires to be missed. Effect is accumulative but can reset by calling update_nextfire(reset_time = TRUE)
update_nextfire
+

Var Details

can_fire + + + + +

+

Set to 0 to prevent fire() calls, mostly for admin use or subsystems that may be resumed later +use the SS_NO_FIRE flag instead for systems that never fire to keep it from even being added to list that is checked every tick

cost + + + + +

+

Running average of the amount of milliseconds it takes the subsystem to complete a run (including all resumes but not the time spent paused)

failure_strikes + + + + +

+

How many times we suspect a subsystem type has crashed the MC, 3 strikes and you're out!

flags + + + + +

+

Subsystem Flags to control binary behavior. Flags must be set at compile time or before preinit finishes to take full effect. (You can also restart the mc to force them to process again)

init_order + + + + +

+

Order of initialization. Higher numbers are initialized first, lower numbers later. Use or create defines such as [INIT_ORDER_DEFAULT] so we can see the order in one file.

init_stage + + + + +

+

Which stage does this subsystem init at. Earlier stages can fire while later stages init.

initialized + + + + +

+

This var is set to TRUE after the subsystem has been initialized.

last_fire + + + + +

+

Last world.time the subsystem completed a run (as in wasn't paused by [MC_TICK_CHECK])

name + + + + +

+

Name of the subsystem - you must change this

next_fire + + + + +

+

Scheduled world.time for next fire()

paused_tick_usage + + + + +

+

Tracks how much of a tick the subsystem has consumed in the current run

paused_ticks + + + + +

+

Tracks how many fires the subsystem has consecutively paused on in the current run

postponed_fires + + + + +

+

How many fires have we been requested to postpone

priority + + + + +

+

Priority Weight: When mutiple subsystems need to run in the same tick, higher priority subsystems will be given a higher share of the tick before MC_TICK_CHECK triggers a sleep, higher priority subsystems also run before lower priority subsystems

queue_next + + + + +

+

Next subsystem in the queue of subsystems to run this tick

queue_prev + + + + +

+

Previous subsystem in the queue of subsystems to run this tick

queued_priority + + + + +

+

Priority at the time the subsystem entered the queue. Needed to avoid changes in priority (by admins and the like) from breaking things.

queued_time + + + + +

+

Time the subsystem entered the queue, (for timing and priority reasons)

runlevels + + + + +

+

Bitmap of what game states can this subsystem fire at. See [RUNLEVELS_DEFAULT] for more details.

slept_count + + + + +

+

Tracks how many times a subsystem has ever slept in fire().

state + + + + +

+

Tracks the current execution state of the subsystem. Used to handle subsystems that sleep in fire so the mc doesn't run them again while they are sleeping

tick_allocation_avg + + + + +

+

How much of a tick (in percents of a tick) do we get allocated by the mc on avg.

tick_allocation_last + + + + +

+

How much of a tick (in percents of a tick) were we allocated last fire.

tick_overrun + + + + +

+

Running average of the amount of tick usage (in percents of a game tick) the subsystem has spent past its allocated time without pausing

tick_usage + + + + +

+

Running average of the amount of tick usage in percents of a tick it takes the subsystem to complete a run

ticks + + + + +

+

Tracks how many fires the subsystem takes to complete a run on average.

times_fired + + + + +

+

Tracks the amount of completed runs for the subsystem

wait + + + + +

+

Time to wait (in deciseconds) between each call to fire(). Must be a positive integer.

Proc Details

Initialize +

+

Used to initialize the subsystem. This is expected to be overridden by subtypes.

OnConfigLoad +

+

Called after the config has been loaded or reloaded.

PreInit +

+

datum/controller/subsystem/New()

enqueue +

+

Queue it to run. +(we loop thru a linked list until we get to the end or find the right point) +(this lets us sort our run order correctly without having to re-sort the entire already sorted list)

fire +

+

previously, this would have been named 'process()' but that name is used everywhere for different things! +fire() seems more suitable. This is the procedure that gets called every 'wait' deciseconds. +Sleeping in here prevents future fires until returned.

ignite +

+

This is used so the mc knows when the subsystem sleeps. do not override.

postpone +

+

Causes the next "cycle" fires to be missed. Effect is accumulative but can reset by calling update_nextfire(reset_time = TRUE)

update_nextfire +

+
+ + + diff --git a/datum/controller/subsystem/atoms.html b/datum/controller/subsystem/atoms.html new file mode 100644 index 000000000000..e2a1c5207af3 --- /dev/null +++ b/datum/controller/subsystem/atoms.html @@ -0,0 +1,91 @@ + + + + + + + /datum/controller/subsystem/atoms - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Atoms + + + +

+ + + + + + + + + +

Vars

created_atomsinitAtom() adds the atom its creating to this list iff InitializeAtoms() has been given a list to populate as an argument
initialized_changedA count of how many initalize changes we've made. We want to prevent old_initialize being overridden by some other value, breaking init code

Procs

CreateAtomsActually creates the list of atoms. Exists soley so a runtime in the creation logic doesn't cause initalized to totally break
InitAtomInit this specific atom
InitializeLateLoadersProcesses all late_loaders, checking the length each iteration and prevents duplicate calls +This is necessary because of an edge case where there might be simultanious calls to InitializeAtoms
fix_atoms_locsForce reset atoms loc, as map expansion can botch turf contents for multitiles +This is obviously a bandaid fix, see CM MR !2797, /tg/ PR #65638, +and the BYOND Bug Report: http://www.byond.com/forum/post/2777527
initializing_somethingReturns TRUE if anything is currently being initialized
set_tracked_initalizedUse this to set initialized to prevent error states where old_initialized is overridden. It keeps happening and it's cheesing me off
+

Var Details

created_atoms + + + + +

+

initAtom() adds the atom its creating to this list iff InitializeAtoms() has been given a list to populate as an argument

initialized_changed + + + + +

+

A count of how many initalize changes we've made. We want to prevent old_initialize being overridden by some other value, breaking init code

Proc Details

CreateAtoms +

+

Actually creates the list of atoms. Exists soley so a runtime in the creation logic doesn't cause initalized to totally break

InitAtom +

+

Init this specific atom

InitializeLateLoaders +

+

Processes all late_loaders, checking the length each iteration and prevents duplicate calls +This is necessary because of an edge case where there might be simultanious calls to InitializeAtoms

fix_atoms_locs +

+

Force reset atoms loc, as map expansion can botch turf contents for multitiles +This is obviously a bandaid fix, see CM MR !2797, /tg/ PR #65638, +and the BYOND Bug Report: http://www.byond.com/forum/post/2777527

initializing_something +

+

Returns TRUE if anything is currently being initialized

set_tracked_initalized +

+

Use this to set initialized to prevent error states where old_initialized is overridden. It keeps happening and it's cheesing me off

+ + + diff --git a/datum/controller/subsystem/automatedfire.html b/datum/controller/subsystem/automatedfire.html new file mode 100644 index 000000000000..1e76609f967c --- /dev/null +++ b/datum/controller/subsystem/automatedfire.html @@ -0,0 +1,78 @@ + + + + + + + /datum/controller/subsystem/automatedfire - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Automated fire + + + +

+ + + + + + + + +

Vars

bucket_listList of buckets, each bucket holds every shooter that has to shoot this byond tick
bucket_resolutionHow many buckets for every frame of world.fps
head_offsetworld.time of the first entry in the bucket list, effectively the 'start time' of the current buckets
next_shooterReference to the next shooter before we clean shooter.next
practical_offsetIndex of the first non-empty bucket
shooter_countHow many shooter are in the buckets

Procs

reset_bucketsIn the event of a change of world.tick_lag, we refresh the size of the bucket and the bucket resolution
+

Var Details

bucket_list + + + + +

+

List of buckets, each bucket holds every shooter that has to shoot this byond tick

bucket_resolution + + + + +

+

How many buckets for every frame of world.fps

head_offset + + + + +

+

world.time of the first entry in the bucket list, effectively the 'start time' of the current buckets

next_shooter + + + + +

+

Reference to the next shooter before we clean shooter.next

practical_offset + + + + +

+

Index of the first non-empty bucket

shooter_count + + + + +

+

How many shooter are in the buckets

Proc Details

reset_buckets +

+

In the event of a change of world.tick_lag, we refresh the size of the bucket and the bucket resolution

+ + + diff --git a/datum/controller/subsystem/database_query_manager.html b/datum/controller/subsystem/database_query_manager.html new file mode 100644 index 000000000000..e6c94bbe3cb4 --- /dev/null +++ b/datum/controller/subsystem/database_query_manager.html @@ -0,0 +1,78 @@ + + + + + + + /datum/controller/subsystem/database_query_manager - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Database QM + + + +

+ + + + + + + + +

Vars

max_concurrent_queriesMaximum amount of queries that can be ran concurrently
queries_activeQueries currently being handled by database driver
queries_currentQueries left to handle during controller firing
queries_newQueries pending execution that will be handled this controller firing
queries_standbyQueries pending execution, mapped to complete arguments

Procs

create_queued_queryHelper proc for handling queued new queries
process_queryHelper proc for query processing used in fire() - returns TRUE if not done yet
+

Var Details

max_concurrent_queries + + + + +

+

Maximum amount of queries that can be ran concurrently

queries_active + + + + +

+

Queries currently being handled by database driver

queries_current + + + + +

+

Queries left to handle during controller firing

queries_new + + + + +

+

Queries pending execution that will be handled this controller firing

queries_standby + + + + +

+

Queries pending execution, mapped to complete arguments

Proc Details

create_queued_query +

+

Helper proc for handling queued new queries

process_query +

+

Helper proc for query processing used in fire() - returns TRUE if not done yet

+ + + diff --git a/datum/controller/subsystem/events.html b/datum/controller/subsystem/events.html new file mode 100644 index 000000000000..1ad31b544be3 --- /dev/null +++ b/datum/controller/subsystem/events.html @@ -0,0 +1,85 @@ + + + + + + + /datum/controller/subsystem/events - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Events + + + +

+ + + + + + + + + +

Vars

controllist of all datum/round_event_control. Used for selecting events based on weight and occurrences.
frequency_lowerLower bound for how frequently events will occur
frequency_upperthe latest an event can happen after a previous event
runninglist of all existing /datum/round_event
scheduledThe next world.time that a naturally occurring random event can be selected.

Procs

check_eventchecks if we should select a random event yet, and reschedules if necessary
rescheduledecides which world.time we should select another random event at.
spawn_eventselects a random event based on whether it can occur and it's 'weight'(probability)
+

Var Details

control + + + + +

+

list of all datum/round_event_control. Used for selecting events based on weight and occurrences.

frequency_lower + + + + +

+

Lower bound for how frequently events will occur

frequency_upper + + + + +

+

the latest an event can happen after a previous event

running + + + + +

+

list of all existing /datum/round_event

scheduled + + + + +

+

The next world.time that a naturally occurring random event can be selected.

Proc Details

check_event +

+

checks if we should select a random event yet, and reschedules if necessary

reschedule +

+

decides which world.time we should select another random event at.

spawn_event +

+

selects a random event based on whether it can occur and it's 'weight'(probability)

+ + + diff --git a/datum/controller/subsystem/hijack.html b/datum/controller/subsystem/hijack.html new file mode 100644 index 000000000000..d19224312b5b --- /dev/null +++ b/datum/controller/subsystem/hijack.html @@ -0,0 +1,274 @@ + + + + + + + /datum/controller/subsystem/hijack - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Hijack + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

admin_sd_blockedAdmin var to manually prevent self destruct from occurring
announce_checkpointHolds the next % point progress should be announced, increments on itself
ares_sd_announcedIf ARES has announced the 50% point yet for SD
current_progressCurrent progress towards evacuating safely via lifeboats
current_runThe areas that need cycled through currently
current_run_progress_additiveThe progress of the current run that needs to be added at the end of the current run
current_run_progress_multiplicativeHolds what the current_run_progress_additive should be multiplied by at the end of the current run
early_launch_required_progressHow much progress is required to early launch
engine_room_heatedIf the engine room has been heated, occurs at 33% SD completion
engine_room_superheatedIf the engine room has been superheated, occurs at 66% SD completion
estimated_time_leftThe estimated time left to get to the safe evacuation point
evac_admin_deniedWhether or not evacuation has been disabled by admins
evac_statusWhat stage of evacuation we are currently on
generator_ever_overloadedIf a generator has ever been overloaded in the past this round
hijack_statusWhat stage of hijack are we currently on
last_run_progress_changeHolds the progress change from last run
maximum_overload_generatorsMaximum amount of fusion generators that can be overloaded at once for a time benefit
overloaded_generatorsHow many generators are currently overloaded
percent_completion_remainingRoughly what % of the SD countdown remains
progress_areasAreas that are marked as having progress, assoc list that is progress_area = boolean, the boolean indicating if it was progressing or not on the last fire()
required_progressRequired progress to evacuate safely via lifeboats
sd_detonatedIf the self destruct has/is detonating
sd_max_timeHow long the manual self destruct will take on the high end
sd_min_timeHow long the manual self destruct will take on the low end
sd_time_remainingHow much time left until SD detonates
sd_unlockedIf TRUE, self destruct has been unlocked and is possible with a hold of reactor

Procs

activate_lifeboatsOpens the lifeboat doors and gets them ready to launch
announce_area_power_changeCalled when an area power status is changed to announce that it has been changed
announce_progressCalled to announce to xenos the state of evacuation progression
announce_status_on_crashCalled when the xeno dropship crashes into the Almayer and announces the current status of various objectives to marines
cancel_evacuationCancels evacuation, tells lifepods/lifeboats and status_displays
deactivate_lifeboatsTurns off ability to manually take off lifeboats
get_evac_etaPasses the ETA for status panels
initiate_evacuationInitiates evacuation by announcing and then prepping all lifepods/lifeboats
unlock_self_destructOnce refueling is done, marines can optionally hold SD for a time for a stalemate instead of a xeno minor
+

Var Details

admin_sd_blocked + + + + +

+

Admin var to manually prevent self destruct from occurring

announce_checkpoint + + + + +

+

Holds the next % point progress should be announced, increments on itself

ares_sd_announced + + + + +

+

If ARES has announced the 50% point yet for SD

current_progress + + + + +

+

Current progress towards evacuating safely via lifeboats

current_run + + + + +

+

The areas that need cycled through currently

current_run_progress_additive + + + + +

+

The progress of the current run that needs to be added at the end of the current run

current_run_progress_multiplicative + + + + +

+

Holds what the current_run_progress_additive should be multiplied by at the end of the current run

early_launch_required_progress + + + + +

+

How much progress is required to early launch

engine_room_heated + + + + +

+

If the engine room has been heated, occurs at 33% SD completion

engine_room_superheated + + + + +

+

If the engine room has been superheated, occurs at 66% SD completion

estimated_time_left + + + + +

+

The estimated time left to get to the safe evacuation point

evac_admin_denied + + + + +

+

Whether or not evacuation has been disabled by admins

evac_status + + + + +

+

What stage of evacuation we are currently on

generator_ever_overloaded + + + + +

+

If a generator has ever been overloaded in the past this round

hijack_status + + + + +

+

What stage of hijack are we currently on

last_run_progress_change + + + + +

+

Holds the progress change from last run

maximum_overload_generators + + + + +

+

Maximum amount of fusion generators that can be overloaded at once for a time benefit

overloaded_generators + + + + +

+

How many generators are currently overloaded

percent_completion_remaining + + + + +

+

Roughly what % of the SD countdown remains

progress_areas + + + + +

+

Areas that are marked as having progress, assoc list that is progress_area = boolean, the boolean indicating if it was progressing or not on the last fire()

required_progress + + + + +

+

Required progress to evacuate safely via lifeboats

sd_detonated + + + + +

+

If the self destruct has/is detonating

sd_max_time + + + + +

+

How long the manual self destruct will take on the high end

sd_min_time + + + + +

+

How long the manual self destruct will take on the low end

sd_time_remaining + + + + +

+

How much time left until SD detonates

sd_unlocked + + + + +

+

If TRUE, self destruct has been unlocked and is possible with a hold of reactor

Proc Details

activate_lifeboats +

+

Opens the lifeboat doors and gets them ready to launch

announce_area_power_change +

+

Called when an area power status is changed to announce that it has been changed

announce_progress +

+

Called to announce to xenos the state of evacuation progression

announce_status_on_crash +

+

Called when the xeno dropship crashes into the Almayer and announces the current status of various objectives to marines

cancel_evacuation +

+

Cancels evacuation, tells lifepods/lifeboats and status_displays

deactivate_lifeboats +

+

Turns off ability to manually take off lifeboats

get_evac_eta +

+

Passes the ETA for status panels

initiate_evacuation +

+

Initiates evacuation by announcing and then prepping all lifepods/lifeboats

unlock_self_destruct +

+

Once refueling is done, marines can optionally hold SD for a time for a stalemate instead of a xeno minor

+ + + diff --git a/datum/controller/subsystem/influxdriver.html b/datum/controller/subsystem/influxdriver.html new file mode 100644 index 000000000000..dd69dfe1846d --- /dev/null +++ b/datum/controller/subsystem/influxdriver.html @@ -0,0 +1,82 @@ + + + + + + + /datum/controller/subsystem/influxdriver - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

InfluxDB Driver + + + +

+ + + + + + + + +

Vars

max_batchMaximum amount of metric lines to send at most in one request +This is neccessary because sending a lot of metrics can get expensive +and drive the subsystem into overtime, but we can't split the work as it'd be even less efficient
timestamp_cache_realtimeLast timestamp in microseconds
timestamp_cache_worldtimeLast tick time the timestamp was taken at

Procs

enqueue_statsEnqueues sending to InfluxDB Backend selected measurement values - round_id and timestamp are filled in automatically
enqueue_stats_crudeEnqueues sending varied stats in a dumb and simpler format directly as: measurement count=
flush_queueFlushes measurements batch to InfluxDB backend
serialize_fieldPuts a single field or tag value into InfluxDB Line format
+

Var Details

max_batch + + + + +

+

Maximum amount of metric lines to send at most in one request +This is neccessary because sending a lot of metrics can get expensive +and drive the subsystem into overtime, but we can't split the work as it'd be even less efficient

timestamp_cache_realtime + + + + +

+

Last timestamp in microseconds

timestamp_cache_worldtime + + + + +

+

Last tick time the timestamp was taken at

Proc Details

enqueue_stats +

+

Enqueues sending to InfluxDB Backend selected measurement values - round_id and timestamp are filled in automatically

enqueue_stats_crude +

+

Enqueues sending varied stats in a dumb and simpler format directly as: measurement count=

flush_queue +

+

Flushes measurements batch to InfluxDB backend

serialize_field +

+

Puts a single field or tag value into InfluxDB Line format

+ + + diff --git a/datum/controller/subsystem/interior.html b/datum/controller/subsystem/interior.html new file mode 100644 index 000000000000..80725ae48deb --- /dev/null +++ b/datum/controller/subsystem/interior.html @@ -0,0 +1,49 @@ + + + + + + + /datum/controller/subsystem/interior - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Interiors + + + +

+ + + + +

Procs

get_interior_by_coordsFinds which interior is at (x, y, z) and returns its interior datum
in_interiorChecks if an atom is in an interior
load_interiorLoads an interior, requires the interior datum

Proc Details

get_interior_by_coords +

+

Finds which interior is at (x, y, z) and returns its interior datum

in_interior +

+

Checks if an atom is in an interior

load_interior +

+

Loads an interior, requires the interior datum

+ + + diff --git a/datum/controller/subsystem/lighting.html b/datum/controller/subsystem/lighting.html new file mode 100644 index 000000000000..e35be66611e3 --- /dev/null +++ b/datum/controller/subsystem/lighting.html @@ -0,0 +1,45 @@ + + + + + + + /datum/controller/subsystem/lighting - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Lighting + + + +

+ +

List of static lighting sources queued for update. +List of lighting corners queued for update. +List of lighting objects queued for update.

+ +

Vars

startedWhether the SS has begun setting up yet
total_shadow_calculationsTotal times shadows were updated, debug
+

Var Details

started + + + + +

+

Whether the SS has begun setting up yet

total_shadow_calculations + + + + +

+

Total times shadows were updated, debug

+ + + diff --git a/datum/controller/subsystem/mapping.html b/datum/controller/subsystem/mapping.html new file mode 100644 index 000000000000..52b94ab9364b --- /dev/null +++ b/datum/controller/subsystem/mapping.html @@ -0,0 +1,137 @@ + + + + + + + /datum/controller/subsystem/mapping - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Mapping + + + +

+ + + + + + + + + + + + + + + +

Vars

adding_new_zlevelTrue when in the process of adding a new Z-level, global locking
lists_to_reserveList of lists of turfs to reserve
loaded_lazy_templateslist of lazy templates that have been loaded
map_templatesName of all maps
shuttle_templatesName of all shuttles
tent_type_templatesmap_id of all tents
z_listlist of all z level datums in the order of their z (z level 1 is at index 1, etc.)
z_trait_levelslist of traits and their associated z leves

Procs

add_reservation_zlevelAdds a new reservation z level. A bit of space that can be handed out on request +Of note, reservations default to transit turfs, to make their most common use, shuttles, faster
get_main_ship_nameGets a name for the marine ship as per the enabled ship map configuration
initialize_reserved_levelSets up a z level as reserved +This is not for wiping reserved levels, use wipe_reservations() for that. +If this is called after SSatom init, it will call Initialize on all turfs on the passed z, as its name promises
manage_z_levelTakes a z level datum, and tells the mapping subsystem to manage it +Also handles things like plane offset generation, and other things that happen on a z level to z level basis
request_turf_block_reservationRequests a /datum/turf_reservation based on the given width, height, and z_size. You can specify a z_reservation to use a specific z level, or leave it null to use any z level.
reserve_turfsSchedules a group of turfs to be handed back to the reservation system's control +If await is true, will sleep until the turfs are finished work
+

Var Details

adding_new_zlevel + + + + +

+

True when in the process of adding a new Z-level, global locking

lists_to_reserve + + + + +

+

List of lists of turfs to reserve

loaded_lazy_templates + + + + +

+

list of lazy templates that have been loaded

map_templates + + + + +

+

Name of all maps

shuttle_templates + + + + +

+

Name of all shuttles

tent_type_templates + + + + +

+

map_id of all tents

z_list + + + + +

+

list of all z level datums in the order of their z (z level 1 is at index 1, etc.)

z_trait_levels + + + + +

+

list of traits and their associated z leves

Proc Details

add_reservation_zlevel +

+

Adds a new reservation z level. A bit of space that can be handed out on request +Of note, reservations default to transit turfs, to make their most common use, shuttles, faster

get_main_ship_name +

+

Gets a name for the marine ship as per the enabled ship map configuration

initialize_reserved_level +

+

Sets up a z level as reserved +This is not for wiping reserved levels, use wipe_reservations() for that. +If this is called after SSatom init, it will call Initialize on all turfs on the passed z, as its name promises

manage_z_level +

+

Takes a z level datum, and tells the mapping subsystem to manage it +Also handles things like plane offset generation, and other things that happen on a z level to z level basis

request_turf_block_reservation +

+

Requests a /datum/turf_reservation based on the given width, height, and z_size. You can specify a z_reservation to use a specific z level, or leave it null to use any z level.

reserve_turfs +

+

Schedules a group of turfs to be handed back to the reservation system's control +If await is true, will sleep until the turfs are finished work

+ + + diff --git a/datum/controller/subsystem/minimaps.html b/datum/controller/subsystem/minimaps.html new file mode 100644 index 000000000000..7ae8aa49d724 --- /dev/null +++ b/datum/controller/subsystem/minimaps.html @@ -0,0 +1,175 @@ + + + + + + + /datum/controller/subsystem/minimaps - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Minimaps + + + +

+ + + + + + + + + + + + + + + + + + +

Vars

earlyaddslist of callbacks we need to invoke late because Initialize happens early
hashed_minimapsassoc list of minimap objects that are hashed so we have to update as few as possible
hashed_tacmapsassociated list of tacmap datums with a hash
images_by_sourceAssoc list of images we hold by their source
minimap_addedweakrefs of xenos temporarily added to the marine minimap
minimaps_by_zMinimap hud display datums sorted by zlevel
removal_cbsAssoc list of removal callbacks to invoke to remove images from the raw lists
update_targetsthe update target datums, sorted by update flag type
update_targets_unsortedNonassoc list of targets we want to be stripped of their overlays during the SS fire
updators_by_datumlist of holders for data relating to tracked zlevel and tracked atom

Procs

add_markerAdds an atom we want to track with blips to the subsystem +Arguments:
add_to_updatersAdds an atom to the processing updators that will have blips drawn on them +Arguments:
fetch_minimap_objectFetches a /atom/movable/screen/minimap instance or creates one if none exists +Note this does not destroy them when the map is unused, might be a potential thing to do? +Arguments:
on_z_changeCalled on zlevel change of a blip-atom so we can update the image lists as needed
remove_markerRemoves an atom and it's blip from the subsystem. +Force has no effect on this proc, but is here because we are a COMSIG_PARENT_QDELETING handler.
remove_updatorRemoves a atom from the subsystems updating overlays
removeimageremoves an image from raw tracked lists, invoked by callback
+

Var Details

earlyadds + + + + +

+

list of callbacks we need to invoke late because Initialize happens early

hashed_minimaps + + + + +

+

assoc list of minimap objects that are hashed so we have to update as few as possible

hashed_tacmaps + + + + +

+

associated list of tacmap datums with a hash

images_by_source + + + + +

+

Assoc list of images we hold by their source

minimap_added + + + + +

+

weakrefs of xenos temporarily added to the marine minimap

minimaps_by_z + + + + +

+

Minimap hud display datums sorted by zlevel

removal_cbs + + + + +

+

Assoc list of removal callbacks to invoke to remove images from the raw lists

update_targets + + + + +

+

the update target datums, sorted by update flag type

update_targets_unsorted + + + + +

+

Nonassoc list of targets we want to be stripped of their overlays during the SS fire

updators_by_datum + + + + +

+

list of holders for data relating to tracked zlevel and tracked atom

Proc Details

add_marker +

+

Adds an atom we want to track with blips to the subsystem +Arguments:

+

add_to_updaters +

+

Adds an atom to the processing updators that will have blips drawn on them +Arguments:

+

fetch_minimap_object +

+

Fetches a /atom/movable/screen/minimap instance or creates one if none exists +Note this does not destroy them when the map is unused, might be a potential thing to do? +Arguments:

+

on_z_change +

+

Called on zlevel change of a blip-atom so we can update the image lists as needed

remove_marker +

+

Removes an atom and it's blip from the subsystem. +Force has no effect on this proc, but is here because we are a COMSIG_PARENT_QDELETING handler.

remove_updator +

+

Removes a atom from the subsystems updating overlays

removeimage +

+

removes an image from raw tracked lists, invoked by callback

+ + + diff --git a/datum/controller/subsystem/nightmare.html b/datum/controller/subsystem/nightmare.html new file mode 100644 index 000000000000..baf226640028 --- /dev/null +++ b/datum/controller/subsystem/nightmare.html @@ -0,0 +1,92 @@ + + + + + + + /datum/controller/subsystem/nightmare - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Nightmare + + + +

+ + + + + + + + + + +

Vars

contextsList of nightmare context types, mapped to their instance
rootsList of parsed file nodes

Procs

get_scenario_valueReturns a value from the global scenario
load_fileReads a JSON file, returns a branch nmnode representing contents of file
load_map_configLoad nightmare steps relevant to a map
parse_fileReads a JSON file, returns list of config nodes in the file
parse_treeInstanciates nmnodes from parsed JSON
read_nodeInstanciate a single nmnode from its JSON definition
set_scenario_valueOverride a value from the global scenario.
+

Var Details

contexts + + + + +

+

List of nightmare context types, mapped to their instance

roots + + + + +

+

List of parsed file nodes

Proc Details

get_scenario_value +

+

Returns a value from the global scenario

load_file +

+

Reads a JSON file, returns a branch nmnode representing contents of file

load_map_config +

+

Load nightmare steps relevant to a map

parse_file +

+

Reads a JSON file, returns list of config nodes in the file

parse_tree +

+

Instanciates nmnodes from parsed JSON

read_node +

+

Instanciate a single nmnode from its JSON definition

set_scenario_value +

+

Override a value from the global scenario.

+ + + diff --git a/datum/controller/subsystem/objectives.html b/datum/controller/subsystem/objectives.html new file mode 100644 index 000000000000..319c7b401502 --- /dev/null +++ b/datum/controller/subsystem/objectives.html @@ -0,0 +1,35 @@ + + + + + + + /datum/controller/subsystem/objectives - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Objectives + + + +

+ + +

Procs

initialize_objectivesAllows to perform objective initialization later on in case of map changes

Proc Details

initialize_objectives +

+

Allows to perform objective initialization later on in case of map changes

+ + + diff --git a/datum/controller/subsystem/perf_logging.html b/datum/controller/subsystem/perf_logging.html new file mode 100644 index 000000000000..9a4bfe639da1 --- /dev/null +++ b/datum/controller/subsystem/perf_logging.html @@ -0,0 +1,49 @@ + + + + + + + /datum/controller/subsystem/perf_logging - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Perf Logging + + + +

+ + + + +

Procs

new_recordInsert a new timing record for a single subsystem
start_loggingSetup to begin performance logging when game starts
update_mc_timingInsert a new timing record for the MC as a whole

Proc Details

new_record +

+

Insert a new timing record for a single subsystem

start_logging +

+

Setup to begin performance logging when game starts

update_mc_timing +

+

Insert a new timing record for the MC as a whole

+ + + diff --git a/datum/controller/subsystem/processing/dcs.html b/datum/controller/subsystem/processing/dcs.html new file mode 100644 index 000000000000..437e97727ce3 --- /dev/null +++ b/datum/controller/subsystem/processing/dcs.html @@ -0,0 +1,41 @@ + + + + + + + /datum/controller/subsystem/processing/dcs - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Datum Component System + + + +

+ + +

Procs

GetIdFromArgumentsGenerates an id for bespoke elements when given the argument list +Generating the id here is a bit complex because we need to support named arguments +Named arguments can appear in any order and we need them to appear after ordered arguments +We assume that no one will pass in a named argument with a value of null

Proc Details

GetIdFromArguments +

+

Generates an id for bespoke elements when given the argument list +Generating the id here is a bit complex because we need to support named arguments +Named arguments can appear in any order and we need them to appear after ordered arguments +We assume that no one will pass in a named argument with a value of null

+ + + diff --git a/datum/controller/subsystem/projectiles.html b/datum/controller/subsystem/projectiles.html new file mode 100644 index 000000000000..abea67bb3ccb --- /dev/null +++ b/datum/controller/subsystem/projectiles.html @@ -0,0 +1,50 @@ + + + + + + + /datum/controller/subsystem/projectiles - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Projectiles + + + +

+ + + + +

Vars

flyingList of projectiles handled this controller firing
projectilesList of projectiles handled by the subsystem
sleepersList of projectiles on hold due to sleeping
+

Var Details

flying + + + + +

+

List of projectiles handled this controller firing

projectiles + + + + +

+

List of projectiles handled by the subsystem

sleepers + + + + +

+

List of projectiles on hold due to sleeping

+ + + diff --git a/datum/controller/subsystem/redis.html b/datum/controller/subsystem/redis.html new file mode 100644 index 000000000000..1b5fdb0e02c1 --- /dev/null +++ b/datum/controller/subsystem/redis.html @@ -0,0 +1,64 @@ + + + + + + + /datum/controller/subsystem/redis - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Redis + + + +

+ + + + + + +

Vars

connectedif a connection to redis has been established
instance_namethe name this server uses externally
queuemessage queue, for messages sent prior to initialization
redis_loggingif this server is sending logs to redis, in addition to the file system
subbed_channelssubscribed to channels on the redis server
+

Var Details

connected + + + + +

+

if a connection to redis has been established

instance_name + + + + +

+

the name this server uses externally

queue + + + + +

+

message queue, for messages sent prior to initialization

redis_logging + + + + +

+

if this server is sending logs to redis, in addition to the file system

subbed_channels + + + + +

+

subscribed to channels on the redis server

+ + + diff --git a/datum/controller/subsystem/shuttle.html b/datum/controller/subsystem/shuttle.html new file mode 100644 index 000000000000..1d8439f54082 --- /dev/null +++ b/datum/controller/subsystem/shuttle.html @@ -0,0 +1,194 @@ + + + + + + + /datum/controller/subsystem/shuttle - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Shuttle + + + +

+ + + + + + + + + + + + + + + + + + + + + + +

Vars

assoc_mobileNow it's only for ID generation in /obj/docking_port/mobile/register()
assoc_stationaryNow it's only for ID generation in /obj/docking_port/stationary/register()
existing_shuttleThe existing shuttle associated with the selected shuttle map_template.
loading_shuttleAre we currently in the process of loading a shuttle? Useful to ensure we don't load more than one at once, to avoid weird inconsistencies and possible runtimes.
lockdownDisallow transit after nuke goes off
mobileA list of all the mobile docking ports.
preview_reservationThe turf reservation for the current previewed shuttle.
preview_shuttleThe docking port associated to the preview_template that's currently being previewed.
preview_templateThe shuttle map_template of the shuttle we want to preview.
selectedThe currently selected shuttle map_template in the shuttle manipulator's template viewer.
stationaryA list of all the stationary docking ports.
transitA list of all the transit docking ports.
transit_request_failuresAn associative list of the mobile docking ports that have failed a transit request, with the amount of times they've actually failed that transit request, up to MAX_TRANSIT_REQUEST_RETRIES
transit_requestersA list of all the mobile docking ports currently requesting a spot in hyperspace.
transit_utilizedHow many turfs our shuttles are currently utilizing in reservation space

Procs

action_loadLoads a shuttle template and sends it to a given destination port, optionally replacing the existing shuttle
get_template_shuttleTries to get a shuttle based on its original template id (rather than one that may have an additional identifier)
load_templateLoads a shuttle template into the transit Z level, usually referred to elsewhere in the code as a shuttle preview. +Does not register the shuttle so it can't be used yet, that's handled in action_load()
moveShuttleMoves a shuttle to a new location
transit_space_clearingGotta manage our space brother
unload_previewRemoves the preview_shuttle from the transit Z-level
+

Var Details

assoc_mobile + + + + +

+

Now it's only for ID generation in /obj/docking_port/mobile/register()

assoc_stationary + + + + +

+

Now it's only for ID generation in /obj/docking_port/stationary/register()

existing_shuttle + + + + +

+

The existing shuttle associated with the selected shuttle map_template.

loading_shuttle + + + + +

+

Are we currently in the process of loading a shuttle? Useful to ensure we don't load more than one at once, to avoid weird inconsistencies and possible runtimes.

lockdown + + + + +

+

Disallow transit after nuke goes off

mobile + + + + +

+

A list of all the mobile docking ports.

preview_reservation + + + + +

+

The turf reservation for the current previewed shuttle.

preview_shuttle + + + + +

+

The docking port associated to the preview_template that's currently being previewed.

preview_template + + + + +

+

The shuttle map_template of the shuttle we want to preview.

selected + + + + +

+

The currently selected shuttle map_template in the shuttle manipulator's template viewer.

stationary + + + + +

+

A list of all the stationary docking ports.

transit + + + + +

+

A list of all the transit docking ports.

transit_request_failures + + + + +

+

An associative list of the mobile docking ports that have failed a transit request, with the amount of times they've actually failed that transit request, up to MAX_TRANSIT_REQUEST_RETRIES

transit_requesters + + + + +

+

A list of all the mobile docking ports currently requesting a spot in hyperspace.

transit_utilized + + + + +

+

How many turfs our shuttles are currently utilizing in reservation space

Proc Details

action_load +

+

Loads a shuttle template and sends it to a given destination port, optionally replacing the existing shuttle

+

Arguments:

+

get_template_shuttle +

+

Tries to get a shuttle based on its original template id (rather than one that may have an additional identifier)

load_template +

+

Loads a shuttle template into the transit Z level, usually referred to elsewhere in the code as a shuttle preview. +Does not register the shuttle so it can't be used yet, that's handled in action_load()

+

Arguments:

+

moveShuttle +

+

Moves a shuttle to a new location

+

Arguments:

+

transit_space_clearing +

+

Gotta manage our space brother

unload_preview +

+

Removes the preview_shuttle from the transit Z-level

+ + + diff --git a/datum/controller/subsystem/statpanels.html b/datum/controller/subsystem/statpanels.html new file mode 100644 index 000000000000..0190777868a3 --- /dev/null +++ b/datum/controller/subsystem/statpanels.html @@ -0,0 +1,87 @@ + + + + + + + /datum/controller/subsystem/statpanels - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Stat Panels + + + +

+ + + + + + + + + +

Vars

default_waithow many subsystem fires between most tab updates
mc_waithow many subsystem fires between updates of the MC tab
num_fireshow many full runs this subsystem has completed. used for variable rate refreshes.
status_waithow many subsystem fires between updates of the status tab

Procs

immediate_send_stat_dataimmediately update the active statpanel tab of the target client
refresh_client_obj_viewSet the atoms we're meant to display
return_object_imagesReturns all our ready object tab images +Returns a list in the form list(list(object_name, object_ref, loaded_image), ...)
set_SDQL2_tabSets the current tab to the SDQL tab
+

Var Details

default_wait + + + + +

+

how many subsystem fires between most tab updates

mc_wait + + + + +

+

how many subsystem fires between updates of the MC tab

num_fires + + + + +

+

how many full runs this subsystem has completed. used for variable rate refreshes.

status_wait + + + + +

+

how many subsystem fires between updates of the status tab

Proc Details

immediate_send_stat_data +

+

immediately update the active statpanel tab of the target client

refresh_client_obj_view +

+

Set the atoms we're meant to display

return_object_images +

+

Returns all our ready object tab images +Returns a list in the form list(list(object_name, object_ref, loaded_image), ...)

set_SDQL2_tab +

+

Sets the current tab to the SDQL tab

+ + + diff --git a/datum/controller/subsystem/stickyban.html b/datum/controller/subsystem/stickyban.html new file mode 100644 index 000000000000..e6a0d8e6dccb --- /dev/null +++ b/datum/controller/subsystem/stickyban.html @@ -0,0 +1,134 @@ + + + + + + + /datum/controller/subsystem/stickyban - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Sticky Ban + + + +

+ + + + + + + + + + + + + + +

Procs

add_matched_cidAdds a CID match to the specified stickyban.
add_matched_ckeyAdds a ckey match to the specified sticky ban.
add_matched_ipAdds an IP match to the specified stickyban.
add_stickybanAdds a new tracked stickyban, and returns a /datum/entity/stickyban if it was successful. Blocking, sleeps.
check_for_sticky_banReturns a list of /datum/view_record/stickybans, or null, if no stickybans are found. All arguments are optional, but you should pass at least one if you want any results.
get_impacted_cid_recordsReturns a /list of /datum/view_record/stickyban_matched_cid where the impacted CID matches the CID provided. +Connections matching this CID will be blocked - provided the linked stickyban is active.
get_impacted_ckey_recordsReturns a /list of /datum/view_record/stickyban_matched_ckey where the ckey provided has not been +whitelisted from the stickyban, and would be prevented from joining - provided that the stickyban itself +remains active.
get_impacted_ip_recordsReturns a /list of /datum/view_record/stickyban_matched_ip where the impacted IP matches the IP provided. +Connections matchin this IP will be blocked - provided the linked stickyban is active.
get_whitelisted_ckey_recordsReturns a /list of /datum/view_record/stickyban_matched_ckey which have been manually whitelisted by an admin and matches the provided existing_ban_id and key.
handle_old_permaImports permabans from the old ban.txt, and does not ban people that have been whitelisted.
import_stickyLegacy import from pager bans to database bans.
match_stickyAssociates an existing stickyban with a new match, either of a ckey, address, or computer_id. Or all three.
whitelist_ckeyWhitelists a specific CKEY to the specified stickyban, which will allow connection, even with matching CIDs and IPs.

Proc Details

add_matched_cid +

+

Adds a CID match to the specified stickyban.

add_matched_ckey +

+

Adds a ckey match to the specified sticky ban.

add_matched_ip +

+

Adds an IP match to the specified stickyban.

add_stickyban +

+

Adds a new tracked stickyban, and returns a /datum/entity/stickyban if it was successful. Blocking, sleeps.

check_for_sticky_ban +

+

Returns a list of /datum/view_record/stickybans, or null, if no stickybans are found. All arguments are optional, but you should pass at least one if you want any results.

get_impacted_cid_records +

+

Returns a /list of /datum/view_record/stickyban_matched_cid where the impacted CID matches the CID provided. +Connections matching this CID will be blocked - provided the linked stickyban is active.

get_impacted_ckey_records +

+

Returns a /list of /datum/view_record/stickyban_matched_ckey where the ckey provided has not been +whitelisted from the stickyban, and would be prevented from joining - provided that the stickyban itself +remains active.

get_impacted_ip_records +

+

Returns a /list of /datum/view_record/stickyban_matched_ip where the impacted IP matches the IP provided. +Connections matchin this IP will be blocked - provided the linked stickyban is active.

get_whitelisted_ckey_records +

+

Returns a /list of /datum/view_record/stickyban_matched_ckey which have been manually whitelisted by an admin and matches the provided existing_ban_id and key.

handle_old_perma +

+

Imports permabans from the old ban.txt, and does not ban people that have been whitelisted.

import_sticky +

+

Legacy import from pager bans to database bans.

match_sticky +

+

Associates an existing stickyban with a new match, either of a ckey, address, or computer_id. Or all three.

+

Arguments:

+

whitelist_ckey +

+

Whitelists a specific CKEY to the specified stickyban, which will allow connection, even with matching CIDs and IPs.

+ + + diff --git a/datum/controller/subsystem/tgui.html b/datum/controller/subsystem/tgui.html new file mode 100644 index 000000000000..723f2b046e5d --- /dev/null +++ b/datum/controller/subsystem/tgui.html @@ -0,0 +1,202 @@ + + + + + + + /datum/controller/subsystem/tgui - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tgui + + + +

+ + + + + + + + + + + + + + + + + + + +

Vars

basehtmlThe HTML base used for all UIs.
current_runA list of UIs scheduled to process
open_uisA list of open UIs
open_uis_by_srcA list of open UIs, grouped by src_object.

Procs

close_all_uispublic
close_uispublic
close_user_uispublic
force_close_all_windowspublic
force_close_windowpublic
get_open_uipublic
on_closeprivate
on_logoutprivate
on_openprivate
on_transferprivate
request_pooled_windowpublic
try_update_uipublic
update_uispublic
update_user_uispublic
+

Var Details

basehtml + + + + +

+

The HTML base used for all UIs.

current_run + + + + +

+

A list of UIs scheduled to process

open_uis + + + + +

+

A list of open UIs

open_uis_by_src + + + + +

+

A list of open UIs, grouped by src_object.

Proc Details

close_all_uis +

+

public

+

Close all UIs regardless of their attachment to src_object.

+

return int The number of UIs closed.

close_uis +

+

public

+

Close all UIs attached to src_object.

+

required src_object datum The object/datum which owns the UIs.

+

return int The number of UIs closed.

close_user_uis +

+

public

+

Close all UIs belonging to a user.

+

required user mob The mob who opened/is using the UI. +optional src_object datum If provided, only close UIs belonging this src_object.

+

return int The number of UIs closed.

force_close_all_windows +

+

public

+

Force closes all tgui windows.

+

required user mob

force_close_window +

+

public

+

Force closes the tgui window by window_id.

+

required user mob +required window_id string

get_open_ui +

+

public

+

Get a open UI given a user and src_object.

+

required user mob The mob who opened/is using the UI. +required src_object datum The object/datum which owns the UI.

+

return datum/tgui The found UI.

on_close +

+

private

+

Remove a UI from the list of open UIs.

+

required ui datum/tgui The UI to be removed.

+

return bool If the UI was removed or not.

on_logout +

+

private

+

Handle client logout, by closing all their UIs.

+

required user mob The mob which logged out.

+

return int The number of UIs closed.

on_open +

+

private

+

Add a UI to the list of open UIs.

+

required ui datum/tgui The UI to be added.

on_transfer +

+

private

+

Handle clients switching mobs, by transferring their UIs.

+

required user source The client's original mob. +required user target The client's new mob.

+

return bool If the UIs were transferred.

request_pooled_window +

+

public

+

Requests a usable tgui window from the pool. +Returns null if pool was exhausted.

+

required user mob +return datum/tgui

try_update_ui +

+

public

+

Try to find an instance of a UI, and push an update to it.

+

required user mob The mob who opened/is using the UI. +required src_object datum The object/datum which owns the UI. +optional ui datum/tgui The UI to be updated, if it exists. +optional force_open bool If the UI should be re-opened instead of updated.

+

return datum/tgui The found UI.

update_uis +

+

public

+

Update all UIs attached to src_object.

+

required src_object datum The object/datum which owns the UIs.

+

return int The number of UIs updated.

update_user_uis +

+

public

+

Update all UIs belonging to a user.

+

required user mob The mob who opened/is using the UI. +optional src_object datum If provided, only update UIs belonging this src_object.

+

return int The number of UIs updated.

+ + + diff --git a/datum/controller/subsystem/ticker.html b/datum/controller/subsystem/ticker.html new file mode 100644 index 000000000000..309ebd2c1e29 --- /dev/null +++ b/datum/controller/subsystem/ticker.html @@ -0,0 +1,64 @@ + + + + + + + /datum/controller/subsystem/ticker - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Ticker + + + +

+ + + + + + +

Vars

start_immediatelyIf TRUE, there is no lobby phase, the game starts immediately.
tippedIf we have already done tip of the round.

Procs

apply_lazy_timingsPlaceholder proc to apply slower SS timings for performance. Should be refactored to be included in Master/SS probably. Note we can't change prios after MC init.
request_startAttempt to start game asynchronously if applicable
setup_startTry to effectively setup gamemode and start now
+

Var Details

start_immediately + + + + +

+

If TRUE, there is no lobby phase, the game starts immediately.

tipped + + + + +

+

If we have already done tip of the round.

Proc Details

apply_lazy_timings +

+

Placeholder proc to apply slower SS timings for performance. Should be refactored to be included in Master/SS probably. Note we can't change prios after MC init.

request_start +

+

Attempt to start game asynchronously if applicable

setup_start +

+

Try to effectively setup gamemode and start now

+ + + diff --git a/datum/controller/subsystem/timer.html b/datum/controller/subsystem/timer.html new file mode 100644 index 000000000000..abb4db5960b9 --- /dev/null +++ b/datum/controller/subsystem/timer.html @@ -0,0 +1,141 @@ + + + + + + + /datum/controller/subsystem/timer - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Timer + + + +

+ + + + + + + + + + + + + + + + + +

Vars

bucket_auto_resetBoolean operator controlling if the timer SS will automatically reset buckets if it fails to invoke callbacks for an extended period of time
bucket_countHow many timers are in the buckets
bucket_listList of buckets, each bucket holds every timer that has to run that byond tick
bucket_reset_countHow many times bucket was reset
bucket_resolutionworld.tick_lag the bucket was designed for
clienttime_timersSpecial timers that run in real-time, not BYOND time; these are more expensive to run and maintain
hashesA hashlist dictionary used for storing unique timers
head_offsetworld.time of the first entry in the bucket list, effectively the 'start time' of the current buckets
last_invoke_tickContains the last time that a timer's callback was invoked, or the last tick the SS fired if no timers are being processed
last_invoke_warningContains the last time that a warning was issued for not invoking callbacks
next_clienttime_timer_indexKeeps track of the next index to work on for client timers
practical_offsetIndex of the wrap around pivot for buckets. buckets before this are later running buckets wrapped around from the end of the bucket list.
second_queueQueue used for storing timers that do not fit into the current buckets
timer_id_dictList of all active timers associated to their timer ID (for easy lookup)

Procs

get_timer_debug_stringGenerates a string with details about the timed event for debugging purposes
reset_bucketsDestroys the existing buckets and creates new buckets from the existing timed events
+

Var Details

bucket_auto_reset + + + + +

+

Boolean operator controlling if the timer SS will automatically reset buckets if it fails to invoke callbacks for an extended period of time

bucket_count + + + + +

+

How many timers are in the buckets

bucket_list + + + + +

+

List of buckets, each bucket holds every timer that has to run that byond tick

bucket_reset_count + + + + +

+

How many times bucket was reset

bucket_resolution + + + + +

+

world.tick_lag the bucket was designed for

clienttime_timers + + + + +

+

Special timers that run in real-time, not BYOND time; these are more expensive to run and maintain

hashes + + + + +

+

A hashlist dictionary used for storing unique timers

head_offset + + + + +

+

world.time of the first entry in the bucket list, effectively the 'start time' of the current buckets

last_invoke_tick + + + + +

+

Contains the last time that a timer's callback was invoked, or the last tick the SS fired if no timers are being processed

last_invoke_warning + + + + +

+

Contains the last time that a warning was issued for not invoking callbacks

next_clienttime_timer_index + + + + +

+

Keeps track of the next index to work on for client timers

practical_offset + + + + +

+

Index of the wrap around pivot for buckets. buckets before this are later running buckets wrapped around from the end of the bucket list.

second_queue + + + + +

+

Queue used for storing timers that do not fit into the current buckets

timer_id_dict + + + + +

+

List of all active timers associated to their timer ID (for easy lookup)

Proc Details

get_timer_debug_string +

+

Generates a string with details about the timed event for debugging purposes

reset_buckets +

+

Destroys the existing buckets and creates new buckets from the existing timed events

+ + + diff --git a/datum/controller/subsystem/vote.html b/datum/controller/subsystem/vote.html new file mode 100644 index 000000000000..8f32fd5d3dda --- /dev/null +++ b/datum/controller/subsystem/vote.html @@ -0,0 +1,66 @@ + + + + + + + /datum/controller/subsystem/vote - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Vote + + + +

+ + + + + + +

Vars

adjustmentsAdjustments applied to the current round's votes
carryoverVotes from previous rounds
choicesCurrent round votes
on_vote_endCallback that runs when the vote ends
vote_adjustment_callbackCallback to calculate how many votes to add/remove +Pass the number of current round votes and carryover
+

Var Details

adjustments + + + + +

+

Adjustments applied to the current round's votes

carryover + + + + +

+

Votes from previous rounds

choices + + + + +

+

Current round votes

on_vote_end + + + + +

+

Callback that runs when the vote ends

vote_adjustment_callback + + + + +

+

Callback to calculate how many votes to add/remove +Pass the number of current round votes and carryover

+ + + diff --git a/datum/controller/subsystem/weather.html b/datum/controller/subsystem/weather.html new file mode 100644 index 000000000000..1b9b9b15a44c --- /dev/null +++ b/datum/controller/subsystem/weather.html @@ -0,0 +1,50 @@ + + + + + + + /datum/controller/subsystem/weather - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Weather + + + +

+ + + + +

Vars

map_holderImportant vars
weather_areasList of master areas to use for applying effects

Procs

setup_weather_eventStartup of an arbitrary weather event if none is running. Returns TRUE if successful.
+

Var Details

map_holder + + + + +

+

Important vars

weather_areas + + + + +

+

List of master areas to use for applying effects

Proc Details

setup_weather_event +

+

Startup of an arbitrary weather event if none is running. Returns TRUE if successful.

+ + + diff --git a/datum/controller/supply.html b/datum/controller/supply.html new file mode 100644 index 000000000000..3772b3e12b92 --- /dev/null +++ b/datum/controller/supply.html @@ -0,0 +1,106 @@ + + + + + + + /datum/controller/supply - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/controller/supply + + + +

+ + + + + + + + + + + + +

Vars

asrs_supply_packs_by_poolPools mapped to list of random ASRS packs that belong to it
base_random_crate_intervalsHow many processing intervals do we get random crates for each pool. Currently only ASRS_POOL_MAIN gets scaled amount of crates.
black_market_enabledIf the black market is enabled.
black_market_heatHow close the CMB is to investigating | 100 sends an ERT
black_market_pointsin Weyland-Yutani dollars - Not Stan_Albatross.
black_market_sold_itemsThis contains a list of all typepaths of sold items and how many times they've been received. Used to calculate points dropoff (Can't send down a hundred blue souto cans for infinite points)
mendoza_statusIf the players killed him by sending a live hostile below.. this goes false and they can't order any more contraband.
pointsCurrent supply points
points_scaleMultiplier to the amount of points awarded based on marine scale
random_crates_carryHow many partial crates are stored in ASRS per pool to smooth amount given out

Procs

black_market_investigationFor code readability.
+

Var Details

asrs_supply_packs_by_pool + + + + +

+

Pools mapped to list of random ASRS packs that belong to it

base_random_crate_intervals + + + + +

+

How many processing intervals do we get random crates for each pool. Currently only ASRS_POOL_MAIN gets scaled amount of crates.

black_market_enabled + + + + +

+

If the black market is enabled.

black_market_heat + + + + +

+

How close the CMB is to investigating | 100 sends an ERT

black_market_points + + + + +

+

in Weyland-Yutani dollars - Not Stan_Albatross.

black_market_sold_items + + + + +

+

This contains a list of all typepaths of sold items and how many times they've been received. Used to calculate points dropoff (Can't send down a hundred blue souto cans for infinite points)

mendoza_status + + + + +

+

If the players killed him by sending a live hostile below.. this goes false and they can't order any more contraband.

points + + + + +

+

Current supply points

points_scale + + + + +

+

Multiplier to the amount of points awarded based on marine scale

random_crates_carry + + + + +

+

How many partial crates are stored in ASRS per pool to smooth amount given out

Proc Details

black_market_investigation +

+

For code readability.

+ + + diff --git a/datum/coords/qtplayer.html b/datum/coords/qtplayer.html new file mode 100644 index 000000000000..86f6af7d780a --- /dev/null +++ b/datum/coords/qtplayer.html @@ -0,0 +1,43 @@ + + + + + + + /datum/coords/qtplayer - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/coords/qtplayer + + + +

+ + + +

Vars

is_observerTruthy if player is an observer
playerRelevant client the coords are associated to
+

Var Details

is_observer + + + + +

+

Truthy if player is an observer

player + + + + +

+

Relevant client the coords are associated to

+ + + diff --git a/datum/crewmonitor.html b/datum/crewmonitor.html new file mode 100644 index 000000000000..804a60d1b053 --- /dev/null +++ b/datum/crewmonitor.html @@ -0,0 +1,57 @@ + + + + + + + /datum/crewmonitor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/crewmonitor + + + +

+ + + + + +

Vars

dataCache of data generated, used for serving the data within SENSOR_UPDATE_PERIOD of the last update
jobsMap of job to ID for sorting purposes
last_updateCache of last update time
ui_sourcesList of user -> UI source
+

Var Details

data + + + + +

+

Cache of data generated, used for serving the data within SENSOR_UPDATE_PERIOD of the last update

jobs + + + + +

+

Map of job to ID for sorting purposes

last_update + + + + +

+

Cache of last update time

ui_sources + + + + +

+

List of user -> UI source

+ + + diff --git a/datum/custom_hud.html b/datum/custom_hud.html new file mode 100644 index 000000000000..c78290407434 --- /dev/null +++ b/datum/custom_hud.html @@ -0,0 +1,35 @@ + + + + + + + /datum/custom_hud - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/custom_hud + + + +

+ + +

Procs

hud_slot_offsetOffsets the slot's screen_loc by the item's hud_offset var. Uses the ui slot var as the arg: ui_belt, not WEAR_WAIST/"belt".

Proc Details

hud_slot_offset +

+

Offsets the slot's screen_loc by the item's hud_offset var. Uses the ui slot var as the arg: ui_belt, not WEAR_WAIST/"belt".

+ + + diff --git a/datum/datacore.html b/datum/datacore.html new file mode 100644 index 000000000000..8f66fa438566 --- /dev/null +++ b/datum/datacore.html @@ -0,0 +1,35 @@ + + + + + + + /datum/datacore - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/datacore + + + +

+ + +

Procs

manifestIf it is a real squad in the USCM squad list to prevent the crew manifest from breaking

Proc Details

manifest +

+

If it is a real squad in the USCM squad list to prevent the crew manifest from breaking

+ + + diff --git a/datum/decorator/gamemode.html b/datum/decorator/gamemode.html new file mode 100644 index 000000000000..52d79eb5c476 --- /dev/null +++ b/datum/decorator/gamemode.html @@ -0,0 +1,61 @@ + + + + + + + /datum/decorator/gamemode - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/decorator/gamemode + + + +

+ +

Gamemode decorators allow us to make changes to edits on specific gamemodes, +to assist in balancing varied gameplay in different modes

+

They can be manually defined, and procs overridden. Alternatively, +using the GAMEMODE_DECORATOR define, you can quickly make a decorator for +a specific type and subtypes.

+

eg:

+
GAMEMODE_DECORATOR(/obj/item/clothing/suit/storage/marine/smartgunner, /datum/game_mode/extended/faction_clash, list(
+  ARMOR_EDIT(armor_bullet, CLOTHING_ARMOR_HIGH),
+  ARMOR_EDIT(armor_internaldamage, CLOTHING_ARMOR_HIGH)
+  ))
+
+

If you need to edit different types, make a new define using VARIABLE_EDIT, and provide the parent path for the type.

+ + +

Vars

apply_typeWhich type this should apply edits to
editsThe list of edits to make
gamemodeThe gamemode type this should apply to
+

Var Details

apply_type + + + + +

+

Which type this should apply edits to

edits + + + + +

+

The list of edits to make

gamemode + + + + +

+

The gamemode type this should apply to

+ + + diff --git a/datum/discord_embed.html b/datum/discord_embed.html new file mode 100644 index 000000000000..fead4b41c246 --- /dev/null +++ b/datum/discord_embed.html @@ -0,0 +1,122 @@ + + + + + + + /datum/discord_embed - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/discord_embed + + + +

+ +

Documentation for the embed object and all of its variables can be found at +https://discord.com/developers/docs/resources/channel#embed-object +It is recommended to read the documentation on the discord website, as the information below could become outdated in the future.

+ + + + + + + + + + + + +

Vars

authorName of the author of the embed
colorThe color that appears on the top of the embed. This is an integer and is the color code of the embed.
contentAny content that should appear above the embed
descriptionThe description
fieldsA key-value string list of fields that should be displayed
footerThe footer that appears on the embed
imageString representing a link to an image
providerString representing the name of the provider
provider_urlString representing the link of the provider
thumbnailString representing a link to the thumbnail image
titleTitle of the embed
urlThe URL that the title
videoString representing a link to the video
+

Var Details

author + + + + +

+

Name of the author of the embed

color + + + + +

+

The color that appears on the top of the embed. This is an integer and is the color code of the embed.

content + + + + +

+

Any content that should appear above the embed

description + + + + +

+

The description

fields + + + + +

+

A key-value string list of fields that should be displayed

footer + + + + +

+

The footer that appears on the embed

image + + + + +

+

String representing a link to an image

provider + + + + +

+

String representing the name of the provider

provider_url + + + + +

+

String representing the link of the provider

thumbnail + + + + +

+

String representing a link to the thumbnail image

title + + + + +

+

Title of the embed

url + + + + +

+

The URL that the title

video + + + + +

+

String representing a link to the video

+ + + diff --git a/datum/disease/black_goo.html b/datum/disease/black_goo.html new file mode 100644 index 000000000000..1532cf42ac4b --- /dev/null +++ b/datum/disease/black_goo.html @@ -0,0 +1,64 @@ + + + + + + + /datum/disease/black_goo - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Black Goo + + + +

+ + + + + + +

Vars

goo_message_cooldowncooldown for the living mob's symptom messages
infection_ratevariable that handles passive increase of the virus of a host.
stage_countervariable to keep track of the stage level, used to prevent the stage message from being displayed more than once for any given stage.
stage_levelvariable that contains accumulated virus progression for a host. Iterates to a value above 360 and is then reset.
zombie_is_transformingboolean value to determine if the mob is currently transforming into a zombie.
+

Var Details

goo_message_cooldown + + + + +

+

cooldown for the living mob's symptom messages

infection_rate + + + + +

+

variable that handles passive increase of the virus of a host.

stage_counter + + + + +

+

variable to keep track of the stage level, used to prevent the stage message from being displayed more than once for any given stage.

stage_level + + + + +

+

variable that contains accumulated virus progression for a host. Iterates to a value above 360 and is then reset.

zombie_is_transforming + + + + +

+

boolean value to determine if the mob is currently transforming into a zombie.

+ + + diff --git a/datum/dynamic_light_source.html b/datum/dynamic_light_source.html new file mode 100644 index 000000000000..f4ec687469b9 --- /dev/null +++ b/datum/dynamic_light_source.html @@ -0,0 +1,120 @@ + + + + + + + /datum/dynamic_light_source - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/dynamic_light_source + + + +

+ + + + + + + + + + + + + + +

Vars

appliedWhether we have applied our light yet or not.
cached_locour last loc
contained_atomThe atom that the source atom is contained inside
light_colorThe colour of the light, string, decomposed by PARSE_LIGHT_COLOR()
light_powerIntensity of the emitter light.
light_rangeThe range of the emitted light.
mask_holderreference to the mask holder effect
mask_typetypepath for the mask type we are using
our_maskreference to the mask contained within the mask_holder objects vis_contents
pixel_turfthe turf the contained atom appears to be covering
source_atomsource atom that we belong to

Procs

find_containing_atomUpdates containing atom
set_lightUpdate light if changed.
+

Var Details

applied + + + + +

+

Whether we have applied our light yet or not.

cached_loc + + + + +

+

our last loc

contained_atom + + + + +

+

The atom that the source atom is contained inside

light_color + + + + +

+

The colour of the light, string, decomposed by PARSE_LIGHT_COLOR()

light_power + + + + +

+

Intensity of the emitter light.

light_range + + + + +

+

The range of the emitted light.

mask_holder + + + + +

+

reference to the mask holder effect

mask_type + + + + +

+

typepath for the mask type we are using

our_mask + + + + +

+

reference to the mask contained within the mask_holder objects vis_contents

pixel_turf + + + + +

+

the turf the contained atom appears to be covering

source_atom + + + + +

+

source atom that we belong to

Proc Details

find_containing_atom +

+

Updates containing atom

set_light +

+

Update light if changed.

+ + + diff --git a/datum/effects/acid.html b/datum/effects/acid.html new file mode 100644 index 000000000000..2c67be71f5b9 --- /dev/null +++ b/datum/effects/acid.html @@ -0,0 +1,43 @@ + + + + + + + /datum/effects/acid - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/effects/acid + + + +

+ + + +

Vars

acid_enhancedIf it's been enhanced by a spit combo.
acid_goopinessHow 'goopy' the acid is. Each value is one stop drop roll.
+

Var Details

acid_enhanced + + + + +

+

If it's been enhanced by a spit combo.

acid_goopiness + + + + +

+

How 'goopy' the acid is. Each value is one stop drop roll.

+ + + diff --git a/datum/effects/neurotoxin.html b/datum/effects/neurotoxin.html new file mode 100644 index 000000000000..c39aa1352bf7 --- /dev/null +++ b/datum/effects/neurotoxin.html @@ -0,0 +1,85 @@ + + + + + + + /datum/effects/neurotoxin - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/effects/neurotoxin + + + +

+ + + + + + + + + +

Vars

bloodcough_probChance of blood_cough per proc (damaging)
durationDuration of the effect. Also used for intensity aswell
hallucinateWhether or not we hallucinate. (small rng stun chance)
msgDefault per proc message
stam_damStamina damage per tick. Major balance number.
strengthMultiplier for effects. Inputted in directly.
stumbleShould we stumble on next tick? Changed automatically
stumble_probProbability of stumbling per proc. Changed by code.
+

Var Details

bloodcough_prob + + + + +

+

Chance of blood_cough per proc (damaging)

duration + + + + +

+

Duration of the effect. Also used for intensity aswell

hallucinate + + + + +

+

Whether or not we hallucinate. (small rng stun chance)

msg + + + + +

+

Default per proc message

stam_dam + + + + +

+

Stamina damage per tick. Major balance number.

strength + + + + +

+

Multiplier for effects. Inputted in directly.

stumble + + + + +

+

Should we stumble on next tick? Changed automatically

stumble_prob + + + + +

+

Probability of stumbling per proc. Changed by code.

+ + + diff --git a/datum/element.html b/datum/element.html new file mode 100644 index 000000000000..1265ebad4c97 --- /dev/null +++ b/datum/element.html @@ -0,0 +1,61 @@ + + + + + + + /datum/element - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/element + + + +

+ +

A holder for simple behaviour that can be attached to many different types

+

Only one element of each type is instanced during game init. +Otherwise acts basically like a lightweight component.

+ + + +

Vars

element_flagsOption flags for element behaviour
id_arg_indexThe index of the first attach argument to consider for duplicate elements

Procs

AttachActivates the functionality defined by the element on the given target datum
DetachDeactivates the functionality defines by the element on the given datum
+

Var Details

element_flags + + + + +

+

Option flags for element behaviour

id_arg_index + + + + +

+

The index of the first attach argument to consider for duplicate elements

+

Is only used when flags contains ELEMENT_BESPOKE

+

This is infinity so you must explicitly set this

Proc Details

Attach +

+

Activates the functionality defined by the element on the given target datum

Detach +

+

Deactivates the functionality defines by the element on the given datum

+ + + diff --git a/datum/element/bloody_feet.html b/datum/element/bloody_feet.html new file mode 100644 index 000000000000..f39a5e636738 --- /dev/null +++ b/datum/element/bloody_feet.html @@ -0,0 +1,61 @@ + + + + + + + /datum/element/bloody_feet - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/element/bloody_feet + + + +

+ + + + + +

Vars

colorColor of the tracks left behind
entered_bloody_turfWhether the human has moved into the turf giving them bloody feet +Necessary because of how Crossed is called before Moved
steps_to_takeThe amount of steps you can take to make bloody footsteps
target_shoesState var to track the shoes (if any) of the humans +with this element
+

Var Details

color + + + + +

+

Color of the tracks left behind

entered_bloody_turf + + + + +

+

Whether the human has moved into the turf giving them bloody feet +Necessary because of how Crossed is called before Moved

steps_to_take + + + + +

+

The amount of steps you can take to make bloody footsteps

target_shoes + + + + +

+

State var to track the shoes (if any) of the humans +with this element

+ + + diff --git a/datum/element/bullet_trait_damage_boost.html b/datum/element/bullet_trait_damage_boost.html new file mode 100644 index 000000000000..9930304308b7 --- /dev/null +++ b/datum/element/bullet_trait_damage_boost.html @@ -0,0 +1,47 @@ + + + + + + + /datum/element/bullet_trait_damage_boost - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/element/bullet_trait_damage_boost + + + +

+ + + +

Vars

damage_boosted_atomsA typecache of objs or turfs that, upon being hit, boost the damage of the attached projectile

Procs

Attachvars:
+

Var Details

damage_boosted_atoms + + + + +

+

A typecache of objs or turfs that, upon being hit, boost the damage of the attached projectile

Proc Details

Attach +

+

vars:

+
+ + + diff --git a/datum/element/bullet_trait_iff.html b/datum/element/bullet_trait_iff.html new file mode 100644 index 000000000000..409354375c4c --- /dev/null +++ b/datum/element/bullet_trait_iff.html @@ -0,0 +1,43 @@ + + + + + + + /datum/element/bullet_trait_iff - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/element/bullet_trait_iff + + + +

+ + + +

Vars

iff_groupThe iff group for this bullet
iff_group_cacheA cache of IFF groups for specific mobs
+

Var Details

iff_group + + + + +

+

The iff group for this bullet

iff_group_cache + + + + +

+

A cache of IFF groups for specific mobs

+ + + diff --git a/datum/element/bullet_trait_penetrating.html b/datum/element/bullet_trait_penetrating.html new file mode 100644 index 000000000000..6d53e9a9bf43 --- /dev/null +++ b/datum/element/bullet_trait_penetrating.html @@ -0,0 +1,36 @@ + + + + + + + /datum/element/bullet_trait_penetrating - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/element/bullet_trait_penetrating + + + +

+ + +

Vars

distance_loss_per_hitThe distance loss per hit
+

Var Details

distance_loss_per_hit + + + + +

+

The distance loss per hit

+ + + diff --git a/datum/element/bullet_trait_penetrating/heavy.html b/datum/element/bullet_trait_penetrating/heavy.html new file mode 100644 index 000000000000..79a33e017e54 --- /dev/null +++ b/datum/element/bullet_trait_penetrating/heavy.html @@ -0,0 +1,43 @@ + + + + + + + /datum/element/bullet_trait_penetrating/heavy - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/element/bullet_trait_penetrating/heavy + + + +

+ + + +

Vars

bullet_destroy_structuresTypecache of things to annihilate if the bullet is on a tile with it
damage_lost_per_penFor every turf this pierces, how much damage should this lose?
+

Var Details

bullet_destroy_structures + + + + +

+

Typecache of things to annihilate if the bullet is on a tile with it

damage_lost_per_pen + + + + +

+

For every turf this pierces, how much damage should this lose?

+ + + diff --git a/datum/element/bullet_trait_penetrating/weak.html b/datum/element/bullet_trait_penetrating/weak.html new file mode 100644 index 000000000000..085119f2e8b4 --- /dev/null +++ b/datum/element/bullet_trait_penetrating/weak.html @@ -0,0 +1,50 @@ + + + + + + + /datum/element/bullet_trait_penetrating/weak - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/element/bullet_trait_penetrating/weak + + + +

+ + + + +

Vars

damage_percent_lost_per_hitFor each thing this hits, how much damage it loses normally. This can be modified by what it penetrates later.
distance_loss_per_hitFor each thing this hits, how much distance it loses normally.
turf_hit_slow_multHow many times more effective turfs are at slowing down the projectile normally, reducing both range and damage.
+

Var Details

damage_percent_lost_per_hit + + + + +

+

For each thing this hits, how much damage it loses normally. This can be modified by what it penetrates later.

distance_loss_per_hit + + + + +

+

For each thing this hits, how much distance it loses normally.

turf_hit_slow_mult + + + + +

+

How many times more effective turfs are at slowing down the projectile normally, reducing both range and damage.

+ + + diff --git a/datum/element/light_blocking.html b/datum/element/light_blocking.html new file mode 100644 index 000000000000..e3b953081349 --- /dev/null +++ b/datum/element/light_blocking.html @@ -0,0 +1,37 @@ + + + + + + + /datum/element/light_blocking - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/element/light_blocking + + + +

+ +

Attached to movable atoms with opacity. Listens to them move and updates their old and new turf loc's opacity accordingly.

+

Procs

on_target_moveUpdates old and new turf loc opacities. +Updates old and new turf loc opacities.

Proc Details

on_target_move +

+

Updates old and new turf loc opacities. +Updates old and new turf loc opacities.

+ + + diff --git a/datum/element/strippable.html b/datum/element/strippable.html new file mode 100644 index 000000000000..e2bd0c02602f --- /dev/null +++ b/datum/element/strippable.html @@ -0,0 +1,54 @@ + + + + + + + /datum/element/strippable - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/element/strippable + + + +

+ +

An element for atoms that, when dragged and dropped onto a mob, opens a strip panel.

+ + +

Vars

itemsAn assoc list of keys to /datum/strippable_item
should_strip_proc_pathA proc path that returns TRUE/FALSE if we should show the strip panel for this entity. +If it does not exist, the strip menu will always show. +Will be called with (mob/user).
strip_menusAn existing strip menus
+

Var Details

items + + + + +

+

An assoc list of keys to /datum/strippable_item

should_strip_proc_path + + + + +

+

A proc path that returns TRUE/FALSE if we should show the strip panel for this entity. +If it does not exist, the strip menu will always show. +Will be called with (mob/user).

strip_menus + + + + +

+

An existing strip menus

+ + + diff --git a/datum/element/suturing.html b/datum/element/suturing.html new file mode 100644 index 000000000000..15c69bbb9400 --- /dev/null +++ b/datum/element/suturing.html @@ -0,0 +1,68 @@ + + + + + + + /datum/element/suturing - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/element/suturing + + + +

+ + + + + + +

Vars

description_pain"it feels like your [left arm] is []!"
description_verbex. 'suture', "you begin to [] the [wounds]". ALso has 's' put on the end sometimes, '[suture]s'.
description_verbingex 'suturing', "[user] finishes [] the [wounds]"
suture_bruteDamage types that can be treated. Both are healed simultaneously. +With above: a brute + burn tool with time 2, used on a person with 20 brute and 20 burns, would heal 10 of each type after a 4 second delay. +On a person with just 20 brute, it would heal 10 brute after 2 seconds.
time_per_damage_pointAction time (in deciseconds) to heal each point of damage.
+

Var Details

description_pain + + + + +

+

"it feels like your [left arm] is []!"

description_verb + + + + +

+

ex. 'suture', "you begin to [] the [wounds]". ALso has 's' put on the end sometimes, '[suture]s'.

description_verbing + + + + +

+

ex 'suturing', "[user] finishes [] the [wounds]"

suture_brute + + + + +

+

Damage types that can be treated. Both are healed simultaneously. +With above: a brute + burn tool with time 2, used on a person with 20 brute and 20 burns, would heal 10 of each type after a 4 second delay. +On a person with just 20 brute, it would heal 10 brute after 2 seconds.

time_per_damage_point + + + + +

+

Action time (in deciseconds) to heal each point of damage.

+ + + diff --git a/datum/emergency_call.html b/datum/emergency_call.html new file mode 100644 index 000000000000..4409b98cde41 --- /dev/null +++ b/datum/emergency_call.html @@ -0,0 +1,57 @@ + + + + + + + /datum/emergency_call - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

name + + + +

+ + + + + +

Vars

chance_hiddenProbability that the message will be replaced with static. - prob(chance_hidden)
home_basethe /datum/lazy_template we should attempt to spawn in for the return journey
shuttlethe shuttle being used by this distress call
static_messageMessage to display when distress beacon is hidden
+

Var Details

chance_hidden + + + + +

+

Probability that the message will be replaced with static. - prob(chance_hidden)

home_base + + + + +

+

the /datum/lazy_template we should attempt to spawn in for the return journey

shuttle + + + + +

+

the shuttle being used by this distress call

static_message + + + + +

+

Message to display when distress beacon is hidden

+ + + diff --git a/datum/emergency_call/upp.html b/datum/emergency_call/upp.html new file mode 100644 index 000000000000..9643adb35a83 --- /dev/null +++ b/datum/emergency_call/upp.html @@ -0,0 +1,35 @@ + + + + + + + /datum/emergency_call/upp - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

UPP Naval Infantry (Squad) + + + +

+ + +

Procs

create_memberUPP

Proc Details

create_member +

+

UPP

+ + + diff --git a/datum/emote.html b/datum/emote.html new file mode 100644 index 000000000000..f46d77289886 --- /dev/null +++ b/datum/emote.html @@ -0,0 +1,308 @@ + + + + + + + /datum/emote - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Emote + + + +

+ +

Most of the text that's not someone talking is based off of this.

+

Yes, the displayed message is stored on the datum, it would cause problems +for emotes with a message that can vary, but that's handled differently in +run_emote(), so be sure to use can_message_change if you plan to have +different displayed messages from player to player.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

alt_messageMessage displayed for audible emotes if someone's deaf. Only use this if key_third_person can't be acceptably used. +ie. if someone says *medic and someone's deaf, they'd receive [X] calls for a medic! silently., which is not ideal.
audio_cooldownHow long is the cooldown on the audio of the emote, if it has one?
can_message_changeDoes this message have a message that can be modified by the user?
cooldownThe cooldown between the uses of the emote.
emote_typeWhether the emote is visible and/or audible bitflag
hands_use_checkChecks if the mob can use its hands before performing the emote.
keyWhat calls the emote.
key_third_personThis will also call the emote.
keybindShould this emote generate a keybind?
keybind_categoryDoes this emote have a custom keybind category?
messageMessage displayed when emote is used.
message_paramMessage with %t at the end to allow adding params to the message, like for mobs doing an emote relatively to something else.
mob_type_allowed_typecacheTypes that are allowed to use that emote.
mob_type_blacklist_typecacheTypes that are NOT allowed to use that emote.
mob_type_ignore_stat_typecacheTypes that can use this emote regardless of their state.
muzzle_ignoreWill only work if the emote is EMOTE_AUDIBLE.
only_forced_audioCan only code call this event instead of the player.
say_messageWhat message to make the user send with the emote?
soundSound to play when emote is called.
stat_allowedIn which state can you use this emote? (Check stat.dm for a full list of them)
varyUsed for the honk borg emote.
volumeWhat volume should the sound be played at?

Procs

can_run_emoteCheck to see if the user is allowed to run the emote.
check_cooldownFor handling emote cooldown, return true to allow the emote to happen.
get_soundTo get the sound that the emote plays, for special sound interactions depending on the mob.
replace_pronounTo replace pronouns in the inputed string with the user's proper pronouns.
run_emoteHandles the modifications and execution of emotes.
run_langchatHandles above-head chat automatically running on an emote.
select_message_typeSelects the message type to override the message with.
select_paramReplaces the %t in the message in message_param by params.
should_play_soundCheck to see if the user should play a sound when performing the emote.
+

Var Details

alt_message + + + + +

+

Message displayed for audible emotes if someone's deaf. Only use this if key_third_person can't be acceptably used. +ie. if someone says *medic and someone's deaf, they'd receive [X] calls for a medic! silently., which is not ideal.

audio_cooldown + + + + +

+

How long is the cooldown on the audio of the emote, if it has one?

can_message_change + + + + +

+

Does this message have a message that can be modified by the user?

cooldown + + + + +

+

The cooldown between the uses of the emote.

emote_type + + + + +

+

Whether the emote is visible and/or audible bitflag

hands_use_check + + + + +

+

Checks if the mob can use its hands before performing the emote.

key + + + + +

+

What calls the emote.

key_third_person + + + + +

+

This will also call the emote.

keybind + + + + +

+

Should this emote generate a keybind?

keybind_category + + + + +

+

Does this emote have a custom keybind category?

message + + + + +

+

Message displayed when emote is used.

message_param + + + + +

+

Message with %t at the end to allow adding params to the message, like for mobs doing an emote relatively to something else.

mob_type_allowed_typecache + + + + +

+

Types that are allowed to use that emote.

mob_type_blacklist_typecache + + + + +

+

Types that are NOT allowed to use that emote.

mob_type_ignore_stat_typecache + + + + +

+

Types that can use this emote regardless of their state.

muzzle_ignore + + + + +

+

Will only work if the emote is EMOTE_AUDIBLE.

only_forced_audio + + + + +

+

Can only code call this event instead of the player.

say_message + + + + +

+

What message to make the user send with the emote?

sound + + + + +

+

Sound to play when emote is called.

stat_allowed + + + + +

+

In which state can you use this emote? (Check stat.dm for a full list of them)

vary + + + + +

+

Used for the honk borg emote.

volume + + + + +

+

What volume should the sound be played at?

Proc Details

can_run_emote +

+

Check to see if the user is allowed to run the emote.

+

Arguments:

+ +

Returns a bool about whether or not the user can run the emote.

check_cooldown +

+

For handling emote cooldown, return true to allow the emote to happen.

+

Arguments:

+ +

Returns FALSE if the cooldown is not over, TRUE if the cooldown is over.

get_sound +

+

To get the sound that the emote plays, for special sound interactions depending on the mob.

+

Arguments:

+ +

Returns the sound that will be made while sending the emote.

replace_pronoun +

+

To replace pronouns in the inputed string with the user's proper pronouns.

+

Arguments:

+ +

Returns the modified msg string.

run_emote +

+

Handles the modifications and execution of emotes.

+

Arguments:

+ +

Returns TRUE if it was able to run the emote, FALSE otherwise.

run_langchat +

+

Handles above-head chat automatically running on an emote.

+

Arguments:

+

select_message_type +

+

Selects the message type to override the message with.

+

Arguments:

+ +

Returns the new message, or msg directly, if no change was needed.

select_param +

+

Replaces the %t in the message in message_param by params.

+

Arguments:

+ +

Returns the modified string.

should_play_sound +

+

Check to see if the user should play a sound when performing the emote.

+

Arguments:

+ +

Returns a bool about whether or not the user should play a sound when performing the emote.

+ + + diff --git a/datum/emote/living/carbon/human.html b/datum/emote/living/carbon/human.html new file mode 100644 index 000000000000..a896751eaa41 --- /dev/null +++ b/datum/emote/living/carbon/human.html @@ -0,0 +1,43 @@ + + + + + + + /datum/emote/living/carbon/human - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/emote/living/carbon/human + + + +

+ + + +

Vars

species_type_allowed_typecacheSpecies that can use this emote.
species_type_blacklist_typecacheSpecies that can't use this emote.
+

Var Details

species_type_allowed_typecache + + + + +

+

Species that can use this emote.

species_type_blacklist_typecache + + + + +

+

Species that can't use this emote.

+ + + diff --git a/datum/emote/living/carbon/human/synthetic/working_joe.html b/datum/emote/living/carbon/human/synthetic/working_joe.html new file mode 100644 index 000000000000..801f4d5a8f3c --- /dev/null +++ b/datum/emote/living/carbon/human/synthetic/working_joe.html @@ -0,0 +1,57 @@ + + + + + + + /datum/emote/living/carbon/human/synthetic/working_joe - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/emote/living/carbon/human/synthetic/working_joe + + + +

+ + + + + +

Vars

categoryA general category for the emote, for use in the WJ emote panel. See [code/__DEFINES/emote_panels.dm] for categories.
haz_soundPath to hazard joe variant sound
joe_flagWhat Working Joe types can use this emote
override_sayOverride text for the emote to be displayed in the WJ emote panel
+

Var Details

category + + + + +

+

A general category for the emote, for use in the WJ emote panel. See [code/__DEFINES/emote_panels.dm] for categories.

haz_sound + + + + +

+

Path to hazard joe variant sound

joe_flag + + + + +

+

What Working Joe types can use this emote

override_say + + + + +

+

Override text for the emote to be displayed in the WJ emote panel

+ + + diff --git a/datum/emote/living/carbon/human/yautja.html b/datum/emote/living/carbon/human/yautja.html new file mode 100644 index 000000000000..c985b33afe3f --- /dev/null +++ b/datum/emote/living/carbon/human/yautja.html @@ -0,0 +1,50 @@ + + + + + + + /datum/emote/living/carbon/human/yautja - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/emote/living/carbon/human/yautja + + + +

+ + + + +

Vars

categoryA general category for the emote, for use in the Yautja emote panel. See [code/__DEFINES/emote_panels.dm] for categories.
no_panelOverride for being in panel or not
override_sayOverride text for the emote to be displayed in the Yautja emote panel
+

Var Details

category + + + + +

+

A general category for the emote, for use in the Yautja emote panel. See [code/__DEFINES/emote_panels.dm] for categories.

no_panel + + + + +

+

Override for being in panel or not

override_say + + + + +

+

Override text for the emote to be displayed in the Yautja emote panel

+ + + diff --git a/datum/entity/player.html b/datum/entity/player.html new file mode 100644 index 000000000000..d2cb0827303b --- /dev/null +++ b/datum/entity/player.html @@ -0,0 +1,35 @@ + + + + + + + /datum/entity/player - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/entity/player + + + +

+ + +

Procs

add_perma_banPermanently bans this user, with the provided reason. The banner (/datum/entity/player) argument is optional, as this can be done without admin intervention.

Proc Details

add_perma_ban +

+

Permanently bans this user, with the provided reason. The banner (/datum/entity/player) argument is optional, as this can be done without admin intervention.

+ + + diff --git a/datum/entity/player_note.html b/datum/entity/player_note.html new file mode 100644 index 000000000000..f44f548af965 --- /dev/null +++ b/datum/entity/player_note.html @@ -0,0 +1,36 @@ + + + + + + + /datum/entity/player_note - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/entity/player_note + + + +

+ + +

Vars

note_categoryThe category the note is. Admin/Merit/Commander/Synthetic/Yautja
+

Var Details

note_category + + + + +

+

The category the note is. Admin/Merit/Commander/Synthetic/Yautja

+ + + diff --git a/datum/entity_meta/stickyban.html b/datum/entity_meta/stickyban.html new file mode 100644 index 000000000000..a1607f972aa0 --- /dev/null +++ b/datum/entity_meta/stickyban.html @@ -0,0 +1,35 @@ + + + + + + + /datum/entity_meta/stickyban - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/entity_meta/stickyban + + + +

+ + +

Procs

on_insertWe abuse the on_insert from ndatabase here to ensure we have the synced ID of the new stickyban when applying a lot of associated bans. If we don't have a matching pager ban with the new sticky's identifier, we stop.

Proc Details

on_insert +

+

We abuse the on_insert from ndatabase here to ensure we have the synced ID of the new stickyban when applying a lot of associated bans. If we don't have a matching pager ban with the new sticky's identifier, we stop.

+ + + diff --git a/datum/equipment_preset.html b/datum/equipment_preset.html new file mode 100644 index 000000000000..a91877641454 --- /dev/null +++ b/datum/equipment_preset.html @@ -0,0 +1,50 @@ + + + + + + + /datum/equipment_preset - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Preset + + + +

+ + + +

Procs

add_survivor_weapon_civilianRandomizes the primary weapon a survivor might find at the start of the outbreak in a gun cabinet. +For the most part you will stil get a shotgun but there is an off chance you get something unique. +If you dont like the weapon deal with it. Cursed ammo for shotguns is intentional for scarcity reasons. +Some weapons may not appear at all in a colony so they will need the extra ammo. +MERC, and DB needed a handfull of shells to compete with the normal CMB.
get_antag_clothing_equipmentAntag Vendor Equipment

Proc Details

add_survivor_weapon_civilian +

+

Randomizes the primary weapon a survivor might find at the start of the outbreak in a gun cabinet. +For the most part you will stil get a shotgun but there is an off chance you get something unique. +If you dont like the weapon deal with it. Cursed ammo for shotguns is intentional for scarcity reasons. +Some weapons may not appear at all in a colony so they will need the extra ammo. +MERC, and DB needed a handfull of shells to compete with the normal CMB.

get_antag_clothing_equipment +

+

Antag Vendor Equipment

+ + + diff --git a/datum/equipment_preset/survivor/forecon/marksman.html b/datum/equipment_preset/survivor/forecon/marksman.html new file mode 100644 index 000000000000..86922f6a3d18 --- /dev/null +++ b/datum/equipment_preset/survivor/forecon/marksman.html @@ -0,0 +1,28 @@ + + + + + + + /datum/equipment_preset/survivor/forecon/marksman - byond + + +
+ byond - + Modules - + Types +
+
+

Survivor - USCM Reconnaissance Designated Marksman + + + +

+ +
+ + + diff --git a/datum/equipment_preset/survivor/forecon/smartgunner.html b/datum/equipment_preset/survivor/forecon/smartgunner.html new file mode 100644 index 000000000000..2aadaa8d4682 --- /dev/null +++ b/datum/equipment_preset/survivor/forecon/smartgunner.html @@ -0,0 +1,28 @@ + + + + + + + /datum/equipment_preset/survivor/forecon/smartgunner - byond + + +
+ byond - + Modules - + Types +
+
+

Survivor - USCM Reconnaissance Smartgunner + + + +

+ +
+ + + diff --git a/datum/equipment_preset/survivor/forecon/sniper.html b/datum/equipment_preset/survivor/forecon/sniper.html new file mode 100644 index 000000000000..61fa4ce4c074 --- /dev/null +++ b/datum/equipment_preset/survivor/forecon/sniper.html @@ -0,0 +1,28 @@ + + + + + + + /datum/equipment_preset/survivor/forecon/sniper - byond + + +
+ byond - + Modules - + Types +
+
+

Survivor - USCM Reconnaissance Sniper + + + +

+ +
+ + + diff --git a/datum/equipment_preset/survivor/forecon/tech.html b/datum/equipment_preset/survivor/forecon/tech.html new file mode 100644 index 000000000000..f16cfda65fb0 --- /dev/null +++ b/datum/equipment_preset/survivor/forecon/tech.html @@ -0,0 +1,28 @@ + + + + + + + /datum/equipment_preset/survivor/forecon/tech - byond + + +
+ byond - + Modules - + Types +
+
+

Survivor - USCM Reconnaissance Support Technician + + + +

+ +
+ + + diff --git a/datum/equipment_preset/synth/working_joe.html b/datum/equipment_preset/synth/working_joe.html new file mode 100644 index 000000000000..2d5c7adf306d --- /dev/null +++ b/datum/equipment_preset/synth/working_joe.html @@ -0,0 +1,36 @@ + + + + + + + /datum/equipment_preset/synth/working_joe - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Synthetic - Working Joe + + + +

+ + +

Vars

joe_typeUsed to set species when loading race
+

Var Details

joe_type + + + + +

+

Used to set species when loading race

+ + + diff --git a/datum/equipment_preset/tutorial.html b/datum/equipment_preset/tutorial.html new file mode 100644 index 000000000000..a3b311cb8613 --- /dev/null +++ b/datum/equipment_preset/tutorial.html @@ -0,0 +1,36 @@ + + + + + + + /datum/equipment_preset/tutorial - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Tutorial + + + +

+ + +

Vars

underfedIf the player should start out underfed
+

Var Details

underfed + + + + +

+

If the player should start out underfed

+ + + diff --git a/datum/equipment_preset/twe/royal_marine.html b/datum/equipment_preset/twe/royal_marine.html new file mode 100644 index 000000000000..799863aec9cd --- /dev/null +++ b/datum/equipment_preset/twe/royal_marine.html @@ -0,0 +1,36 @@ + + + + + + + /datum/equipment_preset/twe/royal_marine - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Royal Marines Commando + + + +

+ + +

Vars

headset_typeGives the Royal Marines their radios
+

Var Details

headset_type + + + + +

+

Gives the Royal Marines their radios

+ + + diff --git a/datum/equipment_preset/uscm.html b/datum/equipment_preset/uscm.html new file mode 100644 index 000000000000..f1e1ff64f8e6 --- /dev/null +++ b/datum/equipment_preset/uscm.html @@ -0,0 +1,36 @@ + + + + + + + /datum/equipment_preset/uscm - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

USCM + + + +

+ + +

Vars

ert_squadAllows the squad to be set even if spawned on admin z level
+

Var Details

ert_squad + + + + +

+

Allows the squad to be set even if spawned on admin z level

+ + + diff --git a/datum/escape_menu.html b/datum/escape_menu.html new file mode 100644 index 000000000000..12ece6fb21f7 --- /dev/null +++ b/datum/escape_menu.html @@ -0,0 +1,36 @@ + + + + + + + /datum/escape_menu - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/escape_menu + + + +

+ + +

Vars

clientThe client that owns this escape menu
+

Var Details

client + + + + +

+

The client that owns this escape menu

+ + + diff --git a/datum/flaying_datum.html b/datum/flaying_datum.html new file mode 100644 index 000000000000..5e527a6eb487 --- /dev/null +++ b/datum/flaying_datum.html @@ -0,0 +1,35 @@ + + + + + + + /datum/flaying_datum - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/flaying_datum + + + +

+ +

Records status of flaying attempts and handles progress.

+

Procs

begin_flayingLoops until interrupted or done.

Proc Details

begin_flaying +

+

Loops until interrupted or done.

+ + + diff --git a/datum/font.html b/datum/font.html new file mode 100644 index 000000000000..36ae1cf2a0ac --- /dev/null +++ b/datum/font.html @@ -0,0 +1,43 @@ + + + + + + + /datum/font - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/font + + + +

+ +

A font datum, it exists to define a custom font to use in a span style later.

+ +

Vars

font_familyThe font file we link to.
nameFont name, just so people know what to put in their span style.
+

Var Details

font_family + + + + +

+

The font file we link to.

name + + + + +

+

Font name, just so people know what to put in their span style.

+ + + diff --git a/datum/game_decorator/halloween.html b/datum/game_decorator/halloween.html new file mode 100644 index 000000000000..0a5ae1eb477c --- /dev/null +++ b/datum/game_decorator/halloween.html @@ -0,0 +1,35 @@ + + + + + + + /datum/game_decorator/halloween - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/game_decorator/halloween + + + +

+ + +

Procs

get_days_remainingGet the number of days remaining to event, or -1 if not applicable

Proc Details

get_days_remaining +

+

Get the number of days remaining to event, or -1 if not applicable

+ + + diff --git a/datum/game_decorator/halloween/cobwebs.html b/datum/game_decorator/halloween/cobwebs.html new file mode 100644 index 000000000000..9864f26642f6 --- /dev/null +++ b/datum/game_decorator/halloween/cobwebs.html @@ -0,0 +1,57 @@ + + + + + + + /datum/game_decorator/halloween/cobwebs - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/game_decorator/halloween/cobwebs + + + +

+ +

Cobweb decorator: adds more and more cobwebs as you go through the month

+ + + +

Vars

base_chanceHow much prob() chance to put a cobweb during halloween proper
ramp_chanceHow much to remove per day before date
ramp_scaleHow much to scale cobwebs alpha down per day (1 - ramp_scale * days, affects alpha & size)
scale_randExtra randomness removed onto scale before full blown halloween
+

Var Details

base_chance + + + + +

+

How much prob() chance to put a cobweb during halloween proper

ramp_chance + + + + +

+

How much to remove per day before date

ramp_scale + + + + +

+

How much to scale cobwebs alpha down per day (1 - ramp_scale * days, affects alpha & size)

scale_rand + + + + +

+

Extra randomness removed onto scale before full blown halloween

+ + + diff --git a/datum/game_mode.html b/datum/game_mode.html new file mode 100644 index 000000000000..1638ed97e4c2 --- /dev/null +++ b/datum/game_mode.html @@ -0,0 +1,149 @@ + + + + + + + /datum/game_mode - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

invalid + + + +

+ + + + + + + + + + + + + + + + + +

Vars

gear_scaleMultiplier to the amount of marine gear, current value as calculated with modifiers
gear_scale_maxMultiplier to the amount of marine gear, maximum reached value for
latejoin_larva_usedAmount of latejoin_tally already awarded as larvas
role_mappingsList of role titles to override to different roles when starting game
taskbar_iconWhen set and this gamemode is selected, the taskbar icon will change to the png selected here

Procs

can_startcan_start() +Checks to see if the game can be setup and ran with the current number of players or whatnot.
ds_first_dropTriggered partway through the first drop, based on DROPSHIP_DROP_MSG_DELAY. Marines are underway but haven't yet landed.
ds_first_landedTriggered when the dropship first lands.
init_gear_scaleReturns a multiplier to the amount of gear that is to be distributed roundstart, stored in /datum/game_mode/var/gear_scale
latejoin_updateUpdates [var/latejoin_tally] and [var/gear_scale] based on role weights of latejoiners/cryoers. Delta is the amount of role positions added/removed
pick_queen_spawnPick and setup a queen spawn from landmarks, then spawns the player there alongside any required setup
post_setuppost_setup() +Everyone should now be on the station and have their normal gear. This is the place to give the special roles extra things
pre_setuppre_setup() +Attempts to select players for special roles the mode might have.
processprocess() +Called by the gameticker
setup_structuresSpawn structures relevant to the game mode setup, done before actual game setup. By default try to setup everything.
update_gear_scaleUpdates the /datum/game_mode/var/gear_scale multiplier based on joining and cryoing marines
+

Var Details

gear_scale + + + + +

+

Multiplier to the amount of marine gear, current value as calculated with modifiers

gear_scale_max + + + + +

+

Multiplier to the amount of marine gear, maximum reached value for

latejoin_larva_used + + + + +

+

Amount of latejoin_tally already awarded as larvas

role_mappings + + + + +

+

List of role titles to override to different roles when starting game

taskbar_icon + + + + +

+

When set and this gamemode is selected, the taskbar icon will change to the png selected here

Proc Details

can_start +

+

can_start() +Checks to see if the game can be setup and ran with the current number of players or whatnot.

ds_first_drop +

+

Triggered partway through the first drop, based on DROPSHIP_DROP_MSG_DELAY. Marines are underway but haven't yet landed.

ds_first_landed +

+

Triggered when the dropship first lands.

init_gear_scale +

+

Returns a multiplier to the amount of gear that is to be distributed roundstart, stored in /datum/game_mode/var/gear_scale

latejoin_update +

+

Updates [var/latejoin_tally] and [var/gear_scale] based on role weights of latejoiners/cryoers. Delta is the amount of role positions added/removed

pick_queen_spawn +

+

Pick and setup a queen spawn from landmarks, then spawns the player there alongside any required setup

post_setup +

+

post_setup() +Everyone should now be on the station and have their normal gear. This is the place to give the special roles extra things

pre_setup +

+

pre_setup() +Attempts to select players for special roles the mode might have.

process +

+

process() +Called by the gameticker

setup_structures +

+

Spawn structures relevant to the game mode setup, done before actual game setup. By default try to setup everything.

update_gear_scale +

+

Updates the /datum/game_mode/var/gear_scale multiplier based on joining and cryoing marines

+ + + diff --git a/datum/game_mode/colonialmarines.html b/datum/game_mode/colonialmarines.html new file mode 100644 index 000000000000..797f85b440e3 --- /dev/null +++ b/datum/game_mode/colonialmarines.html @@ -0,0 +1,91 @@ + + + + + + + /datum/game_mode/colonialmarines - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Distress Signal + + + +

+ + + + + + + + + + +

Procs

check_ground_humansChecks for humans groundside after hijack, spawns forsaken if requirements met
check_hijack_explosionsPrimes and fires off the explodey-pipes during hijack.
clear_lz_hazardsClears miasma smoke in landing zones
get_valid_sentry_turfsReturns a list of non-dense turfs using the given block arguments ignoring the provided structure types
shake_shipMakes the mainship shake, along with playing a klaxon sound effect.
spawn_lz_hazardsSpawns miasma smoke in landing zones
spawn_lz_sentrySpawns a droppod with a temporary defense sentry at the given turf
start_lz_hazardsCreates an OB warning at each LZ to warn of the miasma and then spawns the miasma
warn_lz_hazardCreates an OB warning at each LZ to warn of the incoming miasma

Proc Details

check_ground_humans +

+

Checks for humans groundside after hijack, spawns forsaken if requirements met

check_hijack_explosions +

+

Primes and fires off the explodey-pipes during hijack.

clear_lz_hazards +

+

Clears miasma smoke in landing zones

get_valid_sentry_turfs +

+

Returns a list of non-dense turfs using the given block arguments ignoring the provided structure types

shake_ship +

+

Makes the mainship shake, along with playing a klaxon sound effect.

spawn_lz_hazards +

+

Spawns miasma smoke in landing zones

spawn_lz_sentry +

+

Spawns a droppod with a temporary defense sentry at the given turf

start_lz_hazards +

+

Creates an OB warning at each LZ to warn of the miasma and then spawns the miasma

warn_lz_hazard +

+

Creates an OB warning at each LZ to warn of the incoming miasma

+ + + diff --git a/datum/health_scan.html b/datum/health_scan.html new file mode 100644 index 000000000000..e810d3d30b92 --- /dev/null +++ b/datum/health_scan.html @@ -0,0 +1,56 @@ + + + + + + + /datum/health_scan - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/health_scan + + + +

+ +

vars reffing this on /mob/dead/observer, /obj/item/device/healthanalyzer, /obj/structure/machinery/cm_vending/sorted/medical, /obj/structure/machinery/body_scanconsole are called last_health_display

+ + + +

Procs

get_death_valueReturns TRUE if the target is either dead or appears to be dead.
get_oxy_valueReturns the oxygen value, unless they have FAKEDEATH - in which case it will instead make up a number to return.
look_atThis is the proc for interacting with, or looking at, a mob's health display. Also contains skillchecks and the like. You may NOT call tgui interact directly, and you MUST set the detail level.
ui_actfor checking if limbs are robot limbs

Proc Details

get_death_value +

+

Returns TRUE if the target is either dead or appears to be dead.

get_oxy_value +

+

Returns the oxygen value, unless they have FAKEDEATH - in which case it will instead make up a number to return.

look_at +

+

This is the proc for interacting with, or looking at, a mob's health display. Also contains skillchecks and the like. You may NOT call tgui interact directly, and you MUST set the detail level.

ui_act +

+

for checking if limbs are robot limbs

+ + + diff --git a/datum/hive_status.html b/datum/hive_status.html new file mode 100644 index 000000000000..754ed085742a --- /dev/null +++ b/datum/hive_status.html @@ -0,0 +1,197 @@ + + + + + + + /datum/hive_status - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Normal Hive + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

allow_queen_evolveSet to false if you want to prevent evolutions into Queens
free_slotsAssoc list of free slots available to specific castes
hardcoreSet to true if you want to prevent bursts and spawns of new xenos. Will also prevent healing if the queen no longer exists
hijack_burrowed_lefthow many burrowed is going to spawn during larva surge
hit_larva_pylon_limitIf hit limit of larva from pylons
hugger_timelockWhen can huggers join the round
latejoin_burrowedSet to false if you want to prevent getting burrowed larva from latejoin marines
lesser_drone_limitHow many lesser drones the hive can support
lesser_drone_minimumSlots available for lesser drones will never go below this number
partial_larvaused by /datum/hive_status/proc/increase_larva_after_burst() to support non-integer increases to larva
playable_hugger_limitHow many huggers can the hive support
playable_hugger_max_divisorThis number divides the total xenos counted for slots to give the max number of facehuggers
playable_hugger_minimumMinimum number of huggers available at any hive size
playable_lesser_drones_max_divisorThis number divides the total xenos counted for slots to give the max number of lesser drones
reporting_idShort Hive ID as string used in stats reporting
tier_2_xenoslist of living tier2 xenos
tier_3_xenoslist of living tier3 xenos
totalXenoslist of living xenos
total_dead_xenoslist of previously living xenos (hardrefs currently)
used_slotsAssoc list of slots currently used by specific castes (for calculating free_slot usage)

Procs

convert_partial_larva_to_full_larvaCalled after times when partial larva are added to process them to stored larva
generate_evo_menu_imagesGenerate the image()'s requried for the evolution radial menu.
increase_larva_after_burstCalled by /obj/item/alien_embryo when a host is bursting to determine extra larva per burst
setup_pylon_limitsSets up limits on pylons in New() for potential futureproofing with more static comms
+

Var Details

allow_queen_evolve + + + + +

+

Set to false if you want to prevent evolutions into Queens

free_slots + + + + +

+

Assoc list of free slots available to specific castes

hardcore + + + + +

+

Set to true if you want to prevent bursts and spawns of new xenos. Will also prevent healing if the queen no longer exists

hijack_burrowed_left + + + + +

+

how many burrowed is going to spawn during larva surge

hit_larva_pylon_limit + + + + +

+

If hit limit of larva from pylons

hugger_timelock + + + + +

+

When can huggers join the round

latejoin_burrowed + + + + +

+

Set to false if you want to prevent getting burrowed larva from latejoin marines

lesser_drone_limit + + + + +

+

How many lesser drones the hive can support

lesser_drone_minimum + + + + +

+

Slots available for lesser drones will never go below this number

partial_larva + + + + +

+

used by /datum/hive_status/proc/increase_larva_after_burst() to support non-integer increases to larva

playable_hugger_limit + + + + +

+

How many huggers can the hive support

playable_hugger_max_divisor + + + + +

+

This number divides the total xenos counted for slots to give the max number of facehuggers

playable_hugger_minimum + + + + +

+

Minimum number of huggers available at any hive size

playable_lesser_drones_max_divisor + + + + +

+

This number divides the total xenos counted for slots to give the max number of lesser drones

reporting_id + + + + +

+

Short Hive ID as string used in stats reporting

tier_2_xenos + + + + +

+

list of living tier2 xenos

tier_3_xenos + + + + +

+

list of living tier3 xenos

totalXenos + + + + +

+

list of living xenos

total_dead_xenos + + + + +

+

list of previously living xenos (hardrefs currently)

used_slots + + + + +

+

Assoc list of slots currently used by specific castes (for calculating free_slot usage)

Proc Details

convert_partial_larva_to_full_larva +

+

Called after times when partial larva are added to process them to stored larva

generate_evo_menu_images +

+

Generate the image()'s requried for the evolution radial menu.

increase_larva_after_burst +

+

Called by /obj/item/alien_embryo when a host is bursting to determine extra larva per burst

setup_pylon_limits +

+

Sets up limits on pylons in New() for potential futureproofing with more static comms

+ + + diff --git a/datum/hive_status/tutorial.html b/datum/hive_status/tutorial.html new file mode 100644 index 000000000000..99de018d9ead --- /dev/null +++ b/datum/hive_status/tutorial.html @@ -0,0 +1,36 @@ + + + + + + + /datum/hive_status/tutorial - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Tutorial Hive + + + +

+ + +

Vars

hive_structures_limitCan have many tutorials going at once.
+

Var Details

hive_structures_limit + + + + +

+

Can have many tutorials going at once.

+ + + diff --git a/datum/http_request.html b/datum/http_request.html new file mode 100644 index 000000000000..a7e4b7d83f8f --- /dev/null +++ b/datum/http_request.html @@ -0,0 +1,36 @@ + + + + + + + /datum/http_request - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/http_request + + + +

+ + +

Vars

output_fileIf present response body will be saved to this file.
+

Var Details

output_file + + + + +

+

If present response body will be saved to this file.

+ + + diff --git a/datum/hud.html b/datum/hud.html new file mode 100644 index 000000000000..d35ca68e5359 --- /dev/null +++ b/datum/hud.html @@ -0,0 +1,36 @@ + + + + + + + /datum/hud - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/hud + + + +

+ + +

Vars

plane_master_controllersAssoc list of controller groups, associated with key string group name with value of the plane master controller ref
+

Var Details

plane_master_controllers + + + + +

+

Assoc list of controller groups, associated with key string group name with value of the plane master controller ref

+ + + diff --git a/datum/hud_displays.html b/datum/hud_displays.html new file mode 100644 index 000000000000..a9c32e3262ae --- /dev/null +++ b/datum/hud_displays.html @@ -0,0 +1,71 @@ + + + + + + + /datum/hud_displays - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/hud_displays + + + +

+ +

Holder datum for a zlevels data, concerning the overlays and the drawn level itself +The individual image trackers have a raw and a normal list +raw lists just store the images, while the normal ones are assoc list of [tracked_atom] = image +the raw lists are to speed up the Fire() of the subsystem so we dont have to filter through +WARNING! +There is a byond bug: http://www.byond.com/forum/post/2661309 +That that forces us to use a separate list ref when accessing the lists of this datum +Yea it hurts me too

+ + + + +

Vars

hud_imageActual icon of the drawn zlevel with all of it's atoms
images_assocAssoc list of updating images; list("[flag]" = list([source] = blip)
images_rawRaw list containing updating images by flag; list("[flag]" = list(blip))
x_offsetx offset of the actual icon to center it to screens
y_offsety offset of the actual icons to keep it to screens
+

Var Details

hud_image + + + + +

+

Actual icon of the drawn zlevel with all of it's atoms

images_assoc + + + + +

+

Assoc list of updating images; list("[flag]" = list([source] = blip)

images_raw + + + + +

+

Raw list containing updating images by flag; list("[flag]" = list(blip))

x_offset + + + + +

+

x offset of the actual icon to center it to screens

y_offset + + + + +

+

y offset of the actual icons to keep it to screens

+ + + diff --git a/datum/interior.html b/datum/interior.html new file mode 100644 index 000000000000..1294d982b9dd --- /dev/null +++ b/datum/interior.html @@ -0,0 +1,43 @@ + + + + + + + /datum/interior - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/interior + + + +

+ + + +

Vars

map_templatethe map template associated with this interior
reservationthe turf reservation associated with this interior
+

Var Details

map_template + + + + +

+

the map template associated with this interior

reservation + + + + +

+

the turf reservation associated with this interior

+ + + diff --git a/datum/internal_organ.html b/datum/internal_organ.html new file mode 100644 index 000000000000..f9f65d44002b --- /dev/null +++ b/datum/internal_organ.html @@ -0,0 +1,43 @@ + + + + + + + /datum/internal_organ - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

organ + + + +

+ + + +

Vars

organ_statusstatus of organ - is it healthy, broken, bruised?

Procs

set_organ_statusSet the correct organ state
+

Var Details

organ_status + + + + +

+

status of organ - is it healthy, broken, bruised?

Proc Details

set_organ_status +

+

Set the correct organ state

+ + + diff --git a/datum/item_storage_box.html b/datum/item_storage_box.html new file mode 100644 index 000000000000..6e5c38055638 --- /dev/null +++ b/datum/item_storage_box.html @@ -0,0 +1,36 @@ + + + + + + + /datum/item_storage_box - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/item_storage_box + + + +

+ + +

Vars

indexThe index that indentifies me inside GLOB.item_storage_box_cache
+

Var Details

index + + + + +

+

The index that indentifies me inside GLOB.item_storage_box_cache

+ + + diff --git a/datum/japanese_sound.html b/datum/japanese_sound.html new file mode 100644 index 000000000000..221f5d2f7cf6 --- /dev/null +++ b/datum/japanese_sound.html @@ -0,0 +1,35 @@ + + + + + + + /datum/japanese_sound - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/japanese_sound + + + +

+ +

a generic sound

+

Procs

geminatehandle gemination, and make sure that if the sound is voiced the chance is lower

Proc Details

geminate +

+

handle gemination, and make sure that if the sound is voiced the chance is lower

+ + + diff --git a/datum/job.html b/datum/job.html new file mode 100644 index 000000000000..a11f0ad3e6ea --- /dev/null +++ b/datum/job.html @@ -0,0 +1,73 @@ + + + + + + + /datum/job - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/job + + + +

+ + + + + + + +

Vars

gets_emergency_kitIf TRUE, this job will spawn w/ a cryo emergency kit during evac/red alert
handle_spawn_and_equipWhen set to true, SSticker won't call spawn_in_player, instead calling the job's spawn_and_equip proc
job_optionsWhen set you will be able to choose between the different job options when selecting your role. +Associated list. Main list elements - actual options, associated values - shorthands for job preferences menu (keep those short).

Procs

filter_job_optionIntended to be overwritten to handle any requirements for specific job variations that can be selected
handle_job_optionsIntended to be overwritten to handle when a job has variants that can be selected.
on_cryoCalled when the job owner enters deep cryogenic storage
+

Var Details

gets_emergency_kit + + + + +

+

If TRUE, this job will spawn w/ a cryo emergency kit during evac/red alert

handle_spawn_and_equip + + + + +

+

When set to true, SSticker won't call spawn_in_player, instead calling the job's spawn_and_equip proc

job_options + + + + +

+

When set you will be able to choose between the different job options when selecting your role. +Associated list. Main list elements - actual options, associated values - shorthands for job preferences menu (keep those short).

Proc Details

filter_job_option +

+

Intended to be overwritten to handle any requirements for specific job variations that can be selected

handle_job_options +

+

Intended to be overwritten to handle when a job has variants that can be selected.

on_cryo +

+

Called when the job owner enters deep cryogenic storage

+ + + diff --git a/datum/job/civilian/doctor.html b/datum/job/civilian/doctor.html new file mode 100644 index 000000000000..1d33a5c5fdd2 --- /dev/null +++ b/datum/job/civilian/doctor.html @@ -0,0 +1,36 @@ + + + + + + + /datum/job/civilian/doctor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/job/civilian/doctor + + + +

+ + +

Vars

doctorIf this job is a doctor variant of the doctor role
+

Var Details

doctor + + + + +

+

If this job is a doctor variant of the doctor role

+ + + diff --git a/datum/job/civilian/reporter.html b/datum/job/civilian/reporter.html new file mode 100644 index 000000000000..1c3dd5e8ce51 --- /dev/null +++ b/datum/job/civilian/reporter.html @@ -0,0 +1,36 @@ + + + + + + + /datum/job/civilian/reporter - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/job/civilian/reporter + + + +

+ + +

Vars

militaryIf this job is a military variant of the reporter role
+

Var Details

military + + + + +

+

If this job is a military variant of the reporter role

+ + + diff --git a/datum/job/civilian/survivor.html b/datum/job/civilian/survivor.html new file mode 100644 index 000000000000..f7efdb7b4168 --- /dev/null +++ b/datum/job/civilian/survivor.html @@ -0,0 +1,36 @@ + + + + + + + /datum/job/civilian/survivor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/job/civilian/survivor + + + +

+ + +

Vars

hostileWhether or not the survivor is an inherently hostile to marines.
+

Var Details

hostile + + + + +

+

Whether or not the survivor is an inherently hostile to marines.

+ + + diff --git a/datum/keybinding/mob/target.html b/datum/keybinding/mob/target.html new file mode 100644 index 000000000000..a90224b9780a --- /dev/null +++ b/datum/keybinding/mob/target.html @@ -0,0 +1,35 @@ + + + + + + + /datum/keybinding/mob/target - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/keybinding/mob/target + + + +

+ + +

Procs

get_target_zoneReturns the body zone which should be targeted when pressing this keybind.

Proc Details

get_target_zone +

+

Returns the body zone which should be targeted when pressing this keybind.

+ + + diff --git a/datum/launch_metadata.html b/datum/launch_metadata.html new file mode 100644 index 000000000000..5df8a8325655 --- /dev/null +++ b/datum/launch_metadata.html @@ -0,0 +1,45 @@ + + + + + + + /datum/launch_metadata - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/launch_metadata + + + +

+ + + +

Vars

end_throw_callbacksA list of callbacks to invoke when the throw completes successfully

Procs

invoke_end_throw_callbacksInvoke end_throw_callbacks on this metadata. +Takes argument of type /atom/movable
+

Var Details

end_throw_callbacks + + + + +

+

A list of callbacks to invoke when the throw completes successfully

Proc Details

invoke_end_throw_callbacks +

+

Invoke end_throw_callbacks on this metadata. +Takes argument of type /atom/movable

+ + + diff --git a/datum/lazy_template.html b/datum/lazy_template.html new file mode 100644 index 000000000000..480d3f294da8 --- /dev/null +++ b/datum/lazy_template.html @@ -0,0 +1,58 @@ + + + + + + + /datum/lazy_template - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/lazy_template + + + +

+ +

Datum used to designate certain areas that do not need to exist nor be loaded at world start +but do want to be loaded under certain circumstances. Use this for stuff like the nukie base or wizden, aka stuff that only matters when their antag is rolled.

+ + + +

Vars

map_dirDirectory of maps to prefix to the filename
map_nameThe filename (without extension) of the map to load
uses_multiple_allocationsIf this is true each load will increment an index keyed to the type and it will load [map_name]_[index]

Procs

lazy_loadDoes the grunt work of loading the template.
+

Var Details

map_dir + + + + +

+

Directory of maps to prefix to the filename

map_name + + + + +

+

The filename (without extension) of the map to load

uses_multiple_allocations + + + + +

+

If this is true each load will increment an index keyed to the type and it will load [map_name]_[index]

Proc Details

lazy_load +

+

Does the grunt work of loading the template.

+ + + diff --git a/datum/log_category.html b/datum/log_category.html new file mode 100644 index 000000000000..57a2a1d06b13 --- /dev/null +++ b/datum/log_category.html @@ -0,0 +1,71 @@ + + + + + + + /datum/log_category - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/log_category + + + +

+ +

The main datum that contains all log entries for a category

+ + + + + +

Vars

categoryThe category this datum contains
config_flagIf set this config flag is checked to enable this log category
entriesList of all entries, in chronological order of when they were added

Procs

add_entryAdd an entry to this category. It is very important that any data you provide doesn't hold references to anything!
get_output_fileAllows for category specific file splitting. Needs to accept a null entry for the default file.
write_entryWrites an entry to the output file for the category
+

Var Details

category + + + + +

+

The category this datum contains

config_flag + + + + +

+

If set this config flag is checked to enable this log category

entries + + + + +

+

List of all entries, in chronological order of when they were added

Proc Details

add_entry +

+

Add an entry to this category. It is very important that any data you provide doesn't hold references to anything!

get_output_file +

+

Allows for category specific file splitting. Needs to accept a null entry for the default file.

write_entry +

+

Writes an entry to the output file for the category

+ + + diff --git a/datum/log_holder.html b/datum/log_holder.html new file mode 100644 index 000000000000..af04100f103b --- /dev/null +++ b/datum/log_holder.html @@ -0,0 +1,78 @@ + + + + + + + /datum/log_holder - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/log_holder + + + +

+ +

Main datum to manage logging actions

+ + + + + + +

Vars

disabled_categoriestypecache list for categories that exist but are disabled
log_categoriesAssociative: category -> datum
logging_start_timestampWhen the log_holder first initialized
round_idRound ID, if set, that logging is initialized for

Procs

LogThis is Log because log is a byond internal proc
init_loggingAssembles basic information for logging, creating the log category datums and checking for config flags as required
shutdown_loggingTells the log_holder to not allow any more logging to be done, and dumps all categories to their json file
+

Var Details

disabled_categories + + + + +

+

typecache list for categories that exist but are disabled

log_categories + + + + +

+

Associative: category -> datum

logging_start_timestamp + + + + +

+

When the log_holder first initialized

round_id + + + + +

+

Round ID, if set, that logging is initialized for

Proc Details

Log +

+

This is Log because log is a byond internal proc

init_logging +

+

Assembles basic information for logging, creating the log category datums and checking for config flags as required

shutdown_logging +

+

Tells the log_holder to not allow any more logging to be done, and dumps all categories to their json file

+ + + diff --git a/datum/looping_sound.html b/datum/looping_sound.html new file mode 100644 index 000000000000..31297c674cfb --- /dev/null +++ b/datum/looping_sound.html @@ -0,0 +1,260 @@ + + + + + + + /datum/looping_sound - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/looping_sound + + + +

+ +

A datum for sounds that need to loop, with a high amount of configurability.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

chanceChance per loop to play a mid_sound.
directIf true, plays directly to provided atoms instead of from them.
end_sound(soundfile) The sound played after the main loop has concluded.
end_volumeOverride for volume of end sound.
extra_rangeThe extra range of the sound in tiles, defaults to 0.
falloff_distanceonly applicable to is_sound_projecting: max range till sound volume starts dropping as distance increases
is_sound_projectingLet's you make a "loud" sound that "projects." IE you can hear this sound from a further distance away. +Think of like an air raid siren. They're loud if you're close yeah... but you can hear them from mad far away, bruv +with a longer "falloff distance." Fixes the extra_range stuff
loop_startedHas the looping started yet?
max_loopsThe max amount of loops to run for.
mid_lengthThe length of time to wait between playing mid_sounds.
mid_sounds(list or soundfile) Since this can be either a list or a single soundfile you can have random sounds. May contain further lists but must contain a soundfile at the end.
parentThe source of the sound, or the recipient of the sound.
skip_starting_soundsDo we skip the starting sounds?
start_lengthHow long to wait before starting the main loop after playing start_sound.
start_sound(soundfile) Played before starting the mid_sounds loop.
start_volumeOverride for volume of start sound.
timer_idThe ID of the timer that's used to loop the sounds.
varyWhether or not the sounds will vary in pitch when played.
volumeSound output volume.

Procs

get_soundReturns the sound we should now be playing.
handle_parent_delA simple proc to handle the deletion of the parent, so that it does not force it to hard-delete.
is_activeA simple proc that lets us know whether the sounds are currently active or not.
on_startA proc that's there to handle delaying the main sounds if there's a start_sound, and simply starting the sound loop in general.
on_stopSimple proc that's executed when the looping sound is stopped, so that the end_sound can be played, if there's one.
playThe proc that handles actually playing the sound.
set_parentA simple proc to change who our parent is set to, also handling registering and unregistering the QDELETING signals on the parent.
sound_loopA simple proc handling the looping of the sound itself.
startThe proc to actually kickstart the whole sound sequence. This is what you should call to start the looping_sound.
start_sound_loopThe proc that handles starting the actual core sound loop.
stopThe proc to call to stop the sound loop.
+

Var Details

chance + + + + +

+

Chance per loop to play a mid_sound.

direct + + + + +

+

If true, plays directly to provided atoms instead of from them.

end_sound + + + + +

+

(soundfile) The sound played after the main loop has concluded.

end_volume + + + + +

+

Override for volume of end sound.

extra_range + + + + +

+

The extra range of the sound in tiles, defaults to 0.

falloff_distance + + + + +

+

only applicable to is_sound_projecting: max range till sound volume starts dropping as distance increases

is_sound_projecting + + + + +

+

Let's you make a "loud" sound that "projects." IE you can hear this sound from a further distance away. +Think of like an air raid siren. They're loud if you're close yeah... but you can hear them from mad far away, bruv +with a longer "falloff distance." Fixes the extra_range stuff

loop_started + + + + +

+

Has the looping started yet?

max_loops + + + + +

+

The max amount of loops to run for.

mid_length + + + + +

+

The length of time to wait between playing mid_sounds.

mid_sounds + + + + +

+

(list or soundfile) Since this can be either a list or a single soundfile you can have random sounds. May contain further lists but must contain a soundfile at the end.

parent + + + + +

+

The source of the sound, or the recipient of the sound.

skip_starting_sounds + + + + +

+

Do we skip the starting sounds?

start_length + + + + +

+

How long to wait before starting the main loop after playing start_sound.

start_sound + + + + +

+

(soundfile) Played before starting the mid_sounds loop.

start_volume + + + + +

+

Override for volume of start sound.

timer_id + + + + +

+

The ID of the timer that's used to loop the sounds.

vary + + + + +

+

Whether or not the sounds will vary in pitch when played.

volume + + + + +

+

Sound output volume.

Proc Details

get_sound +

+

Returns the sound we should now be playing.

handle_parent_del +

+

A simple proc to handle the deletion of the parent, so that it does not force it to hard-delete.

is_active +

+

A simple proc that lets us know whether the sounds are currently active or not.

on_start +

+

A proc that's there to handle delaying the main sounds if there's a start_sound, and simply starting the sound loop in general.

on_stop +

+

Simple proc that's executed when the looping sound is stopped, so that the end_sound can be played, if there's one.

play +

+

The proc that handles actually playing the sound.

+

Arguments:

+

set_parent +

+

A simple proc to change who our parent is set to, also handling registering and unregistering the QDELETING signals on the parent.

sound_loop +

+

A simple proc handling the looping of the sound itself.

+

Arguments:

+

start +

+

The proc to actually kickstart the whole sound sequence. This is what you should call to start the looping_sound.

+

Arguments:

+

start_sound_loop +

+

The proc that handles starting the actual core sound loop.

stop +

+

The proc to call to stop the sound loop.

+

Arguments:

+
+ + + diff --git a/datum/map_config.html b/datum/map_config.html new file mode 100644 index 000000000000..f8c97c872b43 --- /dev/null +++ b/datum/map_config.html @@ -0,0 +1,36 @@ + + + + + + + /datum/map_config - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/map_config + + + +

+ + +

Vars

override_mapIf truthy this is config for a round overridden map: search for override maps in data/, instead of using a path in maps
+

Var Details

override_map + + + + +

+

If truthy this is config for a round overridden map: search for override maps in data/, instead of using a path in maps

+ + + diff --git a/datum/map_report.html b/datum/map_report.html new file mode 100644 index 000000000000..888f5828d9bb --- /dev/null +++ b/datum/map_report.html @@ -0,0 +1,43 @@ + + + + + + + /datum/map_report - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/map_report + + + +

+ +

An error report generated by [parsed_map/check_for_errors].

+ +

Vars

loadableWhether this map can be loaded safely despite the errors.

Procs

show_toShow a rendered version of this report to a client.
+

Var Details

loadable + + + + +

+

Whether this map can be loaded safely despite the errors.

Proc Details

show_to +

+

Show a rendered version of this report to a client.

+ + + diff --git a/datum/map_template.html b/datum/map_template.html new file mode 100644 index 000000000000..8c2494269ce0 --- /dev/null +++ b/datum/map_template.html @@ -0,0 +1,57 @@ + + + + + + + /datum/map_template - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Default Template Name + + + +

+ + + + + +

Vars

created_atomsthe list of atoms created by this template being loaded, only populated if returns_created_atoms is TRUE
default_areaDefault area associated with the map template
returns_created_atomsif true, creates a list of all atoms created by this template loading, defaults to FALSE
should_place_on_topif true, turfs loaded from this template are placed on top of the turfs already there, defaults to TRUE
+

Var Details

created_atoms + + + + +

+

the list of atoms created by this template being loaded, only populated if returns_created_atoms is TRUE

default_area + + + + +

+

Default area associated with the map template

returns_created_atoms + + + + +

+

if true, creates a list of all atoms created by this template loading, defaults to FALSE

should_place_on_top + + + + +

+

if true, turfs loaded from this template are placed on top of the turfs already there, defaults to TRUE

+ + + diff --git a/datum/minimap_updator.html b/datum/minimap_updator.html new file mode 100644 index 000000000000..075a4d30893c --- /dev/null +++ b/datum/minimap_updator.html @@ -0,0 +1,43 @@ + + + + + + + /datum/minimap_updator - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/minimap_updator + + + +

+ +

Holder datum to ease updating of atoms to update

+ +

Vars

minimapAtom to update with the overlays
ztargetTarget zlevel we want to be updating to
+

Var Details

minimap + + + + +

+

Atom to update with the overlays

ztarget + + + + +

+

Target zlevel we want to be updating to

+ + + diff --git a/datum/mob_hud.html b/datum/mob_hud.html new file mode 100644 index 000000000000..0c0b05cdb6c0 --- /dev/null +++ b/datum/mob_hud.html @@ -0,0 +1,35 @@ + + + + + + + /datum/mob_hud - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/mob_hud + + + +

+ + +

Procs

refresh_hudRefreshes the HUD, adding user and sources if missing and then calls to add the HUD

Proc Details

refresh_hud +

+

Refreshes the HUD, adding user and sources if missing and then calls to add the HUD

+ + + diff --git a/datum/movement_detector.html b/datum/movement_detector.html new file mode 100644 index 000000000000..a51e8850398a --- /dev/null +++ b/datum/movement_detector.html @@ -0,0 +1,51 @@ + + + + + + + /datum/movement_detector - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/movement_detector + + + +

+ +

A datum to handle the busywork of registering signals to handle in depth tracking of a movable

+ + +

Procs

move_reactReacts to any movement that would cause a change in coordinates of the tracked movable atom +This works by detecting movement of either the tracked object, or anything it is inside, recursively
trackSets up tracking of the given movable atom
untrackStops tracking

Proc Details

move_react +

+

Reacts to any movement that would cause a change in coordinates of the tracked movable atom +This works by detecting movement of either the tracked object, or anything it is inside, recursively

track +

+

Sets up tracking of the given movable atom

untrack +

+

Stops tracking

+ + + diff --git a/datum/nanomanager.html b/datum/nanomanager.html new file mode 100644 index 000000000000..b4b0879d0e1d --- /dev/null +++ b/datum/nanomanager.html @@ -0,0 +1,139 @@ + + + + + + + /datum/nanomanager - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/nanomanager + + + +

+ + + + + + + + + + + +

Procs

NewCreate a new nanomanager instance. +This proc generates a list of assets which are to be sent to each client on connect
close_user_uisClose /nanoui uis belonging to user
get_open_uiGet an open /nanoui ui for the current user, src_object and ui_key
try_update_uiGet an open /nanoui ui for the current user, src_object and ui_key and try to update it with data
ui_closedRemove a /nanoui ui from the list of open uis +This is called by the /nanoui close() proc
ui_openedAdd a /nanoui ui to the list of open uis +This is called by the /nanoui open() proc
update_uisUpdate all /nanoui uis attached to src_object
update_user_uisUpdate /nanoui uis belonging to user
user_logoutThis is called on user logout +Closes/clears all uis attached to the user's /mob
user_transferredThis is called when a player transfers from one mob to another +Transfers all open UIs to the new mob

Proc Details

New +

+

Create a new nanomanager instance. +This proc generates a list of assets which are to be sent to each client on connect

+

@return /nanomanager new nanomanager object

close_user_uis +

+

Close /nanoui uis belonging to user

+

@param user /mob The mob who owns the uis +@param src_object /obj|/mob If src_object is provided, only close uis which are attached to src_object (optional) +@param ui_key string If ui_key is provided, only close uis with a matching ui_key (optional)

+

@return int The number of uis closed

get_open_ui +

+

Get an open /nanoui ui for the current user, src_object and ui_key

+

@param user /mob The mob who opened/owns the ui +@param src_object /obj|/mob The obj or mob which the ui belongs to +@param ui_key string A string key used for the ui

+

@return /nanoui Returns the found ui, or null if none exists

try_update_ui +

+

Get an open /nanoui ui for the current user, src_object and ui_key and try to update it with data

+

@param user /mob The mob who opened/owns the ui +@param src_object /obj|/mob The obj or mob which the ui belongs to +@param ui_key string A string key used for the ui +@param ui /datum/nanoui An existing instance of the ui (can be null) +@param data list The data to be passed to the ui, if it exists +@param force_open boolean The ui is being forced to (re)open, so close ui if it exists (instead of updating)

+

@return /nanoui Returns the found ui, for null if none exists

ui_closed +

+

Remove a /nanoui ui from the list of open uis +This is called by the /nanoui close() proc

+

@param ui /nanoui The ui to remove

+

@return int 0 if no ui was removed, 1 if removed successfully

ui_opened +

+

Add a /nanoui ui to the list of open uis +This is called by the /nanoui open() proc

+

@param ui /nanoui The ui to add

+

@return nothing

update_uis +

+

Update all /nanoui uis attached to src_object

+

@param src_object /obj|/mob The obj or mob which the uis are attached to

+

@return int The number of uis updated

update_user_uis +

+

Update /nanoui uis belonging to user

+

@param user /mob The mob who owns the uis +@param src_object /obj|/mob If src_object is provided, only update uis which are attached to src_object (optional) +@param ui_key string If ui_key is provided, only update uis with a matching ui_key (optional)

+

@return int The number of uis updated

user_logout +

+

This is called on user logout +Closes/clears all uis attached to the user's /mob

+

@param user /mob The user's mob

+

@return nothing

user_transferred +

+

This is called when a player transfers from one mob to another +Transfers all open UIs to the new mob

+

@param oldMob /mob The user's old mob +@param newMob /mob The user's new mob

+

@return nothing

+ + + diff --git a/datum/nanoui.html b/datum/nanoui.html new file mode 100644 index 000000000000..de922ec4c99a --- /dev/null +++ b/datum/nanoui.html @@ -0,0 +1,278 @@ + + + + + + + /datum/nanoui - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/nanoui + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

Procs

NewCreate a new nanoui instance.
TopicThis Topic() proc is called whenever a user clicks on a link within a Nano UI +If the UI status is currently STATUS_INTERACTIVE then call the src_object Topic() +If the src_object Topic() returns 1 (true) then update all UIs attached to src_object
add_common_assetsUse this proc to add assets which are common to (and required by) all nano uis
add_scriptAdd a JavsScript script to this UI +These must be added before the UI has been opened, adding after that will have no effect
add_stylesheetAdd a CSS stylesheet to this UI +These must be added before the UI has been opened, adding after that will have no effect
add_templateAdd a template for this UI +Templates are combined with the data sent to the UI to create the rendered view +These must be added before the UI has been opened, adding after that will have no effect
closeClose this UI
get_config_dataGet config data to sent to the ui.
get_htmlReturn the HTML for this UI
get_send_dataGet data to sent to the ui.
on_close_winsetSet the UI window to call the nanoclose verb when the window is closed +This allows Nano to handle closed windows
openOpen this UI
processProcess this UI, updating the entire UI or just the status (aka visibility) +This process proc is called by the master_controller
push_dataPush data to an already open UI window
set_auto_updateSet the ui to auto update (every master_controller tick)
set_auto_update_contentSet the ui to update the main content (re-render it) on each update
set_auto_update_layoutSet the ui to update the layout (re-render it) on each update, turning this on will break the map ui (if it's being used)
set_initial_dataSet the initial data for the ui. This is vital as the data structure set here cannot be changed when pushing new updates.
set_map_z_levelToggle showing the map ui
set_show_mapToggle showing the map ui
set_state_keySet the state key for use in the frontend Javascript
set_statusSet the current status (also known as visibility) of this ui.
set_window_optionsSet the browser window options for this ui
updateUpdate the UI
update_statusUpdate the status (visibility) of this ui based on the user's status
use_on_close_logicSet whether or not to use the "old" on close logic (mainly unset_interaction())

Proc Details

New +

+

Create a new nanoui instance.

+

@param nuser /mob The mob who has opened/owns this ui +@param nsrc_object /obj|/mob The obj or mob which this ui belongs to +@param nui_key string A string key to use for this ui. Allows for multiple unique uis on one src_oject +@param ntemplate string The filename of the template file from /nano/templates (e.g. "my_template.tmpl") +@param ntitle string The title of this ui +@param nwidth int the width of the ui window +@param nheight int the height of the ui window +@param nref /atom A custom ref to use if "on_close_logic" is set to 1

+

@return /nanoui new nanoui object

Topic +

+

This Topic() proc is called whenever a user clicks on a link within a Nano UI +If the UI status is currently STATUS_INTERACTIVE then call the src_object Topic() +If the src_object Topic() returns 1 (true) then update all UIs attached to src_object

+

@return nothing

add_common_assets +

+

Use this proc to add assets which are common to (and required by) all nano uis

+

@return nothing

add_script +

+

Add a JavsScript script to this UI +These must be added before the UI has been opened, adding after that will have no effect

+

@param file string The name of the JavaScript file from /nano/js (e.g. "my_script.js")

+

@return nothing

add_stylesheet +

+

Add a CSS stylesheet to this UI +These must be added before the UI has been opened, adding after that will have no effect

+

@param file string The name of the CSS file from /nano/css (e.g. "my_style.css")

+

@return nothing

add_template +

+

Add a template for this UI +Templates are combined with the data sent to the UI to create the rendered view +These must be added before the UI has been opened, adding after that will have no effect

+

@param key string The key which is used to reference this template in the frontend +@param filename string The name of the template file from /nano/templates (e.g. "my_template.tmpl")

+

@return nothing

close +

+

Close this UI

+

@return nothing

get_config_data +

+

Get config data to sent to the ui.

+

@return /list config data

get_html +

+

Return the HTML for this UI

+

@return string HTML for the UI

get_send_data +

+

Get data to sent to the ui.

+

@param data /list The list of general data for this ui (can be null to use previous data sent)

+

@return /list data to send to the ui

on_close_winset +

+

Set the UI window to call the nanoclose verb when the window is closed +This allows Nano to handle closed windows

+

@return nothing

open +

+

Open this UI

+

@return nothing

process +

+

Process this UI, updating the entire UI or just the status (aka visibility) +This process proc is called by the master_controller

+

@param update string For this UI to update

+

@return nothing

push_data +

+

Push data to an already open UI window

+

@return nothing

set_auto_update +

+

Set the ui to auto update (every master_controller tick)

+

@param state int (bool) Set auto update to 1 or 0 (true/false)

+

@return nothing

set_auto_update_content +

+

Set the ui to update the main content (re-render it) on each update

+

@param state int (bool) Set update to 1 or 0 (true/false) (default 1)

+

@return nothing

set_auto_update_layout +

+

Set the ui to update the layout (re-render it) on each update, turning this on will break the map ui (if it's being used)

+

@param state int (bool) Set update to 1 or 0 (true/false) (default 0)

+

@return nothing

set_initial_data +

+

Set the initial data for the ui. This is vital as the data structure set here cannot be changed when pushing new updates.

+

@param data /list The list of data for this ui

+

@return nothing

set_map_z_level +

+

Toggle showing the map ui

+

@param nstate_key boolean 1 to show map, 0 to hide (default is 0)

+

@return nothing

set_show_map +

+

Toggle showing the map ui

+

@param nstate_key boolean 1 to show map, 0 to hide (default is 0)

+

@return nothing

set_state_key +

+

Set the state key for use in the frontend Javascript

+

@param nstate_key string The key of the state to use

+

@return nothing

set_status +

+

Set the current status (also known as visibility) of this ui.

+

@param state int The status to set, see the defines at the top of this file +@param push_update int (bool) Push an update to the ui to update it's status (an update is always sent if the status has changed to red (0))

+

@return nothing

set_window_options +

+

Set the browser window options for this ui

+

@param nwindow_options string The new window options

+

@return nothing

update +

+

Update the UI

+

@return nothing

update_status +

+

Update the status (visibility) of this ui based on the user's status

+

@param push_update int (bool) Push an update to the ui to update it's status. This is set to 0/false if an update is going to be pushed anyway (to avoid unnessary updates)

+

@return nothing

use_on_close_logic +

+

Set whether or not to use the "old" on close logic (mainly unset_interaction())

+

@param state int (bool) Set on_close_logic to 1 or 0 (true/false)

+

@return nothing

+ + + diff --git a/datum/nmcontext.html b/datum/nmcontext.html new file mode 100644 index 000000000000..58678d813452 --- /dev/null +++ b/datum/nmcontext.html @@ -0,0 +1,92 @@ + + + + + + + /datum/nmcontext - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

context + + + +

+ +

Context within which we resolve nightmare actions

+ + + + + + + + +

Vars

configConfig values used internally relevant to context
nameUser-friendly name
scenarioStorage of scenario values in the context as KV
schedulerHolder for tasks to execute in the context
scheduler_typeScheduler task type
traceRuntime debug list of resolved nodes in the context

Procs

get_file_pathResolve a config file path using context configuration
get_scenario_valueGet a value from the scenario, or a global value
set_scenario_valueSet a value in the scenario. This should only be used by manual user intervention, such as admins tweaking scenario!!
+

Var Details

config + + + + +

+

Config values used internally relevant to context

name + + + + +

+

User-friendly name

scenario + + + + +

+

Storage of scenario values in the context as KV

scheduler + + + + +

+

Holder for tasks to execute in the context

scheduler_type + + + + +

+

Scheduler task type

trace + + + + +

+

Runtime debug list of resolved nodes in the context

Proc Details

get_file_path +

+

Resolve a config file path using context configuration

get_scenario_value +

+

Get a value from the scenario, or a global value

set_scenario_value +

+

Set a value in the scenario. This should only be used by manual user intervention, such as admins tweaking scenario!!

+ + + diff --git a/datum/nmnode.html b/datum/nmnode.html new file mode 100644 index 000000000000..bccd3159da86 --- /dev/null +++ b/datum/nmnode.html @@ -0,0 +1,64 @@ + + + + + + + /datum/nmnode - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/nmnode + + + +

+ +

Decriptive nightmare config nodes loaded from config files

+ + + + +

Vars

idUnique identifier for referencing in JSON configuration
nameUser provided name for debugging
rawOriginal JSON object that was used to create this

Procs

invokeCall wrapper for resolving nodes
resolveImplementation of the node, resolving into tasks in the given context
+

Var Details

id + + + + +

+

Unique identifier for referencing in JSON configuration

name + + + + +

+

User provided name for debugging

raw + + + + +

+

Original JSON object that was used to create this

Proc Details

invoke +

+

Call wrapper for resolving nodes

resolve +

+

Implementation of the node, resolving into tasks in the given context

+ + + diff --git a/datum/nmnode/branch.html b/datum/nmnode/branch.html new file mode 100644 index 000000000000..af35504cd6fd --- /dev/null +++ b/datum/nmnode/branch.html @@ -0,0 +1,36 @@ + + + + + + + /datum/nmnode/branch - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/nmnode/branch + + + +

+ +

Holding node for several child nodes

+

Vars

nodesChild nodes
+

Var Details

nodes + + + + +

+

Child nodes

+ + + diff --git a/datum/nmnode/mapload.html b/datum/nmnode/mapload.html new file mode 100644 index 000000000000..f7996279479d --- /dev/null +++ b/datum/nmnode/mapload.html @@ -0,0 +1,36 @@ + + + + + + + /datum/nmnode/mapload - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/nmnode/mapload + + + +

+ +

Abstract config node designating a map insertion

+

Vars

filepathBase file (or directory) path of map files
+

Var Details

filepath + + + + +

+

Base file (or directory) path of map files

+ + + diff --git a/datum/nmnode/mapload/landmark.html b/datum/nmnode/mapload/landmark.html new file mode 100644 index 000000000000..81e9ce78c821 --- /dev/null +++ b/datum/nmnode/mapload/landmark.html @@ -0,0 +1,36 @@ + + + + + + + /datum/nmnode/mapload/landmark - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/nmnode/mapload/landmark + + + +

+ +

Designates insert of a given map file at a specified landmark

+

Vars

landmarkLandmark identifier
+

Var Details

landmark + + + + +

+

Landmark identifier

+ + + diff --git a/datum/nmnode/mapload/sprinkles.html b/datum/nmnode/mapload/sprinkles.html new file mode 100644 index 000000000000..c9c72a2da148 --- /dev/null +++ b/datum/nmnode/mapload/sprinkles.html @@ -0,0 +1,33 @@ + + + + + + + /datum/nmnode/mapload/sprinkles - byond + + +
+ byond - + Modules - + Types +
+
+

Map Sprinkles + + + +

+ +

Similar to variations mode, but rolls all files individually rather +than picking one, using name for landmark. The prefix number is used +as a percentage chance.

+

Example: +some/folder/10.something_funny.dmm +would have 10% chance to insert at the 'something_funny' landmark

+ + + diff --git a/datum/nmtask.html b/datum/nmtask.html new file mode 100644 index 000000000000..a9cf3005a449 --- /dev/null +++ b/datum/nmtask.html @@ -0,0 +1,82 @@ + + + + + + + /datum/nmtask - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

abstract task + + + +

+ +

Nightmare task, executing game actions as part of context

+ + + + + + +

Vars

flagsTask behavior flags
nameTask name

Procs

_invoke_asyncInternal wrapper for async exec
cleanupFree resources used by the task and its state, without deleting it
executeTask implementation
invoke_asyncInvoke task execution asynchronously +If the return value is anything else than NIGHTMARE_TASK_ASYNC, +the task will have completed, and callback fired, before this proc returns
invoke_syncInvoke task execution synchronously
+

Var Details

flags + + + + +

+

Task behavior flags

name + + + + +

+

Task name

Proc Details

_invoke_async +

+

Internal wrapper for async exec

cleanup +

+

Free resources used by the task and its state, without deleting it

execute +

+

Task implementation

invoke_async +

+

Invoke task execution asynchronously +If the return value is anything else than NIGHTMARE_TASK_ASYNC, +the task will have completed, and callback fired, before this proc returns

invoke_sync +

+

Invoke task execution synchronously

+ + + diff --git a/datum/nmtask/mapload.html b/datum/nmtask/mapload.html new file mode 100644 index 000000000000..62b532510afe --- /dev/null +++ b/datum/nmtask/mapload.html @@ -0,0 +1,42 @@ + + + + + + + /datum/nmtask/mapload - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/nmtask/mapload + + + +

+ +

Loads a chunk of map at the specified position

+ +

Procs

initialize_boundary_contentsInitialize atoms/areas in bounds - basically a Nightmare version of [/datum/map_template/initTemplateBounds]
step_parseStep 1: Validate file and asks for parsing

Proc Details

initialize_boundary_contents +

+

Initialize atoms/areas in bounds - basically a Nightmare version of [/datum/map_template/initTemplateBounds]

step_parse +

+

Step 1: Validate file and asks for parsing

+ + + diff --git a/datum/nmtask/scheduler/mapload.html b/datum/nmtask/scheduler/mapload.html new file mode 100644 index 000000000000..1a6524b68723 --- /dev/null +++ b/datum/nmtask/scheduler/mapload.html @@ -0,0 +1,36 @@ + + + + + + + /datum/nmtask/scheduler/mapload - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mapload scheduler + + + +

+ +

Handles map insertions sequentially and updating the game to match map insertions

+

Vars

tainted_boundsMap boundaries tainted by children nightmare tasks to be handled
+

Var Details

tainted_bounds + + + + +

+

Map boundaries tainted by children nightmare tasks to be handled

+ + + diff --git a/datum/object_window_info.html b/datum/object_window_info.html new file mode 100644 index 000000000000..7f40137577d5 --- /dev/null +++ b/datum/object_window_info.html @@ -0,0 +1,86 @@ + + + + + + + /datum/object_window_info - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/object_window_info + + + +

+ +

Datum that holds and tracks info about a client's object window +Really only exists because I want to be able to do logic with signals +And need a safe place to do the registration

+ + + + + + +

Vars

actively_trackingAre we currently tracking a turf?
atoms_to_imageslist of atom -> image string for objects we have had in the right click tab +this is our caching
atoms_to_imagifylist of atoms to turn into images for the object tab
atoms_to_showlist of atoms to show to our client via the object tab, at least currently
parentOur owner client

Procs

processTakes a client, attempts to generate object images for it +We will update the client with any improvements we make when we're done
viewing_atom_deletedClears any cached object window stuff +We use hard refs cause we'd need a signal for this anyway. Cleaner this way
+

Var Details

actively_tracking + + + + +

+

Are we currently tracking a turf?

atoms_to_images + + + + +

+

list of atom -> image string for objects we have had in the right click tab +this is our caching

atoms_to_imagify + + + + +

+

list of atoms to turn into images for the object tab

atoms_to_show + + + + +

+

list of atoms to show to our client via the object tab, at least currently

parent + + + + +

+

Our owner client

Proc Details

process +

+

Takes a client, attempts to generate object images for it +We will update the client with any improvements we make when we're done

viewing_atom_deleted +

+

Clears any cached object window stuff +We use hard refs cause we'd need a signal for this anyway. Cleaner this way

+ + + diff --git a/datum/origin.html b/datum/origin.html new file mode 100644 index 000000000000..21b5a5634ac3 --- /dev/null +++ b/datum/origin.html @@ -0,0 +1,35 @@ + + + + + + + /datum/origin - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Base + + + +

+ + +

Procs

validate_nameReturn null if the name is correct, otherwise return a string containing the error message

Proc Details

validate_name +

+

Return null if the name is correct, otherwise return a string containing the error message

+ + + diff --git a/datum/parsed_map.html b/datum/parsed_map.html new file mode 100644 index 000000000000..3b33a3196155 --- /dev/null +++ b/datum/parsed_map.html @@ -0,0 +1,166 @@ + + + + + + + /datum/parsed_map - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/parsed_map + + + +

+ + + + + + + + + + + + + + + + + + + +

Vars

boundsOffset bounds. Same as parsed_bounds until load().
expanded_xIf we've expanded world.maxy
expanded_yIf we've expanded world.maxx
key_lenThe length of a key in this file. This is promised by the standard to be static
line_lenThe length of a line in this file. Not promised by dmm but standard dmm uses it, so we can trust it
loaded_areasList of area types we've loaded AS A PART OF THIS MAP +We do this to allow non unique areas, so we'll only load one per map
loadingIf we are currently loading this map
matches_tgmMatches key formats in TMG (IE: newline after the ()
model_pathPulls out model paths for DMM
parsed_boundsUnoffset bounds. Null on parse failure.
turf_blacklistany turf in this list is skipped inside of build_coordinate. Lazy assoc list
var_edits_tgmPulls out key value pairs for TGM

Procs

NewParse a map, possibly cropping it.
_dmm_loadStanrdard loading, not used in production +Doesn't take advantage of any tgm optimizations, which makes it slower but also more general +Use this if for some reason your map format is messy
check_for_errorsCheck a parsed but not yet loaded map for errors.
dmm_build_cacheBuilds key caches for general formats +Slower then the proc above, tho it could still be optimized slightly. it's just not a priority +Since we don't run DMM maps, ever.
filter_grid_sets_based_on_z_boundsIterates over all grid sets and returns ones with z values within the given bounds. Inclusive
loadLoad the parsed map into the world. You probably want /proc/load_map. Keep the signature the same.
+

Var Details

bounds + + + + +

+

Offset bounds. Same as parsed_bounds until load().

expanded_x + + + + +

+

If we've expanded world.maxy

expanded_y + + + + +

+

If we've expanded world.maxx

key_len + + + + +

+

The length of a key in this file. This is promised by the standard to be static

line_len + + + + +

+

The length of a line in this file. Not promised by dmm but standard dmm uses it, so we can trust it

loaded_areas + + + + +

+

List of area types we've loaded AS A PART OF THIS MAP +We do this to allow non unique areas, so we'll only load one per map

loading + + + + +

+

If we are currently loading this map

matches_tgm + + + + +

+

Matches key formats in TMG (IE: newline after the ()

model_path + + + + +

+

Pulls out model paths for DMM

parsed_bounds + + + + +

+

Unoffset bounds. Null on parse failure.

turf_blacklist + + + + +

+

any turf in this list is skipped inside of build_coordinate. Lazy assoc list

var_edits_tgm + + + + +

+

Pulls out key value pairs for TGM

Proc Details

New +

+

Parse a map, possibly cropping it.

_dmm_load +

+

Stanrdard loading, not used in production +Doesn't take advantage of any tgm optimizations, which makes it slower but also more general +Use this if for some reason your map format is messy

check_for_errors +

+

Check a parsed but not yet loaded map for errors.

+

Returns a /datum/map_report if there are errors or FALSE otherwise.

dmm_build_cache +

+

Builds key caches for general formats +Slower then the proc above, tho it could still be optimized slightly. it's just not a priority +Since we don't run DMM maps, ever.

filter_grid_sets_based_on_z_bounds +

+

Iterates over all grid sets and returns ones with z values within the given bounds. Inclusive

load +

+

Load the parsed map into the world. You probably want /proc/load_map. Keep the signature the same.

+ + + diff --git a/datum/particle_editor.html b/datum/particle_editor.html new file mode 100644 index 000000000000..fc4e80d613cf --- /dev/null +++ b/datum/particle_editor.html @@ -0,0 +1,36 @@ + + + + + + + /datum/particle_editor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/particle_editor + + + +

+ + +

Vars

targetmovable whose particles we want to be editing
+

Var Details

target + + + + +

+

movable whose particles we want to be editing

+ + + diff --git a/datum/paygrade.html b/datum/paygrade.html new file mode 100644 index 000000000000..51c8ea282203 --- /dev/null +++ b/datum/paygrade.html @@ -0,0 +1,57 @@ + + + + + + + /datum/paygrade - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/paygrade + + + +

+ + + + + +

Vars

default_factionThe faction this paygrade is usually assigned to.
fprefixFactional prefix, currently only used by PMCs. In essence, a pre-prefix.
officer_gradeIf the grade refers to an officer equivalent or not.
pay_multiplierActually gives you the fucking money from your paygrade in your ATM account. Multiplier of 1 equals PFC pay.
+

Var Details

default_faction + + + + +

+

The faction this paygrade is usually assigned to.

fprefix + + + + +

+

Factional prefix, currently only used by PMCs. In essence, a pre-prefix.

officer_grade + + + + +

+

If the grade refers to an officer equivalent or not.

pay_multiplier + + + + +

+

Actually gives you the fucking money from your paygrade in your ATM account. Multiplier of 1 equals PFC pay.

+ + + diff --git a/datum/player_details.html b/datum/player_details.html new file mode 100644 index 000000000000..22307bfaec67 --- /dev/null +++ b/datum/player_details.html @@ -0,0 +1,36 @@ + + + + + + + /datum/player_details - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/player_details + + + +

+ + +

Vars

larva_queue_timeThe descriminator for larva queue ordering: Generally set to timeofdeath except for facehuggers/admin z-level play
+

Var Details

larva_queue_time + + + + +

+

The descriminator for larva queue ordering: Generally set to timeofdeath except for facehuggers/admin z-level play

+ + + diff --git a/datum/player_info.html b/datum/player_info.html new file mode 100644 index 000000000000..cb97d355dc02 --- /dev/null +++ b/datum/player_info.html @@ -0,0 +1,36 @@ + + + + + + + /datum/player_info - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/player_info + + + +

+ + +

Vars

authorPanels
+

Var Details

author + + + + +

+

Panels

+ + + diff --git a/datum/preferences.html b/datum/preferences.html new file mode 100644 index 000000000000..38921c79bccb --- /dev/null +++ b/datum/preferences.html @@ -0,0 +1,161 @@ + + + + + + + /datum/preferences - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/preferences + + + +

+ + + + + + + + + + + + + + + + + +

Vars

auto_observeIf this client has auto observe enabled, used by /datum/orbit_menu
completed_tutorialsA list of tutorials that the client has completed, saved across rounds
custom_cursorsif this client has custom cursors enabled
pref_job_slotsHolds assignment of character slots to jobs.
pref_special_job_optionsholds our preferred job options for jobs
read_traitsState var to check if traits have been read in to modify +trait points
tooltipsif this client has tooltips enabled
trait_pointsState var for preferences to track trait points +Change this value to set the amount of trait points you start with
traitsThe list of traits a client will gives its human mob upon spawn +Store as typepaths

Procs

SetChoicesJob Preferences: Preferences for role at round start.
check_keybindingschecks through keybindings for outdated unbound keys and updates them
copy_all_toTransfers both physical characteristics and character information to character
find_assigned_slotLoads appropriate character slot for the given job as assigned in preferences.
set_job_slotsJob Assignments window: Assign unique characters to a particular job.
tutorial_list_to_savestringConverts a client's list of completed tutorials into a string for saving
tutorial_savestring_to_listConverts a saved string of completed tutorials into a list for in-game use
+

Var Details

auto_observe + + + + +

+

If this client has auto observe enabled, used by /datum/orbit_menu

completed_tutorials + + + + +

+

A list of tutorials that the client has completed, saved across rounds

custom_cursors + + + + +

+

if this client has custom cursors enabled

pref_job_slots + + + + +

+

Holds assignment of character slots to jobs.

pref_special_job_options + + + + +

+

holds our preferred job options for jobs

read_traits + + + + +

+

State var to check if traits have been read in to modify +trait points

tooltips + + + + +

+

if this client has tooltips enabled

trait_points + + + + +

+

State var for preferences to track trait points +Change this value to set the amount of trait points you start with

traits + + + + +

+

The list of traits a client will gives its human mob upon spawn +Store as typepaths

Proc Details

SetChoices +

+

Job Preferences: Preferences for role at round start.

+

Arguments:

+

check_keybindings +

+

checks through keybindings for outdated unbound keys and updates them

copy_all_to +

+

Transfers both physical characteristics and character information to character

find_assigned_slot +

+

Loads appropriate character slot for the given job as assigned in preferences.

set_job_slots +

+

Job Assignments window: Assign unique characters to a particular job.

+

Arguments:

+

tutorial_list_to_savestring +

+

Converts a client's list of completed tutorials into a string for saving

tutorial_savestring_to_list +

+

Converts a saved string of completed tutorials into a list for in-game use

+ + + diff --git a/datum/quadtree.html b/datum/quadtree.html new file mode 100644 index 000000000000..e761f1ce2f2a --- /dev/null +++ b/datum/quadtree.html @@ -0,0 +1,36 @@ + + + + + + + /datum/quadtree - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/quadtree + + + +

+ + +

Vars

final_divideDon't divide further when truthy
+

Var Details

final_divide + + + + +

+

Don't divide further when truthy

+ + + diff --git a/datum/radar.html b/datum/radar.html new file mode 100644 index 000000000000..19e8bc1df379 --- /dev/null +++ b/datum/radar.html @@ -0,0 +1,134 @@ + + + + + + + /datum/radar - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/radar + + + +

+ +

generic parent that handles most of the process

+ + + + + + + + + + + +

Vars

arrowstyleUsed by the tgui interface, themed NT or Syndicate.
holderthe thing which has this datum attached to it. REQUIRED!!! IF HOLDER DOES NOT EXIST, WE DO NOT EXIST. QDEL.
last_icon_stateUsed to keep track of the last value program_icon_state was set to, to prevent constant unnecessary update_appearance() calls
next_scanUsed to store when the next scan is available. Updated by the scan() proc.
objectsList of trackable entities. Updated by the scan() proc.
pointercolorUsed by the tgui interface, themed for NT or Syndicate colors.
scan_cooldowncooldown between scans
selectedRef of the last trackable object selected by the user in the tgui window. Updated in the ui_act() proc.

Procs

find_atomFinds the atom in the appropriate list that the selected var indicates
scanRuns a scan of all the trackable atoms.
trackUpdates tracking information of the selected target.
trackableChecks the trackability of the selected target.
+

Var Details

arrowstyle + + + + +

+

Used by the tgui interface, themed NT or Syndicate.

holder + + + + +

+

the thing which has this datum attached to it. REQUIRED!!! IF HOLDER DOES NOT EXIST, WE DO NOT EXIST. QDEL.

last_icon_state + + + + +

+

Used to keep track of the last value program_icon_state was set to, to prevent constant unnecessary update_appearance() calls

next_scan + + + + +

+

Used to store when the next scan is available. Updated by the scan() proc.

objects + + + + +

+

List of trackable entities. Updated by the scan() proc.

pointercolor + + + + +

+

Used by the tgui interface, themed for NT or Syndicate colors.

scan_cooldown + + + + +

+

cooldown between scans

selected + + + + +

+

Ref of the last trackable object selected by the user in the tgui window. Updated in the ui_act() proc.

Proc Details

find_atom +

+

Finds the atom in the appropriate list that the selected var indicates

+

The selected var holds a REF, which is a string. A mob REF may be +something like "mob_209". In order to find the actual atom, we need +to search the appropriate list for the REF string. This is dependant +on the program (Lifeline uses GLOB.human_list, while Fission360 uses +GLOB.poi_list), but the result will be the same; evaluate the string and +return an atom reference.

scan +

+

Runs a scan of all the trackable atoms.

+

Checks each entry in the GLOB of the specific trackable atoms against +the track() proc, and fill the objects list with lists containing the +atoms' names and REFs. The objects list is handed to the tgui screen +for displaying to, and being selected by, the user. A two second +sleep is used to delay the scan, both for thematical reasons as well +as to limit the load players may place on the server using these +somewhat costly loops.

track +

+

Updates tracking information of the selected target.

+

The track() proc updates the entire set of information about the location +of the target, including whether the Ntos window should use a pinpointer +crosshair over the up/down arrows, or none in favor of a rotating arrow +for far away targets. This information is returned in the form of a list.

trackable +

+

Checks the trackability of the selected target.

+

If the target is on the computer's Z level, or both are on station Z +levels, and the target isn't untrackable, return TRUE. +Arguments: +*arg1 is the atom being evaluated.

+ + + diff --git a/datum/reagent/ethanol.html b/datum/reagent/ethanol.html new file mode 100644 index 000000000000..16a8215e9fab --- /dev/null +++ b/datum/reagent/ethanol.html @@ -0,0 +1,50 @@ + + + + + + + /datum/reagent/ethanol - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Ethanol + + + +

+ + + + +

Vars

accumulated_alcoholIf it's a normal drink, let them drink a bit before they start feeling it.
boozepwrhigher numbers mean the booze will have an effect faster.
effect_startThis is when the properties are gonna hit. Drink in moderation.
+

Var Details

accumulated_alcohol + + + + +

+

If it's a normal drink, let them drink a bit before they start feeling it.

boozepwr + + + + +

+

higher numbers mean the booze will have an effect faster.

effect_start + + + + +

+

This is when the properties are gonna hit. Drink in moderation.

+ + + diff --git a/datum/reagents.html b/datum/reagents.html new file mode 100644 index 000000000000..e06ac19e2b8e --- /dev/null +++ b/datum/reagents.html @@ -0,0 +1,63 @@ + + + + + + + /datum/reagents - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/reagents + + + +

+ + + + + + +

Procs

remove_any_butThis proc is one that removes all reagents from the targeted datum other than the designated ignored reagent
set_source_mobYou can search for specific reagents using the specific reagents arg.
trans_toTransfers to the reagents datum of an object
trans_to_datumTransfers to a reagent datum
trans_to_ingestTransfers to object as ingestion

Proc Details

remove_any_but +

+

This proc is one that removes all reagents from the targeted datum other than the designated ignored reagent

set_source_mob +

+

You can search for specific reagents using the specific reagents arg.

trans_to +

+

Transfers to the reagents datum of an object

trans_to_datum +

+

Transfers to a reagent datum

trans_to_ingest +

+

Transfers to object as ingestion

+ + + diff --git a/datum/reagents/vessel.html b/datum/reagents/vessel.html new file mode 100644 index 000000000000..21388baad3be --- /dev/null +++ b/datum/reagents/vessel.html @@ -0,0 +1,35 @@ + + + + + + + /datum/reagents/vessel - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/reagents/vessel + + + +

+ + +

Procs

inject_vesselInjects all contents into an object

Proc Details

inject_vessel +

+

Injects all contents into an object

+ + + diff --git a/datum/redis_callback.html b/datum/redis_callback.html new file mode 100644 index 000000000000..bc487b713c8b --- /dev/null +++ b/datum/redis_callback.html @@ -0,0 +1,51 @@ + + + + + + + /datum/redis_callback - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Redis callbacks + + + +

+ +

This datum is used for assigning callbacks that run +when a message is received on a specific channel. Subtypes of this +are automatically registered in SSredis initialization

+ +

Vars

channelredis channel that this callback subscribes to

Procs

on_messageThis proc is run when a message is received on the callback's channel. +Must be overwritten.
+

Var Details

channel + + + + +

+

redis channel that this callback subscribes to

Proc Details

on_message +

+

This proc is run when a message is received on the callback's channel. +Must be overwritten.

+

Arguments:

+
+ + + diff --git a/datum/redis_message.html b/datum/redis_message.html new file mode 100644 index 000000000000..1b7719e231f6 --- /dev/null +++ b/datum/redis_message.html @@ -0,0 +1,43 @@ + + + + + + + /datum/redis_message - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Redis message + + + +

+ +

Used to hold redis messages created prior to the initialization of SSredis

+ +

Vars

channeldestination redis channel
messagemessage being sent to the channel
+

Var Details

channel + + + + +

+

destination redis channel

message + + + + +

+

message being sent to the channel

+ + + diff --git a/datum/research_upgrades.html b/datum/research_upgrades.html new file mode 100644 index 000000000000..02395371dcf0 --- /dev/null +++ b/datum/research_upgrades.html @@ -0,0 +1,106 @@ + + + + + + + /datum/research_upgrades - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Upgrade. + + + +

+ + + + + + + + + + + + +

Vars

behaviorwhich behavior should this type follow. Should this be completely excluded from the buy menu? should it be one of the dropdown options? or a normal item?
change_purchaseThe change of price for item per purchase, recommended for mass producing stuff or limited upgrade.
clearance_reqClearance requirment to buy this upgrade. 5x is level 6. Why is it not that way? no one knows.
descname of upgrades, not items. Items are at research_upgrades.dm somewhere in item folder.
item_referencePath to the item, upgrade, if any.
maximum_pricethe maximum price which we cant go any more expensive, usually dont need to set this if change price is 0 or negative
minimum_pricethe minimum price which we cant go any cheaper usually dont need to set this if change price is 0 or positive
nameunique to every upgrade. not the name of the item. name of the upgrade
upgrade_typeIn which tab the upgrade should be.
value_upgradethe price of the upgrade, refer to this: 500 is a runner, 8k is queen. T3 is usually 3k, woyer is 2k.

Procs

on_purchasegets called once the product is purchased, override if you need to pass any special arguments or have special behavior on purchase.
+

Var Details

behavior + + + + +

+

which behavior should this type follow. Should this be completely excluded from the buy menu? should it be one of the dropdown options? or a normal item?

change_purchase + + + + +

+

The change of price for item per purchase, recommended for mass producing stuff or limited upgrade.

clearance_req + + + + +

+

Clearance requirment to buy this upgrade. 5x is level 6. Why is it not that way? no one knows.

desc + + + + +

+

name of upgrades, not items. Items are at research_upgrades.dm somewhere in item folder.

item_reference + + + + +

+

Path to the item, upgrade, if any.

maximum_price + + + + +

+

the maximum price which we cant go any more expensive, usually dont need to set this if change price is 0 or negative

minimum_price + + + + +

+

the minimum price which we cant go any cheaper usually dont need to set this if change price is 0 or positive

name + + + + +

+

unique to every upgrade. not the name of the item. name of the upgrade

upgrade_type + + + + +

+

In which tab the upgrade should be.

value_upgrade + + + + +

+

the price of the upgrade, refer to this: 500 is a runner, 8k is queen. T3 is usually 3k, woyer is 2k.

Proc Details

on_purchase +

+

gets called once the product is purchased, override if you need to pass any special arguments or have special behavior on purchase.

+ + + diff --git a/datum/role_reserved_slots.html b/datum/role_reserved_slots.html new file mode 100644 index 000000000000..ea57a2b0e5ef --- /dev/null +++ b/datum/role_reserved_slots.html @@ -0,0 +1,57 @@ + + + + + + + /datum/role_reserved_slots - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/role_reserved_slots + + + +

+ +

special role slots datum. Stores category name, roles, amount of taken slots and total slots.

+ + + +

Vars

category_namecategory name for roles
rolesroles, that fit this category. Don't put same role in more than one category, only first found is checked.
takenamount of slots taken.
totaltotal amount of slots.
+

Var Details

category_name + + + + +

+

category name for roles

roles + + + + +

+

roles, that fit this category. Don't put same role in more than one category, only first found is checked.

taken + + + + +

+

amount of slots taken.

total + + + + +

+

total amount of slots.

+ + + diff --git a/datum/round_event.html b/datum/round_event.html new file mode 100644 index 000000000000..2768d4bf7298 --- /dev/null +++ b/datum/round_event.html @@ -0,0 +1,36 @@ + + + + + + + /datum/round_event - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/round_event + + + +

+ + +

Vars

cancel_eventWhether a admin wants this event to be cancelled
+

Var Details

cancel_event + + + + +

+

Whether a admin wants this event to be cancelled

+ + + diff --git a/datum/round_event/economy_inflation.html b/datum/round_event/economy_inflation.html new file mode 100644 index 000000000000..4a5deb708a25 --- /dev/null +++ b/datum/round_event/economy_inflation.html @@ -0,0 +1,57 @@ + + + + + + + /datum/round_event/economy_inflation - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/round_event/economy_inflation + + + +

+ + + + + +

Vars

inflation_multThe multiplier for increasing prices of the above.
product_typeThe event will modify all vendors of this specific product type.
time_to_updateUsed in the announcement and in setup to indicate when it will start.

Procs

get_random_storyReturns a random backstory 'incident' as the cause for the sudden price hike.
+

Var Details

inflation_mult + + + + +

+

The multiplier for increasing prices of the above.

product_type + + + + +

+

The event will modify all vendors of this specific product type.

time_to_update + + + + +

+

Used in the announcement and in setup to indicate when it will start.

Proc Details

get_random_story +

+

Returns a random backstory 'incident' as the cause for the sudden price hike.

+ + + diff --git a/datum/round_event_control.html b/datum/round_event_control.html new file mode 100644 index 000000000000..57933eddf836 --- /dev/null +++ b/datum/round_event_control.html @@ -0,0 +1,98 @@ + + + + + + + /datum/round_event_control - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/round_event_control + + + +

+ +

this datum is used by the events controller to dictate how it selects events

+ + + + + + + + +

Vars

earliest_startThe earliest world.time that an event can start (round-duration in deciseconds) default: 20 mins
min_playersThe minimum amount of alive, non-AFK human players on server required to start the event.
nameThe human-readable name of the event
occurrencesHow many times this event has occurred
triggeringadmin cancellation
typepathThe typepath of the event datum /datum/round_event
weightThe weight this event has in the random-selection process. +Higher weights are more likely to be picked. +10 is the default weight. 20 is twice more likely; 5 is half as likely as this default. +0 here does NOT disable the event, it just makes it extremely unlikely

Procs

can_spawn_eventChecks if the event can be spawned. Used by event controller. Admin-created events override this.
stop_random_eventreturns the component for the listener
+

Var Details

earliest_start + + + + +

+

The earliest world.time that an event can start (round-duration in deciseconds) default: 20 mins

min_players + + + + +

+

The minimum amount of alive, non-AFK human players on server required to start the event.

name + + + + +

+

The human-readable name of the event

occurrences + + + + +

+

How many times this event has occurred

triggering + + + + +

+

admin cancellation

typepath + + + + +

+

The typepath of the event datum /datum/round_event

weight + + + + +

+

The weight this event has in the random-selection process. +Higher weights are more likely to be picked. +10 is the default weight. 20 is twice more likely; 5 is half as likely as this default. +0 here does NOT disable the event, it just makes it extremely unlikely

Proc Details

can_spawn_event +

+

Checks if the event can be spawned. Used by event controller. Admin-created events override this.

stop_random_event +

+

returns the component for the listener

+ + + diff --git a/datum/screen_object_holder.html b/datum/screen_object_holder.html new file mode 100644 index 000000000000..facc3e504390 --- /dev/null +++ b/datum/screen_object_holder.html @@ -0,0 +1,43 @@ + + + + + + + /datum/screen_object_holder - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/screen_object_holder + + + +

+ +

A helper instance that will handle adding objects from the client's screen +to easily remove from later.

+ +

Procs

give_protected_screen_objectGives the screen object to the client, but does not qdel it when it's cleared
give_screen_objectGives the screen object to the client, qdel'ing it when it's cleared

Proc Details

give_protected_screen_object +

+

Gives the screen object to the client, but does not qdel it when it's cleared

give_screen_object +

+

Gives the screen object to the client, qdel'ing it when it's cleared

+ + + diff --git a/datum/shape.html b/datum/shape.html new file mode 100644 index 000000000000..d6c69929b6cd --- /dev/null +++ b/datum/shape.html @@ -0,0 +1,99 @@ + + + + + + + /datum/shape - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/shape + + + +

+ +

A simple geometric shape for testing collisions and intersections. This one is a single point.

+ + + + + + + + + +

Vars

bounds_xDistance from the shape's leftmost to rightmost extent.
bounds_yDistance from the shape's topmost to bottommost extent.
center_xHorizontal position of the shape's center point.
center_yVertical position of the shape's center point.

Procs

contains_atomReturns TRUE if the atom is in or on the shape, otherwise FALSE.
contains_coordsReturns TRUE if the coord datum is in or on the shape, otherwise FALSE.
contains_xyReturns TRUE if the coordinates x, y are in or on the shape, otherwise FALSE.
intersects_aabbReturns TRUE if this shape's bounding box intersects the provided shape's bounding box, otherwise FALSE. Generally faster than a full intersection test.
intersects_rectReturns TRUE if this shape intersects the provided rectangle shape, otherwise FALSE.
set_shapeAssign shape variables.
+

Var Details

bounds_x + + + + +

+

Distance from the shape's leftmost to rightmost extent.

bounds_y + + + + +

+

Distance from the shape's topmost to bottommost extent.

center_x + + + + +

+

Horizontal position of the shape's center point.

center_y + + + + +

+

Vertical position of the shape's center point.

Proc Details

contains_atom +

+

Returns TRUE if the atom is in or on the shape, otherwise FALSE.

contains_coords +

+

Returns TRUE if the coord datum is in or on the shape, otherwise FALSE.

contains_xy +

+

Returns TRUE if the coordinates x, y are in or on the shape, otherwise FALSE.

intersects_aabb +

+

Returns TRUE if this shape's bounding box intersects the provided shape's bounding box, otherwise FALSE. Generally faster than a full intersection test.

intersects_rect +

+

Returns TRUE if this shape intersects the provided rectangle shape, otherwise FALSE.

set_shape +

+

Assign shape variables.

+ + + diff --git a/datum/shape/ellipse.html b/datum/shape/ellipse.html new file mode 100644 index 000000000000..621f99d9d598 --- /dev/null +++ b/datum/shape/ellipse.html @@ -0,0 +1,43 @@ + + + + + + + /datum/shape/ellipse - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/shape/ellipse + + + +

+ +

A simple geometric shape for testing collisions and intersections. This one is an axis-aligned ellipse.

+ +

Vars

heightDistance from the shape's topmost to bottommost extent.
widthDistance from the shape's leftmost to rightmost extent.
+

Var Details

height + + + + +

+

Distance from the shape's topmost to bottommost extent.

width + + + + +

+

Distance from the shape's leftmost to rightmost extent.

+ + + diff --git a/datum/shape/ellipse/circle.html b/datum/shape/ellipse/circle.html new file mode 100644 index 000000000000..047c876a9719 --- /dev/null +++ b/datum/shape/ellipse/circle.html @@ -0,0 +1,36 @@ + + + + + + + /datum/shape/ellipse/circle - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/shape/ellipse/circle + + + +

+ +

A simple geometric shape for testing collisions and intersections. This one is a circle.

+

Vars

radiusDistance from the shape's center to edge.
+

Var Details

radius + + + + +

+

Distance from the shape's center to edge.

+ + + diff --git a/datum/shape/rectangle.html b/datum/shape/rectangle.html new file mode 100644 index 000000000000..005d50915abf --- /dev/null +++ b/datum/shape/rectangle.html @@ -0,0 +1,43 @@ + + + + + + + /datum/shape/rectangle - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/shape/rectangle + + + +

+ +

A simple geometric shape for testing collisions and intersections. This one is an axis-aligned rectangle.

+ +

Vars

heightDistance from the shape's topmost to bottommost extent.
widthDistance from the shape's leftmost to rightmost extent.
+

Var Details

height + + + + +

+

Distance from the shape's topmost to bottommost extent.

width + + + + +

+

Distance from the shape's leftmost to rightmost extent.

+ + + diff --git a/datum/shape/rectangle/square.html b/datum/shape/rectangle/square.html new file mode 100644 index 000000000000..1cf927637e54 --- /dev/null +++ b/datum/shape/rectangle/square.html @@ -0,0 +1,36 @@ + + + + + + + /datum/shape/rectangle/square - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/shape/rectangle/square + + + +

+ +

A simple geometric shape for testing collisions and intersections. This one is an axis-aligned square.

+

Vars

lengthDistance between the shape's opposing extents.
+

Var Details

length + + + + +

+

Distance between the shape's opposing extents.

+ + + diff --git a/datum/shuttle/ferry/marine.html b/datum/shuttle/ferry/marine.html new file mode 100644 index 000000000000..dd1296a7454a --- /dev/null +++ b/datum/shuttle/ferry/marine.html @@ -0,0 +1,43 @@ + + + + + + + /datum/shuttle/ferry/marine - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/shuttle/ferry/marine + + + +

+ + + +

Vars

automated_launchCan the shuttle depart automatically?
automated_launch_delayHow many seconds past shuttle cooldown for the shuttle to automatically depart (if possible)
+

Var Details

automated_launch + + + + +

+

Can the shuttle depart automatically?

automated_launch_delay + + + + +

+

How many seconds past shuttle cooldown for the shuttle to automatically depart (if possible)

+ + + diff --git a/datum/shuttle/ferry/supply.html b/datum/shuttle/ferry/supply.html new file mode 100644 index 000000000000..1dae746154e4 --- /dev/null +++ b/datum/shuttle/ferry/supply.html @@ -0,0 +1,36 @@ + + + + + + + /datum/shuttle/ferry/supply - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/shuttle/ferry/supply + + + +

+ + +

Vars

elevator_animationUsed to mirrors the turfs (and their contents) on the elevator when raising/lowering, so they don't instantly teleport or vanish.
+

Var Details

elevator_animation + + + + +

+

Used to mirrors the turfs (and their contents) on the elevator when raising/lowering, so they don't instantly teleport or vanish.

+ + + diff --git a/datum/skill.html b/datum/skill.html new file mode 100644 index 000000000000..8e04c4709bf6 --- /dev/null +++ b/datum/skill.html @@ -0,0 +1,57 @@ + + + + + + + /datum/skill - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/skill + + + +

+ + + + + +

Vars

max_skill_levelthe max level this skill can be, used for tgui
readable_skill_nameused for the view UI
skill_levelLevel of skill in this... skill
skill_nameName of the skill
+

Var Details

max_skill_level + + + + +

+

the max level this skill can be, used for tgui

readable_skill_name + + + + +

+

used for the view UI

skill_level + + + + +

+

Level of skill in this... skill

skill_name + + + + +

+

Name of the skill

+ + + diff --git a/datum/skills.html b/datum/skills.html new file mode 100644 index 000000000000..d3bd52ef6845 --- /dev/null +++ b/datum/skills.html @@ -0,0 +1,37 @@ + + + + + + + /datum/skills - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/skills + + + +

+ +

Skill with an extra S at the end is a collection of multiple skills. Basically a skillSET +This is to organize and provide a common interface to the huge heap of skills there are

+

Vars

nameThe name of the skillset
+

Var Details

name + + + + +

+

The name of the skillset

+ + + diff --git a/datum/soundOutput.html b/datum/soundOutput.html new file mode 100644 index 000000000000..f333d648c0c7 --- /dev/null +++ b/datum/soundOutput.html @@ -0,0 +1,57 @@ + + + + + + + /datum/soundOutput - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/soundOutput + + + +

+ + + + + +

Vars

owner_environmentCurrently applied environmental reverb.

Procs

set_owner_environmentPushes new_environment to owner and updates owner_environment var.
update_area_environmentPulls mob's area's sound_environment and applies if necessary and not overridden.
update_mob_environment_overridePulls mob's sound_environment_override and applies if necessary.
+

Var Details

owner_environment + + + + +

+

Currently applied environmental reverb.

Proc Details

set_owner_environment +

+

Pushes new_environment to owner and updates owner_environment var.

update_area_environment +

+

Pulls mob's area's sound_environment and applies if necessary and not overridden.

update_mob_environment_override +

+

Pulls mob's sound_environment_override and applies if necessary.

+ + + diff --git a/datum/space_level.html b/datum/space_level.html new file mode 100644 index 000000000000..9d788619bfdb --- /dev/null +++ b/datum/space_level.html @@ -0,0 +1,36 @@ + + + + + + + /datum/space_level - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

NAME MISSING + + + +

+ + +

Vars

boundsBounds at time of loading the map
+

Var Details

bounds + + + + +

+

Bounds at time of loading the map

+ + + diff --git a/datum/specialist_set.html b/datum/specialist_set.html new file mode 100644 index 000000000000..c1ebaaf7f6fe --- /dev/null +++ b/datum/specialist_set.html @@ -0,0 +1,85 @@ + + + + + + + /datum/specialist_set - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/specialist_set + + + +

+ + + + + + + + + +

Vars

available_kit_numHow many more of this spec set can be picked from /obj/item/spec_kit
available_vendor_numHow many more of this spec set can be picked from spec vendors
incompatible_setsList of typepaths that are incompatible with this set, meaning it'll subtract 1 from their vendor/kit num as well
kit_typepathWhat typepath to spawn for the redeemer if from a kit
nameHuman-readable name for the specialist set
role_nameWhat is the role title that should go on ID cards
skill_to_giveWhat skill tier to give the person redeeming the set
trait_to_giveWhat trait to give the person redeeming the set
+

Var Details

available_kit_num + + + + +

+

How many more of this spec set can be picked from /obj/item/spec_kit

available_vendor_num + + + + +

+

How many more of this spec set can be picked from spec vendors

incompatible_sets + + + + +

+

List of typepaths that are incompatible with this set, meaning it'll subtract 1 from their vendor/kit num as well

kit_typepath + + + + +

+

What typepath to spawn for the redeemer if from a kit

name + + + + +

+

Human-readable name for the specialist set

role_name + + + + +

+

What is the role title that should go on ID cards

skill_to_give + + + + +

+

What skill tier to give the person redeeming the set

trait_to_give + + + + +

+

What trait to give the person redeeming the set

+ + + diff --git a/datum/species.html b/datum/species.html new file mode 100644 index 000000000000..66da214141ff --- /dev/null +++ b/datum/species.html @@ -0,0 +1,85 @@ + + + + + + + /datum/species - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/species + + + +

+ + + + + + + + + +

Vars

groupUsed for isx(y) checking of species groups
knock_down_reductionFactor of reduction of KnockDown duration.
knock_out_reductionFactor of reduction of KnockOut duration.
mob_inherent_traitsStatus traits to give to the mob.
stun_reductionFactor of reduction of Stun duration.
weed_slowdown_multIf different from 1, a signal is registered on post_spawn().

Procs

apply_signalsApply signals to the human
open_emote_panelOverride to add an emote panel to a species
+

Var Details

group + + + + +

+

Used for isx(y) checking of species groups

knock_down_reduction + + + + +

+

Factor of reduction of KnockDown duration.

knock_out_reduction + + + + +

+

Factor of reduction of KnockOut duration.

mob_inherent_traits + + + + +

+

Status traits to give to the mob.

stun_reduction + + + + +

+

Factor of reduction of Stun duration.

weed_slowdown_mult + + + + +

+

If different from 1, a signal is registered on post_spawn().

Proc Details

apply_signals +

+

Apply signals to the human

open_emote_panel +

+

Override to add an emote panel to a species

+ + + diff --git a/datum/species/synthetic/colonial/working_joe.html b/datum/species/synthetic/colonial/working_joe.html new file mode 100644 index 000000000000..3c864dafa6f3 --- /dev/null +++ b/datum/species/synthetic/colonial/working_joe.html @@ -0,0 +1,43 @@ + + + + + + + /datum/species/synthetic/colonial/working_joe - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Working Joe + + + +

+ + + +

Vars

emote_panel_typeUsed to assign which variant of emote_panel to give to user

Procs

open_emote_panelOpen the WJ's emote panel, which allows them to use voicelines
+

Var Details

emote_panel_type + + + + +

+

Used to assign which variant of emote_panel to give to user

Proc Details

open_emote_panel +

+

Open the WJ's emote panel, which allows them to use voicelines

+ + + diff --git a/datum/species/yautja.html b/datum/species/yautja.html new file mode 100644 index 000000000000..dc3bad62e094 --- /dev/null +++ b/datum/species/yautja.html @@ -0,0 +1,35 @@ + + + + + + + /datum/species/yautja - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Yautja + + + +

+ + +

Procs

open_emote_panelOpen the Yautja emote panel, which allows them to use their emotes easier.

Proc Details

open_emote_panel +

+

Open the Yautja emote panel, which allows them to use their emotes easier.

+ + + diff --git a/datum/squad.html b/datum/squad.html new file mode 100644 index 000000000000..3df581a8aa73 --- /dev/null +++ b/datum/squad.html @@ -0,0 +1,241 @@ + + + + + + + /datum/squad - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/squad + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

accessWhich special access do we grant them
activeWhether it is visible in overwatch
armor_alphaThe alpha for the armor overlay used by equipment color
chat_colorColor for the squad marines langchat
equipment_colorColor for the squad marines gear overlays
factionWhich faction the squad is in
lead_iconSquad leaders icon
max_engineersmaximum # of engineers allowed in the squad
max_leadersmaximum # of squad leaders allowed in the squad
max_medicsmaximum # of squad medics allowed in the squad
max_positionsMaximum number allowed in a squad. Defaults to infinite
max_smartgunmaximum # of smartgunners allowed in the squad
max_specialistsmaximum # of specs allowed in the squad
max_tlmaximum # of fireteam leaders allowed in the suqad
nameName of the squad
omni_squad_vendorCan use any squad vendor regardless of squad connection
prepend_squad_name_to_assignmentShould we add the name of our squad in front of their name? Ex: Alpha Hospital Corpsman
primary_objectiveText strings, not HTML safe so don't use it without encoding
radio_freqSquad headsets default radio frequency
roundstartWhether this squad can be picked at roundstart
squad_typeWhat will the assistant squad leader be called
tracking_idSquads ID that is set on New()
usableWhether this squad can be used by marines
use_stripe_overlayIf uses the overlay

Procs

assume_overwatchSets an overwatch officer for the squad, returning TRUE on success
clear_ref_trackingClear deletion signal as needed for mob - to call after removal
personnel_deletedClear references in squad listing upon deletion. Zap also erases the kept records. +NOTE: zap will be set true for a forced COMSIG_PARENT_QDELETING
release_overwatchExplicitely relinquish overwatch control
send_maptextDisplays a message to squad members directly on the game map
send_messageDisplays a message to the squad members in chat
+

Var Details

access + + + + +

+

Which special access do we grant them

active + + + + +

+

Whether it is visible in overwatch

armor_alpha + + + + +

+

The alpha for the armor overlay used by equipment color

chat_color + + + + +

+

Color for the squad marines langchat

equipment_color + + + + +

+

Color for the squad marines gear overlays

faction + + + + +

+

Which faction the squad is in

lead_icon + + + + +

+

Squad leaders icon

max_engineers + + + + +

+

maximum # of engineers allowed in the squad

max_leaders + + + + +

+

maximum # of squad leaders allowed in the squad

max_medics + + + + +

+

maximum # of squad medics allowed in the squad

max_positions + + + + +

+

Maximum number allowed in a squad. Defaults to infinite

max_smartgun + + + + +

+

maximum # of smartgunners allowed in the squad

max_specialists + + + + +

+

maximum # of specs allowed in the squad

max_tl + + + + +

+

maximum # of fireteam leaders allowed in the suqad

name + + + + +

+

Name of the squad

omni_squad_vendor + + + + +

+

Can use any squad vendor regardless of squad connection

prepend_squad_name_to_assignment + + + + +

+

Should we add the name of our squad in front of their name? Ex: Alpha Hospital Corpsman

primary_objective + + + + +

+

Text strings, not HTML safe so don't use it without encoding

radio_freq + + + + +

+

Squad headsets default radio frequency

roundstart + + + + +

+

Whether this squad can be picked at roundstart

squad_type + + + + +

+

What will the assistant squad leader be called

tracking_id + + + + +

+

Squads ID that is set on New()

usable + + + + +

+

Whether this squad can be used by marines

use_stripe_overlay + + + + +

+

If uses the overlay

Proc Details

assume_overwatch +

+

Sets an overwatch officer for the squad, returning TRUE on success

clear_ref_tracking +

+

Clear deletion signal as needed for mob - to call after removal

personnel_deleted +

+

Clear references in squad listing upon deletion. Zap also erases the kept records. +NOTE: zap will be set true for a forced COMSIG_PARENT_QDELETING

release_overwatch +

+

Explicitely relinquish overwatch control

send_maptext +

+

Displays a message to squad members directly on the game map

send_message +

+

Displays a message to the squad members in chat

+ + + diff --git a/datum/stack_canary.html b/datum/stack_canary.html new file mode 100644 index 000000000000..b9b244e4878c --- /dev/null +++ b/datum/stack_canary.html @@ -0,0 +1,35 @@ + + + + + + + /datum/stack_canary - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/stack_canary + + + +

+ +

Stack canary. Will go away if the stack it was primed by is ended by byond for return or stack overflow reasons.

+

Procs

use_variableempty proc to avoid warnings about unused variables. Call this proc on your canary in the stack it's watching.

Proc Details

use_variable +

+

empty proc to avoid warnings about unused variables. Call this proc on your canary in the stack it's watching.

+ + + diff --git a/datum/stack_end_detector.html b/datum/stack_end_detector.html new file mode 100644 index 000000000000..9d512ccf013f --- /dev/null +++ b/datum/stack_end_detector.html @@ -0,0 +1,47 @@ + + + + + + + /datum/stack_end_detector - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/stack_end_detector + + + +

+ +

Stack End Detector. +Can detect if a given code stack has exited, used by the mc for stack overflow detection.

+ +

Procs

checkReturns true if the stack is still going. Calling before the canary has been primed also returns true
prime_canary

Proc Details

check +

+

Returns true if the stack is still going. Calling before the canary has been primed also returns true

prime_canary +

+
+ + + diff --git a/datum/static_light_source.html b/datum/static_light_source.html new file mode 100644 index 000000000000..7a4c8a18e307 --- /dev/null +++ b/datum/static_light_source.html @@ -0,0 +1,127 @@ + + + + + + + /datum/static_light_source - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/static_light_source + + + +

+ + + + + + + + + + + + + + + +

Vars

appliedWhether we have applied our light yet or not.
effect_strList used to store how much we're affecting corners.
light_colorThe colour of the light, string, decomposed by parse_light_color()
light_powerIntensity of the emitter light.
light_rangeThe range of the emitted light.
needs_updatewhether we are to be added to SSlighting's static_sources_queue list for an update
pixel_turfThe turf the top_atom appears to over.
source_atomThe atom that we belong to.
source_turfThe turf under the source atom.
top_atomThe atom we're emitting light from (for example a mob if we're from a flashlight that's being held).

Procs

force_updateWill force an update without checking if it's actually needed.
remove_lumThis is the define used to calculate falloff.
updateThis proc will cause the light source to update the top atom, and add itself to the update queue.
vis_updateWill cause the light source to recalculate turfs that were removed or added to visibility only.
+

Var Details

applied + + + + +

+

Whether we have applied our light yet or not.

effect_str + + + + +

+

List used to store how much we're affecting corners.

light_color + + + + +

+

The colour of the light, string, decomposed by parse_light_color()

light_power + + + + +

+

Intensity of the emitter light.

light_range + + + + +

+

The range of the emitted light.

needs_update + + + + +

+

whether we are to be added to SSlighting's static_sources_queue list for an update

pixel_turf + + + + +

+

The turf the top_atom appears to over.

source_atom + + + + +

+

The atom that we belong to.

source_turf + + + + +

+

The turf under the source atom.

top_atom + + + + +

+

The atom we're emitting light from (for example a mob if we're from a flashlight that's being held).

Proc Details

force_update +

+

Will force an update without checking if it's actually needed.

remove_lum +

+

This is the define used to calculate falloff.

update +

+

This proc will cause the light source to update the top atom, and add itself to the update queue.

vis_update +

+

Will cause the light source to recalculate turfs that were removed or added to visibility only.

+ + + diff --git a/datum/static_lighting_corner.html b/datum/static_lighting_corner.html new file mode 100644 index 000000000000..2de31718b203 --- /dev/null +++ b/datum/static_lighting_corner.html @@ -0,0 +1,43 @@ + + + + + + + /datum/static_lighting_corner - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/static_lighting_corner + + + +

+ + + +

Vars

largest_color_luminositythe maximum of lum_r, lum_g, and lum_b. if this is > 1 then the three cached color values are divided by this
needs_updatewhether we are to be added to SSlighting's corners_queue list for an update
+

Var Details

largest_color_luminosity + + + + +

+

the maximum of lum_r, lum_g, and lum_b. if this is > 1 then the three cached color values are divided by this

needs_update + + + + +

+

whether we are to be added to SSlighting's corners_queue list for an update

+ + + diff --git a/datum/static_lighting_object.html b/datum/static_lighting_object.html new file mode 100644 index 000000000000..c0b759e33778 --- /dev/null +++ b/datum/static_lighting_object.html @@ -0,0 +1,50 @@ + + + + + + + /datum/static_lighting_object - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/static_lighting_object + + + +

+ + + + +

Vars

affected_turfthe turf that our light is applied to
current_underlaythe underlay we are currently applying to our turf to apply light
needs_updatewhether we are already in the SSlighting.objects_queue list
+

Var Details

affected_turf + + + + +

+

the turf that our light is applied to

current_underlay + + + + +

+

the underlay we are currently applying to our turf to apply light

needs_update + + + + +

+

whether we are already in the SSlighting.objects_queue list

+ + + diff --git a/datum/status_effect.html b/datum/status_effect.html new file mode 100644 index 000000000000..f59d5e58482e --- /dev/null +++ b/datum/status_effect.html @@ -0,0 +1,288 @@ + + + + + + + /datum/status_effect - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/status_effect + + + +

+ +

Status effects are used to apply temporary or permanent effects to mobs. +This file contains their code, plus code for applying and removing them.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

alert_typeThe typepath to the alert thrown by the status effect when created. +Status effect "name"s and "description"s are shown to the owner here.
durationWhen set initially / in on_creation, this is how long the status effect lasts in deciseconds. +While processing, this becomes the world.time when the status effect will expire. +-1 = infinite duration.
duration_setTruthy once duration is initialized
idThe ID of the effect. ID is used in adding and removing effects to check for duplicates, among other things.
linked_alertThe alert itself, created in [proc/on_creation] (if alert_type is specified).
on_remove_on_mob_deleteIf TRUE, we call [proc/on_remove] when owner is deleted. Otherwise, we call [proc/be_replaced].
ownerThe mob affected by the status effect.
processing_speedUsed to define if the status effect should be using SSfasteffects or SSeffects
remove_on_fullhealDo we self-terminate when a fullheal is called? // CM note: this is rejuvenate
status_typeHow many of the effect can be on one mob, and/or what happens when you try to add a duplicate.
tick_intervalWhen set initially / in on_creation, this is how long between [proc/tick] calls in deciseconds. +Note that this cannot be faster than the processing subsystem you choose to fire the effect on. (See: [var/processing_speed]) +While processing, this becomes the world.time when the next tick will occur. +-1 = will prevent ticks, and if duration is also unlimited (-1), stop processing wholesale.
timeridTimer ID for triggering the effect end precisely

Procs

adjust_durationUpdates the duration of the status effect to the given [amount] of deciseconds from its current set ending
be_replacedCalled instead of on_remove when a status effect +of status_type STATUS_EFFECT_REPLACE is replaced by itself, +or when a status effect with on_remove_on_mob_delete +set to FALSE has its mob deleted
before_removeCalled before being fully removed (before on_remove) +Returning FALSE will cancel removal
get_duration_leftGet duration left on the effect
get_examine_textGets and formats examine text associated with our status effect. +Return 'null' to have no examine text appear (default behavior).
nextmove_adjustAdds nextmove adjustment additiviely to the owner while applied
nextmove_modifierAdds nextmove modifier multiplicatively to the owner while applied
on_applyCalled when the effect is applied in on_created +Returning FALSE will cause it to delete itself during creation instead.
on_creationCalled from New() with any supplied status effect arguments. +Not guaranteed to exist by the end. +Returning FALSE from on_apply will stop on_creation and self-delete the effect.
on_removeCalled whenever the buff expires or is removed (qdeleted) +Note that at the point this is called, it is out of the +owner's status_effects list, but owner is not yet null
refreshCalled when a status effect of status_type STATUS_EFFECT_REFRESH +has its duration refreshed in apply_status_effect - is passed New() args
remove_durationRemove [amount] of duration (in deciseconds) from the status effect. Compatibility handler with /tg/.
remove_effect_on_healSignal proc for COMSIG_LIVING_REJUVENATED to remove us on fullheal
tickCalled every tick from process(). +This is only called of tick_interval is not -1.
timer_callbackTimer invocation callback to end the effect
update_durationUpdates the duration of the status effect to the given [amount] of deciseconds from now, qdeling / ending if we eclipse the current world time. +If increment is truthy, we only update if the resulting amount is higher.
update_particlesUpdates the particles for the status effects +Should be handled by subtypes!
update_timerUpdates the timer used for precisely ending the effect +We force_refresh if the duration changed otherwise than ticking down
+

Var Details

alert_type + + + + +

+

The typepath to the alert thrown by the status effect when created. +Status effect "name"s and "description"s are shown to the owner here.

duration + + + + +

+

When set initially / in on_creation, this is how long the status effect lasts in deciseconds. +While processing, this becomes the world.time when the status effect will expire. +-1 = infinite duration.

duration_set + + + + +

+

Truthy once duration is initialized

id + + + + +

+

The ID of the effect. ID is used in adding and removing effects to check for duplicates, among other things.

linked_alert + + + + +

+

The alert itself, created in [proc/on_creation] (if alert_type is specified).

on_remove_on_mob_delete + + + + +

+

If TRUE, we call [proc/on_remove] when owner is deleted. Otherwise, we call [proc/be_replaced].

owner + + + + +

+

The mob affected by the status effect.

processing_speed + + + + +

+

Used to define if the status effect should be using SSfasteffects or SSeffects

remove_on_fullheal + + + + +

+

Do we self-terminate when a fullheal is called? // CM note: this is rejuvenate

status_type + + + + +

+

How many of the effect can be on one mob, and/or what happens when you try to add a duplicate.

tick_interval + + + + +

+

When set initially / in on_creation, this is how long between [proc/tick] calls in deciseconds. +Note that this cannot be faster than the processing subsystem you choose to fire the effect on. (See: [var/processing_speed]) +While processing, this becomes the world.time when the next tick will occur. +-1 = will prevent ticks, and if duration is also unlimited (-1), stop processing wholesale.

timerid + + + + +

+

Timer ID for triggering the effect end precisely

Proc Details

adjust_duration +

+

Updates the duration of the status effect to the given [amount] of deciseconds from its current set ending

be_replaced +

+

Called instead of on_remove when a status effect +of status_type STATUS_EFFECT_REPLACE is replaced by itself, +or when a status effect with on_remove_on_mob_delete +set to FALSE has its mob deleted

before_remove +

+

Called before being fully removed (before on_remove) +Returning FALSE will cancel removal

get_duration_left +

+

Get duration left on the effect

get_examine_text +

+

Gets and formats examine text associated with our status effect. +Return 'null' to have no examine text appear (default behavior).

nextmove_adjust +

+

Adds nextmove adjustment additiviely to the owner while applied

nextmove_modifier +

+

Adds nextmove modifier multiplicatively to the owner while applied

on_apply +

+

Called when the effect is applied in on_created +Returning FALSE will cause it to delete itself during creation instead.

on_creation +

+

Called from New() with any supplied status effect arguments. +Not guaranteed to exist by the end. +Returning FALSE from on_apply will stop on_creation and self-delete the effect.

on_remove +

+

Called whenever the buff expires or is removed (qdeleted) +Note that at the point this is called, it is out of the +owner's status_effects list, but owner is not yet null

refresh +

+

Called when a status effect of status_type STATUS_EFFECT_REFRESH +has its duration refreshed in apply_status_effect - is passed New() args

remove_duration +

+

Remove [amount] of duration (in deciseconds) from the status effect. Compatibility handler with /tg/.

remove_effect_on_heal +

+

Signal proc for COMSIG_LIVING_REJUVENATED to remove us on fullheal

tick +

+

Called every tick from process(). +This is only called of tick_interval is not -1.

+

Note that every tick =/= every processing cycle.

+

timer_callback +

+

Timer invocation callback to end the effect

update_duration +

+

Updates the duration of the status effect to the given [amount] of deciseconds from now, qdeling / ending if we eclipse the current world time. +If increment is truthy, we only update if the resulting amount is higher.

update_particles +

+

Updates the particles for the status effects +Should be handled by subtypes!

update_timer +

+

Updates the timer used for precisely ending the effect +We force_refresh if the duration changed otherwise than ticking down

+ + + diff --git a/datum/status_effect/grouped.html b/datum/status_effect/grouped.html new file mode 100644 index 000000000000..c11fee4b0620 --- /dev/null +++ b/datum/status_effect/grouped.html @@ -0,0 +1,36 @@ + + + + + + + /datum/status_effect/grouped - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/status_effect/grouped + + + +

+ +

Status effect from multiple sources, when all sources are removed, so is the effect

+

Vars

sourcesA list of all sources applying this status effect. Sources are a list of keys
+

Var Details

sources + + + + +

+

A list of all sources applying this status effect. Sources are a list of keys

+ + + diff --git a/datum/status_effect/limited_buff.html b/datum/status_effect/limited_buff.html new file mode 100644 index 000000000000..91a7bba104b1 --- /dev/null +++ b/datum/status_effect/limited_buff.html @@ -0,0 +1,50 @@ + + + + + + + /datum/status_effect/limited_buff - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/status_effect/limited_buff + + + +

+ +

These effects reapply their on_apply() effect when refreshed while stacks < max_stacks.

+ + +

Vars

max_stacksHow many stacks we can have maximum
stacksHow many stacks we currently have

Procs

maxed_outCalled whenever the buff is refreshed when there are more stacks than max_stacks.
+

Var Details

max_stacks + + + + +

+

How many stacks we can have maximum

stacks + + + + +

+

How many stacks we currently have

Proc Details

maxed_out +

+

Called whenever the buff is refreshed when there are more stacks than max_stacks.

+ + + diff --git a/datum/status_effect/stacking.html b/datum/status_effect/stacking.html new file mode 100644 index 000000000000..678b1ca4b7a0 --- /dev/null +++ b/datum/status_effect/stacking.html @@ -0,0 +1,147 @@ + + + + + + + /datum/status_effect/stacking - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/status_effect/stacking + + + +

+ +

Status effects that can stack.

+ + + + + + + + + + + + + + + +

Vars

consumed_on_thresholdIf TRUE, the status effect is consumed / removed when stack_threshold is met
delay_before_decay(first stack will be removed at this time plus tick_interval)
max_stacksThe maximum number of stacks that can be applied
stack_decayHow many stacks are lost per tick (decay trigger)
stack_thresholdThe threshold for having special effects occur when a certain stack number is reached
stacksHow many stacks are currently accumulated. +Also, the default stacks number given on application.
threshold_crossedSet to true once the stack_threshold is crossed, and false once it falls back below

Procs

add_stacksAdd (or remove) [stacks_added] stacks to our current stack count.
can_gain_stacksWhether the owner can currently gain stacks or not +Return FALSE if the owner is not in a valid state, or TRUE otherwise
can_have_statusWhether the owner can have the status effect. +Return FALSE if the owner is not in a valid state (self-deletes the effect), or TRUE otherwise
fadeout_effectEffects that occur if the status is removed due to being under 1 remaining stack
on_threshold_crossCalled when the stack_threshold is crossed (stacks go over the threshold)
on_threshold_dropCalled when the stack_threshold is uncrossed / dropped (stacks go under the threshold after being over it)
stack_decay_effectRuns every time tick(), causes stacks to decay over time
stacks_consumed_effectEffects that occur if the status effect is removed due to the stack_threshold being crossed
threshold_cross_effectEffects that occur when the stack count crosses stack_threshold
+

Var Details

consumed_on_threshold + + + + +

+

If TRUE, the status effect is consumed / removed when stack_threshold is met

delay_before_decay + + + + +

+

(first stack will be removed at this time plus tick_interval)

max_stacks + + + + +

+

The maximum number of stacks that can be applied

stack_decay + + + + +

+

How many stacks are lost per tick (decay trigger)

stack_threshold + + + + +

+

The threshold for having special effects occur when a certain stack number is reached

stacks + + + + +

+

How many stacks are currently accumulated. +Also, the default stacks number given on application.

threshold_crossed + + + + +

+

Set to true once the stack_threshold is crossed, and false once it falls back below

Proc Details

add_stacks +

+

Add (or remove) [stacks_added] stacks to our current stack count.

can_gain_stacks +

+

Whether the owner can currently gain stacks or not +Return FALSE if the owner is not in a valid state, or TRUE otherwise

can_have_status +

+

Whether the owner can have the status effect. +Return FALSE if the owner is not in a valid state (self-deletes the effect), or TRUE otherwise

fadeout_effect +

+

Effects that occur if the status is removed due to being under 1 remaining stack

on_threshold_cross +

+

Called when the stack_threshold is crossed (stacks go over the threshold)

on_threshold_drop +

+

Called when the stack_threshold is uncrossed / dropped (stacks go under the threshold after being over it)

stack_decay_effect +

+

Runs every time tick(), causes stacks to decay over time

stacks_consumed_effect +

+

Effects that occur if the status effect is removed due to the stack_threshold being crossed

threshold_cross_effect +

+

Effects that occur when the stack count crosses stack_threshold

+ + + diff --git a/datum/strip_menu.html b/datum/strip_menu.html new file mode 100644 index 000000000000..39996bf7cd21 --- /dev/null +++ b/datum/strip_menu.html @@ -0,0 +1,50 @@ + + + + + + + /datum/strip_menu - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/strip_menu + + + +

+ +

A representation of the stripping UI

+ + +

Vars

interactionsA lazy list of user mobs to a list of strip menu keys that they're interacting with
ownerThe owner who has the element /datum/element/strippable
strippableThe strippable element itself
+

Var Details

interactions + + + + +

+

A lazy list of user mobs to a list of strip menu keys that they're interacting with

owner + + + + +

+

The owner who has the element /datum/element/strippable

strippable + + + + +

+

The strippable element itself

+ + + diff --git a/datum/strippable_item.html b/datum/strippable_item.html new file mode 100644 index 000000000000..1ee3a7c93739 --- /dev/null +++ b/datum/strippable_item.html @@ -0,0 +1,142 @@ + + + + + + + /datum/strippable_item - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/strippable_item + + + +

+ +

A representation of an item that can be stripped down

+ + + + + + + + + + + + +

Vars

keyThe STRIPPABLE_ITEM_* key
warn_dangerous_clothingShould we warn about dangerous clothing?

Procs

alternate_actionPerforms an alternative action on this strippable_item. +has_alternate_action needs to be TRUE.
finish_equipThe proc that places the item on the source. This should not yield.
finish_unequipThe proc that unequips the item from the source. This should not yield.
get_alternate_actionReturns the ID of this item's strippable action. +Return null if there is no alternate action. +Any return value of this must be in StripMenu.
get_itemGets the item from the given source.
get_obscuringReturns a STRIPPABLE_OBSCURING_* define to report on whether or not this is obscured.
should_showReturns whether or not this item should show.
start_equipStart the equipping process. This is the proc you should yield in. +Returns TRUE/FALSE depending on if it is allowed.
start_unequipStart the unequipping process. This is the proc you should yield in. +Returns TRUE/FALSE depending on if it is allowed.
try_equipTries to equip the item onto the given source. +Returns TRUE/FALSE depending on if it is allowed. +This should be used for checking if an item CAN be equipped. +It should not perform the equipping itself.
try_unequipTries to unequip the item from the given source. +Returns TRUE/FALSE depending on if it is allowed. +This should be used for checking if it CAN be unequipped. +It should not perform the unequipping itself.
+

Var Details

key + + + + +

+

The STRIPPABLE_ITEM_* key

warn_dangerous_clothing + + + + +

+

Should we warn about dangerous clothing?

Proc Details

alternate_action +

+

Performs an alternative action on this strippable_item. +has_alternate_action needs to be TRUE.

finish_equip +

+

The proc that places the item on the source. This should not yield.

finish_unequip +

+

The proc that unequips the item from the source. This should not yield.

get_alternate_action +

+

Returns the ID of this item's strippable action. +Return null if there is no alternate action. +Any return value of this must be in StripMenu.

get_item +

+

Gets the item from the given source.

get_obscuring +

+

Returns a STRIPPABLE_OBSCURING_* define to report on whether or not this is obscured.

should_show +

+

Returns whether or not this item should show.

start_equip +

+

Start the equipping process. This is the proc you should yield in. +Returns TRUE/FALSE depending on if it is allowed.

start_unequip +

+

Start the unequipping process. This is the proc you should yield in. +Returns TRUE/FALSE depending on if it is allowed.

try_equip +

+

Tries to equip the item onto the given source. +Returns TRUE/FALSE depending on if it is allowed. +This should be used for checking if an item CAN be equipped. +It should not perform the equipping itself.

try_unequip +

+

Tries to unequip the item from the given source. +Returns TRUE/FALSE depending on if it is allowed. +This should be used for checking if it CAN be unequipped. +It should not perform the unequipping itself.

+ + + diff --git a/datum/strippable_item/mob_item_slot.html b/datum/strippable_item/mob_item_slot.html new file mode 100644 index 000000000000..31191e9f2097 --- /dev/null +++ b/datum/strippable_item/mob_item_slot.html @@ -0,0 +1,50 @@ + + + + + + + /datum/strippable_item/mob_item_slot - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/strippable_item/mob_item_slot + + + +

+ +

A preset for equipping items onto mob slots

+ + +

Vars

item_slotThe ITEM_SLOT_* to equip to.

Procs

finish_unequip_mobA utility function for /datum/strippable_items to finish unequipping an item from a mob.
start_unequip_mobA utility function for /datum/strippable_items to start unequipping an item from a mob.
+

Var Details

item_slot + + + + +

+

The ITEM_SLOT_* to equip to.

Proc Details

finish_unequip_mob +

+

A utility function for /datum/strippable_items to finish unequipping an item from a mob.

start_unequip_mob +

+

A utility function for /datum/strippable_items to start unequipping an item from a mob.

+ + + diff --git a/datum/supply_packs.html b/datum/supply_packs.html new file mode 100644 index 000000000000..68e1b71ed267 --- /dev/null +++ b/datum/supply_packs.html @@ -0,0 +1,73 @@ + + + + + + + /datum/supply_packs - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Basic supply pack. + + + +

+ + + + + + + +

Vars

containertypeDetermine the price of the crate. Give it a value between 7 and 100 to avoid breaking the game. +If this variable is null (not if it's an empty list), and so is contains, it won't show up on the order computer.
containsIf this variable is null (not if it's an empty list), and so is containertype, it won't show up on the order computer.
crate_heatHow much "heat" this crate adds, too much heat will send an investigation. Only use for contraband.
dollar_costHow many W-Y dollars are deducted from the supply controller. Only use for contraband.
groupTell if the crate is a contraband value 1 or not 0.
randomised_num_containedCan this pack be bought? These packs don't show up at all - they have to be spawned externally (fe: DEFCON ASRS)
+

Var Details

containertype + + + + +

+

Determine the price of the crate. Give it a value between 7 and 100 to avoid breaking the game. +If this variable is null (not if it's an empty list), and so is contains, it won't show up on the order computer.

contains + + + + +

+

If this variable is null (not if it's an empty list), and so is containertype, it won't show up on the order computer.

crate_heat + + + + +

+

How much "heat" this crate adds, too much heat will send an investigation. Only use for contraband.

dollar_cost + + + + +

+

How many W-Y dollars are deducted from the supply controller. Only use for contraband.

group + + + + +

+

Tell if the crate is a contraband value 1 or not 0.

randomised_num_contained + + + + +

+

Can this pack be bought? These packs don't show up at all - they have to be spawned externally (fe: DEFCON ASRS)

+ + + diff --git a/datum/supply_packs_asrs.html b/datum/supply_packs_asrs.html new file mode 100644 index 000000000000..364fb5278d7b --- /dev/null +++ b/datum/supply_packs_asrs.html @@ -0,0 +1,50 @@ + + + + + + + /datum/supply_packs_asrs - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/supply_packs_asrs + + + +

+ + + + +

Vars

costHow likely we are to select this pack over others
poolWhich pool of ASRS automatically dispensed supplies this belongs to
reference_packageWhat supply pack would this dispense
+

Var Details

cost + + + + +

+

How likely we are to select this pack over others

pool + + + + +

+

Which pool of ASRS automatically dispensed supplies this belongs to

reference_package + + + + +

+

What supply pack would this dispense

+ + + diff --git a/datum/surgery.html b/datum/surgery.html new file mode 100644 index 000000000000..b9789f10399c --- /dev/null +++ b/datum/surgery.html @@ -0,0 +1,146 @@ + + + + + + + /datum/surgery - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

surgery + + + +

+ +

Base surgery datum and procs. There is an important distinction between surgery datums and surgery steps. +The surgery is a separate instance for each individual operation; the steps are shared globally. +datum/surgery and datum/surgery_step are intertwined. The surgery calls the step which modifies the surgery. +Defines are in __DEFINES/human.dm and __DEFINES/surgery.dm.

+ + + + + + + + + + + + + + + +

Vars

affected_limbThe limb the surgery is being performed on. If designing a surgery for a species without limbs, this var won't be usable.
invasivenessHow deep the incision must be before this operation is a valid option.
locationThe location this instance of the surgery is being performed on.
lying_requiredDoes the victim needs to be lying down? Surgeries that can be performed while standing aren't affected by the surface the patient is on.
pain_reduction_requiredHow strong a level of anesthesia is needed to avoid risking pain causing a step to fail?
possible_locsList of possible locations the surgery can be performed on. This is target zones: DEFENSE_ZONES_LIVING lists all options. ALL_LIMBS doesn't include eyes/mouth. +Note also that steps don't check this and it is possible to include a step that can't be performed on a target limb.
priorityWhen initiating surgeries, this defines their order when listed in initiation selector or 'you can't use this tool for anything, but could x, y, or z' messages.
required_surgery_skillHow much training is needed to do this surgery?
requires_bodypartTRUE if the surgery requires a non-destroyed limb; FALSE if it requires a destroyed one, or doesn't need a limb.
requires_bodypart_typeStatus flag(s) required on the target limb to perform an operation. NONE for any limb type. (FLAG|FLAG) is an OR check, granular this-but-not-this or this-and-this checks should be in can_start()
self_operableCan the surgery be performed on yourself?
statusThe step the surgery is currently on. When status > number of steps, the surgery ends.
stepsList of steps in the surgery.
target_mobtypesWhat species can this be performed on?

Procs

attempt_next_stepUsed on attackby and attackhand; TRUE means it stops the attack there, FALSE means it performs an item/open hand attack. CHECK OPENHAND ATTACK IS BLOCKED PROPERLY
can_startCatch-all proc for additional preconditions for starting the surgery. Return FALSE if the surgery can't be done.
+

Var Details

affected_limb + + + + +

+

The limb the surgery is being performed on. If designing a surgery for a species without limbs, this var won't be usable.

invasiveness + + + + +

+

How deep the incision must be before this operation is a valid option.

location + + + + +

+

The location this instance of the surgery is being performed on.

lying_required + + + + +

+

Does the victim needs to be lying down? Surgeries that can be performed while standing aren't affected by the surface the patient is on.

pain_reduction_required + + + + +

+

How strong a level of anesthesia is needed to avoid risking pain causing a step to fail?

possible_locs + + + + +

+

List of possible locations the surgery can be performed on. This is target zones: DEFENSE_ZONES_LIVING lists all options. ALL_LIMBS doesn't include eyes/mouth. +Note also that steps don't check this and it is possible to include a step that can't be performed on a target limb.

priority + + + + +

+

When initiating surgeries, this defines their order when listed in initiation selector or 'you can't use this tool for anything, but could x, y, or z' messages.

required_surgery_skill + + + + +

+

How much training is needed to do this surgery?

requires_bodypart + + + + +

+

TRUE if the surgery requires a non-destroyed limb; FALSE if it requires a destroyed one, or doesn't need a limb.

requires_bodypart_type + + + + +

+

Status flag(s) required on the target limb to perform an operation. NONE for any limb type. (FLAG|FLAG) is an OR check, granular this-but-not-this or this-and-this checks should be in can_start()

self_operable + + + + +

+

Can the surgery be performed on yourself?

status + + + + +

+

The step the surgery is currently on. When status > number of steps, the surgery ends.

steps + + + + +

+

List of steps in the surgery.

target_mobtypes + + + + +

+

What species can this be performed on?

Proc Details

attempt_next_step +

+

Used on attackby and attackhand; TRUE means it stops the attack there, FALSE means it performs an item/open hand attack. CHECK OPENHAND ATTACK IS BLOCKED PROPERLY

can_start +

+

Catch-all proc for additional preconditions for starting the surgery. Return FALSE if the surgery can't be done.

+ + + diff --git a/datum/surgery_step.html b/datum/surgery_step.html new file mode 100644 index 000000000000..b3da70be1cab --- /dev/null +++ b/datum/surgery_step.html @@ -0,0 +1,203 @@ + + + + + + + /datum/surgery_step - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/surgery_step + + + +

+ + + + + + + + + + + + + + + + + + + + + + + +

Vars

accept_any_itemDoes the surgery step accept any item? If true, ignores tools.
accept_handDoes the surgery step accept an open hand? If true and the surgeon uses their hand, doesn't check for tools. If wanting to make a +surgery where a hand can do it but tools are faster, give it a long default time and its tools modifiers above 100.
descDescription of the surgery used for need-different-tool messages, +format: (You could/can't )["sever the bone in the patient's limb"]( with \the [tool], or )[next step desc]. Can't refer to outside vars as step datums are global.
failure_soundfailure >:(
preop_soundpreop means "in Progress" sound
repeat_stepWhether this step continuously repeats as long as a criteria is met. If TRUE, consider setting skip_step_criteria() or using a failure() override to return TRUE to allow it to be canceled or skipped.
success_soundSound of success
timeHow long does the step take as a baseline? Modified by the surgeon's skills, the tool used, and, if the parent surgery requires the patient +to be lying down, the surface the patient is buckled to or resting on: surgery table, field surgical bed, rollerbed, table, open ground etc.
toolsAssociative list, tools and their step time multiplier. tools_typecache is assigned from from first to last, so if you have a +more specific subtype and its parent in the same list, place the subtype last to override the general parent. +Some are shared defines, some are set on the tool that uses them.
tools_cacheAssoc. list. This is generated on init and is something like an inverse typecache. All types and subtypes of valid tools are in it, associated to the +parent tool type. Example: for an item type /wxy/z, tool_check() returns tools_cache[/wxy/z]. If /wxy is in tools, this will == /wxy; otherwise it == NULL.

Procs

attempt_stepThe proc that actually performs the step.
completeFinishes the surgery and removes it from the target's lists.
extra_checksobj/limb/hand ? +does any extra checks that is is SUBTYPED to perform
failureThis is used for failed-step narration and relevant failure changes, often damage etc. If it returns TRUE, the step succeeds anyway. +tool_type may be a typepath or simply '1'. Note that a first step done on help-intent doesn't call failure(), it just ends harmlessly.
play_failure_soundPlays the failure sound
play_preop_soundPlays Preop Sounds
play_success_soundPlays the selected success sound
preopThis is used for beginning-step narration. tool_type may be a typepath or simply '1'.
repeat_step_criteriaUsed by repeating steps to determine whether to keep looping. tool_type may be a typepath or simply '1'.
skip_step_criteriaWhether this step is optional and can be skipped if it isn't the last step. There must be a step after it to skip to. As this may be used when +initiating a surgery and deciding whether to skip the first step, it must be able to work without reference to the parent surgery's status, +affected_limb, or location vars. Also, in that case there may be a wait between passing the check and beginning the step while the user picks a surgery.
successThis is used for end-step narration and relevant success changes - whatever the step is meant to do, if it isn't just flavour. tool_type may be a typepath or simply '1'.
tool_checkChecks the given tool, if any, against the step's tools list, and returns one of three options: the tool list key, TRUE, or FALSE to fail the surgery.
+

Var Details

accept_any_item + + + + +

+

Does the surgery step accept any item? If true, ignores tools.

accept_hand + + + + +

+

Does the surgery step accept an open hand? If true and the surgeon uses their hand, doesn't check for tools. If wanting to make a +surgery where a hand can do it but tools are faster, give it a long default time and its tools modifiers above 100.

desc + + + + +

+

Description of the surgery used for need-different-tool messages, +format: (You could/can't )["sever the bone in the patient's limb"]( with \the [tool], or )[next step desc]. Can't refer to outside vars as step datums are global.

failure_sound + + + + +

+

failure >:(

preop_sound + + + + +

+

preop means "in Progress" sound

repeat_step + + + + +

+

Whether this step continuously repeats as long as a criteria is met. If TRUE, consider setting skip_step_criteria() or using a failure() override to return TRUE to allow it to be canceled or skipped.

success_sound + + + + +

+

Sound of success

time + + + + +

+

How long does the step take as a baseline? Modified by the surgeon's skills, the tool used, and, if the parent surgery requires the patient +to be lying down, the surface the patient is buckled to or resting on: surgery table, field surgical bed, rollerbed, table, open ground etc.

tools + + + + +

+

Associative list, tools and their step time multiplier. tools_typecache is assigned from from first to last, so if you have a +more specific subtype and its parent in the same list, place the subtype last to override the general parent. +Some are shared defines, some are set on the tool that uses them.

tools_cache + + + + +

+

Assoc. list. This is generated on init and is something like an inverse typecache. All types and subtypes of valid tools are in it, associated to the +parent tool type. Example: for an item type /wxy/z, tool_check() returns tools_cache[/wxy/z]. If /wxy is in tools, this will == /wxy; otherwise it == NULL.

Proc Details

attempt_step +

+

The proc that actually performs the step.

complete +

+

Finishes the surgery and removes it from the target's lists.

extra_checks +

+

obj/limb/hand ? +does any extra checks that is is SUBTYPED to perform

failure +

+

This is used for failed-step narration and relevant failure changes, often damage etc. If it returns TRUE, the step succeeds anyway. +tool_type may be a typepath or simply '1'. Note that a first step done on help-intent doesn't call failure(), it just ends harmlessly.

play_failure_sound +

+

Plays the failure sound

play_preop_sound +

+

Plays Preop Sounds

play_success_sound +

+

Plays the selected success sound

preop +

+

This is used for beginning-step narration. tool_type may be a typepath or simply '1'.

repeat_step_criteria +

+

Used by repeating steps to determine whether to keep looping. tool_type may be a typepath or simply '1'.

skip_step_criteria +

+

Whether this step is optional and can be skipped if it isn't the last step. There must be a step after it to skip to. As this may be used when +initiating a surgery and deciding whether to skip the first step, it must be able to work without reference to the parent surgery's status, +affected_limb, or location vars. Also, in that case there may be a wait between passing the check and beginning the step while the user picks a surgery.

success +

+

This is used for end-step narration and relevant success changes - whatever the step is meant to do, if it isn't just flavour. tool_type may be a typepath or simply '1'.

tool_check +

+

Checks the given tool, if any, against the step's tools list, and returns one of three options: the tool list key, TRUE, or FALSE to fail the surgery.

+ + + diff --git a/datum/surgery_step/clamp_bleeders_step.html b/datum/surgery_step/clamp_bleeders_step.html new file mode 100644 index 000000000000..980fb5be7c9a --- /dev/null +++ b/datum/surgery_step/clamp_bleeders_step.html @@ -0,0 +1,36 @@ + + + + + + + /datum/surgery_step/clamp_bleeders_step - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Clamp Bleeders + + + +

+ + +

Vars

ligation_toolsTools used to stem bleeders by specifically tying them up. List used for specific messaging as there's two of these.
+

Var Details

ligation_tools + + + + +

+

Tools used to stem bleeders by specifically tying them up. List used for specific messaging as there's two of these.

+ + + diff --git a/datum/surgery_step/saw_off_limb.html b/datum/surgery_step/saw_off_limb.html new file mode 100644 index 000000000000..ef822ddf15c9 --- /dev/null +++ b/datum/surgery_step/saw_off_limb.html @@ -0,0 +1,36 @@ + + + + + + + /datum/surgery_step/saw_off_limb - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Sever Bone + + + +

+ + +

Vars

cannot_hackTools which cannot instantly hack off a limb when amputating. Bayonet is for sawing, butcher/hatchet are smaller substitutes for machete/fire axe.
+

Var Details

cannot_hack + + + + +

+

Tools which cannot instantly hack off a limb when amputating. Bayonet is for sawing, butcher/hatchet are smaller substitutes for machete/fire axe.

+ + + diff --git a/datum/suture_handler.html b/datum/suture_handler.html new file mode 100644 index 000000000000..9c67e816adef --- /dev/null +++ b/datum/suture_handler.html @@ -0,0 +1,62 @@ + + + + + + + /datum/suture_handler - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/suture_handler + + + +

+ +

Handles sutures for this limb. Doesn't process, updates on limb damage and new suture attempts.

+ + + +

Procs

add_suturesUsed to order a limb to add sutures. COMSIG_LIMB_ADD_SUTURES doesn't return something = no suture datum to answer. +suture_brute = heals brute, boolean, also tracks fully-sutured state. +suture_burn = ^ but for burns +maximum_heal = total amount of each damage type that can be healed - IE TRUE/TRUE/10 = up to 10 brute AND up to 10 burns
check_suturesDetermines how many sutures can be added up to the max of 10 per type. Modifies a list referenced as an arg.
remove_suturesUnregisters datum. The signals are the only references to this.
update_suturesUpdates the amount of sutured damage remaining.

Proc Details

add_sutures +

+

Used to order a limb to add sutures. COMSIG_LIMB_ADD_SUTURES doesn't return something = no suture datum to answer. +suture_brute = heals brute, boolean, also tracks fully-sutured state. +suture_burn = ^ but for burns +maximum_heal = total amount of each damage type that can be healed - IE TRUE/TRUE/10 = up to 10 brute AND up to 10 burns

check_sutures +

+

Determines how many sutures can be added up to the max of 10 per type. Modifies a list referenced as an arg.

remove_sutures +

+

Unregisters datum. The signals are the only references to this.

update_sutures +

+

Updates the amount of sutured damage remaining.

+ + + diff --git a/datum/tacmap.html b/datum/tacmap.html new file mode 100644 index 000000000000..4d997e2a1ab3 --- /dev/null +++ b/datum/tacmap.html @@ -0,0 +1,43 @@ + + + + + + + /datum/tacmap - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/tacmap + + + +

+ + + +

Vars

map_holdertacmap holder for holding the minimap
targeted_ztraitby default the ground map - this picks the first level matching the trait. if it exists
+

Var Details

map_holder + + + + +

+

tacmap holder for holding the minimap

targeted_ztrait + + + + +

+

by default the ground map - this picks the first level matching the trait. if it exists

+ + + diff --git a/datum/tacmap/drawing.html b/datum/tacmap/drawing.html new file mode 100644 index 000000000000..1ae6a6e384b1 --- /dev/null +++ b/datum/tacmap/drawing.html @@ -0,0 +1,118 @@ + + + + + + + /datum/tacmap/drawing - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/tacmap/drawing + + + +

+ + + + + + + + + + + + +

Vars

current_svgcurrent svg
last_update_timeThe last time the map has been flattened - used as a key to trick react into updating the canvas
new_current_mapcurrent flattend map
old_mapprevious flattened map
tacmap_ready_timeA temporary lock out time before we can open the new canvas tab to allow the tacmap time to fire
toolbar_color_selectioncolor selection for the tactical map canvas, defaults to black.
updated_canvasboolean value to keep track if the canvas has been updated or not, the value is used in tgui state.
wiki_map_fallbackA url that will point to the wiki map for the current map as a fall back image

Procs

distribute_current_map_pngFlattens the current map and then distributes it for the specified faction as an unannounced map.
on_tacmap_fireCallback when timer indicates the tacmap is flattenable now
store_current_svg_coordsGlobally stores svg coords for a given faction.
+

Var Details

current_svg + + + + +

+

current svg

last_update_time + + + + +

+

The last time the map has been flattened - used as a key to trick react into updating the canvas

new_current_map + + + + +

+

current flattend map

old_map + + + + +

+

previous flattened map

tacmap_ready_time + + + + +

+

A temporary lock out time before we can open the new canvas tab to allow the tacmap time to fire

toolbar_color_selection + + + + +

+

color selection for the tactical map canvas, defaults to black.

updated_canvas + + + + +

+

boolean value to keep track if the canvas has been updated or not, the value is used in tgui state.

wiki_map_fallback + + + + +

+

A url that will point to the wiki map for the current map as a fall back image

Proc Details

distribute_current_map_png +

+

Flattens the current map and then distributes it for the specified faction as an unannounced map.

+

Arguments:

+

on_tacmap_fire +

+

Callback when timer indicates the tacmap is flattenable now

store_current_svg_coords +

+

Globally stores svg coords for a given faction.

+

Arguments:

+
+ + + diff --git a/datum/tacmap_admin_panel.html b/datum/tacmap_admin_panel.html new file mode 100644 index 000000000000..1a65ce4e0fda --- /dev/null +++ b/datum/tacmap_admin_panel.html @@ -0,0 +1,57 @@ + + + + + + + /datum/tacmap_admin_panel - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Tacmap Panel + + + +

+ + + + + +

Vars

last_update_timeThe last time the map selection was changed - used as a key to trick react into updating the map
uscm_selectionThe index picked last for USCM (zero indexed), -1 will try to select latest if it exists
wiki_map_fallbackA url that will point to the wiki map for the current map as a fall back image
xeno_selectionThe index picked last for Xenos (zero indexed), -1 will try to select latest if it exists
+

Var Details

last_update_time + + + + +

+

The last time the map selection was changed - used as a key to trick react into updating the map

uscm_selection + + + + +

+

The index picked last for USCM (zero indexed), -1 will try to select latest if it exists

wiki_map_fallback + + + + +

+

A url that will point to the wiki map for the current map as a fall back image

xeno_selection + + + + +

+

The index picked last for Xenos (zero indexed), -1 will try to select latest if it exists

+ + + diff --git a/datum/tech.html b/datum/tech.html new file mode 100644 index 000000000000..ba9c485a4b2f --- /dev/null +++ b/datum/tech.html @@ -0,0 +1,38 @@ + + + + + + + /datum/tech - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

tech + + + +

+ + +

Procs

on_unlockCalled when a tech is unlocked. Usually, benefits can be applied here +however, the purchase can still be cancelled by returning FALSE

Proc Details

on_unlock +

+

Called when a tech is unlocked. Usually, benefits can be applied here +however, the purchase can still be cancelled by returning FALSE

+

If you sleep in this proc, you must call can_unlock after the sleep ends to make sure you can still purchase the tech in question

+ + + diff --git a/datum/tech/transitory.html b/datum/tech/transitory.html new file mode 100644 index 000000000000..683b97739862 --- /dev/null +++ b/datum/tech/transitory.html @@ -0,0 +1,35 @@ + + + + + + + /datum/tech/transitory - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Transitory tech + + + +

+ + +

Procs

get_tier_overlayDue to calling parent, points will have already been spent by now.

Proc Details

get_tier_overlay +

+

Due to calling parent, points will have already been spent by now.

+ + + diff --git a/datum/techtree.html b/datum/techtree.html new file mode 100644 index 000000000000..33dcb0438f66 --- /dev/null +++ b/datum/techtree.html @@ -0,0 +1,49 @@ + + + + + + + /datum/techtree - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Undefined + + + +

+ + + + +

Procs

get_nodetech: a typepath to a tech
get_unlocked_nodetech: a typepath to a tech
on_tier_changeTriggered just after a tier change

Proc Details

get_node +

+

tech: a typepath to a tech

get_unlocked_node +

+

tech: a typepath to a tech

on_tier_change +

+

Triggered just after a tier change

+ + + diff --git a/datum/tgs_api/v5.html b/datum/tgs_api/v5.html new file mode 100644 index 000000000000..7c23634c05e2 --- /dev/null +++ b/datum/tgs_api/v5.html @@ -0,0 +1,43 @@ + + + + + + + /datum/tgs_api/v5 - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/tgs_api/v5 + + + +

+ + + +

Vars

intercepted_message_queueList of chat messages list()s that attempted to be sent during a topic call. To be bundled in the result of the call
offline_message_queueList of chat messages list()s that attempted to be sent during a topic call. To be bundled in the result of the call
+

Var Details

intercepted_message_queue + + + + +

+

List of chat messages list()s that attempted to be sent during a topic call. To be bundled in the result of the call

offline_message_queue + + + + +

+

List of chat messages list()s that attempted to be sent during a topic call. To be bundled in the result of the call

+ + + diff --git a/datum/tgs_chat_channel.html b/datum/tgs_chat_channel.html new file mode 100644 index 000000000000..db250c71899d --- /dev/null +++ b/datum/tgs_chat_channel.html @@ -0,0 +1,78 @@ + + + + + + + /datum/tgs_chat_channel - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/tgs_chat_channel + + + +

+ +

Represents a connected chat channel.

+ + + + + + +

Vars

connection_nameName of the chat connection. This is the IRC server address or the Discord guild.
custom_tagTag string associated with the channel in TGS.
embeds_supported[TRUE]/[FALSE] if the channel supports embeds.
friendly_nameUser friendly name of the channel.
idTGS internal channel ID.
is_admin_channel[TRUE]/[FALSE] based on if the server operator has marked this channel for game admins only.
is_private_channel[TRUE]/[FALSE] if the channel is a private message channel for a /datum/tgs_chat_user.
+

Var Details

connection_name + + + + +

+

Name of the chat connection. This is the IRC server address or the Discord guild.

custom_tag + + + + +

+

Tag string associated with the channel in TGS.

embeds_supported + + + + +

+

[TRUE]/[FALSE] if the channel supports embeds.

friendly_name + + + + +

+

User friendly name of the channel.

id + + + + +

+

TGS internal channel ID.

is_admin_channel + + + + +

+

[TRUE]/[FALSE] based on if the server operator has marked this channel for game admins only.

is_private_channel + + + + +

+

[TRUE]/[FALSE] if the channel is a private message channel for a /datum/tgs_chat_user.

+ + + diff --git a/datum/tgs_chat_command.html b/datum/tgs_chat_command.html new file mode 100644 index 000000000000..13000997d11e --- /dev/null +++ b/datum/tgs_chat_command.html @@ -0,0 +1,70 @@ + + + + + + + /datum/tgs_chat_command - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/tgs_chat_command + + + +

+ +

User definable chat command. This abstract version MUST be overridden to be used.

+ + + + +

Vars

admin_onlyIf this command should be available to game administrators only.
help_textThe help text displayed for this command.
ignore_typeA subtype of /datum/tgs_chat_command that is ignored when enumerating available commands. Use this to create shared base /datums for commands.
nameThe string to trigger this command on a chat bot. e.g @bot name ... or !tgs name ....

Procs

RunProcess command activation. Should return a /datum/tgs_message_content to respond to the issuer with. +MUST be implemented
+

Var Details

admin_only + + + + +

+

If this command should be available to game administrators only.

help_text + + + + +

+

The help text displayed for this command.

ignore_type + + + + +

+

A subtype of /datum/tgs_chat_command that is ignored when enumerating available commands. Use this to create shared base /datums for commands.

name + + + + +

+

The string to trigger this command on a chat bot. e.g @bot name ... or !tgs name ....

Proc Details

Run +

+

Process command activation. Should return a /datum/tgs_message_content to respond to the issuer with. +MUST be implemented

+
+ + + diff --git a/datum/tgs_chat_embed/field.html b/datum/tgs_chat_embed/field.html new file mode 100644 index 000000000000..dc0c6c658b7b --- /dev/null +++ b/datum/tgs_chat_embed/field.html @@ -0,0 +1,50 @@ + + + + + + + /datum/tgs_chat_embed/field - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/tgs_chat_embed/field + + + +

+ +

See https://discord.com/developers/docs/resources/message#embed-object-embed-field-structure for details.

+ + +

Vars

nameMust be set in New().
valueMust be set in New().

Procs

NewCreate a /datum/tgs_chat_embed/field.
+

Var Details

name + + + + +

+

Must be set in New().

value + + + + +

+

Must be set in New().

Proc Details

New +

+

Create a /datum/tgs_chat_embed/field.

+ + + diff --git a/datum/tgs_chat_embed/footer.html b/datum/tgs_chat_embed/footer.html new file mode 100644 index 000000000000..143f6ad74860 --- /dev/null +++ b/datum/tgs_chat_embed/footer.html @@ -0,0 +1,43 @@ + + + + + + + /datum/tgs_chat_embed/footer - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/tgs_chat_embed/footer + + + +

+ +

See https://discord.com/developers/docs/resources/message#embed-object-embed-footer-structure for details.

+ +

Vars

textMust be set in New().

Procs

NewCreate a /datum/tgs_chat_embed/footer.
+

Var Details

text + + + + +

+

Must be set in New().

Proc Details

New +

+

Create a /datum/tgs_chat_embed/footer.

+ + + diff --git a/datum/tgs_chat_embed/media.html b/datum/tgs_chat_embed/media.html new file mode 100644 index 000000000000..6ad1b13ff66e --- /dev/null +++ b/datum/tgs_chat_embed/media.html @@ -0,0 +1,43 @@ + + + + + + + /datum/tgs_chat_embed/media - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/tgs_chat_embed/media + + + +

+ +

Common datum for similar Discord embed medias.

+ +

Vars

urlMust be set in New().

Procs

NewCreate a /datum/tgs_chat_embed.
+

Var Details

url + + + + +

+

Must be set in New().

Proc Details

New +

+

Create a /datum/tgs_chat_embed.

+ + + diff --git a/datum/tgs_chat_embed/provider/author.html b/datum/tgs_chat_embed/provider/author.html new file mode 100644 index 000000000000..045cc8171104 --- /dev/null +++ b/datum/tgs_chat_embed/provider/author.html @@ -0,0 +1,35 @@ + + + + + + + /datum/tgs_chat_embed/provider/author - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/tgs_chat_embed/provider/author + + + +

+ +

See https://discord.com/developers/docs/resources/message#embed-object-embed-author-structure for details. Must have name set in New().

+

Procs

NewCreate a /datum/tgs_chat_embed/footer.

Proc Details

New +

+

Create a /datum/tgs_chat_embed/footer.

+ + + diff --git a/datum/tgs_chat_embed/structure.html b/datum/tgs_chat_embed/structure.html new file mode 100644 index 000000000000..6a5f7f450ea0 --- /dev/null +++ b/datum/tgs_chat_embed/structure.html @@ -0,0 +1,64 @@ + + + + + + + /datum/tgs_chat_embed/structure - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/tgs_chat_embed/structure + + + +

+ +

User definable chat embed. Currently mirrors Discord chat embeds. See https://discord.com/developers/docs/resources/message#embed-object for details.

+ + + + +

Vars

colourColour must be #AARRGGBB or #RRGGBB hex string.
imageSee https://discord.com/developers/docs/resources/message#embed-object-embed-image-structure for details.
thumbnailSee https://discord.com/developers/docs/resources/message#embed-object-embed-thumbnail-structure for details.
timestampTimestamp must be encoded as: time2text(world.timeofday, "YYYY-MM-DD hh:mm:ss"). Use the active timezone.
videoSee https://discord.com/developers/docs/resources/message#embed-object-embed-video-structure for details.
+

Var Details

colour + + + + +

+

Colour must be #AARRGGBB or #RRGGBB hex string.

image + + + + +

+

See https://discord.com/developers/docs/resources/message#embed-object-embed-image-structure for details.

thumbnail + + + + +

+

See https://discord.com/developers/docs/resources/message#embed-object-embed-thumbnail-structure for details.

timestamp + + + + +

+

Timestamp must be encoded as: time2text(world.timeofday, "YYYY-MM-DD hh:mm:ss"). Use the active timezone.

video + + + + +

+

See https://discord.com/developers/docs/resources/message#embed-object-embed-video-structure for details.

+ + + diff --git a/datum/tgs_chat_user.html b/datum/tgs_chat_user.html new file mode 100644 index 000000000000..5e749e894d0e --- /dev/null +++ b/datum/tgs_chat_user.html @@ -0,0 +1,57 @@ + + + + + + + /datum/tgs_chat_user - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/tgs_chat_user + + + +

+ + + + + +

Vars

channelThe /datum/tgs_chat_channel the user was from.
friendly_nameThe user's display name.
idTGS internal user ID.
mentionThe string to use to ping this user in a message.
+

Var Details

channel + + + + +

+

The /datum/tgs_chat_channel the user was from.

friendly_name + + + + +

+

The user's display name.

id + + + + +

+

TGS internal user ID.

mention + + + + +

+

The string to use to ping this user in a message.

+ + + diff --git a/datum/tgs_event_handler.html b/datum/tgs_event_handler.html new file mode 100644 index 000000000000..0932422b7e44 --- /dev/null +++ b/datum/tgs_event_handler.html @@ -0,0 +1,44 @@ + + + + + + + /datum/tgs_event_handler - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/tgs_event_handler + + + +

+ +

User definable handler for TGS events This abstract version SHOULD be overridden to be used.

+ +

Vars

receive_health_checksIf the handler receieves TGS_EVENT_HEALTH_CHECK events.

Procs

HandleEventUser definable callback for handling TGS events.
+

Var Details

receive_health_checks + + + + +

+

If the handler receieves TGS_EVENT_HEALTH_CHECK events.

Proc Details

HandleEvent +

+

User definable callback for handling TGS events.

+

event_code - One of the TGS_EVENT_ defines. Extra parameters will be documented in each.

+ + + diff --git a/datum/tgs_http_handler.html b/datum/tgs_http_handler.html new file mode 100644 index 000000000000..7302df4a9057 --- /dev/null +++ b/datum/tgs_http_handler.html @@ -0,0 +1,42 @@ + + + + + + + /datum/tgs_http_handler - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/tgs_http_handler + + + +

+ +

User definable handler for HTTP calls. This abstract version MUST be overridden to be used.

+

Procs

PerformGetUser definable callback for executing HTTP GET requests. +MUST perform BYOND sleeps while the request is in flight. +MUST return a /datum/tgs_http_result. +SHOULD log its own errors

Proc Details

PerformGet +

+

User definable callback for executing HTTP GET requests. +MUST perform BYOND sleeps while the request is in flight. +MUST return a /datum/tgs_http_result. +SHOULD log its own errors

+

url - The full URL to execute the GET request for including query parameters.

+ + + diff --git a/datum/tgs_http_result.html b/datum/tgs_http_result.html new file mode 100644 index 000000000000..58a11d6b658c --- /dev/null +++ b/datum/tgs_http_result.html @@ -0,0 +1,54 @@ + + + + + + + /datum/tgs_http_result - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/tgs_http_result + + + +

+ +

Result of a /datum/tgs_http_handler call. MUST NOT be overridden.

+ + +

Vars

response_textHTTP response as text
successBoolean request success flag. Set for any 2XX response code.

Procs

NewCreate a /datum/tgs_http_result.
+

Var Details

response_text + + + + +

+

HTTP response as text

success + + + + +

+

Boolean request success flag. Set for any 2XX response code.

Proc Details

New +

+

Create a /datum/tgs_http_result.

+
+ + + diff --git a/datum/tgs_message_content.html b/datum/tgs_message_content.html new file mode 100644 index 000000000000..241a267498af --- /dev/null +++ b/datum/tgs_message_content.html @@ -0,0 +1,53 @@ + + + + + + + /datum/tgs_message_content - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/tgs_message_content + + + +

+ +

User definable chat message. MUST NOT be overridden.

+ + +

Vars

embedThe /datum/tgs_chat_embed to embed in the message. Not supported on all chat providers.
textThe string content of the message. Must be provided in New().

Procs

NewCreate a /datum/tgs_message_content.
+

Var Details

embed + + + + +

+

The /datum/tgs_chat_embed to embed in the message. Not supported on all chat providers.

text + + + + +

+

The string content of the message. Must be provided in New().

Proc Details

New +

+

Create a /datum/tgs_message_content.

+
+ + + diff --git a/datum/tgs_revision_information.html b/datum/tgs_revision_information.html new file mode 100644 index 000000000000..d5bc805ea4ea --- /dev/null +++ b/datum/tgs_revision_information.html @@ -0,0 +1,50 @@ + + + + + + + /datum/tgs_revision_information - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/tgs_revision_information + + + +

+ +

Represents git revision information.

+ + +

Vars

commitFull SHA of the commit.
origin_commitFull sha of last known remote commit. This may be null if the TGS repository is not currently tracking a remote branch.
timestampISO 8601 timestamp of when the commit was created.
+

Var Details

commit + + + + +

+

Full SHA of the commit.

origin_commit + + + + +

+

Full sha of last known remote commit. This may be null if the TGS repository is not currently tracking a remote branch.

timestamp + + + + +

+

ISO 8601 timestamp of when the commit was created.

+ + + diff --git a/datum/tgs_revision_information/test_merge.html b/datum/tgs_revision_information/test_merge.html new file mode 100644 index 000000000000..4c1c6fea4680 --- /dev/null +++ b/datum/tgs_revision_information/test_merge.html @@ -0,0 +1,78 @@ + + + + + + + /datum/tgs_revision_information/test_merge - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/tgs_revision_information/test_merge + + + +

+ +

Represents a merge of a GitHub pull request.

+ + + + + + +

Vars

authorThe Username of the test merge source's author.
bodyThe test merge source's body when it was merged.
commentOptional comment left by the TGS user who initiated the merge.
head_commitThe SHA of the test merge when that was merged.
numberThe test merge number.
titleThe test merge source's title when it was merged.
urlAn http URL to the test merge source.
+

Var Details

author + + + + +

+

The Username of the test merge source's author.

body + + + + +

+

The test merge source's body when it was merged.

comment + + + + +

+

Optional comment left by the TGS user who initiated the merge.

head_commit + + + + +

+

The SHA of the test merge when that was merged.

number + + + + +

+

The test merge number.

title + + + + +

+

The test merge source's title when it was merged.

url + + + + +

+

An http URL to the test merge source.

+ + + diff --git a/datum/tgs_version.html b/datum/tgs_version.html new file mode 100644 index 000000000000..18f37e024603 --- /dev/null +++ b/datum/tgs_version.html @@ -0,0 +1,71 @@ + + + + + + + /datum/tgs_version - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/tgs_version + + + +

+ +

Represents a version.

+ + + + + +

Vars

deprecated_patchLegacy version number. Generally null.
deprefixed_parameterString value minus prefix.
minorThe minor version number. null for wildcards.
patchThe patch version number. null for wildcards.
raw_parameterUnparsed string value.
suiteThe suite/major version number.
+

Var Details

deprecated_patch + + + + +

+

Legacy version number. Generally null.

deprefixed_parameter + + + + +

+

String value minus prefix.

minor + + + + +

+

The minor version number. null for wildcards.

patch + + + + +

+

The patch version number. null for wildcards.

raw_parameter + + + + +

+

Unparsed string value.

suite + + + + +

+

The suite/major version number.

+ + + diff --git a/datum/tgui.html b/datum/tgui.html new file mode 100644 index 000000000000..d726c04424dd --- /dev/null +++ b/datum/tgui.html @@ -0,0 +1,272 @@ + + + + + + + /datum/tgui - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/tgui + + + +

+ +

tgui datum (represents a UI).

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

autoupdateUpdate the UI every MC tick.
closingStops further updates when close() was called.
initializedIf the UI has been initialized yet.
interfaceThe interface (template) to be used for this UI.
mouse_hookedAre byond mouse events beyond the window passed in to the ui
opened_atTime of opening the window.
refresh_cooldownRate limit client refreshes to prevent DoS.
refreshingTimed refreshing state
src_objectThe object which owns the UI.
stateTopic state used to determine status/interactability.
statusThe status/visibility of the UI.
titleThe title of the UI.
userThe mob who opened/is using the UI.
windowThe window_id for browse() and onclose().
window_keyKey that is used for remembering the window geometry.
window_sizeDeprecated: Window size.

Procs

Newpublic
closepublic
get_payloadprivate
on_act_messageWrapper for behavior to potentially wait until the next tick if the server is overloaded
on_messageprivate
openpublic
processprivate
process_statusprivate
send_assetpublic
send_full_updatepublic
send_updatepublic
set_autoupdatepublic
set_mouse_hookpublic
set_statepublic
+

Var Details

autoupdate + + + + +

+

Update the UI every MC tick.

closing + + + + +

+

Stops further updates when close() was called.

initialized + + + + +

+

If the UI has been initialized yet.

interface + + + + +

+

The interface (template) to be used for this UI.

mouse_hooked + + + + +

+

Are byond mouse events beyond the window passed in to the ui

opened_at + + + + +

+

Time of opening the window.

refresh_cooldown + + + + +

+

Rate limit client refreshes to prevent DoS.

refreshing + + + + +

+

Timed refreshing state

src_object + + + + +

+

The object which owns the UI.

state + + + + +

+

Topic state used to determine status/interactability.

status + + + + +

+

The status/visibility of the UI.

title + + + + +

+

The title of the UI.

user + + + + +

+

The mob who opened/is using the UI.

window + + + + +

+

The window_id for browse() and onclose().

window_key + + + + +

+

Key that is used for remembering the window geometry.

window_size + + + + +

+

Deprecated: Window size.

Proc Details

New +

+

public

+

Create a new UI.

+

required user mob The mob who opened/is using the UI. +required src_object datum The object or datum which owns the UI. +required interface string The interface used to render the UI. +optional title string The title of the UI. +optional ui_x int Deprecated: Window width. +optional ui_y int Deprecated: Window height.

+

return datum/tgui The requested UI.

close +

+

public

+

Close the UI.

+

optional can_be_suspended bool

get_payload +

+

private

+

Package the data to send to the UI, as JSON.

+

return list

on_act_message +

+

Wrapper for behavior to potentially wait until the next tick if the server is overloaded

on_message +

+

private

+

Callback for handling incoming tgui messages.

open +

+

public

+

Open this UI (and initialize it with data).

+

return bool - TRUE if a new pooled window is opened, FALSE in all other situations including if a new pooled window didn't open because one already exists.

process +

+

private

+

Run an update cycle for this UI. Called internally by SStgui +every second or so.

process_status +

+

private

+

Updates the status, and returns TRUE if status has changed.

send_asset +

+

public

+

Makes an asset available to use in tgui.

+

required asset datum/asset

+

return bool - true if an asset was actually sent

send_full_update +

+

public

+

Send a full update to the client (includes static data).

+

optional custom_data list Custom data to send instead of ui_data. +optional force bool Send an update even if UI is not interactive.

send_update +

+

public

+

Send a partial update to the client (excludes static data).

+

optional custom_data list Custom data to send instead of ui_data. +optional force bool Send an update even if UI is not interactive.

set_autoupdate +

+

public

+

Enable/disable auto-updating of the UI.

+

required value bool Enable/disable auto-updating.

set_mouse_hook +

+

public

+

Enable/disable passing through byond mouse events to the window

+

required value bool Enable/disable hooking.

set_state +

+

public

+

Replace current ui.state with a new one.

+

required state datum/ui_state/state Next state

+ + + diff --git a/datum/tgui_bug_report_form.html b/datum/tgui_bug_report_form.html new file mode 100644 index 000000000000..becd342e9aa3 --- /dev/null +++ b/datum/tgui_bug_report_form.html @@ -0,0 +1,57 @@ + + + + + + + /datum/tgui_bug_report_form - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/tgui_bug_report_form + + + +

+ + + + + +

Vars

admin_userclient of the admin who is accessing the report, we don't want multiple admins unknowingly making changes at the same time.
awaiting_admin_approvalvalue to determine if the bug report is submitted and awaiting admin approval, used for state purposes in tgui.
bug_report_datacontains all the body text for the bug report.
initial_userclient of the bug report author, needed to create the ticket
+

Var Details

admin_user + + + + +

+

client of the admin who is accessing the report, we don't want multiple admins unknowingly making changes at the same time.

awaiting_admin_approval + + + + +

+

value to determine if the bug report is submitted and awaiting admin approval, used for state purposes in tgui.

bug_report_data + + + + +

+

contains all the body text for the bug report.

initial_user + + + + +

+

client of the bug report author, needed to create the ticket

+ + + diff --git a/datum/tgui_checkbox_input.html b/datum/tgui_checkbox_input.html new file mode 100644 index 000000000000..16cf3aef295e --- /dev/null +++ b/datum/tgui_checkbox_input.html @@ -0,0 +1,115 @@ + + + + + + + /datum/tgui_checkbox_input - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/tgui_checkbox_input + + + +

+ +

Window for tgui_input_checkboxes

+ + + + + + + + + + + +

Vars

choicesList of selected items
closedWhether the input was closed
itemsList of items to display
max_checkedMaximum number of checkboxes that can be checked
messageMessage to display
min_checkedMinimum number of checkboxes that must be checked
start_timeTime when the input was created
stateThe TGUI UI state that will be returned in ui_state(). Default: always_state
timeoutTimeout for the input
titleTitle of the window
ui_themeString field for the theme to use

Procs

waitWaits for a user's response to the tgui_checkbox_input's prompt before returning. Returns early if +the window was closed by the user.
+

Var Details

choices + + + + +

+

List of selected items

closed + + + + +

+

Whether the input was closed

items + + + + +

+

List of items to display

max_checked + + + + +

+

Maximum number of checkboxes that can be checked

message + + + + +

+

Message to display

min_checked + + + + +

+

Minimum number of checkboxes that must be checked

start_time + + + + +

+

Time when the input was created

state + + + + +

+

The TGUI UI state that will be returned in ui_state(). Default: always_state

timeout + + + + +

+

Timeout for the input

title + + + + +

+

Title of the window

ui_theme + + + + +

+

String field for the theme to use

Proc Details

wait +

+

Waits for a user's response to the tgui_checkbox_input's prompt before returning. Returns early if +the window was closed by the user.

+ + + diff --git a/datum/tgui_checkbox_input/async.html b/datum/tgui_checkbox_input/async.html new file mode 100644 index 000000000000..b31729c82832 --- /dev/null +++ b/datum/tgui_checkbox_input/async.html @@ -0,0 +1,36 @@ + + + + + + + /datum/tgui_checkbox_input/async - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

async tgui_checkbox_input + + + +

+ +

An asynchronous version of tgui_checkbox_input to be used with callbacks instead of waiting on user responses.

+

Vars

callbackThe callback to be invoked by the tgui_modal upon having a choice made.
+

Var Details

callback + + + + +

+

The callback to be invoked by the tgui_modal upon having a choice made.

+ + + diff --git a/datum/tgui_input_number.html b/datum/tgui_input_number.html new file mode 100644 index 000000000000..1d43909a870c --- /dev/null +++ b/datum/tgui_input_number.html @@ -0,0 +1,125 @@ + + + + + + + /datum/tgui_input_number - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tgui_input_number + + + +

+ +

Datum used for instantiating and using a TGUI-controlled number input that prompts the user with +a message and has an input for number entry.

+ + + + + + + + + + + + +

Vars

closedBoolean field describing if the tgui_input_number was closed by the user.
defaultThe default (or current) value, shown as a default. Users can press reset with this.
entryThe entry that the user has return_typed in.
integer_onlyIf the final value will be rounded
max_valueThe maximum value that can be entered.
messageThe prompt's body, if any, of the TGUI window.
min_valueThe minimum value that can be entered.
start_timeThe time at which the number input was created, for displaying timeout progress.
stateThe TGUI UI state that will be returned in ui_state(). Default: always_state
timeoutThe lifespan of the number input, after which the window will close and delete itself.
titleThe title of the TGUI window

Procs

DestroyChecks for empty numbers - bank accounts, etc. +Sanity check
waitWaits for a user's response to the tgui_input_number's prompt before returning. Returns early if +the window was closed by the user.
+

Var Details

closed + + + + +

+

Boolean field describing if the tgui_input_number was closed by the user.

default + + + + +

+

The default (or current) value, shown as a default. Users can press reset with this.

entry + + + + +

+

The entry that the user has return_typed in.

integer_only + + + + +

+

If the final value will be rounded

max_value + + + + +

+

The maximum value that can be entered.

message + + + + +

+

The prompt's body, if any, of the TGUI window.

min_value + + + + +

+

The minimum value that can be entered.

start_time + + + + +

+

The time at which the number input was created, for displaying timeout progress.

state + + + + +

+

The TGUI UI state that will be returned in ui_state(). Default: always_state

timeout + + + + +

+

The lifespan of the number input, after which the window will close and delete itself.

title + + + + +

+

The title of the TGUI window

Proc Details

Destroy +

+

Checks for empty numbers - bank accounts, etc. +Sanity check

wait +

+

Waits for a user's response to the tgui_input_number's prompt before returning. Returns early if +the window was closed by the user.

+ + + diff --git a/datum/tgui_input_number/async.html b/datum/tgui_input_number/async.html new file mode 100644 index 000000000000..0c634059f898 --- /dev/null +++ b/datum/tgui_input_number/async.html @@ -0,0 +1,36 @@ + + + + + + + /datum/tgui_input_number/async - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

async tgui_input_number + + + +

+ +

An asynchronous version of tgui_input_number to be used with callbacks instead of waiting on user responses.

+

Vars

callbackThe callback to be invoked by the tgui_input_number upon having a choice made.
+

Var Details

callback + + + + +

+

The callback to be invoked by the tgui_input_number upon having a choice made.

+ + + diff --git a/datum/tgui_input_text.html b/datum/tgui_input_text.html new file mode 100644 index 000000000000..53183dfec372 --- /dev/null +++ b/datum/tgui_input_text.html @@ -0,0 +1,137 @@ + + + + + + + /datum/tgui_input_text - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/tgui_input_text + + + +

+ +

tgui_input_text

+

Datum used for instantiating and using a TGUI-controlled text input that prompts the user with +a message and has an input for text entry.

+ + + + + + + + + + + + + +

Vars

closedBoolean field describing if the tgui_input_text was closed by the user.
defaultThe default (or current) value, shown as a default.
encodeWhether the input should be stripped using html_encode
entryThe entry that the user has return_typed in.
max_lengthThe maximum length for text entry
messageThe prompt's body, if any, of the TGUI window.
multilineMultiline input for larger input boxes.
start_timeThe time at which the text input was created, for displaying timeout progress.
stateThe TGUI UI state that will be returned in ui_state(). Default: always_state
timeoutThe lifespan of the text input, after which the window will close and delete itself.
titleThe title of the TGUI window
trimWhether to trim leading and trailing spaces

Procs

set_entrySets the return value for the tgui text proc. +If html encoding is enabled, the text will be encoded. +This can sometimes result in a string that is longer than the max length. +If the string is longer than the max length, it will be clipped.
waitWaits for a user's response to the tgui_input_text's prompt before returning. Returns early if +the window was closed by the user.
+

Var Details

closed + + + + +

+

Boolean field describing if the tgui_input_text was closed by the user.

default + + + + +

+

The default (or current) value, shown as a default.

encode + + + + +

+

Whether the input should be stripped using html_encode

entry + + + + +

+

The entry that the user has return_typed in.

max_length + + + + +

+

The maximum length for text entry

message + + + + +

+

The prompt's body, if any, of the TGUI window.

multiline + + + + +

+

Multiline input for larger input boxes.

start_time + + + + +

+

The time at which the text input was created, for displaying timeout progress.

state + + + + +

+

The TGUI UI state that will be returned in ui_state(). Default: always_state

timeout + + + + +

+

The lifespan of the text input, after which the window will close and delete itself.

title + + + + +

+

The title of the TGUI window

trim + + + + +

+

Whether to trim leading and trailing spaces

Proc Details

set_entry +

+

Sets the return value for the tgui text proc. +If html encoding is enabled, the text will be encoded. +This can sometimes result in a string that is longer than the max length. +If the string is longer than the max length, it will be clipped.

wait +

+

Waits for a user's response to the tgui_input_text's prompt before returning. Returns early if +the window was closed by the user.

+ + + diff --git a/datum/tgui_list_input.html b/datum/tgui_list_input.html new file mode 100644 index 000000000000..a79ffd95102c --- /dev/null +++ b/datum/tgui_list_input.html @@ -0,0 +1,123 @@ + + + + + + + /datum/tgui_list_input - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tgui_list_input + + + +

+ +

Datum used for instantiating and using a TGUI-controlled list input that prompts the user with +a message and shows a list of selectable options

+ + + + + + + + + + + + +

Vars

buttonsThe list of buttons (responses) provided on the TGUI window. These will automatically all be strings
buttons_mapButtons (strings specifically) mapped to the actual value (e.g. a mob or a verb)
choiceThe button that the user has pressed, null if no selection has been made
closedBoolean field describing if the tgui_list_input was closed by the user.
defaultThe default button to be selected
invalidWhether the tgui list input is invalid or not (i.e. due to all list entries being null)
messageThe textual body of the TGUI window
start_timeThe time at which the tgui_list_input was created, for displaying timeout progress.
stateThe TGUI UI state that will be returned in ui_state(). Default: always_state
timeoutThe lifespan of the tgui_list_input, after which the window will close and delete itself.
titleThe title of the TGUI window
ui_themeString field for the theme to use

Procs

waitWaits for a user's response to the tgui_list_input's prompt before returning. Returns early if +the window was closed by the user.
+

Var Details

buttons + + + + +

+

The list of buttons (responses) provided on the TGUI window. These will automatically all be strings

buttons_map + + + + +

+

Buttons (strings specifically) mapped to the actual value (e.g. a mob or a verb)

choice + + + + +

+

The button that the user has pressed, null if no selection has been made

closed + + + + +

+

Boolean field describing if the tgui_list_input was closed by the user.

default + + + + +

+

The default button to be selected

invalid + + + + +

+

Whether the tgui list input is invalid or not (i.e. due to all list entries being null)

message + + + + +

+

The textual body of the TGUI window

start_time + + + + +

+

The time at which the tgui_list_input was created, for displaying timeout progress.

state + + + + +

+

The TGUI UI state that will be returned in ui_state(). Default: always_state

timeout + + + + +

+

The lifespan of the tgui_list_input, after which the window will close and delete itself.

title + + + + +

+

The title of the TGUI window

ui_theme + + + + +

+

String field for the theme to use

Proc Details

wait +

+

Waits for a user's response to the tgui_list_input's prompt before returning. Returns early if +the window was closed by the user.

+ + + diff --git a/datum/tgui_list_input/async.html b/datum/tgui_list_input/async.html new file mode 100644 index 000000000000..640a6f22196b --- /dev/null +++ b/datum/tgui_list_input/async.html @@ -0,0 +1,36 @@ + + + + + + + /datum/tgui_list_input/async - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

async tgui_list_input + + + +

+ +

An asynchronous version of tgui_list_input to be used with callbacks instead of waiting on user responses.

+

Vars

callbackThe callback to be invoked by the tgui_modal upon having a choice made.
+

Var Details

callback + + + + +

+

The callback to be invoked by the tgui_modal upon having a choice made.

+ + + diff --git a/datum/tgui_modal.html b/datum/tgui_modal.html new file mode 100644 index 000000000000..61a711dea75e --- /dev/null +++ b/datum/tgui_modal.html @@ -0,0 +1,102 @@ + + + + + + + /datum/tgui_modal - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tgui_modal + + + +

+ +

Datum used for instantiating and using a TGUI-controlled modal that prompts the user with +a message and has buttons for responses.

+ + + + + + + + + +

Vars

autofocusThe bool that controls if this modal should grab window focus
buttonsThe list of buttons (responses) provided on the TGUI window
choiceThe button that the user has pressed, null if no selection has been made
closedBoolean field describing if the tgui_modal was closed by the user.
messageThe textual body of the TGUI window
start_timeThe time at which the tgui_modal was created, for displaying timeout progress.
stateThe TGUI UI state that will be returned in ui_state(). Default: always_state
timeoutThe lifespan of the tgui_modal, after which the window will close and delete itself.
titleThe title of the TGUI window

Procs

waitWaits for a user's response to the tgui_modal's prompt before returning. Returns early if +the window was closed by the user.
+

Var Details

autofocus + + + + +

+

The bool that controls if this modal should grab window focus

buttons + + + + +

+

The list of buttons (responses) provided on the TGUI window

choice + + + + +

+

The button that the user has pressed, null if no selection has been made

closed + + + + +

+

Boolean field describing if the tgui_modal was closed by the user.

message + + + + +

+

The textual body of the TGUI window

start_time + + + + +

+

The time at which the tgui_modal was created, for displaying timeout progress.

state + + + + +

+

The TGUI UI state that will be returned in ui_state(). Default: always_state

timeout + + + + +

+

The lifespan of the tgui_modal, after which the window will close and delete itself.

title + + + + +

+

The title of the TGUI window

Proc Details

wait +

+

Waits for a user's response to the tgui_modal's prompt before returning. Returns early if +the window was closed by the user.

+ + + diff --git a/datum/tgui_modal/async.html b/datum/tgui_modal/async.html new file mode 100644 index 000000000000..3c1860d1856c --- /dev/null +++ b/datum/tgui_modal/async.html @@ -0,0 +1,36 @@ + + + + + + + /datum/tgui_modal/async - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

async tgui_modal + + + +

+ +

An asynchronous version of tgui_modal to be used with callbacks instead of waiting on user responses.

+

Vars

callbackThe callback to be invoked by the tgui_modal upon having a choice made.
+

Var Details

callback + + + + +

+

The callback to be invoked by the tgui_modal upon having a choice made.

+ + + diff --git a/datum/tgui_panel.html b/datum/tgui_panel.html new file mode 100644 index 000000000000..5c705f53426b --- /dev/null +++ b/datum/tgui_panel.html @@ -0,0 +1,132 @@ + + + + + + + /datum/tgui_panel - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/tgui_panel + + + +

+ +

tgui_panel datum +Hosts tgchat and other nice features.

+ + + + + + + + + + + +

Vars

telemetry_analyzed_atTime of telemetry analysis completion
telemetry_connectionsList of previous client connections
telemetry_requested_atTime of telemetry request

Procs

analyze_telemetryprivate
initializepublic
is_readypublic
on_initialize_timed_outprivate
on_messageprivate
play_musicpublic
request_telemetryprivate
send_roundrestartpublic
stop_musicpublic
+

Var Details

telemetry_analyzed_at + + + + +

+

Time of telemetry analysis completion

telemetry_connections + + + + +

+

List of previous client connections

telemetry_requested_at + + + + +

+

Time of telemetry request

Proc Details

analyze_telemetry +

+

private

+

Analyzes a telemetry packet.

+

Is currently only useful for detecting ban evasion attempts.

initialize +

+

public

+

Initializes tgui panel.

is_ready +

+

public

+

TRUE if panel is initialized and ready to receive messages.

on_initialize_timed_out +

+

private

+

Called when initialization has timed out.

on_message +

+

private

+

Callback for handling incoming tgui messages.

play_music +

+

public

+

Sends music data to the browser.

+

Optional settings:

+ +

required url string Must be an https URL. +optional extra_data list Optional settings.

request_telemetry +

+

private

+

Requests some telemetry from the client.

send_roundrestart +

+

public

+

Sends a round restart notification.

stop_music +

+

public

+

Stops playing music through the browser.

+ + + diff --git a/datum/tgui_say.html b/datum/tgui_say.html new file mode 100644 index 000000000000..a8bfae9b0cd2 --- /dev/null +++ b/datum/tgui_say.html @@ -0,0 +1,210 @@ + + + + + + + /datum/tgui_say - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/tgui_say + + + +

+ +

The tgui say modal. This initializes an input window which hides until +the user presses one of the speech hotkeys. Once something is entered, it will +delegate the speech to the proper channel.

+ + + + + + + + + + + + + + + + + + +

Vars

clientThe user who opened the window
hurt_phrasesInjury phrases to blurt out
max_lengthMax message length
windowThe modal window
window_openBoolean for whether the tgui_say was opened by the user.

Procs

NewCreates the new input window to exist in the background.
alter_entryAlters text when players are injured. +Adds text, trims left and right side
closeCloses the window serverside. Closes any open chat bubbles +regardless of preference. Logs the event.
delegate_speechNo OOC leaks +Random trimming for larger sentences +Otherwise limit trim to just last letter +Delegates the speech to the proper channel.
force_sayForce say handler. +Sends a message to the say modal to send its current value.
handle_entryHandles text entry and forced speech.
initializeAfter a brief period, injects the scripts into +the window to listen for open commands.
loadEnsures nothing funny is going on window load. +Minimizes the window, sets max length, closes all +typing and thinking indicators. This is triggered +as soon as the window sends the "ready" message.
on_messageThe equivalent of ui_act, this waits on messages from the window +and delegates actions.
openSets the window as "opened" server side, though it is already +visible to the user. We do this to set local vars & +start typing (if enabled and in an IC channel). Logs the event.
start_thinkingSets the mob as "thinking" - with indicator and variable thinking_IC
start_typingHandles the user typing. After a brief period of inactivity, +signals the client mob to revert to the "thinking" icon.
stop_thinkingRemoves typing/thinking indicators and flags the mob as not thinking
stop_typingCallback to remove the typing indicator after a brief period of inactivity. +If the user was typing IC, the thinking indicator is shown.
+

Var Details

client + + + + +

+

The user who opened the window

hurt_phrases + + + + +

+

Injury phrases to blurt out

max_length + + + + +

+

Max message length

window + + + + +

+

The modal window

window_open + + + + +

+

Boolean for whether the tgui_say was opened by the user.

Proc Details

New +

+

Creates the new input window to exist in the background.

alter_entry +

+

Alters text when players are injured. +Adds text, trims left and right side

+

Arguments: +payload - a string list containing entry & channel +Returns: +string - the altered entry

close +

+

Closes the window serverside. Closes any open chat bubbles +regardless of preference. Logs the event.

delegate_speech +

+

No OOC leaks +Random trimming for larger sentences +Otherwise limit trim to just last letter +Delegates the speech to the proper channel.

+

Arguments: +entry - the text to broadcast +channel - the channel to broadcast in +Returns: +boolean - on success or failure

force_say +

+

Force say handler. +Sends a message to the say modal to send its current value.

handle_entry +

+

Handles text entry and forced speech.

+

Arguments: +type - a string "entry" or "force" based on how this function is called +payload - a string list containing entry & channel +Returns: +boolean - success or failure

initialize +

+

After a brief period, injects the scripts into +the window to listen for open commands.

load +

+

Ensures nothing funny is going on window load. +Minimizes the window, sets max length, closes all +typing and thinking indicators. This is triggered +as soon as the window sends the "ready" message.

on_message +

+

The equivalent of ui_act, this waits on messages from the window +and delegates actions.

open +

+

Sets the window as "opened" server side, though it is already +visible to the user. We do this to set local vars & +start typing (if enabled and in an IC channel). Logs the event.

+

Arguments: +payload - A list containing the channel the window was opened in.

start_thinking +

+

Sets the mob as "thinking" - with indicator and variable thinking_IC

start_typing +

+

Handles the user typing. After a brief period of inactivity, +signals the client mob to revert to the "thinking" icon.

stop_thinking +

+

Removes typing/thinking indicators and flags the mob as not thinking

stop_typing +

+

Callback to remove the typing indicator after a brief period of inactivity. +If the user was typing IC, the thinking indicator is shown.

+ + + diff --git a/datum/tgui_window.html b/datum/tgui_window.html new file mode 100644 index 000000000000..7c7df18af8d4 --- /dev/null +++ b/datum/tgui_window.html @@ -0,0 +1,196 @@ + + + + + + + /datum/tgui_window - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/tgui_window + + + +

+ + + + + + + + + + + + + + + + + + +

Vars

byondToTguiEventMapStatic list used to map in macros that will then emit execute events to the tgui window +A small disclaimer though I'm no tech wiz: I don't think it's possible to map in right or middle +clicks in the current state, as they're keywords rather than modifiers.

Procs

Newpublic
acquire_lockpublic
can_be_suspendedpublic
closepublic
flush_message_queueprivate
initializepublic
is_readypublic
on_messageprivate
reinitializepublic
release_lockpublic
replace_htmlpublic
send_assetpublic
send_messagepublic
send_raw_messagepublic
subscribepublic
unsubscribepublic
+

Var Details

byondToTguiEventMap + + + + +

+

Static list used to map in macros that will then emit execute events to the tgui window +A small disclaimer though I'm no tech wiz: I don't think it's possible to map in right or middle +clicks in the current state, as they're keywords rather than modifiers.

Proc Details

New +

+

public

+

Create a new tgui window.

+

required client /client +required id string A unique window identifier.

acquire_lock +

+

public

+

Acquire the window lock. Pool will not be able to provide this window +to other UIs for the duration of the lock.

+

Can be given an optional tgui datum, which will be automatically +subscribed to incoming messages via the on_message proc.

+

optional ui /datum/tgui

can_be_suspended +

+

public

+

Checks if the window can be sanely suspended.

+

return bool

close +

+

public

+

Close the UI.

+

optional can_be_suspended bool

flush_message_queue +

+

private

+

Sends queued messages if the queue wasn't empty.

initialize +

+

public

+

Initializes the window with a fresh page. Puts window into the "loading" +state. You can begin sending messages right after initializing. Messages +will be put into the queue until the window finishes loading.

+

optional strict_mode bool - Enables strict error handling and BSOD. +optional fancy bool - If TRUE and if this is NOT a panel, will hide the window titlebar. +optional assets list - List of assets to load during initialization. +optional inline_html string - Custom HTML to inject. +optional inline_js string - Custom JS to inject. +optional inline_css string - Custom CSS to inject.

is_ready +

+

public

+

Checks if the window is ready to receive data.

+

return bool

on_message +

+

private

+

Callback for handling incoming tgui messages.

reinitialize +

+

public

+

Reinitializes the panel with previous data used for initialization.

release_lock +

+

public

+

Release the window lock.

replace_html +

+

public

+

Replaces the inline HTML content.

+

required inline_html string HTML to inject

send_asset +

+

public

+

Makes an asset available to use in tgui.

+

required asset datum/asset

+

return bool - TRUE if any assets had to be sent to the client

send_message +

+

public

+

Sends a message to tgui window.

+

required type string Message type +required payload list Message payload +optional force bool Send regardless of the ready status.

send_raw_message +

+

public

+

Sends a raw payload to tgui window.

+

required message string JSON+urlencoded blob to send. +optional force bool Send regardless of the ready status.

subscribe +

+

public

+

Subscribes the datum to consume window messages on a specified proc.

+

Note, that this supports only one subscriber, because code for that +is simpler and therefore faster. If necessary, this can be rewritten +to support multiple subscribers.

unsubscribe +

+

public

+

Unsubscribes the datum. Do not forget to call this when cleaning up.

+ + + diff --git a/datum/timedevent.html b/datum/timedevent.html new file mode 100644 index 000000000000..bb39be8d7644 --- /dev/null +++ b/datum/timedevent.html @@ -0,0 +1,156 @@ + + + + + + + /datum/timedevent - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Timed Event + + + +

+ +

This is the actual timer, it contains the callback and necessary data to maintain +the timer.

+

See the documentation for the timer subsystem for an explanation of the buckets referenced +below in next and prev

+ + + + + + + + + + + + + + + + +

Vars

bucket_joinedBoolean indicating if timer joined into bucket
bucket_posInitial bucket position
callBackThe callback to invoke after the timer completes
flagsFlags associated with the timer, see _DEFINES/subsystems.dm
hashUnique hash generated when TIMER_UNIQUE flag is present
idID used for timers when the TIMER_STOPPABLE flag is present
nameAn informative name generated for the timer as its representation in strings, useful for debugging
nextNext timed event in the bucket
prevPrevious timed event in the bucket
sourceThe source of the timedevent, whatever called addtimer
spentTime at which the timer was invoked or destroyed
timeToRunThe time at which the callback should be invoked at
timer_subsystemThe timer subsystem this event is associated with
waitThe length of the timer

Procs

bucketEjectRemoves this timed event from any relevant buckets, or the secondary queue
bucketJoinAttempts to add this timed event to a bucket, will enter the secondary queue +if there are no appropriate buckets at this time.
getcallingtypeReturns a string of the type of the callback for this timer
+

Var Details

bucket_joined + + + + +

+

Boolean indicating if timer joined into bucket

bucket_pos + + + + +

+

Initial bucket position

callBack + + + + +

+

The callback to invoke after the timer completes

flags + + + + +

+

Flags associated with the timer, see _DEFINES/subsystems.dm

hash + + + + +

+

Unique hash generated when TIMER_UNIQUE flag is present

id + + + + +

+

ID used for timers when the TIMER_STOPPABLE flag is present

name + + + + +

+

An informative name generated for the timer as its representation in strings, useful for debugging

next + + + + +

+

Next timed event in the bucket

prev + + + + +

+

Previous timed event in the bucket

source + + + + +

+

The source of the timedevent, whatever called addtimer

spent + + + + +

+

Time at which the timer was invoked or destroyed

timeToRun + + + + +

+

The time at which the callback should be invoked at

timer_subsystem + + + + +

+

The timer subsystem this event is associated with

wait + + + + +

+

The length of the timer

Proc Details

bucketEject +

+

Removes this timed event from any relevant buckets, or the secondary queue

bucketJoin +

+

Attempts to add this timed event to a bucket, will enter the secondary queue +if there are no appropriate buckets at this time.

+

Secondary queueing of timed events will occur when the timespan covered by the existing +buckets is exceeded by the time at which this timed event is scheduled to be invoked. +If the timed event is tracking client time, it will be added to a special bucket.

getcallingtype +

+

Returns a string of the type of the callback for this timer

+ + + diff --git a/datum/turf_reservation.html b/datum/turf_reservation.html new file mode 100644 index 000000000000..da92c4cbdb4f --- /dev/null +++ b/datum/turf_reservation.html @@ -0,0 +1,141 @@ + + + + + + + /datum/turf_reservation - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/turf_reservation + + + +

+ + + + + + + + + + + + + + + + + +

Vars

bottom_left_turfsList of the bottom left turfs. Indexed by what their z index for this reservation is
cordon_turfsTurfs around the reservation for cordoning
heightThe height of the reservation
pre_cordon_distanceDistance away from the cordon where we can put a "sort-cordon" and run some extra code (see make_repel). 0 makes nothing happen
pre_cordon_turfsArea of turfs next to the cordon to fill with pre_cordon_area's
reserved_turfsAll turfs that we've reserved
top_right_turfsList of the top right turfs. Indexed by what their z index for this reservation is
turf_typeThe turf type the reservation is initially made with
widthThe width of the reservation
z_sizeThe z stack size of the reservation. Note that reservations are ALWAYS reserved from the bottom up

Procs

_reserve_areaInternal proc which handles reserving the area for the reservation.
calculate_cordon_turfsAttempts to calaculate and store a list of turfs around the reservation for cordoning. Returns whether a valid cordon was calculated
calculate_turf_bounds_informationCalculates the effective bounds information for the given turf. Returns a list of the information, or null if not applicable.
generate_cordonActually generates the cordon around the reservation, and marking the cordon turfs as reserved
get_turf_aboveGets the turf above the given target. Returns null if there is no turf above the target
get_turf_belowGets the turf below the given target. Returns null if there is no turf below the target
+

Var Details

bottom_left_turfs + + + + +

+

List of the bottom left turfs. Indexed by what their z index for this reservation is

cordon_turfs + + + + +

+

Turfs around the reservation for cordoning

height + + + + +

+

The height of the reservation

pre_cordon_distance + + + + +

+

Distance away from the cordon where we can put a "sort-cordon" and run some extra code (see make_repel). 0 makes nothing happen

pre_cordon_turfs + + + + +

+

Area of turfs next to the cordon to fill with pre_cordon_area's

reserved_turfs + + + + +

+

All turfs that we've reserved

top_right_turfs + + + + +

+

List of the top right turfs. Indexed by what their z index for this reservation is

turf_type + + + + +

+

The turf type the reservation is initially made with

width + + + + +

+

The width of the reservation

z_size + + + + +

+

The z stack size of the reservation. Note that reservations are ALWAYS reserved from the bottom up

Proc Details

_reserve_area +

+

Internal proc which handles reserving the area for the reservation.

calculate_cordon_turfs +

+

Attempts to calaculate and store a list of turfs around the reservation for cordoning. Returns whether a valid cordon was calculated

calculate_turf_bounds_information +

+

Calculates the effective bounds information for the given turf. Returns a list of the information, or null if not applicable.

generate_cordon +

+

Actually generates the cordon around the reservation, and marking the cordon turfs as reserved

get_turf_above +

+

Gets the turf above the given target. Returns null if there is no turf above the target

get_turf_below +

+

Gets the turf below the given target. Returns null if there is no turf below the target

+ + + diff --git a/datum/tutorial.html b/datum/tutorial.html new file mode 100644 index 000000000000..a22725ec7611 --- /dev/null +++ b/datum/tutorial.html @@ -0,0 +1,239 @@ + + + + + + + /datum/tutorial - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Base + + + +

+ +

A tutorial datum contains a set of instructions for a player tutorial, such as what to spawn, what's scripted to occur, and so on.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

bottom_left_cornerRef to the bottom-left corner tile of the tutorial room
categoryWhat category the tutorial should be under
completion_markedIf the tutorial has been completed. This doesn't need to be modified if you call end_tutorial() with a param of TRUE
descA short 1-2 sentence description of the tutorial itself
icon_stateWhat the tutorial's icon in the UI should look like
nameWhat the tutorial is called, is player facing
parent_pathWhat is the parent path of this, to exclude from the tutorial menu
player_bind_dictA dictionary of "bind_name" : "keybind_button". The inverse of key_bindings on a client's prefs
reservationRef to the turf reservation for this tutorial
tracking_atomsA dict of type:atom ref for some important junk that should be trackable
tutorial_endingIf the tutorial will be ending soon
tutorial_idInternal ID of the tutorial, kept for save files. Format is "tutorialtype_specifictutorial_number". So, the first basic xeno tutorial would be "xeno_basic_1", and the 2nd marine medical tutorial would be "marine_medical_2"
tutorial_mobRef to the player who is doing the tutorial
tutorial_templateWhat map template should be used for the tutorial

Procs

abort_tutorialSomething went very, very wrong during load so let's abort
end_tutorialThe proc used to end and clean up the tutorial
generate_bindsGenerate a dictionary of button : action for use of referencing what keys to press
init_mapInitialize any objects that need to be in the tutorial area from the beginning.
init_mobInitialize the tutorial mob.
loc_from_cornerReturns a turf offset by offset_x (left-to-right) and offset_y (up-to-down)
mark_completedWhen called, will make anything that ends the tutorial mark it as completed. Does not need to be called if end_tutorial(TRUE) is called instead
message_to_playerBroadcast a message to the player's screen
on_ghostHandle the player ghosting out
on_logoutCalled whenever the tutorial_mob logs out
retrieve_bindGetter for player_bind_dict. Provide an action name like "North" or "quick_equip"
signal_end_tutorialA wrapper for signals to call end_tutorial()
start_tutorialThe proc to begin doing everything related to the tutorial
tutorial_end_inEnds the tutorial after a certain amount of time.
update_objectiveUpdates a player's objective in their status tab
verify_template_loadedVerify the template loaded fully and without error.
+

Var Details

bottom_left_corner + + + + +

+

Ref to the bottom-left corner tile of the tutorial room

category + + + + +

+

What category the tutorial should be under

completion_marked + + + + +

+

If the tutorial has been completed. This doesn't need to be modified if you call end_tutorial() with a param of TRUE

desc + + + + +

+

A short 1-2 sentence description of the tutorial itself

icon_state + + + + +

+

What the tutorial's icon in the UI should look like

name + + + + +

+

What the tutorial is called, is player facing

parent_path + + + + +

+

What is the parent path of this, to exclude from the tutorial menu

player_bind_dict + + + + +

+

A dictionary of "bind_name" : "keybind_button". The inverse of key_bindings on a client's prefs

reservation + + + + +

+

Ref to the turf reservation for this tutorial

tracking_atoms + + + + +

+

A dict of type:atom ref for some important junk that should be trackable

tutorial_ending + + + + +

+

If the tutorial will be ending soon

tutorial_id + + + + +

+

Internal ID of the tutorial, kept for save files. Format is "tutorialtype_specifictutorial_number". So, the first basic xeno tutorial would be "xeno_basic_1", and the 2nd marine medical tutorial would be "marine_medical_2"

tutorial_mob + + + + +

+

Ref to the player who is doing the tutorial

tutorial_template + + + + +

+

What map template should be used for the tutorial

Proc Details

abort_tutorial +

+

Something went very, very wrong during load so let's abort

end_tutorial +

+

The proc used to end and clean up the tutorial

generate_binds +

+

Generate a dictionary of button : action for use of referencing what keys to press

init_map +

+

Initialize any objects that need to be in the tutorial area from the beginning.

init_mob +

+

Initialize the tutorial mob.

loc_from_corner +

+

Returns a turf offset by offset_x (left-to-right) and offset_y (up-to-down)

mark_completed +

+

When called, will make anything that ends the tutorial mark it as completed. Does not need to be called if end_tutorial(TRUE) is called instead

message_to_player +

+

Broadcast a message to the player's screen

on_ghost +

+

Handle the player ghosting out

on_logout +

+

Called whenever the tutorial_mob logs out

retrieve_bind +

+

Getter for player_bind_dict. Provide an action name like "North" or "quick_equip"

signal_end_tutorial +

+

A wrapper for signals to call end_tutorial()

start_tutorial +

+

The proc to begin doing everything related to the tutorial

tutorial_end_in +

+

Ends the tutorial after a certain amount of time.

update_objective +

+

Updates a player's objective in their status tab

verify_template_loaded +

+

Verify the template loaded fully and without error.

+ + + diff --git a/datum/tutorial/marine/basic.html b/datum/tutorial/marine/basic.html new file mode 100644 index 000000000000..6d8bbe4f2db6 --- /dev/null +++ b/datum/tutorial/marine/basic.html @@ -0,0 +1,50 @@ + + + + + + + /datum/tutorial/marine/basic - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Marine - Basic + + + +

+ + + + +

Vars

clothing_items_to_vendHow many items need to be vended from the clothing vendor for the script to continue, if something vends 2 items (for example), increase this number by 2.
gun_items_to_vendHow many items need to be vended from the gun vendor to continue

Procs

on_magazine_emptyNon-contiguous part of the script, called if the user manages to run out of ammo in the gun without the xeno dying
+

Var Details

clothing_items_to_vend + + + + +

+

How many items need to be vended from the clothing vendor for the script to continue, if something vends 2 items (for example), increase this number by 2.

gun_items_to_vend + + + + +

+

How many items need to be vended from the gun vendor to continue

Proc Details

on_magazine_empty +

+

Non-contiguous part of the script, called if the user manages to run out of ammo in the gun without the xeno dying

+ + + diff --git a/datum/tutorial/marine/example.html b/datum/tutorial/marine/example.html new file mode 100644 index 000000000000..4ca6e066ac53 --- /dev/null +++ b/datum/tutorial/marine/example.html @@ -0,0 +1,35 @@ + + + + + + + /datum/tutorial/marine/example - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Example Tutorial + + + +

+ + +

Procs

on_can_pickupWe get these arguments from the signal's definition. If you have VSC, ctrl+click on COMSIG_MOB_PICKUP_ITEM above. When dealing with a signal proc, datum/source is always the first argument, then any added ones

Proc Details

on_can_pickup +

+

We get these arguments from the signal's definition. If you have VSC, ctrl+click on COMSIG_MOB_PICKUP_ITEM above. When dealing with a signal proc, datum/source is always the first argument, then any added ones

+ + + diff --git a/datum/tutorial/marine/reqs_line.html b/datum/tutorial/marine/reqs_line.html new file mode 100644 index 000000000000..ba2088be8926 --- /dev/null +++ b/datum/tutorial/marine/reqs_line.html @@ -0,0 +1,231 @@ + + + + + + + /datum/tutorial/marine/reqs_line - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Marine - Requistions Line + + + +

+ +

Simulates the Requisitions Line experience for newcomers

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

active_agentActive agent currently at the line
agentsList of line 'agents', aka the dummies requesting items, sorted by line order +During normal stages there is one per stage (except for Forgot stage), +During Survival mode there would usually be two: one at the counter, and one moving. +The agents are mapped to a list of item types requested.
confused_cooldownCooldown of confusion if an incorrect item is presented
confused_typesCrutch for confusion feedback to work with vending new()ing directly to table - only act surprised once per item type
hint_timerCurrent "hint" timer after which we display visual cues like highlights
loser_agentSpecifically for TUTORIAL_REQS_LINE_STAGE_MIXED, the agent that forgot an item
max_survival_agentsMax amount of agents per survival wave
remind_timerCurrent "remind" timer after which the agent will remind player of its request
stageCurrent step of the tutorial we're at
survival_difficultyDifficulty factor per survival wave, increasing both the amount of agents and requested items
survival_request_random_factorMax factor of additional items requested per agent in survival mode. 0.5 = 50% added maximum
survival_waveCurrent survival wave

Procs

a_new_challenger_appearsCalled when an agent presents at the line window and needs to make a request
agent_stepMakes agents move on processing tick if they can. They check surroundings to ensure proper movement flow.
clean_agentCleanup when an agent reaches the exit
clean_itemsCleanup the table and ground contents when an agent leaves the line
item_offeredTriggered when an object is put on the table. The agent evaluates if that's something they want and reacts appropriately.
kill_timersKills active timers to reset state
remind_requestCalled when we need to remind the user of what we want served
restock_one_vendorRefills a specific vendor to 99 items across the board
restock_vendorsRefills all the vendors on stage updates so the player shouldn't run out of stock
scan_table_for_itemsRe-scan the table/trade turf for any present items. We have to do this because items vended to the table do not move onto it.
send_hintsDisplays appropriate hints for the user based on tutorial stage
spawn_agentCreates a new agent with the given request list to queue in the line
spawn_survival_agentCalled to generate a single agent and request
spawn_survival_waveCalled to generate a new survival wave of agents
user_in_positionCalled when the player is in position to start handling the line
verbalize_requestTransforms the list of required items by the agent into a string request for the user
+

Var Details

active_agent + + + + +

+

Active agent currently at the line

agents + + + + +

+

List of line 'agents', aka the dummies requesting items, sorted by line order +During normal stages there is one per stage (except for Forgot stage), +During Survival mode there would usually be two: one at the counter, and one moving. +The agents are mapped to a list of item types requested.

confused_cooldown + + + + +

+

Cooldown of confusion if an incorrect item is presented

confused_types + + + + +

+

Crutch for confusion feedback to work with vending new()ing directly to table - only act surprised once per item type

hint_timer + + + + +

+

Current "hint" timer after which we display visual cues like highlights

loser_agent + + + + +

+

Specifically for TUTORIAL_REQS_LINE_STAGE_MIXED, the agent that forgot an item

max_survival_agents + + + + +

+

Max amount of agents per survival wave

remind_timer + + + + +

+

Current "remind" timer after which the agent will remind player of its request

stage + + + + +

+

Current step of the tutorial we're at

survival_difficulty + + + + +

+

Difficulty factor per survival wave, increasing both the amount of agents and requested items

survival_request_random_factor + + + + +

+

Max factor of additional items requested per agent in survival mode. 0.5 = 50% added maximum

survival_wave + + + + +

+

Current survival wave

Proc Details

a_new_challenger_appears +

+

Called when an agent presents at the line window and needs to make a request

agent_step +

+

Makes agents move on processing tick if they can. They check surroundings to ensure proper movement flow.

clean_agent +

+

Cleanup when an agent reaches the exit

clean_items +

+

Cleanup the table and ground contents when an agent leaves the line

item_offered +

+

Triggered when an object is put on the table. The agent evaluates if that's something they want and reacts appropriately.

kill_timers +

+

Kills active timers to reset state

remind_request +

+

Called when we need to remind the user of what we want served

restock_one_vendor +

+

Refills a specific vendor to 99 items across the board

restock_vendors +

+

Refills all the vendors on stage updates so the player shouldn't run out of stock

scan_table_for_items +

+

Re-scan the table/trade turf for any present items. We have to do this because items vended to the table do not move onto it.

send_hints +

+

Displays appropriate hints for the user based on tutorial stage

spawn_agent +

+

Creates a new agent with the given request list to queue in the line

spawn_survival_agent +

+

Called to generate a single agent and request

spawn_survival_wave +

+

Called to generate a new survival wave of agents

user_in_position +

+

Called when the player is in position to start handling the line

verbalize_request +

+

Transforms the list of required items by the agent into a string request for the user

+ + + diff --git a/datum/tutorial/xenomorph.html b/datum/tutorial/xenomorph.html new file mode 100644 index 000000000000..767c6f93df25 --- /dev/null +++ b/datum/tutorial/xenomorph.html @@ -0,0 +1,50 @@ + + + + + + + /datum/tutorial/xenomorph - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/tutorial/xenomorph + + + +

+ + + + +

Vars

remove_all_actionsIf TRUE remove all actions from the tutorial xenomorph. If FALSE none will be removed. You can give actions back in the tutorial with give_action()
starting_xenomorph_typeStarting xenomorph type (caste) of type /mob/living/carbon/xenomorph/...
xenoReference to the actual xenomorph mob
+

Var Details

remove_all_actions + + + + +

+

If TRUE remove all actions from the tutorial xenomorph. If FALSE none will be removed. You can give actions back in the tutorial with give_action()

starting_xenomorph_type + + + + +

+

Starting xenomorph type (caste) of type /mob/living/carbon/xenomorph/...

xeno + + + + +

+

Reference to the actual xenomorph mob

+ + + diff --git a/datum/tutorial/xenomorph/abomination.html b/datum/tutorial/xenomorph/abomination.html new file mode 100644 index 000000000000..a5236919154d --- /dev/null +++ b/datum/tutorial/xenomorph/abomination.html @@ -0,0 +1,43 @@ + + + + + + + /datum/tutorial/xenomorph/abomination - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Xenomorph - Predalien + + + +

+ + + +

Vars

ending_marines_killedHow many marines in the kill_marines stage have been killed

Procs

on_marine_early_deathIn case a marine dies early to prevent softlocks
+

Var Details

ending_marines_killed + + + + +

+

How many marines in the kill_marines stage have been killed

Proc Details

on_marine_early_death +

+

In case a marine dies early to prevent softlocks

+ + + diff --git a/datum/tutorial_menu.html b/datum/tutorial_menu.html new file mode 100644 index 000000000000..85f28dd58c1a --- /dev/null +++ b/datum/tutorial_menu.html @@ -0,0 +1,36 @@ + + + + + + + /datum/tutorial_menu - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/tutorial_menu + + + +

+ + +

Vars

categoriesList of ["name" = name, "tutorials" = ["name" = name, "path" = "path", "id" = tutorial_id]]
+

Var Details

categories + + + + +

+

List of ["name" = name, "tutorials" = ["name" = name, "path" = "path", "id" = tutorial_id]]

+ + + diff --git a/datum/ui_state.html b/datum/ui_state.html new file mode 100644 index 000000000000..380ab28992b6 --- /dev/null +++ b/datum/ui_state.html @@ -0,0 +1,40 @@ + + + + + + + /datum/ui_state - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/ui_state + + + +

+ + +

Procs

can_use_topicprivate

Proc Details

can_use_topic +

+

private

+

Checks if a user can use src_object's UI, and returns the state. +Can call a mob proc, which allows overrides for each mob.

+

required src_object datum The object/datum which owns the UI. +required user mob The mob who opened/is using the UI.

+

return UI_state The state of the UI.

+ + + diff --git a/datum/unit_test.html b/datum/unit_test.html new file mode 100644 index 000000000000..760ea0a663bb --- /dev/null +++ b/datum/unit_test.html @@ -0,0 +1,73 @@ + + + + + + + /datum/unit_test - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/unit_test + + + +

+ + + + + + + +

Vars

priorityThe priority of the test, the larger it is the later it fires
run_loc_floor_bottom_leftThe bottom left floor turf of the testing zone
run_loc_floor_top_rightThe top right floor turf of the testing zone

Procs

allocateAllocates an instance of the provided type, and places it somewhere in an available loc +Instances allocated through this proc will be destroyed when the test is over
get_flat_icon_for_all_directionsHelper for screenshot tests to take an image of an atom from all directions and insert it into one icon
log_for_testLogs a test message. Will use GitHub action syntax found at https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions
+

Var Details

priority + + + + +

+

The priority of the test, the larger it is the later it fires

run_loc_floor_bottom_left + + + + +

+

The bottom left floor turf of the testing zone

run_loc_floor_top_right + + + + +

+

The top right floor turf of the testing zone

Proc Details

allocate +

+

Allocates an instance of the provided type, and places it somewhere in an available loc +Instances allocated through this proc will be destroyed when the test is over

get_flat_icon_for_all_directions +

+

Helper for screenshot tests to take an image of an atom from all directions and insert it into one icon

log_for_test +

+

Logs a test message. Will use GitHub action syntax found at https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions

+ + + diff --git a/datum/unit_test/check_runtimes.html b/datum/unit_test/check_runtimes.html new file mode 100644 index 000000000000..65259dd09921 --- /dev/null +++ b/datum/unit_test/check_runtimes.html @@ -0,0 +1,36 @@ + + + + + + + /datum/unit_test/check_runtimes - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/unit_test/check_runtimes + + + +

+ + +

Vars

whitelisted_regexRegex patterns if we must satisfy checks with runtimes present
+

Var Details

whitelisted_regex + + + + +

+

Regex patterns if we must satisfy checks with runtimes present

+ + + diff --git a/datum/unit_test/missing_icons.html b/datum/unit_test/missing_icons.html new file mode 100644 index 000000000000..6852f898208a --- /dev/null +++ b/datum/unit_test/missing_icons.html @@ -0,0 +1,40 @@ + + + + + + + /datum/unit_test/missing_icons - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/unit_test/missing_icons + + + +

+ +

Makes sure objects actually have icons that exist!

+

Vars

additional_icon_locationadditional_icon_location is for downstream modularity support. +Make sure this location is also present in tools/deploy.sh +If you need additional paths ontop of this second one, you can add another generate_possible_icon_states_list("your/folder/path/") below the if(additional_icon_location) block in Run(), and make sure to add that path to tools/deploy.sh as well.
+

Var Details

additional_icon_location + + + + +

+

additional_icon_location is for downstream modularity support. +Make sure this location is also present in tools/deploy.sh +If you need additional paths ontop of this second one, you can add another generate_possible_icon_states_list("your/folder/path/") below the if(additional_icon_location) block in Run(), and make sure to add that path to tools/deploy.sh as well.

+ + + diff --git a/datum/unit_test/stop_drop_and_roll.html b/datum/unit_test/stop_drop_and_roll.html new file mode 100644 index 000000000000..c0215a7df9db --- /dev/null +++ b/datum/unit_test/stop_drop_and_roll.html @@ -0,0 +1,35 @@ + + + + + + + /datum/unit_test/stop_drop_and_roll - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/unit_test/stop_drop_and_roll + + + +

+ + +

Procs

RunTest that stop, drop, and roll lowers fire stacks

Proc Details

Run +

+

Test that stop, drop, and roll lowers fire stacks

+ + + diff --git a/datum/weather_event.html b/datum/weather_event.html new file mode 100644 index 000000000000..825d0be9eee9 --- /dev/null +++ b/datum/weather_event.html @@ -0,0 +1,43 @@ + + + + + + + /datum/weather_event - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

set this + + + +

+ + + +

Vars

fullscreen_typeOptional vars
nameMANDATORY vars
+

Var Details

fullscreen_type + + + + +

+

Optional vars

name + + + + +

+

MANDATORY vars

+ + + diff --git a/datum/world_topic.html b/datum/world_topic.html new file mode 100644 index 000000000000..16249f7b0413 --- /dev/null +++ b/datum/world_topic.html @@ -0,0 +1,43 @@ + + + + + + + /datum/world_topic - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/world_topic + + + +

+ + + +

Vars

anonymouscan be used with anonymous authentication
keyquery key
+

Var Details

anonymous + + + + +

+

can be used with anonymous authentication

key + + + + +

+

query key

+ + + diff --git a/datum/xeno_shield/vanguard.html b/datum/xeno_shield/vanguard.html new file mode 100644 index 000000000000..5da4051929af --- /dev/null +++ b/datum/xeno_shield/vanguard.html @@ -0,0 +1,35 @@ + + + + + + + /datum/xeno_shield/vanguard - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/datum/xeno_shield/vanguard + + + +

+ + +

Procs

begin_decayDecay is suppressed for Vanguard Shield and triggered on hit

Proc Details

begin_decay +

+

Decay is suppressed for Vanguard Shield and triggered on hit

+ + + diff --git a/datum/xeno_strain.html b/datum/xeno_strain.html new file mode 100644 index 000000000000..9263ceeb4e39 --- /dev/null +++ b/datum/xeno_strain.html @@ -0,0 +1,95 @@ + + + + + + + /datum/xeno_strain - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/datum/xeno_strain + + + +

+ + + + + + + + + + +

Vars

actions_to_addA list of action typepaths which should be added when a xeno takes the strain.
actions_to_removeA list of action typepaths which should be removed when a xeno takes the strain.
behavior_delegate_typeTypepath of the /datum/behavior_delegate to add.
descriptionDescription to be displayed on purchase.
flavor_description(OPTIONAL) Flavor text to be shown on purchase. Semi-OOC
icon_state_prefix(OPTIONAL) A custom icon state prefix for xenos who have taken the strain.
nameThe name of the strain. Should be short but informative.

Procs

_add_to_xenoAdd this strain to xeno, replacing their actions and behavior holder.
apply_strainAdds any special modifiers/changes from this strain to xeno.
+

Var Details

actions_to_add + + + + +

+

A list of action typepaths which should be added when a xeno takes the strain.

actions_to_remove + + + + +

+

A list of action typepaths which should be removed when a xeno takes the strain.

behavior_delegate_type + + + + +

+

Typepath of the /datum/behavior_delegate to add.

description + + + + +

+

Description to be displayed on purchase.

flavor_description + + + + +

+

(OPTIONAL) Flavor text to be shown on purchase. Semi-OOC

icon_state_prefix + + + + +

+

(OPTIONAL) A custom icon state prefix for xenos who have taken the strain.

name + + + + +

+

The name of the strain. Should be short but informative.

Proc Details

_add_to_xeno +

+

Add this strain to xeno, replacing their actions and behavior holder.

+

Returns a bool indicating if the strain was successfully applied. +Override /datum/xeno_strain/proc/apply_strain, not this! (Unless you know what you're doing.)

apply_strain +

+

Adds any special modifiers/changes from this strain to xeno.

+

Called when the strain is first added to the player.

+ + + diff --git a/datum/yautja_emote_panel.html b/datum/yautja_emote_panel.html new file mode 100644 index 000000000000..867f6c611fa3 --- /dev/null +++ b/datum/yautja_emote_panel.html @@ -0,0 +1,50 @@ + + + + + + + /datum/yautja_emote_panel - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/datum/yautja_emote_panel + + + +

+ + + + +

Vars

panel_emote_cooldownPanel allows you to spam, so a manual CD is added here
yautja_categoriesStatic list of categories
yautja_emotesStatic dict ("category" : (emotes)) of every yautja emote typepath
+

Var Details

panel_emote_cooldown + + + + +

+

Panel allows you to spam, so a manual CD is added here

yautja_categories + + + + +

+

Static list of categories

yautja_emotes + + + + +

+

Static dict ("category" : (emotes)) of every yautja emote typepath

+ + + diff --git a/dmdoc.css b/dmdoc.css new file mode 100644 index 000000000000..367f005d2a85 --- /dev/null +++ b/dmdoc.css @@ -0,0 +1,112 @@ +body { + margin: auto; + background: #f4f4f4; + color: #333333; + font-size: 16px; + line-height: 1.3; + max-width: 73%; + overflow-y: scroll; + font-family: Arial, Helvetica, sans-serif; +} +pre, code { + background: white; + tab-size: 4; + -moz-tab-size: 4; +} +pre { + padding: 8px; + white-space: pre-wrap; +} +code { + font-family: Consolas, "DejaVu Sans Mono", "Courier New", Courier, monospace; +} +a { + color: #333333; +} +article { + margin: 2.5% auto; +} +header, footer { + margin: 2.5% -6px; + border: 1px solid #444444; + border-radius: 5px; + padding: 5px; +} +h1 aside, h2 aside, h3 aside, h4 aside, h5 aside { + display: inline; + font-weight: normal; + font-size: smaller; +} +aside.declaration, aside.parent { + display: inline-block; + position: relative; + text-align: right; + width: 100px; + margin-right: -100px; + right: 105px; +} +aside.declaration { + font-style: italic; +} +table.summary tr:first-child > td > :first-child { + margin-top: 0; +} +table.summary tr:last-child > td > :last-child { + margin-bottom: 0; +} +table.summary th, table.summary td { + text-align: left; + vertical-align: top; + padding-left: 0; + padding-right: 1em; +} +table.summary th { + padding-left: 1em; + padding-bottom: 4px; + text-indent: -1em; +} +.no-substance { + color: #888888; +} +:target { + background-color: white; + border-radius: 5px; + padding-left: 3px; + padding-right: 3px; + margin-left: -3px; + margin-right: 3px; +} +img[src="git.png"] { + opacity: 0.8; +} +.expander { + cursor: pointer; + display: inline-block; + position: relative; + text-align: right; + width: 50px; + margin-right: -50px; + right: 53px; +} + +@media (prefers-color-scheme: dark) { + body { + background-color: #151520; + color: #e0e0e0; + } + a { + color: #e0e0e0; + } + header, footer { + border-color: #d0d0d0; + } + .no-substance { + color: #bbbbbb; + } + pre, code, :target { + background-color: #252530; + } + img[src="git.png"] { + filter: invert(1); + } +} diff --git a/dmdoc.js b/dmdoc.js new file mode 100644 index 000000000000..6bf31f7e9441 --- /dev/null +++ b/dmdoc.js @@ -0,0 +1,58 @@ +// ---------------------------------------------------------------------------- +// Index page tree browsing + +document.addEventListener("DOMContentLoaded", function() { + var items = document.getElementsByClassName("index-tree"); + var nodes = []; + + for (var i = 0; i < items.length; ++i) { + var node = items[i]; + var parent = node.parentElement; + if (!parent || parent.tagName.toLowerCase() != "li") { + continue; + } + node.hidden = true; + parent.style.listStyle = "none"; + var expander = document.createElement("span"); + expander.className = "expander"; + expander.textContent = "\u2795"; + expander.addEventListener("click", function(node) { + return function(event) { + if (event.target.tagName.toLowerCase() == "a") { + return; + } + event.preventDefault(); + event.stopPropagation(true); + node.hidden = !node.hidden; + this.textContent = node.hidden ? "\u2795" : "\u2796"; + }; + }(node)); + + if (node.parentElement.parentElement.classList.contains("modules")) { + node.hidden = false; + expander.textContent = "\u2796"; + } + + parent.insertBefore(expander, parent.firstChild); + nodes.push({ node, expander }); + } + + if (nodes.length) { + var toggle = document.createElement("a"); + toggle.href = "#"; + toggle.appendChild(document.createTextNode("Toggle All")); + toggle.addEventListener("click", function(event) { + event.preventDefault(); + + var hidden = !nodes[1].node.hidden; + for (var i = 0; i < nodes.length; ++i) { + nodes[i].node.hidden = hidden; + nodes[i].expander.textContent = hidden ? "\u2795" : "\u2796"; + } + }); + + var header = document.getElementsByTagName("header")[0]; + header.appendChild(document.createTextNode(" \u2014 ")); + header.appendChild(toggle); + } +}); diff --git a/git.png b/git.png new file mode 100644 index 000000000000..c190e8538b5c Binary files /dev/null and b/git.png differ diff --git a/global.html b/global.html new file mode 100644 index 000000000000..3949b0ca5001 --- /dev/null +++ b/global.html @@ -0,0 +1,1624 @@ + + + + + + + (global) - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

(global) + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

FailsafeFailsafe
MasterStonedMC
SSautomatedfire
SSescape_menuSubsystem for controlling anything related to the escape menu
SSinfluxdriverSends collected statistics to an influxdb v2 backend periodically
SSinfluxstatsSends generic round running statistics to the InfluxDB backend
SSminimaps
SSpager_statusUpdates BYOND pager status periodically
SStguitgui subsystem
SStimer

Procs

CreateBansDEBUG
GUIDreturns a GUID like identifier (using a mostly made up record format) +guids are not on their own suitable for access or security tokens, as most of their bits are predictable. +(But may make a nice salt to one)
Get_AngleCalculate the angle between two atoms. Uses north-clockwise convention: NORTH = 0, EAST = 90, etc.
HandleUserlessProcCallHandles a userless proccall, used by circuits.
HandleUserlessSDQLHandles a userless sdql, used by TGS.
TurfBlockedNonWindowthe actual dir between the start and target turf +The direction that mover's path is being blocked by
WrapAdminProcCallWrapper for proccalls where the datum is flagged as vareditted
___TraitAddDO NOT USE ___TraitAdd OR ___TraitRemove as a replacement for ADD_TRAIT / REMOVE_TRAIT defines. To be used explicitly for callback.
___TraitRemoveDO NOT USE ___TraitAdd OR ___TraitRemove as a replacement for ADD_TRAIT / REMOVE_TRAIT defines. To be used explicitly for callback.
______qdel_list_wrapperthe underscores are to encourage people not to use this directly.
_addtimerCreate a new timer and insert it in the queue. +You should not call this directly, and should instead use the addtimer macro, which includes source information.
_animate_filterAuxtools REALLY doesn't know how to handle filters as values; +when passed as arguments to auxtools-called procs, they aren't simply treated as nulls - +they don't even count towards the length of args. +For example, calling some_proc([a filter], foo, bar) from auxtools +is equivalent to calling some_proc(foo, bar). Thus, we can't use _animate directly on filters. +Use this to perform animation steps on a filter. Consecutive steps on the same filter can be +achieved by calling _animate with no target.
_pick_listAllow me to explain +for some reason, if pick() is passed arglist(args) directly and args contains only one list +it considers it to be a list of lists +this means something like _pick(list) would fail +need to do this instead
add_keybindingAdds an instanced keybinding to the global tracker
add_verbhandles adding verbs and updating the stat panel browser
admin_ticket_logUse this proc when an admin takes action that may be related to an open ticket on what +what can be a client, ckey, or mob +player_message: If the message should be shown in the player ticket panel, fill this out +log_in_blackbox: Whether or not this message with the blackbox system. +If disabled, this message should be logged with a different proc call
anyprobchances are 1:value. anyprob(1) will always return true
at_leastTakes a value, and a threshold it has to at least match +returns the correctly signed value max'd to the threshold
baseturfs_string_listA wrapper for baseturf string lists, to offer support of non list values, and a stack_trace if we have major issues
big_number_to_textFormats a larger number to correct textual representation without losing data
bit_countcounts the number of bits in Byond's 16-bit width field, in constant time and memory!
bitfield_to_listConverts a bitfield to a list of numbers (or words if a wordlist is provided)
capitalize_first_lettersFinds the first letter of each word in the provided string and capitalize them
center_imageCenter's an image. +Requires: +The Image +The x dimension of the icon file used in the image +The y dimension of the icon file used in the image +eg: center_image(image_to_center, 32,32) +eg2: center_image(image_to_center, 96,96)
check_asay_linksChecks a given message to see if any of the words are something we want to treat specially, as detailed below.
cmp_mob_deathtime_ascCompares mobs based on their timeofdeath value in ascending order
cmp_obs_larvaqueuetime_ascCompares observers based on their larva_queue_time value in ascending order +Assumes the client on the observer is not null
color_matrix_from_stringConverts a hex color string to a color matrix.
color_matrix_recolor_redCreates a matrix to re-paint a sprite, replacing shades of red with corresponding shades of a new color. In the base sprite, Hue must always be pure red. +Saturation and Lightness can be anything. Arg is a hex string for a color. Proc is by Lummox JR, www.byond.com/forum/post/2209545 +color_matrix_recolor_rgb is more complex, but gives more precise control over the palette, at least if using 3 or fewer colours.
color_matrix_recolor_rgbCreates a matrix to re-paint a sprite, replacing pure red, green, and blue with 3 different shades. Doesn't work with mixed tones of RGB or whites or greys +-- must be pure. R/G/B 255 becomes the new color, darker shades become correspondingly darker. +The arg is a list of hex colours, for ex "list("#d4c218", "#b929f7", "#339933"". +if you want variations of the same color, color_matrix_recolor_red() is simpler.
create_strippable_listCreates an assoc list of keys to /datum/strippable_item
debug_variableGet displayed variable in VV variable list
default_ui_stateThe sane defaults for a UI such as a computer or a machine.
delete_all_SS_and_recreate_masterDelete all existing SS to basically start over
delta_to_angleCalculate the angle produced by a pair of x and y deltas. Uses north-clockwise convention: NORTH = 0, EAST = 90, etc.
deltimerDelete a timer
display_powerFormat a power value in W, kW, MW, or GW.
doviewVersion of oview() which ignores darkness
dviewVersion of view() which ignores darkness, because BYOND doesn't have it (I actually suggested it but it was tagged redundant, BUT HEARERS IS A T- /rant).
emissive_appearanceProduces a mutable appearance glued to the EMISSIVE_PLANE dyed to be the EMISSIVE_COLOR.
emissive_blockerProduces a mutable appearance glued to the EMISSIVE_PLANE dyed to be the EM_BLOCK_COLOR.
end_cooldownCallback called by a timer to end an associative-list-indexed cooldown.
extend_line_to_radiusgets a line from a x and y, to the offset x and y of length radius
flick_overlay_to_clientsAdd an image to a list of clients and calls a proc to remove it after a duration
generate_and_hash_rsc_filegenerates a filename for a given asset. +like generate_asset_name(), except returns the rsc reference and the rsc file hash as well as the asset name (sans extension) +used so that certain asset files dont have to be hashed twice
generate_asset_nameGenerate a filename for this asset +The same asset will always lead to the same asset name +(Generated names do not include file extention.)
generate_autowiki_outputWhen the AUTOWIKI define is enabled, will generate an output file for tools/autowiki/autowiki.js to consume. +Autowiki code intentionally still exists even without the define, to ensure developers notice +when they break it immediately, rather than until CI or worse, call time. +Returns a string of the autowiki output file
generate_bitfieldsTurns /datum/bitfield subtypes into a list for use in debugging
generate_lazy_template_mapIterates through all lazy template datums that exist and returns a list of them as an associative list of type -> instance.
getFlatIconCreate a single /icon from a given /atom or /image.
get_active_player_countGet active players who are playing in the round
get_alien_candidatesGet a list of observers that can be alien candidates.
get_all_notesReturns all notes associated with a CKEY, structured as a list of strings.
get_bbox_of_atomsGet a bounding box of a list of atoms.
get_cardinal_dirReturns the nearest cardinal dir between two atoms. Favors NORTH/SOUTH on perfect diagonals. Consistent and reversible.
get_ceiling_protection_levelConvert a turf protection level to a ceiling protection level
get_icon_dmi_pathgiven an icon object, dmi file path, or atom/image/mutable_appearance, attempts to find and return an associated dmi file path. +a weird quirk about dm is that /icon objects represent both compile-time or dynamic icons in the rsc, +but stringifying rsc references returns a dmi file path +ONLY if that icon represents a completely unchanged dmi file from when the game was compiled. +so if the given object is associated with an icon that was in the rsc when the game was compiled, this returns a path. otherwise it returns ""
get_lineGet a list of turfs in a line from start_atom to end_atom.
get_minimap_flag_for_factionGets the MINIMAP_FLAG for the provided faction or hivenumber if one exists
get_pixel_position_xGives X position on pixel grid of an object, accounting for offsets
get_pixel_position_yGives Y position on pixel grid of an object, accounting for offsets
get_radios_in_viewonly gets FUNCTIONING radios
get_related_directionsGiven a direction, return the direction and the +-45 degree directions next to it
get_specialist_setGet a specialist set datum typepath given a mob, returns null if they aren't a spec or haven't chosen a kit.
get_tacmap_data_pngFetches the datum containing an announced flattend map png reference.
get_tacmap_data_svgFetches the last set of svg coordinates for the tacmap drawing.
get_total_living_playtimeReturns the total time in minutes a specific player ID has played for
get_turf_on_clickcatcherHelper proc that processes a clicked target, if the target is not black tiles, it will not change it. If they are it will return the turf of the black tiles. It will return null if the object is a screen object other than black tiles.
get_unannounced_tacmap_data_pngFetches the datum containing the latest unannounced flattend map png reference.
get_whitelisted_rolesreturns a list of strings containing the whitelists held by a specific ckey
getpoisReturns a list of all items of interest with their name
give_actionGives an action to a mob and returns it
give_escape_menu_detailsProvides a singleton for the escape menu details screen.
give_escape_menu_titleProvides a singleton for the escape menu details screen.
icon2htmlthe dmi file path we attempt to return if the given object argument is associated with a stringifiable icon +if successful, this looks like "icons/path/to/dmi_file.dmi" +but they pass both isicon() and isfile() checks. theyre the easiest case since stringifying them gives us the path we want +generate an asset for the given icon or the icon of the given appearance for [thing], and send it to any clients in target. +Arguments:
icon_existsChecks if the given iconstate exists in the given file, caching the result. Setting scream to TRUE will print a stack trace ONCE.
init_keybindingsCreates and sorts all the keybinding datums
initiate_surgery_momentDoes the surgery initiation. Returns TRUE if the triggering attack should be halted.
is_valid_dmi_filegiven a text string, returns whether it is a valid dmi icons folder path
is_valid_srcCheck if a datum has not been deleted and is a valid source
lisp_replaceReplaces S and similar sounds with 'th' and such. Stolen from tg.
list_clear_nullsRemoves any null entries from the list +Returns TRUE if the list had nulls, FALSE otherwise
load_mapHelper and recommened way to load a map file
log_mappingLogging for mapping errors
log_perfLogging for game performance
log_tguiAppends a tgui-related log entry. All arguments are optional.
make_tupleReturns the name of the mathematical tuple of same length as the number arg (rounded down).
map_pill_iconsPills.
md5asfileSave file as an external file then md5 it. +Used because md5ing files stored in the rsc sometimes gives incorrect md5 results.
mergeListsSumSums values in two associative lists, from mergee into result, in place
message_alien_candidatesMessages observers that are currently candidates an update on the queue.
message_to_htmlMessage-related procs
mutable_appearanceHelper similar to image()
pick_n_takePick a random element from the list and remove it from the list.
pick_weightPicks a random element from a list based on a weighting system. +For example, given the following list: +A = 6, B = 3, C = 1, D = 0 +A would have a 60% chance of being picked, +B would have a 30% chance of being picked, +C would have a 10% chance of being picked, +and D would have a 0% chance of being picked. +You should only pass integers in.
playsound_areaPlays sound to all mobs that are map-level contents of an area
playsound_zPlay sound for all on-map clients on a given Z-level. Good for ambient sounds.
qdelShould be treated as a replacement for the 'del' keyword.
recover_all_SS_and_recreate_masterRecreate all SSs which will still cause data survive due to Recover(), the new Master will then find and take them from global.vars
recursive_holder_checkWill attempt to find what's holding this item if it's being contained by something, ie if it's in a satchel held by a human, this'll return the human
remove_image_from_clientRemoves an image from a client's .images. Useful as a callback.
remove_images_from_clientsLike remove_image_from_client, but will remove the image from a list of clients
remove_verbhandles removing verb and sending it to browser to update, use this for removing verbs
replace_non_alphanumeric_plusHelper for only alphanumeric characters plus common punctuation, spaces, underscore and hyphen _ -.
resend_current_map_pngRe-sends relevant flattened tacmaps to a single client.
reset_cooldownProc used by stoppable timers to end a cooldown before the time has ran out.
return_generator_argsreturns the arguments given to a generator and manually extracts them from the internal byond object +returns:
reverse_rangereplaces reverseList ~Carnie
send2adminchatSends a message to TGS admin chat channels.
send2chatAsynchronously sends a message to TGS chat channels.
setup_hazard_joe_emotesSetup for Hazard joe emotes and category list, returns data for hj_emotes
setup_offsetSets the offset 2 lines above.
setup_working_joe_emotesSetup for Working joe emotes and category list, returns data for wj_emotes
shakeshipShakes the ship around
should_block_game_interactionReturns TRUE if the target is somewhere that the game should not interact with if possible +In this case, admin Zs and tutorial areas
show_blurb*Shows a ticker reading out the given text on a client's screen. +targets = mob or list of mobs to show it to.
show_blurb_uscmShows operation start blurb to living marines. Slightly different for squad marines, pilots, and deploying ship crew/passengers. +exempt_ztraits = trait or list of traits of zlevels where any marines don't see the message, ex. marine faction survivors colonyside +shouldn't see the ship marines' drop message. Ex. ZTRAIT_GROUND by default. +unit = the unit the marines are from. FF, Dust Raiders etc. Military crew see this. +base = the base the marines are staging from. The ship, Whiskey Outpost etc. Noncombat crew see this.
show_location_blurbReads out a description of game time, game date, main ship and current area. Originally for displaying roundstart messages on a conventional SS13 server.
shuffle_inplacesame as shuffle, but returns nothing and acts on list in place
sort_listsort any value in a list
sort_list_distReturns a list of atoms sorted by each entry's distance to target.
stars_decode_htmlSummary: proc that parses an html input string and scrambles the non-html string contents.
string_listCaches lists with non-numeric stringify-able values (text or typepath).
string_starts_withCheck if the string haystack begins with the string needle.
tgui_TopicMiddleware for /client/Topic.
tgui_alertCreates a TGUI alert window and returns the user's response.
tgui_alert_asyncCreates an asynchronous TGUI alert window with an associated callback.
tgui_input_checkboxes
tgui_input_checkboxes_async
tgui_input_listCreates a TGUI input list window and returns the user's response.
tgui_input_list_asyncCreates an asynchronous TGUI input list window with an associated callback.
tgui_input_numberCreates a TGUI window with a number input. Returns the user's response as num | null.
tgui_input_number_asyncCreates an asynchronous TGUI number input window with an associated callback.
tgui_input_real_numberA clone of tgui_input_number that defaults to accepting negative inputs too.
tgui_input_textCreates a TGUI window with a text input. Returns the user's response.
timeleftGet the remaining deciseconds on a timer
to_chatSends the message to the recipient (target).
to_chat_immediateCircumvents the message queue and sends the message +to the recipient (target) as soon as possible.
ui_status_only_livingReturns a UI status such that the dead will be able to watch, but not interact.
ui_status_user_is_abledReturns a UI status such that users with debilitating conditions, such as +being dead or not having power for silicons, will not be able to interact. +Being dead will disable UI, being incapacitated will continue updating it, +and anything else will make it interactive.
ui_status_user_is_adjacentReturns a UI status such that users adjacent to source will be able to interact, +far away users will be able to see, and anyone farther won't see anything. +Dead users will receive updates no matter what, though you likely want to add +a [ui_status_only_living] check for finer observer interactions.
ui_status_user_is_advanced_tool_userReturns a UI status such that advanced tool users will be able to interact, +but everyone else can only watch.
ui_status_user_strictly_adjacentReturn UI_INTERACTIVE if the user is strictly adjacent to the target atom, whether they can see it or not. +Return UI_CLOSE otherwise.
unique_listReturn a list with no duplicate entries
unique_list_in_placesame as unique_list, but returns nothing and acts on list in place (also handles associated values properly)
updatetimedelayUpdate the delay on an existing LOOPING timer +Will come into effect on the next process
url2htmlloaderReturn html to load a url. +for use inside of browse() calls to html assets that might be loaded on a cdn.
worldtime2textReturns the world time in english. Do not use to get date information - starts at 0 + a random time offset from 10 minutes to 24 hours.
+

Var Details

Failsafe + + + + +

+

Failsafe

+

Pretty much pokes the MC to make sure it's still alive.

Master + + + + +

+

StonedMC

+

Designed to properly split up a given tick among subsystems +Note: if you read parts of this code and think "why is it doing it that way" +Odds are, there is a reason

SSautomatedfire + + + + +

+ Autofire Subsystem +

Maintains a timer-like system to handle autofiring. Much of this code is modeled +after or adapted from TGMC's runechat subsytem.

+

Note that this has the same structure for storing and queueing shooter component as the timer subsystem does +for handling timers: the bucket_list is a list of autofire component, each of which are the head +of a linked list. Any given index in bucket_list could be null, representing an empty bucket.

+

Doesn't support any event scheduled for more than 100 ticks in the future, as it has no secondary queue by design

SSescape_menu + + + + +

+

Subsystem for controlling anything related to the escape menu

SSinfluxdriver + + + + +

+

Sends collected statistics to an influxdb v2 backend periodically

SSinfluxstats + + + + +

+

Sends generic round running statistics to the InfluxDB backend

SSminimaps + + + + +

+ Minimaps subsystem +

Handles updating and handling of the by-zlevel minimaps

+

Minimaps are a low priority subsystem that fires relatively often +the Initialize proc for this subsystem draws the maps as one of the last initializing subsystems

+

Fire() for this subsystem doesn't actually update anything, and purely just reapplies the overlays that it already tracks +actual updating of marker locations is handled by [/datum/controller/subsystem/minimaps/proc/on_move] +and zlevel changes are handled in /datum/controller/subsystem/minimaps/proc/on_z_change +tracking of the actual atoms you want to be drawn on is done by means of datums holding info pertaining to them with /datum/hud_displays

SSpager_status + + + + +

+

Updates BYOND pager status periodically

SStgui + + + + +

+

tgui subsystem

+

Contains all tgui state and subsystem code.

SStimer + + + + +

+ Timer Subsystem +

Handles creation, callbacks, and destruction of timed events.

+

It is important to understand the buckets used in the timer subsystem are just a series of doubly-linked +lists. The object at a given index in bucket_list is a /datum/timedevent, the head of a list, which has prev +and next references for the respective elements in that bucket's list.

Proc Details

CreateBans +

+

DEBUG

GUID +

+

returns a GUID like identifier (using a mostly made up record format) +guids are not on their own suitable for access or security tokens, as most of their bits are predictable. +(But may make a nice salt to one)

Get_Angle +

+

Calculate the angle between two atoms. Uses north-clockwise convention: NORTH = 0, EAST = 90, etc.

HandleUserlessProcCall +

+

Handles a userless proccall, used by circuits.

+

Arguments:

+

HandleUserlessSDQL +

+

Handles a userless sdql, used by TGS.

+

Arguments:

+

TurfBlockedNonWindow +

+

the actual dir between the start and target turf +The direction that mover's path is being blocked by

WrapAdminProcCall +

+

Wrapper for proccalls where the datum is flagged as vareditted

___TraitAdd +

+

DO NOT USE ___TraitAdd OR ___TraitRemove as a replacement for ADD_TRAIT / REMOVE_TRAIT defines. To be used explicitly for callback.

___TraitRemove +

+

DO NOT USE ___TraitAdd OR ___TraitRemove as a replacement for ADD_TRAIT / REMOVE_TRAIT defines. To be used explicitly for callback.

______qdel_list_wrapper +

+

the underscores are to encourage people not to use this directly.

_addtimer +

+

Create a new timer and insert it in the queue. +You should not call this directly, and should instead use the addtimer macro, which includes source information.

+

Arguments:

+

_animate_filter +

+

Auxtools REALLY doesn't know how to handle filters as values; +when passed as arguments to auxtools-called procs, they aren't simply treated as nulls - +they don't even count towards the length of args. +For example, calling some_proc([a filter], foo, bar) from auxtools +is equivalent to calling some_proc(foo, bar). Thus, we can't use _animate directly on filters. +Use this to perform animation steps on a filter. Consecutive steps on the same filter can be +achieved by calling _animate with no target.

_pick_list +

+

Allow me to explain +for some reason, if pick() is passed arglist(args) directly and args contains only one list +it considers it to be a list of lists +this means something like _pick(list) would fail +need to do this instead

+

I hate this timeline

add_keybinding +

+

Adds an instanced keybinding to the global tracker

add_verb +

+

handles adding verbs and updating the stat panel browser

+

pass the verb type path to this instead of adding it directly to verbs so the statpanel can update +Arguments:

+

admin_ticket_log +

+

Use this proc when an admin takes action that may be related to an open ticket on what +what can be a client, ckey, or mob +player_message: If the message should be shown in the player ticket panel, fill this out +log_in_blackbox: Whether or not this message with the blackbox system. +If disabled, this message should be logged with a different proc call

anyprob +

+

chances are 1:value. anyprob(1) will always return true

at_least +

+

Takes a value, and a threshold it has to at least match +returns the correctly signed value max'd to the threshold

baseturfs_string_list +

+

A wrapper for baseturf string lists, to offer support of non list values, and a stack_trace if we have major issues

big_number_to_text +

+

Formats a larger number to correct textual representation without losing data

bit_count +

+

counts the number of bits in Byond's 16-bit width field, in constant time and memory!

bitfield_to_list +

+

Converts a bitfield to a list of numbers (or words if a wordlist is provided)

capitalize_first_letters +

+

Finds the first letter of each word in the provided string and capitalize them

center_image +

+

Center's an image. +Requires: +The Image +The x dimension of the icon file used in the image +The y dimension of the icon file used in the image +eg: center_image(image_to_center, 32,32) +eg2: center_image(image_to_center, 96,96)

+

Checks a given message to see if any of the words are something we want to treat specially, as detailed below.

+

There are 3 cases where a word is something we want to act on

+
    +
  1. Admin pings, like @adminckey. Pings the admin in question, text is not clickable
  2. +
  3. Datum refs, like @0x2001169 or @mob_23. Clicking on the link opens up the VV for that datum
  4. +
  5. Ticket refs, like #3. Displays the status and ahelper in the link, clicking on it brings up the ticket panel for it. +Returns a list being used as a tuple. Index ASAY_LINK_NEW_MESSAGE_INDEX contains the new message text (with clickable links and such) +while index ASAY_LINK_PINGED_ADMINS_INDEX contains a list of pinged admin clients, if there are any.
  6. +
+

Arguments:

+

cmp_mob_deathtime_asc +

+

Compares mobs based on their timeofdeath value in ascending order

cmp_obs_larvaqueuetime_asc +

+

Compares observers based on their larva_queue_time value in ascending order +Assumes the client on the observer is not null

color_matrix_from_string +

+

Converts a hex color string to a color matrix.

color_matrix_recolor_red +

+

Creates a matrix to re-paint a sprite, replacing shades of red with corresponding shades of a new color. In the base sprite, Hue must always be pure red. +Saturation and Lightness can be anything. Arg is a hex string for a color. Proc is by Lummox JR, www.byond.com/forum/post/2209545 +color_matrix_recolor_rgb is more complex, but gives more precise control over the palette, at least if using 3 or fewer colours.

color_matrix_recolor_rgb +

+

Creates a matrix to re-paint a sprite, replacing pure red, green, and blue with 3 different shades. Doesn't work with mixed tones of RGB or whites or greys +-- must be pure. R/G/B 255 becomes the new color, darker shades become correspondingly darker. +The arg is a list of hex colours, for ex "list("#d4c218", "#b929f7", "#339933"". +if you want variations of the same color, color_matrix_recolor_red() is simpler.

create_strippable_list +

+

Creates an assoc list of keys to /datum/strippable_item

debug_variable +

+

Get displayed variable in VV variable list

default_ui_state +

+

The sane defaults for a UI such as a computer or a machine.

delete_all_SS_and_recreate_master +

+

Delete all existing SS to basically start over

delta_to_angle +

+

Calculate the angle produced by a pair of x and y deltas. Uses north-clockwise convention: NORTH = 0, EAST = 90, etc.

deltimer +

+

Delete a timer

+

Arguments:

+

display_power +

+

Format a power value in W, kW, MW, or GW.

doview +

+

Version of oview() which ignores darkness

dview +

+

Version of view() which ignores darkness, because BYOND doesn't have it (I actually suggested it but it was tagged redundant, BUT HEARERS IS A T- /rant).

emissive_appearance +

+

Produces a mutable appearance glued to the EMISSIVE_PLANE dyed to be the EMISSIVE_COLOR.

emissive_blocker +

+

Produces a mutable appearance glued to the EMISSIVE_PLANE dyed to be the EM_BLOCK_COLOR.

end_cooldown +

+

Callback called by a timer to end an associative-list-indexed cooldown.

+

Arguments:

+ +

This sends a signal reporting the cooldown end.

extend_line_to_radius +

+

gets a line from a x and y, to the offset x and y of length radius

flick_overlay_to_clients +

+

Add an image to a list of clients and calls a proc to remove it after a duration

generate_and_hash_rsc_file +

+

generates a filename for a given asset. +like generate_asset_name(), except returns the rsc reference and the rsc file hash as well as the asset name (sans extension) +used so that certain asset files dont have to be hashed twice

generate_asset_name +

+

Generate a filename for this asset +The same asset will always lead to the same asset name +(Generated names do not include file extention.)

generate_autowiki_output +

+

When the AUTOWIKI define is enabled, will generate an output file for tools/autowiki/autowiki.js to consume. +Autowiki code intentionally still exists even without the define, to ensure developers notice +when they break it immediately, rather than until CI or worse, call time. +Returns a string of the autowiki output file

generate_bitfields +

+

Turns /datum/bitfield subtypes into a list for use in debugging

generate_lazy_template_map +

+

Iterates through all lazy template datums that exist and returns a list of them as an associative list of type -> instance.

getFlatIcon +

+

Create a single /icon from a given /atom or /image.

+

Very low-performance. Should usually only be used for HTML, where BYOND's +appearance system (overlays/underlays, etc.) is not available.

+

Only the first argument is required. +appearance_flags indicates whether appearance_flags should be respected (at the cost of about 10-20% perf)

get_active_player_count +

+

Get active players who are playing in the round

get_alien_candidates +

+

Get a list of observers that can be alien candidates.

+

Arguments:

+

get_all_notes +

+

Returns all notes associated with a CKEY, structured as a list of strings.

get_bbox_of_atoms +

+

Get a bounding box of a list of atoms.

+

Arguments:

+ +

Returns: list(x1, y1, x2, y2)

get_cardinal_dir +

+

Returns the nearest cardinal dir between two atoms. Favors NORTH/SOUTH on perfect diagonals. Consistent and reversible.

get_ceiling_protection_level +

+

Convert a turf protection level to a ceiling protection level

get_icon_dmi_path +

+

given an icon object, dmi file path, or atom/image/mutable_appearance, attempts to find and return an associated dmi file path. +a weird quirk about dm is that /icon objects represent both compile-time or dynamic icons in the rsc, +but stringifying rsc references returns a dmi file path +ONLY if that icon represents a completely unchanged dmi file from when the game was compiled. +so if the given object is associated with an icon that was in the rsc when the game was compiled, this returns a path. otherwise it returns ""

get_line +

+

Get a list of turfs in a line from start_atom to end_atom.

+

Based on a linear interpolation method from Red Blob Games.

+

Arguments:

+ +

Returns: +list - turfs from start_atom (in/exclusive) to end_atom (inclusive)

get_minimap_flag_for_faction +

+

Gets the MINIMAP_FLAG for the provided faction or hivenumber if one exists

get_pixel_position_x +

+

Gives X position on pixel grid of an object, accounting for offsets

get_pixel_position_y +

+

Gives Y position on pixel grid of an object, accounting for offsets

get_radios_in_view +

+

only gets FUNCTIONING radios

+

Given a direction, return the direction and the +-45 degree directions next to it

get_specialist_set +

+

Get a specialist set datum typepath given a mob, returns null if they aren't a spec or haven't chosen a kit.

get_tacmap_data_png +

+

Fetches the datum containing an announced flattend map png reference.

+

Arguments:

+

get_tacmap_data_svg +

+

Fetches the last set of svg coordinates for the tacmap drawing.

+

Arguments:

+

get_total_living_playtime +

+

Returns the total time in minutes a specific player ID has played for

get_turf_on_clickcatcher +

+

Helper proc that processes a clicked target, if the target is not black tiles, it will not change it. If they are it will return the turf of the black tiles. It will return null if the object is a screen object other than black tiles.

get_unannounced_tacmap_data_png +

+

Fetches the datum containing the latest unannounced flattend map png reference.

+

Arguments:

+

get_whitelisted_roles +

+

returns a list of strings containing the whitelists held by a specific ckey

getpois +

+

Returns a list of all items of interest with their name

give_action +

+

Gives an action to a mob and returns it

+

If mob already has the action, unhide it if it's hidden

+

Can pass additional initialization args

give_escape_menu_details +

+

Provides a singleton for the escape menu details screen.

give_escape_menu_title +

+

Provides a singleton for the escape menu details screen.

icon2html +

+

the dmi file path we attempt to return if the given object argument is associated with a stringifiable icon +if successful, this looks like "icons/path/to/dmi_file.dmi" +but they pass both isicon() and isfile() checks. theyre the easiest case since stringifying them gives us the path we want +generate an asset for the given icon or the icon of the given appearance for [thing], and send it to any clients in target. +Arguments:

+

icon_exists +

+

Checks if the given iconstate exists in the given file, caching the result. Setting scream to TRUE will print a stack trace ONCE.

init_keybindings +

+

Creates and sorts all the keybinding datums

initiate_surgery_moment +

+

Does the surgery initiation. Returns TRUE if the triggering attack should be halted.

is_valid_dmi_file +

+

given a text string, returns whether it is a valid dmi icons folder path

is_valid_src +

+

Check if a datum has not been deleted and is a valid source

lisp_replace +

+

Replaces S and similar sounds with 'th' and such. Stolen from tg.

list_clear_nulls +

+

Removes any null entries from the list +Returns TRUE if the list had nulls, FALSE otherwise

load_map +

+

Helper and recommened way to load a map file

+

log_mapping +

+

Logging for mapping errors

log_perf +

+

Logging for game performance

log_tgui +

+

Appends a tgui-related log entry. All arguments are optional.

make_tuple +

+

Returns the name of the mathematical tuple of same length as the number arg (rounded down).

map_pill_icons +

+

Pills.

+

Returns a list mapping pill icon classes to icon states

md5asfile +

+

Save file as an external file then md5 it. +Used because md5ing files stored in the rsc sometimes gives incorrect md5 results.

mergeListsSum +

+

Sums values in two associative lists, from mergee into result, in place

message_alien_candidates +

+

Messages observers that are currently candidates an update on the queue.

+

Arguments:

+

message_to_html +

+

Message-related procs

+

Message format (/list):

+ +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

mutable_appearance +

+

Helper similar to image()

pick_n_take +

+

Pick a random element from the list and remove it from the list.

pick_weight +

+

Picks a random element from a list based on a weighting system. +For example, given the following list: +A = 6, B = 3, C = 1, D = 0 +A would have a 60% chance of being picked, +B would have a 30% chance of being picked, +C would have a 10% chance of being picked, +and D would have a 0% chance of being picked. +You should only pass integers in.

playsound_area +

+

Plays sound to all mobs that are map-level contents of an area

playsound_z +

+

Play sound for all on-map clients on a given Z-level. Good for ambient sounds.

qdel +

+

Should be treated as a replacement for the 'del' keyword.

+

Datums passed to this will be given a chance to clean up references to allow the GC to collect them.

recover_all_SS_and_recreate_master +

+

Recreate all SSs which will still cause data survive due to Recover(), the new Master will then find and take them from global.vars

recursive_holder_check +

+

Will attempt to find what's holding this item if it's being contained by something, ie if it's in a satchel held by a human, this'll return the human

remove_image_from_client +

+

Removes an image from a client's .images. Useful as a callback.

remove_images_from_clients +

+

Like remove_image_from_client, but will remove the image from a list of clients

remove_verb +

+

handles removing verb and sending it to browser to update, use this for removing verbs

+

pass the verb type path to this instead of removing it from verbs so the statpanel can update +Arguments:

+

replace_non_alphanumeric_plus +

+

Helper for only alphanumeric characters plus common punctuation, spaces, underscore and hyphen _ -.

resend_current_map_png +

+

Re-sends relevant flattened tacmaps to a single client.

+

Arguments:

+

reset_cooldown +

+

Proc used by stoppable timers to end a cooldown before the time has ran out.

+

Arguments:

+ +

This sends a signal reporting the cooldown end, passing the time left as an argument.

return_generator_args +

+

returns the arguments given to a generator and manually extracts them from the internal byond object +returns:

+

reverse_range +

+

replaces reverseList ~Carnie

send2adminchat +

+

Sends a message to TGS admin chat channels.

+

category - The category of the mssage. +message - The message to send.

send2chat +

+

Asynchronously sends a message to TGS chat channels.

+

message - The /datum/tgs_message_content to send. +channel_tag - Required. If "", the message with be sent to all connected (Game-type for TGS3) channels. Otherwise, it will be sent to TGS4 channels with that tag (Delimited by ','s). +admin_only - Determines if this communication can only be sent to admin only channels.

setup_hazard_joe_emotes +

+

Setup for Hazard joe emotes and category list, returns data for hj_emotes

setup_offset +

+

Sets the offset 2 lines above.

setup_working_joe_emotes +

+

Setup for Working joe emotes and category list, returns data for wj_emotes

shakeship +

+

Shakes the ship around

+

Shakes the ship around and has the ship +make sounds because of it, including +warning klaxons it it's a big hit +despite being in /almayer, this thing should work in any shipmap. +Arguments:

+

should_block_game_interaction +

+

Returns TRUE if the target is somewhere that the game should not interact with if possible +In this case, admin Zs and tutorial areas

show_blurb +

+

*Shows a ticker reading out the given text on a client's screen. +targets = mob or list of mobs to show it to.

+

duration = how long it lingers after it finishes ticking.

+

message = the message to display. Due to using maptext it isn't very flexible format-wise. 11px font, up to 480 pixels per line. +Use \n for line breaks. Single-character HTML tags (, , etc.) are handled correctly but others display strangely. +Note that maptext can display text macros in strange ways, ex. \improper showing as "ÿ". Lines containing only spaces, +including ones only containing "\improper ", don't display.

+

scroll_down = by default each line pushes the previous line upwards - this tells it to start high and scroll down. +Ticks on \n - does not autodetect line breaks in long strings.

+

screen_position = screen loc for the bottom-left corner of the blurb.

+

text_alignment = "right", "left", or "center"

+

text_color = color of the text.

+

blurb_key = a key used for specific blurb types so they are not shown repeatedly. Ex. someone who joins as CLF repeatedly only seeing the mission blurb the first time.

+

ignore_key = used to skip key checks. Ex. a USCM ERT member shouldn't see the normal USCM drop message, +but should see their own spawn message even if the player already dropped as USCM.*

show_blurb_uscm +

+

Shows operation start blurb to living marines. Slightly different for squad marines, pilots, and deploying ship crew/passengers. +exempt_ztraits = trait or list of traits of zlevels where any marines don't see the message, ex. marine faction survivors colonyside +shouldn't see the ship marines' drop message. Ex. ZTRAIT_GROUND by default. +unit = the unit the marines are from. FF, Dust Raiders etc. Military crew see this. +base = the base the marines are staging from. The ship, Whiskey Outpost etc. Noncombat crew see this.

show_location_blurb +

+

Reads out a description of game time, game date, main ship and current area. Originally for displaying roundstart messages on a conventional SS13 server.

shuffle_inplace +

+

same as shuffle, but returns nothing and acts on list in place

sort_list +

+

sort any value in a list

sort_list_dist +

+

Returns a list of atoms sorted by each entry's distance to target.

stars_decode_html +

+

Summary: proc that parses an html input string and scrambles the non-html string contents.

+

Arguments:

+
    +
  • message - an html string value to be parsed and modified.
  • +
+

Return: +returns the parsed and modified html output with the text content being partially scrambled with asteriks

string_list +

+

Caches lists with non-numeric stringify-able values (text or typepath).

string_starts_with +

+

Check if the string haystack begins with the string needle.

tgui_Topic +

+

Middleware for /client/Topic.

+

return bool If TRUE, prevents propagation of the topic call.

tgui_alert +

+

Creates a TGUI alert window and returns the user's response.

+

This proc should be used to create alerts that the caller will wait for a response from. +Arguments:

+
    +
  • user - The user to show the alert to.
  • +
  • message - The content of the alert, shown in the body of the TGUI window.
  • +
  • title - The of the alert modal, shown on the top of the TGUI window.
  • +
  • buttons - The options that can be chosen by the user, each string is assigned a button on the UI.
  • +
  • timeout - The timeout of the alert, after which the modal will close and qdel itself. Set to zero for no timeout.
  • +
  • autofocus - The bool that controls if this alert should grab window focus.
  • +
  • ui_state - The TGUI UI state that will be returned in ui_state(). Default: always_state
  • +

tgui_alert_async +

+

Creates an asynchronous TGUI alert window with an associated callback.

+

This proc should be used to create alerts that invoke a callback with the user's chosen option. +Arguments:

+
    +
  • user - The user to show the alert to.
  • +
  • message - The content of the alert, shown in the body of the TGUI window.
  • +
  • title - The of the alert modal, shown on the top of the TGUI window.
  • +
  • buttons - The options that can be chosen by the user, each string is assigned a button on the UI.
  • +
  • callback - The callback to be invoked when a choice is made.
  • +
  • timeout - The timeout of the alert, after which the modal will close and qdel itself. Set to zero for no timeout.
  • +
  • autofocus - The bool that controls if this alert should grab window focus.
  • +
  • ui_state - The TGUI UI state that will be returned in ui_state(). Default: always_state
  • +

tgui_input_checkboxes +

+ tgui_input_checkbox +

Opens a window with a list of checkboxes and returns a list of selected choices.

+
    +
  • Arguments:
  • +
  • user - The mob to display the window to
  • +
  • message - The message inside the window
  • +
  • title - The title of the window
  • +
  • list/items - The list of items to display
  • +
  • min_checked - The minimum number of checkboxes that must be checked (defaults to 1)
  • +
  • max_checked - The maximum number of checkboxes that can be checked (optional)
  • +
  • timeout - The timeout for the input (optional)
  • +
  • theme - The ui theme to use for the TGUI window (optional).
  • +
  • ui_state - The TGUI UI state that will be returned in ui_state(). Default: always_state
  • +

tgui_input_checkboxes_async +

+ tgui_input_checkbox +

Opens a window with a list of checkboxes and returns a list of selected choices.

+
    +
  • Arguments:
  • +
  • user - The mob to display the window to
  • +
  • message - The message inside the window
  • +
  • title - The title of the window
  • +
  • list/items - The list of items to display
  • +
  • min_checked - The minimum number of checkboxes that must be checked (defaults to 1)
  • +
  • max_checked - The maximum number of checkboxes that can be checked (optional)
  • +
  • callback - The callback to be invoked when a choice is made.
  • +
  • timeout - The timeout for the input (optional)
  • +
  • theme - The ui theme to use for the TGUI window (optional).
  • +
  • ui_state - The TGUI UI state that will be returned in ui_state(). Default: always_state
  • +

tgui_input_list +

+

Creates a TGUI input list window and returns the user's response.

+

This proc should be used to create alerts that the caller will wait for a response from. +Arguments:

+
    +
  • user - The user to show the input box to.
  • +
  • message - The content of the input box, shown in the body of the TGUI window.
  • +
  • title - The title of the list input, shown on the top of the TGUI window.
  • +
  • buttons - The options that can be chosen by the user, each string is assigned a button on the UI.
  • +
  • timeout - The timeout of the alert, after which the list input will close and qdel itself. Set to zero for no timeout.
  • +
  • theme - The ui theme to use for the TGUI window.
  • +
  • default - If an option is already preselected on the UI. Current values, etc.
  • +
  • ui_state - The TGUI UI state that will be returned in ui_state(). Default: always_state
  • +

tgui_input_list_async +

+

Creates an asynchronous TGUI input list window with an associated callback.

+

This proc should be used to create inputs that invoke a callback with the user's chosen option. +Arguments:

+
    +
  • user - The user to show the input box to.
  • +
  • message - The content of the input box, shown in the body of the TGUI window.
  • +
  • title - The title of the list input, shown on the top of the TGUI window.
  • +
  • buttons - The options that can be chosen by the user, each string is assigned a button on the UI.
  • +
  • callback - The callback to be invoked when a choice is made.
  • +
  • timeout - The timeout of the alert, after which the list_input will close and qdel itself. Set to zero for no timeout.
  • +
  • theme - The ui theme to use for the TGUI window.
  • +
  • default - If an option is already preselected on the UI. Current values, etc.
  • +
  • ui_state - The TGUI UI state that will be returned in ui_state(). Default: always_state
  • +

tgui_input_number +

+

Creates a TGUI window with a number input. Returns the user's response as num | null.

+

This proc should be used to create windows for number entry that the caller will wait for a response from. +If tgui fancy chat is turned off: Will return a normal input. If a max or min value is specified, will +validate the input inside the UI and ui_act.

+

Arguments:

+
    +
  • user - The user to show the number input to.
  • +
  • message - The content of the number input, shown in the body of the TGUI window.
  • +
  • title - The title of the number input modal, shown on the top of the TGUI window.
  • +
  • default - The default (or current) value, shown as a placeholder. Users can press refresh with this.
  • +
  • max_value - Specifies a maximum value. If none is set, any number can be entered. Pressing "max" defaults to 1000.
  • +
  • min_value - Specifies a minimum value. Often 0.
  • +
  • timeout - The timeout of the number input, after which the modal will close and qdel itself. Set to zero for no timeout.
  • +
  • integer_only - whether the inputted number is rounded down into an integer.
  • +
  • ui_state - The TGUI UI state that will be returned in ui_state(). Default: always_state
  • +

tgui_input_number_async +

+

Creates an asynchronous TGUI number input window with an associated callback.

+

This proc should be used to create number inputs that invoke a callback with the user's entry.

+

Arguments:

+
    +
  • user - The user to show the number input to.
  • +
  • message - The content of the number input, shown in the body of the TGUI window.
  • +
  • title - The title of the number input modal, shown on the top of the TGUI window.
  • +
  • default - The default (or current) value, shown as a placeholder. Users can press refresh with this.
  • +
  • max_value - Specifies a maximum value. If none is set, any number can be entered. Pressing "max" defaults to 1000.
  • +
  • min_value - Specifies a minimum value. Often 0.
  • +
  • callback - The callback to be invoked when a choice is made.
  • +
  • timeout - The timeout of the number input, after which the modal will close and qdel itself. Set to zero for no timeout.
  • +
  • integer_only - whether the inputted number is rounded down into an integer.
  • +
  • ui_state - The TGUI UI state that will be returned in ui_state(). Default: always_state
  • +

tgui_input_real_number +

+

A clone of tgui_input_number that defaults to accepting negative inputs too.

tgui_input_text +

+

Creates a TGUI window with a text input. Returns the user's response.

+

This proc should be used to create windows for text entry that the caller will wait for a response from. +If tgui fancy chat is turned off: Will return a normal input. If max_length is specified, will return +stripped_multiline_input.

+

Arguments:

+
    +
  • user - The user to show the text input to.
  • +
  • message - The content of the text input, shown in the body of the TGUI window.
  • +
  • title - The title of the text input modal, shown on the top of the TGUI window.
  • +
  • default - The default (or current) value, shown as a placeholder.
  • +
  • max_length - Specifies a max length for input. MAX_MESSAGE_LEN is default (1024)
  • +
  • multiline - Bool that determines if the input box is much larger. Good for large messages, laws, etc.
  • +
  • encode - Toggling this determines if input is filtered via html_encode. Setting this to FALSE gives raw input.
  • +
  • timeout - The timeout of the textbox, after which the modal will close and qdel itself. Set to zero for no timeout.
  • +
  • trim - Whether or not to trim leading and trailing whitespace from your input. Defaults to TRUE
  • +
  • ui_state - The TGUI UI state that will be returned in ui_state(). Default: always_state
  • +

timeleft +

+

Get the remaining deciseconds on a timer

+

Arguments:

+
    +
  • id a timerid or a /datum/timedevent
  • +

to_chat +

+

Sends the message to the recipient (target).

+

Recommended way to write to_chat calls:

+
to_chat(client,
+ type = MESSAGE_TYPE_INFO,
+ html = "You have found <strong>[object]</strong>")
+

to_chat_immediate +

+

Circumvents the message queue and sends the message +to the recipient (target) as soon as possible.

ui_status_only_living +

+

Returns a UI status such that the dead will be able to watch, but not interact.

ui_status_user_is_abled +

+

Returns a UI status such that users with debilitating conditions, such as +being dead or not having power for silicons, will not be able to interact. +Being dead will disable UI, being incapacitated will continue updating it, +and anything else will make it interactive.

ui_status_user_is_adjacent +

+

Returns a UI status such that users adjacent to source will be able to interact, +far away users will be able to see, and anyone farther won't see anything. +Dead users will receive updates no matter what, though you likely want to add +a [ui_status_only_living] check for finer observer interactions.

ui_status_user_is_advanced_tool_user +

+

Returns a UI status such that advanced tool users will be able to interact, +but everyone else can only watch.

ui_status_user_strictly_adjacent +

+

Return UI_INTERACTIVE if the user is strictly adjacent to the target atom, whether they can see it or not. +Return UI_CLOSE otherwise.

unique_list +

+

Return a list with no duplicate entries

unique_list_in_place +

+

same as unique_list, but returns nothing and acts on list in place (also handles associated values properly)

updatetimedelay +

+

Update the delay on an existing LOOPING timer +Will come into effect on the next process

+

Arguments:

+
    +
  • id a timerid or a /datum/timedevent
  • +
  • new_wait the new wait to give this looping timer
  • +

url2htmlloader +

+

Return html to load a url. +for use inside of browse() calls to html assets that might be loaded on a cdn.

worldtime2text +

+

Returns the world time in english. Do not use to get date information - starts at 0 + a random time offset from 10 minutes to 24 hours.

+ + + diff --git a/image.html b/image.html new file mode 100644 index 000000000000..41a8d6928a5d --- /dev/null +++ b/image.html @@ -0,0 +1,35 @@ + + + + + + + /image - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/image + + + +

+ + +

Procs

minimap_on_moveSimple proc, updates overlay position on the map when a atom moves

Proc Details

minimap_on_move +

+

Simple proc, updates overlay position on the map when a atom moves

+ + + diff --git a/index.html b/index.html new file mode 100644 index 000000000000..2a583b6dac3a --- /dev/null +++ b/index.html @@ -0,0 +1,2005 @@ + + + + + + + Index - byond + + + + + +
+ byond - + Modules - + Types +
+
+

byond

+ + + +

Modules +

+ + + + +

Types +

+
    +
  • (global)
  • +
  • Unknown
      +
    • almayer
    • +
    • misc/CORDON - Cordon area surrounding turf reservations
    • +
    • Shuttle
    • +
    • strata
        +
      • ag
          +
        • exterior
            +
          • paths/South Of The Outpost - close to research
          • +
          • Outpost Decks - Research Station
          • +
        • +
        • interior
            +
          • engi_shed AG parent - Engineering Terminals / Sheds, whatever. Map Power
          • +
          • Sorokyne Outpost - OUTPOST INTERIOR
              +
            • Outpost Administration - OUTPOST ADMINISTRATION
            • +
            • Outpost Canteen - CANTEEN / GENERAL QUARTERS
            • +
            • Outpost Engineering - OUTPOST ENGINEERING
            • +
            • Outpost Maintenance - ALL MAINTENANCE AREAS
            • +
            • Outpost Medical - OUTPOST MEDICAL
            • +
            • Outpost Security - OUTPOST SECURITY
            • +
          • +
          • Relay - Telecomms
          • +
        • +
      • +
      • ug/interior
          +
        • Underground Jungle - /END OUTPOST DEFINES/ +DEEP JUNGLE
        • +
        • outpost/Underground Jungle Structures - JUNGLE STRUCTURES - UNDERGROUND
        • +
      • +
    • +
    • Area Passthrough - Template noop (no operation) is used to skip a turf or area when the template is loaded this allows for template transparency +ex. if a ship has gaps in it's design, you would use template_noop to fill these in so that when the ship moves z-level, any +tiles these gaps land on will not be deleted and replaced with the ships (empty) tiles
    • +
  • +
  • atom
      +
    • movable
        +
      • emissive blocker - Internal atom that copies an appearance on to the blocker plane
      • +
      • lighting_mask
          +
        • conical - Conical Light mask
        • +
        • flicker - Flickering lighting mask
        • +
        • rotating - Rotating Light mask
        • +
        • rotating_conical - rotating light mask, but only pointing in one direction
        • +
      • +
      • plane_master_controller - Atom that manages and controls multiple planes. It's an atom so we can hook into add_filter etc. Multiple controllers can control one plane.
          +
        • plane_masters_non_master - Exists for convienience when referencing all non-master render plates. +This is the whole game and the UI, but not the escape menu.
        • +
      • +
      • screen - A screen object, which acts as a container for turfs and other things +you want to show on the map, which you usually attach to "vis_contents".
          +
        • Alert
        • +
        • background - A generic background object. +It is also implicitly used to allocate a rectangle on the map, which will +be used for auto-scaling the map.
        • +
        • color_matrix_proxy_view
        • +
        • escape_menu/home_button_text
        • +
        • fullscreen
        • +
        • gun
        • +
        • map_view - A screen object, which acts as a container for turfs and other things +you want to show on the map, which you usually attach to "vis_contents".
        • +
        • Minimap - Default HUD screen minimap object
        • +
        • plane_master
            +
          • darkness plane master - Plane master handling byond internal blackness +vars are set as to replicate behavior when rendering to other planes +do not touch this unless you know what you are doing
          • +
          • emissive plane master - Handles emissive overlays and emissive blockers.
          • +
          • game world plane master - Contains most things in the game world
          • +
          • lighting plane master - Contains all lighting objects
          • +
          • default rendering plate
              +
            • game rendering plate - renders general in charachter game objects
            • +
            • master rendering plate - this plate renders the final screen to show to the player
            • +
            • non-game rendering plate - render plate for OOC stuff like ghosts, hud-screen effects, etc
            • +
          • +
          • roof plane master - Plane master handling display of building roofs. They're meant to become invisible when inside a building.
          • +
        • +
        • queen locator
        • +
        • text/screen_text
        • +
      • +
      • vis_obj - Used to display the xeno wounds/backpacks without rapidly switching overlays
      • +
    • +
  • +
  • client
  • +
  • datum - The absolute base class for everything
      +
    • Generic Action
    • +
    • Adminhelp Ticket
    • +
    • Adminhelp Ticket Manager
    • +
    • admins
    • +
    • generic bullet
    • +
    • ares_console_admin
    • +
    • ares_datacore
    • +
    • ares_link
    • +
    • ares_record
    • +
    • ares_ticket
    • +
    • asset
        +
      • simple - If you don't need anything complicated.
          +
        • namespaced - Namespace'ed assets (for static css and html files) +When sent over a cdn transport, all assets in the same asset datum will exist in the same folder, as their plain names. +Used to ensure css files can reference files by url() without having to generate the css at runtime, both the css file and the files it depends on must exist in the same namespace asset datum. (Also works for html) +For example blah.css with asset blah.png will get loaded as namespaces/a3d..14f/f12..d3c.css and namespaces/a3d..14f/blah.png. allowing the css file to load blah.png by a relative url rather then compute the generated url with get_url_mappings(). +The namespace folder's name will change if any of the assets change. (excluding parent assets)
        • +
      • +
    • +
    • asset_cache_item - An internal datum containing info on items in the asset cache. Mainly used to cache md5 info for speed.
    • +
    • Simple browse_rsc asset transport - Base browse_rsc asset transport
    • +
    • authority/branch/Role Authority
    • +
    • autoreply
        +
      • admin/handled - Admin Replies
      • +
    • +
    • autowiki - A representation of an automated wiki page.
    • +
    • beam
    • +
    • Set This
    • +
    • bioscan_data
    • +
    • bitfield - Specifies a bitfield for smarter debugging
    • +
    • cas_fire_envelope
    • +
    • Unnamed Firemission
    • +
    • cas_fire_mission_record - Defines firing patterns in Fire Missions, transverse to its firing direction
    • +
    • caste_datum
    • +
    • character_trait - Character traits +Similar to the traits from Project Zomboid
    • +
    • character_trait_group - Character trait groups for constraints (if any)
    • +
    • chem_property
    • +
    • chemical_data
    • +
    • chemical_reaction
        +
      • generated
          +
        • alpha - Tier 1
        • +
        • iota - Tier 3
        • +
        • lambda - Tier 4
        • +
        • zeta - Tier 2
        • +
      • +
      • Sbiten - DRINKS THAT REQUIRED IMPROVED SPRITES BELOW:: -Agouri
      • +
    • +
    • An objective to complete
    • +
    • Component - The component datum
        +
      • armor_link - Return the object that is the host of any UI's that this component has +datum/component/ui_host() +Allows a piece of clothing to have their armor values change based on the values of another piece of clothing +Ex: Marine boots have their armor values change based on what type of armor you're wearing on your chest
      • +
      • automatedfire
      • +
      • bad_leg
      • +
      • bonus_damage_stack
      • +
      • camera_manager
      • +
      • cell
      • +
      • cluster_stack
      • +
      • connect_mob_behalf - This component behaves similar to connect_loc_behalf, but working off clients and mobs instead of loc +To be clear, we hook into a signal on a tracked client's mob +We retain the ability to react to that signal on a separate listener, which makes this quite powerful
      • +
      • crate_tag
      • +
      • disk_reader
      • +
      • footstep - Footstep component. Plays footsteps at parents location when it is appropriate.
      • +
      • label - The label component.
      • +
      • nmnode_cond - Applies to a /datum/nmnode to enforce scenario constraints
      • +
      • overlay_lighting - Movable atom overlay-based lighting component.
      • +
      • rename - The rename component.
      • +
      • temporary_mute
      • +
      • tent_powered_machine - Component to handle power requirements following removal of the tent
      • +
      • tent_supported_object - Component to handle destruction of objects following removal of the tent
      • +
      • tutorial_status
      • +
      • weed_food - A component that can be attached to a mob/living to be merged with weeds after a delay. +Attempting to attach a new weed_food even if one already exists is equivalent to calling start().
      • +
    • +
    • computer/file/embedded_program/docking/simple
    • +
    • config_entry
        +
      • flag
          +
        • ephemeral_map_mode - Force map bypassing configuration, and ignore map changes
        • +
        • log_timers_on_bucket_reset - logs all timers in buckets on automatic bucket reset (Useful for timer debugging) +logs all timers in buckets on automatic bucket reset (Useful for timer debugging)
        • +
      • +
      • keyed_list/connection_relay_ping - Relay Ping Browser configuration
      • +
      • number
          +
        • extra_larva_per_burst - Used to determine how many extra larva you want per burst. Supports fractions. See /datum/hive_status/proc/increase_larva_after_burst()
        • +
        • influxdb_mcstats_period - How often to snapshot MC statistics
        • +
        • influxdb_send_period - How often to send queued influxdb statistics
        • +
        • influxdb_stats_period - How often to snapshot general game statistics to influxdb driver
        • +
      • +
      • str_list - List config entry, used for configuring a list of strings
      • +
      • string
          +
        • centcom_ban_db - URL for the CentCom Galactic Ban DB API
        • +
        • ephemeral_ground_map - Map configuration file to use in ephemeral mode
        • +
        • influxdb_bucket - InfluxDB v2 Bucket to send staistics to
        • +
        • influxdb_host - InfluxDB v2 Host to connect to for sending statistics (over HTTP API)
        • +
        • influxdb_org - InfluxDB v2 Organization to access buckets of
        • +
        • influxdb_token - InfluxDB v2 API Token to access the organization and bucket
        • +
        • manager_url - Server to notify of game events
        • +
        • nightmare_path - Relative inclusion path for nightmare configuration files
        • +
        • webmap_host - Host of the webmap
        • +
      • +
    • +
    • generic structure
    • +
    • controller
    • +
    • coords/qtplayer
    • +
    • crewmonitor
    • +
    • custom_hud
    • +
    • datacore
    • +
    • decorator
        +
      • christmas/food - Replaces marine food dispensers contents with more festive MREs
      • +
      • gamemode - Gamemode decorators allow us to make changes to edits on specific gamemodes, +to assist in balancing varied gameplay in different modes
      • +
    • +
    • discord_embed - Documentation for the embed object and all of its variables can be found at +https://discord.com/developers/docs/resources/channel#embed-object +It is recommended to read the documentation on the discord website, as the information below could become outdated in the future.
    • +
    • disease/Black Goo
    • +
    • door_controller
        +
      • aggregate - Datum containing methods to allow for the control over multiple door groups.
      • +
      • single - Datum containing methods to allow for the control over a single door group.
      • +
    • +
    • dynamic_light_source
    • +
    • effect_system/steam_trail_follow - Attach a steam trail to an object (eg. a reacting beaker) that will follow it
    • +
    • effects
    • +
    • element - A holder for simple behaviour that can be attached to many different types
    • +
    • name
    • +
    • Emote - Most of the text that's not someone talking is based off of this.
    • +
    • entity
        +
      • player
      • +
      • player_entity - Indeed list of /datum/entity/player_stats +Indexed list of /datum/entity/statistic/death
      • +
      • player_note
      • +
      • player_stats/human - indexed list of types /datum/entity/weapon_stats +indexed list of types /datum/entity/job_stats +reference to /datum/entity/weapon_stats (like tac-shotty)
      • +
      • weapon_stats - Indexed list of /datum/entity/statistic, "Total Reloads" = number +Indexed list of /datum/entity/statistic, "jobname2" = number +Indexed list of /datum/entity/statistic, "caste" = number
      • +
    • +
    • entity_meta/stickyban
    • +
    • Preset
    • +
    • escape_menu
    • +
    • flaying_datum - Records status of flaying attempts and handles progress.
    • +
    • font - A font datum, it exists to define a custom font to use in a span style later.
    • +
    • game_decorator/halloween
        +
      • cobwebs - Cobweb decorator: adds more and more cobwebs as you go through the month
      • +
      • pumpkins - Pumpkins decorator: adds patches of carvable/wearable pumpkins around the ground level +Amount of pumpkins to place +Amount of pumpkins to remove per day to halloween +Chance reduction per day before halloween
      • +
    • +
    • invalid
    • +
    • health_scan - vars reffing this on /mob/dead/observer, /obj/item/device/healthanalyzer, /obj/structure/machinery/cm_vending/sorted/medical, /obj/structure/machinery/body_scanconsole are called last_health_display
    • +
    • Normal Hive
    • +
    • http_request
    • +
    • hud
    • +
    • hud_displays - Holder datum for a zlevels data, concerning the overlays and the drawn level itself +The individual image trackers have a raw and a normal list +raw lists just store the images, while the normal ones are assoc list of [tracked_atom] = image +the raw lists are to speed up the Fire() of the subsystem so we dont have to filter through +WARNING! +There is a byond bug: http://www.byond.com/forum/post/2661309 +That that forces us to use a separate list ref when accessing the lists of this datum +Yea it hurts me too
    • +
    • interior
    • +
    • organ
    • +
    • item_storage_box
    • +
    • japanese_sound - a generic sound
        +
      • final_syllable - a final_syllable sound, not used for much since the only one possible is N.
      • +
      • initial - an initial sound aka a consonant, contains a lot of data about stuff that only consonants can be
      • +
      • nucleus - a nucleus, aka a vowel sound
      • +
    • +
    • japanese_syllable - holds the syllable's sound itself and information such as if it has a null initial or final_syllable
    • +
    • job
    • +
    • keybinding/mob/target
    • +
    • language/Telepath Implant - Font size
    • +
    • launch_metadata
    • +
    • lazy_template - Datum used to designate certain areas that do not need to exist nor be loaded at world start +but do want to be loaded under certain circumstances. Use this for stuff like the nukie base or wizden, aka stuff that only matters when their antag is rolled.
    • +
    • log_category - The main datum that contains all log entries for a category
        +
      • backup_category_not_found - Backup log category to catch attempts to log to a category that doesn't exist
      • +
    • +
    • log_holder - Main datum to manage logging actions
    • +
    • looping_sound - A datum for sounds that need to loop, with a high amount of configurability.
    • +
    • map_config
    • +
    • map_preloader - Preloader datum
    • +
    • map_report - An error report generated by [parsed_map/check_for_errors].
    • +
    • Default Template Name
        +
      • shuttle
          +
        • Port door lifeboat - Port-door lifeboat, bow east
        • +
        • Starboard door lifeboat - Starboard-door lifeboat, bow east
        • +
      • +
    • +
    • minimap_updator - Holder datum to ease updating of atoms to update
    • +
    • mob_hud
    • +
    • movement_detector - A datum to handle the busywork of registering signals to handle in depth tracking of a movable
    • +
    • nanomanager
    • +
    • nanoui
    • +
    • context - Context within which we resolve nightmare actions
        +
      • map - Context belonging to a map scope (ground map, ship map, etc)
      • +
    • +
    • nmnode - Decriptive nightmare config nodes loaded from config files
        +
      • branch - Holding node for several child nodes
          +
        • include - Same as branch, but load node data from another included file
        • +
      • +
      • mapload - Abstract config node designating a map insertion
          +
        • landmark - Designates insert of a given map file at a specified landmark
        • +
        • Map Sprinkles - Similar to variations mode, but rolls all files individually rather +than picking one, using name for landmark. The prefix number is used +as a percentage chance.
        • +
        • Map Variations - Inserts a map file among a set of variations in a folder +param: path: some/folder/, landmark +files within should be named with a prefix indicating weighting: +some/folder/20.destroyed.dmm +some/folder/50.spaced.dmm +using + instead of dot means to keep map contents, eg. +some/folder/20+extras.dmm is added on top
        • +
      • +
      • picker - Same as branch, but selects a subset of the given nodes +amount: how many items to pick +choices: nested nodes to pick from +each node should have a 'weight' key if you want to use weighted pick
      • +
    • +
    • abstract task - Nightmare task, executing game actions as part of context
        +
      • mapload - Loads a chunk of map at the specified position
      • +
      • scheduler - Simple blocking executor to execute several tasks in a row
          +
        • mapload scheduler - Handles map insertions sequentially and updating the game to match map insertions
        • +
      • +
    • +
    • object_window_info - Datum that holds and tracks info about a client's object window +Really only exists because I want to be able to do logic with signals +And need a safe place to do the registration
    • +
    • Base
    • +
    • parsed_map
    • +
    • particle_editor
    • +
    • paygrade
    • +
    • image - Picture metadata
    • +
    • player_details
    • +
    • player_info
    • +
    • preferences
    • +
    • qdel_item - Qdel Item: Holds statistics on each type that passes thru qdel +Holds the type as a string for this type +Total number of times it's passed thru qdel. +Total amount of milliseconds spent processing this type's Destroy() +Times it was queued for soft deletion but failed to soft delete. +Different from failures because it also includes QDEL_HINT_HARDDEL deletions +Total amount of milliseconds spent hard deleting this type. +Highest time spent hard_deleting this in ms. +Number of times hard deletes took longer than the configured threshold +Number of times it's not respected force=TRUE +Number of times it's not even bother to give a qdel hint +Number of times it's slept in its destroy
    • +
    • quadtree
    • +
    • radar - generic parent that handles most of the process
        +
      • lifeline - A program that tracks crew members via suit sensors
      • +
    • +
    • reagent
        +
      • Ethanol
      • +
      • medical/antidepressant/Methylphenidate - ANTIDEPRESSANTS
      • +
    • +
    • reagents
    • +
    • Redis callbacks - This datum is used for assigning callbacks that run +when a message is received on a specific channel. Subtypes of this +are automatically registered in SSredis initialization
    • +
    • Redis message - Used to hold redis messages created prior to the initialization of SSredis
    • +
    • Upgrade.
    • +
    • role_reserved_slots - special role slots datum. Stores category name, roles, amount of taken slots and total slots.
    • +
    • round_event
    • +
    • round_event_control - this datum is used by the events controller to dictate how it selects events
    • +
    • screen_object_holder - A helper instance that will handle adding objects from the client's screen +to easily remove from later.
    • +
    • shape - A simple geometric shape for testing collisions and intersections. This one is a single point.
        +
      • ellipse - A simple geometric shape for testing collisions and intersections. This one is an axis-aligned ellipse.
          +
        • circle - A simple geometric shape for testing collisions and intersections. This one is a circle.
        • +
      • +
      • rectangle - A simple geometric shape for testing collisions and intersections. This one is an axis-aligned rectangle.
          +
        • square - A simple geometric shape for testing collisions and intersections. This one is an axis-aligned square.
        • +
      • +
    • +
    • shuttle/ferry
    • +
    • skill
    • +
    • skills - Skill with an extra S at the end is a collection of multiple skills. Basically a skillSET +This is to organize and provide a common interface to the huge heap of skills there are
    • +
    • soundOutput
    • +
    • NAME MISSING
    • +
    • SMP - Space weapons it's self for ship to ship or PKO/Xeno PKO things
    • +
    • SMP - Ammo datum for space weapons
    • +
    • specialist_set
    • +
    • species
        +
      • Human - The blood volume turned into a %, with BLOOD_VOLUME_NORMAL being 100% +How much oxyloss will there be from the next time blood processes +The limit of the oxyloss gained, ignoring oxyloss from the switch statement
      • +
      • synthetic/colonial/Working Joe
      • +
      • Yautja
      • +
    • +
    • squad
    • +
    • stack_canary - Stack canary. Will go away if the stack it was primed by is ended by byond for return or stack overflow reasons.
    • +
    • stack_end_detector - Stack End Detector. +Can detect if a given code stack has exited, used by the mc for stack overflow detection.
    • +
    • statbrowser_options - Handles the Statbrowser Options window for a given client
    • +
    • static_light_source
    • +
    • static_lighting_corner
    • +
    • static_lighting_object
    • +
    • status_effect - Status effects are used to apply temporary or permanent effects to mobs. +This file contains their code, plus code for applying and removing them.
        +
      • grouped - Status effect from multiple sources, when all sources are removed, so is the effect
      • +
      • incapacitating/dazed - DAZED: +This prevents talking as human or using abilities as Xenos, mainly
      • +
      • limited_buff - These effects reapply their on_apply() effect when refreshed while stacks < max_stacks.
      • +
      • stacking - Status effects that can stack.
      • +
    • +
    • strip_menu - A representation of the stripping UI
    • +
    • strippable_item - A representation of an item that can be stripped down
        +
      • mob_item_slot - A preset for equipping items onto mob slots
      • +
    • +
    • Basic supply pack.
    • +
    • supply_packs_asrs
    • +
    • surgery - Base surgery datum and procs. There is an important distinction between surgery datums and surgery steps. +The surgery is a separate instance for each individual operation; the steps are shared globally. +datum/surgery and datum/surgery_step are intertwined. The surgery calls the step which modifies the surgery. +Defines are in __DEFINES/human.dm and __DEFINES/surgery.dm.
    • +
    • surgery_step
    • +
    • suture_handler - Handles sutures for this limb. Doesn't process, updates on limb damage and new suture attempts.
    • +
    • tacmap
    • +
    • Tacmap Panel
    • +
    • tech
        +
      • Repeatable Tech - A tech that can be purchased multiple times
      • +
      • Transitory tech
      • +
    • +
    • Undefined
    • +
    • tgs_api/v5
    • +
    • tgs_chat_channel - Represents a connected chat channel.
    • +
    • tgs_chat_command - User definable chat command. This abstract version MUST be overridden to be used.
    • +
    • tgs_chat_embed
        +
      • field - See https://discord.com/developers/docs/resources/message#embed-object-embed-field-structure for details.
      • +
      • footer - See https://discord.com/developers/docs/resources/message#embed-object-embed-footer-structure for details.
      • +
      • media - Common datum for similar Discord embed medias.
      • +
      • provider - See https://discord.com/developers/docs/resources/message#embed-object-embed-provider-structure for details.
          +
        • author - See https://discord.com/developers/docs/resources/message#embed-object-embed-author-structure for details. Must have name set in New().
        • +
      • +
      • structure - User definable chat embed. Currently mirrors Discord chat embeds. See https://discord.com/developers/docs/resources/message#embed-object for details.
      • +
    • +
    • tgs_chat_user
    • +
    • tgs_event_handler - User definable handler for TGS events This abstract version SHOULD be overridden to be used.
    • +
    • tgs_http_handler - User definable handler for HTTP calls. This abstract version MUST be overridden to be used.
    • +
    • tgs_http_result - Result of a /datum/tgs_http_handler call. MUST NOT be overridden.
    • +
    • tgs_message_content - User definable chat message. MUST NOT be overridden.
    • +
    • tgs_revision_information - Represents git revision information.
        +
      • test_merge - Represents a merge of a GitHub pull request.
      • +
    • +
    • tgs_version - Represents a version.
    • +
    • tgui - tgui datum (represents a UI).
    • +
    • tgui_bug_report_form
    • +
    • tgui_checkbox_input - Window for tgui_input_checkboxes
        +
      • async tgui_checkbox_input - An asynchronous version of tgui_checkbox_input to be used with callbacks instead of waiting on user responses.
      • +
    • +
    • tgui_input_number - Datum used for instantiating and using a TGUI-controlled number input that prompts the user with +a message and has an input for number entry.
        +
      • async tgui_input_number - An asynchronous version of tgui_input_number to be used with callbacks instead of waiting on user responses.
      • +
    • +
    • tgui_input_text - tgui_input_text
    • +
    • tgui_list_input - Datum used for instantiating and using a TGUI-controlled list input that prompts the user with +a message and shows a list of selectable options
        +
      • async tgui_list_input - An asynchronous version of tgui_list_input to be used with callbacks instead of waiting on user responses.
      • +
    • +
    • tgui_modal - Datum used for instantiating and using a TGUI-controlled modal that prompts the user with +a message and has buttons for responses.
        +
      • async tgui_modal - An asynchronous version of tgui_modal to be used with callbacks instead of waiting on user responses.
      • +
    • +
    • tgui_panel - tgui_panel datum +Hosts tgchat and other nice features.
    • +
    • tgui_say - The tgui say modal. This initializes an input window which hides until +the user presses one of the speech hotkeys. Once something is entered, it will +delegate the speech to the proper channel.
    • +
    • tgui_window
    • +
    • Timed Event - This is the actual timer, it contains the callback and necessary data to maintain +the timer.
    • +
    • timelock
        +
      • Drone and drone evolutions - counts drone caste evo time as well
      • +
      • Tier three castes - t3 and queen time
      • +
    • +
    • turf_reservation
    • +
    • Base - A tutorial datum contains a set of instructions for a player tutorial, such as what to spawn, what's scripted to occur, and so on.
    • +
    • tutorial_menu
    • +
    • ui_state
    • +
    • unit_test
        +
      • autowiki - Tests that all autowikis generate something without runtiming
      • +
      • autowiki_include_template - Test that include_template produces reasonable results
      • +
      • check_runtimes
      • +
      • create_and_destroy - Delete one of every type, sleep a while, then check to see if anything has gone fucky
      • +
      • emote_panels - Test that all emotes for Working Joes & Yautja have a category
      • +
      • focus_only - These tests perform no behavior of their own, and have their tests offloaded onto other procs. +This is useful in cases like in build_appearance_list where we want to know if any fail, +but is not useful to right a test for. +This file exists so that you can change any of these to TEST_FOCUS and only check for that test. +For example, change /datum/unit_test/focus_only/invalid_overlays to TEST_FOCUS(/datum/unit_test/focus_only/invalid_overlays), +and you will only test the check for invalid overlays in appearance building.
          +
        • invalid_overlays - Checks that every overlay passed into build_appearance_list exists in the icon
        • +
        • invalid_research_designs - Checks that every icon sent to the research_designs spritesheet is valid
        • +
        • invalid_vending_machine_icon_states - Checks that every icon sent to vending machines is valid
        • +
        • multiple_space_initialization - Checks that space does not initialize multiple times
        • +
        • sorted_smoothing_groups - Checks that smoothing_groups and canSmoothWith are properly sorted in /atom/Initialize
        • +
      • +
      • missing_icons - Makes sure objects actually have icons that exist!
      • +
      • spritesheets - Checks if spritesheet assets contain icon states with invalid names
      • +
      • stop_drop_and_roll
      • +
      • subsystem_init - Tests that all subsystems that need to properly initialize.
      • +
      • tgui_create_message - Test that TGUI_CREATE_MESSAGE is correctly implemented
      • +
    • +
    • set this
    • +
    • weather_ss_map_holder/Sorokyne Map Holder - Sorokyne's map holder
    • +
    • world_topic
    • +
    • xeno_shield/vanguard
    • +
    • xeno_strain
    • +
    • yautja_emote_panel
    • +
  • +
  • image
  • +
  • mob
  • +
  • obj
  • +
  • particles
  • +
  • procpath - Represents a proc or verb path.
  • +
  • turf
      +
    • closed
        +
      • world border - Cordon turf marking z-level boundaries and surrounding reservations
          +
        • debug turf - Used as placeholder turf when something went really wrong, as per /tg/ string lists handler
        • +
      • +
      • wall
          +
        • hull
            +
          • reinforced/heavy reinforced hull - Acts like /turf/closed/wall/almayer/outer until post-hijack where it reverts to /turf/closed/wall/almayer/reinforced.
          • +
        • +
        • r_wall/elevator - Destructible elevator walls, for when you want the elevator to act as a prop rather than an actual elevator
        • +
      • +
    • +
    • open/floor
        +
      • almayer/empty space - Base type of the requisitions and vehicle bay elevator pits.
          +
        • requisitions - Requisitions pit.
        • +
        • vehicle_bay - Vehicle bay pit.
        • +
      • +
      • plating/catwalk - Visually like plating+catwalks but without overlaying or interactions - mainly for Reqs Elevator
      • +
      • tdome - Admin level thunderdome floor. Doesn't get damaged by explosions and such for pristine testing
      • +
    • +
    • Turf Passthrough - See above explanation
    • +
  • +
  • byond
  • +
+ + +
+ + + diff --git a/interface/fonts.html b/interface/fonts.html new file mode 100644 index 000000000000..be229f2e9954 --- /dev/null +++ b/interface/fonts.html @@ -0,0 +1,27 @@ + + + + + + + interface/fonts.dm - byond + + +
+ byond - + Modules - + Types +
+
+

interface/fonts.dm + +

+ + +
/datum/fontA font datum, it exists to define a custom font to use in a span style later.
+ + + diff --git a/interface/license.html b/interface/license.html new file mode 100644 index 000000000000..3d6727cc4af5 --- /dev/null +++ b/interface/license.html @@ -0,0 +1,29 @@ + + + + + + + interface/license.txt - byond + + +
+ byond - + Modules - + Types +
+
+

interface/license.txt + +

+ + +
VCR OSD Mono created by Riciery Leal/mrmanet. Website indicates 100% free, author confirms it's free for all to use.
+(https://www.dafont.com/font-comment.php?file=vcr_osd_mono)
+
+ + + diff --git a/maps/Nightmare/doc/Design.html b/maps/Nightmare/doc/Design.html new file mode 100644 index 000000000000..a9fd0cde535c --- /dev/null +++ b/maps/Nightmare/doc/Design.html @@ -0,0 +1,43 @@ + + + + + + + maps/Nightmare/doc/Design.md - byond + + +
+ byond - + Modules - + Types +
+
+

CM-SS13 Nightmare Design Notes + +

+ + +

The Nightmare system is intended to be a replacement for legacy "Nightmare Creator". Its primary function is to change the game map, but is being expanded to encompass more dynamic round variations.

+Lifecycle +

Nightmare is resovled in three phases:

+
    +
  • The Scenario is resolved at game init
  • +
  • The Main Configuration is resolved at game start
  • +
  • The resulting Tasks to effect the game are then executed
  • +
+The Scenario +

By design, the scenario is initialized at game init to leave game staff the possibility to adjust it before game start. +This makes it possible to override or tweak what Nightmare will do, for example for event running purposes.

+

In addition, the Scenario is meant to provide a guard against overcomplex usage: the creator is expected to first use the scenario step to define pivotal elements (eg. LV-624 fog gap location), then act upon them with simplified logic.

+

This means the scenario can only define logical flow, and the main configuration can only use it.

+

Fencing such usage prevents logical loops or procedural logic to keep things as simple as possible

+Contexts and Scoping +

Because Nightmare's primary usage is to affect the game maps, each map is handled individually through a nmcontext. Each context contains relevant information to resolve configured steps. This allows to take action upon loading everything on a map, or to have operations scoped to a Z-Level, etc...

+

In addition to the contexts for ground and ship map, we also have a "global" context. It is meant for any dynamic actions that do not concern the maps directly : for example changing jobs, game mode, etc.

+ + + diff --git a/maps/Nightmare/doc/Quickstart.html b/maps/Nightmare/doc/Quickstart.html new file mode 100644 index 000000000000..b34a9f953aec --- /dev/null +++ b/maps/Nightmare/doc/Quickstart.html @@ -0,0 +1,59 @@ + + + + + + + maps/Nightmare/doc/Quickstart.md - byond + + +
+ byond - + Modules - + Types +
+
+

CM-SS13 Nightmare: Quick Start + +

+ + +

Nightmare is a system used to introduce round variations. No two rounds should be same, beyond simply changing people and map. Unknowns and changes maintain the game fresh. This is primarily done by dynamically changing the game map.

+The Scenario +

The Scenario is a set of parameters that direct what Nightmare will do - for example, LV-624 fog gap location. On startup, the game will automatically generate a Scenario, which can then be edited by Admins while in the Lobby to fine-tune or for event running purposes.

+Configuration +

Nightmare works via configuration files. Each map is setup with a folder containing them, for example maps/Nightmare/maps/LV624/. The two main files are scenario.json which is used to generate the scenario, and nightmare.json which describes the actual game setup.

+Format +

Configuration contains a list of "nodes", JSON objects that describe an action to perform. The type defines what to do, chanceis probability of doing it, when adds conditions to do it. Different types of nodes will also take extra arguments to work (for example, a map_insert needs a path to the map inserted)

+Adding map insertions +

The primary purpose of Nightmare is to change the round by "inserting" maps, which is replacing chunks of the game map by different ones. This can be done by adding to the nightmare files.

+Map Landmarks +

To know where to insert map files, we use a landmark object. This means placing /obj/effect/landmark/nightmare on the main map to mark the location, with an insert_tag to identify them.

+Example 1: Map Sprinkles +

The map_sprinkle node is usually already configured on maps, with a folder such as maps/Nightmare/maps/BigRed/sprinkles. It allows to randomly insert standalone map changes, by directly using map files.

+

Each file will randomly be inserted depending on its name: 40.viro_open.dmm for example has 40% chance to be included at viro_open landmark. You can drop in extra files to take advantage of this.

+Example 2: Map Variations +

map_variations work similarly, but only pick one file in the folder at random. For example, if you have three files:

+
    +
  • armory/10.cheese.dmm
  • +
  • armory/10.extra.dmm
  • +
  • armory/20.looted.dmm +One of the map files will be inserted at armory at random, weighted by the number in their name.
  • +
+Example 3: Custom inserts +

Sometimes you might want to do more complicated things, in which case you can edit the configuration files. +Exact usage goes beyond this quick start guide, but to take an example:

+
{
+  "type": "map_insert",                          # Insert a map
+  "landmark": "lv-rightsidepass",                # at lv-rightsidepass
+  "chance": 0.7,                                 # with 70% chance
+  "path": "standalone/rightsidepass.dmm",        # from file standalone/rightsidepass.dmm
+  "when": { "mainpath": "right" }                # when "mainpath" is "right"
+},
+
+ + + diff --git a/maps/Nightmare/doc/Tech.html b/maps/Nightmare/doc/Tech.html new file mode 100644 index 000000000000..909d4583e83f --- /dev/null +++ b/maps/Nightmare/doc/Tech.html @@ -0,0 +1,53 @@ + + + + + + + maps/Nightmare/doc/Tech.md - byond + + +
+ byond - + Modules - + Types +
+
+

CM-SS13 Nightmare Tech Notes + +

+ + +

The Nightmare system was designed with flexibility in mind, but quickly became somewhat complicated due to a certain amount of technical issues with the concept and game tech stack.

+Overview +

The Nightmare system is comprised of several components:

+
    +
  • /datum/nmnode describe entries in the configuration
  • +
  • /datum/nmcontext describe a context used for resolving nodes and tasks
  • +
  • /datum/nmtask describe tasks to act upon the rest of the game
  • +
  • SSnightmare handles parsing configuration JSON files, init, and startup
  • +
+Organisation +

To keep things as simple as possible in usage, each component is fenced to its specific usage:

+
    +
  • a nmnode is instanciated with only its own JSON info
  • +
  • a nmnode is resolved in a nmcontext and should have no outside effects
  • +
  • a nmnode from scenario may only affect the nmcontext scenario
  • +
  • a nmnode from runtime config may only affect the nmcontext tasks
  • +
  • a nmtaskmust be synchronous and independant from context and nodes
  • +
+The scheduling problem +

Nightmare occupies a weird blind spot in CM and /tg/ tooling because it performs tasks that would typically pertain to game and Master Controller initialization (notably map loading), but does so further in during lobby / game setup time to allow edition.

+

After resolving all nmnodes, nmcontexts contain a list of tasks to be executed. These tasks may be long-running and include map loading, which sleeps to keep game running. We however, need to be able to know when they end. This brings very few practical solutions :

+Method 1: Mandatory Synchronicity +

This is the chosen method as of current. Basically, we assume that every task is executed sychronously and will be done by the time the call returns. This mean that any sleeping within the task will also sleep the caller thread. This does not allow for parallelism / juggling tasks. It also requires a global lock to monitor completion: in current implementation, this is done via SSnightmare.stat monitored by SSticker loop.

+Method 2: Supervised tasks +

This works similarly to above, but tasks can now run asynchronously. This means having a detachable invoke wrapper, to both know when the task sleeps, and when it hands. The result is picked up by either a callback or a waiting loop. Unfortunately, callback stacking deepens call stack much like a loop, and any task failing to properly return will cause everything to stop.

+Method 3: Cooperative scheduling +

The most complicated to implement is to use cooperative scheduling. We use a subsystem like SSnightmare to provide a ticker. Then every task must return to it without sleeping, with a status code: ok, error, continue execution, pause execution. Sleep can be handled by wrappers described above, or through the ticker loop checking for return. It provides many inconvenients of method 2, but a fine grained control over execution. The biggest drawback is that this is essentially making a mini-MC with tasks instead of subsystems...

+ + + diff --git a/mob.html b/mob.html new file mode 100644 index 000000000000..0a3d8913ac26 --- /dev/null +++ b/mob.html @@ -0,0 +1,461 @@ + + + + + + + /mob - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/mob + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

active_thinking_indicatorthe icon currently used for the thinking indicator's bubble
active_typing_indicatorthe icon currently used for the typing indicator's bubble
blindedbool that tracks if blind
client_color_matricesColor matrices to be applied to the client window. Assoc. list.
emotes_usedUsed for tracking last uses of emotes for cooldown purposes
eye_blindtimer for blinding
eye_blurryDoes the mob have blurry sight
fire_delay_next_fireAn assoc list where the keys are fire delay group string defines +and the keys are when the guns of the group can be fired again
listed_turfthe current turf being examined in the stat panel
luminosity_sourcesList of active luminosity sources for handling of light stacking
mob_language_menuthe mob's tgui player panel
mob_panelthe mob's tgui player panel
next_click1 decisecond click delay (above and beyond mob/next_move)
observersThe list of people observing this mob.
persistent_ckeya ckey that persists client logout / ghosting, replaced when a client inhabits the mob
shot_cooldownPeople getting shot by a large amount of bullets in a very short period of time can lag them out, with chat messages being one cause, so a 1s cooldown per hit message is introduced to assuage that
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)
tgui_open_uisglobal
thinking_ICUser is thinking in character. Used to revert to thinking state after stop_typing
throw_bufferholds the buffer to allow for throwing two things before the cooldown effects throwing, reference /mob/proc/do_click()
throw_delayHolds the time when a mob can throw an item next, only applies after two throws, reference /mob/proc/do_click()

Procs

Process_SpacemoveProcess_Spacemove +Called by /client/Move() +For moving in space +Return 1 for movement 0 for none
add_client_color_matrixAdds a color matrix and updates the client. Priority is the order the matrices are applied, lowest first. Will replace an existing matrix of the same name, if one exists.
add_to_all_mob_hudsMOB PROCS //////////////////////////////:
apply_effectLegacy wrapper for effects, DO NOT USE and migrate all code to USING THE STATUS PROCS DIRECTLY
can_resistCan this mob resist (default FALSE)
change_client_color_matrix_priorityChanges a matrix package's priority and updates client.
check_improved_pointingIs this mob important enough to point with big arrows?
clear_client_color_matricesRemoves all matrices and updates client.
create_thinking_indicatorCreates a thinking indicator over the mob.
create_typing_indicatorCreates a typing indicator over the mob.
examinateExamine a mob
get_client_color_matrixReturns the matrix of that name, if it exists.
get_status_tab_itemsAdds this list to the output to the stat browser
has_status_effectChecks if this mob has a status effect that shares the passed effect's ID
has_status_effect_from_sourceChecks if this mob has a status effect that shares the passed effect's ID +and has the passed sources are in its list of sources (ONLY works for grouped efects!)
has_status_effect_listReturns a list of all status effects that share the passed effect type's ID
is_mob_incapacitatedReturns if the mob is incapacitated and unable to perform general actions
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:
play_screen_textproc for playing a screen_text on a mob. +enqueues it if a screen text is running and plays i otherwise +Arguments:
remove_all_indicatorsRemoves any indicators and marks the mob as not speaking IC.
remove_client_color_matrixCan take either a single name or a list of several. Attempts to remove target matrix packages and update client.
remove_thinking_indicatorRemoves the thinking indicator over the mob.
remove_typing_indicatorRemoves the typing indicator over the mob.
select_body_zoneChange the mob's selected body zone to target_zone.
send_to_lobbySend src back to the lobby as a /mob/new_player()
shared_ui_interactionpublic
sync_lighting_plane_alphaSet the lighting plane hud alpha to the mobs lighting_alpha var
throw_alertProc to create or update an alert. Returns the alert if the alert is new or updated, 0 if it was thrown already +category is a text string. Each mob may only have one alert per category; the previous one will be replaced +path is a type path of the actual alert type to throw +severity is an optional number that will be placed at the end of the icon_state for this alert +For example, high pressure's icon_state is "highpressure" and can be serverity 1 or 2 to get "highpressure1" or "highpressure2" +new_master is optional and sets the alert's icon state to "template" in the ui_style icons with the master as an overlay. +Clicks are forwarded to master +Override makes it so the alert is not replaced until cleared by a clear_alert with clear_override, and it's used for hallucinations.
timed_typingSets typing indicator for a couple seconds, for use with client-side comm verbs
timed_typing_clearClears timed typing indicators
update_Login_detailsHandles setting lastKnownIP and computer_id for use by the ban systems
update_client_color_matricesCombines all color matrices and applies them to the client. +Also used on login to give a client its new body's color matrices. +Responsible for sorting the matrices. +Transition is animated but instant by default.
+

Var Details

active_thinking_indicator + + + + +

+

the icon currently used for the thinking indicator's bubble

active_typing_indicator + + + + +

+

the icon currently used for the typing indicator's bubble

blinded + + + + +

+

bool that tracks if blind

client_color_matrices + + + + +

+

Color matrices to be applied to the client window. Assoc. list.

emotes_used + + + + +

+

Used for tracking last uses of emotes for cooldown purposes

eye_blind + + + + +

+

timer for blinding

eye_blurry + + + + +

+

Does the mob have blurry sight

fire_delay_next_fire + + + + +

+

An assoc list where the keys are fire delay group string defines +and the keys are when the guns of the group can be fired again

listed_turf + + + + +

+

the current turf being examined in the stat panel

luminosity_sources + + + + +

+

List of active luminosity sources for handling of light stacking

mob_language_menu + + + + +

+

the mob's tgui player panel

mob_panel + + + + +

+

the mob's tgui player panel

next_click + + + + +

+

1 decisecond click delay (above and beyond mob/next_move)

observers + + + + +

+

The list of people observing this mob.

persistent_ckey + + + + +

+

a ckey that persists client logout / ghosting, replaced when a client inhabits the mob

shot_cooldown + + + + +

+

People getting shot by a large amount of bullets in a very short period of time can lag them out, with chat messages being one cause, so a 1s cooldown per hit message is introduced to assuage that

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)

tgui_open_uis + + + + +

+

global

+

Tracks open UIs for a user.

thinking_IC + + + + +

+

User is thinking in character. Used to revert to thinking state after stop_typing

throw_buffer + + + + +

+

holds the buffer to allow for throwing two things before the cooldown effects throwing, reference /mob/proc/do_click()

throw_delay + + + + +

+

Holds the time when a mob can throw an item next, only applies after two throws, reference /mob/proc/do_click()

Proc Details

Process_Spacemove +

+

Process_Spacemove +Called by /client/Move() +For moving in space +Return 1 for movement 0 for none

add_client_color_matrix +

+

Adds a color matrix and updates the client. Priority is the order the matrices are applied, lowest first. Will replace an existing matrix of the same name, if one exists.

add_to_all_mob_huds +

+

MOB PROCS //////////////////////////////:

apply_effect +

+

Legacy wrapper for effects, DO NOT USE and migrate all code to USING THE STATUS PROCS DIRECTLY

can_resist +

+

Can this mob resist (default FALSE)

change_client_color_matrix_priority +

+

Changes a matrix package's priority and updates client.

check_improved_pointing +

+

Is this mob important enough to point with big arrows?

clear_client_color_matrices +

+

Removes all matrices and updates client.

create_thinking_indicator +

+

Creates a thinking indicator over the mob.

create_typing_indicator +

+

Creates a typing indicator over the mob.

examinate +

+

Examine a mob

+

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

get_client_color_matrix +

+

Returns the matrix of that name, if it exists.

get_status_tab_items +

+

Adds this list to the output to the stat browser

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_from_source +

+

Checks if this mob has a status effect that shares the passed effect's ID +and has the passed sources are in its list of sources (ONLY works for grouped efects!)

+

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

is_mob_incapacitated +

+

Returns if the mob is incapacitated and unable to perform general actions

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:

+
    +
  • text - The text to send out
  • +
+

Returns TRUE if it was able to run the emote, FALSE otherwise.

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:

+
    +
  • text: text we want to be displayed
  • +
  • alert_type: typepath for screen text type we want to play here
  • +
  • override_color: the color of the text to use
  • +

remove_all_indicators +

+

Removes any indicators and marks the mob as not speaking IC.

remove_client_color_matrix +

+

Can take either a single name or a list of several. Attempts to remove target matrix packages and update client.

remove_thinking_indicator +

+

Removes the thinking indicator over the mob.

remove_typing_indicator +

+

Removes the typing indicator over the mob.

select_body_zone +

+

Change the mob's selected body zone to target_zone.

send_to_lobby +

+

Send src back to the lobby as a /mob/new_player()

shared_ui_interaction +

+

public

+

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

+

return UI_state The state of the UI.

sync_lighting_plane_alpha +

+

Set the lighting plane hud alpha to the mobs lighting_alpha var

throw_alert +

+

Proc to create or update an alert. Returns the alert if the alert is new or updated, 0 if it was thrown already +category is a text string. Each mob may only have one alert per category; the previous one will be replaced +path is a type path of the actual alert type to throw +severity is an optional number that will be placed at the end of the icon_state for this alert +For example, high pressure's icon_state is "highpressure" and can be serverity 1 or 2 to get "highpressure1" or "highpressure2" +new_master is optional and sets the alert's icon state to "template" in the ui_style icons with the master as an overlay. +Clicks are forwarded to master +Override makes it so the alert is not replaced until cleared by a clear_alert with clear_override, and it's used for hallucinations.

timed_typing +

+

Sets typing indicator for a couple seconds, for use with client-side comm verbs

timed_typing_clear +

+

Clears timed typing indicators

update_Login_details +

+

Handles setting lastKnownIP and computer_id for use by the ban systems

update_client_color_matrices +

+

Combines all color matrices and applies them to the client. +Also used on login to give a client its new body's color matrices. +Responsible for sorting the matrices. +Transition is animated but instant by default.

+ + + diff --git a/mob/camera/imaginary_friend.html b/mob/camera/imaginary_friend.html new file mode 100644 index 000000000000..89c16092bd99 --- /dev/null +++ b/mob/camera/imaginary_friend.html @@ -0,0 +1,70 @@ + + + + + + + /mob/camera/imaginary_friend - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

imaginary friend + + + +

+ + + + + + + +

Procs

deactivatelogs the imaginary friend's removal, ghosts them and cleans up the friend
friend_talkshows langchat and speech text to the owner and friend, and sends speech text to dchat
get_xeno_appearancegets a directional icon for the xeno appearance
recallreturns the friend to the owner
setup_friendgives the friend the correct name, gender and sets up their appearance
update_imagemakes the friend update their icon and appear to themselves and, if not hidden, the owner

Proc Details

deactivate +

+

logs the imaginary friend's removal, ghosts them and cleans up the friend

friend_talk +

+

shows langchat and speech text to the owner and friend, and sends speech text to dchat

get_xeno_appearance +

+

gets a directional icon for the xeno appearance

recall +

+

returns the friend to the owner

setup_friend +

+

gives the friend the correct name, gender and sets up their appearance

update_image +

+

makes the friend update their icon and appear to themselves and, if not hidden, the owner

+ + + diff --git a/mob/dead/observer.html b/mob/dead/observer.html new file mode 100644 index 000000000000..63bc68a8d5fa --- /dev/null +++ b/mob/dead/observer.html @@ -0,0 +1,127 @@ + + + + + + + /mob/dead/observer - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

ghost + + + +

+ + + + + + + + + + + + + + + +

Vars

admin_larva_protectionIf the observer is an admin, are they excluded from the xeno queue?
bypass_time_of_death_checksUsed to bypass time of death checks such as when being selected for larva.
observe_target_clientThe target client that the ghost is observing.
observe_target_mobThe target mob that the ghost is observing.

Procs

clean_observe_targetRemoves all signals and data related to the observe target and resets observer's HUD/eye
do_observemakes the ghost see the target hud and sets the eye at the target.
format_jumpFormat text and links to JuMP/FoLloW something
observe_target_ghostingWhen the observe target ghosts our observer disconnect from their screen updates
observe_target_loginWhen the observe target logs in our observer connect to the new client
observe_target_new_mindWhen the observe target gets a new mind our observer connects to the new client's screens
observe_target_screen_addWhen the observer target gets a screen, our observer gets a screen minus some game screens we don't want the observer to touch
observe_target_screen_removeWhen the observer target loses a screen, our observer loses it as well
observer_move_reactWhen the observer moves we disconnect from the observe target if we aren't on the same turf
toggle_predator_actionThis proc is called when a predator round is toggled by the admin verb, as well as when a ghost logs in
+

Var Details

admin_larva_protection + + + + +

+

If the observer is an admin, are they excluded from the xeno queue?

bypass_time_of_death_checks + + + + +

+

Used to bypass time of death checks such as when being selected for larva.

observe_target_client + + + + +

+

The target client that the ghost is observing.

observe_target_mob + + + + +

+

The target mob that the ghost is observing.

Proc Details

clean_observe_target +

+

Removes all signals and data related to the observe target and resets observer's HUD/eye

do_observe +

+

makes the ghost see the target hud and sets the eye at the target.

format_jump +

+

Format text and links to JuMP/FoLloW something

observe_target_ghosting +

+

When the observe target ghosts our observer disconnect from their screen updates

observe_target_login +

+

When the observe target logs in our observer connect to the new client

observe_target_new_mind +

+

When the observe target gets a new mind our observer connects to the new client's screens

observe_target_screen_add +

+

When the observer target gets a screen, our observer gets a screen minus some game screens we don't want the observer to touch

observe_target_screen_remove +

+

When the observer target loses a screen, our observer loses it as well

observer_move_react +

+

When the observer moves we disconnect from the observe target if we aren't on the same turf

toggle_predator_action +

+

This proc is called when a predator round is toggled by the admin verb, as well as when a ghost logs in

+ + + diff --git a/mob/hologram.html b/mob/hologram.html new file mode 100644 index 000000000000..4699ef40b33e --- /dev/null +++ b/mob/hologram.html @@ -0,0 +1,36 @@ + + + + + + + /mob/hologram - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Hologram + + + +

+ + +

Vars

motion_sensedIf can be detected on motion detectors.
+

Var Details

motion_sensed + + + + +

+

If can be detected on motion detectors.

+ + + diff --git a/mob/living.html b/mob/living.html new file mode 100644 index 000000000000..2e2ea0e51fe0 --- /dev/null +++ b/mob/living.html @@ -0,0 +1,522 @@ + + + + + + + /mob/living - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/mob/living + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

active_surgeriesAssoc. list - the operations being performed, by aim zone. Both boolean and link to that surgery.
blood_volumeHow much blood the mob has
body_positionVariable to track the body position of a mob, regardgless of the actual angle of rotation (usually matching it, but not necessarily).
bubble_iconwhat icon the mob uses for speechbubbles
custom_slashed_soundCustom sound if the mob gets slashed by a xenomorph
dead_black_market_valueThis is what the value is changed to when the mob dies. Actual BMV definition in atom/movable.
incision_depthsAssoc. list - incision depths, by aim zone. Set by initialize_incision_depths().
limit_bloodHow much blood the mob can have
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.
max_bloodHow much blood the mob should ideally have
mobility_flagsFlags that determine the potential of a mob to perform certain actions. Do not change this directly.
rest_cooldownCooldown for manually toggling resting to avoid spamming
rotate_on_lyingDoes the mob rotate when lying
status_effectsa list of all status effects the mob has
weed_food_iconicon for weed_food states
weed_food_statesicon_states for weed_food (needs to be the same length as weed_food_states_flipped)
weed_food_states_flippedflipped icon_states for weed_food (needs to be the same length as weed_food_states)

Procs

AdjustKnockDownAdds to remaining Knockdown duration
AdjustKnockOutAdds to remaining Knockout duration
AmountKnockDownHow much time remains - scaled by GLOBAL_STATUS_MULTIPLIER (normally in multiples of legacy 2 seconds)
GetDazeDurationOverridable handler to adjust the numerical value of status effects. Expand as needed
GetKnockDownDurationOverridable handler to adjust the numerical value of status effects. Expand as needed
GetKnockOutDurationOverridable handler to adjust the numerical value of status effects. Expand as needed
GetRootDurationOverridable handler to adjust the numerical value of status effects. Expand as needed
GetStunDurationOverridable handler to adjust the numerical value of status effects. Expand as needed
KnockOutSets Knockout duration to at least the amount provided
SetKnockDownSets exact remaining KnockDown duration
SetKnockOutSets exact remaining Knockout duration
add_splatter_flooradd_splatter_floor
apply_status_effectApplies a given status effect to this mob.
cleanup_status_effectsClear all running status effects assuming deletion
create_thinking_indicatorOverrides for overlay creation
health_scanlegacy proc for to_chat messages on health analysers
lying_angle_on_movementCalled by mob Move() when the lying_angle is different than zero, to better visually simulate crawling.
on_dazed_trait_gainCalled when TRAIT_DAZED is added to the mob.
on_dazed_trait_lossCalled when TRAIT_DAZED 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_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_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_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_lying_downProc to append behavior related to lying down.
on_standing_upProc to append behavior related to lying down.
register_init_signalsCalled on /mob/living/Initialize(mapload), for the mob to register to relevant signals.
remove_status_effectRemoves all instances of a given status effect from this mob
resist_buckleThe medical machines below are listed separately to allow easier changes to each process
set_body_positionChanges the value of the [living/body_position] variable. Call this before set_lying_angle()
set_buckledReports the event of the change in value of the buckled variable.
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_restingProc to hook behavior to the change of value in the resting variable.
shared_living_ui_distancepublic
shared_living_ui_in_viewpublic
show_speech_bubbleShows custom speech bubbles for screaming, *warcry etc.
splat'Splats' src, killing them. Mouses override this proc with their own unique splat.
undense_changedCalled when TRAIT_UNDENSE is gained or lost
update_densityUses presence of TRAIT_UNDENSE to figure out what is the correct density state for the mob. Triggered by trait signal.
update_eye_blurApply the blurry overlays to a mobs clients screen
update_layerUpdates the layer the mob is on based on its current status. This can result in redundant updates. Replace by trait signals eventually
+

Var Details

active_surgeries + + + + +

+

Assoc. list - the operations being performed, by aim zone. Both boolean and link to that surgery.

blood_volume + + + + +

+

How much blood the mob has

body_position + + + + +

+

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

bubble_icon + + + + +

+

what icon the mob uses for speechbubbles

custom_slashed_sound + + + + +

+

Custom sound if the mob gets slashed by a xenomorph

dead_black_market_value + + + + +

+

This is what the value is changed to when the mob dies. Actual BMV definition in atom/movable.

incision_depths + + + + +

+

Assoc. list - incision depths, by aim zone. Set by initialize_incision_depths().

limit_blood + + + + +

+

How much blood the mob can have

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.

max_blood + + + + +

+

How much blood the mob should ideally have

mobility_flags + + + + +

+

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

rest_cooldown + + + + +

+

Cooldown for manually toggling resting to avoid spamming

rotate_on_lying + + + + +

+

Does the mob rotate when lying

status_effects + + + + +

+

a list of all status effects the mob has

weed_food_icon + + + + +

+

icon for weed_food states

weed_food_states + + + + +

+

icon_states for weed_food (needs to be the same length as weed_food_states_flipped)

weed_food_states_flipped + + + + +

+

flipped icon_states for weed_food (needs to be the same length as weed_food_states)

Proc Details

AdjustKnockDown +

+

Adds to remaining Knockdown duration

AdjustKnockOut +

+

Adds to remaining Knockout duration

AmountKnockDown +

+

How much time remains - scaled by GLOBAL_STATUS_MULTIPLIER (normally in multiples of legacy 2 seconds)

GetDazeDuration +

+

Overridable handler to adjust the numerical value of status effects. Expand as needed

GetKnockDownDuration +

+

Overridable handler to adjust the numerical value of status effects. Expand as needed

GetKnockOutDuration +

+

Overridable handler to adjust the numerical value of status effects. Expand as needed

GetRootDuration +

+

Overridable handler to adjust the numerical value of status effects. Expand as needed

GetStunDuration +

+

Overridable handler to adjust the numerical value of status effects. Expand as needed

KnockOut +

+

Sets Knockout duration to at least the amount provided

SetKnockDown +

+

Sets exact remaining KnockDown duration

SetKnockOut +

+

Sets exact remaining Knockout duration

add_splatter_floor +

+

add_splatter_floor

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.

cleanup_status_effects +

+

Clear all running status effects assuming deletion

create_thinking_indicator +

+

Overrides for overlay creation

health_scan +

+

legacy proc for to_chat messages on health analysers

lying_angle_on_movement +

+

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

on_dazed_trait_gain +

+

Called when TRAIT_DAZED is added to the mob.

on_dazed_trait_loss +

+

Called when TRAIT_DAZED 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_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_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_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_lying_down +

+

Proc to append behavior related to lying down.

on_standing_up +

+

Proc to append behavior related to lying down.

register_init_signals +

+

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

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 +

+

The medical machines below are listed separately to allow easier changes to each process

set_body_position +

+

Changes the value of the [living/body_position] variable. Call this before set_lying_angle()

set_buckled +

+

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

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_resting +

+

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

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.

shared_living_ui_in_view +

+

public

+

Check if in view. Can interact only if adjacent, updates within max distance, otherwise closes

+

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

+

return UI_state The state of the UI.

show_speech_bubble +

+

Shows custom speech bubbles for screaming, *warcry etc.

splat +

+

'Splats' src, killing them. Mouses override this proc with their own unique splat.

undense_changed +

+

Called when TRAIT_UNDENSE is gained or lost

update_density +

+

Uses presence of TRAIT_UNDENSE to figure out what is the correct density state for the mob. Triggered by trait signal.

update_eye_blur +

+

Apply the blurry overlays to a mobs clients screen

update_layer +

+

Updates the layer the mob is on based on its current status. This can result in redundant updates. Replace by trait signals eventually

+ + + diff --git a/mob/living/carbon.html b/mob/living/carbon.html new file mode 100644 index 000000000000..34148d4d52c0 --- /dev/null +++ b/mob/living/carbon.html @@ -0,0 +1,60 @@ + + + + + + + /mob/living/carbon - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/mob/living/carbon + + + +

+ + + + + +

Vars

active_transfusionslist of active transfusions from blood bags or iv stands

Procs

auto_observedCalled by /mob/dead/observer/proc/do_observe when a carbon mob is observed by a ghost with /datum/preferences/var/auto_observe enabled.
get_sharp_obj_blockerChecks if something prevents sharp objects from interacting with the mob (such as armor blocking surgical tools / surgery)
lying_angle_on_lying_downSpecial carbon interaction on lying down, to transform its sprite by a rotation.
+

Var Details

active_transfusions + + + + +

+

list of active transfusions from blood bags or iv stands

Proc Details

auto_observed +

+

Called by /mob/dead/observer/proc/do_observe when a carbon mob is observed by a ghost with /datum/preferences/var/auto_observe enabled.

+

Any HUD changes past this point are handled by /mob/dead/observer/proc/observe_target_screen_add +and /mob/dead/observer/proc/observe_target_screen_remove.

+

Override on subtype mobs if they have any extra HUD elements/behaviour.

get_sharp_obj_blocker +

+

Checks if something prevents sharp objects from interacting with the mob (such as armor blocking surgical tools / surgery)

lying_angle_on_lying_down +

+

Special carbon interaction on lying down, to transform its sprite by a rotation.

+ + + diff --git a/mob/living/carbon/human.html b/mob/living/carbon/human.html new file mode 100644 index 000000000000..5c79e1083420 --- /dev/null +++ b/mob/living/carbon/human.html @@ -0,0 +1,190 @@ + + + + + + + /mob/living/carbon/human - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/mob/living/carbon/human + + + +

+ + + + + + + + + + + + + + + + + + + + + + +

Vars

bloody_footstepsThe number of bloody foot steps left to make
criminalused to determine if precise taser will shoot. Security code is so convoluted it's the easiest way, sorry.
embedded_itemsA list of all the shrapnel currently embedded in the human
focused_fire_markerStored image references associated with focus-fire.
grad_styleStyle used for the hair gradient.
icon_render_image_cachestatic associated list of limb key -> image to avoid unnecessary overlay generation
icon_render_keysassociated list of body part zone -> currently active limb key
remembered_dropped_objectslist of weakrefs of recently dropped objects
traitsThe list of traits a human has +Store as typepaths

Procs

attack_animalReduces effects by armor value.
auto_observedHandles any storage containers that the human is looking inside when auto-observed.
drop_inv_item_on_groundDefault delay +Multiplier for how quickly the user can strip things. +The total skill level of CQC & Police +Delay then gets + 0.5s per skill level, so long as not dead or cuffed. +Final result is overall delay * speed multiplier
force_sayMakes the player force say what's in their current input box.
get_eye_protectionget_eye_protection() +Returns a number between -1 to 2
handle_hugger_attachmentHuman hugger handling
holster_verbFor the holster hotkey
is_heart_brokenReturns whether this person has a broken heart but is otherwise revivable
on_dazed_trait_gainPain should override the SetEyeBlur(0) should the pain be painful enough to cause eyeblur in the first place. Also, peepers is essential to make sure eye damage isn't overridden.
update_damage_overlaysRecalculates and reapplies damage overlays to every limb
update_headshot_overlayHandles headshot images. These render above hair and below hats/helmets. Must be given a headshot_state or it just removes the overlay. +Applied by gun suicide and high impact bullet executions, removed by rejuvenate, since such people are otherwise unrevivable.
update_leg_statusUpdates TRAIT_FLOORED based on whether the mob has appropriate limbs to stand or not
+

Var Details

bloody_footsteps + + + + +

+

The number of bloody foot steps left to make

criminal + + + + +

+

used to determine if precise taser will shoot. Security code is so convoluted it's the easiest way, sorry.

embedded_items + + + + +

+

A list of all the shrapnel currently embedded in the human

focused_fire_marker + + + + +

+

Stored image references associated with focus-fire.

grad_style + + + + +

+

Style used for the hair gradient.

icon_render_image_cache + + + + +

+

static associated list of limb key -> image to avoid unnecessary overlay generation

icon_render_keys + + + + +

+

associated list of body part zone -> currently active limb key

remembered_dropped_objects + + + + +

+

list of weakrefs of recently dropped objects

traits + + + + +

+

The list of traits a human has +Store as typepaths

Proc Details

attack_animal +

+

Reduces effects by armor value.

auto_observed +

+

Handles any storage containers that the human is looking inside when auto-observed.

drop_inv_item_on_ground +

+

Default delay +Multiplier for how quickly the user can strip things. +The total skill level of CQC & Police +Delay then gets + 0.5s per skill level, so long as not dead or cuffed. +Final result is overall delay * speed multiplier

force_say +

+

Makes the player force say what's in their current input box.

get_eye_protection +

+

get_eye_protection() +Returns a number between -1 to 2

handle_hugger_attachment +

+

Human hugger handling

holster_verb +

+

For the holster hotkey

is_heart_broken +

+

Returns whether this person has a broken heart but is otherwise revivable

on_dazed_trait_gain +

+

Pain should override the SetEyeBlur(0) should the pain be painful enough to cause eyeblur in the first place. Also, peepers is essential to make sure eye damage isn't overridden.

update_damage_overlays +

+

Recalculates and reapplies damage overlays to every limb

update_headshot_overlay +

+

Handles headshot images. These render above hair and below hats/helmets. Must be given a headshot_state or it just removes the overlay. +Applied by gun suicide and high impact bullet executions, removed by rejuvenate, since such people are otherwise unrevivable.

update_leg_status +

+

Updates TRAIT_FLOORED based on whether the mob has appropriate limbs to stand or not

+ + + diff --git a/mob/living/carbon/human/professor_dummy.html b/mob/living/carbon/human/professor_dummy.html new file mode 100644 index 000000000000..c4f4ac580790 --- /dev/null +++ b/mob/living/carbon/human/professor_dummy.html @@ -0,0 +1,35 @@ + + + + + + + /mob/living/carbon/human/professor_dummy - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/mob/living/carbon/human/professor_dummy + + + +

+ + +

Procs

InitializeProfessor Dummy, used by CMOs and SEAs to teach new nurses/doctors

Proc Details

Initialize +

+

Professor Dummy, used by CMOs and SEAs to teach new nurses/doctors

+ + + diff --git a/mob/living/carbon/xenomorph.html b/mob/living/carbon/xenomorph.html new file mode 100644 index 000000000000..c1a3d9d2854f --- /dev/null +++ b/mob/living/carbon/xenomorph.html @@ -0,0 +1,315 @@ + + + + + + + /mob/living/carbon/xenomorph - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Drone + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

acid_blood_damageThe damage dealt by a xeno whenever they take damage near someone
agility0/FALSE - upright, 1/TRUE - all fours
ammoThe ammo datum for our spit projectiles. We're born with this, it changes sometimes.
available_fruitsList of placeable the xenomorph has access to.
base_actionsList of actions (typepaths) that a +xenomorph type is given upon spawn
cannot_slashIf TRUE, the xeno cannot slash anything
current_fruitsIf we have current_fruits that are limited, e.g. fruits
devour_timerThe world.time at which we will regurgitate our currently-vored victim
egg_planting_rangetiles from self you can plant eggs.
extra_build_distFor drones/hivelords. Extends the maximum build range they have
max_placeableLimit to that amount
nameALL OLD SS13 VARS
organ_valuevalue of organ in each caste, e.g. 10k is autodoc larva removal. runner is 500
selected_constructionwhich special structure to build when we place constructions
selected_fruitthe typepath of the placeable we wanna put down
selected_markIf leader what mark you will place when you make one
selected_resinWhich resin structure to build when we secrete resin, defaults to null.
spit_delayCaste-based spit windup duration (if applicable)
spit_windupCaste-based spit windup
stealthfor check on lurker invisibility
strainThe xeno's strain, if they've taken one.
tracked_markerthis is the resin mark that is currently being tracked by the xeno
xeno_inhand_item_offsetHow much to horizontally adjust the sprites of held item onmobs by. Based on icon size. Most xenos have hands about the same height as a human's.

Procs

IsAdvancedToolUserThis permits xenos with thumbs to fire guns and arm grenades. God help us all.
add_minimap_markerAdds a minimap marker for this xeno using the provided flags. +If flags is 0, it will use get_minimap_flag_for_faction for this xeno
can_not_harmReturns true/false based on if the xenomorph can harm the passed carbon mob.
can_take_strainIs this xeno currently able to take a strain?
clear_debuffssnowflake proc to clear effects from research warcrimes
generate_and_set_nicknumberGenerate a new unused nicknumber for the current hive, if hive doesn't exist return 0
get_eye_protectionget_eye_protection() +Returns a number between -1 to 2
get_strain_iconReturns the custom icon state from the xeno's strain, if it has one.
get_strain_nameReturns the name of the xeno's strain, if it has one.
handle_screech_actHandle transferring things from the old Xeno if we have one in the case of evolve, devolve etc.
hive_statusHolds Xeno verbs that don't belong anywhere else.
pull_powerCalled when pulling something and attacking yourself wth the pull (Z hotkey) override for caste specific behaviour
set_selected_abilityAbilities used by multiple Xenos. +README
throw_carbonHelper procedure for throwing other carbon based mobs around +Pretty much a wrapper to [/atom/movable/proc/throw_atom] with extra handling
throw_carbon_endHandler callback to reset immobilization status after a successful /mob/living/carbon/xenomorph/proc/throw_carbon
+

Var Details

acid_blood_damage + + + + +

+

The damage dealt by a xeno whenever they take damage near someone

agility + + + + +

+

0/FALSE - upright, 1/TRUE - all fours

ammo + + + + +

+

The ammo datum for our spit projectiles. We're born with this, it changes sometimes.

available_fruits + + + + +

+

List of placeable the xenomorph has access to.

base_actions + + + + +

+

List of actions (typepaths) that a +xenomorph type is given upon spawn

cannot_slash + + + + +

+

If TRUE, the xeno cannot slash anything

current_fruits + + + + +

+

If we have current_fruits that are limited, e.g. fruits

devour_timer + + + + +

+

The world.time at which we will regurgitate our currently-vored victim

egg_planting_range + + + + +

+

tiles from self you can plant eggs.

extra_build_dist + + + + +

+

For drones/hivelords. Extends the maximum build range they have

max_placeable + + + + +

+

Limit to that amount

name + + + + +

+

ALL OLD SS13 VARS

organ_value + + + + +

+

value of organ in each caste, e.g. 10k is autodoc larva removal. runner is 500

selected_construction + + + + +

+

which special structure to build when we place constructions

selected_fruit + + + + +

+

the typepath of the placeable we wanna put down

selected_mark + + + + +

+

If leader what mark you will place when you make one

selected_resin + + + + +

+

Which resin structure to build when we secrete resin, defaults to null.

spit_delay + + + + +

+

Caste-based spit windup duration (if applicable)

spit_windup + + + + +

+

Caste-based spit windup

stealth + + + + +

+

for check on lurker invisibility

strain + + + + +

+

The xeno's strain, if they've taken one.

tracked_marker + + + + +

+

this is the resin mark that is currently being tracked by the xeno

xeno_inhand_item_offset + + + + +

+

How much to horizontally adjust the sprites of held item onmobs by. Based on icon size. Most xenos have hands about the same height as a human's.

Proc Details

IsAdvancedToolUser +

+

This permits xenos with thumbs to fire guns and arm grenades. God help us all.

add_minimap_marker +

+

Adds a minimap marker for this xeno using the provided flags. +If flags is 0, it will use get_minimap_flag_for_faction for this xeno

can_not_harm +

+

Returns true/false based on if the xenomorph can harm the passed carbon mob.

can_take_strain +

+

Is this xeno currently able to take a strain?

clear_debuffs +

+

snowflake proc to clear effects from research warcrimes

generate_and_set_nicknumber +

+

Generate a new unused nicknumber for the current hive, if hive doesn't exist return 0

get_eye_protection +

+

get_eye_protection() +Returns a number between -1 to 2

get_strain_icon +

+

Returns the custom icon state from the xeno's strain, if it has one.

+

If that can't be found, returns "Normal"

get_strain_name +

+

Returns the name of the xeno's strain, if it has one.

+

If that can't be found, returns "Normal".

handle_screech_act +

+

Handle transferring things from the old Xeno if we have one in the case of evolve, devolve etc.

hive_status +

+

Holds Xeno verbs that don't belong anywhere else.

pull_power +

+

Called when pulling something and attacking yourself wth the pull (Z hotkey) override for caste specific behaviour

set_selected_ability +

+

Abilities used by multiple Xenos. +README

throw_carbon +

+

Helper procedure for throwing other carbon based mobs around +Pretty much a wrapper to [/atom/movable/proc/throw_atom] with extra handling

+
    +
  • target - the target carbon mob that will be thrown
  • +
  • direction - the direction the target will be thrown toward, or if null, infered from relative position with target
  • +
  • distance - the total distance the throw will be made for
  • +
  • speed - throw_atom relative speed of the throw, check [SPEED_AVERAGE] for details
  • +
  • shake_camera - whether to shake the thrown mob camera on throw
  • +
  • immobilize - if TRUE the mob will be immobilized during the throw, ensuring it doesn't move and break it
  • +

throw_carbon_end +

+

Handler callback to reset immobilization status after a successful /mob/living/carbon/xenomorph/proc/throw_carbon

+ + + diff --git a/mob/living/carbon/xenomorph/carrier.html b/mob/living/carbon/xenomorph/carrier.html new file mode 100644 index 000000000000..61d9340beb9a --- /dev/null +++ b/mob/living/carbon/xenomorph/carrier.html @@ -0,0 +1,35 @@ + + + + + + + /mob/living/carbon/xenomorph/carrier - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Carrier + + + +

+ + +

Procs

InitializeSimplified image index change.

Proc Details

Initialize +

+

Simplified image index change.

+ + + diff --git a/mob/living/carbon/xenomorph/facehugger.html b/mob/living/carbon/xenomorph/facehugger.html new file mode 100644 index 000000000000..d5753f03a55a --- /dev/null +++ b/mob/living/carbon/xenomorph/facehugger.html @@ -0,0 +1,43 @@ + + + + + + + /mob/living/carbon/xenomorph/facehugger - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Facehugger + + + +

+ + + +

Vars

next_facehug_goalHow many hugs the hugger needs to age
total_facehugsThe lifetime hugs from this hugger
+

Var Details

next_facehug_goal + + + + +

+

How many hugs the hugger needs to age

total_facehugs + + + + +

+

The lifetime hugs from this hugger

+ + + diff --git a/mob/living/carbon/xenomorph/predalien.html b/mob/living/carbon/xenomorph/predalien.html new file mode 100644 index 000000000000..ef0492fdbacc --- /dev/null +++ b/mob/living/carbon/xenomorph/predalien.html @@ -0,0 +1,36 @@ + + + + + + + /mob/living/carbon/xenomorph/predalien - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Abomination + + + +

+ + +

Vars

should_announce_spawnIf the pred alert/player notif should happen when the predalien spawns
+

Var Details

should_announce_spawn + + + + +

+

If the pred alert/player notif should happen when the predalien spawns

+ + + diff --git a/mob/living/carbon/xenomorph/warrior.html b/mob/living/carbon/xenomorph/warrior.html new file mode 100644 index 000000000000..eda54192b792 --- /dev/null +++ b/mob/living/carbon/xenomorph/warrior.html @@ -0,0 +1,42 @@ + + + + + + + /mob/living/carbon/xenomorph/warrior - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Warrior + + + +

+ + + +

Procs

pull_powerWarrior specific behaviour for increasing pull power, limb rip.
rip_limbWarrior Rip Limb - called by pull_power()

Proc Details

pull_power +

+

Warrior specific behaviour for increasing pull power, limb rip.

rip_limb +

+

Warrior Rip Limb - called by pull_power()

+ + + diff --git a/mob/living/silicon.html b/mob/living/silicon.html new file mode 100644 index 000000000000..e7914379232f --- /dev/null +++ b/mob/living/silicon.html @@ -0,0 +1,37 @@ + + + + + + + /mob/living/silicon - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/mob/living/silicon + + + +

+ + +

Procs

get_ui_accessReturns a UI status representing this silicon's capability to access +the given source. Called by ui_status_silicon_has_access.

Proc Details

get_ui_access +

+

Returns a UI status representing this silicon's capability to access +the given source. Called by ui_status_silicon_has_access.

+ + + diff --git a/mob/living/simple_animal.html b/mob/living/simple_animal.html new file mode 100644 index 000000000000..efb67ecf381e --- /dev/null +++ b/mob/living/simple_animal.html @@ -0,0 +1,99 @@ + + + + + + + /mob/living/simple_animal - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

animal + + + +

+ + + + + + + + + + + +

Vars

affected_by_fireWill this mob be affected by fire/napalm? Set to FALSE for all mobs as the implications could be weird due to not being tested for all simple mobs.
cold_damage_per_ticksame as heat_damage_per_tick, only if the bodytemperature it's lower than minbodytemp
emote_hearEmotes that can be heard by other mobs.
emote_seeUnlike speak_emote, the list of things in this variable only show by themselves with no spoken text. IE: Ian barks, Ian yaps.
heat_damage_per_tickamount of damage applied if animal's body temperature is higher than maxbodytemp
speedHigher speed is slower, negative speed is faster.
stop_automated_movementUse this to temporarely stop random movement or to if you write special movement code for animals.
stop_automated_movement_when_pulledWhen set to 1 this stops the animal from moving when someone is pulling it.
unsuitable_atoms_damageThis damage is taken when atmos doesn't fit all the requirements above
wanderDoes the mob wander around when idle?
+

Var Details

affected_by_fire + + + + +

+

Will this mob be affected by fire/napalm? Set to FALSE for all mobs as the implications could be weird due to not being tested for all simple mobs.

cold_damage_per_tick + + + + +

+

same as heat_damage_per_tick, only if the bodytemperature it's lower than minbodytemp

emote_hear + + + + +

+

Emotes that can be heard by other mobs.

emote_see + + + + +

+

Unlike speak_emote, the list of things in this variable only show by themselves with no spoken text. IE: Ian barks, Ian yaps.

heat_damage_per_tick + + + + +

+

amount of damage applied if animal's body temperature is higher than maxbodytemp

speed + + + + +

+

Higher speed is slower, negative speed is faster.

stop_automated_movement + + + + +

+

Use this to temporarely stop random movement or to if you write special movement code for animals.

stop_automated_movement_when_pulled + + + + +

+

When set to 1 this stops the animal from moving when someone is pulling it.

unsuitable_atoms_damage + + + + +

+

This damage is taken when atmos doesn't fit all the requirements above

wander + + + + +

+

Does the mob wander around when idle?

+ + + diff --git a/mob/living/simple_animal/cat.html b/mob/living/simple_animal/cat.html new file mode 100644 index 000000000000..06250f472025 --- /dev/null +++ b/mob/living/simple_animal/cat.html @@ -0,0 +1,50 @@ + + + + + + + /mob/living/simple_animal/cat - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

cat + + + +

+ + + + +

Vars

hunting_targetsThe mobs that src will track to hunt and kill.
movement_targetThe target src is moving towards during its hunt.
play_counterThe cat will 'play' with dead hunted targets near it until this counter reaches a certain value.
+

Var Details

hunting_targets + + + + +

+

The mobs that src will track to hunt and kill.

movement_target + + + + +

+

The target src is moving towards during its hunt.

play_counter + + + + +

+

The cat will 'play' with dead hunted targets near it until this counter reaches a certain value.

+ + + diff --git a/mob/living/simple_animal/hostile/retaliate/giant_lizard.html b/mob/living/simple_animal/hostile/retaliate/giant_lizard.html new file mode 100644 index 000000000000..e5628e91007b --- /dev/null +++ b/mob/living/simple_animal/hostile/retaliate/giant_lizard.html @@ -0,0 +1,218 @@ + + + + + + + /mob/living/simple_animal/hostile/retaliate/giant_lizard - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

giant lizard + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

acceptable_foodsA list of foods the mob is interested in eating.
aggression_valueIf 0, moves the mob out of attacking into idle state. Used to prevent the mob from chasing down targets that did not mean to hurt it.
bleed_ticksHow many times the mob is going bleed in the Life() proc.
calm_cooldownCooldown for when the mob calms down, so the mob doesn't start attacking immediately after calming down.
chance_to_restChance of the mob laying down/getting up.
emote_cooldownCooldown to stop generic emote spam.
food_cooldownCooldown dictating how long the mob will wait between eating food.
food_targetThe food object that the mob is trying to eat.
growl_messageCooldown for the growl emote.
is_eatingIs the mob currently eating the food_target?
is_ravagingAre we currently mauling a mob after pouncing them? Used to stop normal attacks on pounced targets.
is_retreatingIs the mob currently running away from a target?
pet_emotesEmotes to play when being pet by a friend.
pounce_callbacksCollision callbacks for the pounce proc.
pounce_cooldownCooldown for the pounce ability.
pounce_cooldown_lengthLength of the cooldown for pouncing.
retreat_attemptsHow many times have we attempted to retreat?
retreat_cooldownTied directly to retreat_attempts. If our retreat fail, then we will completely stop trying to retreat for the length of this cooldown.
sleep_overlayReference to the ZZzzz sleep overlay when resting.

Procs

MoveToProc for moving to targets. walk_to() doesn't check for resting and status effects so we will do it ourselves.
check_food_locProc for checking if someone picked our food target.
find_target_on_trait_lossProc for handling the AI post-status effect.
growlProc for growling.
handle_foodProc for when the mob finds food and starts DEVOURING it.
process_attack_handProc for handling attacking the lizard with a hand for BOTH XENOS AND HUMANS.
ravagingattackRavaging attack, used for when a mob gets pounced or is on the ground.
try_to_extinguishProc that forces the mob to disengage and try to extinguish itself. Will not be called if the mob is already retreating.
+

Var Details

acceptable_foods + + + + +

+

A list of foods the mob is interested in eating.

aggression_value + + + + +

+

If 0, moves the mob out of attacking into idle state. Used to prevent the mob from chasing down targets that did not mean to hurt it.

bleed_ticks + + + + +

+

How many times the mob is going bleed in the Life() proc.

calm_cooldown + + + + +

+

Cooldown for when the mob calms down, so the mob doesn't start attacking immediately after calming down.

chance_to_rest + + + + +

+

Chance of the mob laying down/getting up.

emote_cooldown + + + + +

+

Cooldown to stop generic emote spam.

food_cooldown + + + + +

+

Cooldown dictating how long the mob will wait between eating food.

food_target + + + + +

+

The food object that the mob is trying to eat.

growl_message + + + + +

+

Cooldown for the growl emote.

is_eating + + + + +

+

Is the mob currently eating the food_target?

is_ravaging + + + + +

+

Are we currently mauling a mob after pouncing them? Used to stop normal attacks on pounced targets.

is_retreating + + + + +

+

Is the mob currently running away from a target?

pet_emotes + + + + +

+

Emotes to play when being pet by a friend.

pounce_callbacks + + + + +

+

Collision callbacks for the pounce proc.

pounce_cooldown + + + + +

+

Cooldown for the pounce ability.

pounce_cooldown_length + + + + +

+

Length of the cooldown for pouncing.

retreat_attempts + + + + +

+

How many times have we attempted to retreat?

retreat_cooldown + + + + +

+

Tied directly to retreat_attempts. If our retreat fail, then we will completely stop trying to retreat for the length of this cooldown.

sleep_overlay + + + + +

+

Reference to the ZZzzz sleep overlay when resting.

Proc Details

MoveTo +

+

Proc for moving to targets. walk_to() doesn't check for resting and status effects so we will do it ourselves.

check_food_loc +

+

Proc for checking if someone picked our food target.

find_target_on_trait_loss +

+

Proc for handling the AI post-status effect.

growl +

+

Proc for growling.

handle_food +

+

Proc for when the mob finds food and starts DEVOURING it.

process_attack_hand +

+

Proc for handling attacking the lizard with a hand for BOTH XENOS AND HUMANS.

ravagingattack +

+

Ravaging attack, used for when a mob gets pounced or is on the ground.

try_to_extinguish +

+

Proc that forces the mob to disengage and try to extinguish itself. Will not be called if the mob is already retreating.

+ + + diff --git a/mob/proccall_handler.html b/mob/proccall_handler.html new file mode 100644 index 000000000000..4b2f2a8fedf6 --- /dev/null +++ b/mob/proccall_handler.html @@ -0,0 +1,44 @@ + + + + + + + /mob/proccall_handler - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

ProcCall Handler + + + +

+ +

Used to handle proccalls called indirectly by an admin (namely tgs). +Has to be a mob because IsAdminAdvancedProcCall() checks usr, which is a mob variable. +So usr is set to this for any proccalls that don't have any usr mob/client to refer to.

+ +

Procs

add_callerAdds a caller.
remove_callerRemoves a caller.

Proc Details

add_caller +

+

Adds a caller.

remove_caller +

+

Removes a caller.

+ + + diff --git a/obj.html b/obj.html new file mode 100644 index 000000000000..92948fe4e438 --- /dev/null +++ b/obj.html @@ -0,0 +1,122 @@ + + + + + + + /obj - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/obj + + + +

+ + + + + + + + + + + + + + +

Vars

access_modifiedWhether or not this instance is using accesses different from initial code. Used for easy locating in map files.
buckle_lyingBed-like behaviour, forces mob.lying = buckle_lying if not set to NO_BUCKLE_LYING.
garbageset to true if the item is garbage and should be deleted after awhile
in_useIf we have a user using us, this will be set on. We will check if the user has stopped using us, and thus stop updating and LAGGING EVERYTHING!
indestructibledetermines whether or not the object can be destroyed by an explosion
matterUsed to store information about the contents of the object.
projectile_coveragean object's "projectile_coverage" var indicates the maximum probability of blocking a projectile, assuming density and throwpass. Used by barricades, tables and window frames
reliabilityUsed by SOME devices to determine how reliable they are.
renamedByPlayerset when a player uses a pen on a renamable object
surgery_duration_multiplierApplied to surgery times for mobs buckled prone to it or lying on the same tile, if the surgery +cares about surface conditions. The lowest multiplier of objects on the tile is used.
unacidableuniversal "unacidabliness" var, here so you can use it in any obj.

Procs

get_applying_acid_timereturns time or -1 if unmeltable
post_vendor_spawn_hookoverride for subtypes that require extra behaviour when spawned from a vendor
+

Var Details

access_modified + + + + +

+

Whether or not this instance is using accesses different from initial code. Used for easy locating in map files.

buckle_lying + + + + +

+

Bed-like behaviour, forces mob.lying = buckle_lying if not set to NO_BUCKLE_LYING.

garbage + + + + +

+

set to true if the item is garbage and should be deleted after awhile

in_use + + + + +

+

If we have a user using us, this will be set on. We will check if the user has stopped using us, and thus stop updating and LAGGING EVERYTHING!

indestructible + + + + +

+

determines whether or not the object can be destroyed by an explosion

matter + + + + +

+

Used to store information about the contents of the object.

projectile_coverage + + + + +

+

an object's "projectile_coverage" var indicates the maximum probability of blocking a projectile, assuming density and throwpass. Used by barricades, tables and window frames

reliability + + + + +

+

Used by SOME devices to determine how reliable they are.

renamedByPlayer + + + + +

+

set when a player uses a pen on a renamable object

surgery_duration_multiplier + + + + +

+

Applied to surgery times for mobs buckled prone to it or lying on the same tile, if the surgery +cares about surface conditions. The lowest multiplier of objects on the tile is used.

unacidable + + + + +

+

universal "unacidabliness" var, here so you can use it in any obj.

Proc Details

get_applying_acid_time +

+

returns time or -1 if unmeltable

post_vendor_spawn_hook +

+

override for subtypes that require extra behaviour when spawned from a vendor

+ + + diff --git a/obj/docking_port.html b/obj/docking_port.html new file mode 100644 index 000000000000..61d498e824c6 --- /dev/null +++ b/obj/docking_port.html @@ -0,0 +1,140 @@ + + + + + + + /obj/docking_port - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/obj/docking_port + + + +

+ + + + + + + + + + + + + + + + +

Vars

delete_afterDelete this port after ship fly off.
dheightposition relative to covered area, parallel to dir
dirthis should point -away- from the dockingport door, ie towards the ship
dwidthposition relative to covered area, perpendicular to dir
heightsize of covered area, parallel to dir
hiddenare we invisible to shuttle navigation computers?
idThe identifier of the port or ship. +This will be used in numerous other places like the console, +stationary ports and whatnot to tell them your ship's mobile +port can be used in these places, or the docking port is compatible, etc.
port_destinationsPossible destinations
registeredare we registered in SSshuttles?
template_idThe original template shuttle_id for this shuttle (so without a suffix identifier)
widthsize of covered area, perpendicular to dir

Procs

registerregister to SSshuttles
return_number_of_turfsReturn number of turfs
return_turfsreturns turfs within our projected rectangle in no particular order
unregisterunregister from SSshuttles
+

Var Details

delete_after + + + + +

+

Delete this port after ship fly off.

dheight + + + + +

+

position relative to covered area, parallel to dir

dir + + + + +

+

this should point -away- from the dockingport door, ie towards the ship

dwidth + + + + +

+

position relative to covered area, perpendicular to dir

height + + + + +

+

size of covered area, parallel to dir

hidden + + + + +

+

are we invisible to shuttle navigation computers?

id + + + + +

+

The identifier of the port or ship. +This will be used in numerous other places like the console, +stationary ports and whatnot to tell them your ship's mobile +port can be used in these places, or the docking port is compatible, etc.

port_destinations + + + + +

+

Possible destinations

registered + + + + +

+

are we registered in SSshuttles?

template_id + + + + +

+

The original template shuttle_id for this shuttle (so without a suffix identifier)

width + + + + +

+

size of covered area, perpendicular to dir

Proc Details

register +

+

register to SSshuttles

return_number_of_turfs +

+

Return number of turfs

return_turfs +

+

returns turfs within our projected rectangle in no particular order

unregister +

+

unregister from SSshuttles

+ + + diff --git a/obj/docking_port/mobile.html b/obj/docking_port/mobile.html new file mode 100644 index 000000000000..77b8dd46b0f4 --- /dev/null +++ b/obj/docking_port/mobile.html @@ -0,0 +1,101 @@ + + + + + + + /obj/docking_port/mobile - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

shuttle + + + +

+ + + + + + + + + +

Vars

ambience_flightDefault shuttle audio ambience while flying
ambience_idleDefault shuttle audio ambience while not flying

Procs

calculate_docking_port_informationCalculated and populates the information used for docking and some internal vars. +This can also be used to calculate from shuttle_areas so that you can expand/shrink shuttles!
get_sound_ambienceRequests the proper sound ambience to play in the shuttle based on its state
initiate_dockingThis is the main proc. It instantly moves our mobile port to stationary port new_dock.
postregisterActions to be taken after shuttle is loaded and has been moved to its final location
preflight_checkBoth lists are associative with a turf:bitflag structure. (new_turfs bitflag space unused currently) +The bitflag contains the data for what inhabitants of that coordinate should be moved to the new location +The bitflags can be found in __DEFINES/shuttles.dm
update_ambienceUpdate the sound ambience of ALL shuttle passengers
+

Var Details

ambience_flight + + + + +

+

Default shuttle audio ambience while flying

ambience_idle + + + + +

+

Default shuttle audio ambience while not flying

Proc Details

calculate_docking_port_information +

+

Calculated and populates the information used for docking and some internal vars. +This can also be used to calculate from shuttle_areas so that you can expand/shrink shuttles!

+

Arguments:

+
    +
  • loading_from - The template that the shuttle was loaded from, if not given we iterate shuttle_areas to calculate information instead
  • +

get_sound_ambience +

+

Requests the proper sound ambience to play in the shuttle based on its state

initiate_docking +

+

This is the main proc. It instantly moves our mobile port to stationary port new_dock.

postregister +

+

Actions to be taken after shuttle is loaded and has been moved to its final location

+

Arguments:

+
    +
  • replace - TRUE if this shuttle is replacing an existing one. FALSE by default.
  • +

preflight_check +

+

Both lists are associative with a turf:bitflag structure. (new_turfs bitflag space unused currently) +The bitflag contains the data for what inhabitants of that coordinate should be moved to the new location +The bitflags can be found in __DEFINES/shuttles.dm

+

Hiding turfs if necessary

+

Unhiding turfs if necessary

update_ambience +

+

Update the sound ambience of ALL shuttle passengers

+ + + diff --git a/obj/docking_port/mobile/crashable.html b/obj/docking_port/mobile/crashable.html new file mode 100644 index 000000000000..64ba108a9fef --- /dev/null +++ b/obj/docking_port/mobile/crashable.html @@ -0,0 +1,99 @@ + + + + + + + /obj/docking_port/mobile/crashable - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

crashable shuttle + + + +

+ + + + + + + + + + + +

Vars

crash_landWhether or not this shuttle is crash landing
fires_on_crashWhether fires occur aboard the shuttle when crashing

Procs

check_crash_pointChecks for anything that may get in the way of a crash, returns FALSE if there is something in the way or is out of bounds
crash_checkReturns whether or not the shuttle will crash after being sent
create_crash_pointSets up a valid crash point, fails after 10 tries
evac_launchCalled when the shuttle is launched and checks for crash and creates a crash point
force_crashForces the shuttle to crash, admin called
handle_firesSets up and handles fires/explosions on crashing shuttles
kablooieActually blows up the fire/explosion on crashing shuttles, used for effect delay
open_doorsHandles opening the doors for the specific shuttle type upon arriving at the crash point
+

Var Details

crash_land + + + + +

+

Whether or not this shuttle is crash landing

fires_on_crash + + + + +

+

Whether fires occur aboard the shuttle when crashing

Proc Details

check_crash_point +

+

Checks for anything that may get in the way of a crash, returns FALSE if there is something in the way or is out of bounds

crash_check +

+

Returns whether or not the shuttle will crash after being sent

create_crash_point +

+

Sets up a valid crash point, fails after 10 tries

evac_launch +

+

Called when the shuttle is launched and checks for crash and creates a crash point

force_crash +

+

Forces the shuttle to crash, admin called

handle_fires +

+

Sets up and handles fires/explosions on crashing shuttles

kablooie +

+

Actually blows up the fire/explosion on crashing shuttles, used for effect delay

open_doors +

+

Handles opening the doors for the specific shuttle type upon arriving at the crash point

+ + + diff --git a/obj/docking_port/mobile/crashable/escape_shuttle.html b/obj/docking_port/mobile/crashable/escape_shuttle.html new file mode 100644 index 000000000000..99ec9012f7b2 --- /dev/null +++ b/obj/docking_port/mobile/crashable/escape_shuttle.html @@ -0,0 +1,50 @@ + + + + + + + /obj/docking_port/mobile/crashable/escape_shuttle - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Escape Pod + + + +

+ + + + +

Vars

crash_land_chanceThe % chance of the escape pod crashing into the groundmap
early_crash_land_chanceThe % chance of the escape pod crashing into the groundmap before lifeboats leaving
max_capacityHow many people can be in the escape pod before it crashes
+

Var Details

crash_land_chance + + + + +

+

The % chance of the escape pod crashing into the groundmap

early_crash_land_chance + + + + +

+

The % chance of the escape pod crashing into the groundmap before lifeboats leaving

max_capacity + + + + +

+

How many people can be in the escape pod before it crashes

+ + + diff --git a/obj/docking_port/stationary.html b/obj/docking_port/stationary.html new file mode 100644 index 000000000000..d6c778a81833 --- /dev/null +++ b/obj/docking_port/stationary.html @@ -0,0 +1,56 @@ + + + + + + + /obj/docking_port/stationary - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

dock + + + +

+ + + + + +

Procs

on_arrivalCalled when a new shuttle arrives
on_departureCalled when a shuttle is about to complete undocking from this stationary dock (already physically gone)
on_dock_ignitionCalled when the docked shuttle ignites
on_prearrivalCalled when a new shuttle is about to arrive

Proc Details

on_arrival +

+

Called when a new shuttle arrives

on_departure +

+

Called when a shuttle is about to complete undocking from this stationary dock (already physically gone)

on_dock_ignition +

+

Called when the docked shuttle ignites

on_prearrival +

+

Called when a new shuttle is about to arrive

+ + + diff --git a/obj/effect/alien/egg/carrier_egg.html b/obj/effect/alien/egg/carrier_egg.html new file mode 100644 index 000000000000..4c7f3fcf47a1 --- /dev/null +++ b/obj/effect/alien/egg/carrier_egg.html @@ -0,0 +1,71 @@ + + + + + + + /obj/effect/alien/egg/carrier_egg - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

fragile egg + + + +

+ + + + + + + +

Vars

last_refreshedTime that the carrier was last within refresh range of the egg (14 tiles)
life_timerTimer holder for the maximum lifetime of the egg as defined CARRIER_EGG_MAXIMUM_LIFE
ownerOwner of the fragile egg, must be a mob/living/carbon/xenomorph/carrier

Procs

check_decayCheck the last refreshed time and burst the egg if we're over the lifetime of the egg
set_ownerSet the owner of the egg to the planter.
start_unstoppable_decayBurst the egg without hugger release after a 10 second timer & remove the life timer.
+

Var Details

last_refreshed + + + + +

+

Time that the carrier was last within refresh range of the egg (14 tiles)

life_timer + + + + +

+

Timer holder for the maximum lifetime of the egg as defined CARRIER_EGG_MAXIMUM_LIFE

owner + + + + +

+

Owner of the fragile egg, must be a mob/living/carbon/xenomorph/carrier

Proc Details

check_decay +

+

Check the last refreshed time and burst the egg if we're over the lifetime of the egg

set_owner +

+

Set the owner of the egg to the planter.

start_unstoppable_decay +

+

Burst the egg without hugger release after a 10 second timer & remove the life timer.

+ + + diff --git a/obj/effect/alien/resin/acid_pillar.html b/obj/effect/alien/resin/acid_pillar.html new file mode 100644 index 000000000000..efd1b1ae502b --- /dev/null +++ b/obj/effect/alien/resin/acid_pillar.html @@ -0,0 +1,35 @@ + + + + + + + /obj/effect/alien/resin/acid_pillar - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

acid pillar + + + +

+ + +

Procs

processIs it a friendly xenomorph that is on fire

Proc Details

process +

+

Is it a friendly xenomorph that is on fire

+ + + diff --git a/obj/effect/alien/resin/special.html b/obj/effect/alien/resin/special.html new file mode 100644 index 000000000000..549f1fca91d0 --- /dev/null +++ b/obj/effect/alien/resin/special.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/alien/resin/special - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Special Resin Structure + + + +

+ + +

Vars

hijack_deleteTells the structure if they are being deleted because of hijack
+

Var Details

hijack_delete + + + + +

+

Tells the structure if they are being deleted because of hijack

+ + + diff --git a/obj/effect/alien/resin/special/pylon.html b/obj/effect/alien/resin/special/pylon.html new file mode 100644 index 000000000000..49c3f5616c91 --- /dev/null +++ b/obj/effect/alien/resin/special/pylon.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/alien/resin/special/pylon - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

hive pylon + + + +

+ + + +

Vars

lesser_drone_spawn_limitThe maximum amount of lesser drone spawns this pylon can hold
lesser_drone_spawnsHow many lesser drone spawns this pylon is able to spawn currently
+

Var Details

lesser_drone_spawn_limit + + + + +

+

The maximum amount of lesser drone spawns this pylon can hold

lesser_drone_spawns + + + + +

+

How many lesser drone spawns this pylon is able to spawn currently

+ + + diff --git a/obj/effect/alien/resin/special/pylon/endgame.html b/obj/effect/alien/resin/special/pylon/endgame.html new file mode 100644 index 000000000000..dcc2ca92fed6 --- /dev/null +++ b/obj/effect/alien/resin/special/pylon/endgame.html @@ -0,0 +1,42 @@ + + + + + + + /obj/effect/alien/resin/special/pylon/endgame - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/obj/effect/alien/resin/special/pylon/endgame + + + +

+ + + +

Procs

comms_relay_connectionChecks if all comms towers are connected and then starts end game content on all pylons if they are
give_larvaLooped proc via timer to give larva after time

Proc Details

comms_relay_connection +

+

Checks if all comms towers are connected and then starts end game content on all pylons if they are

give_larva +

+

Looped proc via timer to give larva after time

+ + + diff --git a/obj/effect/attach_point.html b/obj/effect/attach_point.html new file mode 100644 index 000000000000..ce86b3978c00 --- /dev/null +++ b/obj/effect/attach_point.html @@ -0,0 +1,78 @@ + + + + + + + /obj/effect/attach_point - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

equipment attach point + + + +

+ +

The bases onto which you attach dropship equipments.

+ + + + + + +

Vars

attach_idStatic numbered identifier for singular attach points
base_categoryWhat kind of equipment this base accepts
installed_equipmentThe currently installed equipment, if any
longRelative position alongside longitudinal axis
ship_tagIdentifier used to refer to the dropship it belongs to
transverseRelative position of the attach_point alongside dropship transverse

Procs

install_equipmentCalled when a real user with a powerloader attempts to install an equipment on the attach point
+

Var Details

attach_id + + + + +

+

Static numbered identifier for singular attach points

base_category + + + + +

+

What kind of equipment this base accepts

installed_equipment + + + + +

+

The currently installed equipment, if any

long + + + + +

+

Relative position alongside longitudinal axis

ship_tag + + + + +

+

Identifier used to refer to the dropship it belongs to

transverse + + + + +

+

Relative position of the attach_point alongside dropship transverse

Proc Details

install_equipment +

+

Called when a real user with a powerloader attempts to install an equipment on the attach point

+ + + diff --git a/obj/effect/attach_point/weapon.html b/obj/effect/attach_point/weapon.html new file mode 100644 index 000000000000..2eb965ebb10f --- /dev/null +++ b/obj/effect/attach_point/weapon.html @@ -0,0 +1,35 @@ + + + + + + + /obj/effect/attach_point/weapon - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

weapon system attach point + + + +

+ +

Weapon specific attachment point

+

Procs

get_offsetsGet base allowed offsets for the attach point

Proc Details

get_offsets +

+

Get base allowed offsets for the attach point

+ + + diff --git a/obj/effect/decal/cleanable.html b/obj/effect/decal/cleanable.html new file mode 100644 index 000000000000..08375fc963a7 --- /dev/null +++ b/obj/effect/decal/cleanable.html @@ -0,0 +1,61 @@ + + + + + + + /obj/effect/decal/cleanable - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/effect/decal/cleanable + + + +

+ + + + + +

Vars

cleanable_turfThe turf that the cleanable is on, +whether overlayed or physically on top of
cleaned_upWhether this cleanable has had its overlays and +refs on turfs cleaned up
overlayed_imageA reference to the image overlayed on a turf
targeted_byUsed so cleanbots can't claim a mess.
+

Var Details

cleanable_turf + + + + +

+

The turf that the cleanable is on, +whether overlayed or physically on top of

cleaned_up + + + + +

+

Whether this cleanable has had its overlays and +refs on turfs cleaned up

overlayed_image + + + + +

+

A reference to the image overlayed on a turf

targeted_by + + + + +

+

Used so cleanbots can't claim a mess.

+ + + diff --git a/obj/effect/decal/cleanable/blood/tracks.html b/obj/effect/decal/cleanable/blood/tracks.html new file mode 100644 index 000000000000..ad0860b5620a --- /dev/null +++ b/obj/effect/decal/cleanable/blood/tracks.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/decal/cleanable/blood/tracks - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/effect/decal/cleanable/blood/tracks + + + +

+ + +

Vars

transverse_amplitudeAmount of pixels to shift either way in an attempt to make the tracks more organic
+

Var Details

transverse_amplitude + + + + +

+

Amount of pixels to shift either way in an attempt to make the tracks more organic

+ + + diff --git a/obj/effect/explosion.html b/obj/effect/explosion.html new file mode 100644 index 000000000000..00464c137df9 --- /dev/null +++ b/obj/effect/explosion.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/explosion - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/effect/explosion + + + +

+ + + +

Vars

reflected_powerused to amplify explosions in confined areas
reflection_amplification_limit1 = 100% increase
+

Var Details

reflected_power + + + + +

+

used to amplify explosions in confined areas

reflection_amplification_limit + + + + +

+

1 = 100% increase

+ + + diff --git a/obj/effect/landmark/late_join.html b/obj/effect/landmark/late_join.html new file mode 100644 index 000000000000..8030964fe860 --- /dev/null +++ b/obj/effect/landmark/late_join.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/landmark/late_join - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

late join + + + +

+ + +

Vars

jobWhat job should latejoin on this landmark
+

Var Details

job + + + + +

+

What job should latejoin on this landmark

+ + + diff --git a/obj/effect/landmark/structure_spawner.html b/obj/effect/landmark/structure_spawner.html new file mode 100644 index 000000000000..b6498c795780 --- /dev/null +++ b/obj/effect/landmark/structure_spawner.html @@ -0,0 +1,78 @@ + + + + + + + /obj/effect/landmark/structure_spawner - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

structure spawner + + + +

+ +

Structure spawner, representing something that can be spawned by gameplay logic during round or at setup

+ + + + + + +

Vars

is_turfTruthy if a turf to use turf placement operations
mode_flagsOne of required gamemode flags for this to apply
path_to_spawnTypepath to effectively instanciate

Procs

applyActually spawn this if applicable
get_spawn_locationReturn effective location to spawn at
post_setupPost-Setup hook, mainly to delete unused landmarks. By default delete all non-applicable ones
validateCheck validity of spawning this
+

Var Details

is_turf + + + + +

+

Truthy if a turf to use turf placement operations

mode_flags + + + + +

+

One of required gamemode flags for this to apply

path_to_spawn + + + + +

+

Typepath to effectively instanciate

Proc Details

apply +

+

Actually spawn this if applicable

get_spawn_location +

+

Return effective location to spawn at

post_setup +

+

Post-Setup hook, mainly to delete unused landmarks. By default delete all non-applicable ones

validate +

+

Check validity of spawning this

+ + + diff --git a/obj/effect/landmark/survivor_spawner.html b/obj/effect/landmark/survivor_spawner.html new file mode 100644 index 000000000000..a29072d8dc27 --- /dev/null +++ b/obj/effect/landmark/survivor_spawner.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/landmark/survivor_spawner - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

special survivor spawner + + + +

+ + +

Vars

hostileWhether or not the spawner is for an inherently hostile survivor subtype.
+

Var Details

hostile + + + + +

+

Whether or not the spawner is for an inherently hostile survivor subtype.

+ + + diff --git a/obj/effect/landmark/tutorial/reqs_line_cleaner.html b/obj/effect/landmark/tutorial/reqs_line_cleaner.html new file mode 100644 index 000000000000..2211612a19ec --- /dev/null +++ b/obj/effect/landmark/tutorial/reqs_line_cleaner.html @@ -0,0 +1,35 @@ + + + + + + + /obj/effect/landmark/tutorial/reqs_line_cleaner - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/obj/effect/landmark/tutorial/reqs_line_cleaner + + + +

+ + +

Procs

CrossedDeletes dummies coming onto it, purely and simply

Proc Details

Crossed +

+

Deletes dummies coming onto it, purely and simply

+ + + diff --git a/obj/effect/landmark/yautja_teleport.html b/obj/effect/landmark/yautja_teleport.html new file mode 100644 index 000000000000..6af2d0eb3d5b --- /dev/null +++ b/obj/effect/landmark/yautja_teleport.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/landmark/yautja_teleport - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

yautja_teleport + + + +

+ + +

Vars

desc_indexThe index we registered as in mainship_yautja_desc or yautja_teleport_descs
+

Var Details

desc_index + + + + +

+

The index we registered as in mainship_yautja_desc or yautja_teleport_descs

+ + + diff --git a/obj/effect/lighting_mask_holder.html b/obj/effect/lighting_mask_holder.html new file mode 100644 index 000000000000..15b9b2d0abff --- /dev/null +++ b/obj/effect/lighting_mask_holder.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/lighting_mask_holder - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/effect/lighting_mask_holder + + + +

+ +

Holder for lighting mask, this is done for ensuing correct render as a viscontents

+

Vars

held_maskThe movable mask this holder is holding in its vis contents
+

Var Details

held_mask + + + + +

+

The movable mask this holder is holding in its vis contents

+ + + diff --git a/obj/effect/particle_effect/smoke/miasma.html b/obj/effect/particle_effect/smoke/miasma.html new file mode 100644 index 000000000000..ac20ac1b6066 --- /dev/null +++ b/obj/effect/particle_effect/smoke/miasma.html @@ -0,0 +1,50 @@ + + + + + + + /obj/effect/particle_effect/smoke/miasma - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

CN20-X miasma + + + +

+ + + + +

Vars

active_timeTime required for damage to actually apply
burn_damageHow much damage to deal per affect()
xeno_yautja_multiplierMultiplier to burn_damage for xenos and yautja
+

Var Details

active_time + + + + +

+

Time required for damage to actually apply

burn_damage + + + + +

+

How much damage to deal per affect()

xeno_yautja_multiplier + + + + +

+

Multiplier to burn_damage for xenos and yautja

+ + + diff --git a/obj/effect/particle_effect/smoke/xeno_weak.html b/obj/effect/particle_effect/smoke/xeno_weak.html new file mode 100644 index 000000000000..10e36549a34b --- /dev/null +++ b/obj/effect/particle_effect/smoke/xeno_weak.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/particle_effect/smoke/xeno_weak - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/effect/particle_effect/smoke/xeno_weak + + + +

+ + +

Vars

neuro_doseHow much neuro is dosed per tick
+

Var Details

neuro_dose + + + + +

+

How much neuro is dosed per tick

+ + + diff --git a/obj/effect/spawner/prop_gun.html b/obj/effect/spawner/prop_gun.html new file mode 100644 index 000000000000..77ccc19e9101 --- /dev/null +++ b/obj/effect/spawner/prop_gun.html @@ -0,0 +1,64 @@ + + + + + + + /obj/effect/spawner/prop_gun - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

prop gun spawner + + + +

+ + + + + + +

Vars

custom_gun_descif the prob will have a custom desc
custom_gun_nameif the prop will have a custom name
prop_gun_typeThe typepath of the gun the prop will copy
spawn_probThe probability of the prop gun spawning

Procs

prepare_gun_skinSpawns the items and modifies source to set skin on prop
+

Var Details

custom_gun_desc + + + + +

+

if the prob will have a custom desc

custom_gun_name + + + + +

+

if the prop will have a custom name

prop_gun_type + + + + +

+

The typepath of the gun the prop will copy

spawn_prob + + + + +

+

The probability of the prop gun spawning

Proc Details

prepare_gun_skin +

+

Spawns the items and modifies source to set skin on prop

+ + + diff --git a/obj/effect/step_trigger/ares_alert.html b/obj/effect/step_trigger/ares_alert.html new file mode 100644 index 000000000000..0ee05b3beadf --- /dev/null +++ b/obj/effect/step_trigger/ares_alert.html @@ -0,0 +1,78 @@ + + + + + + + /obj/effect/step_trigger/ares_alert - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

ARES Apollo Sensor + + + +

+ + + + + + + + +

Vars

alert_idConnect alerts to use same cooldowns
alert_messageAlert message to report unless area based.
area_basedSet to true if it should report area name and not specific alert.
cooldown_durationCooldown duration and next time.
linkLink alerts to ARES Link
pass_accessesThe accesses on an ID card to enter
pass_jobsThe job on a mob to enter
+

Var Details

alert_id + + + + +

+

Connect alerts to use same cooldowns

alert_message + + + + +

+

Alert message to report unless area based.

area_based + + + + +

+

Set to true if it should report area name and not specific alert.

cooldown_duration + + + + +

+

Cooldown duration and next time.

+

Link alerts to ARES Link

pass_accesses + + + + +

+

The accesses on an ID card to enter

pass_jobs + + + + +

+

The job on a mob to enter

+ + + diff --git a/obj/effect/step_trigger/ares_alert/access_control.html b/obj/effect/step_trigger/ares_alert/access_control.html new file mode 100644 index 000000000000..47d83b4716d8 --- /dev/null +++ b/obj/effect/step_trigger/ares_alert/access_control.html @@ -0,0 +1,37 @@ + + + + + + + /obj/effect/step_trigger/ares_alert/access_control - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

ARES Access Control Sensor + + + +

+ +

Trigger will remove ACCESS_MARINE_AI_TEMP unless ACCESS_MARINE_AI is also present.

+

Procs

get_broadcastRemoves the access from the ID and updates the ID's modification log. +Updates the related access ticket.

Proc Details

get_broadcast +

+

Removes the access from the ID and updates the ID's modification log. +Updates the related access ticket.

+ + + diff --git a/obj/effect/temp_visual.html b/obj/effect/temp_visual.html new file mode 100644 index 000000000000..eb0178843cb1 --- /dev/null +++ b/obj/effect/temp_visual.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/temp_visual - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/effect/temp_visual + + + +

+ + + +

Vars

randomdirif true, will pick a random direction when created.
timeridid of the deletion timer
+

Var Details

randomdir + + + + +

+

if true, will pick a random direction when created.

timerid + + + + +

+

id of the deletion timer

+ + + diff --git a/obj/effect/xenomorph/acid.html b/obj/effect/xenomorph/acid.html new file mode 100644 index 000000000000..bcae4c9687d2 --- /dev/null +++ b/obj/effect/xenomorph/acid.html @@ -0,0 +1,64 @@ + + + + + + + /obj/effect/xenomorph/acid - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

acid + + + +

+ + + + + + +

Vars

acid_delayFactor of duration between acid progression
acid_tTarget the acid is melting
flare_damageHow much fuel the acid drains from the flare every acid tick
remainingDuration left to next acid stage
ticks_leftAcid stages left to complete melting
+

Var Details

acid_delay + + + + +

+

Factor of duration between acid progression

acid_t + + + + +

+

Target the acid is melting

flare_damage + + + + +

+

How much fuel the acid drains from the flare every acid tick

remaining + + + + +

+

Duration left to next acid stage

ticks_left + + + + +

+

Acid stages left to complete melting

+ + + diff --git a/obj/effect/xenomorph/xeno_telegraph.html b/obj/effect/xenomorph/xeno_telegraph.html new file mode 100644 index 000000000000..7ef09ff3c047 --- /dev/null +++ b/obj/effect/xenomorph/xeno_telegraph.html @@ -0,0 +1,35 @@ + + + + + + + /obj/effect/xenomorph/xeno_telegraph - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

??? + + + +

+ + +

Procs

NewIcon is by default a white sprite, provide an rgb hex code #RRGGBB argument to change.

Proc Details

New +

+

Icon is by default a white sprite, provide an rgb hex code #RRGGBB argument to change.

+ + + diff --git a/obj/flamer_fire.html b/obj/flamer_fire.html new file mode 100644 index 000000000000..0ec716cf281d --- /dev/null +++ b/obj/flamer_fire.html @@ -0,0 +1,36 @@ + + + + + + + /obj/flamer_fire - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

fire + + + +

+ + +

Vars

initial_burstAfter the fire is created, for 0.5 seconds this variable will be TRUE.
+

Var Details

initial_burst + + + + +

+

After the fire is created, for 0.5 seconds this variable will be TRUE.

+ + + diff --git a/obj/item.html b/obj/item.html new file mode 100644 index 000000000000..12344ebbbd41 --- /dev/null +++ b/obj/item.html @@ -0,0 +1,458 @@ + + + + + + + /obj/item - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

item + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

actionslist of /datum/action's that this item has.
actions_typeslist of paths of action datums to give to the item on New().
allowedsuit storage stuff.
appearance_flagstaken from blood.dm
attack_verbUsed in attackby() to say how something was attacked "[x] has been [z.attack_verb] by [y] with [z]"
blood_colorcolor of the blood on us if there's any.
blood_overlaythis saves our blood splatter overlay, which will be processed not to go over the edges of the sprite
contained_spriteWhen set to true, every single sprite can be found in the one icon .dmi, rather than being spread into onmobs, inhands, and objects
demolition_modA multiplier to an object's force when used against a stucture.
drop_soundSound to be played when item is dropped
drop_varyWhether the drop sound will vary in pitch/frequency
dropvolVolume of drop sound
edgewhether this item is more likely to dismember
equip_soundsSounds played when this item is equipped
fire_intensity_resistanceUsed for stepping onto flame and seeing how much dmg you take and if you're ignited.
flags_armor_protectionsee setup.dm for appropriate bit flags
flags_cold_protectionflags which determine which body parts are protected from cold. Use the HEAD, UPPER_TORSO, LOWER_TORSO, etc. flags. See setup.dm
flags_equip_slotThis is used to determine on which slots an item can fit.
flags_heat_protectionflags which determine which body parts are protected from heat. Use the HEAD, UPPER_TORSO, LOWER_TORSO, etc. flags. See setup.dm
flags_inv_hideThis flag is used to determine when items in someone's inventory cover others. IE helmets making it so you can't see glasses, etc.
flags_inventoryThis flag is used for various clothing/equipment item stuff
flags_itemflags for item stuff that isn't clothing/equipping specific.
gas_transfer_coefficientfor leaking gas from turf to mask and vice-versa (for masks right now, but at some point, i'd like to include space helmets)
ground_offset_xHow much to offset the item randomly either way alongside X visually
ground_offset_yHow much to offset the item randomly either way alongside Y visually
has_special_table_placementchecks if the item will be specially placed on the table
heat_sourcewhether this item is a source of heat, and how hot it is (in Kelvin).
hitsoundPlay this when you thwack someone with the item
hud_offsetAdjusts the item's position in the HUD, currently only by guns with stock/barrel attachments.
icon_overrideUsed to override hardcoded ON-MOB clothing dmis in human clothing proc (i.e. not the icon_state sprites).
inhand_x_dimensionAllows for bigger than 32x32 sprites, these govern inhand sprites. (Like a longer sword that's normal-sized on your back)
is_objectivelets us know if the item is an objective or not
item_state_slotsoverrides the default
locked_to_mobIf the item uses flag MOB_LOCK_ON_PICKUP, this is the mob owner reference.
max_heat_protection_temperatureSet this variable to determine up to which temperature (IN KELVIN) the item protects against heat damage. Keep at null to disable protection. Only protects areas set by flags_heat_protection flags
min_cold_protection_temperatureSet this variable to determine down to which temperature (IN KELVIN) the item protects against cold damage. 0 is NOT an acceptable number due to if(varname) tests!! Keep at null to disable protection. Only protects areas set by flags_cold_protection flags
permeability_coefficientfor chemicals/diseases
pickup_soundSound to be played when item is picked up
pickup_varyWhether the pickup sound will vary in pitch/frequency
pickupvolVolume of pickup sound
preferred_storageSpecial storages this item prioritizes
pry_capablewhether this item can be used to pry things open.
sharpwhether this item cuts
siemens_coefficientfor electrical admittance/conductance (electrocution checks and shit)
slowdownHow much clothing is slowing you down. Negative values speeds you up
table_setupchecks if the item is set up in the table or not
time_to_equipset to ticks it takes to equip a worn suit.
time_to_unequipset to ticks it takes to unequip a worn suit.
unequip_soundsSounds played when this item is unequipped
uniform_restrictedNeed to wear this uniform to equip this
vision_impairVision impairing effect if worn on head/mask/glasses.
worn_x_dimensionAllows for bigger than 32x32 sprites.
zoom1 if item is actively being used to zoom. For scoped guns and binoculars.
zoom_initial_mob_dirthe initial dir the mob faces when it zooms in
zoomdevicenamename used for message when binoculars/scope is used

Procs

MouseDropGrab item when its placed on table
dig_out_shrapnel_checkFor digging shrapnel out of OTHER people, not yourself. Triggered by human/attackby() so target is definitely human. User might not be.
hands_swappedCalled by /mob/living/carbon/swap_hand() when hands are swapped
is_valid_slotChecks if an item can be put in a slot (string) based on their slot flags (bit flags)
set_to_tableSet the item up on a table. +@param target: table which is being used to host the item.
teardownCalled to reset the state of the item to not be settled on the table.
+

Var Details

actions + + + + +

+

list of /datum/action's that this item has.

actions_types + + + + +

+

list of paths of action datums to give to the item on New().

allowed + + + + +

+

suit storage stuff.

appearance_flags + + + + +

+

taken from blood.dm

attack_verb + + + + +

+

Used in attackby() to say how something was attacked "[x] has been [z.attack_verb] by [y] with [z]"

blood_color + + + + +

+

color of the blood on us if there's any.

blood_overlay + + + + +

+

this saves our blood splatter overlay, which will be processed not to go over the edges of the sprite

contained_sprite + + + + +

+

When set to true, every single sprite can be found in the one icon .dmi, rather than being spread into onmobs, inhands, and objects

demolition_mod + + + + +

+

A multiplier to an object's force when used against a stucture.

drop_sound + + + + +

+

Sound to be played when item is dropped

drop_vary + + + + +

+

Whether the drop sound will vary in pitch/frequency

dropvol + + + + +

+

Volume of drop sound

edge + + + + +

+

whether this item is more likely to dismember

equip_sounds + + + + +

+

Sounds played when this item is equipped

fire_intensity_resistance + + + + +

+

Used for stepping onto flame and seeing how much dmg you take and if you're ignited.

flags_armor_protection + + + + +

+

see setup.dm for appropriate bit flags

flags_cold_protection + + + + +

+

flags which determine which body parts are protected from cold. Use the HEAD, UPPER_TORSO, LOWER_TORSO, etc. flags. See setup.dm

flags_equip_slot + + + + +

+

This is used to determine on which slots an item can fit.

flags_heat_protection + + + + +

+

flags which determine which body parts are protected from heat. Use the HEAD, UPPER_TORSO, LOWER_TORSO, etc. flags. See setup.dm

flags_inv_hide + + + + +

+

This flag is used to determine when items in someone's inventory cover others. IE helmets making it so you can't see glasses, etc.

flags_inventory + + + + +

+

This flag is used for various clothing/equipment item stuff

flags_item + + + + +

+

flags for item stuff that isn't clothing/equipping specific.

gas_transfer_coefficient + + + + +

+

for leaking gas from turf to mask and vice-versa (for masks right now, but at some point, i'd like to include space helmets)

ground_offset_x + + + + +

+

How much to offset the item randomly either way alongside X visually

ground_offset_y + + + + +

+

How much to offset the item randomly either way alongside Y visually

has_special_table_placement + + + + +

+

checks if the item will be specially placed on the table

heat_source + + + + +

+

whether this item is a source of heat, and how hot it is (in Kelvin).

hitsound + + + + +

+

Play this when you thwack someone with the item

hud_offset + + + + +

+

Adjusts the item's position in the HUD, currently only by guns with stock/barrel attachments.

icon_override + + + + +

+

Used to override hardcoded ON-MOB clothing dmis in human clothing proc (i.e. not the icon_state sprites).

inhand_x_dimension + + + + +

+

Allows for bigger than 32x32 sprites, these govern inhand sprites. (Like a longer sword that's normal-sized on your back)

is_objective + + + + +

+

lets us know if the item is an objective or not

item_state_slots + + + + +

+

overrides the default

locked_to_mob + + + + +

+

If the item uses flag MOB_LOCK_ON_PICKUP, this is the mob owner reference.

max_heat_protection_temperature + + + + +

+

Set this variable to determine up to which temperature (IN KELVIN) the item protects against heat damage. Keep at null to disable protection. Only protects areas set by flags_heat_protection flags

min_cold_protection_temperature + + + + +

+

Set this variable to determine down to which temperature (IN KELVIN) the item protects against cold damage. 0 is NOT an acceptable number due to if(varname) tests!! Keep at null to disable protection. Only protects areas set by flags_cold_protection flags

permeability_coefficient + + + + +

+

for chemicals/diseases

pickup_sound + + + + +

+

Sound to be played when item is picked up

pickup_vary + + + + +

+

Whether the pickup sound will vary in pitch/frequency

pickupvol + + + + +

+

Volume of pickup sound

preferred_storage + + + + +

+

Special storages this item prioritizes

pry_capable + + + + +

+

whether this item can be used to pry things open.

sharp + + + + +

+

whether this item cuts

siemens_coefficient + + + + +

+

for electrical admittance/conductance (electrocution checks and shit)

slowdown + + + + +

+

How much clothing is slowing you down. Negative values speeds you up

table_setup + + + + +

+

checks if the item is set up in the table or not

time_to_equip + + + + +

+

set to ticks it takes to equip a worn suit.

time_to_unequip + + + + +

+

set to ticks it takes to unequip a worn suit.

unequip_sounds + + + + +

+

Sounds played when this item is unequipped

uniform_restricted + + + + +

+

Need to wear this uniform to equip this

vision_impair + + + + +

+

Vision impairing effect if worn on head/mask/glasses.

worn_x_dimension + + + + +

+

Allows for bigger than 32x32 sprites.

zoom + + + + +

+

1 if item is actively being used to zoom. For scoped guns and binoculars.

zoom_initial_mob_dir + + + + +

+

the initial dir the mob faces when it zooms in

zoomdevicename + + + + +

+

name used for message when binoculars/scope is used

Proc Details

MouseDrop +

+

Grab item when its placed on table

dig_out_shrapnel_check +

+

For digging shrapnel out of OTHER people, not yourself. Triggered by human/attackby() so target is definitely human. User might not be.

hands_swapped +

+

Called by /mob/living/carbon/swap_hand() when hands are swapped

is_valid_slot +

+

Checks if an item can be put in a slot (string) based on their slot flags (bit flags)

set_to_table +

+

Set the item up on a table. +@param target: table which is being used to host the item.

teardown +

+

Called to reset the state of the item to not be settled on the table.

+ + + diff --git a/obj/item/alien_embryo.html b/obj/item/alien_embryo.html new file mode 100644 index 000000000000..57175d9ad8fa --- /dev/null +++ b/obj/item/alien_embryo.html @@ -0,0 +1,52 @@ + + + + + + + /obj/item/alien_embryo - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

alien embryo + + + +

+ + + + +

Vars

hugger_ckeyThe ckey of any player hugger that made this embryo
per_stage_hugged_timeThe total time the person is hugged divided by stages until burst

Procs

become_larvaWe look for a candidate. If found, we spawn the candidate as a larva +Order of priority is bursted individual (if xeno is enabled), then player hugger, then random candidate, and then it's up for grabs and spawns braindead
+

Var Details

hugger_ckey + + + + +

+

The ckey of any player hugger that made this embryo

per_stage_hugged_time + + + + +

+

The total time the person is hugged divided by stages until burst

Proc Details

become_larva +

+

We look for a candidate. If found, we spawn the candidate as a larva +Order of priority is bursted individual (if xeno is enabled), then player hugger, then random candidate, and then it's up for grabs and spawns braindead

+ + + diff --git a/obj/item/ammo_magazine.html b/obj/item/ammo_magazine.html new file mode 100644 index 000000000000..13033d762233 --- /dev/null +++ b/obj/item/ammo_magazine.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/ammo_magazine - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

generic ammo + + + +

+ + + + + +

Vars

ammo_band_colorIf this and ammo_band_icon aren't null, run update_ammo_band(). Is the color of the band, such as green on AP.
ammo_band_iconIf this and ammo_band_color aren't null, run update_ammo_band() Is the greyscale icon used for the ammo band.
ammo_band_icon_emptyIs the greyscale icon used for the ammo band when it's empty of bullets.

Procs

inherent_reloadProc to reload the current_ammo using the items existing inherent ammo, used for Sentry Post
+

Var Details

ammo_band_color + + + + +

+

If this and ammo_band_icon aren't null, run update_ammo_band(). Is the color of the band, such as green on AP.

ammo_band_icon + + + + +

+

If this and ammo_band_color aren't null, run update_ammo_band() Is the greyscale icon used for the ammo band.

ammo_band_icon_empty + + + + +

+

Is the greyscale icon used for the ammo band when it's empty of bullets.

Proc Details

inherent_reload +

+

Proc to reload the current_ammo using the items existing inherent ammo, used for Sentry Post

+ + + diff --git a/obj/item/attachable.html b/obj/item/attachable.html new file mode 100644 index 000000000000..ea8095a034f4 --- /dev/null +++ b/obj/item/attachable.html @@ -0,0 +1,52 @@ + + + + + + + /obj/item/attachable - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

attachable item + + + +

+ + + + +

Vars

gun_traitsList of traits to be given to the gun itself.
traits_to_giveAn assoc list in the format list(/datum/element/bullet_trait_to_give = list(...args)) +that will be given to a projectile with the current ammo datum

Procs

unload_attachmentReturns TRUE if its functionality is successfully used, FALSE if gun's own unloading should proceed instead.
+

Var Details

gun_traits + + + + +

+

List of traits to be given to the gun itself.

traits_to_give + + + + +

+

An assoc list in the format list(/datum/element/bullet_trait_to_give = list(...args)) +that will be given to a projectile with the current ammo datum

Proc Details

unload_attachment +

+

Returns TRUE if its functionality is successfully used, FALSE if gun's own unloading should proceed instead.

+ + + diff --git a/obj/item/attachable/attached_gun.html b/obj/item/attachable/attached_gun.html new file mode 100644 index 000000000000..78be0dbaeb7c --- /dev/null +++ b/obj/item/attachable/attached_gun.html @@ -0,0 +1,66 @@ + + + + + + + /obj/item/attachable/attached_gun - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/obj/item/attachable/attached_gun + + + +

+ + + + + + +

Vars

ammoAmmo to fire the attachment with
targetCurrent target we're firing at
traits_to_give_attachedAn assoc list in the format list(/datum/element/bullet_trait_to_give = list(...args)) +that will be given to the projectiles of the attached gun

Procs

clean_targetSet the target to its turf, so we keep shooting even when it was qdeled
set_targetsetter for target
+

Var Details

ammo + + + + +

+

Ammo to fire the attachment with

target + + + + +

+

Current target we're firing at

traits_to_give_attached + + + + +

+

An assoc list in the format list(/datum/element/bullet_trait_to_give = list(...args)) +that will be given to the projectiles of the attached gun

Proc Details

clean_target +

+

Set the target to its turf, so we keep shooting even when it was qdeled

set_target +

+

setter for target

+ + + diff --git a/obj/item/attachable/bipod.html b/obj/item/attachable/bipod.html new file mode 100644 index 000000000000..cedbf896b989 --- /dev/null +++ b/obj/item/attachable/bipod.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/attachable/bipod - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

bipod + + + +

+ + +

Vars

heavy_bipodIf this should anchor the user while in use
+

Var Details

heavy_bipod + + + + +

+

If this should anchor the user while in use

+ + + diff --git a/obj/item/attachable/scope.html b/obj/item/attachable/scope.html new file mode 100644 index 000000000000..95949f23e4cf --- /dev/null +++ b/obj/item/attachable/scope.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/attachable/scope - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

S8 4x telescopic scope + + + +

+ + +

Procs

handle_attachment_recalcDue to the bipod's interesting way of handling stat modifications, this is necessary to prevent exploits.

Proc Details

handle_attachment_recalc +

+

Due to the bipod's interesting way of handling stat modifications, this is necessary to prevent exploits.

+ + + diff --git a/obj/item/attachable/vulture_scope.html b/obj/item/attachable/vulture_scope.html new file mode 100644 index 000000000000..fdb0a10a81e3 --- /dev/null +++ b/obj/item/attachable/vulture_scope.html @@ -0,0 +1,330 @@ + + + + + + + /obj/item/attachable/vulture_scope - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

M707 \"Vulture\" scope + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

adjust_delayHow much time it takes to adjust the position of the scope. Adjusting the offset will take half of this time
breath_cooldown_timeHow long the cooldown for holding your breath is, only starts after breath_time finishes
breath_timeHow long you can hold your breath for
darkness_viewHow much to increase darkness view by
hold_breath_cdCooldown for after holding your breath
holding_breathIf the user is currently holding their breath
max_scope_rangeThe maximum distance the scope can be from the player
min_scope_rangeThe bare minimum distance the scope can be from the player
perpendicular_scope_rangeHow far in the perpendicular axis the scope can move in either direction
scope_driftIf the gun should experience scope drift
scope_drift_maxHow far in any given direction the scope can drift
scope_elementRef to the scope screen element
scope_interact_cdCooldown for interacting with the scope's adjustment or position
scope_offset_xThe current X position of the scope within the sniper's view box. 0 is center
scope_offset_yThe current Y position of the scope within the sniper's view box. 0 is center
scope_userWeakref to the user of the scope
scope_user_initial_dirThe initial dir of the scope user when scoping in
scope_viewsizeHow far in each direction the scope should see. Default human view size is 7
scope_xThe current X coord position of the scope camera
scope_yThe current Y coord position of the scope camera
scopingIf the scope is currently in use
slow_useIf the scope should use do_afters for adjusting and moving the sight
spotted_drift_chance% chance for the scope to drift on process with a spotter using their scope
spotter_spottingIf there is currently a spotter using the linked spotting scope
start_scope_rangeHow far out the player should see by default
unspotted_drift_chance% chance for the scope to drift on process without a spotter using their scope

Procs

adjust_offsetAdjusts the position of the reticle by a tile in a given direction
adjust_positionAdjusts the position of the scope by a tile in a given direction
axis_mathFigures out which direction the scope should move based on user direction and their input
get_adjust_dirsGets a list of valid directions to be able to adjust the reticle in
get_breath_rechargeReturns a % of how much time until the user can still their breath again
get_scope_drift_chanceReturns a number between 0 and 100 for the chance of the scope drifting on process()
get_time_to_fireReturns how many deciseconds until the gun is able to fire again
get_viewed_turfReturns the turf that the sniper scope + reticle is currently focused on
hold_breathLets the user start holding their breath, stopping gun sway for a short time
on_mob_move_lookHandler for if the mob moves or changes look direction
on_scopeHandler for when the user begins scoping
on_unscopeHandler for when the scope is deleted, dropped, etc.
recalculate_scope_offsetRecalculates where the reticle should be inside the scope
recalculate_scope_posRecalculates where the scope should be in relation to the user
scope_driftCauses the scope to drift in a random direction by 1 tile
stop_holding_breathStops the user from holding their breath, starting the cooldown
tick_down_breath_scopeSlowly empties out the crosshair as the user's breath runs out
+

Var Details

adjust_delay + + + + +

+

How much time it takes to adjust the position of the scope. Adjusting the offset will take half of this time

breath_cooldown_time + + + + +

+

How long the cooldown for holding your breath is, only starts after breath_time finishes

breath_time + + + + +

+

How long you can hold your breath for

darkness_view + + + + +

+

How much to increase darkness view by

hold_breath_cd + + + + +

+

Cooldown for after holding your breath

holding_breath + + + + +

+

If the user is currently holding their breath

max_scope_range + + + + +

+

The maximum distance the scope can be from the player

min_scope_range + + + + +

+

The bare minimum distance the scope can be from the player

perpendicular_scope_range + + + + +

+

How far in the perpendicular axis the scope can move in either direction

scope_drift + + + + +

+

If the gun should experience scope drift

scope_drift_max + + + + +

+

How far in any given direction the scope can drift

scope_element + + + + +

+

Ref to the scope screen element

scope_interact_cd + + + + +

+

Cooldown for interacting with the scope's adjustment or position

scope_offset_x + + + + +

+

The current X position of the scope within the sniper's view box. 0 is center

scope_offset_y + + + + +

+

The current Y position of the scope within the sniper's view box. 0 is center

scope_user + + + + +

+

Weakref to the user of the scope

scope_user_initial_dir + + + + +

+

The initial dir of the scope user when scoping in

scope_viewsize + + + + +

+

How far in each direction the scope should see. Default human view size is 7

scope_x + + + + +

+

The current X coord position of the scope camera

scope_y + + + + +

+

The current Y coord position of the scope camera

scoping + + + + +

+

If the scope is currently in use

slow_use + + + + +

+

If the scope should use do_afters for adjusting and moving the sight

spotted_drift_chance + + + + +

+

% chance for the scope to drift on process with a spotter using their scope

spotter_spotting + + + + +

+

If there is currently a spotter using the linked spotting scope

start_scope_range + + + + +

+

How far out the player should see by default

unspotted_drift_chance + + + + +

+

% chance for the scope to drift on process without a spotter using their scope

Proc Details

adjust_offset +

+

Adjusts the position of the reticle by a tile in a given direction

adjust_position +

+

Adjusts the position of the scope by a tile in a given direction

axis_math +

+

Figures out which direction the scope should move based on user direction and their input

get_adjust_dirs +

+

Gets a list of valid directions to be able to adjust the reticle in

get_breath_recharge +

+

Returns a % of how much time until the user can still their breath again

get_scope_drift_chance +

+

Returns a number between 0 and 100 for the chance of the scope drifting on process()

get_time_to_fire +

+

Returns how many deciseconds until the gun is able to fire again

get_viewed_turf +

+

Returns the turf that the sniper scope + reticle is currently focused on

hold_breath +

+

Lets the user start holding their breath, stopping gun sway for a short time

on_mob_move_look +

+

Handler for if the mob moves or changes look direction

on_scope +

+

Handler for when the user begins scoping

on_unscope +

+

Handler for when the scope is deleted, dropped, etc.

recalculate_scope_offset +

+

Recalculates where the reticle should be inside the scope

recalculate_scope_pos +

+

Recalculates where the scope should be in relation to the user

scope_drift +

+

Causes the scope to drift in a random direction by 1 tile

stop_holding_breath +

+

Stops the user from holding their breath, starting the cooldown

tick_down_breath_scope +

+

Slowly empties out the crosshair as the user's breath runs out

+ + + diff --git a/obj/item/book.html b/obj/item/book.html new file mode 100644 index 000000000000..65807feeb86d --- /dev/null +++ b/obj/item/book.html @@ -0,0 +1,87 @@ + + + + + + + /obj/item/book - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

book + + + +

+ +

Check if it has the possibility of being a FANCY present +Checks if it might be one of the ULTRA fancy presents. +Default, just in case

+ + + + + + + +

Vars

authorWho wrote the thing, can be changed by pen or PC. It is not automatically assigned
carvedHas the book been hollowed out for use as a secret storage item?
datActual page content
due_dateGame time in 1/10th seconds
storeWhat's in the book?
titleThe real name of the book.
unique0 - Normal book, 1 - Should not be treated as normal book, unable to be copied, unable to be modified
w_classupped to three because books are, y'know, pretty big. (and you could hide them inside eachother recursively forever)
+

Var Details

author + + + + +

+

Who wrote the thing, can be changed by pen or PC. It is not automatically assigned

carved + + + + +

+

Has the book been hollowed out for use as a secret storage item?

dat + + + + +

+

Actual page content

due_date + + + + +

+

Game time in 1/10th seconds

store + + + + +

+

What's in the book?

title + + + + +

+

The real name of the book.

unique + + + + +

+

0 - Normal book, 1 - Should not be treated as normal book, unable to be copied, unable to be modified

w_class + + + + +

+

upped to three because books are, y'know, pretty big. (and you could hide them inside eachother recursively forever)

+ + + diff --git a/obj/item/book/manual.html b/obj/item/book/manual.html new file mode 100644 index 000000000000..65c13191bda6 --- /dev/null +++ b/obj/item/book/manual.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/book/manual - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/item/book/manual + + + +

+ + + +

Vars

due_dateGame time in 1/10th seconds
unique0 - Normal book, 1 - Should not be treated as normal book, unable to be copied, unable to be modified
+

Var Details

due_date + + + + +

+

Game time in 1/10th seconds

unique + + + + +

+

0 - Normal book, 1 - Should not be treated as normal book, unable to be copied, unable to be modified

+ + + diff --git a/obj/item/card/id.html b/obj/item/card/id.html new file mode 100644 index 000000000000..16bb0c6e88b0 --- /dev/null +++ b/obj/item/card/id.html @@ -0,0 +1,78 @@ + + + + + + + /obj/item/card/id - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

identification holo-badge + + + +

+ + + + + + + + +

Vars

assignmentcan be alt title or the actual job
claimedgearFor medics and engineers to 'claim' a locker
paygradeMarine's paygrade
pinned_on_uniformwhether the id's onmob overlay only appear when wearing a uniform
rankactual job
registered_nameThe name registered_name on the card

Procs

handle_ares_accessset ticket back to pending
+

Var Details

assignment + + + + +

+

can be alt title or the actual job

claimedgear + + + + +

+

For medics and engineers to 'claim' a locker

paygrade + + + + +

+

Marine's paygrade

pinned_on_uniform + + + + +

+

whether the id's onmob overlay only appear when wearing a uniform

rank + + + + +

+

actual job

registered_name + + + + +

+

The name registered_name on the card

Proc Details

handle_ares_access +

+

set ticket back to pending

+ + + diff --git a/obj/item/circuitboard/airlock.html b/obj/item/circuitboard/airlock.html new file mode 100644 index 000000000000..460ee3aa74b8 --- /dev/null +++ b/obj/item/circuitboard/airlock.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/circuitboard/airlock - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

airlock electronics + + + +

+ + +

Vars

one_accessif set to 1, door would receive req_one_access instead of req_access
+

Var Details

one_access + + + + +

+

if set to 1, door would receive req_one_access instead of req_access

+ + + diff --git a/obj/item/clothing.html b/obj/item/clothing.html new file mode 100644 index 000000000000..9df390e9f5a8 --- /dev/null +++ b/obj/item/clothing.html @@ -0,0 +1,37 @@ + + + + + + + /obj/item/clothing - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

clothing + + + +

+ + +

Procs

attach_accessoryAttach accessory A to src

Proc Details

attach_accessory +

+

Attach accessory A to src

+

user is the user doing the attaching. Can be null, such as when attaching +items on spawn

+ + + diff --git a/obj/item/clothing/accessory.html b/obj/item/clothing/accessory.html new file mode 100644 index 000000000000..b080d52faef7 --- /dev/null +++ b/obj/item/clothing/accessory.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/clothing/accessory - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tie + + + +

+ + + +

Vars

jumpsuit_hide_statesJumpsuit flags that cause the accessory to be hidden. format: "x" OR "(x|y|z)" (w/o quote marks).

Procs

additional_examine_textExtra text to append when attached to another clothing item and the host clothing is examined.
+

Var Details

jumpsuit_hide_states + + + + +

+

Jumpsuit flags that cause the accessory to be hidden. format: "x" OR "(x|y|z)" (w/o quote marks).

Proc Details

additional_examine_text +

+

Extra text to append when attached to another clothing item and the host clothing is examined.

+ + + diff --git a/obj/item/clothing/accessory/health.html b/obj/item/clothing/accessory/health.html new file mode 100644 index 000000000000..985d5288f355 --- /dev/null +++ b/obj/item/clothing/accessory/health.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/clothing/accessory/health - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

armor plate + + + +

+ + +

Vars

is_armoris it armor or something different & irrelevant and always passes damage & doesnt take damage to itself?
+

Var Details

is_armor + + + + +

+

is it armor or something different & irrelevant and always passes damage & doesnt take damage to itself?

+ + + diff --git a/obj/item/clothing/accessory/health/research_plate.html b/obj/item/clothing/accessory/health/research_plate.html new file mode 100644 index 000000000000..f6eab41e74e3 --- /dev/null +++ b/obj/item/clothing/accessory/health/research_plate.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/clothing/accessory/health/research_plate - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

experimental uniform attachment + + + +

+ + +

Vars

recyclable_valuecan the plate be recycled after X condition? 0 means it cannot be recycled, otherwise put in the biomass points to refund.
+

Var Details

recyclable_value + + + + +

+

can the plate be recycled after X condition? 0 means it cannot be recycled, otherwise put in the biomass points to refund.

+ + + diff --git a/obj/item/clothing/accessory/health/research_plate/emergency_injector.html b/obj/item/clothing/accessory/health/research_plate/emergency_injector.html new file mode 100644 index 000000000000..83be72498dc1 --- /dev/null +++ b/obj/item/clothing/accessory/health/research_plate/emergency_injector.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/clothing/accessory/health/research_plate/emergency_injector - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

emergency chemical plate + + + +

+ + +

Vars

warning_type1 means the player overdosed with OD_OFF mode. 2 means the plate adjusted the chemicals injected.
+

Var Details

warning_type + + + + +

+

1 means the player overdosed with OD_OFF mode. 2 means the plate adjusted the chemicals injected.

+ + + diff --git a/obj/item/clothing/accessory/limb/skeleton.html b/obj/item/clothing/accessory/limb/skeleton.html new file mode 100644 index 000000000000..886588621ca2 --- /dev/null +++ b/obj/item/clothing/accessory/limb/skeleton.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/clothing/accessory/limb/skeleton - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

How did you get this? + + + +

+ + +

Vars

polishedHas it been cleaned by a polishing rag?
+

Var Details

polished + + + + +

+

Has it been cleaned by a polishing rag?

+ + + diff --git a/obj/item/clothing/glasses.html b/obj/item/clothing/glasses.html new file mode 100644 index 000000000000..cae2a9ba44ab --- /dev/null +++ b/obj/item/clothing/glasses.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/clothing/glasses - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

glasses + + + +

+ + +

Vars

lighting_alphaThe amount of nightvision these glasses have. This should be a number between 0 and 1.
+

Var Details

lighting_alpha + + + + +

+

The amount of nightvision these glasses have. This should be a number between 0 and 1.

+ + + diff --git a/obj/item/clothing/glasses/disco_fever.html b/obj/item/clothing/glasses/disco_fever.html new file mode 100644 index 000000000000..cbad1001ca17 --- /dev/null +++ b/obj/item/clothing/glasses/disco_fever.html @@ -0,0 +1,42 @@ + + + + + + + /obj/item/clothing/glasses/disco_fever - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

malfunctioning AR visor + + + +

+ + + +

Procs

apply_discovisionHandles disco-vision. Normal client color matrix handling isn't set up for a continuous animation like this, so this is applied afterwards.
apply_discovision_handlerEnds existing animations in preparation for the funny. Looping animations don't seem to properly end if a new one is started on the same tick.

Proc Details

apply_discovision +

+

Handles disco-vision. Normal client color matrix handling isn't set up for a continuous animation like this, so this is applied afterwards.

apply_discovision_handler +

+

Ends existing animations in preparation for the funny. Looping animations don't seem to properly end if a new one is started on the same tick.

+ + + diff --git a/obj/item/clothing/gloves/marine.html b/obj/item/clothing/gloves/marine.html new file mode 100644 index 000000000000..abbafbd9b493 --- /dev/null +++ b/obj/item/clothing/gloves/marine.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/clothing/gloves/marine - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

marine combat gloves + + + +

+ + +

Vars

squad_overlay_iconThe dmi where the grayscale squad overlays are contained
+

Var Details

squad_overlay_icon + + + + +

+

The dmi where the grayscale squad overlays are contained

+ + + diff --git a/obj/item/clothing/gloves/yautja.html b/obj/item/clothing/gloves/yautja.html new file mode 100644 index 000000000000..f4dd3b05cad0 --- /dev/null +++ b/obj/item/clothing/gloves/yautja.html @@ -0,0 +1,92 @@ + + + + + + + /obj/item/clothing/gloves/yautja - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

ancient alien bracers + + + +

+ + + + + + + + + + +

Vars

charge_cooldownCooldown on draining power from APC
charge_rateThe amount charged per process
cloak_alphaDetermines the alpha level of the cloaking device.
minimap_iconWhat minimap icon this bracer should have
true_cloakIf TRUE will change the mob invisibility level, providing 100% invisibility. Exclusively for events.

Procs

attempt_toggle_lockHandles all the locking and unlocking of bracers.
decloakhandles decloaking only on HUNTER gloves
toggle_lock_internalThe actual unlock/lock function.
update_minimap_iconCalled to update the minimap icon of the predator
+

Var Details

charge_cooldown + + + + +

+

Cooldown on draining power from APC

charge_rate + + + + +

+

The amount charged per process

cloak_alpha + + + + +

+

Determines the alpha level of the cloaking device.

minimap_icon + + + + +

+

What minimap icon this bracer should have

true_cloak + + + + +

+

If TRUE will change the mob invisibility level, providing 100% invisibility. Exclusively for events.

Proc Details

attempt_toggle_lock +

+

Handles all the locking and unlocking of bracers.

decloak +

+

handles decloaking only on HUNTER gloves

toggle_lock_internal +

+

The actual unlock/lock function.

update_minimap_icon +

+

Called to update the minimap icon of the predator

+ + + diff --git a/obj/item/clothing/gloves/yautja/hunter.html b/obj/item/clothing/gloves/yautja/hunter.html new file mode 100644 index 000000000000..324b3ce54173 --- /dev/null +++ b/obj/item/clothing/gloves/yautja/hunter.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/clothing/gloves/yautja/hunter - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

clan bracers + + + +

+ + + + +

Vars

bracer_actionsA list of all intrinsic bracer actions

Procs

cloakerThe item itself, to be referenced so Yautja know what to look for.
toggle_lockVerb to let Yautja attempt the unlocking.
+

Var Details

bracer_actions + + + + +

+

A list of all intrinsic bracer actions

Proc Details

cloaker +

+

The item itself, to be referenced so Yautja know what to look for.

toggle_lock +

+

Verb to let Yautja attempt the unlocking.

+ + + diff --git a/obj/item/clothing/head/hardhat.html b/obj/item/clothing/head/hardhat.html new file mode 100644 index 000000000000..8431beb153ea --- /dev/null +++ b/obj/item/clothing/head/hardhat.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/clothing/head/hardhat - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

hard hat + + + +

+ + + +

Vars

breaking_soundThe sound it makes when broken by a xenomorph.
can_be_brokenCan it be be broken by xenomorphs?
+

Var Details

breaking_sound + + + + +

+

The sound it makes when broken by a xenomorph.

can_be_broken + + + + +

+

Can it be be broken by xenomorphs?

+ + + diff --git a/obj/item/clothing/head/helmet/marine.html b/obj/item/clothing/head/helmet/marine.html new file mode 100644 index 000000000000..a70d1f0ae842 --- /dev/null +++ b/obj/item/clothing/head/helmet/marine.html @@ -0,0 +1,99 @@ + + + + + + + /obj/item/clothing/head/helmet/marine - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

M10 pattern marine helmet + + + +

+ + + + + + + + + + + +

Vars

active_visorThe current active visor that is shown
built_in_visorsAny visors built into the helmet
helmet_overlay_iconThe dmi where the grayscale squad overlays are contained
inserted_visorsAny visors that have been added into the helmet
max_inserted_visorsMax amount of inserted visors
start_down_visor_typeDesignates a visor type that should start down when initialized

Procs

cycle_hudsCycles the active HUD to the next between built_in_visors and inserted_visors, nullifies if at end and removes all HUDs
recalculate_visorsRecalculates and sets the proper visor effects
toggle_visorToggles the specified visor, if nothing specified then the active visor, if the visor is the active visor and the helmet is on the user's head it will turn on, if it is not the active visor it will turn off
turn_off_visorsAttempts to turn off all visors
+

Var Details

active_visor + + + + +

+

The current active visor that is shown

built_in_visors + + + + +

+

Any visors built into the helmet

helmet_overlay_icon + + + + +

+

The dmi where the grayscale squad overlays are contained

inserted_visors + + + + +

+

Any visors that have been added into the helmet

max_inserted_visors + + + + +

+

Max amount of inserted visors

start_down_visor_type + + + + +

+

Designates a visor type that should start down when initialized

Proc Details

cycle_huds +

+

Cycles the active HUD to the next between built_in_visors and inserted_visors, nullifies if at end and removes all HUDs

recalculate_visors +

+

Recalculates and sets the proper visor effects

toggle_visor +

+

Toggles the specified visor, if nothing specified then the active visor, if the visor is the active visor and the helmet is on the user's head it will turn on, if it is not the active visor it will turn off

turn_off_visors +

+

Attempts to turn off all visors

+ + + diff --git a/obj/item/clothing/mask/cigarette.html b/obj/item/clothing/mask/cigarette.html new file mode 100644 index 000000000000..50bfee391d5f --- /dev/null +++ b/obj/item/clothing/mask/cigarette.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/clothing/mask/cigarette - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

cigarette + + + +

+ + +

Vars

icon_onNote - these are in masks.dmi not in cigarette.dmi
+

Var Details

icon_on + + + + +

+

Note - these are in masks.dmi not in cigarette.dmi

+ + + diff --git a/obj/item/clothing/mask/cigarette/pipe.html b/obj/item/clothing/mask/cigarette/pipe.html new file mode 100644 index 000000000000..4fb8508229ec --- /dev/null +++ b/obj/item/clothing/mask/cigarette/pipe.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/clothing/mask/cigarette/pipe - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

smoking pipe + + + +

+ + + +

Vars

icon_onNote - these are in masks.dmi

Procs

attack_selfRefills the pipe. Can be changed to an attackby later, if loose tobacco is added to vendors or something.
+

Var Details

icon_on + + + + +

+

Note - these are in masks.dmi

Proc Details

attack_self +

+

Refills the pipe. Can be changed to an attackby later, if loose tobacco is added to vendors or something.

+ + + diff --git a/obj/item/clothing/mask/cigarette/pipe/cobpipe.html b/obj/item/clothing/mask/cigarette/pipe/cobpipe.html new file mode 100644 index 000000000000..d9cb76edc64b --- /dev/null +++ b/obj/item/clothing/mask/cigarette/pipe/cobpipe.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/clothing/mask/cigarette/pipe/cobpipe - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

corn cob pipe + + + +

+ + +

Vars

icon_onNote - these are in masks.dmi
+

Var Details

icon_on + + + + +

+

Note - these are in masks.dmi

+ + + diff --git a/obj/item/clothing/mask/facehugger.html b/obj/item/clothing/mask/facehugger.html new file mode 100644 index 000000000000..55bf687f909e --- /dev/null +++ b/obj/item/clothing/mask/facehugger.html @@ -0,0 +1,56 @@ + + + + + + + /obj/item/clothing/mask/facehugger - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

facehugger + + + +

+ + + + +

Vars

jump_timerThe timer for the hugger to jump +at the nearest human
jumps_leftHow many times the hugger will try to jump at +the nearest human before dying
time_between_jumpsDelay of time between the hugger jumping +at the nearest human
+

Var Details

jump_timer + + + + +

+

The timer for the hugger to jump +at the nearest human

jumps_left + + + + +

+

How many times the hugger will try to jump at +the nearest human before dying

time_between_jumps + + + + +

+

Delay of time between the hugger jumping +at the nearest human

+ + + diff --git a/obj/item/clothing/mask/gas/yautja.html b/obj/item/clothing/mask/gas/yautja.html new file mode 100644 index 000000000000..b6918655bf0c --- /dev/null +++ b/obj/item/clothing/mask/gas/yautja.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/clothing/mask/gas/yautja - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

alien mask + + + +

+ +

parent type

+

Vars

mask_actionsA list of all intrinsic mask actions
+

Var Details

mask_actions + + + + +

+

A list of all intrinsic mask actions

+ + + diff --git a/obj/item/clothing/shoes.html b/obj/item/clothing/shoes.html new file mode 100644 index 000000000000..930462082312 --- /dev/null +++ b/obj/item/clothing/shoes.html @@ -0,0 +1,81 @@ + + + + + + + /obj/item/clothing/shoes - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

shoes + + + +

+ + + + + + + + +

Vars

allowed_items_typecacheList of item types that can be inserted.
spawn_item_typeAn item which should be inserted when the shoes are spawned.
stored_itemThe currently inserted item.

Procs

_insert_itemInsert item_to_insert directly into the shoes without bothering with any checks. +(In the majority of cases [/obj/item/clothing/shoes/proc/attempt_insert_item()] should be used instead of this.)
attempt_insert_itemTry to insert item_to_insert into the shoes.
can_be_insertedReturns a boolean indicating if item_to_insert can be inserted into the shoes.
remove_itemRemove stored_item from the shoes, and place it into the user's active hand.
+

Var Details

allowed_items_typecache + + + + +

+

List of item types that can be inserted.

spawn_item_type + + + + +

+

An item which should be inserted when the shoes are spawned.

stored_item + + + + +

+

The currently inserted item.

Proc Details

_insert_item +

+

Insert item_to_insert directly into the shoes without bothering with any checks. +(In the majority of cases [/obj/item/clothing/shoes/proc/attempt_insert_item()] should be used instead of this.)

attempt_insert_item +

+

Try to insert item_to_insert into the shoes.

+

Returns TRUE if it succeeded, or FALSE if /obj/item/clothing/shoes/proc/can_be_inserted failed, or user couldn't drop the item.

can_be_inserted +

+

Returns a boolean indicating if item_to_insert can be inserted into the shoes.

remove_item +

+

Remove stored_item from the shoes, and place it into the user's active hand.

+ + + diff --git a/obj/item/clothing/suit/storage/marine.html b/obj/item/clothing/suit/storage/marine.html new file mode 100644 index 000000000000..f60a370807ba --- /dev/null +++ b/obj/item/clothing/suit/storage/marine.html @@ -0,0 +1,47 @@ + + + + + + + /obj/item/clothing/suit/storage/marine - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

M3 pattern marine armor + + + +

+ + + +

Vars

squad_overlay_iconThe dmi where the grayscale squad overlays are contained

Procs

set_armor_styleUpdates the armor's icon_state to the style represented by new_style.
+

Var Details

squad_overlay_icon + + + + +

+

The dmi where the grayscale squad overlays are contained

Proc Details

set_armor_style +

+

Updates the armor's icon_state to the style represented by new_style.

+

Arguments:

+
    +
  • new_style - The new armor style. May only be one of GLOB.armor_style_list's keys, or "Random".
  • +
+ + + diff --git a/obj/item/clothing/suit/storage/marine/M35.html b/obj/item/clothing/suit/storage/marine/M35.html new file mode 100644 index 000000000000..8b32f36c75e3 --- /dev/null +++ b/obj/item/clothing/suit/storage/marine/M35.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/clothing/suit/storage/marine/M35 - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

M35 pyrotechnician armor + + + +

+ + +

Procs

fire_shield_is_onThis proc is solely so that IgniteMob() fails

Proc Details

fire_shield_is_on +

+

This proc is solely so that IgniteMob() fails

+ + + diff --git a/obj/item/clothing/suit/storage/marine/medium/rto/intel.html b/obj/item/clothing/suit/storage/marine/medium/rto/intel.html new file mode 100644 index 000000000000..d57d2e5fdf9b --- /dev/null +++ b/obj/item/clothing/suit/storage/marine/medium/rto/intel.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/clothing/suit/storage/marine/medium/rto/intel - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

XM4 pattern intelligence officer armor + + + +

+ + +

Vars

actions_typesXM4 Integral Motion Detector Ability
+

Var Details

actions_types + + + + +

+

XM4 Integral Motion Detector Ability

+ + + diff --git a/obj/item/clothing/under.html b/obj/item/clothing/under.html new file mode 100644 index 000000000000..62d5444ac0dd --- /dev/null +++ b/obj/item/clothing/under.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/clothing/under - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

under + + + +

+ + +

Vars

flags_jumpsuitStores whether sleeves can be rolled, cut etc. and whether they currently are.
+

Var Details

flags_jumpsuit + + + + +

+

Stores whether sleeves can be rolled, cut etc. and whether they currently are.

+ + + diff --git a/obj/item/clothing/under/marine.html b/obj/item/clothing/under/marine.html new file mode 100644 index 000000000000..732bcf30fd9d --- /dev/null +++ b/obj/item/clothing/under/marine.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/clothing/under/marine - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

USCM uniform + + + +

+ + + +

Vars

map_variants_roll_accessoriesList of map variants that use sleeve rolling on something else, like snow uniforms rolling the collar, and therefore shouldn't hide patches etc when rolled.
specialtyMakes it so that we can see the right name in the vendor.
+

Var Details

map_variants_roll_accessories + + + + +

+

List of map variants that use sleeve rolling on something else, like snow uniforms rolling the collar, and therefore shouldn't hide patches etc when rolled.

specialty + + + + +

+

Makes it so that we can see the right name in the vendor.

+ + + diff --git a/obj/item/clothing/under/marine/cbrn.html b/obj/item/clothing/under/marine/cbrn.html new file mode 100644 index 000000000000..493a926bb437 --- /dev/null +++ b/obj/item/clothing/under/marine/cbrn.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/clothing/under/marine/cbrn - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

M3 MOPP suit + + + +

+ + + + + +

Vars

hood_enabledWhether the hood and gas mask were worn through the hood toggle verb
hood_typeTypepath of the attached hood
linked_hoodThe head clothing that the suit uses as a hood
supports_fire_protectionWhether enabling the hood protects you from fire
+

Var Details

hood_enabled + + + + +

+

Whether the hood and gas mask were worn through the hood toggle verb

hood_type + + + + +

+

Typepath of the attached hood

linked_hood + + + + +

+

The head clothing that the suit uses as a hood

supports_fire_protection + + + + +

+

Whether enabling the hood protects you from fire

+ + + diff --git a/obj/item/coin/marine.html b/obj/item/coin/marine.html new file mode 100644 index 000000000000..1731f7e75ed1 --- /dev/null +++ b/obj/item/coin/marine.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/coin/marine - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

marine equipment token + + + +

+ + +

Vars

token_typeWhat is the token for?
+

Var Details

token_type + + + + +

+

What is the token for?

+ + + diff --git a/obj/item/desk_bell.html b/obj/item/desk_bell.html new file mode 100644 index 000000000000..219611a60217 --- /dev/null +++ b/obj/item/desk_bell.html @@ -0,0 +1,78 @@ + + + + + + + /obj/item/desk_bell - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

desk bell + + + +

+ + + + + + + + +

Vars

broken_ringerIs this bell broken?
ring_cooldownHolds the time that the bell can next be rang.
ring_cooldown_lengthThe length of the cooldown. Setting it to 0 will skip all cooldowns alltogether.
ring_soundThe sound the bell makes.
times_rangThe amount of times this bell has been rang, used to check the chance it breaks.

Procs

check_clapperCheck if the clapper breaks, and if it does, break it. Chance to break is 1% for every 100 rings of the bell.
ring_bellRing the bell.
+

Var Details

broken_ringer + + + + +

+

Is this bell broken?

ring_cooldown + + + + +

+

Holds the time that the bell can next be rang.

ring_cooldown_length + + + + +

+

The length of the cooldown. Setting it to 0 will skip all cooldowns alltogether.

ring_sound + + + + +

+

The sound the bell makes.

times_rang + + + + +

+

The amount of times this bell has been rang, used to check the chance it breaks.

Proc Details

check_clapper +

+

Check if the clapper breaks, and if it does, break it. Chance to break is 1% for every 100 rings of the bell.

ring_bell +

+

Ring the bell.

+ + + diff --git a/obj/item/device/binoculars.html b/obj/item/device/binoculars.html new file mode 100644 index 000000000000..0adc5d5a83f4 --- /dev/null +++ b/obj/item/device/binoculars.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/device/binoculars - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

binoculars + + + +

+ + +

Vars

uses_camoIf FALSE won't change icon_state to a camo marine bino.
+

Var Details

uses_camo + + + + +

+

If FALSE won't change icon_state to a camo marine bino.

+ + + diff --git a/obj/item/device/binoculars/range.html b/obj/item/device/binoculars/range.html new file mode 100644 index 000000000000..d956695bed35 --- /dev/null +++ b/obj/item/device/binoculars/range.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/device/binoculars/range - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

rangefinder + + + +

+ + +

Vars

range_laser_overlayNormally used for the small green dot signifying coordinations-obtaining mode.
+

Var Details

range_laser_overlay + + + + +

+

Normally used for the small green dot signifying coordinations-obtaining mode.

+ + + diff --git a/obj/item/device/binoculars/range/designator.html b/obj/item/device/binoculars/range/designator.html new file mode 100644 index 000000000000..3bed2a71324e --- /dev/null +++ b/obj/item/device/binoculars/range/designator.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/device/binoculars/range/designator - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

laser designator + + + +

+ + +

Vars

cas_laser_overlayNormally used for the red CAS dot overlay.
+

Var Details

cas_laser_overlay + + + + +

+

Normally used for the red CAS dot overlay.

+ + + diff --git a/obj/item/device/binoculars/range/designator/spotter.html b/obj/item/device/binoculars/range/designator/spotter.html new file mode 100644 index 000000000000..788156f0e619 --- /dev/null +++ b/obj/item/device/binoculars/range/designator/spotter.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/device/binoculars/range/designator/spotter - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

spotter's laser designator + + + +

+ + + +

Vars

spot_laser_overlayThe yellow dot overlay that shows up if the binoculars are spotting.
spotter_bandThe off-white band that covers the binoculars.
+

Var Details

spot_laser_overlay + + + + +

+

The yellow dot overlay that shows up if the binoculars are spotting.

spotter_band + + + + +

+

The off-white band that covers the binoculars.

+ + + diff --git a/obj/item/device/defibrillator.html b/obj/item/device/defibrillator.html new file mode 100644 index 000000000000..095094b4a3a0 --- /dev/null +++ b/obj/item/device/defibrillator.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/device/defibrillator - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

emergency defibrillator + + + +

+ + + +

Vars

max_heart_damage_dealtMax damage defib deals to victims' heart
min_heart_damage_dealtMin damage defib deals to victims' heart
+

Var Details

max_heart_damage_dealt + + + + +

+

Max damage defib deals to victims' heart

min_heart_damage_dealt + + + + +

+

Min damage defib deals to victims' heart

+ + + diff --git a/obj/item/device/flashlight/flare.html b/obj/item/device/flashlight/flare.html new file mode 100644 index 000000000000..bf4a83e82558 --- /dev/null +++ b/obj/item/device/flashlight/flare.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/device/flashlight/flare - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

flare + + + +

+ + + + +

Vars

flame_base_tintColor correction, added to the whole flame overlay
flame_tintTint for the greyscale flare flame
show_flameWhether to use flame overlays for this flare type
+

Var Details

flame_base_tint + + + + +

+

Color correction, added to the whole flame overlay

flame_tint + + + + +

+

Tint for the greyscale flare flame

show_flame + + + + +

+

Whether to use flame overlays for this flare type

+ + + diff --git a/obj/item/device/helmet_visor.html b/obj/item/device/helmet_visor.html new file mode 100644 index 000000000000..b0d868322c17 --- /dev/null +++ b/obj/item/device/helmet_visor.html @@ -0,0 +1,99 @@ + + + + + + + /obj/item/device/helmet_visor - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

squad optic + + + +

+ + + + + + + + + + + +

Vars

action_icon_stringThe icon name for our helmet's action, in 'icons/obj/items/clothing/helmet_visors.dmi'
helmet_overlayThe overlay name for when our visor is active, in 'icons/mob/humans/onmob/helmet_garb.dmi'
hud_typeThe type of HUD our visor shows
toggle_off_soundThe sound when toggling off the visor
toggle_on_soundThe sound when toggling on the visor

Procs

activate_visorCalled by toggle_visor() to activate the visor's effects
can_toggleCalled to see if the user can even use this visor
deactivate_visorCalled by toggle_visor() to deactivate the visor's effects
get_helmet_examine_textCalled by /obj/item/clothing/head/helmet/marine/get_examine_text(mob/user) to get extra examine text for this visor
toggle_visorCalled to see if this visor is a special non-HUD visor
+

Var Details

action_icon_string + + + + +

+

The icon name for our helmet's action, in 'icons/obj/items/clothing/helmet_visors.dmi'

helmet_overlay + + + + +

+

The overlay name for when our visor is active, in 'icons/mob/humans/onmob/helmet_garb.dmi'

hud_type + + + + +

+

The type of HUD our visor shows

toggle_off_sound + + + + +

+

The sound when toggling off the visor

toggle_on_sound + + + + +

+

The sound when toggling on the visor

Proc Details

activate_visor +

+

Called by toggle_visor() to activate the visor's effects

can_toggle +

+

Called to see if the user can even use this visor

deactivate_visor +

+

Called by toggle_visor() to deactivate the visor's effects

get_helmet_examine_text +

+

Called by /obj/item/clothing/head/helmet/marine/get_examine_text(mob/user) to get extra examine text for this visor

toggle_visor +

+

Called to see if this visor is a special non-HUD visor

+ + + diff --git a/obj/item/device/helmet_visor/night_vision.html b/obj/item/device/helmet_visor/night_vision.html new file mode 100644 index 000000000000..c399058b1953 --- /dev/null +++ b/obj/item/device/helmet_visor/night_vision.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/device/helmet_visor/night_vision - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

night vision optic + + + +

+ + + + + + +

Vars

lighting_alphaThe alpha of darkness we set to for the mob while the visor is on, not completely fullbright but see-able
on_lightA slight glowing green light while the NVG is activated, is initialized as in the attached_helmet's contents
power_cellThe internal battery for the visor
power_useAbout 5 minutes active use charge (hypothetically)
visor_glowsWhether or not the sight uses on_light and produces light
+

Var Details

lighting_alpha + + + + +

+

The alpha of darkness we set to for the mob while the visor is on, not completely fullbright but see-able

on_light + + + + +

+

A slight glowing green light while the NVG is activated, is initialized as in the attached_helmet's contents

power_cell + + + + +

+

The internal battery for the visor

power_use + + + + +

+

About 5 minutes active use charge (hypothetically)

visor_glows + + + + +

+

Whether or not the sight uses on_light and produces light

+ + + diff --git a/obj/item/device/internal_implant/rejuv.html b/obj/item/device/internal_implant/rejuv.html new file mode 100644 index 000000000000..1dfbef5f0de1 --- /dev/null +++ b/obj/item/device/internal_implant/rejuv.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/device/internal_implant/rejuv - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/item/device/internal_implant/rejuv + + + +

+ + +

Vars

stimulant_to_injectAssoc list where the keys are the reagent ids of the reagents to be injected and the values are the amount to be injected
+

Var Details

stimulant_to_inject + + + + +

+

Assoc list where the keys are the reagent ids of the reagents to be injected and the values are the amount to be injected

+ + + diff --git a/obj/item/device/m56d_gun.html b/obj/item/device/m56d_gun.html new file mode 100644 index 000000000000..df09148fbb6e --- /dev/null +++ b/obj/item/device/m56d_gun.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/device/m56d_gun - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

M56D heavy machine gun + + + +

+ + + + +

Vars

defense_check_rangeThe distance this has to be away from other m56d_hmg and m56d_post to be placed.
has_mountIndicates whether the M56D will come with its folding mount already attached
roundsHow many rounds are in the weapon. This is useful if we break down our guns.
+

Var Details

defense_check_range + + + + +

+

The distance this has to be away from other m56d_hmg and m56d_post to be placed.

has_mount + + + + +

+

Indicates whether the M56D will come with its folding mount already attached

rounds + + + + +

+

How many rounds are in the weapon. This is useful if we break down our guns.

+ + + diff --git a/obj/item/device/m56d_post.html b/obj/item/device/m56d_post.html new file mode 100644 index 000000000000..6ab2c5889c02 --- /dev/null +++ b/obj/item/device/m56d_post.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/device/m56d_post - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

M56D folded mount + + + +

+ + +

Procs

attack_selfCauses the tripod to unfold

Proc Details

attack_self +

+

Causes the tripod to unfold

+ + + diff --git a/obj/item/device/mmi/radio_enabled.html b/obj/item/device/mmi/radio_enabled.html new file mode 100644 index 000000000000..22a0e226c8aa --- /dev/null +++ b/obj/item/device/mmi/radio_enabled.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/device/mmi/radio_enabled - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Radio-enabled Man-Machine Interface + + + +

+ + +

Procs

Toggle_BroadcastingAllows the brain to toggle the radio functions.

Proc Details

Toggle_Broadcasting +

+

Allows the brain to toggle the radio functions.

+ + + diff --git a/obj/item/device/motiondetector/xm4.html b/obj/item/device/motiondetector/xm4.html new file mode 100644 index 000000000000..770c5cd536b5 --- /dev/null +++ b/obj/item/device/motiondetector/xm4.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/device/motiondetector/xm4 - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/obj/item/device/motiondetector/xm4 + + + +

+ + +

Procs

get_userForces the blue blip to appear around the detected mob

Proc Details

get_user +

+

Forces the blue blip to appear around the detected mob

+ + + diff --git a/obj/item/device/portable_vendor.html b/obj/item/device/portable_vendor.html new file mode 100644 index 000000000000..34cc9fa935c9 --- /dev/null +++ b/obj/item/device/portable_vendor.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/device/portable_vendor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Automated Storage Briefcase + + + +

+ + + + +

Vars

req_roleto be compared with assigned_role to only allow those to use that machine.
special_prod_time_lockneeds to be a time define
special_prodslist of typepaths
+

Var Details

req_role + + + + +

+

to be compared with assigned_role to only allow those to use that machine.

special_prod_time_lock + + + + +

+

needs to be a time define

special_prods + + + + +

+

list of typepaths

+ + + diff --git a/obj/item/device/professor_dummy_tablet.html b/obj/item/device/professor_dummy_tablet.html new file mode 100644 index 000000000000..88ecb309ebd2 --- /dev/null +++ b/obj/item/device/professor_dummy_tablet.html @@ -0,0 +1,47 @@ + + + + + + + /obj/item/device/professor_dummy_tablet - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Professor DUMMY tablet + + + +

+ + + +

Vars

dust_on_hijackShould the dummy be destroyed on hijack?

Procs

is_adjacent_to_dummyChecks if the user is adjacent to the dummy
+

Var Details

dust_on_hijack + + + + +

+

Should the dummy be destroyed on hijack?

Proc Details

is_adjacent_to_dummy +

+

Checks if the user is adjacent to the dummy

+

Returns TRUE if the user is adjacent to the dummy, FALSE otherwise

+
    +
  • arg-1: The user
  • +
+ + + diff --git a/obj/item/device/radio.html b/obj/item/device/radio.html new file mode 100644 index 000000000000..29d4010e713b --- /dev/null +++ b/obj/item/device/radio.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/device/radio - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

shortwave radio + + + +

+ + + +

Vars

subspace_switchableIf true, subspace_transmission can be toggled at will.
use_volumeif false it will just default to RADIO_VOLUME_QUIET every time
+

Var Details

subspace_switchable + + + + +

+

If true, subspace_transmission can be toggled at will.

use_volume + + + + +

+

if false it will just default to RADIO_VOLUME_QUIET every time

+ + + diff --git a/obj/item/device/radio/headset.html b/obj/item/device/radio/headset.html new file mode 100644 index 000000000000..85b1877660a4 --- /dev/null +++ b/obj/item/device/radio/headset.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/device/radio/headset - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

radio headset + + + +

+ + + + +

Vars

minimap_typeThe type of minimap this headset is added to

Procs

set_dead_on_minimapChange the minimap icon to a dead icon
set_undefibbable_on_minimapChange the minimap icon to a undefibbable icon
+

Var Details

minimap_type + + + + +

+

The type of minimap this headset is added to

Proc Details

set_dead_on_minimap +

+

Change the minimap icon to a dead icon

set_undefibbable_on_minimap +

+

Change the minimap icon to a undefibbable icon

+ + + diff --git a/obj/item/device/radio/listening_bug.html b/obj/item/device/radio/listening_bug.html new file mode 100644 index 000000000000..696425b398a9 --- /dev/null +++ b/obj/item/device/radio/listening_bug.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/device/radio/listening_bug - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

listening device + + + +

+ + + + +

Vars

nametagThe ID tag of the device, for identification.
prevent_snoopingWhether or not the bug can be used to listen to its own channel.
ready_to_disguiseIf the bug is disguised or not.
+

Var Details

nametag + + + + +

+

The ID tag of the device, for identification.

prevent_snooping + + + + +

+

Whether or not the bug can be used to listen to its own channel.

ready_to_disguise + + + + +

+

If the bug is disguised or not.

+ + + diff --git a/obj/item/device/sentry_computer.html b/obj/item/device/sentry_computer.html new file mode 100644 index 000000000000..8aef613d0821 --- /dev/null +++ b/obj/item/device/sentry_computer.html @@ -0,0 +1,188 @@ + + + + + + + /obj/item/device/sentry_computer - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Sentry Gun Network Laptop + + + +

+ +

Sentry gun computer which links to defensive structures.

+ + + + + + + + + + + + + + + + + + +

Vars

camera_map_nameasset name for the game map
cellbattery in the laptop
currentdefensive structure which has the camera active
last_camera_turfThe turf where the camera was last updated.
onif the laptop is turned on and powered
openif the laptop has been opened (the model not tgui)
paired_sentrylist of paired defences
power_consumptionmultiplier for how much power to drain per linked device
silentif the laptop should announce events on radio, for live server testing

Procs

handle_empty_ammoHandler for when a linked sentry has no ammo. +@param sentrygun: sentry gun which has ran out of ammo.
handle_engagedHandler for when a linked sentry gun engages a target. +@param sentrygun: gun which has fired.
handle_low_ammoHandler for when a linked sentry has low ammo. +@param sentrygun: gun which is low on ammo.
pair_sentryLinks the target sentry gun to this laptop, linking signals and storing data. +@params target: defensive structure to link.
registerRun checks and register a sentry gun to this sentry computer. +@param tool: tool which was used to link. +@param user: mob which initiated the link. +@param defensive_structure: defensive structure which is to be linked.
send_messageBroadcast a message to those nearby and on sentry radio. +@param message: message to broadcast.
sentry_destroyedHandler for when a linked sentry gun is destroyed. +@param sentry_gun: sentry gun which is currently being destroyed.
teardownCalled to reset the state of the laptop to closed and inactive.
unpair_sentryUnlinks the target sentry gun from this laptop, unlinking signals and removing from internal storage lists. +@params target: defensive structure to unlink
unregisterRun checks and unregister a sentry gun from this sentry computer. +@param tool: tool which was used to unlink. +@param user: mob which initiated the unlink. +@param defensive_structure: defensive structure which is to be unlinked.
+

Var Details

camera_map_name + + + + +

+

asset name for the game map

cell + + + + +

+

battery in the laptop

current + + + + +

+

defensive structure which has the camera active

last_camera_turf + + + + +

+

The turf where the camera was last updated.

on + + + + +

+

if the laptop is turned on and powered

open + + + + +

+

if the laptop has been opened (the model not tgui)

paired_sentry + + + + +

+

list of paired defences

power_consumption + + + + +

+

multiplier for how much power to drain per linked device

silent + + + + +

+

if the laptop should announce events on radio, for live server testing

Proc Details

handle_empty_ammo +

+

Handler for when a linked sentry has no ammo. +@param sentrygun: sentry gun which has ran out of ammo.

handle_engaged +

+

Handler for when a linked sentry gun engages a target. +@param sentrygun: gun which has fired.

handle_low_ammo +

+

Handler for when a linked sentry has low ammo. +@param sentrygun: gun which is low on ammo.

pair_sentry +

+

Links the target sentry gun to this laptop, linking signals and storing data. +@params target: defensive structure to link.

register +

+

Run checks and register a sentry gun to this sentry computer. +@param tool: tool which was used to link. +@param user: mob which initiated the link. +@param defensive_structure: defensive structure which is to be linked.

send_message +

+

Broadcast a message to those nearby and on sentry radio. +@param message: message to broadcast.

sentry_destroyed +

+

Handler for when a linked sentry gun is destroyed. +@param sentry_gun: sentry gun which is currently being destroyed.

teardown +

+

Called to reset the state of the laptop to closed and inactive.

unpair_sentry +

+

Unlinks the target sentry gun from this laptop, unlinking signals and removing from internal storage lists. +@params target: defensive structure to unlink

unregister +

+

Run checks and unregister a sentry gun from this sentry computer. +@param tool: tool which was used to unlink. +@param user: mob which initiated the unlink. +@param defensive_structure: defensive structure which is to be unlinked.

+ + + diff --git a/obj/item/device/taperecorder.html b/obj/item/device/taperecorder.html new file mode 100644 index 000000000000..6bb9d7add2d0 --- /dev/null +++ b/obj/item/device/taperecorder.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/device/taperecorder - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

tape recorder + + + +

+ + + +

Vars

time_left_warningSeconds under which to warn that the tape is almost up.
time_warnedWhether we've warned during this recording session that the tape is almost up.
+

Var Details

time_left_warning + + + + +

+

Seconds under which to warn that the tape is almost up.

time_warned + + + + +

+

Whether we've warned during this recording session that the tape is almost up.

+ + + diff --git a/obj/item/device/vulture_spotter_scope.html b/obj/item/device/vulture_spotter_scope.html new file mode 100644 index 000000000000..70c9918b30f4 --- /dev/null +++ b/obj/item/device/vulture_spotter_scope.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/device/vulture_spotter_scope - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

M707 spotter scope + + + +

+ + +

Vars

bound_rifleA weakref to the corresponding rifle
+

Var Details

bound_rifle + + + + +

+

A weakref to the corresponding rifle

+ + + diff --git a/obj/item/device/working_joe_pda.html b/obj/item/device/working_joe_pda.html new file mode 100644 index 000000000000..33ce5b4d9482 --- /dev/null +++ b/obj/item/device/working_joe_pda.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/device/working_joe_pda - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

KN5500 PDA + + + +

+ + + + + +

Vars

datacoreThe datacore storing all the information.
last_loginThe last person to login.
linkThe ID used to link all devices.
notify_soundsNotification sound
+

Var Details

datacore + + + + +

+

The datacore storing all the information.

last_login + + + + +

+

The last person to login.

+

The ID used to link all devices.

notify_sounds + + + + +

+

Notification sound

+ + + diff --git a/obj/item/evidencebag.html b/obj/item/evidencebag.html new file mode 100644 index 000000000000..63635f4d290f --- /dev/null +++ b/obj/item/evidencebag.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/evidencebag - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

evidence bag + + + +

+ + +

Procs

attack_selfsave the offset of the item +then remove it so it'll stay within the evidence bag +take a snapshot. (necessary to stop the underlays appearing under our inventory-HUD slots) ~Carn +and then return it +should look nicer for transparent stuff. not really that important, but hey.

Proc Details

attack_self +

+

save the offset of the item +then remove it so it'll stay within the evidence bag +take a snapshot. (necessary to stop the underlays appearing under our inventory-HUD slots) ~Carn +and then return it +should look nicer for transparent stuff. not really that important, but hey.

+ + + diff --git a/obj/item/explosive.html b/obj/item/explosive.html new file mode 100644 index 000000000000..209af86c71ca --- /dev/null +++ b/obj/item/explosive.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/explosive - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/item/explosive + + + +

+ + +

Vars

allow_star_shapeWhether a star shape is possible when the intensity meets CHEM_FIRE_STAR_THRESHOLD
+

Var Details

allow_star_shape + + + + +

+

Whether a star shape is possible when the intensity meets CHEM_FIRE_STAR_THRESHOLD

+ + + diff --git a/obj/item/explosive/grenade/nerve_gas.html b/obj/item/explosive/grenade/nerve_gas.html new file mode 100644 index 000000000000..15bbef819627 --- /dev/null +++ b/obj/item/explosive/grenade/nerve_gas.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/explosive/grenade/nerve_gas - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

CN20 canister grenade + + + +

+ + + + +

Vars

nerve_gasThe nerve gas datum
nerve_gas_radiusThe radius the gas will reach
nerve_gas_typeThe typepath of the nerve gas
+

Var Details

nerve_gas + + + + +

+

The nerve gas datum

nerve_gas_radius + + + + +

+

The radius the gas will reach

nerve_gas_type + + + + +

+

The typepath of the nerve gas

+ + + diff --git a/obj/item/explosive/grenade/sebb.html b/obj/item/explosive/grenade/sebb.html new file mode 100644 index 000000000000..e5d3fa1be5dd --- /dev/null +++ b/obj/item/explosive/grenade/sebb.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/explosive/grenade/sebb - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

G2 Electroshock grenade + + + +

+ + + + + + +

Vars

damageMaximum possible damage before falloff.
falloff_dam_reduction_multFactor to mutiply the effect range has on damage.
human_stam_dam_factorPost falloff calc damage is multipled by this to get human stamina damage
rangeMaximum range of effect
xeno_slowdown_numeratorPost falloff calc damage is divided by this to get xeno slowdown
+

Var Details

damage + + + + +

+

Maximum possible damage before falloff.

falloff_dam_reduction_mult + + + + +

+

Factor to mutiply the effect range has on damage.

human_stam_dam_factor + + + + +

+

Post falloff calc damage is multipled by this to get human stamina damage

range + + + + +

+

Maximum range of effect

xeno_slowdown_numerator + + + + +

+

Post falloff calc damage is divided by this to get xeno slowdown

+ + + diff --git a/obj/item/facepaint.html b/obj/item/facepaint.html new file mode 100644 index 000000000000..360f0fd7ca43 --- /dev/null +++ b/obj/item/facepaint.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/facepaint - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

facepaint + + + +

+ + +

Vars

openfor lipstick
+

Var Details

open + + + + +

+

for lipstick

+ + + diff --git a/obj/item/flag/plantable.html b/obj/item/flag/plantable.html new file mode 100644 index 000000000000..d62a73d4b799 --- /dev/null +++ b/obj/item/flag/plantable.html @@ -0,0 +1,85 @@ + + + + + + + /obj/item/flag/plantable - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

plantable flag + + + +

+ + + + + + + + + +

Vars

allies_requiredHow many nearby allies do we need for the stronger warcry to be played?
factionUsed to check if nearby mobs belong to a faction when calculating for the stronger warcry.
flag_typeThe typepath of the flag structure that gets spawned when the flag is planted.
play_warcryDoes the flag play a unique warcry when planted? (Only while on harm intent.)
warcry_cooldown_itemUsed to limit the spam of the warcry_extra_sound
warcry_extra_soundWhen there are more than 14 allies nearby, play this stronger warcry.
warcry_soundThe warcry's sound path.

Procs

plant_flagProc for turning the flag item into a structure.
+

Var Details

allies_required + + + + +

+

How many nearby allies do we need for the stronger warcry to be played?

faction + + + + +

+

Used to check if nearby mobs belong to a faction when calculating for the stronger warcry.

flag_type + + + + +

+

The typepath of the flag structure that gets spawned when the flag is planted.

play_warcry + + + + +

+

Does the flag play a unique warcry when planted? (Only while on harm intent.)

warcry_cooldown_item + + + + +

+

Used to limit the spam of the warcry_extra_sound

warcry_extra_sound + + + + +

+

When there are more than 14 allies nearby, play this stronger warcry.

warcry_sound + + + + +

+

The warcry's sound path.

Proc Details

plant_flag +

+

Proc for turning the flag item into a structure.

+ + + diff --git a/obj/item/folded_tent.html b/obj/item/folded_tent.html new file mode 100644 index 000000000000..5774278e3154 --- /dev/null +++ b/obj/item/folded_tent.html @@ -0,0 +1,71 @@ + + + + + + + /obj/item/folded_tent - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

folded abstract tent + + + +

+ + + + + + + +

Vars

dim_xRequired cleared area along X axis
dim_yRequired cleared area along Y axis
templateMap template datum used for tent
template_presetTents map template typepath
unrestricted_deploymentIf this tent can be deployed anywhere

Procs

check_areaCheck an area is clear for deployment of the tent
+

Var Details

dim_x + + + + +

+

Required cleared area along X axis

dim_y + + + + +

+

Required cleared area along Y axis

template + + + + +

+

Map template datum used for tent

template_preset + + + + +

+

Tents map template typepath

unrestricted_deployment + + + + +

+

If this tent can be deployed anywhere

Proc Details

check_area +

+

Check an area is clear for deployment of the tent

+ + + diff --git a/obj/item/fuel_cell.html b/obj/item/fuel_cell.html new file mode 100644 index 000000000000..d6386c7069b2 --- /dev/null +++ b/obj/item/fuel_cell.html @@ -0,0 +1,71 @@ + + + + + + + /obj/item/fuel_cell - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

WL-6 universal fuel cell + + + +

+ + + + + + + +

Vars

fuel_amountHow much fuel is in the reactor
max_fuel_amountMax amount that the cell can hold
new_cellIf the fuel cell has been used since last recharge

Procs

get_fuel_percentPercentage of fuel left in the cell
is_regeneratedWhether the fuel cell is full
modify_fuelincrease or decrease fuel, making sure it cannot go above the max
+

Var Details

fuel_amount + + + + +

+

How much fuel is in the reactor

max_fuel_amount + + + + +

+

Max amount that the cell can hold

new_cell + + + + +

+

If the fuel cell has been used since last recharge

Proc Details

get_fuel_percent +

+

Percentage of fuel left in the cell

is_regenerated +

+

Whether the fuel cell is full

modify_fuel +

+

increase or decrease fuel, making sure it cannot go above the max

+ + + diff --git a/obj/item/grab.html b/obj/item/grab.html new file mode 100644 index 000000000000..1debed267535 --- /dev/null +++ b/obj/item/grab.html @@ -0,0 +1,37 @@ + + + + + + + /obj/item/grab - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

grab + + + +

+ + +

Procs

progress_passiveAmazing what you can do with a bit of dexterity. +Strong mobs can lift above their own weight.

Proc Details

progress_passive +

+

Amazing what you can do with a bit of dexterity. +Strong mobs can lift above their own weight.

+ + + diff --git a/obj/item/handheld_distress_beacon.html b/obj/item/handheld_distress_beacon.html new file mode 100644 index 000000000000..98eb36705fb8 --- /dev/null +++ b/obj/item/handheld_distress_beacon.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/handheld_distress_beacon - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

PMC handheld distress beacon + + + +

+ +

handheld distress beacons used by goon chem retrieval team to call for PMC back up

+ + + + +

Vars

activeWhether beacon can be used, or has already been used
beacon_typeThe beacons faction that will be sent in message_admins
ert_pathsThe name of the ERT that will be passed to get_specific_call
ert_short_namesThe clickable version that will be sent in message_admins
recipientTells the user who the beacon will be sent to IC
+

Var Details

active + + + + +

+

Whether beacon can be used, or has already been used

beacon_type + + + + +

+

The beacons faction that will be sent in message_admins

ert_paths + + + + +

+

The name of the ERT that will be passed to get_specific_call

ert_short_names + + + + +

+

The clickable version that will be sent in message_admins

recipient + + + + +

+

Tells the user who the beacon will be sent to IC

+ + + diff --git a/obj/item/hardpoint.html b/obj/item/hardpoint.html new file mode 100644 index 000000000000..3914d4a16a68 --- /dev/null +++ b/obj/item/hardpoint.html @@ -0,0 +1,430 @@ + + + + + + + /obj/item/hardpoint - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/obj/item/hardpoint + + + +

+ +

Hardpoints are any items that attach to a base vehicle, such as wheels/treads, support systems and guns

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

activatableWhether hardpoint has activatable ability like shooting or zooming.
activation_soundsSounds to play when the module activated/fired.
allowed_seatWhich seat can use this module.
ammoCurrently loaded ammo that we shoot from.
auto_firingIf the gun is currently auto firing.
autofire_slow_multThe multiplier for how much slower this should fire in automatic mode. 1 is normal, 1.2 is 20% slower, 2 is 100% slower, etc. Protected due to it never needing to be edited.
backup_clipsSpare magazines that we can reload from.
being_repairedUsed to prevent welder click spam.
burst_amountHow many shots can the weapon shoot in burst? Anything less than 2 and you cannot toggle burst. Use modify_burst_amount and set_burst_amount instead of modifying this
burst_delayThe delay in between shots. Lower = less delay = faster. Use modify_burst_delay and set_burst_delay instead of modifying this
burst_firingIf the gun is currently burst firing.
damage_multiplierDetermines how much of any incoming damage is actually taken.
extra_delayWhen burst-firing, this number is extra time before the weapon can fire again.
fire_cooldownDelay before a new firing sequence can start.
fire_delayFor regular shots, how long to wait before firing again. Use modify_fire_delay and set_fire_delay instead of modifying this on the fly
firing_arcThe firing arc of this hardpoint.
gun_firemodeCurrent selected firemode of the gun.
gun_firemode_listList of allowed firemodes.
hdpt_layerVisual layer of hardpoint when on vehicle.
max_clipsMaximum amount of spare mags.
muzzle_flash_posList of offsets for where to place the muzzle flash for each direction.
originsOrigin coords of the hardpoint relative to the vehicle.
ownerThe vehicle this hardpoint is installed on.
projectile_typeThe type of projectile to fire
px_offsetsList of pixel offsets for each direction.
scatterHow much the bullet scatters when fired, in degrees.
shots_firedHow many bullets the gun fired while burst firing/auto firing.
slotWhich slot is this hardpoint in. Purely to check for conflicting hardpoints.
targetCurrently selected target to fire at. Set with set_target().
traits_to_giveAn assoc list in the format list(/datum/element/bullet_trait_to_give = list(...args)) +that will be given to a projectile fired from the hardpoint.

Procs

apply_buffApplying passive buffs like damage type resistance, speed, accuracy, cooldowns.
can_be_removedProc to be overridden if you want to have special conditions preventing the removal of the hardpoint. Add chat messages in this proc if you want to tell the player why
change_targetUpdate the target if you dragged your mouse.
clean_targetSet the target to its turf, so we keep shooting even when it was qdeled.
click_emptyPlays 'click' noise and announced to chat. Usually called when weapon empty.
display_ammoPrint how much ammo is left to chat.
fire_wrapperWrapper proc for the autofire system to ensure the important args aren't null.
get_origin_turfGet turf at hardpoint origin offset, used as the muzzle.
handle_fireActually fires the gun, sets up the projectile and fires it.
in_firing_arcDetermines whether something is in firing arc of a hardpoint.
on_installApply hardpoint effects to vehicle and self.
on_uninstallRemove hardpoint effects from vehicle and self.
play_firing_soundsSelects and plays a firing sound from the list.
recalculate_hardpoint_bonusesRecalculates hardpoint values based on vehicle modifiers.
remove_buffRemoving passive buffs like damage type resistance, speed, accuracy, cooldowns.
reset_fireClean all firing references.
set_auto_firingSetter proc for the automatic firing flag.
set_bullet_traitsPopulate traits_to_give in this proc
set_burst_delaySetter for burst_delay.
set_burst_firingSetter proc for the burst firing flag.
set_fire_cooldownStart cooldown to respect delay of firemode.
set_fire_delaySetter for fire_delay.
set_targetSet the target and take care of hard delete.
simulate_scatterAdjust target based on random scatter angle.
start_fireCheck if the gun can fire and add it to bucket autofire system if needed, or just fire the gun if not.
stop_fireReset variables used in firing and remove the gun from the autofire system.
try_fireTests if firing should be interrupted, otherwise fires.
+

Var Details

activatable + + + + +

+

Whether hardpoint has activatable ability like shooting or zooming.

activation_sounds + + + + +

+

Sounds to play when the module activated/fired.

allowed_seat + + + + +

+

Which seat can use this module.

ammo + + + + +

+

Currently loaded ammo that we shoot from.

auto_firing + + + + +

+

If the gun is currently auto firing.

autofire_slow_mult + + + + +

+

The multiplier for how much slower this should fire in automatic mode. 1 is normal, 1.2 is 20% slower, 2 is 100% slower, etc. Protected due to it never needing to be edited.

backup_clips + + + + +

+

Spare magazines that we can reload from.

being_repaired + + + + +

+

Used to prevent welder click spam.

burst_amount + + + + +

+

How many shots can the weapon shoot in burst? Anything less than 2 and you cannot toggle burst. Use modify_burst_amount and set_burst_amount instead of modifying this

burst_delay + + + + +

+

The delay in between shots. Lower = less delay = faster. Use modify_burst_delay and set_burst_delay instead of modifying this

burst_firing + + + + +

+

If the gun is currently burst firing.

damage_multiplier + + + + +

+

Determines how much of any incoming damage is actually taken.

extra_delay + + + + +

+

When burst-firing, this number is extra time before the weapon can fire again.

fire_cooldown + + + + +

+

Delay before a new firing sequence can start.

fire_delay + + + + +

+

For regular shots, how long to wait before firing again. Use modify_fire_delay and set_fire_delay instead of modifying this on the fly

firing_arc + + + + +

+

The firing arc of this hardpoint.

gun_firemode + + + + +

+

Current selected firemode of the gun.

gun_firemode_list + + + + +

+

List of allowed firemodes.

hdpt_layer + + + + +

+

Visual layer of hardpoint when on vehicle.

max_clips + + + + +

+

Maximum amount of spare mags.

muzzle_flash_pos + + + + +

+

List of offsets for where to place the muzzle flash for each direction.

origins + + + + +

+

Origin coords of the hardpoint relative to the vehicle.

owner + + + + +

+

The vehicle this hardpoint is installed on.

projectile_type + + + + +

+

The type of projectile to fire

px_offsets + + + + +

+

List of pixel offsets for each direction.

scatter + + + + +

+

How much the bullet scatters when fired, in degrees.

shots_fired + + + + +

+

How many bullets the gun fired while burst firing/auto firing.

slot + + + + +

+

Which slot is this hardpoint in. Purely to check for conflicting hardpoints.

target + + + + +

+

Currently selected target to fire at. Set with set_target().

traits_to_give + + + + +

+

An assoc list in the format list(/datum/element/bullet_trait_to_give = list(...args)) +that will be given to a projectile fired from the hardpoint.

Proc Details

apply_buff +

+

Applying passive buffs like damage type resistance, speed, accuracy, cooldowns.

can_be_removed +

+

Proc to be overridden if you want to have special conditions preventing the removal of the hardpoint. Add chat messages in this proc if you want to tell the player why

change_target +

+

Update the target if you dragged your mouse.

clean_target +

+

Set the target to its turf, so we keep shooting even when it was qdeled.

click_empty +

+

Plays 'click' noise and announced to chat. Usually called when weapon empty.

display_ammo +

+

Print how much ammo is left to chat.

fire_wrapper +

+

Wrapper proc for the autofire system to ensure the important args aren't null.

get_origin_turf +

+

Get turf at hardpoint origin offset, used as the muzzle.

handle_fire +

+

Actually fires the gun, sets up the projectile and fires it.

in_firing_arc +

+

Determines whether something is in firing arc of a hardpoint.

on_install +

+

Apply hardpoint effects to vehicle and self.

on_uninstall +

+

Remove hardpoint effects from vehicle and self.

play_firing_sounds +

+

Selects and plays a firing sound from the list.

recalculate_hardpoint_bonuses +

+

Recalculates hardpoint values based on vehicle modifiers.

remove_buff +

+

Removing passive buffs like damage type resistance, speed, accuracy, cooldowns.

reset_fire +

+

Clean all firing references.

set_auto_firing +

+

Setter proc for the automatic firing flag.

set_bullet_traits +

+

Populate traits_to_give in this proc

set_burst_delay +

+

Setter for burst_delay.

set_burst_firing +

+

Setter proc for the burst firing flag.

set_fire_cooldown +

+

Start cooldown to respect delay of firemode.

set_fire_delay +

+

Setter for fire_delay.

set_target +

+

Set the target and take care of hard delete.

simulate_scatter +

+

Adjust target based on random scatter angle.

start_fire +

+

Check if the gun can fire and add it to bucket autofire system if needed, or just fire the gun if not.

stop_fire +

+

Reset variables used in firing and remove the gun from the autofire system.

try_fire +

+

Tests if firing should be interrupted, otherwise fires.

+ + + diff --git a/obj/item/hardpoint/primary/arc_sentry.html b/obj/item/hardpoint/primary/arc_sentry.html new file mode 100644 index 000000000000..d995e88eb7a0 --- /dev/null +++ b/obj/item/hardpoint/primary/arc_sentry.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/hardpoint/primary/arc_sentry - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

RE700 Rotary Cannon + + + +

+ + + + + +

Vars

faction_groupWhat factions this sentry is aligned with
sentry_targetThe currently focused sentry target
targetsPotential targets the turret can shoot at
turret_rangeThe range that this turret can shoot at the furthest
+

Var Details

faction_group + + + + +

+

What factions this sentry is aligned with

sentry_target + + + + +

+

The currently focused sentry target

targets + + + + +

+

Potential targets the turret can shoot at

turret_range + + + + +

+

The range that this turret can shoot at the furthest

+ + + diff --git a/obj/item/hardpoint/primary/minigun.html b/obj/item/hardpoint/primary/minigun.html new file mode 100644 index 000000000000..a1203e58ae0b --- /dev/null +++ b/obj/item/hardpoint/primary/minigun.html @@ -0,0 +1,78 @@ + + + + + + + /obj/item/hardpoint/primary/minigun - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

LTAA-AP Minigun + + + +

+ + + + + + + + +

Vars

last_firedWhen it was last fired, related to world.time.
spin_stageIndex of stage_rate.
spindown_grace_timeGrace period before losing spin_stage.
spindown_timeCooldown time to reach min spin_stage.
spinup_timeActive firing time to reach max spin_stage.
stage_delay_multFire delay multiplier for current spin_stage.
stage_rateShots fired per fire_delay at a particular spin_stage.
+

Var Details

last_fired + + + + +

+

When it was last fired, related to world.time.

spin_stage + + + + +

+

Index of stage_rate.

spindown_grace_time + + + + +

+

Grace period before losing spin_stage.

spindown_time + + + + +

+

Cooldown time to reach min spin_stage.

spinup_time + + + + +

+

Active firing time to reach max spin_stage.

stage_delay_mult + + + + +

+

Fire delay multiplier for current spin_stage.

stage_rate + + + + +

+

Shots fired per fire_delay at a particular spin_stage.

+ + + diff --git a/obj/item/hardpoint/support/arc_antenna.html b/obj/item/hardpoint/support/arc_antenna.html new file mode 100644 index 000000000000..f9cd9e2400eb --- /dev/null +++ b/obj/item/hardpoint/support/arc_antenna.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/hardpoint/support/arc_antenna - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

U-56 Radar Antenna + + + +

+ + + +

Vars

deploy_animation_timeHow long the antenna deploy/retract animation is, keep accurate to the sprite in the dmi
deployingIf the antenna is already deploying
+

Var Details

deploy_animation_time + + + + +

+

How long the antenna deploy/retract animation is, keep accurate to the sprite in the dmi

deploying + + + + +

+

If the antenna is already deploying

+ + + diff --git a/obj/item/hoverpack.html b/obj/item/hoverpack.html new file mode 100644 index 000000000000..cf5f9ec6947e --- /dev/null +++ b/obj/item/hoverpack.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/hoverpack - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

experimental hoverpack + + + +

+ + + + + +

Vars

can_hoverIf you can use it, used for cooldowns.
max_distanceHow many tiles you can leap to at once.
reservoirReservoir that stores the reagents that fuel the propellant for the hoverpack. Or something like that..
speedHow quick you will fly
+

Var Details

can_hover + + + + +

+

If you can use it, used for cooldowns.

max_distance + + + + +

+

How many tiles you can leap to at once.

reservoir + + + + +

+

Reservoir that stores the reagents that fuel the propellant for the hoverpack. Or something like that..

speed + + + + +

+

How quick you will fly

+ + + diff --git a/obj/item/large_shrapnel/at_rocket_dud.html b/obj/item/large_shrapnel/at_rocket_dud.html new file mode 100644 index 000000000000..418039bd82c1 --- /dev/null +++ b/obj/item/large_shrapnel/at_rocket_dud.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/large_shrapnel/at_rocket_dud - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

unexploded anti-tank rocket + + + +

+ + + + +

Vars

drop_sensitivity% chance of it detonating when dropped. THIS ALSO TRIGGERS WHEN PUTTING IT IN A BAG.
impact_sensitivity% chance of it detonating when thrown and hitting an atom.
mattersame as custom warhead
+

Var Details

drop_sensitivity + + + + +

+

% chance of it detonating when dropped. THIS ALSO TRIGGERS WHEN PUTTING IT IN A BAG.

impact_sensitivity + + + + +

+

% chance of it detonating when thrown and hitting an atom.

matter + + + + +

+

same as custom warhead

+ + + diff --git a/obj/item/limb.html b/obj/item/limb.html new file mode 100644 index 000000000000..ec492b702272 --- /dev/null +++ b/obj/item/limb.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/limb - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/item/limb + + + +

+ + + +

Vars

bone_typeWhat bone would be in this limb?
flayedPredators can flay limbs to eventually turn them into bones for their armor
+

Var Details

bone_type + + + + +

+

What bone would be in this limb?

flayed + + + + +

+

Predators can flay limbs to eventually turn them into bones for their armor

+ + + diff --git a/obj/item/maintenance_jack.html b/obj/item/maintenance_jack.html new file mode 100644 index 000000000000..03323bfad77c --- /dev/null +++ b/obj/item/maintenance_jack.html @@ -0,0 +1,78 @@ + + + + + + + /obj/item/maintenance_jack - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

K92 Maintenance Jack + + + +

+ + + + + + + + +

Vars

crowbar_modeWhether the Maintenance Jack is on crowbar or wrench mode
prying_timeHow long it takes (in seconds) to pry open an airlock
requires_skills_unboltWhether you get the speed penalty from not having engi 3
requires_superstrength_pryWhether you need the "super strength" trait to pry open doors
resin_prying_timeHow long it takes (in seconds) to pry open a resin door
unbolt_timeHow long it takes (in seconds) to unbolt an airlock
unskilled_unbolt_timeHow long extra will it take (in seconds) people who do not have engi 3 (if requires_skills_unbolt is true)
+

Var Details

crowbar_mode + + + + +

+

Whether the Maintenance Jack is on crowbar or wrench mode

prying_time + + + + +

+

How long it takes (in seconds) to pry open an airlock

requires_skills_unbolt + + + + +

+

Whether you get the speed penalty from not having engi 3

requires_superstrength_pry + + + + +

+

Whether you need the "super strength" trait to pry open doors

resin_prying_time + + + + +

+

How long it takes (in seconds) to pry open a resin door

unbolt_time + + + + +

+

How long it takes (in seconds) to unbolt an airlock

unskilled_unbolt_time + + + + +

+

How long extra will it take (in seconds) people who do not have engi 3 (if requires_skills_unbolt is true)

+ + + diff --git a/obj/item/mortar_shell.html b/obj/item/mortar_shell.html new file mode 100644 index 000000000000..334458aec6f4 --- /dev/null +++ b/obj/item/mortar_shell.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/mortar_shell - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

80mm mortar shell + + + +

+ + +

Vars

burningis it currently on fire and about to explode?
+

Var Details

burning + + + + +

+

is it currently on fire and about to explode?

+ + + diff --git a/obj/item/organ.html b/obj/item/organ.html new file mode 100644 index 000000000000..17e3d8fe75b0 --- /dev/null +++ b/obj/item/organ.html @@ -0,0 +1,78 @@ + + + + + + + /obj/item/organ - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

organ + + + +

+ + + + + + + + +

Vars

dead_iconIcon used when the organ dies.
freshSquirts of blood left in it.
healthProcess() ticks before death.
organ_dataStores info when removed.
organ_tagWhat slot does it go in?
organ_typeUsed to spawn the relevant organ data when produced via a machine or spawn().
roboticIs the limb prosthetic?
+

Var Details

dead_icon + + + + +

+

Icon used when the organ dies.

fresh + + + + +

+

Squirts of blood left in it.

health + + + + +

+

Process() ticks before death.

organ_data + + + + +

+

Stores info when removed.

organ_tag + + + + +

+

What slot does it go in?

organ_type + + + + +

+

Used to spawn the relevant organ data when produced via a machine or spawn().

robotic + + + + +

+

Is the limb prosthetic?

+ + + diff --git a/obj/item/organ/xeno.html b/obj/item/organ/xeno.html new file mode 100644 index 000000000000..e2a89289e8d4 --- /dev/null +++ b/obj/item/organ/xeno.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/organ/xeno - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

acidic heart + + + +

+ + + +

Vars

caste_originthe caste in a string, which is used in a xenoanalyzer
research_valuevalue of the organ in the recycler, heavily varies from size and tier
+

Var Details

caste_origin + + + + +

+

the caste in a string, which is used in a xenoanalyzer

research_value + + + + +

+

value of the organ in the recycler, heavily varies from size and tier

+ + + diff --git a/obj/item/pamphlet/skill/powerloader.html b/obj/item/pamphlet/skill/powerloader.html new file mode 100644 index 000000000000..338e9b89fc6c --- /dev/null +++ b/obj/item/pamphlet/skill/powerloader.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/pamphlet/skill/powerloader - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

powerloader instructional pamphlet + + + +

+ + +

Vars

bypass_pamphlet_limitit's really not necessary to stop people from learning powerloader skill
+

Var Details

bypass_pamphlet_limit + + + + +

+

it's really not necessary to stop people from learning powerloader skill

+ + + diff --git a/obj/item/pamphlet/trait.html b/obj/item/pamphlet/trait.html new file mode 100644 index 000000000000..03547fcabe7b --- /dev/null +++ b/obj/item/pamphlet/trait.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/pamphlet/trait - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/item/pamphlet/trait + + + +

+ + +

Vars

trait_to_giveWhat trait to give the user
+

Var Details

trait_to_give + + + + +

+

What trait to give the user

+ + + diff --git a/obj/item/pipe.html b/obj/item/pipe.html new file mode 100644 index 000000000000..45173370a763 --- /dev/null +++ b/obj/item/pipe.html @@ -0,0 +1,45 @@ + + + + + + + /obj/item/pipe - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

pipe + + + +

+ + +

Procs

afterattackZ-Level stuff +Z-Level stuff +Supply and scrubbers pipes +Z-Level stuff +Z-Level stuff +Supply and scrubbers pipes

Proc Details

afterattack +

+

Z-Level stuff +Z-Level stuff +Supply and scrubbers pipes +Z-Level stuff +Z-Level stuff +Supply and scrubbers pipes

+ + + diff --git a/obj/item/pizzabox/mystery.html b/obj/item/pizzabox/mystery.html new file mode 100644 index 000000000000..6eb31870dcbe --- /dev/null +++ b/obj/item/pizzabox/mystery.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/pizzabox/mystery - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/obj/item/pizzabox/mystery + + + +

+ + +

Procs

InitializeMystery Pizza, made with random ingredients!

Proc Details

Initialize +

+

Mystery Pizza, made with random ingredients!

+ + + diff --git a/obj/item/prop/geiger_counter.html b/obj/item/prop/geiger_counter.html new file mode 100644 index 000000000000..dfc364bcb012 --- /dev/null +++ b/obj/item/prop/geiger_counter.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/prop/geiger_counter - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

geiger counter + + + +

+ + + + + + +

Vars

batteryBattery inside geiger counter
disabled_stateIconstate of geiger counter when off
enabled_stateIconstate of geiger counter when on
starting_batteryNew battery it will spawn with
toggled_onWhether the geiger counter is on or off
+

Var Details

battery + + + + +

+

Battery inside geiger counter

disabled_state + + + + +

+

Iconstate of geiger counter when off

enabled_state + + + + +

+

Iconstate of geiger counter when on

starting_battery + + + + +

+

New battery it will spawn with

toggled_on + + + + +

+

Whether the geiger counter is on or off

+ + + diff --git a/obj/item/prop/helmetgarb/family_photo.html b/obj/item/prop/helmetgarb/family_photo.html new file mode 100644 index 000000000000..5a75ae03d511 --- /dev/null +++ b/obj/item/prop/helmetgarb/family_photo.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/prop/helmetgarb/family_photo - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

family photo + + + +

+ + + + + + +

Vars

ownerThe human who spawns with the photo
owner_factionThe belonging human faction
owner_nameThe belonging human name
scribbleText written on the back

Procs

set_ownerSets the owner of the family photo to the human it spawns with, needs var/source for signals
+

Var Details

owner + + + + +

+

The human who spawns with the photo

owner_faction + + + + +

+

The belonging human faction

owner_name + + + + +

+

The belonging human name

scribble + + + + +

+

Text written on the back

Proc Details

set_owner +

+

Sets the owner of the family photo to the human it spawns with, needs var/source for signals

+ + + diff --git a/obj/item/prop/helmetgarb/helmet_nvg.html b/obj/item/prop/helmetgarb/helmet_nvg.html new file mode 100644 index 000000000000..d62676874839 --- /dev/null +++ b/obj/item/prop/helmetgarb/helmet_nvg.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/prop/helmetgarb/helmet_nvg - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

M2 night vision goggles + + + +

+ + +

Vars

cell_max_chargeHow much charge the cell should have at most. -1 is infinite
+

Var Details

cell_max_charge + + + + +

+

How much charge the cell should have at most. -1 is infinite

+ + + diff --git a/obj/item/prop/prop_gun.html b/obj/item/prop/prop_gun.html new file mode 100644 index 000000000000..4ed490eda27d --- /dev/null +++ b/obj/item/prop/prop_gun.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/prop/prop_gun - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

prop gun + + + +

+ +

The source, which the skin will be copied from +The prop itself, which the skin will be copied to

+

Procs

set_gun_skinMakes the gun look similar to the source, using the source as an atom reference

Proc Details

set_gun_skin +

+

Makes the gun look similar to the source, using the source as an atom reference

+ + + diff --git a/obj/item/prop/replacer.html b/obj/item/prop/replacer.html new file mode 100644 index 000000000000..65649802255f --- /dev/null +++ b/obj/item/prop/replacer.html @@ -0,0 +1,37 @@ + + + + + + + /obj/item/prop/replacer - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/item/prop/replacer + + + +

+ +

A prop that acts as a replacement for another item, mimicking their looks. +Mainly used in Reqs Tutorial to provide the full item selections without side effects.

+

Vars

original_typeThe type that this object is taking the place of
+

Var Details

original_type + + + + +

+

The type that this object is taking the place of

+ + + diff --git a/obj/item/reagent_container.html b/obj/item/reagent_container.html new file mode 100644 index 000000000000..f84f7f51930b --- /dev/null +++ b/obj/item/reagent_container.html @@ -0,0 +1,92 @@ + + + + + + + /obj/item/reagent_container - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Container + + + +

+ + + + + + + + + + +

Vars

amount_per_transfer_from_thisHow many units of reagent get transfered out of the container at a time
has_set_transfer_actionWhether the container can have the set transfer amount action at all
possible_transfer_amountsA list of possible amounts that can be transferred
reagent_desc_overrideDoes it have a special examining mechanic that should override the normal /reagent_containers examine proc?
transparentCan we see what's in it?
volumeThe maximum volume the container can hold

Procs

display_contentsShows the reagent amount if the examining user is sufficiently skilled
get_reagent_list_textReturns a string listing all reagents (and their volume) in the container
show_reagent_infoWhether the user can see the amount or reagents inside
+

Var Details

amount_per_transfer_from_this + + + + +

+

How many units of reagent get transfered out of the container at a time

has_set_transfer_action + + + + +

+

Whether the container can have the set transfer amount action at all

possible_transfer_amounts + + + + +

+

A list of possible amounts that can be transferred

reagent_desc_override + + + + +

+

Does it have a special examining mechanic that should override the normal /reagent_containers examine proc?

transparent + + + + +

+

Can we see what's in it?

volume + + + + +

+

The maximum volume the container can hold

Proc Details

display_contents +

+

Shows the reagent amount if the examining user is sufficiently skilled

get_reagent_list_text +

+

Returns a string listing all reagents (and their volume) in the container

show_reagent_info +

+

Whether the user can see the amount or reagents inside

+ + + diff --git a/obj/item/reagent_container/blood.html b/obj/item/reagent_container/blood.html new file mode 100644 index 000000000000..780e00eeed79 --- /dev/null +++ b/obj/item/reagent_container/blood.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/reagent_container/blood - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

blood pack + + + +

+ + +

Procs

bad_disconnectUsed to standardize effects of a blood bag disconnecting improperly

Proc Details

bad_disconnect +

+

Used to standardize effects of a blood bag disconnecting improperly

+ + + diff --git a/obj/item/reagent_container/food.html b/obj/item/reagent_container/food.html new file mode 100644 index 000000000000..df69e420938f --- /dev/null +++ b/obj/item/reagent_container/food.html @@ -0,0 +1,29 @@ + + + + + + + /obj/item/reagent_container/food - byond + + +
+ byond - + Modules - + Types +
+
+

/obj/item/reagent_container/food + + + +

+ +

Droppers. END

+

Food.

+ + + diff --git a/obj/item/reagent_container/food/drinks/bottle.html b/obj/item/reagent_container/food/drinks/bottle.html new file mode 100644 index 000000000000..b6212b6cd8cd --- /dev/null +++ b/obj/item/reagent_container/food/drinks/bottle.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/reagent_container/food/drinks/bottle - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/obj/item/reagent_container/food/drinks/bottle + + + +

+ +

Alchohol bottles and juice mixers! -Agouri

+ +

Vars

isGlassThis excludes all the juices and dairy in cartons that are also defined in this file.

Procs

smashAudio/visual bottle breaking effects start here
+

Var Details

isGlass + + + + +

+

This excludes all the juices and dairy in cartons that are also defined in this file.

Proc Details

smash +

+

Audio/visual bottle breaking effects start here

+ + + diff --git a/obj/item/reagent_container/spray.html b/obj/item/reagent_container/spray.html new file mode 100644 index 000000000000..b82abcc3bda6 --- /dev/null +++ b/obj/item/reagent_container/spray.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/reagent_container/spray - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

spray bottle + + + +

+ + + + + + +

Vars

last_useThe world.time it was last used
safetyWhether you can spray the bottle
spray_sizeHow many tiles the spray will move
spray_sizesThe spray_size based on the transfer amount
use_delayThe delay between uses
+

Var Details

last_use + + + + +

+

The world.time it was last used

safety + + + + +

+

Whether you can spray the bottle

spray_size + + + + +

+

How many tiles the spray will move

spray_sizes + + + + +

+

The spray_size based on the transfer amount

use_delay + + + + +

+

The delay between uses

+ + + diff --git a/obj/item/research_upgrades.html b/obj/item/research_upgrades.html new file mode 100644 index 000000000000..b6b539dcf9ca --- /dev/null +++ b/obj/item/research_upgrades.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/research_upgrades - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Research upgrade + + + +

+ + +

Vars

valuetechnology stored on this disk, goes through one to whatever levels of upgrades there are.
+

Var Details

value + + + + +

+

technology stored on this disk, goes through one to whatever levels of upgrades there are.

+ + + diff --git a/obj/item/restraint.html b/obj/item/restraint.html new file mode 100644 index 000000000000..e3dfba6185ee --- /dev/null +++ b/obj/item/restraint.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/restraint - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/item/restraint + + + +

+ + + + + + +

Vars

breakouttimeHow long to break out
cuff_delayhow many deciseconds it takes to cuff someone
manualIf can be applied to people manually
single_usedetermines if handcuffs will be deleted on removal
target_zoneSLOT_HANDS or SLOT_LEGS, for handcuffs or legcuffs
+

Var Details

breakouttime + + + + +

+

How long to break out

cuff_delay + + + + +

+

how many deciseconds it takes to cuff someone

manual + + + + +

+

If can be applied to people manually

single_use + + + + +

+

determines if handcuffs will be deleted on removal

target_zone + + + + +

+

SLOT_HANDS or SLOT_LEGS, for handcuffs or legcuffs

+ + + diff --git a/obj/item/spacecash.html b/obj/item/spacecash.html new file mode 100644 index 000000000000..a6fb7a2a69da --- /dev/null +++ b/obj/item/spacecash.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/spacecash - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

15 dollars + + + +

+ + +

Vars

counterfeit'Counterfeit' bills cannot be inserted into the black market for dosh. Their worth is also quartered when entered into an ATM.
+

Var Details

counterfeit + + + + +

+

'Counterfeit' bills cannot be inserted into the black market for dosh. Their worth is also quartered when entered into an ATM.

+ + + diff --git a/obj/item/spec_kit.html b/obj/item/spec_kit.html new file mode 100644 index 000000000000..adaec6843b7c --- /dev/null +++ b/obj/item/spec_kit.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/spec_kit - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

specialist kit + + + +

+ + +

Vars

squad_assignment_updateUsed for cryo specs who already have "foxtrot" appended to their ID assignments
+

Var Details

squad_assignment_update + + + + +

+

Used for cryo specs who already have "foxtrot" appended to their ID assignments

+ + + diff --git a/obj/item/stack.html b/obj/item/stack.html new file mode 100644 index 000000000000..78f01059db26 --- /dev/null +++ b/obj/item/stack.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/stack - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/item/stack + + + +

+ + + + + +

Vars

amount_spritesdoes it have sprites for extra amount, like metal, plasteel, or wood
display_maptextdoes it show amount on top of the icon
max_amountalso see stack recipes initialisation, param "max_res_amount" must be equal to this max_amount
stack_idused to determine if two stacks are of the same kind.
+

Var Details

amount_sprites + + + + +

+

does it have sprites for extra amount, like metal, plasteel, or wood

display_maptext + + + + +

+

does it show amount on top of the icon

max_amount + + + + +

+

also see stack recipes initialisation, param "max_res_amount" must be equal to this max_amount

stack_id + + + + +

+

used to determine if two stacks are of the same kind.

+ + + diff --git a/obj/item/storage.html b/obj/item/storage.html new file mode 100644 index 000000000000..1063e8aa051f --- /dev/null +++ b/obj/item/storage.html @@ -0,0 +1,129 @@ + + + + + + + /obj/item/storage - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

storage + + + +

+ +

This contains what previously was known as stored_start, stored_continue, and stored_end

+ + + + + + + + + + + +

Vars

can_hold_skillWhether to use map-variant skins. +Special can_holds that require a skill to insert, it is an associated list of typepath = list(skilltype, skilllevel)
can_hold_skill_onlyDictates whether or not we only check for items in can_hold_skill rather than can_hold or free usage
required_skill_for_nest_openingThe required skill for opening this storage if it is inside another storage type
required_skill_level_for_nest_openingThe required level of a skill for opening this storage if it is inside another storage type

Procs

_item_insertionInserts the item. Separate proc because handle_item_insertion isn't guaranteed to insert +and it therefore isn't safe to override it before calling parent. Updates icon when done. +Can be called directly but only if the item was spawned inside src - handle_item_insertion is safer. +W is always an item. stop_warning prevents messaging. user may be null.
_item_removalSeparate proc because remove_from_storage isn't guaranteed to finish. Can be called directly if the target atom exists and is an item. Updates icon when done.
handle_item_insertionHandler for inserting items. It does not perform any checks of whether an item can or can't be inserted into the storage item. +That's done by can_be_inserted(). Its checks are whether the item exists, is an item, and (if it's held by a mob) the mob can drop it. +The stop_warning parameter will stop the insertion message from being displayed. It is intended for cases where you are inserting multiple +items at once, such as when picking up all the items on a tile with one click. +user can be null, it refers to the potential mob doing the insertion.
has_roomReturns TRUE if there is room for the given item. W_class_override allows checking for just a generic W_class, meant for checking shotgun handfuls without having to spawn and delete one just to check.
hide_fromUsed to hide the storage's inventory screen.
post_skin_selectionThings to be done after selecting a map skin (if any) and before adding inventory and updating icon for the first time. Most likely saving basic icon state.
remove_from_storageCall this proc to handle the removal of an item from the storage item. The item will be moved to the atom sent as new_target.
storage_closeUsed to close the storage item. Used a lot - if tying it to special effects, use a content_watchers check to make sure it's closed properly and no-one's looking inside.
+

Var Details

can_hold_skill + + + + +

+

Whether to use map-variant skins. +Special can_holds that require a skill to insert, it is an associated list of typepath = list(skilltype, skilllevel)

can_hold_skill_only + + + + +

+

Dictates whether or not we only check for items in can_hold_skill rather than can_hold or free usage

required_skill_for_nest_opening + + + + +

+

The required skill for opening this storage if it is inside another storage type

required_skill_level_for_nest_opening + + + + +

+

The required level of a skill for opening this storage if it is inside another storage type

Proc Details

_item_insertion +

+

Inserts the item. Separate proc because handle_item_insertion isn't guaranteed to insert +and it therefore isn't safe to override it before calling parent. Updates icon when done. +Can be called directly but only if the item was spawned inside src - handle_item_insertion is safer. +W is always an item. stop_warning prevents messaging. user may be null.

_item_removal +

+

Separate proc because remove_from_storage isn't guaranteed to finish. Can be called directly if the target atom exists and is an item. Updates icon when done.

handle_item_insertion +

+

Handler for inserting items. It does not perform any checks of whether an item can or can't be inserted into the storage item. +That's done by can_be_inserted(). Its checks are whether the item exists, is an item, and (if it's held by a mob) the mob can drop it. +The stop_warning parameter will stop the insertion message from being displayed. It is intended for cases where you are inserting multiple +items at once, such as when picking up all the items on a tile with one click. +user can be null, it refers to the potential mob doing the insertion.

has_room +

+

Returns TRUE if there is room for the given item. W_class_override allows checking for just a generic W_class, meant for checking shotgun handfuls without having to spawn and delete one just to check.

hide_from +

+

Used to hide the storage's inventory screen.

post_skin_selection +

+

Things to be done after selecting a map skin (if any) and before adding inventory and updating icon for the first time. Most likely saving basic icon state.

remove_from_storage +

+

Call this proc to handle the removal of an item from the storage item. The item will be moved to the atom sent as new_target.

storage_close +

+

Used to close the storage item. Used a lot - if tying it to special effects, use a content_watchers check to make sure it's closed properly and no-one's looking inside.

+ + + diff --git a/obj/item/storage/backpack/marine/satchel/rto.html b/obj/item/storage/backpack/marine/satchel/rto.html new file mode 100644 index 000000000000..effb7721f68f --- /dev/null +++ b/obj/item/storage/backpack/marine/satchel/rto.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/storage/backpack/marine/satchel/rto - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

USCM Radio Telephone Pack + + + +

+ + +

Procs

autoset_phone_idAutomatically sets the phone_id based on the current or updated user

Proc Details

autoset_phone_id +

+

Automatically sets the phone_id based on the current or updated user

+ + + diff --git a/obj/item/storage/belt.html b/obj/item/storage/belt.html new file mode 100644 index 000000000000..eac7f03f52c8 --- /dev/null +++ b/obj/item/storage/belt.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/storage/belt - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

belt + + + +

+ + +

Vars

flapTRUE Means that it closes a flap over its contents, and therefore update_icon should lift that flap when opened. If it doesn't have _half and _full iconstates, this doesn't matter either way.
+

Var Details

flap + + + + +

+

TRUE Means that it closes a flap over its contents, and therefore update_icon should lift that flap when opened. If it doesn't have _half and _full iconstates, this doesn't matter either way.

+ + + diff --git a/obj/item/storage/belt/gun.html b/obj/item/storage/belt/gun.html new file mode 100644 index 000000000000..e6f2697d3e6b --- /dev/null +++ b/obj/item/storage/belt/gun.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/storage/belt/gun - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

pistol belt + + + +

+ +

GUN BELTS

+ +

Vars

base_iconUsed to get flap overlay states as inserting a gun changes icon state.
holster_slotsArray of holster slots and stats to use for them. First layer is "1", "2" etc. Guns are stored in both the slot and the holstered_guns list which keeps track of which was last inserted.
+

Var Details

base_icon + + + + +

+

Used to get flap overlay states as inserting a gun changes icon state.

holster_slots + + + + +

+

Array of holster slots and stats to use for them. First layer is "1", "2" etc. Guns are stored in both the slot and the holstered_guns list which keeps track of which was last inserted.

+ + + diff --git a/obj/item/storage/large_holster.html b/obj/item/storage/large_holster.html new file mode 100644 index 000000000000..c984f4d17cd0 --- /dev/null +++ b/obj/item/storage/large_holster.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/storage/large_holster - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Rifle Holster + + + +

+ + +

Vars

base_iconIcon/item states change based on contents; this stores base icon state.
+

Var Details

base_icon + + + + +

+

Icon/item states change based on contents; this stores base icon state.

+ + + diff --git a/obj/item/storage/large_holster/m39.html b/obj/item/storage/large_holster/m39.html new file mode 100644 index 000000000000..7b02365e3e9e --- /dev/null +++ b/obj/item/storage/large_holster/m39.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/storage/large_holster/m39 - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

M276 pattern M39 holster rig + + + +

+ + + +

Vars

gun_offsetGuns have a hud offset that throws the vis_contents alignment off.
gun_scalingWhether the gun had pixel scaling set before being holstered.
+

Var Details

gun_offset + + + + +

+

Guns have a hud offset that throws the vis_contents alignment off.

gun_scaling + + + + +

+

Whether the gun had pixel scaling set before being holstered.

+ + + diff --git a/obj/item/storage/pouch.html b/obj/item/storage/pouch.html new file mode 100644 index 000000000000..49bf74826915 --- /dev/null +++ b/obj/item/storage/pouch.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/storage/pouch - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

abstract pouch + + + +

+ + +

Vars

flapIf it closes a flap over its contents, and therefore update_icon should lift that flap when opened. If it doesn't have _half and _full iconstates, this doesn't matter either way.
+

Var Details

flap + + + + +

+

If it closes a flap over its contents, and therefore update_icon should lift that flap when opened. If it doesn't have _half and _full iconstates, this doesn't matter either way.

+ + + diff --git a/obj/item/storage/pouch/pistol.html b/obj/item/storage/pouch/pistol.html new file mode 100644 index 000000000000..90e54486f0a9 --- /dev/null +++ b/obj/item/storage/pouch/pistol.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/storage/pouch/pistol - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

sidearm pouch + + + +

+ +

Pistol pouch.

+

Vars

current_gunDisplay code pulled from belt.dm gun belt. Can shave quite a lot off because this pouch can only hold one item at a time.
+

Var Details

current_gun + + + + +

+

Display code pulled from belt.dm gun belt. Can shave quite a lot off because this pouch can only hold one item at a time.

+ + + diff --git a/obj/item/storage/toolkit.html b/obj/item/storage/toolkit.html new file mode 100644 index 000000000000..618858dd34fe --- /dev/null +++ b/obj/item/storage/toolkit.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/storage/toolkit - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

engineer kit + + + +

+ + +

Vars

icon_fullicon state to use when kit is full
+

Var Details

icon_full + + + + +

+

icon state to use when kit is full

+ + + diff --git a/obj/item/tape.html b/obj/item/tape.html new file mode 100644 index 000000000000..63fb7b8b946a --- /dev/null +++ b/obj/item/tape.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/tape - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

tape + + + +

+ + + + + +

Vars

flipped_nameused to store the tape's name for one side and the other side
initial_icon_stateBecause we can't expect God to do all the work.
storedinfoNumbered list of chat messages the recorder has heard with spans and prepended timestamps. Used for playback and transcription.
timestampNumbered list of seconds the messages in the previous list appear at on the tape. Used by playback to get the timing right.
+

Var Details

flipped_name + + + + +

+

used to store the tape's name for one side and the other side

initial_icon_state + + + + +

+

Because we can't expect God to do all the work.

storedinfo + + + + +

+

Numbered list of chat messages the recorder has heard with spans and prepended timestamps. Used for playback and transcription.

timestamp + + + + +

+

Numbered list of seconds the messages in the previous list appear at on the tape. Used by playback to get the timing right.

+ + + diff --git a/obj/item/tool/extinguisher/mini.html b/obj/item/tool/extinguisher/mini.html new file mode 100644 index 000000000000..9a30fd9e5776 --- /dev/null +++ b/obj/item/tool/extinguisher/mini.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/tool/extinguisher/mini - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

fire extinguisher + + + +

+ + +

Vars

hitsoundit is much lighter, after all.
+

Var Details

hitsound + + + + +

+

it is much lighter, after all.

+ + + diff --git a/obj/item/tool/extinguisher/pyro/atmos_tank.html b/obj/item/tool/extinguisher/pyro/atmos_tank.html new file mode 100644 index 000000000000..a47cad2b5084 --- /dev/null +++ b/obj/item/tool/extinguisher/pyro/atmos_tank.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/tool/extinguisher/pyro/atmos_tank - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/item/tool/extinguisher/pyro/atmos_tank + + + +

+ + +

Vars

max_waterso it never runs out, theoretically
+

Var Details

max_water + + + + +

+

so it never runs out, theoretically

+ + + diff --git a/obj/item/tool/hand_labeler.html b/obj/item/tool/hand_labeler.html new file mode 100644 index 000000000000..0aa0775ce111 --- /dev/null +++ b/obj/item/tool/hand_labeler.html @@ -0,0 +1,47 @@ + + + + + + + /obj/item/tool/hand_labeler - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

hand labeler + + + +

+ + + +

Vars

modeoff or on.

Procs

attackbyAllow the user to refill the labeller +@I what is the item trying to be used +@user what is using paper on the handler
+

Var Details

mode + + + + +

+

off or on.

Proc Details

attackby +

+

Allow the user to refill the labeller +@I what is the item trying to be used +@user what is using paper on the handler

+ + + diff --git a/obj/item/tool/kitchen/tray.html b/obj/item/tool/kitchen/tray.html new file mode 100644 index 000000000000..e0c4f1fdb6b9 --- /dev/null +++ b/obj/item/tool/kitchen/tray.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/tool/kitchen/tray - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

tray + + + +

+ + +

Vars

cooldownshield bash cooldown. based on world.time
+

Var Details

cooldown + + + + +

+

shield bash cooldown. based on world.time

+ + + diff --git a/obj/item/tool/kitchen/utensil.html b/obj/item/tool/kitchen/utensil.html new file mode 100644 index 000000000000..f1df26a1fdbb --- /dev/null +++ b/obj/item/tool/kitchen/utensil.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/tool/kitchen/utensil - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/item/tool/kitchen/utensil + + + +

+ + +

Vars

loadedDescriptive string for currently loaded food object.
+

Var Details

loaded + + + + +

+

Descriptive string for currently loaded food object.

+ + + diff --git a/obj/item/tool/pen.html b/obj/item/tool/pen.html new file mode 100644 index 000000000000..1392e3cd89ab --- /dev/null +++ b/obj/item/tool/pen.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/tool/pen - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

pen + + + +

+ + +

Vars

pen_colorwhat color the ink is!
+

Var Details

pen_color + + + + +

+

what color the ink is!

+ + + diff --git a/obj/item/tool/pen/fountain.html b/obj/item/tool/pen/fountain.html new file mode 100644 index 000000000000..e5b1fb8ef23f --- /dev/null +++ b/obj/item/tool/pen/fountain.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/tool/pen/fountain - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

fountain pen + + + +

+ + +

Procs

set_ownerSets the owner of the pen to who it spawns with, requires var/source for signals

Proc Details

set_owner +

+

Sets the owner of the pen to who it spawns with, requires var/source for signals

+ + + diff --git a/obj/item/tool/pickaxe.html b/obj/item/tool/pickaxe.html new file mode 100644 index 000000000000..9aad922d5f25 --- /dev/null +++ b/obj/item/tool/pickaxe.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/tool/pickaxe - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

pickaxe + + + +

+ + +

Vars

digspeedmoving the delay to an item var so R&D can make improved picks. --NEO
+

Var Details

digspeed + + + + +

+

moving the delay to an item var so R&D can make improved picks. --NEO

+ + + diff --git a/obj/item/tool/pickaxe/diamonddrill.html b/obj/item/tool/pickaxe/diamonddrill.html new file mode 100644 index 000000000000..9490032d1f5c --- /dev/null +++ b/obj/item/tool/pickaxe/diamonddrill.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/tool/pickaxe/diamonddrill - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

diamond mining drill + + + +

+ + +

Vars

digspeedDigs through walls, girders, and can dig up sand
+

Var Details

digspeed + + + + +

+

Digs through walls, girders, and can dig up sand

+ + + diff --git a/obj/item/tool/pickaxe/drill.html b/obj/item/tool/pickaxe/drill.html new file mode 100644 index 000000000000..d4b0f9c122ad --- /dev/null +++ b/obj/item/tool/pickaxe/drill.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/tool/pickaxe/drill - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mining drill + + + +

+ + +

Vars

nameCan dig sand as well!
+

Var Details

name + + + + +

+

Can dig sand as well!

+ + + diff --git a/obj/item/tool/pickaxe/jackhammer.html b/obj/item/tool/pickaxe/jackhammer.html new file mode 100644 index 000000000000..4cc3041ab23d --- /dev/null +++ b/obj/item/tool/pickaxe/jackhammer.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/tool/pickaxe/jackhammer - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

sonic jackhammer + + + +

+ + +

Vars

digspeedfaster than drill, but cannot dig
+

Var Details

digspeed + + + + +

+

faster than drill, but cannot dig

+ + + diff --git a/obj/item/tool/pickaxe/plasmacutter.html b/obj/item/tool/pickaxe/plasmacutter.html new file mode 100644 index 000000000000..401c0810e46b --- /dev/null +++ b/obj/item/tool/pickaxe/plasmacutter.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/tool/pickaxe/plasmacutter - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

plasma cutter + + + +

+ + + +

Vars

digspeedCan slice though normal walls, all girders, or be used in reinforced wall deconstruction/ light thermite on fire
w_classit is smaller than the pickaxe
+

Var Details

digspeed + + + + +

+

Can slice though normal walls, all girders, or be used in reinforced wall deconstruction/ light thermite on fire

w_class + + + + +

+

it is smaller than the pickaxe

+ + + diff --git a/obj/item/tool/shovel.html b/obj/item/tool/shovel.html new file mode 100644 index 000000000000..87c2e6737c35 --- /dev/null +++ b/obj/item/tool/shovel.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/tool/shovel - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

shovel + + + +

+ + +

Vars

dirt_type0 for no dirt, 1 for brown dirt, 2 for snow, 3 for big red.
+

Var Details

dirt_type + + + + +

+

0 for no dirt, 1 for brown dirt, 2 for snow, 3 for big red.

+ + + diff --git a/obj/item/tool/surgery.html b/obj/item/tool/surgery.html new file mode 100644 index 000000000000..26e797c8a338 --- /dev/null +++ b/obj/item/tool/surgery.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/tool/surgery - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/item/tool/surgery + + + +

+ + +

Vars

attack_speedreduced
+

Var Details

attack_speed + + + + +

+

reduced

+ + + diff --git a/obj/item/tool/surgery/bonegel.html b/obj/item/tool/surgery/bonegel.html new file mode 100644 index 000000000000..21eccf77ff5e --- /dev/null +++ b/obj/item/tool/surgery/bonegel.html @@ -0,0 +1,78 @@ + + + + + + + /obj/item/tool/surgery/bonegel - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

bottle of bone gel + + + +

+ + + + + + + + +

Vars

base_icon_statebase icon state for update_icon() to reference, fixes bonegel/empty
fracture_fix_costHow much bone gel is needed to fix a fracture
mend_bones_fix_costHow much bone gel is needed to mend bones
refillingif the bone gel is actively being refilled
remaining_gelpercent of gel remaining in container
time_per_refillTime it takes per 10% of gel refilled
unlimited_gelIf gel is used when doing bone surgery
+

Var Details

base_icon_state + + + + +

+

base icon state for update_icon() to reference, fixes bonegel/empty

fracture_fix_cost + + + + +

+

How much bone gel is needed to fix a fracture

mend_bones_fix_cost + + + + +

+

How much bone gel is needed to mend bones

refilling + + + + +

+

if the bone gel is actively being refilled

remaining_gel + + + + +

+

percent of gel remaining in container

time_per_refill + + + + +

+

Time it takes per 10% of gel refilled

unlimited_gel + + + + +

+

If gel is used when doing bone surgery

+ + + diff --git a/obj/item/tool/surgery/scalpel/laser.html b/obj/item/tool/surgery/scalpel/laser.html new file mode 100644 index 000000000000..062da6688c8e --- /dev/null +++ b/obj/item/tool/surgery/scalpel/laser.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/tool/surgery/scalpel/laser - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

prototype laser scalpel + + + +

+ + +

Vars

bloodlessprobThe likelihood an incision made with this will be bloodless.
+

Var Details

bloodlessprob + + + + +

+

The likelihood an incision made with this will be bloodless.

+ + + diff --git a/obj/item/tool/weldingtool.html b/obj/item/tool/weldingtool.html new file mode 100644 index 000000000000..6ded6a9027d1 --- /dev/null +++ b/obj/item/tool/weldingtool.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/tool/weldingtool - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

blowtorch + + + +

+ + + + +

Vars

max_fuelThe max amount of fuel the welder can hold
weld_tickUsed to slowly deplete the fuel when the tool is left on.
weldingWhether or not the blowtorch is off(0), on(1) or currently welding(2)
+

Var Details

max_fuel + + + + +

+

The max amount of fuel the welder can hold

weld_tick + + + + +

+

Used to slowly deplete the fuel when the tool is left on.

welding + + + + +

+

Whether or not the blowtorch is off(0), on(1) or currently welding(2)

+ + + diff --git a/obj/item/tool/weldpack.html b/obj/item/tool/weldpack.html new file mode 100644 index 000000000000..a9cfa4f9deaa --- /dev/null +++ b/obj/item/tool/weldpack.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/tool/weldpack - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Welding kit + + + +

+ + + + +

Vars

healthMore robust liner I guess
max_fuelBecause the marine backpack can carry 260, and still allows you to take items, there should be a reason to still use this one.
original_healthplaceholder value to be replaced in init
+

Var Details

health + + + + +

+

More robust liner I guess

max_fuel + + + + +

+

Because the marine backpack can carry 260, and still allows you to take items, there should be a reason to still use this one.

original_health + + + + +

+

placeholder value to be replaced in init

+ + + diff --git a/obj/item/tool/weldpack/minitank.html b/obj/item/tool/weldpack/minitank.html new file mode 100644 index 000000000000..6000b4821095 --- /dev/null +++ b/obj/item/tool/weldpack/minitank.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/tool/weldpack/minitank - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

ES-11 fuel canister + + + +

+ + +

Vars

max_fuelJust barely enough to be better than the satchel
+

Var Details

max_fuel + + + + +

+

Just barely enough to be better than the satchel

+ + + diff --git a/obj/item/toy/crayon.html b/obj/item/toy/crayon.html new file mode 100644 index 000000000000..dd34d193849a --- /dev/null +++ b/obj/item/toy/crayon.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/toy/crayon - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

crayon + + + +

+ + +

Vars

uses0 for unlimited uses
+

Var Details

uses + + + + +

+

0 for unlimited uses

+ + + diff --git a/obj/item/toy/plush/random_plushie.html b/obj/item/toy/plush/random_plushie.html new file mode 100644 index 000000000000..931b349b1cb0 --- /dev/null +++ b/obj/item/toy/plush/random_plushie.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/toy/plush/random_plushie - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

random plush + + + +

+ + + + +

Vars

plush_listStandard plushies for the spawner to pick from
therapy_plush_listTherapy plushies left separately to not flood the entire list

Procs

create_plushieThe randomizer picking and spawning a plushie on either the ground or in the humans backpack. Needs var/source due to signals
+

Var Details

plush_list + + + + +

+

Standard plushies for the spawner to pick from

therapy_plush_list + + + + +

+

Therapy plushies left separately to not flood the entire list

Proc Details

create_plushie +

+

The randomizer picking and spawning a plushie on either the ground or in the humans backpack. Needs var/source due to signals

+ + + diff --git a/obj/item/toy/plush/runner.html b/obj/item/toy/plush/runner.html new file mode 100644 index 000000000000..7629dcbca36e --- /dev/null +++ b/obj/item/toy/plush/runner.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/toy/plush/runner - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

XX-121 therapy plush + + + +

+ + +

Vars

beretIf the runner is wearing a beret
+

Var Details

beret + + + + +

+

If the runner is wearing a beret

+ + + diff --git a/obj/item/toy/plush/therapy/random_color.html b/obj/item/toy/plush/therapy/random_color.html new file mode 100644 index 000000000000..ebb2ff1eb18f --- /dev/null +++ b/obj/item/toy/plush/therapy/random_color.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/toy/plush/therapy/random_color - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/item/toy/plush/therapy/random_color + + + +

+ + +

Vars

hexadecimalHexadecimal 0-F (0-15)
+

Var Details

hexadecimal + + + + +

+

Hexadecimal 0-F (0-15)

+ + + diff --git a/obj/item/weapon/gun.html b/obj/item/weapon/gun.html new file mode 100644 index 000000000000..167763aff48a --- /dev/null +++ b/obj/item/weapon/gun.html @@ -0,0 +1,754 @@ + + + + + + + /obj/item/weapon/gun - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

gun + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

PB_burst_bullets_firedWhen PB burst firing and handing off to /fire after a target moves out of range, this is how many bullets have been fired.
accuracy_multMultiplier. Increased and decreased through attachments. Multiplies the projectile's accuracy by this number.
accuracy_mult_unwieldedMultiplier. Increased and decreased through attachments. Multiplies the projectile's accuracy when unwielded by this number.
active_attachableThis will link to one of the attachments, or remain null.
aim_slowdownSelf explanatory. How much does aiming (wielding the gun) slow you
ammoHow the bullet will behave once it leaves the gun, also used for basic bullet damage and effects, etc. +Ammo will be replaced on New() for things that do not use mags.
attachable_allowedMust be the exact path to the attachment present in the list. Empty list for a default.
attachable_offsetIs a list, see examples of from the other files. Initiated on New() because lists don't initial() properly.
attachable_overlaysList of overlays so we can switch them in an out, instead of using Cut() on overlays.
attachmentsList of all current attachments on the gun.
autofire_slow_multThe multiplier for how much slower this should fire in automatic mode. 1 is normal, 1.2 is 20% slower, 2 is 100% slower, etc. Protected due to it never needing to be edited.
automaticUsed to determine if you can target multiple people.
base_gun_iconthe default gun icon_state. change to reskin the gun
burst_amountHow many shots can the weapon shoot in burst? Anything less than 2 and you cannot toggle burst. Use modify_burst_amount and set_burst_amount instead of modifying this
burst_delayThe delay in between shots. Lower = less delay = faster. Use modify_burst_delay and set_burst_delay instead of modifying this
burst_scatter_multMultiplier. Increases or decreases how much bonus scatter is added with each bullet during burst fire (wielded only).
caliberDetermines what kind of bullet is created when the gun is unloaded - used to match rounds to magazines. Set automatically when reloading.
cock_cooldownworld.time value, to prevent COCK COCK COCK COCK
cock_delayDelay before we can cock again, in tenths of seconds
damage_buildup_multMultiplier. Increased and decreased through attachments. Multiplies the projectile's damage bleed (buildup) by this number.
damage_falloff_multMultiplier. Increased and decreased through attachments. Multiplies the projectile's damage bleed (falloff) by this number.
damage_multMultiplier. Increased and decreased through attachments. Multiplies the projectile's damage by this number.
delay_styleDetermines what happens when you fire a gun before its wield or pull time has finished. This one is extra scatter and an acc. malus.
effective_range_maxWhat maximum range the weapon deals full damage, tapers off using damage_falloff after hitting this value. 0 for no maximum.
effective_range_minWhat minimum range the weapon deals full damage, builds up the closer you get. 0 for no minimum.
extra_delayWhen burst-firing, this number is extra time before the weapon can fire again. Depends on number of rounds fired.
fa_firingWhether or not the gun is firing full-auto
fa_max_scatterHow bad does the scatter get on full auto?
fa_paramsClick parameters to use when firing full-auto
fa_scatter_peakHow many full-auto shots to get to max scatter?
fire_delayFor regular shots, how long to wait before firing again. Use modify_fire_delay and set_fire_delay instead of modifying this on the fly
fire_delay_groupThe group or groups of the gun where a fire delay is applied and the delays applied to each group when the gun is dropped +after being fired
fire_rattleDoes our gun have a unique empty mag sound? If so use instead of pitch shifting.
fire_soundsIf fire_sound is null, it will pick a sound from the list here instead.
guaranteed_delay_timeStoring value for guaranteed delay
gun_categoryOnly guns of the same category can be fired together while dualwielding.
gun_firemodeCurrent selected firemode of the gun.
gun_firemode_listList of allowed firemodes.
gun_userCurrent user (holding) of the gun. Set with set_gun_user()
has_empty_iconwhether gun has icon state of (base_gun_icon)_e
has_open_iconwhether gun has icon state of (base_gun_icon)_o
in_chamberWhat is currently in the chamber. Most guns will want something in the chamber upon creation.
last_firedWhen it was last fired, related to world.time.
last_moved_mobUsed to fire faster at more than one person.
movement_onehanded_acc_penalty_multMultiplier. Increased and decreased through attachments. Multiplies the accuracy/scatter penalty of the projectile when firing onehanded while moving.
muzzle_flash_colorColor of the muzzle flash light effect.
muzzle_flash_lummuzzle flash brightness
projectile_typeThe type of projectile that this gun should shoot
pull_timeStoring value for how long pulling a gun takes before you can use it
random_muzzle_chanceChance for random spawn to give this gun a muzzle attachment.
random_rail_chanceChance for random spawn to give this gun a rail attachment.
random_spawn_chanceChance for random attachments to spawn in general.
random_spawn_muzzleUsed when a gun will have a chance to spawn with attachments.
random_spawn_stockUsed when a gun will have a chance to spawn with attachments.
random_spawn_underUsed when a gun will have a chance to spawn with attachments.
random_stock_chanceChance for random spawn to give this gun a stock attachment.
random_under_chanceChance for random spawn to give this gun a underbarrel attachment.
recoilScreen shake when the weapon is fired.
recoil_buildupThe recoil on a dynamic recoil gun
recoil_buildup_limitThe limit at which the recoil on a gun can reach. Usually the maximum value
recoil_loss_per_secondHow much recoil_buildup is lost per second. Builds up as time passes, and is set to 0 when a single shot is fired
recoil_unwieldedMultiplier. Increased and decreased through attachments. Multiplies the gun's recoil when unwielded by this number.
scatterHow much the bullet scatters when fired.
scatter_unwieldedMultiplier. Increased and decreased through attachments. Multiplies the projectile's scatter when the gun is unwielded by this number.
shots_firedHow many bullets the gun fired while bursting/auto firing
start_automaticIf this gun should spawn with automatic fire. Protected due to it never needing to be edited.
start_semiautoIf this gun should spawn with semi-automatic fire. Protected due to it never needing to be edited.
starting_attachment_typesWhat attachments this gun starts with THAT CAN BE REMOVED. Important to avoid nuking the attachments on restocking! Added on New()
targetCurrently selected target to fire at. Set with set_target()
told_cant_shootSo that it doesn't spam them with the fact they cannot hit them.
traits_to_give
velocity_addAdded velocity to fired bullet.
wield_delayHow long between wielding and firing in tenths of seconds
wield_timeStoring value for wield delay.

Procs

add_bullet_traits@bullet_trait_entries: A list of bullet trait entries
change_targetUpdate the target if you draged your mouse
clean_targetSet the target to its turf, so we keep shooting even when it was qdeled
fire_wrapperWrapper proc for the autofire subsystem to ensure the important args aren't null
force_lightIf this gun has a relevant flashlight attachable attached, (de)activate it
get_fire_delaygetter for fire_delay
get_gun_userGetter for gun_user
has_ammunitionReturns TRUE if the weapon is loaded. Separate proc because there's no single way to check this for all weapons: chamber isn't always loaded, +not all weapons use normal magazines etc. load_into_chamber() itself is designed to be called immediately before firing, and isn't suitable.
is_civilian_usableReturns one of the two override values if either are null, preferring the argument value. +Otherwise, returns TRUE if it is in a civilian usable category (Handguns or SMGs), FALSE if it is not.
light_sourcescheck if the gun contains any light source that is currently turned on.
load_into_chamberload_into_chamber(), reload_into_chamber(), and clear_jam() do all of the heavy lifting. +If you need to change up how a gun fires, just change these procs for that subtype +and you're good to go.
modify_burst_amountadder for burst_amount
modify_burst_delayAdder for burst_delay
modify_fire_delayadder for fire_delay
remove_bullet_traits@bullet_traits: A list of bullet trait typepaths or ids
reset_fireClean all references
reset_light_rangecalled by a timer to remove the light range from muzzle flash
set_auto_firingSetter proc for fa_firing
set_bullet_traitsPopulate traits_to_give in this proc
set_burst_amountsetter for burst_amount
set_burst_delaySetter for burst_delay
set_burstingSetter proc to toggle burst firing
set_fire_delaysetter for fire_delay
set_targetSet the target and take care of hard delete
start_fireCheck if the gun can fire and add it to bucket auto_fire system if needed, or just fire the gun if not
turn_off_lightThis function actually turns the lights on the gun off
unload_chamberUnload a chambered round, if one exists, and empty the chamber.
+

Var Details

PB_burst_bullets_fired + + + + +

+

When PB burst firing and handing off to /fire after a target moves out of range, this is how many bullets have been fired.

accuracy_mult + + + + +

+

Multiplier. Increased and decreased through attachments. Multiplies the projectile's accuracy by this number.

accuracy_mult_unwielded + + + + +

+

Multiplier. Increased and decreased through attachments. Multiplies the projectile's accuracy when unwielded by this number.

active_attachable + + + + +

+

This will link to one of the attachments, or remain null.

aim_slowdown + + + + +

+

Self explanatory. How much does aiming (wielding the gun) slow you

ammo + + + + +

+

How the bullet will behave once it leaves the gun, also used for basic bullet damage and effects, etc. +Ammo will be replaced on New() for things that do not use mags.

attachable_allowed + + + + +

+

Must be the exact path to the attachment present in the list. Empty list for a default.

attachable_offset + + + + +

+

Is a list, see examples of from the other files. Initiated on New() because lists don't initial() properly.

attachable_overlays + + + + +

+

List of overlays so we can switch them in an out, instead of using Cut() on overlays.

attachments + + + + +

+

List of all current attachments on the gun.

autofire_slow_mult + + + + +

+

The multiplier for how much slower this should fire in automatic mode. 1 is normal, 1.2 is 20% slower, 2 is 100% slower, etc. Protected due to it never needing to be edited.

automatic + + + + +

+

Used to determine if you can target multiple people.

base_gun_icon + + + + +

+

the default gun icon_state. change to reskin the gun

burst_amount + + + + +

+

How many shots can the weapon shoot in burst? Anything less than 2 and you cannot toggle burst. Use modify_burst_amount and set_burst_amount instead of modifying this

burst_delay + + + + +

+

The delay in between shots. Lower = less delay = faster. Use modify_burst_delay and set_burst_delay instead of modifying this

burst_scatter_mult + + + + +

+

Multiplier. Increases or decreases how much bonus scatter is added with each bullet during burst fire (wielded only).

caliber + + + + +

+

Determines what kind of bullet is created when the gun is unloaded - used to match rounds to magazines. Set automatically when reloading.

cock_cooldown + + + + +

+

world.time value, to prevent COCK COCK COCK COCK

cock_delay + + + + +

+

Delay before we can cock again, in tenths of seconds

damage_buildup_mult + + + + +

+

Multiplier. Increased and decreased through attachments. Multiplies the projectile's damage bleed (buildup) by this number.

damage_falloff_mult + + + + +

+

Multiplier. Increased and decreased through attachments. Multiplies the projectile's damage bleed (falloff) by this number.

damage_mult + + + + +

+

Multiplier. Increased and decreased through attachments. Multiplies the projectile's damage by this number.

delay_style + + + + +

+

Determines what happens when you fire a gun before its wield or pull time has finished. This one is extra scatter and an acc. malus.

effective_range_max + + + + +

+

What maximum range the weapon deals full damage, tapers off using damage_falloff after hitting this value. 0 for no maximum.

effective_range_min + + + + +

+

What minimum range the weapon deals full damage, builds up the closer you get. 0 for no minimum.

extra_delay + + + + +

+

When burst-firing, this number is extra time before the weapon can fire again. Depends on number of rounds fired.

fa_firing + + + + +

+

Whether or not the gun is firing full-auto

fa_max_scatter + + + + +

+

How bad does the scatter get on full auto?

fa_params + + + + +

+

Click parameters to use when firing full-auto

fa_scatter_peak + + + + +

+

How many full-auto shots to get to max scatter?

fire_delay + + + + +

+

For regular shots, how long to wait before firing again. Use modify_fire_delay and set_fire_delay instead of modifying this on the fly

fire_delay_group + + + + +

+

The group or groups of the gun where a fire delay is applied and the delays applied to each group when the gun is dropped +after being fired

+

Guns with this var set will apply the gun's remaining fire delay to any other guns in the same group

+

Set as null (does not apply any fire delays to any other gun group) or a list of fire delay groups (string defines) +matched with the corresponding fire delays applied

fire_rattle + + + + +

+

Does our gun have a unique empty mag sound? If so use instead of pitch shifting.

fire_sounds + + + + +

+

If fire_sound is null, it will pick a sound from the list here instead.

guaranteed_delay_time + + + + +

+

Storing value for guaranteed delay

gun_category + + + + +

+

Only guns of the same category can be fired together while dualwielding.

gun_firemode + + + + +

+

Current selected firemode of the gun.

gun_firemode_list + + + + +

+

List of allowed firemodes.

gun_user + + + + +

+

Current user (holding) of the gun. Set with set_gun_user()

has_empty_icon + + + + +

+

whether gun has icon state of (base_gun_icon)_e

has_open_icon + + + + +

+

whether gun has icon state of (base_gun_icon)_o

in_chamber + + + + +

+

What is currently in the chamber. Most guns will want something in the chamber upon creation.

last_fired + + + + +

+

When it was last fired, related to world.time.

last_moved_mob + + + + +

+

Used to fire faster at more than one person.

movement_onehanded_acc_penalty_mult + + + + +

+

Multiplier. Increased and decreased through attachments. Multiplies the accuracy/scatter penalty of the projectile when firing onehanded while moving.

muzzle_flash_color + + + + +

+

Color of the muzzle flash light effect.

muzzle_flash_lum + + + + +

+

muzzle flash brightness

projectile_type + + + + +

+

The type of projectile that this gun should shoot

pull_time + + + + +

+

Storing value for how long pulling a gun takes before you can use it

random_muzzle_chance + + + + +

+

Chance for random spawn to give this gun a muzzle attachment.

random_rail_chance + + + + +

+

Chance for random spawn to give this gun a rail attachment.

random_spawn_chance + + + + +

+

Chance for random attachments to spawn in general.

random_spawn_muzzle + + + + +

+

Used when a gun will have a chance to spawn with attachments.

random_spawn_stock + + + + +

+

Used when a gun will have a chance to spawn with attachments.

random_spawn_under + + + + +

+

Used when a gun will have a chance to spawn with attachments.

random_stock_chance + + + + +

+

Chance for random spawn to give this gun a stock attachment.

random_under_chance + + + + +

+

Chance for random spawn to give this gun a underbarrel attachment.

recoil + + + + +

+

Screen shake when the weapon is fired.

recoil_buildup + + + + +

+

The recoil on a dynamic recoil gun

recoil_buildup_limit + + + + +

+

The limit at which the recoil on a gun can reach. Usually the maximum value

recoil_loss_per_second + + + + +

+

How much recoil_buildup is lost per second. Builds up as time passes, and is set to 0 when a single shot is fired

recoil_unwielded + + + + +

+

Multiplier. Increased and decreased through attachments. Multiplies the gun's recoil when unwielded by this number.

scatter + + + + +

+

How much the bullet scatters when fired.

scatter_unwielded + + + + +

+

Multiplier. Increased and decreased through attachments. Multiplies the projectile's scatter when the gun is unwielded by this number.

shots_fired + + + + +

+

How many bullets the gun fired while bursting/auto firing

start_automatic + + + + +

+

If this gun should spawn with automatic fire. Protected due to it never needing to be edited.

start_semiauto + + + + +

+

If this gun should spawn with semi-automatic fire. Protected due to it never needing to be edited.

starting_attachment_types + + + + +

+

What attachments this gun starts with THAT CAN BE REMOVED. Important to avoid nuking the attachments on restocking! Added on New()

target + + + + +

+

Currently selected target to fire at. Set with set_target()

told_cant_shoot + + + + +

+

So that it doesn't spam them with the fact they cannot hit them.

traits_to_give + + + + +

+
    +
  • An assoc list in the format list(/datum/element/bullet_trait_to_give = list(...args)) +that will be given to a projectile with the current ammo datum*
  • +

velocity_add + + + + +

+

Added velocity to fired bullet.

wield_delay + + + + +

+

How long between wielding and firing in tenths of seconds

wield_time + + + + +

+

Storing value for wield delay.

Proc Details

add_bullet_traits +

+

@bullet_trait_entries: A list of bullet trait entries

change_target +

+

Update the target if you draged your mouse

clean_target +

+

Set the target to its turf, so we keep shooting even when it was qdeled

fire_wrapper +

+

Wrapper proc for the autofire subsystem to ensure the important args aren't null

force_light +

+

If this gun has a relevant flashlight attachable attached, (de)activate it

get_fire_delay +

+

getter for fire_delay

get_gun_user +

+

Getter for gun_user

has_ammunition +

+

Returns TRUE if the weapon is loaded. Separate proc because there's no single way to check this for all weapons: chamber isn't always loaded, +not all weapons use normal magazines etc. load_into_chamber() itself is designed to be called immediately before firing, and isn't suitable.

is_civilian_usable +

+

Returns one of the two override values if either are null, preferring the argument value. +Otherwise, returns TRUE if it is in a civilian usable category (Handguns or SMGs), FALSE if it is not.

light_sources +

+

check if the gun contains any light source that is currently turned on.

load_into_chamber +

+

load_into_chamber(), reload_into_chamber(), and clear_jam() do all of the heavy lifting. +If you need to change up how a gun fires, just change these procs for that subtype +and you're good to go.

modify_burst_amount +

+

adder for burst_amount

modify_burst_delay +

+

Adder for burst_delay

modify_fire_delay +

+

adder for fire_delay

remove_bullet_traits +

+

@bullet_traits: A list of bullet trait typepaths or ids

reset_fire +

+

Clean all references

reset_light_range +

+

called by a timer to remove the light range from muzzle flash

set_auto_firing +

+

Setter proc for fa_firing

set_bullet_traits +

+

Populate traits_to_give in this proc

set_burst_amount +

+

setter for burst_amount

set_burst_delay +

+

Setter for burst_delay

set_bursting +

+

Setter proc to toggle burst firing

set_fire_delay +

+

setter for fire_delay

set_target +

+

Set the target and take care of hard delete

start_fire +

+

Check if the gun can fire and add it to bucket auto_fire system if needed, or just fire the gun if not

turn_off_light +

+

This function actually turns the lights on the gun off

unload_chamber +

+

Unload a chambered round, if one exists, and empty the chamber.

+ + + diff --git a/obj/item/weapon/gun/boltaction.html b/obj/item/weapon/gun/boltaction.html new file mode 100644 index 000000000000..48e55914565a --- /dev/null +++ b/obj/item/weapon/gun/boltaction.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/weapon/gun/boltaction - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Basira-Armstrong bolt-action hunting rifle + + + +

+ + +

Vars

has_openbolt_iconIf this gun should change icon states when the bolt is open
+

Var Details

has_openbolt_icon + + + + +

+

If this gun should change icon states when the bolt is open

+ + + diff --git a/obj/item/weapon/gun/boltaction/vulture.html b/obj/item/weapon/gun/boltaction/vulture.html new file mode 100644 index 000000000000..8e838415318e --- /dev/null +++ b/obj/item/weapon/gun/boltaction/vulture.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/weapon/gun/boltaction/vulture - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

M707 \"Vulture\" anti-materiel rifle + + + +

+ + + + + +

Vars

bypass_traitIf the gun should bypass the trait requirement
fire_message_rangeHow far out people can tell the direction of the shot

Procs

break_armThe code that takes care of breaking a person's firing arm
fired_without_bipodSomeone tried to fire this without using a bipod, so we break their arm along with sending them flying backwards
+

Var Details

bypass_trait + + + + +

+

If the gun should bypass the trait requirement

fire_message_range + + + + +

+

How far out people can tell the direction of the shot

Proc Details

break_arm +

+

The code that takes care of breaking a person's firing arm

fired_without_bipod +

+

Someone tried to fire this without using a bipod, so we break their arm along with sending them flying backwards

+ + + diff --git a/obj/item/weapon/gun/energy/taser.html b/obj/item/weapon/gun/energy/taser.html new file mode 100644 index 000000000000..469b7764dd30 --- /dev/null +++ b/obj/item/weapon/gun/energy/taser.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/weapon/gun/energy/taser - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

disabler gun + + + +

+ + + +

Vars

modeDetermines if the taser will hit any target, or if it checks for wanted status. Default is wanted only.

Procs

change_modeChanges between targetting wanted persons or any persons. Originally used by unique_action, made own proc to allow for use in action button too.
+

Var Details

mode + + + + +

+

Determines if the taser will hit any target, or if it checks for wanted status. Default is wanted only.

Proc Details

change_mode +

+

Changes between targetting wanted persons or any persons. Originally used by unique_action, made own proc to allow for use in action button too.

+ + + diff --git a/obj/item/weapon/gun/energy/yautja/plasmapistol.html b/obj/item/weapon/gun/energy/yautja/plasmapistol.html new file mode 100644 index 000000000000..834f88f83ade --- /dev/null +++ b/obj/item/weapon/gun/energy/yautja/plasmapistol.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/weapon/gun/energy/yautja/plasmapistol - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

plasma pistol + + + +

+ + + + +

Vars

charge_timeMax amount of shots
modestandard (sc = 1) or incendiary (sc = 5)
shot_costAmount of charge_time drained per shot
+

Var Details

charge_time + + + + +

+

Max amount of shots

mode + + + + +

+

standard (sc = 1) or incendiary (sc = 5)

shot_cost + + + + +

+

Amount of charge_time drained per shot

+ + + diff --git a/obj/item/weapon/gun/launcher.html b/obj/item/weapon/gun/launcher.html new file mode 100644 index 000000000000..5651cd9d0ea0 --- /dev/null +++ b/obj/item/weapon/gun/launcher.html @@ -0,0 +1,92 @@ + + + + + + + /obj/item/weapon/gun/launcher - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/item/weapon/gun/launcher + + + +

+ + + + + + + + + + +

Vars

GL_has_empty_icongun update_icon doesn't detect that guns with no magazine are loaded or not, and will always append _o or _e if possible.
GL_has_open_icongun update_icon doesn't detect that guns with no magazine are loaded or not, and will always append _o or _e if possible.
cylinderInternal storage item used as magazine. Must be initialised to work! Set parameters by variables or it will inherit standard numbers from storage.dm. Got to call it something and 'magazine' or w/e would be confusing.
direct_drawWhether clicking a held weapon with an empty hand will open its inventory or draw a munition out.
has_cylinderVariable that initializes the above.
internal_max_w_classhow big an item can be inserted.
internal_slotsHow many items can be inserted. "Null" = backpack-style size-based inventory. You'll have to set max_storage_space too if you do that, and arrange any initial contents. Iff you arrange to put in more items than the storage can hold, they can be taken out but not replaced.
preloadWhat single item to fill the storage with, if any. This does not respect w_class.
use_soundthe sfx played when the storage is opened.
+

Var Details

GL_has_empty_icon + + + + +

+

gun update_icon doesn't detect that guns with no magazine are loaded or not, and will always append _o or _e if possible.

GL_has_open_icon + + + + +

+

gun update_icon doesn't detect that guns with no magazine are loaded or not, and will always append _o or _e if possible.

cylinder + + + + +

+

Internal storage item used as magazine. Must be initialised to work! Set parameters by variables or it will inherit standard numbers from storage.dm. Got to call it something and 'magazine' or w/e would be confusing.

direct_draw + + + + +

+

Whether clicking a held weapon with an empty hand will open its inventory or draw a munition out.

has_cylinder + + + + +

+

Variable that initializes the above.

internal_max_w_class + + + + +

+

how big an item can be inserted.

internal_slots + + + + +

+

How many items can be inserted. "Null" = backpack-style size-based inventory. You'll have to set max_storage_space too if you do that, and arrange any initial contents. Iff you arrange to put in more items than the storage can hold, they can be taken out but not replaced.

preload + + + + +

+

What single item to fill the storage with, if any. This does not respect w_class.

use_sound + + + + +

+

the sfx played when the storage is opened.

+ + + diff --git a/obj/item/weapon/gun/launcher/grenade.html b/obj/item/weapon/gun/launcher/grenade.html new file mode 100644 index 000000000000..be1ff7c060ec --- /dev/null +++ b/obj/item/weapon/gun/launcher/grenade.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/weapon/gun/launcher/grenade - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/item/weapon/gun/launcher/grenade + + + +

+ + + + + +

Vars

disallowed_grenade_typesVerboten munitions. This is a blacklist. Anything in this list isn't loadable.
is_lobbingDoes it launch its grenades in a low arc or a high? Do they strike people in their path, or fly beyond?
open_chamberCan you access the storage by clicking it, put things into it, or take things out? Meant for break-actions mostly but useful for any state where you want access to be toggleable. Make sure to call cylinder.close(user) so they don't still have the screen open!
valid_munitionsWhat is this weapon permitted to fire? This is a whitelist. Anything in this list can be fired. Anything.
+

Var Details

disallowed_grenade_types + + + + +

+

Verboten munitions. This is a blacklist. Anything in this list isn't loadable.

is_lobbing + + + + +

+

Does it launch its grenades in a low arc or a high? Do they strike people in their path, or fly beyond?

open_chamber + + + + +

+

Can you access the storage by clicking it, put things into it, or take things out? Meant for break-actions mostly but useful for any state where you want access to be toggleable. Make sure to call cylinder.close(user) so they don't still have the screen open!

valid_munitions + + + + +

+

What is this weapon permitted to fire? This is a whitelist. Anything in this list can be fired. Anything.

+ + + diff --git a/obj/item/weapon/gun/pistol/highpower.html b/obj/item/weapon/gun/pistol/highpower.html new file mode 100644 index 000000000000..494739cf6b71 --- /dev/null +++ b/obj/item/weapon/gun/pistol/highpower.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/weapon/gun/pistol/highpower - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

MK-45 'High-Power' Automagnum + + + +

+ + +

Vars

manually_slidedThis weapon needs to be manually racked every time a new magazine is loaded. I tried and failed to touch gun shitcode so this will do.
+

Var Details

manually_slided + + + + +

+

This weapon needs to be manually racked every time a new magazine is loaded. I tried and failed to touch gun shitcode so this will do.

+ + + diff --git a/obj/item/weapon/gun/rifle/sniper.html b/obj/item/weapon/gun/rifle/sniper.html new file mode 100644 index 000000000000..9d6a19671882 --- /dev/null +++ b/obj/item/weapon/gun/rifle/sniper.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/weapon/gun/rifle/sniper - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/item/weapon/gun/rifle/sniper + + + +

+ + +

Vars

enable_aimed_shot_icon_altVariables for Focus Fire and alternate icons for lockon and laser.
+

Var Details

enable_aimed_shot_icon_alt + + + + +

+

Variables for Focus Fire and alternate icons for lockon and laser.

+ + + diff --git a/obj/item/weapon/gun/shotgun/double/twobore.html b/obj/item/weapon/gun/shotgun/double/twobore.html new file mode 100644 index 000000000000..8ef6fe40d7b5 --- /dev/null +++ b/obj/item/weapon/gun/shotgun/double/twobore.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/weapon/gun/shotgun/double/twobore - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

two-bore rifle + + + +

+ + +

Procs

unbraceReturns TRUE if the gun was braced.

Proc Details

unbrace +

+

Returns TRUE if the gun was braced.

+ + + diff --git a/obj/item/weapon/gun/smartgun.html b/obj/item/weapon/gun/smartgun.html new file mode 100644 index 000000000000..f5fd305dc857 --- /dev/null +++ b/obj/item/weapon/gun/smartgun.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/weapon/gun/smartgun - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

M56B smartgun + + + +

+ + + + +

Vars

requires_batteryWhether the smartgun requires a battery
requires_harnessWhether the smartgun requires a harness to use
requires_powerWhether the smartgun drains the battery (Ignored if requires_battery is false)
+

Var Details

requires_battery + + + + +

+

Whether the smartgun requires a battery

requires_harness + + + + +

+

Whether the smartgun requires a harness to use

requires_power + + + + +

+

Whether the smartgun drains the battery (Ignored if requires_battery is false)

+ + + diff --git a/obj/item/weapon/gun/smartgun/dirty.html b/obj/item/weapon/gun/smartgun/dirty.html new file mode 100644 index 000000000000..3e2870a15f78 --- /dev/null +++ b/obj/item/weapon/gun/smartgun/dirty.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/weapon/gun/smartgun/dirty - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

M56D 'Dirty' smartgun + + + +

+ + +

Vars

flags_gun_featuresToggled ammo type
+

Var Details

flags_gun_features + + + + +

+

Toggled ammo type

+ + + diff --git a/obj/item/weapon/gun/smartgun/rmc.html b/obj/item/weapon/gun/smartgun/rmc.html new file mode 100644 index 000000000000..809d25c3df12 --- /dev/null +++ b/obj/item/weapon/gun/smartgun/rmc.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/weapon/gun/smartgun/rmc - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

L56A2 smartgun + + + +

+ + +

Vars

flags_gun_featuresToggled ammo type
+

Var Details

flags_gun_features + + + + +

+

Toggled ammo type

+ + + diff --git a/obj/item/weapon/straight_razor.html b/obj/item/weapon/straight_razor.html new file mode 100644 index 000000000000..94ad169f6471 --- /dev/null +++ b/obj/item/weapon/straight_razor.html @@ -0,0 +1,71 @@ + + + + + + + /obj/item/weapon/straight_razor - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

straight razor + + + +

+ + + + + + + +

Vars

disabled_iconIcon state for closed razor
enabled_iconIcon state for opened razor
interaction_timeTime taken to open/close the razor
razor_openedIf the razor is able to be used

Procs

can_fit_in_shoeCheck if the item can fit as a boot knife, var/source for signals
change_razor_stateChanges all the vars for the straight razor
+

Var Details

disabled_icon + + + + +

+

Icon state for closed razor

enabled_icon + + + + +

+

Icon state for opened razor

interaction_time + + + + +

+

Time taken to open/close the razor

razor_opened + + + + +

+

If the razor is able to be used

Proc Details

can_fit_in_shoe +

+

Check if the item can fit as a boot knife, var/source for signals

change_razor_state +

+

Changes all the vars for the straight razor

+ + + diff --git a/obj/item/weapon/twohanded/lungemine.html b/obj/item/weapon/twohanded/lungemine.html new file mode 100644 index 000000000000..6b52ddfae0c0 --- /dev/null +++ b/obj/item/weapon/twohanded/lungemine.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/weapon/twohanded/lungemine - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

lunge mine + + + +

+ + +

Vars

detonation_forceThis controls how strong the explosion will be on the lunge mine. Higher is better.
+

Var Details

detonation_force + + + + +

+

This controls how strong the explosion will be on the lunge mine. Higher is better.

+ + + diff --git a/obj/item/weapon/yautja/combistick.html b/obj/item/weapon/yautja/combistick.html new file mode 100644 index 000000000000..cf9049abfebb --- /dev/null +++ b/obj/item/weapon/yautja/combistick.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/weapon/yautja/combistick - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

combi-stick + + + +

+ + + + + + +

Vars

chainRef to the tether effect when thrown
linked_toThe mob the chain is linked to

Procs

cleanup_chainClean up the chain, deleting/nulling/unregistering as needed
on_moveThe chain normally breaks if it's put into a container, so let's yank it back if that's the case
recallrecall the combistick to the pred's hands or to be at their feet
+

Var Details

chain + + + + +

+

Ref to the tether effect when thrown

linked_to + + + + +

+

The mob the chain is linked to

Proc Details

cleanup_chain +

+

Clean up the chain, deleting/nulling/unregistering as needed

on_move +

+

The chain normally breaks if it's put into a container, so let's yank it back if that's the case

recall +

+

recall the combistick to the pred's hands or to be at their feet

+ + + diff --git a/obj/limb.html b/obj/limb.html new file mode 100644 index 000000000000..2daa72909095 --- /dev/null +++ b/obj/limb.html @@ -0,0 +1,242 @@ + + + + + + + /obj/limb - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

limb + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

body_sizebody size of the owner, used for limb appearance, set in [/obj/limb/proc/update_limb()]
body_typebody muscularity of the owner, used for limb appearance, set in [/obj/limb/proc/update_limb()]
cavityName of internal cavity.
encasedName of bones encasing the limb.
hiddenSurgically implanted item.
implantsEmbedded or implanter implanted items.
limb_genderdefines which sprite the limb should use if dimorphic, set in [/obj/limb/proc/update_limb()]
skin_colorskin color of the owner, used for limb appearance, set in [/obj/limb/proc/update_limb()]
speciesspecies of the owner, used for limb appearance, set in [/obj/limb/proc/update_limb()]

Procs

add_bleedingAdds bleeding to the limb. Damage_amount lets you apply an amount worth of bleeding, otherwise it uses the given wound's damage.
bandagebandages brute wounds and removes bleeding. Returns WOUNDS_BANDAGED if at least one wound was bandaged. Returns WOUNDS_ALREADY_TREATED +if a relevant wound exists but none were treated. Skips wounds that are already bandaged. +treat_sutured var tells it to apply to sutured but unbandaged wounds, for trauma kits that heal damage directly.
get_active_limb_surgeriesReturns a description of active surgeries.
get_damageReturns total damage, or, if broken, the minimum fracture threshold, whichever is higher.
get_incision_depthReturns a description of opened incisions.
get_limb_icongenerates a list of overlays that should be applied to the owner
get_limb_icon_keygenerates a key for the purpose of caching the icon to avoid duplicate generations
is_bandagedChecks for bandageable wounds (type = CUT or type = BRUISE). Returns TRUE if all are bandaged, FALSE if not.
is_salvedChecks for salveable wounds (type = BURN). Returns TRUE if all are salved, FALSE if not.
limb_delimbSpecial delimbs for different limbs
remove_wound_bleedingChecks if there's any external limb wounds, removes bleeding if there isn't.
reset_limb_surgeriescalled when limb is removed or robotized, any ongoing surgery and related vars are reset unless set otherwise.
salvesalves burn wounds. Returns WOUNDS_BANDAGED if at least one wound was salved. Returns WOUNDS_ALREADY_TREATED if a relevant wound exists but none were treated. +Skips wounds that are already salved. +treat_grafted var tells it to apply to grafted but unsalved wounds, for burn kits that heal damage directly.
take_damageDescribes how limbs (body parts) of human mobs get damage applied.
update_limbupdates the various internal variables of the limb from the owner
+

Var Details

body_size + + + + +

+

body size of the owner, used for limb appearance, set in [/obj/limb/proc/update_limb()]

body_type + + + + +

+

body muscularity of the owner, used for limb appearance, set in [/obj/limb/proc/update_limb()]

cavity + + + + +

+

Name of internal cavity.

encased + + + + +

+

Name of bones encasing the limb.

hidden + + + + +

+

Surgically implanted item.

implants + + + + +

+

Embedded or implanter implanted items.

limb_gender + + + + +

+

defines which sprite the limb should use if dimorphic, set in [/obj/limb/proc/update_limb()]

skin_color + + + + +

+

skin color of the owner, used for limb appearance, set in [/obj/limb/proc/update_limb()]

species + + + + +

+

species of the owner, used for limb appearance, set in [/obj/limb/proc/update_limb()]

Proc Details

add_bleeding +

+

Adds bleeding to the limb. Damage_amount lets you apply an amount worth of bleeding, otherwise it uses the given wound's damage.

bandage +

+

bandages brute wounds and removes bleeding. Returns WOUNDS_BANDAGED if at least one wound was bandaged. Returns WOUNDS_ALREADY_TREATED +if a relevant wound exists but none were treated. Skips wounds that are already bandaged. +treat_sutured var tells it to apply to sutured but unbandaged wounds, for trauma kits that heal damage directly.

get_active_limb_surgeries +

+

Returns a description of active surgeries.

get_damage +

+

Returns total damage, or, if broken, the minimum fracture threshold, whichever is higher.

get_incision_depth +

+

Returns a description of opened incisions.

get_limb_icon +

+

generates a list of overlays that should be applied to the owner

get_limb_icon_key +

+

generates a key for the purpose of caching the icon to avoid duplicate generations

is_bandaged +

+

Checks for bandageable wounds (type = CUT or type = BRUISE). Returns TRUE if all are bandaged, FALSE if not.

is_salved +

+

Checks for salveable wounds (type = BURN). Returns TRUE if all are salved, FALSE if not.

limb_delimb +

+

Special delimbs for different limbs

remove_wound_bleeding +

+

Checks if there's any external limb wounds, removes bleeding if there isn't.

reset_limb_surgeries +

+

called when limb is removed or robotized, any ongoing surgery and related vars are reset unless set otherwise.

salve +

+

salves burn wounds. Returns WOUNDS_BANDAGED if at least one wound was salved. Returns WOUNDS_ALREADY_TREATED if a relevant wound exists but none were treated. +Skips wounds that are already salved. +treat_grafted var tells it to apply to grafted but unsalved wounds, for burn kits that heal damage directly.

take_damage +

+

Describes how limbs (body parts) of human mobs get damage applied.

+

Any damage past the limb maximum health is transfered onto the next limb up the line, by +calling this proc recursively. When a hand is too damaged it is passed to the arm, +then to the chest and so on.

+

Since parent limbs usually have more armor than their children, just passing the damage +directly would allow the attacker to effectively bypass all of that armor. A lurker +with 35 slash damage repeatedly slashing a hand protected by marine combat gloves +(20 armor) would do 20 damage to the hand, then would start doing the same 20 to +the arm, and then the chest. But if the lurker slashes the arm direclty it would only +do 16 damage, assuming the marine is wearing medium armor which has armor value of 30.

+

Thus we have to apply armor damage reduction on each limb to which the damage is +transfered. When this proc is called recursively for the first damage transfer to the +parent, we set reduced_by variables to be the armor of the original limb hit. Then we +compare the parent limb armor with the applicable reduced_by and if it's higher we reduce +the damage by the difference between the two. Then we set reduced_by to +the current(parent) limb armor value.

+

This generally works ok because our armor calculations are mostly distributive in +practice: reducing the damage by 20 and then by 10 would generally give the same result +as reducing by 30. But this is not strictly true, the lower the damage is, the more it +gets reduced. As an extreme example, a lurker doing his first 35 damage slash on a combat +gloves covered marine hand would do 30 damage to the hand, transfer 5 to the arm and +those 5 would get mitigated to 0 by the marine medium armor.

+

One problem that still exists here, is that we currently don't have any code +that allows us to increase the damage when the parent limb armor is lower than the +initial child limb armor. +One practical example where this would happen is when a human is wearing a set of armor +that does not protect legs, like the UPP officer. If a xeno keeps slashing his foot, +the damage would eventually get transfered to the leg, which has 0 armor. But this damage +has been already reduced by the boot armor even before this proc got first called. +So, assuming 35 damage slash, the leg would only be damaged by 21 even though it has +0 armor. Fixing this would require a new proc that would be able to unapply armor +from the damage.

+

Organ damage and bone break have their own armor damage reduction calculations. Since +armor is already applied at least once outside of this proc, this means that damage is always +reduced twice, hence the formulas for those looks so weird.

+

Currently all brute damage is reduced by ARMOR_MELEE and GLOB.marine_melee, +while burn damage is reduced by ARMOR_BIO and GLOB.marine_fire, which may not be correct +for all cases.

update_limb +

+

updates the various internal variables of the limb from the owner

+ + + diff --git a/obj/merge_conflict_marker.html b/obj/merge_conflict_marker.html new file mode 100644 index 000000000000..34b18ab3cb8f --- /dev/null +++ b/obj/merge_conflict_marker.html @@ -0,0 +1,35 @@ + + + + + + + /obj/merge_conflict_marker - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Merge Conflict Marker - DO NOT USE + + + +

+ + +

Procs

InitializeWe REALLY do not want un-addressed merge conflicts in maps for an inexhaustible list of reasons. This should help ensure that this will not be missed in case linters fail to catch it for any reason what-so-ever.

Proc Details

Initialize +

+

We REALLY do not want un-addressed merge conflicts in maps for an inexhaustible list of reasons. This should help ensure that this will not be missed in case linters fail to catch it for any reason what-so-ever.

+ + + diff --git a/obj/projectile.html b/obj/projectile.html new file mode 100644 index 000000000000..376d27771742 --- /dev/null +++ b/obj/projectile.html @@ -0,0 +1,148 @@ + + + + + + + /obj/projectile - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

projectile + + + +

+ + + + + + + + + + + + + + + + + + +

Vars

accuracy_range_falloffHow much to make the bullet fall off by accuracy-wise when closer than the ideal range
angleDirect angle at firing time, in degrees from BYOND NORTH, used for visual updates and path extension
bonus_projectile_checkIs this a lone (0), original (1), or bonus (2) projectile. Used in gun.dm and fire_bonus_projectiles() currently.
bound_beamThe beam linked to the projectile. Can be utilized for things like grappling hooks, harpoon guns, tripwire guns, etc..
damage_boostedWas this projectile affected by damage_boost.dm? If so, what was the last modifier?
hit_effect_colorThe flicker that plays when a bullet hits a target. Usually red. Can be nulled so it doesn't show up at all.
last_atom_signaledWhat atom did this last receive a registered signal from? Used by damage_boost.dm
process_start_turfStarting point of projectile before each flight.
projectile_flagsFlags for behaviors of the projectile itself
projectile_override_flagsAdditional ammo flags applied to the projectile
runtime_iff_groupThis is the iff_group
speedHow many turfs per 1ds the projectile travels
time_carryHow much time has the projectile carried for fractional movement, in seconds (delta_time format)
vis_sourceOrigin point for tracing and visual updates
vis_travelledTurfs traveled so far, for use in visual updates, in conjunction with angle for projection

Procs

animate_flightAnimates the projectile across the process'ed flight.
flyFlies the projectile forward one single turf
+

Var Details

accuracy_range_falloff + + + + +

+

How much to make the bullet fall off by accuracy-wise when closer than the ideal range

angle + + + + +

+

Direct angle at firing time, in degrees from BYOND NORTH, used for visual updates and path extension

bonus_projectile_check + + + + +

+

Is this a lone (0), original (1), or bonus (2) projectile. Used in gun.dm and fire_bonus_projectiles() currently.

bound_beam + + + + +

+

The beam linked to the projectile. Can be utilized for things like grappling hooks, harpoon guns, tripwire guns, etc..

damage_boosted + + + + +

+

Was this projectile affected by damage_boost.dm? If so, what was the last modifier?

hit_effect_color + + + + +

+

The flicker that plays when a bullet hits a target. Usually red. Can be nulled so it doesn't show up at all.

last_atom_signaled + + + + +

+

What atom did this last receive a registered signal from? Used by damage_boost.dm

process_start_turf + + + + +

+

Starting point of projectile before each flight.

projectile_flags + + + + +

+

Flags for behaviors of the projectile itself

projectile_override_flags + + + + +

+

Additional ammo flags applied to the projectile

runtime_iff_group + + + + +

+

This is the iff_group

speed + + + + +

+

How many turfs per 1ds the projectile travels

time_carry + + + + +

+

How much time has the projectile carried for fractional movement, in seconds (delta_time format)

vis_source + + + + +

+

Origin point for tracing and visual updates

vis_travelled + + + + +

+

Turfs traveled so far, for use in visual updates, in conjunction with angle for projection

Proc Details

animate_flight +

+

Animates the projectile across the process'ed flight.

fly +

+

Flies the projectile forward one single turf

+ + + diff --git a/obj/projectile/vulture.html b/obj/projectile/vulture.html new file mode 100644 index 000000000000..cfbcbfc7b2d2 --- /dev/null +++ b/obj/projectile/vulture.html @@ -0,0 +1,43 @@ + + + + + + + /obj/projectile/vulture - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/obj/projectile/vulture + + + +

+ + + +

Vars

xeno_shortrange_chanceThe odds of hitting a xeno in less than your gun's range. Doesn't apply to humans.

Procs

on_onehandHandler for when the user one-hands the firing gun
+

Var Details

xeno_shortrange_chance + + + + +

+

The odds of hitting a xeno in less than your gun's range. Doesn't apply to humans.

Proc Details

on_onehand +

+

Handler for when the user one-hands the firing gun

+ + + diff --git a/obj/structure/airlock_assembly.html b/obj/structure/airlock_assembly.html new file mode 100644 index 000000000000..00ecdf0cab03 --- /dev/null +++ b/obj/structure/airlock_assembly.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/airlock_assembly - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

airlock assembly + + + +

+ + + +

Vars

widthUsed for multitile assemblies

Procs

update_collision_boxUsed for overloading proc in multi_tile
+

Var Details

width + + + + +

+

Used for multitile assemblies

Proc Details

update_collision_box +

+

Used for overloading proc in multi_tile

+ + + diff --git a/obj/structure/barricade.html b/obj/structure/barricade.html new file mode 100644 index 000000000000..7e6f6dccddd3 --- /dev/null +++ b/obj/structure/barricade.html @@ -0,0 +1,92 @@ + + + + + + + /obj/structure/barricade - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/structure/barricade + + + +

+ + + + + + + + + + +

Vars

crusher_resistantWhether a crusher can ram through it.
destroyed_stack_amountto specify a non-zero amount of stack to drop when destroyed
force_level_absorptionHow much force an item needs to even damage it at all.
stack_amountThe amount of stack dropped when disassembled at full health
stack_typeThe type of stack the barricade dropped when disassembled if any.
starting_maxhealthUsed for calculating some stuff related to maxhealth as it constantly changes due to e.g. barbed wire. set to 100 to avoid possible divisions by zero
throwpassYou can throw objects over this, despite its density.
welder_lower_damage_limitLower limit of damage beyond which the barricade cannot be fixed by welder. Compared to damage_state. If null it can be repaired at any damage_state.
wire_icon! Icon file used for the wiring
+

Var Details

crusher_resistant + + + + +

+

Whether a crusher can ram through it.

destroyed_stack_amount + + + + +

+

to specify a non-zero amount of stack to drop when destroyed

force_level_absorption + + + + +

+

How much force an item needs to even damage it at all.

stack_amount + + + + +

+

The amount of stack dropped when disassembled at full health

stack_type + + + + +

+

The type of stack the barricade dropped when disassembled if any.

starting_maxhealth + + + + +

+

Used for calculating some stuff related to maxhealth as it constantly changes due to e.g. barbed wire. set to 100 to avoid possible divisions by zero

throwpass + + + + +

+

You can throw objects over this, despite its density.

welder_lower_damage_limit + + + + +

+

Lower limit of damage beyond which the barricade cannot be fixed by welder. Compared to damage_state. If null it can be repaired at any damage_state.

wire_icon + + + + +

+

! Icon file used for the wiring

+ + + diff --git a/obj/structure/barricade/plasteel.html b/obj/structure/barricade/plasteel.html new file mode 100644 index 000000000000..ff8cec98bc26 --- /dev/null +++ b/obj/structure/barricade/plasteel.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/barricade/plasteel - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

folding plasteel barricade + + + +

+ + + +

Vars

busyStandard busy check
tool_cooldownDelay to apply tools to prevent spamming
+

Var Details

busy + + + + +

+

Standard busy check

tool_cooldown + + + + +

+

Delay to apply tools to prevent spamming

+ + + diff --git a/obj/structure/bed.html b/obj/structure/bed.html new file mode 100644 index 000000000000..2b5631a26880 --- /dev/null +++ b/obj/structure/bed.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/bed - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

bed + + + +

+ + +

Vars

buckling_soundSound when buckled to a bed/chair/stool
+

Var Details

buckling_sound + + + + +

+

Sound when buckled to a bed/chair/stool

+ + + diff --git a/obj/structure/blocker/tent.html b/obj/structure/blocker/tent.html new file mode 100644 index 000000000000..9ab02fc8f533 --- /dev/null +++ b/obj/structure/blocker/tent.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/blocker/tent - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Tent Blocker + + + +

+ +

Invisible Blocker Walls, they link up with the main tent and collapse with it

+

Vars

linked_tentThe tent this blocker relates to, will be destroyed along with it
+

Var Details

linked_tent + + + + +

+

The tent this blocker relates to, will be destroyed along with it

+ + + diff --git a/obj/structure/cable.html b/obj/structure/cable.html new file mode 100644 index 000000000000..9312861d1c9a --- /dev/null +++ b/obj/structure/cable.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/cable - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

power cable + + + +

+ + + +

Procs

get_connectionsZ-Level Stuff +Z-Level Stuff +Z-Level Stuff +Z-Level Stuff
shockZ-Level Stuff +Z-Level Stuff

Proc Details

get_connections +

+

Z-Level Stuff +Z-Level Stuff +Z-Level Stuff +Z-Level Stuff

shock +

+

Z-Level Stuff +Z-Level Stuff

+ + + diff --git a/obj/structure/closet/bodybag.html b/obj/structure/closet/bodybag.html new file mode 100644 index 000000000000..5f84dca91099 --- /dev/null +++ b/obj/structure/closet/bodybag.html @@ -0,0 +1,64 @@ + + + + + + + /obj/structure/closet/bodybag - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

body bag + + + +

+ + + + + + +

Vars

buckle_offsetHow many extra pixels to offset the bag by when buckled, since rollerbeds are set up to offset a centered horizontal human sprite.
drag_delayslightly easier than to drag the body directly.
layerTo layer above rollerbeds.
open_cooldownthe active var that tracks the cooldown for opening and closing
roller_buckledthe roller bed this bodybag is attached to.
+

Var Details

buckle_offset + + + + +

+

How many extra pixels to offset the bag by when buckled, since rollerbeds are set up to offset a centered horizontal human sprite.

drag_delay + + + + +

+

slightly easier than to drag the body directly.

layer + + + + +

+

To layer above rollerbeds.

open_cooldown + + + + +

+

the active var that tracks the cooldown for opening and closing

roller_buckled + + + + +

+

the roller bed this bodybag is attached to.

+ + + diff --git a/obj/structure/closet/bodybag/cryobag.html b/obj/structure/closet/bodybag/cryobag.html new file mode 100644 index 000000000000..5c7a29a5c206 --- /dev/null +++ b/obj/structure/closet/bodybag/cryobag.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/closet/bodybag/cryobag - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

stasis bag + + + +

+ + + + +

Vars

last_useremembers the value of used, to delay crostasis start.
max_uses15 mins of usable cryostasis
stasis_mobthe mob in stasis
+

Var Details

last_use + + + + +

+

remembers the value of used, to delay crostasis start.

max_uses + + + + +

+

15 mins of usable cryostasis

stasis_mob + + + + +

+

the mob in stasis

+ + + diff --git a/obj/structure/closet/bodybag/tarp.html b/obj/structure/closet/bodybag/tarp.html new file mode 100644 index 000000000000..7c38e96b1fce --- /dev/null +++ b/obj/structure/closet/bodybag/tarp.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/closet/bodybag/tarp - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

V1 thermal-dampening tarp + + + +

+ + +

Vars

toggle_delayused to implement a delay before tarp can be entered again after opened (anti-exploit)
+

Var Details

toggle_delay + + + + +

+

used to implement a delay before tarp can be entered again after opened (anti-exploit)

+ + + diff --git a/obj/structure/closet/crate.html b/obj/structure/closet/crate.html new file mode 100644 index 000000000000..1cc80c846088 --- /dev/null +++ b/obj/structure/closet/crate.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/closet/crate - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

crate + + + +

+ + +

Vars

crate_customizing_typesTypes this crate can be made into
+

Var Details

crate_customizing_types + + + + +

+

Types this crate can be made into

+ + + diff --git a/obj/structure/disposalconstruct.html b/obj/structure/disposalconstruct.html new file mode 100644 index 000000000000..bff704122e06 --- /dev/null +++ b/obj/structure/disposalconstruct.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/disposalconstruct - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

disposal pipe segment + + + +

+ + + +

Procs

attackbyZ-Level stuff +Z-Level stuff
hideZ-Level stuff +Z-Level stuff +Z-Level stuff +Z-Level stuff

Proc Details

attackby +

+

Z-Level stuff +Z-Level stuff

hide +

+

Z-Level stuff +Z-Level stuff +Z-Level stuff +Z-Level stuff

+ + + diff --git a/obj/structure/droppod.html b/obj/structure/droppod.html new file mode 100644 index 000000000000..81a70cda31af --- /dev/null +++ b/obj/structure/droppod.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/droppod - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

droppod + + + +

+ + + +

Vars

special_structure_damageAmount of damage structures will take on landing
special_structures_to_damageList of special structures drop pod will give damage to
+

Var Details

special_structure_damage + + + + +

+

Amount of damage structures will take on landing

special_structures_to_damage + + + + +

+

List of special structures drop pod will give damage to

+ + + diff --git a/obj/structure/droppod/supply.html b/obj/structure/droppod/supply.html new file mode 100644 index 000000000000..0833e508702c --- /dev/null +++ b/obj/structure/droppod/supply.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/droppod/supply - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

USCM requisitions package + + + +

+ + +

Vars

packageThe contained parimary object, used as a replacer for the droppod icon
+

Var Details

package + + + + +

+

The contained parimary object, used as a replacer for the droppod icon

+ + + diff --git a/obj/structure/dropship_equipment/weapon.html b/obj/structure/dropship_equipment/weapon.html new file mode 100644 index 000000000000..e767029271d2 --- /dev/null +++ b/obj/structure/dropship_equipment/weapon.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/dropship_equipment/weapon - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

abstract weapon + + + +

+ +

CAS Dropship weaponry, used for aerial bombardment

+ + +

Vars

fire_mission_onlyTrue if this weapon can only be fired in Fire Missions (not Direct)
firing_delayDelay between firing, in deciseconds
last_firedTime last fired, for weapon firing cooldown
+

Var Details

fire_mission_only + + + + +

+

True if this weapon can only be fired in Fire Missions (not Direct)

firing_delay + + + + +

+

Delay between firing, in deciseconds

last_fired + + + + +

+

Time last fired, for weapon firing cooldown

+ + + diff --git a/obj/structure/flag/plantable.html b/obj/structure/flag/plantable.html new file mode 100644 index 000000000000..3c37295f79bf --- /dev/null +++ b/obj/structure/flag/plantable.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/flag/plantable - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

flag + + + +

+ +

PLANTABLE FLAG

+ + + +

Vars

flag_typeThe typepath for the flag item that gets spawned when the flag is taken down.
warcry_cooldown_strucUsed to limit the spam of the warcry_extra_sound

Procs

demolishProc for when the flag gets forcefully dismantled (due to general damage, explosions, etc.)
disassembleProc for dismantling the flag into an item that can be picked up.
+

Var Details

flag_type + + + + +

+

The typepath for the flag item that gets spawned when the flag is taken down.

warcry_cooldown_struc + + + + +

+

Used to limit the spam of the warcry_extra_sound

Proc Details

demolish +

+

Proc for when the flag gets forcefully dismantled (due to general damage, explosions, etc.)

disassemble +

+

Proc for dismantling the flag into an item that can be picked up.

+ + + diff --git a/obj/structure/flora/pottedplant.html b/obj/structure/flora/pottedplant.html new file mode 100644 index 000000000000..48ef01c4d5a5 --- /dev/null +++ b/obj/structure/flora/pottedplant.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/flora/pottedplant - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

potted plant + + + +

+ + +

Vars

blocked_atomsFor things that might affect someone/everyone's round if hidden.
+

Var Details

blocked_atoms + + + + +

+

For things that might affect someone/everyone's round if hidden.

+ + + diff --git a/obj/structure/largecrate/black_market.html b/obj/structure/largecrate/black_market.html new file mode 100644 index 000000000000..17565938b30a --- /dev/null +++ b/obj/structure/largecrate/black_market.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/largecrate/black_market - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/structure/largecrate/black_market + + + +

+ + +

Vars

points_wipeWipes points from objects inside to avoid infinite farming.
+

Var Details

points_wipe + + + + +

+

Wipes points from objects inside to avoid infinite farming.

+ + + diff --git a/obj/structure/largecrate/black_market/clf_supplies.html b/obj/structure/largecrate/black_market/clf_supplies.html new file mode 100644 index 000000000000..2acf51169e03 --- /dev/null +++ b/obj/structure/largecrate/black_market/clf_supplies.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/largecrate/black_market/clf_supplies - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

unmarked CLF supply crate + + + +

+ + +

Vars

forced_rngIf you want to use this in mapping, you can force-set the contents via this.
+

Var Details

forced_rng + + + + +

+

If you want to use this in mapping, you can force-set the contents via this.

+ + + diff --git a/obj/structure/machinery/ares.html b/obj/structure/machinery/ares.html new file mode 100644 index 000000000000..e0937cbdb867 --- /dev/null +++ b/obj/structure/machinery/ares.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/machinery/ares - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

ARES Machinery + + + +

+ +

set ticket back to pending

+

Procs

link_systemsHandles linking and de-linking the ARES systems.

Proc Details

+

Handles linking and de-linking the ARES systems.

+ + + diff --git a/obj/structure/machinery/autodispenser.html b/obj/structure/machinery/autodispenser.html new file mode 100644 index 000000000000..a15019d99cff --- /dev/null +++ b/obj/structure/machinery/autodispenser.html @@ -0,0 +1,99 @@ + + + + + + + /obj/structure/machinery/autodispenser - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Turing Dispenser + + + +

+ + + + + + + + + + + +

Vars

errorError status message
input_containerContains vials for our program
linked_storageWhere we take chemicals from
output_containerOur output beaker
program_amounthow much to dispense with each program item, 1 = memory, 2 = box
programsthe program of chem datums to dispense, 1 = memory, 2 = box
stageRemember where we are
stage_missingHow much we have left to dispense, if we didn't have enough
status0 = idle, <0 = stuck, 1 = finished, 2 = running
tgui_friendly_program_listsnowflake list for tgui, 1 = memory, 2 = box
+

Var Details

error + + + + +

+

Error status message

input_container + + + + +

+

Contains vials for our program

linked_storage + + + + +

+

Where we take chemicals from

output_container + + + + +

+

Our output beaker

program_amount + + + + +

+

how much to dispense with each program item, 1 = memory, 2 = box

programs + + + + +

+

the program of chem datums to dispense, 1 = memory, 2 = box

stage + + + + +

+

Remember where we are

stage_missing + + + + +

+

How much we have left to dispense, if we didn't have enough

status + + + + +

+

0 = idle, <0 = stuck, 1 = finished, 2 = running

tgui_friendly_program_list + + + + +

+

snowflake list for tgui, 1 = memory, 2 = box

+ + + diff --git a/obj/structure/machinery/autodoc_console.html b/obj/structure/machinery/autodoc_console.html new file mode 100644 index 000000000000..34deeab1287a --- /dev/null +++ b/obj/structure/machinery/autodoc_console.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/machinery/autodoc_console - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

autodoc medical system control console + + + +

+ + +

Vars

upgradesWhat kind of upgrade do we have in this console? used by research upgrades. 1 is IB. 2 is bone frac. 3 is organ damage. 4 is larva removal
+

Var Details

upgrades + + + + +

+

What kind of upgrade do we have in this console? used by research upgrades. 1 is IB. 2 is bone frac. 3 is organ damage. 4 is larva removal

+ + + diff --git a/obj/structure/machinery/autolathe.html b/obj/structure/machinery/autolathe.html new file mode 100644 index 000000000000..38d8417ee1df --- /dev/null +++ b/obj/structure/machinery/autolathe.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/machinery/autolathe - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

autolathe + + + +

+ + + + + +

Vars

currently_making_datathe item the autolathe is currently printing. Used for tgui
queuequeue of items to be printed after the current one is done
queue_maxmax length of the queue
tgui_themetheme for tgui
+

Var Details

currently_making_data + + + + +

+

the item the autolathe is currently printing. Used for tgui

queue + + + + +

+

queue of items to be printed after the current one is done

queue_max + + + + +

+

max length of the queue

tgui_theme + + + + +

+

theme for tgui

+ + + diff --git a/obj/structure/machinery/brig_cell.html b/obj/structure/machinery/brig_cell.html new file mode 100644 index 000000000000..74b044af447a --- /dev/null +++ b/obj/structure/machinery/brig_cell.html @@ -0,0 +1,71 @@ + + + + + + + /obj/structure/machinery/brig_cell - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Cell Controller + + + +

+ + + + + + + +

Vars

active_reportThe report currently ticking down the clock.
idid of door it controls.
incident_reportsThe incident reports currently inserted into this machine.
picture_stateicon_state of alert picture, if not displaying text/numbers
targetsA list of World objects this machine controls.
viewed_reportThe report currently being viewed.
+

Var Details

active_report + + + + +

+

The report currently ticking down the clock.

id + + + + +

+

id of door it controls.

incident_reports + + + + +

+

The incident reports currently inserted into this machine.

picture_state + + + + +

+

icon_state of alert picture, if not displaying text/numbers

targets + + + + +

+

A list of World objects this machine controls.

viewed_report + + + + +

+

The report currently being viewed.

+ + + diff --git a/obj/structure/machinery/camera.html b/obj/structure/machinery/camera.html new file mode 100644 index 000000000000..263ef575a8c0 --- /dev/null +++ b/obj/structure/machinery/camera.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/machinery/camera - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

security camera + + + +

+ + + +

Vars

autonameAutonaming
emp_proofIf this camera should have innate EMP-proofing
+

Var Details

autoname + + + + +

+

Autonaming

emp_proof + + + + +

+

If this camera should have innate EMP-proofing

+ + + diff --git a/obj/structure/machinery/chem_dispenser.html b/obj/structure/machinery/chem_dispenser.html new file mode 100644 index 000000000000..b9e64977e157 --- /dev/null +++ b/obj/structure/machinery/chem_dispenser.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/machinery/chem_dispenser - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

chemical dispenser + + + +

+ + + +

Vars

hacked_checkHas it been hacked
hacked_reagentsAdditional reagents gotten when it is hacked
+

Var Details

hacked_check + + + + +

+

Has it been hacked

hacked_reagents + + + + +

+

Additional reagents gotten when it is hacked

+ + + diff --git a/obj/structure/machinery/cm_vending.html b/obj/structure/machinery/cm_vending.html new file mode 100644 index 000000000000..8bc5974672aa --- /dev/null +++ b/obj/structure/machinery/cm_vending.html @@ -0,0 +1,87 @@ + + + + + + + /obj/structure/machinery/cm_vending - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Theoretical Marine selector + + + +

+ + + + + + + + + +

Vars

listed_productsThe actual inventory for this vendor as a list of lists +1: name 2: amount 3: type 4: flag
partial_product_stacksPartial stacks to hold on to as an associated list of type : amount
vend_dirVending direction from adjacent users, if not using vend_x_offset or vend_y_offset
vend_dir_whitelistDirection to adjacent user from which we're allowed to do offset vending
vend_x_offsetX Offset to vend to
vend_y_offsetY Offset to vend to

Procs

get_listed_productsIf we want to redeem a token
redeem_tokenHandles redeeming coin tokens.
+

Var Details

listed_products + + + + +

+

The actual inventory for this vendor as a list of lists +1: name 2: amount 3: type 4: flag

partial_product_stacks + + + + +

+

Partial stacks to hold on to as an associated list of type : amount

vend_dir + + + + +

+

Vending direction from adjacent users, if not using vend_x_offset or vend_y_offset

vend_dir_whitelist + + + + +

+

Direction to adjacent user from which we're allowed to do offset vending

vend_x_offset + + + + +

+

X Offset to vend to

vend_y_offset + + + + +

+

Y Offset to vend to

Proc Details

get_listed_products +

+

If we want to redeem a token

redeem_token +

+

Handles redeeming coin tokens.

+ + + diff --git a/obj/structure/machinery/cm_vending/sorted.html b/obj/structure/machinery/cm_vending/sorted.html new file mode 100644 index 000000000000..67333a7b539d --- /dev/null +++ b/obj/structure/machinery/cm_vending/sorted.html @@ -0,0 +1,89 @@ + + + + + + + /obj/structure/machinery/cm_vending/sorted - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

ColMarTech generic sorted rack/vendor + + + +

+ + + + + + + + +

Vars

being_restockedindicates someone is performing a restock that isn't instant
corresponding_types_listthis here is made to provide ability to restock vendors with different subtypes of same object, like handmade and manually filled ammo boxes.
dynamic_stock_multipliersIf using VEND_STOCK_DYNAMIC, assoc list of product entry to list of (1.0 scale product multiplier, awarded objects) - as seen in /obj/structure/machinery/cm_vending/sorted/proc/populate_product_list +This allows us to backtrack and refill the stocks when new players latejoin.

Procs

additional_restock_checksadditional restocking checks for individual vendor subtypes. Parse in item, do checks, return FALSE to fail. Include error message.
populate_product_listthis proc, well, populates product list based on roundstart amount of players +do not rely on scale here if you use VEND_STOCK_DYNAMIC because it's already taken into account +this is here for historical reasons and should ONLY be called by populate_product_list_and_boxes if you want dynamic stocks and ammoboxes to work
populate_product_list_and_boxesthis proc, well, populates product list based on roundstart amount of players
update_dynamic_stockUpdates the vendor stock when the [/datum/game_mode/var/marine_tally] has changed and we're using VEND_STOCK_DYNAMIC +Assumes the scale can only increase!!! Don't take their items away!
+

Var Details

being_restocked + + + + +

+

indicates someone is performing a restock that isn't instant

corresponding_types_list + + + + +

+

this here is made to provide ability to restock vendors with different subtypes of same object, like handmade and manually filled ammo boxes.

dynamic_stock_multipliers + + + + +

+

If using VEND_STOCK_DYNAMIC, assoc list of product entry to list of (1.0 scale product multiplier, awarded objects) - as seen in /obj/structure/machinery/cm_vending/sorted/proc/populate_product_list +This allows us to backtrack and refill the stocks when new players latejoin.

+

If NOT using VEND_STOCK_DYNAMIC, assoc list of product entry to list of (estimated 1.0 scale product multiplier, scaled product multiplier) - as seen in /obj/structure/machinery/cm_vending/sorted/proc/populate_product_list +This allows us to know the original amounts to know if the vendor is full of an item. +The 1.0 scale is estimated because it is a divided by the scale rather than repopulating the list at 1.0 scale - anything that is a fixed amount won't necessarily be correct.

Proc Details

additional_restock_checks +

+

additional restocking checks for individual vendor subtypes. Parse in item, do checks, return FALSE to fail. Include error message.

populate_product_list +

+

this proc, well, populates product list based on roundstart amount of players +do not rely on scale here if you use VEND_STOCK_DYNAMIC because it's already taken into account +this is here for historical reasons and should ONLY be called by populate_product_list_and_boxes if you want dynamic stocks and ammoboxes to work

populate_product_list_and_boxes +

+

this proc, well, populates product list based on roundstart amount of players

update_dynamic_stock +

+

Updates the vendor stock when the [/datum/game_mode/var/marine_tally] has changed and we're using VEND_STOCK_DYNAMIC +Assumes the scale can only increase!!! Don't take their items away!

+ + + diff --git a/obj/structure/machinery/cm_vending/sorted/cargo_guns/squad_prep/tutorial.html b/obj/structure/machinery/cm_vending/sorted/cargo_guns/squad_prep/tutorial.html new file mode 100644 index 000000000000..2a8914280cdf --- /dev/null +++ b/obj/structure/machinery/cm_vending/sorted/cargo_guns/squad_prep/tutorial.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/machinery/cm_vending/sorted/cargo_guns/squad_prep/tutorial - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

ColMarTech Automated Weapons Rack + + + +

+ + +

Procs

load_ammoCalled if the tutorial mob somehow uses an entire magazine without the xeno dying

Proc Details

load_ammo +

+

Called if the tutorial mob somehow uses an entire magazine without the xeno dying

+ + + diff --git a/obj/structure/machinery/cm_vending/sorted/medical.html b/obj/structure/machinery/cm_vending/sorted/medical.html new file mode 100644 index 000000000000..62ffa46f0094 --- /dev/null +++ b/obj/structure/machinery/cm_vending/sorted/medical.html @@ -0,0 +1,112 @@ + + + + + + + /obj/structure/machinery/cm_vending/sorted/medical - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Wey-Med Plus + + + +

+ + + + + + + + + + + + +

Vars

allow_supply_link_restockWhether the vendor can use a medlink to be able to resupply automatically
chem_refillA list of item types that allow reagent refilling
chem_refill_volumeThe starting volume of the chem refill tank
chem_refill_volume_maxThe maximum volume of the chem refill tank
healthscanWhether this vendor supports health scanning the user via mouse drop

Procs

cart_restockPerforms automatic restocking via medical cart - will set being_restocked true during the action
get_supply_linkchecks if there is a supply link in our location and we are anchored to it
random_unstockRandomly removes amounts of listed_products and reagents
restock_reagentsRefills reagents towards chem_refill_volume_max +Returns the quantity of reagents added
restock_suppliesRandomly (based on prob_to_skip) adjusts all amounts of listed_products towards their desired values by 1 +Returns the quantity of items added
try_deduct_chemAttempts to consume our reagents needed for the container (doesn't actually change the container) +Will return TRUE if reagents were deducated or no reagents were needed
+

Var Details

+

Whether the vendor can use a medlink to be able to resupply automatically

chem_refill + + + + +

+

A list of item types that allow reagent refilling

chem_refill_volume + + + + +

+

The starting volume of the chem refill tank

chem_refill_volume_max + + + + +

+

The maximum volume of the chem refill tank

healthscan + + + + +

+

Whether this vendor supports health scanning the user via mouse drop

Proc Details

cart_restock +

+

Performs automatic restocking via medical cart - will set being_restocked true during the action

+

checks if there is a supply link in our location and we are anchored to it

random_unstock +

+

Randomly removes amounts of listed_products and reagents

restock_reagents +

+

Refills reagents towards chem_refill_volume_max +Returns the quantity of reagents added

restock_supplies +

+

Randomly (based on prob_to_skip) adjusts all amounts of listed_products towards their desired values by 1 +Returns the quantity of items added

try_deduct_chem +

+

Attempts to consume our reagents needed for the container (doesn't actually change the container) +Will return TRUE if reagents were deducated or no reagents were needed

+ + + diff --git a/obj/structure/machinery/colony_floodlight.html b/obj/structure/machinery/colony_floodlight.html new file mode 100644 index 000000000000..10757f519f42 --- /dev/null +++ b/obj/structure/machinery/colony_floodlight.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/machinery/colony_floodlight - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

colony floodlight + + + +

+ + + + + +

Vars

damagedWhether it has been smashed by xenos
fswitchReverse lookup for power grabbing in area
is_litWhether the floodlight is switched to on or off. Does not necessarily mean it emits light.
power_tickThe power each floodlight takes up per process
+

Var Details

damaged + + + + +

+

Whether it has been smashed by xenos

fswitch + + + + +

+

Reverse lookup for power grabbing in area

is_lit + + + + +

+

Whether the floodlight is switched to on or off. Does not necessarily mean it emits light.

power_tick + + + + +

+

The power each floodlight takes up per process

+ + + diff --git a/obj/structure/machinery/colony_floodlight_switch.html b/obj/structure/machinery/colony_floodlight_switch.html new file mode 100644 index 000000000000..1dd04f724e56 --- /dev/null +++ b/obj/structure/machinery/colony_floodlight_switch.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/machinery/colony_floodlight_switch - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

colony floodlight switch + + + +

+ + +

Vars

floodlistAll floodlights under our control
+

Var Details

floodlist + + + + +

+

All floodlights under our control

+ + + diff --git a/obj/structure/machinery/computer/almayer_control.html b/obj/structure/machinery/computer/almayer_control.html new file mode 100644 index 000000000000..055df1306543 --- /dev/null +++ b/obj/structure/machinery/computer/almayer_control.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/machinery/computer/almayer_control - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

almayer control console + + + +

+ + + + + +

Vars

cooldown_centralmessaging HC (admins)
cooldown_destructrequesting evac
cooldown_messagemaking a ship announcement
cooldown_requestrequesting a distress beacon
+

Var Details

cooldown_central + + + + +

+

messaging HC (admins)

cooldown_destruct + + + + +

+

requesting evac

cooldown_message + + + + +

+

making a ship announcement

cooldown_request + + + + +

+

requesting a distress beacon

+ + + diff --git a/obj/structure/machinery/computer/ares_console.html b/obj/structure/machinery/computer/ares_console.html new file mode 100644 index 000000000000..ebfd40a163b9 --- /dev/null +++ b/obj/structure/machinery/computer/ares_console.html @@ -0,0 +1,64 @@ + + + + + + + /obj/structure/machinery/computer/ares_console - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

ARES Interface + + + +

+ + + + + + +

Vars

datacoreThe datacore storing all the information.
deleted_1to1The current deleted chat log of 1:1 conversations being read.
last_loginThe last person to login.
linkThe ID used to link all devices.
sudo_holderThe person pretending to be last_login
+

Var Details

datacore + + + + +

+

The datacore storing all the information.

deleted_1to1 + + + + +

+

The current deleted chat log of 1:1 conversations being read.

last_login + + + + +

+

The last person to login.

+

The ID used to link all devices.

sudo_holder + + + + +

+

The person pretending to be last_login

+ + + diff --git a/obj/structure/machinery/computer/cameras.html b/obj/structure/machinery/computer/cameras.html new file mode 100644 index 000000000000..bbe5baf87e98 --- /dev/null +++ b/obj/structure/machinery/computer/cameras.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/machinery/computer/cameras - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

security cameras console + + + +

+ + +

Vars

last_camera_turfThe turf where the camera was last updated.
+

Var Details

last_camera_turf + + + + +

+

The turf where the camera was last updated.

+ + + diff --git a/obj/structure/machinery/computer/crew.html b/obj/structure/machinery/computer/crew.html new file mode 100644 index 000000000000..51e20af050fc --- /dev/null +++ b/obj/structure/machinery/computer/crew.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/machinery/computer/crew - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

crew monitoring computer + + + +

+ + +

Vars

crewmonitor_typeWhat type of /datum/crewmonitor this will create
+

Var Details

crewmonitor_type + + + + +

+

What type of /datum/crewmonitor this will create

+ + + diff --git a/obj/structure/machinery/computer/dropship_weapons.html b/obj/structure/machinery/computer/dropship_weapons.html new file mode 100644 index 000000000000..38fc39a1abe6 --- /dev/null +++ b/obj/structure/machinery/computer/dropship_weapons.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/machinery/computer/dropship_weapons - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

abstract dropship weapons controls + + + +

+ + +

Vars

camera_area_equipmentTracks equipment with a camera that is deployed and we are viewing
+

Var Details

camera_area_equipment + + + + +

+

Tracks equipment with a camera that is deployed and we are viewing

+ + + diff --git a/obj/structure/machinery/computer/objective.html b/obj/structure/machinery/computer/objective.html new file mode 100644 index 000000000000..e9deed6dcd4b --- /dev/null +++ b/obj/structure/machinery/computer/objective.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/machinery/computer/objective - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

data terminal + + + +

+ + +

Procs

ex_actDisabled explosions due to issues with the Objectives UI should it be destroyed.

Proc Details

ex_act +

+

Disabled explosions due to issues with the Objectives UI should it be destroyed.

+ + + diff --git a/obj/structure/machinery/computer/overwatch.html b/obj/structure/machinery/computer/overwatch.html new file mode 100644 index 000000000000..d4d62f1dfe71 --- /dev/null +++ b/obj/structure/machinery/computer/overwatch.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/machinery/computer/overwatch - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Overwatch Console + + + +

+ + + + +

Vars

saved_coordinatesList of saved coordinates, format of ["x", "y", "comment"]
ui_themeCurrently selected UI theme

Procs

handle_supplydropProject ARES interface log.
+

Var Details

saved_coordinates + + + + +

+

List of saved coordinates, format of ["x", "y", "comment"]

ui_theme + + + + +

+

Currently selected UI theme

Proc Details

handle_supplydrop +

+

Project ARES interface log.

+ + + diff --git a/obj/structure/machinery/computer/overwatch/tent.html b/obj/structure/machinery/computer/overwatch/tent.html new file mode 100644 index 000000000000..454d37c28a51 --- /dev/null +++ b/obj/structure/machinery/computer/overwatch/tent.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/machinery/computer/overwatch/tent - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/obj/structure/machinery/computer/overwatch/tent + + + +

+ + +

Procs

InitializeGroundside console

Proc Details

Initialize +

+

Groundside console

+ + + diff --git a/obj/structure/machinery/computer/railgun.html b/obj/structure/machinery/computer/railgun.html new file mode 100644 index 000000000000..cffcb1d037c9 --- /dev/null +++ b/obj/structure/machinery/computer/railgun.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/machinery/computer/railgun - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

railgun computer + + + +

+ + +

Vars

lockedComputer and Railgun can only be used if this variable is cleared
+

Var Details

locked + + + + +

+

Computer and Railgun can only be used if this variable is cleared

+ + + diff --git a/obj/structure/machinery/computer/shuttle/ert.html b/obj/structure/machinery/computer/shuttle/ert.html new file mode 100644 index 000000000000..c469f3fe645e --- /dev/null +++ b/obj/structure/machinery/computer/shuttle/ert.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/machinery/computer/shuttle/ert - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

transport shuttle + + + +

+ + + + +

Vars

mission_accomplishedif the ERT that used this shuttle has returned home
must_launch_homeif this shuttle only has the option to return home
spoolingthis interface is busy - used in [/obj/structure/machinery/computer/shuttle/ert/proc/launch_home] as this can take a second
+

Var Details

mission_accomplished + + + + +

+

if the ERT that used this shuttle has returned home

must_launch_home + + + + +

+

if this shuttle only has the option to return home

spooling + + + + +

+

this interface is busy - used in [/obj/structure/machinery/computer/shuttle/ert/proc/launch_home] as this can take a second

+ + + diff --git a/obj/structure/machinery/computer/shuttle/lifeboat.html b/obj/structure/machinery/computer/shuttle/lifeboat.html new file mode 100644 index 000000000000..23d84034b407 --- /dev/null +++ b/obj/structure/machinery/computer/shuttle/lifeboat.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/machinery/computer/shuttle/lifeboat - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

lifeboat console + + + +

+ + + + +

Vars

launch_initiatedIf true, the lifeboat is in the process of launching, and so the code will not allow another launch.
override_being_removedIf true, the lifeboat is in the process of having the xeno override removed by the pilot.
remaining_timeHow long it takes to unlock the console
+

Var Details

launch_initiated + + + + +

+

If true, the lifeboat is in the process of launching, and so the code will not allow another launch.

override_being_removed + + + + +

+

If true, the lifeboat is in the process of having the xeno override removed by the pilot.

remaining_time + + + + +

+

How long it takes to unlock the console

+ + + diff --git a/obj/structure/machinery/computer/shuttle_control.html b/obj/structure/machinery/computer/shuttle_control.html new file mode 100644 index 000000000000..4fee399fa0c6 --- /dev/null +++ b/obj/structure/machinery/computer/shuttle_control.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/machinery/computer/shuttle_control - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

shuttle control console + + + +

+ + +

Vars

disabledHas it been admin-disabled?
+

Var Details

disabled + + + + +

+

Has it been admin-disabled?

+ + + diff --git a/obj/structure/machinery/computer/supplycomp.html b/obj/structure/machinery/computer/supplycomp.html new file mode 100644 index 000000000000..db270a664fce --- /dev/null +++ b/obj/structure/machinery/computer/supplycomp.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/machinery/computer/supplycomp - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

ASRS console + + + +

+ + +

Procs

lock_black_marketPrevents use of black market, even if it is otherwise enabled. If any computer has black market locked out, it applies across all of the currently established ones.

Proc Details

lock_black_market +

+

Prevents use of black market, even if it is otherwise enabled. If any computer has black market locked out, it applies across all of the currently established ones.

+ + + diff --git a/obj/structure/machinery/computer/working_joe.html b/obj/structure/machinery/computer/working_joe.html new file mode 100644 index 000000000000..e36aba215aac --- /dev/null +++ b/obj/structure/machinery/computer/working_joe.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/machinery/computer/working_joe - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

APOLLO Maintenance Controller + + + +

+ +

set ticket back to pending

+ + + +

Vars

datacoreThe datacore storing all the information.
last_loginThe last person to login.
linkThe ID used to link all devices.
notify_soundsNotification sound
+

Var Details

datacore + + + + +

+

The datacore storing all the information.

last_login + + + + +

+

The last person to login.

+

The ID used to link all devices.

notify_sounds + + + + +

+

Notification sound

+ + + diff --git a/obj/structure/machinery/cryopod/evacuation.html b/obj/structure/machinery/cryopod/evacuation.html new file mode 100644 index 000000000000..85d813822394 --- /dev/null +++ b/obj/structure/machinery/cryopod/evacuation.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/machinery/cryopod/evacuation - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/structure/machinery/cryopod/evacuation + + + +

+ + +

Vars

injector_nameThe name of the mob who injected the occupant into the pod. If it does not match the occupant, the occupant can leave.
+

Var Details

injector_name + + + + +

+

The name of the mob who injected the occupant into the pod. If it does not match the occupant, the occupant can leave.

+ + + diff --git a/obj/structure/machinery/defenses.html b/obj/structure/machinery/defenses.html new file mode 100644 index 000000000000..d911f4dc3219 --- /dev/null +++ b/obj/structure/machinery/defenses.html @@ -0,0 +1,65 @@ + + + + + + + /obj/structure/machinery/defenses - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Don't see this + + + +

+ + + + + +

Vars

linked_laptoplaptop which is currently linked to the sentry
nicknameDefence Laptop

Procs

handle_iffUpdate the IFF status of this structure. +@param selection: faction selection string.
update_choiceUpdate state category for this structure. +@param user: user who has initiated this change. +@param category: category of change. +@param selection: configuration value for category.
+

Var Details

linked_laptop + + + + +

+

laptop which is currently linked to the sentry

nickname + + + + +

+

Defence Laptop

Proc Details

handle_iff +

+

Update the IFF status of this structure. +@param selection: faction selection string.

update_choice +

+

Update state category for this structure. +@param user: user who has initiated this change. +@param category: category of change. +@param selection: configuration value for category.

+ + + diff --git a/obj/structure/machinery/defenses/sentry.html b/obj/structure/machinery/defenses/sentry.html new file mode 100644 index 000000000000..cfc85879aa3d --- /dev/null +++ b/obj/structure/machinery/defenses/sentry.html @@ -0,0 +1,80 @@ + + + + + + + /obj/structure/machinery/defenses/sentry - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

UA 571-C sentry gun + + + +

+ + + + + + + + +

Vars

choice_categoriesaction list is configurable for all subtypes, this is just an example
engaged_timertimer triggered when sentry gun shoots at a target to not spam the laptop
low_ammo_timertimer triggered when sentry gun is low on ammo to not spam the laptop
luminosity_strengthLight strength when turned on
sent_empty_ammotimer triggered when sentry gun is out of ammo to not spam the laptop
upgradedCheck if they have been upgraded or not, used for sentry post

Procs

handle_rofUpdate the rate of fire in the sentry gun. +@param level: level of rate of fire, typically single, burst or full auto.
+

Var Details

choice_categories + + + + +

+

action list is configurable for all subtypes, this is just an example

engaged_timer + + + + +

+

timer triggered when sentry gun shoots at a target to not spam the laptop

low_ammo_timer + + + + +

+

timer triggered when sentry gun is low on ammo to not spam the laptop

luminosity_strength + + + + +

+

Light strength when turned on

sent_empty_ammo + + + + +

+

timer triggered when sentry gun is out of ammo to not spam the laptop

upgraded + + + + +

+

Check if they have been upgraded or not, used for sentry post

Proc Details

handle_rof +

+

Update the rate of fire in the sentry gun. +@param level: level of rate of fire, typically single, burst or full auto.

+ + + diff --git a/obj/structure/machinery/defenses/sentry/launchable.html b/obj/structure/machinery/defenses/sentry/launchable.html new file mode 100644 index 000000000000..837c0c745458 --- /dev/null +++ b/obj/structure/machinery/defenses/sentry/launchable.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/machinery/defenses/sentry/launchable - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

UA 571-O sentry post + + + +

+ + + +

Vars

health_upgradeAmount of bonus health they get from upgrade
upgrade_costCost to give sentry extra health
+

Var Details

health_upgrade + + + + +

+

Amount of bonus health they get from upgrade

upgrade_cost + + + + +

+

Cost to give sentry extra health

+ + + diff --git a/obj/structure/machinery/defenses/sentry/premade/deployable/colony/landing_zone.html b/obj/structure/machinery/defenses/sentry/premade/deployable/colony/landing_zone.html new file mode 100644 index 000000000000..876d7f48d5b4 --- /dev/null +++ b/obj/structure/machinery/defenses/sentry/premade/deployable/colony/landing_zone.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/machinery/defenses/sentry/premade/deployable/colony/landing_zone - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

UA-577 Spaceborne Gauss Turret + + + +

+ + + +

Vars

battery_durationHow long the battery for this turret lasts. Will warn low at 70% and critical at 90% use.
battery_stateThe current battery state
+

Var Details

battery_duration + + + + +

+

How long the battery for this turret lasts. Will warn low at 70% and critical at 90% use.

battery_state + + + + +

+

The current battery state

+ + + diff --git a/obj/structure/machinery/disposal.html b/obj/structure/machinery/disposal.html new file mode 100644 index 000000000000..3397496215cb --- /dev/null +++ b/obj/structure/machinery/disposal.html @@ -0,0 +1,187 @@ + + + + + + + /obj/structure/machinery/disposal - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

disposal unit + + + +

+ + + + + + + + + + + + + + + + + + + + + + + +

Vars

active_power_usageThe pneumatic pump power. 3 HP ~ 2200W
brokenUsed for cosmetic broken disposal units.
flushTrue if flush handle is pulled
flush_after_ticksAfter 10 ticks it will look whether it is ready to flush
flush_countThis var adds 1 once per tick. When it reaches flush_after_ticks it resets and tries to flush.
flushingTrue if flushing in progress
modeItem mode 0=off 1=charging 2=charged
narrow_tubeWhether the disposals tube is too narrow for a mob to fit into.
trunkThe attached pipe trunk

Procs

InitializeCreate a new disposal, find the attached trunk (if present) and init gas resvr.
MouseDrop_TAmazing what you can do with a bit of dexterity. +Strong mobs can lift above their own weight. +Mouse drop another mob or self
attack_handHuman interact with machine
attackbyAttack by item places it in to disposal
ejectEject the contents of the disposal unit
ex_actPipe affected by explosion
expelCalled when holder is expelled from a disposal, should usually only occur if the pipe network is modified
flushPerform a flush
go_outLeave the disposal
power_changeCalled when area power changes
processTimed process, charge the gas reservoir and perform flush if ready
relaymoveAttempt to move while inside
updateUpdate the icon & overlays to reflect mode & status
+

Var Details

active_power_usage + + + + +

+

The pneumatic pump power. 3 HP ~ 2200W

broken + + + + +

+

Used for cosmetic broken disposal units.

flush + + + + +

+

True if flush handle is pulled

flush_after_ticks + + + + +

+

After 10 ticks it will look whether it is ready to flush

flush_count + + + + +

+

This var adds 1 once per tick. When it reaches flush_after_ticks it resets and tries to flush.

flushing + + + + +

+

True if flushing in progress

mode + + + + +

+

Item mode 0=off 1=charging 2=charged

narrow_tube + + + + +

+

Whether the disposals tube is too narrow for a mob to fit into.

trunk + + + + +

+

The attached pipe trunk

Proc Details

Initialize +

+

Create a new disposal, find the attached trunk (if present) and init gas resvr.

MouseDrop_T +

+

Amazing what you can do with a bit of dexterity. +Strong mobs can lift above their own weight. +Mouse drop another mob or self

attack_hand +

+

Human interact with machine

attackby +

+

Attack by item places it in to disposal

eject +

+

Eject the contents of the disposal unit

ex_act +

+

Pipe affected by explosion

expel +

+

Called when holder is expelled from a disposal, should usually only occur if the pipe network is modified

flush +

+

Perform a flush

go_out +

+

Leave the disposal

power_change +

+

Called when area power changes

process +

+

Timed process, charge the gas reservoir and perform flush if ready

relaymove +

+

Attempt to move while inside

update +

+

Update the icon & overlays to reflect mode & status

+ + + diff --git a/obj/structure/machinery/door.html b/obj/structure/machinery/door.html new file mode 100644 index 000000000000..6c8e0a60c928 --- /dev/null +++ b/obj/structure/machinery/door.html @@ -0,0 +1,92 @@ + + + + + + + /obj/structure/machinery/door - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Door + + + +

+ + + + + + + + + + +

Vars

filler_turfsFixes multi_tile doors opacity issues.
heavyStops it being forced open through normal means (Hunters/Zombies/Aliens).
masterkey_resistResistance to masterkey
normalspeedIf FALSE it speeds up the autoclosing timing.
openspeedTime to open/close airlock, default is 1 second.

Procs

autocloseUsed for overriding in airlocks
change_filler_opacityAlso refreshes filler_turfs list.
handle_multidoorUpdates collision box and opacity of multi_tile airlocks.
locate_filler_turfsFinds turfs which should be filler ones.
+

Var Details

filler_turfs + + + + +

+

Fixes multi_tile doors opacity issues.

heavy + + + + +

+

Stops it being forced open through normal means (Hunters/Zombies/Aliens).

masterkey_resist + + + + +

+

Resistance to masterkey

normalspeed + + + + +

+

If FALSE it speeds up the autoclosing timing.

openspeed + + + + +

+

Time to open/close airlock, default is 1 second.

Proc Details

autoclose +

+

Used for overriding in airlocks

change_filler_opacity +

+

Also refreshes filler_turfs list.

handle_multidoor +

+

Updates collision box and opacity of multi_tile airlocks.

locate_filler_turfs +

+

Finds turfs which should be filler ones.

+ + + diff --git a/obj/structure/machinery/door/airlock.html b/obj/structure/machinery/door/airlock.html new file mode 100644 index 000000000000..ad3f55e2d8f8 --- /dev/null +++ b/obj/structure/machinery/door/airlock.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/machinery/door/airlock - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

airlock + + + +

+ + +

Procs

get_examine_textDAMAGE CODE

Proc Details

get_examine_text +

+

DAMAGE CODE

+ + + diff --git a/obj/structure/machinery/door/airlock/multi_tile/almayer/dropshiprear/lifeboat/blastdoor.html b/obj/structure/machinery/door/airlock/multi_tile/almayer/dropshiprear/lifeboat/blastdoor.html new file mode 100644 index 000000000000..eba810d3b898 --- /dev/null +++ b/obj/structure/machinery/door/airlock/multi_tile/almayer/dropshiprear/lifeboat/blastdoor.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/machinery/door/airlock/multi_tile/almayer/dropshiprear/lifeboat/blastdoor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

bulkhead blast door + + + +

+ +

External airlock that is part of the lifeboat dock

+

Vars

linked_dockID of the related stationary docking port operating this
+

Var Details

linked_dock + + + + +

+

ID of the related stationary docking port operating this

+ + + diff --git a/obj/structure/machinery/door/airlock/sandstone/runed.html b/obj/structure/machinery/door/airlock/sandstone/runed.html new file mode 100644 index 000000000000..7e2779d16bea --- /dev/null +++ b/obj/structure/machinery/door/airlock/sandstone/runed.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/machinery/door/airlock/sandstone/runed - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Runed Sandstone Airlock + + + +

+ + +

Procs

bumpopenStops the door being interacted with, without wristblades.

Proc Details

bumpopen +

+

Stops the door being interacted with, without wristblades.

+ + + diff --git a/obj/structure/machinery/faxmachine.html b/obj/structure/machinery/faxmachine.html new file mode 100644 index 000000000000..d520bbbe3b78 --- /dev/null +++ b/obj/structure/machinery/faxmachine.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/machinery/faxmachine - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

General Purpose Fax Machine + + + +

+ + + + + +

Vars

departmentOur department
fax_cooldownstorer var for cooldown on sending faxes
networkFluff network shown by fax machine when logged in
target_departmentTarget department
+

Var Details

department + + + + +

+

Our department

fax_cooldown + + + + +

+

storer var for cooldown on sending faxes

network + + + + +

+

Fluff network shown by fax machine when logged in

target_department + + + + +

+

Target department

+ + + diff --git a/obj/structure/machinery/floodlight.html b/obj/structure/machinery/floodlight.html new file mode 100644 index 000000000000..50c715ab45c9 --- /dev/null +++ b/obj/structure/machinery/floodlight.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/machinery/floodlight - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

emergency floodlight + + + +

+ + + + + +

Vars

base_icon_statebase state
on_light_rangeHow far the light will go when the floodlight is on
toggleableWhether or not the floodlight can be toggled on or off
turned_onWhether or not the floodlight is turned on, disconnected from whether it has power or is lit
+

Var Details

base_icon_state + + + + +

+

base state

on_light_range + + + + +

+

How far the light will go when the floodlight is on

toggleable + + + + +

+

Whether or not the floodlight can be toggled on or off

turned_on + + + + +

+

Whether or not the floodlight is turned on, disconnected from whether it has power or is lit

+ + + diff --git a/obj/structure/machinery/fuelcell_recycler.html b/obj/structure/machinery/fuelcell_recycler.html new file mode 100644 index 000000000000..82c5bdea8426 --- /dev/null +++ b/obj/structure/machinery/fuelcell_recycler.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/machinery/fuelcell_recycler - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

fuel cell recycler + + + +

+ + + + +

Vars

cell_leftA fuel cell in the recycler
cell_rightA fuel cell in the recycler
recharge_amountHow much to recharge the cells per process
+

Var Details

cell_left + + + + +

+

A fuel cell in the recycler

cell_right + + + + +

+

A fuel cell in the recycler

recharge_amount + + + + +

+

How much to recharge the cells per process

+ + + diff --git a/obj/structure/machinery/gibber.html b/obj/structure/machinery/gibber.html new file mode 100644 index 000000000000..7601b4ae7e79 --- /dev/null +++ b/obj/structure/machinery/gibber.html @@ -0,0 +1,37 @@ + + + + + + + /obj/structure/machinery/gibber - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Gibber + + + +

+ + +

Procs

ejectIf synth is getting gibbed, we will 'soft gib' them, but this is still pretty LRP so let admin know. +If someone's being LRP and doing funny chef shit, this lets admins know. This shouldn't flag preds, though.

Proc Details

eject +

+

If synth is getting gibbed, we will 'soft gib' them, but this is still pretty LRP so let admin know. +If someone's being LRP and doing funny chef shit, this lets admins know. This shouldn't flag preds, though.

+ + + diff --git a/obj/structure/machinery/keycard_auth/lockdown.html b/obj/structure/machinery/keycard_auth/lockdown.html new file mode 100644 index 000000000000..2aa294208c45 --- /dev/null +++ b/obj/structure/machinery/keycard_auth/lockdown.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/machinery/keycard_auth/lockdown - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

automated lockdown override + + + +

+ + +

Procs

broadcast_requestWe are the SECOND keycard device used (our event_source has already been set)

Proc Details

broadcast_request +

+

We are the SECOND keycard device used (our event_source has already been set)

+ + + diff --git a/obj/structure/machinery/m56d_hmg.html b/obj/structure/machinery/m56d_hmg.html new file mode 100644 index 000000000000..6e4af5dc48ea --- /dev/null +++ b/obj/structure/machinery/m56d_hmg.html @@ -0,0 +1,204 @@ + + + + + + + /obj/structure/machinery/m56d_hmg - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

M56D heavy machine gun + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

autofire_slow_multA multiplier for how slow this gun should fire in automatic as opposed to burst. 1 is normal, 1.2 is 20% slower, 0.8 is 20% faster, etc.
burst_amountHow many rounds are fired per burst
burst_fire_delayHow much time should pass in between burst fire shots
burst_firingIf the gun is currently burst firing
display_ammoIf the gun should display its ammo count
fire_delayHow much time should pass in between full auto shots, slightly higher than burst due to click delay and similar things that slow firing down
gun_firemodeWhat firemode the gun is currently in
gun_firemodesWhat firemodes this gun has
semiauto_cooldown_timeHow long between semi-auto shots this should wait, to reduce possible spam
semiauto_fire_cooldownSemi auto cooldown
shoot_degreeHow many degrees in each direction the gun should be able to fire
shots_firedHow many rounds have been fired in the current burst/auto

Procs

change_targetUpdate the target if you draged your mouse
clean_targetSet the target to its turf, so we keep shooting even when it was qdeled
display_ammoPrint how much ammo is left to chat
do_toggle_firemodeToggles the gun's firemode one down the list
get_burst_firingGetter for burst_firing
get_fire_delaygetter for fire_delay
reset_fireClean up the target, shots fired, and other things related to when you stop firing
set_burst_amountsetter for burst_amount
set_burst_fire_delaySetter for burst_delay
set_burst_firingSetter for burst_firing
set_fire_delaysetter for fire_delay
set_targetSet the target and take care of hard delete
start_fireCheck if the gun can fire and add it to bucket auto_fire system if needed, or just fire the gun if not
+

Var Details

autofire_slow_mult + + + + +

+

A multiplier for how slow this gun should fire in automatic as opposed to burst. 1 is normal, 1.2 is 20% slower, 0.8 is 20% faster, etc.

burst_amount + + + + +

+

How many rounds are fired per burst

burst_fire_delay + + + + +

+

How much time should pass in between burst fire shots

burst_firing + + + + +

+

If the gun is currently burst firing

display_ammo + + + + +

+

If the gun should display its ammo count

fire_delay + + + + +

+

How much time should pass in between full auto shots, slightly higher than burst due to click delay and similar things that slow firing down

gun_firemode + + + + +

+

What firemode the gun is currently in

gun_firemodes + + + + +

+

What firemodes this gun has

semiauto_cooldown_time + + + + +

+

How long between semi-auto shots this should wait, to reduce possible spam

semiauto_fire_cooldown + + + + +

+

Semi auto cooldown

shoot_degree + + + + +

+

How many degrees in each direction the gun should be able to fire

shots_fired + + + + +

+

How many rounds have been fired in the current burst/auto

Proc Details

change_target +

+

Update the target if you draged your mouse

clean_target +

+

Set the target to its turf, so we keep shooting even when it was qdeled

display_ammo +

+

Print how much ammo is left to chat

do_toggle_firemode +

+

Toggles the gun's firemode one down the list

get_burst_firing +

+

Getter for burst_firing

get_fire_delay +

+

getter for fire_delay

reset_fire +

+

Clean up the target, shots fired, and other things related to when you stop firing

set_burst_amount +

+

setter for burst_amount

set_burst_fire_delay +

+

Setter for burst_delay

set_burst_firing +

+

Setter for burst_firing

set_fire_delay +

+

setter for fire_delay

set_target +

+

Set the target and take care of hard delete

start_fire +

+

Check if the gun can fire and add it to bucket auto_fire system if needed, or just fire the gun if not

+ + + diff --git a/obj/structure/machinery/m56d_post.html b/obj/structure/machinery/m56d_post.html new file mode 100644 index 000000000000..35e0da7b5236 --- /dev/null +++ b/obj/structure/machinery/m56d_post.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/machinery/m56d_post - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

M56D mount + + + +

+ + + + +

Vars

gun_healthHealth of the mounted gun
gun_mountedWhether a gun is mounted
gun_roundsAmmo amount of the mounted gun
+

Var Details

gun_health + + + + +

+

Health of the mounted gun

gun_mounted + + + + +

+

Whether a gun is mounted

gun_rounds + + + + +

+

Ammo amount of the mounted gun

+ + + diff --git a/obj/structure/machinery/medical_pod.html b/obj/structure/machinery/medical_pod.html new file mode 100644 index 000000000000..a86e9c1914f4 --- /dev/null +++ b/obj/structure/machinery/medical_pod.html @@ -0,0 +1,85 @@ + + + + + + + /obj/structure/machinery/medical_pod - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

generic medical pod + + + +

+ + + + + + + + + +

Vars

entry_timerdo_after on entry via the move_inside verb
exit_stunstun on exiting, IN SECONDS BY DEFAULT, DO NOT PUT "SECONDS" AFTER IT
go_in_timerdo_after on entry via the go_in proc
occupantthe person in the pod
push_in_timerdo_after on entry via being put in by another person
skilllocksurgical skill lock on putting people in

Procs

go_inthe putter is the guy putting the person in the pod
go_outwho is doing the work of putting/going in the scanner
+

Var Details

entry_timer + + + + +

+

do_after on entry via the move_inside verb

exit_stun + + + + +

+

stun on exiting, IN SECONDS BY DEFAULT, DO NOT PUT "SECONDS" AFTER IT

go_in_timer + + + + +

+

do_after on entry via the go_in proc

occupant + + + + +

+

the person in the pod

push_in_timer + + + + +

+

do_after on entry via being put in by another person

skilllock + + + + +

+

surgical skill lock on putting people in

Proc Details

go_in +

+

the putter is the guy putting the person in the pod

go_out +

+

who is doing the work of putting/going in the scanner

+ + + diff --git a/obj/structure/machinery/medical_pod/sleeper.html b/obj/structure/machinery/medical_pod/sleeper.html new file mode 100644 index 000000000000..7bfa6e0f117f --- /dev/null +++ b/obj/structure/machinery/medical_pod/sleeper.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/machinery/medical_pod/sleeper - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

sleeper + + + +

+ + +

Vars

upgradedis it already upgraded by research disc and do we have upgraded chemicals?
+

Var Details

upgraded + + + + +

+

is it already upgraded by research disc and do we have upgraded chemicals?

+ + + diff --git a/obj/structure/machinery/photocopier.html b/obj/structure/machinery/photocopier.html new file mode 100644 index 000000000000..adbed5116d27 --- /dev/null +++ b/obj/structure/machinery/photocopier.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/machinery/photocopier - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

photocopier + + + +

+ +

Normal Photocopier, made by Seegson

+ + + +

Vars

animate_statethe flick state to use when inserting paper into the machine
copieshow many copies to print!
maxcopieshow many copies can be copied at once- idea shamelessly stolen from bs12's copier!
tonerhow much toner is left! woooooo~
+

Var Details

animate_state + + + + +

+

the flick state to use when inserting paper into the machine

copies + + + + +

+

how many copies to print!

maxcopies + + + + +

+

how many copies can be copied at once- idea shamelessly stolen from bs12's copier!

toner + + + + +

+

how much toner is left! woooooo~

+ + + diff --git a/obj/structure/machinery/pipedispenser.html b/obj/structure/machinery/pipedispenser.html new file mode 100644 index 000000000000..16ec58747bf8 --- /dev/null +++ b/obj/structure/machinery/pipedispenser.html @@ -0,0 +1,37 @@ + + + + + + + /obj/structure/machinery/pipedispenser - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Pipe Dispenser + + + +

+ + +

Procs

TopicZ-Level stuff +Z-Level stuff

Proc Details

Topic +

+

Z-Level stuff +Z-Level stuff

+ + + diff --git a/obj/structure/machinery/pipedispenser/disposal.html b/obj/structure/machinery/pipedispenser/disposal.html new file mode 100644 index 000000000000..5372bb584920 --- /dev/null +++ b/obj/structure/machinery/pipedispenser/disposal.html @@ -0,0 +1,37 @@ + + + + + + + /obj/structure/machinery/pipedispenser/disposal - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

Disposal Pipe Dispenser + + + +

+ + +

Procs

TopicZ-Level stuff +Z-Level stuff

Proc Details

Topic +

+

Z-Level stuff +Z-Level stuff

+ + + diff --git a/obj/structure/machinery/power.html b/obj/structure/machinery/power.html new file mode 100644 index 000000000000..24d8f443edf9 --- /dev/null +++ b/obj/structure/machinery/power.html @@ -0,0 +1,37 @@ + + + + + + + /obj/structure/machinery/power - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/obj/structure/machinery/power + + + +

+ + +

Procs

get_connectionsZ-Level Stuff +Z-Level Stuff

Proc Details

get_connections +

+

Z-Level Stuff +Z-Level Stuff

+ + + diff --git a/obj/structure/machinery/power/reactor.html b/obj/structure/machinery/power/reactor.html new file mode 100644 index 000000000000..8dd5295684f9 --- /dev/null +++ b/obj/structure/machinery/power/reactor.html @@ -0,0 +1,120 @@ + + + + + + + /obj/structure/machinery/power/reactor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

S-52 fusion reactor + + + +

+ + + + + + + + + + + + + + +

Vars

buildstateHow damaged the reactor is
cur_tickHow many ticks since last fail check
fail_check_ticksHow often the reactor checks if it can fail
fail_rate% chance of the reactor failing every check_failure
fusion_cellThe reactors fuel cell, fail rate increases if empty
is_onWhether the reactor is functional
is_ship_reactorWhether the reactor is on the ship
original_fail_rateOriginal fail rate of the reactor
overloadedIf the generator is overloaded
power_gen_percent% of power produced, increases to 100% over time
power_generation_maxHow much the reactor will generate at max power_gen_percent
power_percent_statesAll icon states split by power_gen_percent
require_fusion_cellWhether the reactor requires a fusion cell
+

Var Details

buildstate + + + + +

+

How damaged the reactor is

cur_tick + + + + +

+

How many ticks since last fail check

fail_check_ticks + + + + +

+

How often the reactor checks if it can fail

fail_rate + + + + +

+

% chance of the reactor failing every check_failure

fusion_cell + + + + +

+

The reactors fuel cell, fail rate increases if empty

is_on + + + + +

+

Whether the reactor is functional

is_ship_reactor + + + + +

+

Whether the reactor is on the ship

original_fail_rate + + + + +

+

Original fail rate of the reactor

overloaded + + + + +

+

If the generator is overloaded

power_gen_percent + + + + +

+

% of power produced, increases to 100% over time

power_generation_max + + + + +

+

How much the reactor will generate at max power_gen_percent

power_percent_states + + + + +

+

All icon states split by power_gen_percent

require_fusion_cell + + + + +

+

Whether the reactor requires a fusion cell

+ + + diff --git a/obj/structure/machinery/prop/almayer/CICmap.html b/obj/structure/machinery/prop/almayer/CICmap.html new file mode 100644 index 000000000000..edbc66e607fd --- /dev/null +++ b/obj/structure/machinery/prop/almayer/CICmap.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/machinery/prop/almayer/CICmap - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

map table + + + +

+ + + +

Vars

factionThe faction that is intended to use this structure (determines type of tacmap used)
minimap_typeflags that we want to be shown when you interact with this table
+

Var Details

faction + + + + +

+

The faction that is intended to use this structure (determines type of tacmap used)

minimap_type + + + + +

+

flags that we want to be shown when you interact with this table

+ + + diff --git a/obj/structure/machinery/recharge_station.html b/obj/structure/machinery/recharge_station.html new file mode 100644 index 000000000000..eaea9cd9a7bd --- /dev/null +++ b/obj/structure/machinery/recharge_station.html @@ -0,0 +1,85 @@ + + + + + + + /obj/structure/machinery/recharge_station - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

synthetic maintenance station + + + +

+ + + + + + + + + +

Vars

charging_cap_activeActive Cap - When cyborg is inside
charging_cap_passivePassive Cap - Recharging internal capacitor when no cyborg is inside
current_internal_chargeStarts charged, to prevent power surges on round start
exit_stunstun time upon exiting, if at all
icon_update_tickUsed to update icon only once every 10 ticks
known_implantsimplants to not remove
max_internal_chargeTwo charged borgs in a row with default cell
occupantthe borg inside
+

Var Details

charging_cap_active + + + + +

+

Active Cap - When cyborg is inside

charging_cap_passive + + + + +

+

Passive Cap - Recharging internal capacitor when no cyborg is inside

current_internal_charge + + + + +

+

Starts charged, to prevent power surges on round start

exit_stun + + + + +

+

stun time upon exiting, if at all

icon_update_tick + + + + +

+

Used to update icon only once every 10 ticks

known_implants + + + + +

+

implants to not remove

max_internal_charge + + + + +

+

Two charged borgs in a row with default cell

occupant + + + + +

+

the borg inside

+ + + diff --git a/obj/structure/machinery/recycler.html b/obj/structure/machinery/recycler.html new file mode 100644 index 000000000000..ab1949bfca63 --- /dev/null +++ b/obj/structure/machinery/recycler.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/machinery/recycler - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

recycler + + + +

+ + + +

Vars

crate_rewardAmount of metal refunded per crate, by default about 2 metal sheets (building one takes 5)
sheets_per_batchAmount of sheets to stack before outputting a stack
+

Var Details

crate_reward + + + + +

+

Amount of metal refunded per crate, by default about 2 metal sheets (building one takes 5)

sheets_per_batch + + + + +

+

Amount of sheets to stack before outputting a stack

+ + + diff --git a/obj/structure/machinery/sensortower.html b/obj/structure/machinery/sensortower.html new file mode 100644 index 000000000000..3c24e6101dd4 --- /dev/null +++ b/obj/structure/machinery/sensortower.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/machinery/sensortower - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

experimental sensor tower + + + +

+ + +

Vars

minimap_addedweakrefs of xenos temporarily added to the marine minimap
+

Var Details

minimap_added + + + + +

+

weakrefs of xenos temporarily added to the marine minimap

+ + + diff --git a/obj/structure/machinery/shower.html b/obj/structure/machinery/shower.html new file mode 100644 index 000000000000..8d11c965a2ee --- /dev/null +++ b/obj/structure/machinery/shower.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/machinery/shower - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

shower + + + +

+ + + + +

Vars

ismistneeds a var so we can make it linger~
mobpresenttrue if there is a mob on the shower's loc, this is to ease process()
watertempfreezing, normal, or boiling
+

Var Details

ismist + + + + +

+

needs a var so we can make it linger~

mobpresent + + + + +

+

true if there is a mob on the shower's loc, this is to ease process()

watertemp + + + + +

+

freezing, normal, or boiling

+ + + diff --git a/obj/structure/machinery/smartfridge.html b/obj/structure/machinery/smartfridge.html new file mode 100644 index 000000000000..3987e668b563 --- /dev/null +++ b/obj/structure/machinery/smartfridge.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/machinery/smartfridge - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

SmartFridge + + + +

+ +

Assoc list of names -> list(items)

+

Procs

delete_contentsDeletes given object in contents of the smartfridge

Proc Details

delete_contents +

+

Deletes given object in contents of the smartfridge

+ + + diff --git a/obj/structure/machinery/telecomms/relay/preset/tower/mapcomms.html b/obj/structure/machinery/telecomms/relay/preset/tower/mapcomms.html new file mode 100644 index 000000000000..cac52f16169f --- /dev/null +++ b/obj/structure/machinery/telecomms/relay/preset/tower/mapcomms.html @@ -0,0 +1,78 @@ + + + + + + + /obj/structure/machinery/telecomms/relay/preset/tower/mapcomms - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

TC-3T static telecommunications tower + + + +

+ + + + + + + + +

Vars

corruptedTower has been taken over by xenos, is not usable
corruption_delayHolds the delay for when a cluster can recorrupt the comms tower after a pylon has been destroyed
corruption_imageHeld image for the current overlay on the tower from xeno corruption

Procs

handle_xeno_acquisitionHandles xenos corrupting the tower when weeds touch the turf it is located on
register_with_turfHandles re-registering signals on new turfs if changed
switch_to_idle_corruptionHandles moving the overlay from growing to idle
uncorruptHandles removing corruption effects from the comms relay
+

Var Details

corrupted + + + + +

+

Tower has been taken over by xenos, is not usable

corruption_delay + + + + +

+

Holds the delay for when a cluster can recorrupt the comms tower after a pylon has been destroyed

corruption_image + + + + +

+

Held image for the current overlay on the tower from xeno corruption

Proc Details

handle_xeno_acquisition +

+

Handles xenos corrupting the tower when weeds touch the turf it is located on

register_with_turf +

+

Handles re-registering signals on new turfs if changed

switch_to_idle_corruption +

+

Handles moving the overlay from growing to idle

uncorrupt +

+

Handles removing corruption effects from the comms relay

+ + + diff --git a/obj/structure/machinery/vending.html b/obj/structure/machinery/vending.html new file mode 100644 index 000000000000..49df1681fe15 --- /dev/null +++ b/obj/structure/machinery/vending.html @@ -0,0 +1,169 @@ + + + + + + + /obj/structure/machinery/vending - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Vendomat + + + +

+ + + + + + + + + + + + + + + + + + + + + +

Vars

activeif false, the vendor will not send sales pitches
check_accountsif true, checks the relevant account has enough money before vending
delay_product_spawnif set, uses sleep() in product spawn proc (mostly for seeds to retrieve correct names).
extended_inventorycan we access the hidden inventory?
hacking_safetyif true, will never shoot inventory or allow all access
icon_denyicon_state when failing to vend
icon_vendicon_state when vending
last_sloganwhen did we last pitch?
panel_openif the vendor is currently being hacked
product_adsstring of small ad messages in the vending screen - random chance
product_slogansstring of slogans separated by semicolons, optional
product_typeUsed to increase prices of a specific type of vendor.
seconds_electrifiedshock customers like an airlock.
shoot_inventoryfire items at customers! We're broken!
shut_upstop spouting those godawful pitches!
slogan_delayhow long until we can pitch again?
vend_delaytime delay between items can be vended
vend_readyif the vendor can vend an item
vend_replysent after vending an item

Procs

checking_idReturns TRUE if this vending machine is scanning for IDs.
+

Var Details

active + + + + +

+

if false, the vendor will not send sales pitches

check_accounts + + + + +

+

if true, checks the relevant account has enough money before vending

delay_product_spawn + + + + +

+

if set, uses sleep() in product spawn proc (mostly for seeds to retrieve correct names).

extended_inventory + + + + +

+

can we access the hidden inventory?

hacking_safety + + + + +

+

if true, will never shoot inventory or allow all access

icon_deny + + + + +

+

icon_state when failing to vend

icon_vend + + + + +

+

icon_state when vending

last_slogan + + + + +

+

when did we last pitch?

panel_open + + + + +

+

if the vendor is currently being hacked

product_ads + + + + +

+

string of small ad messages in the vending screen - random chance

product_slogans + + + + +

+

string of slogans separated by semicolons, optional

product_type + + + + +

+

Used to increase prices of a specific type of vendor.

seconds_electrified + + + + +

+

shock customers like an airlock.

shoot_inventory + + + + +

+

fire items at customers! We're broken!

shut_up + + + + +

+

stop spouting those godawful pitches!

slogan_delay + + + + +

+

how long until we can pitch again?

vend_delay + + + + +

+

time delay between items can be vended

vend_ready + + + + +

+

if the vendor can vend an item

vend_reply + + + + +

+

sent after vending an item

Proc Details

checking_id +

+

Returns TRUE if this vending machine is scanning for IDs.

+ + + diff --git a/obj/structure/machinery/xenoanalyzer.html b/obj/structure/machinery/xenoanalyzer.html new file mode 100644 index 000000000000..4b0916a41de7 --- /dev/null +++ b/obj/structure/machinery/xenoanalyzer.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/machinery/xenoanalyzer - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Biomass Analyzer + + + +

+ + +

Vars

technology_purchasedassoc list containing the path to every upgrade followed by a number representing times this tech was bought. used by price inflation mechanic to increase/decrease price depending on the amount of times you bought it.
+

Var Details

technology_purchased + + + + +

+

assoc list containing the path to every upgrade followed by a number representing times this tech was bought. used by price inflation mechanic to increase/decrease price depending on the amount of times you bought it.

+ + + diff --git a/obj/structure/medical_supply_link.html b/obj/structure/medical_supply_link.html new file mode 100644 index 000000000000..c8790551066d --- /dev/null +++ b/obj/structure/medical_supply_link.html @@ -0,0 +1,42 @@ + + + + + + + /obj/structure/medical_supply_link - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

medilink supply port + + + +

+ + + +

Procs

do_clamp_animationPerforms the clamping animation when a structure is anchored in our loc
do_unclamp_animationPerforms the unclamping animation when a structure is unanchored in our loc

Proc Details

do_clamp_animation +

+

Performs the clamping animation when a structure is anchored in our loc

do_unclamp_animation +

+

Performs the unclamping animation when a structure is unanchored in our loc

+ + + diff --git a/obj/structure/mortar.html b/obj/structure/mortar.html new file mode 100644 index 000000000000..60f081e3c60e --- /dev/null +++ b/obj/structure/mortar.html @@ -0,0 +1,64 @@ + + + + + + + /obj/structure/mortar - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

M402 mortar + + + +

+ + + + + + +

Vars

firingUsed for deconstruction and aiming sanity
fixedIf set to 1, can't unanchor and move the mortar, used for map spawns and WO
offset_per_turfsNumber of turfs to offset from target by 1
ship_sideif true, blows up the shell immediately
travel_timeConstant, assuming perfect parabolic trajectory. ONLY THE DELAY BEFORE INCOMING WARNING WHICH ADDS 45 TICKS
+

Var Details

firing + + + + +

+

Used for deconstruction and aiming sanity

fixed + + + + +

+

If set to 1, can't unanchor and move the mortar, used for map spawns and WO

offset_per_turfs + + + + +

+

Number of turfs to offset from target by 1

ship_side + + + + +

+

if true, blows up the shell immediately

travel_time + + + + +

+

Constant, assuming perfect parabolic trajectory. ONLY THE DELAY BEFORE INCOMING WARNING WHICH ADDS 45 TICKS

+ + + diff --git a/obj/structure/ob_ammo/warhead.html b/obj/structure/ob_ammo/warhead.html new file mode 100644 index 000000000000..0b24ea5d330a --- /dev/null +++ b/obj/structure/ob_ammo/warhead.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/ob_ammo/warhead - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

theoretical orbital ammo + + + +

+ + +

Procs

handle_ob_shakeproc designed for handling ob camera shakes, takes the target location as input and calculates camera shake based off user location.

Proc Details

handle_ob_shake +

+

proc designed for handling ob camera shakes, takes the target location as input and calculates camera shake based off user location.

+ + + diff --git a/obj/structure/pipes.html b/obj/structure/pipes.html new file mode 100644 index 000000000000..f706018f4903 --- /dev/null +++ b/obj/structure/pipes.html @@ -0,0 +1,59 @@ + + + + + + + /obj/structure/pipes - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/obj/structure/pipes + + + +

+ + + + + +

Vars

explodeyWhether or not the pipe will explode (when on the Almayer) during hijack
exploding_typesThe grenade subtypes that pipes will use when they explode

Procs

kablooieMakes the pipe go boom.
warning_explodeMakes a warning telegraph appear and, after a certain duration, explodes.
+

Var Details

explodey + + + + +

+

Whether or not the pipe will explode (when on the Almayer) during hijack

exploding_types + + + + +

+

The grenade subtypes that pipes will use when they explode

Proc Details

kablooie +

+

Makes the pipe go boom.

warning_explode +

+

Makes a warning telegraph appear and, after a certain duration, explodes.

+

Params: +time_till: required, the time until the explosion occurs. The sound file lasts 5 seconds.

+ + + diff --git a/obj/structure/prop/brazier.html b/obj/structure/prop/brazier.html new file mode 100644 index 000000000000..5eb61e645ae1 --- /dev/null +++ b/obj/structure/prop/brazier.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/prop/brazier - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

brazier + + + +

+ + + +

Vars

frame_typeWhat obj this becomes when it gets to its next stage of construction / ignition
stateWhat is used to progress to the next stage
+

Var Details

frame_type + + + + +

+

What obj this becomes when it gets to its next stage of construction / ignition

state + + + + +

+

What is used to progress to the next stage

+ + + diff --git a/obj/structure/prop/brazier/campfire.html b/obj/structure/prop/brazier/campfire.html new file mode 100644 index 000000000000..9ede6adb25e0 --- /dev/null +++ b/obj/structure/prop/brazier/campfire.html @@ -0,0 +1,71 @@ + + + + + + + /obj/structure/prop/brazier/campfire - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

campfire + + + +

+ + + + + + + +

Vars

extinguishableIf the fire can be manually put out
fuel_stage_timeTime for it to burn through fuel
heating_rangeHow many tiles the heating and sound goes
quietMake no noise
remaining_fuelHow much fuel it has
time_to_soundtime between sounds
+

Var Details

extinguishable + + + + +

+

If the fire can be manually put out

fuel_stage_time + + + + +

+

Time for it to burn through fuel

heating_range + + + + +

+

How many tiles the heating and sound goes

quiet + + + + +

+

Make no noise

remaining_fuel + + + + +

+

How much fuel it has

time_to_sound + + + + +

+

time between sounds

+ + + diff --git a/obj/structure/prop/invuln/joey.html b/obj/structure/prop/invuln/joey.html new file mode 100644 index 000000000000..5d420412b4c3 --- /dev/null +++ b/obj/structure/prop/invuln/joey.html @@ -0,0 +1,78 @@ + + + + + + + /obj/structure/prop/invuln/joey - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Workin' Joey + + + +

+ + + + + + + + +

Vars

damage_delaydelay between attack voicelines. Short but done for anti-spam
damagedlist of voicelines to use when damaged
quip_delaydelay between Quips. Slightly randomized with quip_delay_minimum plus a random number
quip_delay_minimumconverted into minutes when used to determine cooldown timer between quips
quipslist of quip emotes, taken from Working Joe

Procs

attackedA terrible way of handling being hit. If signals would work it should be used.
emoteSAY THE LINE JOE
+

Var Details

damage_delay + + + + +

+

delay between attack voicelines. Short but done for anti-spam

damaged + + + + +

+

list of voicelines to use when damaged

quip_delay + + + + +

+

delay between Quips. Slightly randomized with quip_delay_minimum plus a random number

quip_delay_minimum + + + + +

+

converted into minutes when used to determine cooldown timer between quips

quips + + + + +

+

list of quip emotes, taken from Working Joe

Proc Details

attacked +

+

A terrible way of handling being hit. If signals would work it should be used.

emote +

+

SAY THE LINE JOE

+ + + diff --git a/obj/structure/prop/wooden_cross.html b/obj/structure/prop/wooden_cross.html new file mode 100644 index 000000000000..685a3ec8a35c --- /dev/null +++ b/obj/structure/prop/wooden_cross.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/prop/wooden_cross - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

wooden cross + + + +

+ + + +

Vars

engravedThis is for cross engraving/writing.
taggedThis is for cross dogtags.
+

Var Details

engraved + + + + +

+

This is for cross engraving/writing.

tagged + + + + +

+

This is for cross dogtags.

+ + + diff --git a/obj/structure/restock_cart.html b/obj/structure/restock_cart.html new file mode 100644 index 000000000000..5102d718ad44 --- /dev/null +++ b/obj/structure/restock_cart.html @@ -0,0 +1,71 @@ + + + + + + + /obj/structure/restock_cart - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

restock cart + + + +

+ + + + + + + +

Vars

attacked_soundThe sound to play when attacked
destroyed_lootRandom loot to spawn if destroyed as assoc list of type_path = max_quantity
destroyed_soundThe sound to play when destroyed
supplies_maxThe max quantity of things this can restock
supplies_remainingThe quantity of things this can restock
supply_descriptorThe descriptor for the kind of things being restocked
+

Var Details

attacked_sound + + + + +

+

The sound to play when attacked

destroyed_loot + + + + +

+

Random loot to spawn if destroyed as assoc list of type_path = max_quantity

destroyed_sound + + + + +

+

The sound to play when destroyed

supplies_max + + + + +

+

The max quantity of things this can restock

supplies_remaining + + + + +

+

The quantity of things this can restock

supply_descriptor + + + + +

+

The descriptor for the kind of things being restocked

+ + + diff --git a/obj/structure/ship_ammo.html b/obj/structure/ship_ammo.html new file mode 100644 index 000000000000..99082b926e5b --- /dev/null +++ b/obj/structure/ship_ammo.html @@ -0,0 +1,127 @@ + + + + + + + /obj/structure/ship_ammo - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/obj/structure/ship_ammo + + + +

+ +

Dropship weaponry ammunition

+ + + + + + + + + + + + + +

Vars

accuracy_rangeHow many tiles the ammo can deviate from the laser target
ammo_countAmmunition count remaining
ammo_nameWhat to call the ammo in the ammo transferring message
ammo_used_per_firingAmmunition expended each time this is fired
equipment_typeType of dropship equipment that accepts this type of ammo.
fire_mission_delayDelay between firing steps
max_ammo_countMaximal ammunition count
max_inaccuracyMaximum deviation allowed when the ammo is not longer guided by a laser
point_costCost to build in the fabricator, zero means unbuildable
source_mobMob that fired this ammunition (the pilot pressing the trigger)
transferable_ammoWhether the ammo inside this magazine can be transferred to another magazine.
travelling_timeTime to impact in deciseconds
warning_soundSound played mere seconds before impact
warning_sound_volumeVolume of the sound played before impact
+

Var Details

accuracy_range + + + + +

+

How many tiles the ammo can deviate from the laser target

ammo_count + + + + +

+

Ammunition count remaining

ammo_name + + + + +

+

What to call the ammo in the ammo transferring message

ammo_used_per_firing + + + + +

+

Ammunition expended each time this is fired

equipment_type + + + + +

+

Type of dropship equipment that accepts this type of ammo.

fire_mission_delay + + + + +

+

Delay between firing steps

max_ammo_count + + + + +

+

Maximal ammunition count

max_inaccuracy + + + + +

+

Maximum deviation allowed when the ammo is not longer guided by a laser

point_cost + + + + +

+

Cost to build in the fabricator, zero means unbuildable

source_mob + + + + +

+

Mob that fired this ammunition (the pilot pressing the trigger)

transferable_ammo + + + + +

+

Whether the ammo inside this magazine can be transferred to another magazine.

travelling_time + + + + +

+

Time to impact in deciseconds

warning_sound + + + + +

+

Sound played mere seconds before impact

warning_sound_volume + + + + +

+

Volume of the sound played before impact

+ + + diff --git a/obj/structure/ship_ammo/sentry.html b/obj/structure/ship_ammo/sentry.html new file mode 100644 index 000000000000..520654b5922a --- /dev/null +++ b/obj/structure/ship_ammo/sentry.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/ship_ammo/sentry - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

A/C-49-P Air Deployable Sentry + + + +

+ + +

Vars

breakeable_structuresSpecial structures it needs to break with drop pod
+

Var Details

breakeable_structures + + + + +

+

Special structures it needs to break with drop pod

+ + + diff --git a/obj/structure/sink.html b/obj/structure/sink.html new file mode 100644 index 000000000000..d0f76cc79e79 --- /dev/null +++ b/obj/structure/sink.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/sink - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

sink + + + +

+ + +

Vars

busyif something's being washed at the moment
+

Var Details

busy + + + + +

+

if something's being washed at the moment

+ + + diff --git a/obj/structure/surface/table.html b/obj/structure/surface/table.html new file mode 100644 index 000000000000..0b5cc6f5d439 --- /dev/null +++ b/obj/structure/surface/table.html @@ -0,0 +1,42 @@ + + + + + + + /obj/structure/surface/table - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

table + + + +

+ + + +

Procs

flipFlip a table along a certain direction. By default checks whether table is flippable along axis perpendicular to flip direction.
straight_table_checkChecks whether a table is a straight line along a given axis

Proc Details

flip +

+

Flip a table along a certain direction. By default checks whether table is flippable along axis perpendicular to flip direction.

straight_table_check +

+

Checks whether a table is a straight line along a given axis

+ + + diff --git a/obj/structure/tent.html b/obj/structure/tent.html new file mode 100644 index 000000000000..ca38123b9149 --- /dev/null +++ b/obj/structure/tent.html @@ -0,0 +1,65 @@ + + + + + + + /obj/structure/tent - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

tent + + + +

+ +

Structures serving as landmarks and providing a buff to its users. +A notable code feature is that they use a separate roof image that phases out when you enter the tent.

+ + + + +

Vars

cold_protection_factorHow much cold protection to add to entering humans - Full body clothing means complete (1) protection
roof_imageRoof image displayed on the roof plane
roof_stateRoof display icon_state or null to disable
x_dimTurf dimensions along the X axis, beginning from left, at ground level
y_dimTurf dimensions along the Y axis, beginning from bottom, at ground level
+

Var Details

cold_protection_factor + + + + +

+

How much cold protection to add to entering humans - Full body clothing means complete (1) protection

roof_image + + + + +

+

Roof image displayed on the roof plane

roof_state + + + + +

+

Roof display icon_state or null to disable

x_dim + + + + +

+

Turf dimensions along the X axis, beginning from left, at ground level

y_dim + + + + +

+

Turf dimensions along the Y axis, beginning from bottom, at ground level

+ + + diff --git a/obj/structure/toilet.html b/obj/structure/toilet.html new file mode 100644 index 000000000000..0e6952e7af60 --- /dev/null +++ b/obj/structure/toilet.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/toilet - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

toilet + + + +

+ + + + + +

Vars

cisternif the cistern bit is open
openif the lid is up
swirliethe mob being given a swirlie
w_itemsthe combined w_class of all the items in the cistern
+

Var Details

cistern + + + + +

+

if the cistern bit is open

open + + + + +

+

if the lid is up

swirlie + + + + +

+

the mob being given a swirlie

w_items + + + + +

+

the combined w_class of all the items in the cistern

+ + + diff --git a/obj/structure/transmitter.html b/obj/structure/transmitter.html new file mode 100644 index 000000000000..f5e1aa31796b --- /dev/null +++ b/obj/structure/transmitter.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/transmitter - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

telephone receiver + + + +

+ + + +

Vars

do_not_disturbWhether or not the phone is receiving calls or not. Varies between on/off or forcibly on/off.
last_callerThe Phone_ID of the last person to call this telephone.
+

Var Details

do_not_disturb + + + + +

+

Whether or not the phone is receiving calls or not. Varies between on/off or forcibly on/off.

last_caller + + + + +

+

The Phone_ID of the last person to call this telephone.

+ + + diff --git a/obj/structure/vulture_spotter_tripod.html b/obj/structure/vulture_spotter_tripod.html new file mode 100644 index 000000000000..6ec45ab64406 --- /dev/null +++ b/obj/structure/vulture_spotter_tripod.html @@ -0,0 +1,176 @@ + + + + + + + /obj/structure/vulture_spotter_tripod - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

M707 spotting tripod + + + +

+ + + + + + + + + + + + + + + + + + + + + + +

Vars

bound_rifleWeakref to the associated rifle
darkness_viewHow much to increase the user's dark vision by
max_sniper_distanceThe maximum distance this can be from the sniper scope
scope_attachedIf the tripod has an attached spotting scope
scope_userWeakref to the scope user, if any
scope_usingIf the scope is currently being used
scope_zoomHow far out the scope zooms
skilllessIf this requires the vulture_user trait to use
unscope_actionRef to the action to give the user of the scope

Procs

do_unscopeHandler for when the user should be unscoping
fold_upHandler for user folding up the tripod, picking it up
get_vulture_scopeGetter for the vulture scope on the sniper
on_scope_attachHandler for when the scope is being attached to the tripod
on_screwdriverHandler for when the scope is being detached from the tripod by screwdriver
on_vulture_moveHandler for when the vulture spotter scope moves
on_vulture_unscopeHandler for when the sniper unscopes
rotateRotates the tripod 90* counter-clockwise
set_scope_locSets the scope's sight location to the same as the sniper's
try_scopeChecks if the user is able to use the scope, uses it if so
unscopeUnscopes the user, cleaning up everything related
update_pixelsUpdates the direction the operator should be facing, and their pixel offset
+

Var Details

bound_rifle + + + + +

+

Weakref to the associated rifle

darkness_view + + + + +

+

How much to increase the user's dark vision by

max_sniper_distance + + + + +

+

The maximum distance this can be from the sniper scope

scope_attached + + + + +

+

If the tripod has an attached spotting scope

scope_user + + + + +

+

Weakref to the scope user, if any

scope_using + + + + +

+

If the scope is currently being used

scope_zoom + + + + +

+

How far out the scope zooms

skillless + + + + +

+

If this requires the vulture_user trait to use

unscope_action + + + + +

+

Ref to the action to give the user of the scope

Proc Details

do_unscope +

+

Handler for when the user should be unscoping

fold_up +

+

Handler for user folding up the tripod, picking it up

get_vulture_scope +

+

Getter for the vulture scope on the sniper

on_scope_attach +

+

Handler for when the scope is being attached to the tripod

on_screwdriver +

+

Handler for when the scope is being detached from the tripod by screwdriver

on_vulture_move +

+

Handler for when the vulture spotter scope moves

on_vulture_unscope +

+

Handler for when the sniper unscopes

rotate +

+

Rotates the tripod 90* counter-clockwise

set_scope_loc +

+

Sets the scope's sight location to the same as the sniper's

try_scope +

+

Checks if the user is able to use the scope, uses it if so

unscope +

+

Unscopes the user, cleaning up everything related

update_pixels +

+

Updates the direction the operator should be facing, and their pixel offset

+ + + diff --git a/obj/structure/window.html b/obj/structure/window.html new file mode 100644 index 000000000000..75874d2c493f --- /dev/null +++ b/obj/structure/window.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/window - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

window + + + +

+ + +

Procs

Initializefixes up layering on northern and southern windows, breaks fulltile windows, those shouldn't be used in the first place regardless.

Proc Details

Initialize +

+

fixes up layering on northern and southern windows, breaks fulltile windows, those shouldn't be used in the first place regardless.

+ + + diff --git a/obj/vehicle.html b/obj/vehicle.html new file mode 100644 index 000000000000..c0b176d5dac5 --- /dev/null +++ b/obj/vehicle.html @@ -0,0 +1,57 @@ + + + + + + + /obj/vehicle - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

vehicle + + + +

+ + + + + +

Vars

charge_useset this to adjust the amount of power the vehicle uses per move
move_delayset this to limit the speed of the vehicle
openMaint panel
poweredset if vehicle is powered and should use fuel when moving
+

Var Details

charge_use + + + + +

+

set this to adjust the amount of power the vehicle uses per move

move_delay + + + + +

+

set this to limit the speed of the vehicle

open + + + + +

+

Maint panel

powered + + + + +

+

set if vehicle is powered and should use fuel when moving

+ + + diff --git a/obj/vehicle/multitile.html b/obj/vehicle/multitile.html new file mode 100644 index 000000000000..f25536ddd06a --- /dev/null +++ b/obj/vehicle/multitile.html @@ -0,0 +1,70 @@ + + + + + + + /obj/vehicle/multitile - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

multitile vehicle + + + +

+ + + + + + + +

Procs

crew_mousedownChecks for special control keybinds, else relays crew mouse press to active hardpoint.
crew_mousedragRelays crew mouse movement to active hardpoint.
crew_mouseupRelays crew mouse release to active hardpoint.
get_mob_hpGet active hardpoint of crewmember.
get_mob_seatGet seat of crewmember.
get_seat_mobGet crewmember of seat.

Proc Details

crew_mousedown +

+

Checks for special control keybinds, else relays crew mouse press to active hardpoint.

crew_mousedrag +

+

Relays crew mouse movement to active hardpoint.

crew_mouseup +

+

Relays crew mouse release to active hardpoint.

get_mob_hp +

+

Get active hardpoint of crewmember.

get_mob_seat +

+

Get seat of crewmember.

get_seat_mob +

+

Get crewmember of seat.

+ + + diff --git a/obj/vehicle/multitile/apc/command.html b/obj/vehicle/multitile/apc/command.html new file mode 100644 index 000000000000..d1ce5b46dc08 --- /dev/null +++ b/obj/vehicle/multitile/apc/command.html @@ -0,0 +1,36 @@ + + + + + + + /obj/vehicle/multitile/apc/command - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

M577-CMD Armored Personnel Carrier + + + +

+ + +

Vars

minimap_addedweakrefs of xenos temporarily added to the marine minimap
+

Var Details

minimap_added + + + + +

+

weakrefs of xenos temporarily added to the marine minimap

+ + + diff --git a/obj/vehicle/multitile/arc.html b/obj/vehicle/multitile/arc.html new file mode 100644 index 000000000000..970773316ae8 --- /dev/null +++ b/obj/vehicle/multitile/arc.html @@ -0,0 +1,57 @@ + + + + + + + /obj/vehicle/multitile/arc - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

M540-B Armored Recon Carrier + + + +

+ + + + + +

Vars

antenna_deployedIf the ARC has its antenna up, making it unable to move but enabling the turret and sensor wallhack
antenna_toggle_timeHow long it takes to deploy or retract the antenna
minimap_addedweakrefs of xenos temporarily added to the marine minimap
sensor_radiusRange of the ARC's xenomorph wallhacks
+

Var Details

antenna_deployed + + + + +

+

If the ARC has its antenna up, making it unable to move but enabling the turret and sensor wallhack

antenna_toggle_time + + + + +

+

How long it takes to deploy or retract the antenna

minimap_added + + + + +

+

weakrefs of xenos temporarily added to the marine minimap

sensor_radius + + + + +

+

Range of the ARC's xenomorph wallhacks

+ + + diff --git a/particles.html b/particles.html new file mode 100644 index 000000000000..ab299d2b065f --- /dev/null +++ b/particles.html @@ -0,0 +1,35 @@ + + + + + + + /particles - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

/particles + + + +

+ + +

Procs

return_ui_representationreturns ui_data values for the particle editor

Proc Details

return_ui_representation +

+

returns ui_data values for the particle editor

+ + + diff --git a/procpath.html b/procpath.html new file mode 100644 index 000000000000..3241c2b9b2d9 --- /dev/null +++ b/procpath.html @@ -0,0 +1,73 @@ + + + + + + + /procpath - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

/procpath + + + +

+ +

Represents a proc or verb path.

+

Despite having no DM-defined static type, proc paths have some variables, +listed below. These are not modifiable, but for a given procpath P, +new P(null, "Name", "Desc") can be used to create a new procpath with the +same code but new name and desc values. The other variables cannot be +changed in this way.

+

This type exists only to act as an annotation, providing reasonable static +typing for procpaths. Previously, types like /atom/verb were used, with +the name and desc vars of /atom thus being accessible. Proc and verb +paths will fail istype and ispath checks against /procpath.

+ + + + +

Vars

categoryThe category or tab the verb will appear in.
descThe verb's help text or description.
hiddenWhether or not the verb appears in statpanel and commandbar when you press space
invisibilityOnly clients/mobs with see_invisibility higher can use the verb.
nameA text string of the verb's name.
+

Var Details

category + + + + +

+

The category or tab the verb will appear in.

desc + + + + +

+

The verb's help text or description.

hidden + + + + +

+

Whether or not the verb appears in statpanel and commandbar when you press space

invisibility + + + + +

+

Only clients/mobs with see_invisibility higher can use the verb.

name + + + + +

+

A text string of the verb's name.

+ + + diff --git a/turf.html b/turf.html new file mode 100644 index 000000000000..8027b07f5482 --- /dev/null +++ b/turf.html @@ -0,0 +1,164 @@ + + + + + + + /turf - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

/turf + + + +

+ + + + + + + + + + + + + + + + + + + +

Vars

ceiling_debrisedWhether we've broken through the ceiling yet
cleanablesAssociative list of cleanable types (strings) mapped to +cleanable objects
directional_opacityList of light sources affecting this turf. +Which directions does this turf block the vision of, taking into account both the turf's opacity and the movable opacity_sources.
dynamic_lumcountLumcount added by sources other than lighting datum objects, such as the overlay lighting component.
hybrid_lights_affectinghybrid lights affecting this turf
lighting_corner_NELighting Corner datums.
opacity_sourcesLazylist of movable atoms providing opacity sources.

Procs

GetAllTurfStrictContentsReturns list of contents of a turf recursively, much like GetAllContents +We only get containing atoms in the turf, excluding multitiles bordering on it
add_opacity_sourceProc to add movable sources of opacity on the turf and let it handle lighting code.
change_areaCall to move a turf from its current area to a new one
emptyRemove all atoms except observers, landmarks, docking ports - clearing up the turf contents
load_on_topPlaces a turf on top - for map loading
on_change_areaAllows for reactions to an area change without inherently requiring change_area() be called (I hate maploading)
recalculate_directional_opacityCalculate on which directions this turfs block view.
reconsider_lightsCauses any affecting light sources to be queued for a visibility update, for example a door got opened.
remove_opacity_sourceProc to remove movable sources of opacity on the turf and let it handle lighting code.
static_lighting_build_overlayBuilds a lighting object for us, but only if our area is dynamic.
transfer_area_lightingTransfer the lighting of one area to another
+

Var Details

ceiling_debrised + + + + +

+

Whether we've broken through the ceiling yet

cleanables + + + + +

+

Associative list of cleanable types (strings) mapped to +cleanable objects

+

The cleanable object does not necessarily need to be +on the turf, it can simply be for handling how the +overlays or placing new cleanables of the same type work

directional_opacity + + + + +

+

List of light sources affecting this turf. +Which directions does this turf block the vision of, taking into account both the turf's opacity and the movable opacity_sources.

dynamic_lumcount + + + + +

+

Lumcount added by sources other than lighting datum objects, such as the overlay lighting component.

hybrid_lights_affecting + + + + +

+

hybrid lights affecting this turf

lighting_corner_NE + + + + +

+

Lighting Corner datums.

opacity_sources + + + + +

+

Lazylist of movable atoms providing opacity sources.

Proc Details

GetAllTurfStrictContents +

+

Returns list of contents of a turf recursively, much like GetAllContents +We only get containing atoms in the turf, excluding multitiles bordering on it

add_opacity_source +

+

Proc to add movable sources of opacity on the turf and let it handle lighting code.

change_area +

+

Call to move a turf from its current area to a new one

empty +

+

Remove all atoms except observers, landmarks, docking ports - clearing up the turf contents

load_on_top +

+

Places a turf on top - for map loading

on_change_area +

+

Allows for reactions to an area change without inherently requiring change_area() be called (I hate maploading)

recalculate_directional_opacity +

+

Calculate on which directions this turfs block view.

reconsider_lights +

+

Causes any affecting light sources to be queued for a visibility update, for example a door got opened.

remove_opacity_source +

+

Proc to remove movable sources of opacity on the turf and let it handle lighting code.

static_lighting_build_overlay +

+

Builds a lighting object for us, but only if our area is dynamic.

transfer_area_lighting +

+

Transfer the lighting of one area to another

+ + + diff --git a/turf/closed/wall.html b/turf/closed/wall.html new file mode 100644 index 000000000000..39c24a9bbb37 --- /dev/null +++ b/turf/closed/wall.html @@ -0,0 +1,57 @@ + + + + + + + /turf/closed/wall - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

wall + + + +

+ + + + + +

Vars

acided_holethe acid hole inside the wall
damage_capWall will break down to girders if damage reaches this point
hull1 = Can't be deconstructed by tools or thermite. Used for Sulaco walls
junctiontypewhen walls smooth with one another, the type of junction each wall is.
+

Var Details

acided_hole + + + + +

+

the acid hole inside the wall

damage_cap + + + + +

+

Wall will break down to girders if damage reaches this point

hull + + + + +

+

1 = Can't be deconstructed by tools or thermite. Used for Sulaco walls

junctiontype + + + + +

+

when walls smooth with one another, the type of junction each wall is.

+ + + diff --git a/turf/closed/wall/almayer.html b/turf/closed/wall/almayer.html new file mode 100644 index 000000000000..bb70be61de79 --- /dev/null +++ b/turf/closed/wall/almayer.html @@ -0,0 +1,36 @@ + + + + + + + /turf/closed/wall/almayer - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

hull + + + +

+ + +

Vars

decoration_typeThe type of wall decoration we use, to avoid the wall changing icon all the time
+

Var Details

decoration_type + + + + +

+

The type of wall decoration we use, to avoid the wall changing icon all the time

+ + + diff --git a/turf/open/floor/almayer/empty.html b/turf/open/floor/almayer/empty.html new file mode 100644 index 000000000000..54291e6fdbcd --- /dev/null +++ b/turf/open/floor/almayer/empty.html @@ -0,0 +1,35 @@ + + + + + + + /turf/open/floor/almayer/empty - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

empty space + + + +

+ +

Base type of the requisitions and vehicle bay elevator pits.

+

Procs

get_depths_turfsReturns a list of turfs to be used as a destination for anyone unfortunate enough to fall into the pit.

Proc Details

get_depths_turfs +

+

Returns a list of turfs to be used as a destination for anyone unfortunate enough to fall into the pit.

+ + + diff --git a/world.html b/world.html new file mode 100644 index 000000000000..fe98964b0bdf --- /dev/null +++ b/world.html @@ -0,0 +1,49 @@ + + + + + + + /world - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

byond + + + +

+ + + +

Procs

increase_max_xHandles incresing the world's maxx var and intializing the new turfs and assigning them to the global area. +If map_load_z_cutoff is passed in, it will only load turfs up to that z level, inclusive. +This is because maploading will handle the turfs it loads itself.
prof_init

Proc Details

increase_max_x +

+

Handles incresing the world's maxx var and intializing the new turfs and assigning them to the global area. +If map_load_z_cutoff is passed in, it will only load turfs up to that z level, inclusive. +This is because maploading will handle the turfs it loads itself.

prof_init +

+
    +
  • For initializing and starting byond-tracy when BYOND_TRACY is defined
  • +
  • byond-tracy is a useful profiling tool that allows the user to view the CPU usage and execution time of procs as they run.
  • +
+ + +