Protected vars can only be call by things of the same type or subtypes
Define Details
CAN_BE_REDEFINED
Redefinable procs permit multiple declarations of themselves.
PRIVATE_PROC
Private procs can only be called by things of exactly the same type. This also prevents overriding of the proc.
PROTECTED_PROC
Protected procs can only be call by things of the same type or subtypes
SHOULD_BE_PURE
A "pure" proc does not make any external changes, or to its output.
VAR_FINAL
Final vars forbid overriding their value by types that inherit it.
VAR_PRIVATE
Private vars can only be called by things of exactly the same type
VAR_PROTECTED
Protected vars can only be call by things of the same type or subtypes
\ No newline at end of file
diff --git a/_maps/__MAP_DEFINES.html b/_maps/__MAP_DEFINES.html
new file mode 100644
index 00000000000..a082cb8e7c4
--- /dev/null
+++ b/_maps/__MAP_DEFINES.html
@@ -0,0 +1 @@
+_maps/__MAP_DEFINES.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
A level that can be navigated to through space, but for real this time.
SPAWN_RUINS
Ruins will spawn on this z-level
TCOMM_RELAY_ALWAYS
Tcomms relays will always extend to this level.
\ No newline at end of file
diff --git a/area.html b/area.html
new file mode 100644
index 00000000000..8488a16abee
--- /dev/null
+++ b/area.html
@@ -0,0 +1,16 @@
+/area - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Returns highest area type in the hirarchy of a given ruin or /area/station if it is given a station area.
+For an example the top parent of area/ruin/space/bar/backroom is area/ruin/space/bar
The name for any spawned request consoles. Defaults to the area name.
requires_power
If TRUE, this area's local powernet will require power to properly operate machines
scrubbers
The list of scrubbers in our area.
sound_environment
Used to decide what kind of reverb the area makes sound have
turret_controls
Turrets use this list to see if individual power/lethal settings are allowed. Contains the /obj/machinery/turretid for this area
valid_territory
used for cult summoning areas on station zlevel
vents
The list of vents in our area.
window_tint
Is the window tint control in this area on? Controls whether electrochromic windows and doors are tinted or not
Proc Details
ModifyFiredoors
Try to close all the firedoors in the area
atmosalert
Generate an atmospheric alert for this area
+
Sends to all ai players, alert consoles, drones and alarm monitor programs in the world
burglaralert
Raise a burglar alert for this area
+
Close and locks all doors in the area and alerts silicon mobs of a break in
+
Alarm auto resets after 600 ticks
close_and_lock_door
Close and lock a door passed into this proc
+
Does this need to exist on area? probably not
firealert
Generate a firealarm alert for this area
+
Sends to all ai players, alert consoles, drones and alarm monitor programs in the world
+
Also starts the area processing on SSobj
firereset
Reset the firealarm alert for this area
+
resets the alert sent to all ai players, alert consoles, drones and alarm monitor programs
+in the world
+
Also cycles the icons of all firealarms and deregisters the area from processing on SSOBJ
get_top_parent_type
Returns highest area type in the hirarchy of a given ruin or /area/station if it is given a station area.
+For an example the top parent of area/ruin/space/bar/backroom is area/ruin/space/bar
poweralert
Generate a power alert for this area
+
Sends to all ai players, alert consoles, drones and alarm monitor programs in the world
process
If 100 ticks has elapsed, toggle all the firedoors closed again
set_fire_alarm_effect
Trigger the fire alarm visual affects in an area
+
Updates the fire light on fire alarms in the area and sets all lights to emergency mode
unset_fire_alarm_effects
unset the fire alarm visual affects in an area
\ No newline at end of file
diff --git a/area/syndicate_depot/core.html b/area/syndicate_depot/core.html
new file mode 100644
index 00000000000..47a5a87bb4b
--- /dev/null
+++ b/area/syndicate_depot/core.html
@@ -0,0 +1,20 @@
+/area/syndicate_depot/core - Space Station 13Space Station 13 - Modules - Types — Proc Details
Returns a LIST of the NAMES of the mobs in the provided list.
Proc Details
list_getmobs
Returns a LIST of the MOBS in one of the depot area's lists.
+
E.g. list_getmobs(depotarea.guard_list) returns a list of the extra guard mobs in the depot.
+Arguments:
+
+
list/L, the list of UIDs from which to draw members
+
show_ckeys, bool, if true will display ckeys in addition to names
+
list_show
Returns a STRING, containing the NAMES of the mobs in the provided list, JOINED together with ", "
+
E.g. list_show(depotarea.guard_list) returns a string like:
+"Syndicate Backup (123), Syndicate Backup(456), Syndicate Backup(789)", etc.
+Arguments:
+
+
list/L, the list of UIDs from which to draw members
+
show_ckeys, bool, if true will display ckeys in addition to names
+
list_shownames
Returns a LIST of the NAMES of the mobs in the provided list.
+
E.g. list_shownames(depotarea.guard_list) returns a list of the names of extra guard mobs in depot.
+Arguments:
+
+
list/L, the list of UIDs from which to draw members
+
show_ckeys, bool, if true will display ckeys in addition to names
+
\ No newline at end of file
diff --git a/atom.html b/atom.html
new file mode 100644
index 00000000000..7f4b3652369
--- /dev/null
+++ b/atom.html
@@ -0,0 +1,136 @@
+/atom - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
overlays managed by update_overlays to prevent removing overlays that weren't added by the same proc. Single items are stored on their own, not in a list.
This var isn't actually used for anything, but is present so that DM's map reader doesn't forfeit on reading a JSON-serialized map. AKA DO NOT FUCK WITH
What directions this is currently smoothing with. IMPORTANT: This uses the smoothing direction flags as defined in icon_smoothing.dm, instead of the BYOND flags.
Sends a COMSIG_ATOM_RAD_ACT signal, calls the atoms rad_act with the amount of radiation it should have absorbed and returns the rad insulation of the atom that isappropriate for emission_type
Extended description of an object. Allows you to double examine objects and have them give you a second description of an item. Useful for writing flavourful stuff.
Recursive getter method to return a list of all ghosts transitively orbiting this atom.
+This will find orbiters either directly orbiting the followed atom, or any orbiters orbiting them (and so on).
Check every object in the hierarchy above ourselves for orbiters, and return the full list of them.
+If an object is being held in a backpack, returns orbiters of the backpack, the person
+If recursive == TRUE, this will also check recursively through any ghosts seen to make sure we find everything upstream
This exists so stuff can override the default call of attack_animal for attack_basic_mob
+Remove this when simple animals are removed and everything can be handled on attack basic mob.
This proc applies special effects of a carbon mob hitting something, be it a wall, structure, or window. You can set mob_hurt to false to avoid double dipping through subtypes if returning ..()
Makes this atom look like a "hologram"
+So transparent, blue, with a scanline and an emissive glow
+This is acomplished using a combination of filters and render steps/overlays
+The degree of the opacity is optional, based off the opacity arg (0 -> 1)
AI controller that controls this atom. type on init, then turned into an instance during runtime
alternate_appearances
The alternate appearances we own. Lazylist
attack_info
Information about attacks performed on this atom.
base_icon_state
Used for changing icon states for different base sprites.
bottom_left_corner
Smoothing variable
bottom_right_corner
Smoothing variable
bubble_icon
What icon the mob uses for speechbubbles
canSmoothWith
List of smoothing groups this atom can smooth with. If this is null and atom is smooth, it smooths only with itself.
can_pathfind_pass
How this atom should react to having its astar blocking checked
cares_about_temperature
Do we care about temperature at all? Saves us a ton of proc calls during big fires.
chat_color
Last color calculated for the the chatmessage overlays. Used for caching.
chat_color_name
Last name used to calculate a color for the chatmessage overlays. Used for caching.
drag_start
Contains the world.time of when we start dragging something with our mouse. Used to prevent weird situations where you fail to click on something
explosion_block
Value used to increment ex_act() if reactionary_explosions is on
filter_data
For handling persistent filters
flags_ricochet
how the atom should handle ricochet behavior
germ_level
The higher the germ level, the more germ on the atom.
hud_list
This atom's HUD (med/sec, etc) images. Associative list.
hud_possible
HUD images that this atom can provide.
light_power
Intensity of the light. Can be negative to remove light
managed_overlays
overlays managed by update_overlays to prevent removing overlays that weren't added by the same proc. Single items are stored on their own, not in a list.
managed_vis_overlays
vis overlays managed by SSvis_overlays to automaticaly turn them like other overlays.
map_json_data
This var isn't actually used for anything, but is present so that DM's map reader doesn't forfeit on reading a JSON-serialized map. AKA DO NOT FUCK WITH
new_attack_chain
Whether this atom is using the new attack chain.
pass_flags_self
pass_flags that we are. If any of this matches a pass_flag on a moving thing, by default, we let them through.
rad_insulation_alpha
Radiation insulation for alpha emissions
rad_insulation_beta
Radiation insulation for beta emissions
rad_insulation_gamma
Radiation insulation for gamma emissions
receive_ricochet_chance_mod
When a projectile tries to ricochet off this atom, the projectile ricochet chance is multiplied by this
receive_ricochet_damage_coeff
When a projectile ricochets off this atom, it deals the normal damage * this modifier to this atom
should_spread_blood
Will the atom spread blood when touched?
simulated
Filter for actions - used by lighting overlays
smoothing_flags
Icon-smoothing behavior.
smoothing_groups
What smoothing groups does this atom belongs to, to match canSmoothWith. If null, nobody can smooth with it.
smoothing_junction
What directions this is currently smoothing with. IMPORTANT: This uses the smoothing direction flags as defined in icon_smoothing.dm, instead of the BYOND flags.
suit_fibers
List of fibers that this atom has
top_left_corner
Smoothing variable
top_right_corner
Smoothing variable
viewing_alternate_appearances
The alternate appearances we're viewing, stored here to reestablish them after Logout()s. Lazylist
Proc Details
AltClickNoInteract
Use this instead of [/mob/proc/AltClickOn] where you only want turf content listing without additional atom alt-click interaction
CanPathfindPass
This proc is used for telling whether something can pass by this atom in a given direction, for use by the pathfinding system.
+
Trying to generate one long path across the station will call this proc on every single object on every single tile that we're seeing if we can move through, likely
+multiple times per tile since we're likely checking if we can access said tile from multiple directions, so keep these as lightweight as possible.
+
For turfs this will only be used if pathing_pass_method is TURF_PATHING_PASS_PROC
+
Arguments:
+
+
to_dir - What direction we're trying to move in, relevant for things like directional windows that only block movement in certain directions
+
pass_info - Datum that stores info about the thing that's trying to pass us
+
+
IMPORTANT NOTE: /turf/proc/LinkBlockedWithAccess assumes that overrides of CanPathfindPass will always return true if density is FALSE
+If this is NOT you, ensure you edit your can_pathfind_pass variable. Check __DEFINES/path.dm
Exit
An atom is attempting to exit this atom's contents
New uses of this proc are prohibited! Use [/atom/proc/attackby] or /atom/proc/base_item_interaction instead!
+If you are modifiying an existing implementation of this proc, it is expected that you replace it with the proper alternative!
attacked_by
Called after we have been attacked with the item attacker by user.
+
Return value is ignored for purposes of the attack chain.
attacked_by__legacy__attackchain
Called after user has attacked us with item W.
+
New uses of this proc are prohibited! Used /atom/proc/attacked_by.
+If you are modifiying an existing implementation of this proc, it is expected that you replace it with the proper alternative!
base_item_interaction
Item interaction
+
Handles non-combat iteractions of a tool on this atom,
+such as using a tool on a wall to deconstruct it,
+or scanning someone with a health analyzer
base_rad_act
Sends a COMSIG_ATOM_RAD_ACT signal, calls the atoms rad_act with the amount of radiation it should have absorbed and returns the rad insulation of the atom that isappropriate for emission_type
base_ranged_item_interaction
Ranged item interaction
+
Handles non-combat ranged interactions of a tool on this atom,
+such as shooting a gun in the direction of someone*,
+having a scanner you can point at someone to scan them at any distance,
+or pointing a laser pointer at something.
+
*While this intuitively sounds combat related, it is not,
+because a "combat use" of a gun is gun-butting.
bitmask_smooth
Basic smoothing proc. The atom checks for adjacent directions to smooth with and changes the icon_state based on that.
+
Returns the previous smoothing_junction state so the previous state can be compared with the new one after the proc ends, and see the changes, if any.
+
Objects override this to prevent unanchored objects from smoothing, see /obj/bitmask_smooth()
calculate_adjacencies
Scans all adjacent turfs to find targets to smooth with.
clean_radiation
Removes some radiation from an atom
+
Removes a configurable amount of radiation from an atom
+and stops green glow if radiation gets low enough through it.
+Arguments:
+
+
clean_factor - How much radiation to remove, as a multiple of RAD_BACKGROUND_RADIATION (currently 9)
+
contaminate_atom
Attempt to contaminate a single atom
contents_ui_distance
public
+
Check the distance for a living mob.
+Really only used for checks outside the context of a mob.
+Otherwise, use shared_living_ui_distance().
+
required src_object The object which owns the UI.
+required user mob The mob who opened/is using the UI.
+
return UI_state The state of the UI.
defile
Begin defile and malfunction on-atom definitions
emag_act
This is when an atom is emagged. Should return false if it fails, or it has no emag_act defined.
emp_act
Proc which will make the atom act accordingly to an EMP.
+This proc can sleep depending on the implementation. So assume it sleeps!
+
severity - The severity of the EMP. Either EMP_HEAVY, EMP_LIGHT, or EMP_WEAKENED
event_cost
Returns the cost of the atom for the event system as a list of all requirements. By default this is just 1 crew.
examine_more
Extended description of an object. Allows you to double examine objects and have them give you a second description of an item. Useful for writing flavourful stuff.
find_all_cells_containing
debug proc for checking if a movable is in multiple cells when it shouldnt be (ie always unless multitile entering is implemented)
find_grid_statistics_for_z_level
debug proc for finding how full the cells of src's z level are
find_type_in_direction
Scans direction to find targets to smooth with.
fire_projectile
Fire a projectile from this atom at another atom
get_all_contents
Returns the src and all recursive contents as a list.
get_orbiters
Simple helper proc to get a list of everything directly orbiting the current atom, without checking contents, or null if nothing is.
get_orbiters_recursive
Recursive getter method to return a list of all ghosts transitively orbiting this atom.
+This will find orbiters either directly orbiting the followed atom, or any orbiters orbiting them (and so on).
+
This shouldn't be passed arugments.
get_orbiters_up_hierarchy
Check every object in the hierarchy above ourselves for orbiters, and return the full list of them.
+If an object is being held in a backpack, returns orbiters of the backpack, the person
+If recursive == TRUE, this will also check recursively through any ghosts seen to make sure we find everything upstream
get_oversized_icon_offsets
Returns an x and y value require to reverse the transformations made to center an oversized icon
get_runechat_color
Proc to allow atoms to set their own runechat colour
+
This is a proc designed to be overridden in places if you want a specific atom to use a specific runechat colour
+Exampls include consoles using a colour based on their screen colour, and mobs using a colour based off of a customisation property
handle_basic_attack
This exists so stuff can override the default call of attack_animal for attack_basic_mob
+Remove this when simple animals are removed and everything can be handled on attack basic mob.
hit_by_thrown_mob
This proc applies special effects of a carbon mob hitting something, be it a wall, structure, or window. You can set mob_hurt to false to avoid double dipping through subtypes if returning ..()
is_drainable
Is this atom drainable of reagents
is_drawable
Can we draw from this atom with an injectable atom
is_injectable
Is this atom injectable into other atoms
is_open_container
Convenience proc to see if a container is open for chemistry handling
is_refillable
Can this atoms reagents be refilled
item_interaction
Called when this atom has an item used on it.
+IE, a mob is clicking on this atom with an item.
+
Return an ITEM_INTERACT_ flag in the event the interaction was handled, to cancel further interaction code.
+Return NONE to allow default interaction / tool handling.
makeHologram
Makes this atom look like a "hologram"
+So transparent, blue, with a scanline and an emissive glow
+This is acomplished using a combination of filters and render steps/overlays
+The degree of the opacity is optional, based off the opacity arg (0 -> 1)
mech_melee_attack
Handle melee attack by a mech
move_camera_by_click
If usr is an AI, set the camera eye's location to the location of the atom clicked.
on_mob_spawn
Used with the spawner component to do something when a mob is spawned.
persistent_load
Atom Persistent Loader
+
Overridden on every atom which needs to load persistent data
persistent_save
Atom Persistent Saver
+
Overridden on every atom which needs to save persistent data
rad_act
Respond to a radioactive wave hitting this atom
+
This should only be called through the atom/base_rad_act proc
ranged_item_interaction
Called when this atom has an item used on it from a distance.
+IE, a mob is clicking on this atom with an item and is not adjacent.
+
Does NOT include Telekinesis users, they are considered adjacent generally.
+
Return an ITEM_INTERACT_ flag in the event the interaction was handled, to cancel further interaction code.
ray_filter_helper
Used to create rays on an item. Make sure to removefilter("rays") when done with it
relaydrive
A special case of relaymove() in which the person relaying the move may be "driving" this atom
+
This is a special case for vehicles and ridden animals where the relayed movement may be handled
+by the riding component attached to this atom. Returns TRUE as long as there's nothing blocking
+the movement, or FALSE if the signal gets a reply that specifically blocks the movement
remove_orbiter
Remove an orbiter from the atom it's orbiting.
rename_interactive
+
+
Call this when you want to present a renaming prompt to the user.
+
It's a simple proc, but handles annoying edge cases such as forgetting to add a "cancel" button,
+or being able to rename stuff remotely.
+
Arguments:
+
+
user - the renamer.
+
implement - the tool doing the renaming (usually, a pen).
+
use_prefix - whether the new name should follow the format of "thing - user-given label" or
+if we allow to change the name completely arbitrarily.
+
actually_rename - whether we want to really change the src.name, or if we want to do everything except that.
+
prompt - a custom "what do you want rename this thing to be?" prompt shown in the inpit box.
+
+
Returns: Either null if the renaming was aborted, or the user-provided sanitized string.
+
+
return_analyzable_air
Return the air if we can analyze it
rust_heretic_act
Causes effects when the atom gets hit by a rust effect from heretics
+
Override this if you want custom behaviour in whatever gets hit by the rust
+/turf/rust_turf should be used instead for overriding rust on turfs
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).
set_smoothed_icon_state
Changes the icon state based on the new junction bitmask. Returns the old junction value.
shuttleRotate
Base proc
storage_depth
Returns the storage depth of an atom up to the area level.
+
The storage depth is the number of storage items the atom is contained in.
+Returns -1 if the atom was not found in a container.
Returns -1 if there's no top level turf. (A loc was null somewhere, or a non-turf atom's loc was an area somehow.)
tool_act
Tool Act
+
Handles using specific tools on this atom directly.
+
Handles the tool_acts in particular, such as wrenches and screwdrivers.
+
This can be overriden to handle unique "tool interactions"
+IE using an item like a tool (when it's not actually one)
+but otherwise does nothing that [item_interaction] doesn't already do.
+
In other words, use sparingly. It's harder to use (correctly) than [item_interaction].
update_appearance
Updates the appearence of the atom, including text.
+
Mostly delegates to update_name, update_desc, and update_icon
+
Arguments:
+
+
updates: A set of bitflags dictating what should be updated. Defaults to [ALL]
Excluding the base proc, or child overrides that do not intend to change the icon_state, this proc needs a minimum of two possible icon_states, otherwise it effectively becomes permanent and a redundant proc.
update_name
Updates the name of the atom
update_overlays
Updates the managed overlays of the atom
+
Old overlays from this proc are removed when called, and does not affect overlays from outside it. e.g. add_overlay() called independently in a different proc.
+
It has to return a list of overlays if it can't call the parent to create one. The list can contain anything that would be valid for the add_overlay proc: Images, mutable appearances, icon state names...
zap_act
Respond to an electric bolt action on our item
+
Default behaviour is to return, we define here to allow for cleaner code later on
\ No newline at end of file
diff --git a/atom/movable.html b/atom/movable.html
new file mode 100644
index 00000000000..ecb6d3dd0e1
--- /dev/null
+++ b/atom/movable.html
@@ -0,0 +1,138 @@
+/atom/movable - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
an associative lazylist of relevant nested contents by "channel", the list is of the form: list(channel = list(important nested contents of that type))
+each channel has a specific purpose and is meant to replace potentially expensive nested contents iteration.
+do NOT add channels to this for little reason as it can add considerable memory usage.
Whether this atom should have its dir automatically changed when it
+moves. Setting this to FALSE allows for things such as directional windows
+to retain dir on moving without snowflake code all of the place.
+PARA: Doesn't set this currently to maintain current behavior for pulling items around,
+because modifying direction on pull is expected.
String representing the spatial grid groups we want to be held in.
+acts as a key to the list of spatial grid contents types we exist in via SSspatial_grid.spatial_grid_categories.
+We do it like this to prevent people trying to mutate them and to save memory on holding the lists ourselves
Called whenever an object moves and by mobs when they attempt to move themselves through space
+And when an object or action applies a force on src, see [newtonian_move][/atom/movable/proc/newtonian_move]
Uncross() is a default BYOND proc that is called when something is going
+to exit this atom's turf. It is prefered over Uncrossed when you want to
+deny that movement, such as in the case of border objects, objects that allow
+you to walk through them in any direction except the one they block
+(think side windows).
default byond proc that is normally called on everything inside the previous turf
+a movable was in after moving to its current turf
+this is wasteful since the vast majority of objects do not use Uncrossed
+use connect_loc to register to COMSIG_ATOM_EXITED instead
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()].
removes the area sensitive channel from the important_recursive_contents list of this and all nested locs containing us if there are no more source of the trait left
removes the hearing sensitivity channel from the important_recursive_contents list of this and all nested locs containing us if there are no more sources of the trait left
+since RECURSIVE_CONTENTS_HEARING_SENSITIVE is also a spatial grid content type, removes us from the spatial grid if the trait is removed
called when a mob gets shoved into an items turf. false means the mob will be shoved backwards normally, true means the mob will not be moved by the disarm proc.
Bed-like behaviour, forces the mob to lie down if buckle_lying != -1
buckle_offset
The Pixel_y to offset the buckled mob by
buckle_prevents_pull
Can we pull the mob while they're buckled. Currently set to false on every movable
buckle_requires_restraints
Require people to be handcuffed before being able to buckle. eg: pipes
buckled_mobs
Lazylist of the mobs buckled to this object.
can_be_unanchored
Used for icon smoothing. Won't smooth if it ain't anchored and can be unanchored. Only set to true on windows
em_block
Internal holder for emissive blocker object, do not use directly use blocks_emissive
face_while_pulling
Face towards the atom while pulling it
important_recursive_contents
an associative lazylist of relevant nested contents by "channel", the list is of the form: list(channel = list(important nested contents of that type))
+each channel has a specific purpose and is meant to replace potentially expensive nested contents iteration.
+do NOT add channels to this for little reason as it can add considerable memory usage.
inertia_move_delay
Delay in deciseconds between inertia based movement
inertia_moving
Are we moving with inertia? Mostly used as an optimization
last_pushoff
The last time we pushed off something
+This is a hack to get around dumb him him me scenarios
max_buckled_mobs
The max amount of mobs that can be buckled to this object. Currently set to 1 on every movable
move_packet
Holds information about any movement loops currently running/waiting to run on the movable. Lazy, will be null if nothing's going on
moving_from_pull
attempt to resume grab after moving instead of before.
orbiting_uid
UID for the atom which the current atom is orbiting
scatter_distance
How far (in pixels) should this atom scatter when created/dropped/etc. Does not apply to mapped-in items.
set_dir_on_move
Whether this atom should have its dir automatically changed when it
+moves. Setting this to FALSE allows for things such as directional windows
+to retain dir on moving without snowflake code all of the place.
+PARA: Doesn't set this currently to maintain current behavior for pulling items around,
+because modifying direction on pull is expected.
spatial_grid_key
String representing the spatial grid groups we want to be held in.
+acts as a key to the list of spatial grid contents types we exist in via SSspatial_grid.spatial_grid_categories.
+We do it like this to prevent people trying to mutate them and to save memory on holding the lists ourselves
thought_bubble_image
Icon state for thought bubbles. Normally set by mobs.
Proc Details
Crossed
default byond proc that is deprecated for us in lieu of signals. do not call
Moved
Called after a successful Move(). By this point, we've already moved.
+Arguments:
+
+
old_loc is the location prior to the move. Can be null to indicate nullspace.
+
movement_dir is the direction the movement took place. Can be NONE if it was some sort of teleport.
+
The forced flag indicates whether this was a forced move, which skips many checks of regular movement.
+
The old_locs is an optional argument, in case the moved movable was present in multiple locations before the movement.
+
momentum_change represents whether this movement is due to a "new" force if TRUE or an already "existing" force if FALSE
+
Process_Spacemove
Called whenever an object moves and by mobs when they attempt to move themselves through space
+And when an object or action applies a force on src, see [newtonian_move][/atom/movable/proc/newtonian_move]
+
Return FALSE to have src start/keep drifting in a no-grav area and TRUE to stop/not start drifting
+
Mobs should return TRUE if they should be able to move of their own volition, see [/client/proc/Move]
+
Arguments:
+
+
movement_dir - 0 when stopping or any dir when trying to move
+
continuous_move - If this check is coming from something in the context of already drifting
+
Uncross
Uncross() is a default BYOND proc that is called when something is going
+to exit this atom's turf. It is prefered over Uncrossed when you want to
+deny that movement, such as in the case of border objects, objects that allow
+you to walk through them in any direction except the one they block
+(think side windows).
+
While being seemingly harmless, most everything doesn't actually want to
+use this, meaning that we are wasting proc calls for every single atom
+on a turf, every single time something exits it, when basically nothing
+cares.
+
If you want to replicate the old Uncross() behavior, the most apt
+replacement is [/datum/element/connect_loc] while hooking onto
+[COMSIG_ATOM_EXIT].
Uncrossed
default byond proc that is normally called on everything inside the previous turf
+a movable was in after moving to its current turf
+this is wasteful since the vast majority of objects do not use Uncrossed
+use connect_loc to register to COMSIG_ATOM_EXITED instead
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()].
admin_Freeze
Created here as a base proc. Override as needed for any type of object or mob you want able to be frozen.
become_area_sensitive
allows this movable to know when it has "entered" another area no matter how many movable atoms its stuffed into, uses important_recursive_contents
become_hearing_sensitive
allows this movable to hear and adds itself to the important_recursive_contents list of itself and every movable loc its in
can_reach
A backwards depth-limited breadth-first-search to see if the target is
+logically "in" anything adjacent to us.
can_reach_nested_adjacent
A backwards depth-limited breadth-first-search to see if the target is
+logically "in" anything adjacent to us.
+
Arguments:
+
+
ultimate_target - the specific item we're attempting to reach.
+
tool - if present, checked to see if the tool can reach the target via /obj/item/var/reach.
+
view_only - if TRUE, only considers locations in atoms visible to us, as opposed to nested inventories.
+
create_point_bubble
Create a bubble pointing at a particular icon and icon state.
+See args for create_point_bubble_from_atom.
create_point_bubble_from_atom
Create a point bubble towards a given item.
+
Arguments:
+
+
pointed_atom - Atom to show in the bubble.
+
include_arrow - If true, show an arrow pointing downwards.
+
create_point_bubble_from_icons
Create a point bubble towards a given item, from an icon/icon state.
+
Arguments:
+
+
icon - Icon source for the bubble's icon.
+
icon_state - Icon state for the bubble's icon.
+
include_arrow - If true, show an arrow pointing downwards.
+
create_point_bubble_from_path
See above, this uses an uninstantiated path.
deadchat_plays
Adds the deadchat_plays component to this atom with simple movement commands.
+
Returns the component added.
+Arguments:
+
+
mode - Either DEADCHAT_ANARCHY_MODE or DEADCHAT_DEMOCRACY_MODE passed to the deadchat_control component. See /datum/component/deadchat_control for more info.
+
cooldown - The cooldown between command inputs passed to the deadchat_control component. See /datum/component/deadchat_control for more info.
+
end_throw
called after an items throw is ended.
fall_and_crush
Tip over this atom onto a turf, crushing things in its path.
+
Arguments:
+
+
target_turf - The turf to fall onto.
+
should_crit - If true, we'll try to crit things that we crush.
+
crit_damage_factor - If a crit is rolled, crush_damage will be multiplied by this amount.
+
forced_crit - If passed, this crit will be applied to everything it crushes.
+
weaken_time - The amount of time that weaken will be applied to crushed mobs.
+
knockdown_time - The amount of time that knockdown will be applied to crushed mobs.
+
ignore_gravity - If false, we won't fall over in zero G.
+
should_rotate - If false, we won't rotate when we fall.
+
angle - The angle by which we'll rotate. If this is null/0, we'll randomly rotate 90 degrees clockwise or counterclockwise.
+
rightable - If true, the tilted component will be applied, allowing people to alt-click to right it.
+
block_interactions_until_righted - If true, interactions with the object will be blocked until it's righted.
+
crush_dir - An override on the cardinal direction we're crushing.
+
key_loop
Key loop to check for movement keys held and move in the desired direction.
lose_area_sensitivity
removes the area sensitive channel from the important_recursive_contents list of this and all nested locs containing us if there are no more source of the trait left
lose_hearing_sensitivity
removes the hearing sensitivity channel from the important_recursive_contents list of this and all nested locs containing us if there are no more sources of the trait left
+since RECURSIVE_CONTENTS_HEARING_SENSITIVE is also a spatial grid content type, removes us from the spatial grid if the trait is removed
+
+
trait_source - trait source define or ALL, if ALL, force removes hearing sensitivity. if a trait source define, removes hearing sensitivity only if the trait is removed
+
move_from_pull
Called when src is being moved to a target turf because another movable (puller) is moving around.
on_changed_z_level
Called when a movable changes z-levels.
+
Arguments:
+
+
old_turf - The previous turf they were on before.
+
new_turf - The turf they have now entered.
+
notify_contents - Whether or not to notify the movable's contents that their z-level has changed.
+
on_crush_thing
useful callback for things that want special behavior on crush
orbit
Set an atom to orbit around another one. This atom will follow the base atom's movement and rotate around it.
+
orbiter: atom which will be doing the orbiting
+radius: range to orbit at, radius of the circle formed by orbiting
+clockwise: whether you orbit clockwise or anti clockwise
+rotation_speed: how fast to rotate
+rotation_segments: the resolution of the orbit circle, less = a more block circle, this can be used to produce hexagons (6 segments) triangles (3 segments), and so on, 36 is the best default.
+pre_rotation: Chooses to rotate src 90 degress towards the orbit dir (clockwise/anticlockwise), useful for things to go "head first" like ghosts
+lock_in_orbit: Forces src to always be on A's turf, otherwise the orbit cancels when src gets too far away (eg: ghosts)
+force_move: If true, ghosts will be ForceMoved instead of having their .loc updated directly.
+orbit_layer: layer that the orbiter should be on. The original layer will be restored on orbit end.
point_at
Point at an atom
+
Intended to enable and standardise the pointing animation for all atoms
+
Not intended as a replacement for the mob verb
scatter_atom
Used to scatter atoms so that multiple copies aren't all at the exact same spot.
set_glide_size
This proc is recursive, and calls itself to constantly set the glide size of an atom/movable
set_loc
Used in shuttle movement and camera eye stuff.
+Primarily used to notify objects being moved by a shuttle/bluespace fuckup.
shove_impact
called when a mob gets shoved into an items turf. false means the mob will be shoved backwards normally, true means the mob will not be moved by the disarm proc.
stop_deadchat_plays
Easy way to remove the component when the fun has been played out
stop_orbit
Stop this atom from orbiting whatever it's orbiting.
tilt_over
Tip over an atom without too much fuss. This won't cause damage to anything, and just rotates the thing and (optionally) adds the component.
+
Arguments:
+
+
target - The turf to tilt over onto
+
rotation_angle - The angle to rotate by. If not given, defaults to random rotating by 90 degrees clockwise or counterclockwise
+
should_rotate - Whether or not we should rotate at all
+
rightable - Whether or not this object should be rightable, attaching the tilted component to it
+
block_interactions_until_righted - If true, this object will need to be righted before it can be interacted with
+
untilt
Untilt a tilted object.
\ No newline at end of file
diff --git a/atom/movable/emissive_blocker.html b/atom/movable/emissive_blocker.html
new file mode 100644
index 00000000000..716c8880ce1
--- /dev/null
+++ b/atom/movable/emissive_blocker.html
@@ -0,0 +1,4 @@
+/atom/movable/emissive_blocker - Space Station 13Space Station 13 - Modules - Types
emissive_blocker
Internal atom that copies an appearance on to the blocker 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.
\ No newline at end of file
diff --git a/atom/movable/plane_master_controller.html b/atom/movable/plane_master_controller.html
new file mode 100644
index 00000000000..d191fba5036
--- /dev/null
+++ b/atom/movable/plane_master_controller.html
@@ -0,0 +1 @@
+/atom/movable/plane_master_controller - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
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.
Resets the atom's color to null, and then sets it to the highest priority colour available
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
New
Ensures that all the planes are correctly in the controlled_planes list.
add_atom_colour
Full override so we can just use filterrific
add_filter
Full override so we can just use filterrific
get_filters
Gets all filters for this controllers plane masters
remove_atom_colour
Removes an instance of colour_type from the atom's atom_colours list
remove_filter
Full override so we can just use filterrific
transition_filter
Transitions all filters owned by this plane master controller
update_atom_colour
Resets the atom's color to null, and then sets it to the highest priority colour available
\ No newline at end of file
diff --git a/atom/movable/screen.html b/atom/movable/screen.html
new file mode 100644
index 00000000000..2ec02490d15
--- /dev/null
+++ b/atom/movable/screen.html
@@ -0,0 +1,11 @@
+/atom/movable/screen - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Sets screen_loc of this screen object, in form of point coordinates,
+with optional pixel offset (px, py).
Var Details
assigned_map
Map name assigned to this object.
+Automatically set by /client/proc/add_obj_to_map.
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.
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.
\ No newline at end of file
diff --git a/atom/movable/screen/action_landing.html b/atom/movable/screen/action_landing.html
new file mode 100644
index 00000000000..b09fc6f580a
--- /dev/null
+++ b/atom/movable/screen/action_landing.html
@@ -0,0 +1 @@
+/atom/movable/screen/action_landing - Space Station 13Space Station 13 - Modules - Types — Proc Details
action_landing
Exists so you have a place to put your buttons when you move them around
\ No newline at end of file
diff --git a/atom/movable/screen/alert.html b/atom/movable/screen/alert.html
new file mode 100644
index 00000000000..9b7b4e7a154
--- /dev/null
+++ b/atom/movable/screen/alert.html
@@ -0,0 +1 @@
+/atom/movable/screen/alert - Space Station 13Space Station 13 - Modules - Types — Var Details
How long before this alert automatically clears itself (in deciseconds). If zero, remains until cleared.
Var Details
alerttooltipstyle
Tool-tip for the alert.
override_alerts
If true, this should override any other alerts of the same type thrown.
owner
The mob that this alert was originally thrown to.
severity
Some alerts may have different icon states based on severity, this adjusts that.
timeout
How long before this alert automatically clears itself (in deciseconds). If zero, remains until cleared.
\ No newline at end of file
diff --git a/atom/movable/screen/alert/augury.html b/atom/movable/screen/alert/augury.html
new file mode 100644
index 00000000000..16b5a0e1dce
--- /dev/null
+++ b/atom/movable/screen/alert/augury.html
@@ -0,0 +1,14 @@
+/atom/movable/screen/alert/augury - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Executed when the parent is deleted.
+Don't immediately kill ourselves, since it's possible that we might want to move somewhere else
+(for example, after a meteor strike)
Called when someone stops orbiting our followed object, so they can actually get out of the loop.
Var Details
follow_target
The atom being followed
followers
The atoms following it
next_targets
Queue of next atoms to follow
thing_followed
Title for the thing that will be followed.
time_between_switches
After a followed item is qdeleted, wait this long before switching to the next target, allowing you to see aftermath.
Proc Details
Initialize
Create a new augury alert.
+
Arguments:
+
+
follow_target: The atom to start out following. Can be null, in which case change_targets() should be used at some point.
+
alert_overlay_override: If follow_target is provided (or not), use this for the alert image.
+
change_targets
Change the atom that everyone is currently following, moving everyone to the new object.
+
Arguments:
+
+
next_to - The next atom to follow.
+
on_following_qdel
Executed when the parent is deleted.
+Don't immediately kill ourselves, since it's possible that we might want to move somewhere else
+(for example, after a meteor strike)
remove_follower_on_stop_orbit
Called when someone stops orbiting our followed object, so they can actually get out of the loop.
\ No newline at end of file
diff --git a/atom/movable/screen/alert/modlink_call.html b/atom/movable/screen/alert/modlink_call.html
new file mode 100644
index 00000000000..4e7e9d2503f
--- /dev/null
+++ b/atom/movable/screen/alert/modlink_call.html
@@ -0,0 +1 @@
+/atom/movable/screen/alert/modlink_call - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/atom/movable/screen/alert/status_effect/offering_item.html b/atom/movable/screen/alert/status_effect/offering_item.html
new file mode 100644
index 00000000000..2e51a89803c
--- /dev/null
+++ b/atom/movable/screen/alert/status_effect/offering_item.html
@@ -0,0 +1 @@
+/atom/movable/screen/alert/status_effect/offering_item - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/atom/movable/screen/alert/take_item.html b/atom/movable/screen/alert/take_item.html
new file mode 100644
index 00000000000..47de85bcc2a
--- /dev/null
+++ b/atom/movable/screen/alert/take_item.html
@@ -0,0 +1,2 @@
+/atom/movable/screen/alert/take_item - Space Station 13Space Station 13 - Modules - Types — Var Details
Take Item alert
Alert which appears for a user when another player is attempting to offer them an item.
+The user can click the alert to accept, or simply do nothing to not take the item.
\ No newline at end of file
diff --git a/atom/movable/screen/button_palette.html b/atom/movable/screen/button_palette.html
new file mode 100644
index 00000000000..49c3a542e3d
--- /dev/null
+++ b/atom/movable/screen/button_palette.html
@@ -0,0 +1 @@
+/atom/movable/screen/button_palette - Space Station 13Space Station 13 - Modules - Types — Var Details
Id of any currently running timers that set our color matrix
Var Details
color_timer_id
Id of any currently running timers that set our color matrix
\ No newline at end of file
diff --git a/atom/movable/screen/fullscreen/stretch/cursor_catcher.html b/atom/movable/screen/fullscreen/stretch/cursor_catcher.html
new file mode 100644
index 00000000000..e8f9530e7ca
--- /dev/null
+++ b/atom/movable/screen/fullscreen/stretch/cursor_catcher.html
@@ -0,0 +1 @@
+/atom/movable/screen/fullscreen/stretch/cursor_catcher - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
cursor_catcher
An effect which tracks the cursor's location on the screen
\ No newline at end of file
diff --git a/atom/movable/screen/fullscreen/stretch/cursor_catcher/scope.html b/atom/movable/screen/fullscreen/stretch/cursor_catcher/scope.html
new file mode 100644
index 00000000000..c46886659b8
--- /dev/null
+++ b/atom/movable/screen/fullscreen/stretch/cursor_catcher/scope.html
@@ -0,0 +1 @@
+/atom/movable/screen/fullscreen/stretch/cursor_catcher/scope - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/atom/movable/screen/movable.html b/atom/movable/screen/movable.html
new file mode 100644
index 00000000000..597e3fb3227
--- /dev/null
+++ b/atom/movable/screen/movable.html
@@ -0,0 +1 @@
+/atom/movable/screen/movable - Space Station 13Space Station 13 - Modules - Types — Proc Details
Takes mouse parmas as input, returns a string representing the appropriate mouse position
Proc Details
mouse_params_to_position
Takes mouse parmas as input, returns a string representing the appropriate mouse position
\ No newline at end of file
diff --git a/atom/movable/screen/movable/action_button.html b/atom/movable/screen/movable/action_button.html
new file mode 100644
index 00000000000..eff640d96fb
--- /dev/null
+++ b/atom/movable/screen/movable/action_button.html
@@ -0,0 +1 @@
+/atom/movable/screen/movable/action_button - Space Station 13Space Station 13 - Modules - Types — Var Details
Overlay for displaying the availability of the button
Var Details
actiontooltipstyle
The style of tool-tip.
active_overlay_icon_state
The icon state of our active overlay, used to prevent re-applying identical overlays
active_underlay_icon_state
The icon state of our active underlay, used to prevent re-applying identical underlays
button_overlay
The overlay we have overtop our button
id
A unique bitflag, combined with the name of our linked action this lets us persistently remember any user changes to our position
last_hovered_ref
UID of the last thing we hovered over. Used for managing action button dragging.
linked_action
The action triggered by this button.
linked_keybind
The keybind that will trigger this action button.
location
Where we are currently placed on the hud. SCRN_OBJ_DEFAULT asks the linked action what it thinks
locked
Whether or not this button is locked, preventing it from being dragged.
our_hud
The HUD this action button belongs to
shown_to_observers
Whether or not this should be shown to observers
unavailable_image
Overlay for displaying the availability of the button
\ No newline at end of file
diff --git a/atom/movable/screen/palette_scroll.html b/atom/movable/screen/palette_scroll.html
new file mode 100644
index 00000000000..f40dc9fead7
--- /dev/null
+++ b/atom/movable/screen/palette_scroll.html
@@ -0,0 +1,3 @@
+/atom/movable/screen/palette_scroll - Space Station 13Space Station 13 - Modules - Types — Var Details
How should we move the palette's actions?
+Positive scrolls down the list, negative scrolls back
Var Details
scroll_direction
How should we move the palette's actions?
+Positive scrolls down the list, negative scrolls back
\ No newline at end of file
diff --git a/atom/movable/screen/plane_master/emissive.html b/atom/movable/screen/plane_master/emissive.html
new file mode 100644
index 00000000000..5cf40c4e009
--- /dev/null
+++ b/atom/movable/screen/plane_master/emissive.html
@@ -0,0 +1,3 @@
+/atom/movable/screen/plane_master/emissive - Space Station 13Space Station 13 - Modules - Types
emissive
Things placed on this mask the lighting plane. Doesn't render directly.
+
Gets masked by blocking plane. Use for things that you want blocked by
+mobs, items, etc.
\ No newline at end of file
diff --git a/atom/movable/screen/robot/active_module.html b/atom/movable/screen/robot/active_module.html
new file mode 100644
index 00000000000..41454b27a69
--- /dev/null
+++ b/atom/movable/screen/robot/active_module.html
@@ -0,0 +1 @@
+/atom/movable/screen/robot/active_module - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Updates the background of the module to be inactive
Var Details
activated_icon_string
Where the string for the activated icon state is stored
active
If it should have a green background
deactivated_icon_string
Where the string for the deactivated icon state is stored
module_number
If it's slot 1, 2, or 3
Proc Details
activate
Updates the background of the module to be active
deactivate
Updates the background of the module to be inactive
\ No newline at end of file
diff --git a/atom/movable/screen/text/blurb.html b/atom/movable/screen/text/blurb.html
new file mode 100644
index 00000000000..f4493ea4b30
--- /dev/null
+++ b/atom/movable/screen/text/blurb.html
@@ -0,0 +1 @@
+/atom/movable/screen/text/blurb - Space Station 13Space Station 13 - Modules - Types — Var Details
Amount of time the blurbs appering (alpha changing from 0 to 255). 0 means blurb is fully opaque from the start
blurb_text
Text that will be shown in blurb
chars_per_interval
Number of chars from the text that will be displayed per interval. Defaults to 1
fade_animation_duration
Amount of time the blurb takes to fade (alpha changing from 255 to 0). 0 means blurb is instantly removed from the screen after finished
font_family
Font family
font_size
Font size in pixels
hold_for
Amount of time the blurb will be present on the screen. 0 means that blurb will dissappear immediately
interval
The interval between chars rendering
text_alignment
Where text is aligned
text_color
Color of text in RGB
text_outline_color
Color of text outline
text_outline_width
Width of text outline in pixels
\ No newline at end of file
diff --git a/client.html b/client.html
new file mode 100644
index 00000000000..205a344172b
--- /dev/null
+++ b/client.html
@@ -0,0 +1,59 @@
+/client - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
A lazy list of atoms we've examined in the last RECENT_EXAMINE_MAX_WINDOW (default 2) seconds, so that we will call /atom/proc/examine_more instead of [/atom/proc/examine] on them when examining
+A lazy list of atoms we've examined in the last RECENT_EXAMINE_MAX_WINDOW (default 2) seconds, so that we will call /atom/proc/examine_more instead of [/atom/proc/examine] on them when examining
dumb workaround because byond doesnt seem to recognize the Topic() typepath for /datum/proc/Topic() from the client Topic,
+so we cant queue it without this
Blocks until all currently sending browse and browse_rs 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.
This proc sets the built in BYOND macros for keypresses to pass inputs on to the rebindable input system or the legacy system
+If you plan on ripping out the legacy system, see the set_macros() proc at the following commit: https://github.com/S34NW/Paradise/commit/83a0a0b0c633807cc5a88a630f623cec24e16027
Core topics are VV topics which should work even if the code responsible
+for processing vv topics for that datum is runtiming. They're kept separately
+from /datum/proc/vv_do_topic for that reason.
Var Details
ViewMods
Was used to handle view modifications. Now only used for a mecha module. Please just edit the string in the future
ViewModsActive
Stores the viewmod we set using this system. Only used for a mecha module
ViewPreferedIconSize
Stores the icon size we use for skins. As the server has control freak enabled, this is always static
active_keybindings
The client's active keybindings, depending on their active mob.
admin_music_volume
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
+Admin music volume, from 0 to 1.
byondacc_age
Days since the client's BYOND account was created
byondacc_date
Date the client registered their BYOND account on
click_intercept_time
Time when the click was intercepted
completed_asset_jobs
List of all completed blocking send jobs awaiting acknowledgement by send_asset
connection_time
world.time they connected
credits
list of all credit object bound to this client
cui_entries
List of the clients CUIs
description_holders
Persistent storage for the flavour text of examined atoms.
drag_details
The params we passed at the start of the drag, in list form
drag_start
When we started the currently active drag
fullscreen
The current fullscreen state for /client/toggle_fullscreen()
input_data
Input datum, what the client is pressing.
jbh
The client's job ban holder
last_asset_job
The ID of the last asset job
last_completed_asset_job
The ID of the last asset job that was properly finished
last_discord_pm_time
Last world.time that a PM was send to discord by a player
last_parallax_shift
Stored world.tim of the last parallax update. Used to make sure parallax isn't updated too often
m5_uid_cache
Cache of MD5'd UIDs. This is to stop clients from poking at object UIDs and being exploity with them
macro_sets
Basically a local variable on a client datum. Used when setting macros and nowhere else
mouseParams
Used in MouseDrag to preserve the original mouse click parameters
mouse_location_UID
Used in MouseDrag to preserve the last mouse-entered location.
mouse_object_UID
Used in MouseDrag to preserve the last mouse-entered object.
moused_over
The client's currently moused over datum, limited to movable and stored as UID
movement_kb_dirs
The client's movement keybindings to directions, which work regardless of modifiers.
movingmob
Used with parallax to update the parallax offsets when the subsystem fires. Compared to the clients Eye variable
next_mouse_macro_warning
Used to throw an admin warning if someone used a mouse macro. Also stores the world time so we can send funny noises to them
obj_window
Our object window datum. It stores info about and handles behavior for the object tab
pai_save
Client's pAI save
panel_tabs
list of all tabs
parallax_animate_timer
Handles how parallax loops in situations like shuttles leaving. Stores the timer that handles that
parallax_layers
List of parallax layers a client is viewing. Accessed when paralax is updated
parallax_layers_cached
A cached list of available parallax layers. This may potentially be changeable to a static variable. Updated upon changing parallax prefs
parallax_layers_max
The amount of parallax layers that will exist on your screen. Affected by the parallax preference
parallax_movedir
The direction parallax will be moved it. References parallax_move_direction on areas
parallax_static_layers_tail
Added to parallax layers when parallax settings are changed
parallax_throttle
Deciseconds of added delay to parallax by client preferences
parent_type
Client is casted to /datum so that we're able to use datum variables, search for clients through datums, and not need to duplicate code for GCing
previous_turf
Used with parallax to grab the offset needed. Uses the X and Y coords of the turf stored here
received_discord_pm
Last world/time that a PM was sent to the player by an admin
recent_examines
A lazy list of atoms we've examined in the last RECENT_EXAMINE_MAX_WINDOW (default 2) seconds, so that we will call /atom/proc/examine_more instead of [/atom/proc/examine] on them when examining
+A lazy list of atoms we've examined in the last RECENT_EXAMINE_MAX_WINDOW (default 2) seconds, so that we will call /atom/proc/examine_more instead of [/atom/proc/examine] on them when examining
screen_maps
Used with the camera console to clear out the screen objects it adds to the client when the console is deleted
seen_messages
Messages currently seen by this client
selected_target
Autoclick list of two elements, first being the clicked thing, second being the parameters.
sent_assets
List of all asset filenames sent to this client by the asset cache, along with their assoicated md5s
show_verb_panel
hides the byond verb panel as we use our own custom version
spell_tabs
list of tabs containing spells and abilities
stat_panel
Stat panel window declaration, we don't usually allow this but tgui windows/panels are exceptions
stat_tab
our current tab
tgui_cache_reloaded
global
+
TRUE if cache was reloaded by tgui dev server at least once.
tgui_panel
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
tgui_say
Assigned say modal of the client
tgui_windows
global
+
Tracks open windows for a user.
topiclimiter
Used for limiting the rate of topic sends by the client to avoid abuse
tos_consent
Has the client accepted the TOS about data collection and other stuff
version_blocked
If true, client cannot ready up, late join, or observe. Used for players with EXTREMELY old byond versions.
visual_delay
The visual delay to use for the current client.Move(), mostly used for making a client based move look like it came from some other slower source
watchlisted
Is the client watchlisted
window_scaling
If this client has any windows scaling applied
Proc Details
Process_Grab
Process_Grab()
+Called by client/Move()
+Checks to see if you are being grabbed and if so attemps to break it
Process_Incorpmove
Process_Incorpmove
+Called by client/Move()
+Allows mobs to run though walls
_Topic
dumb workaround because byond doesnt seem to recognize the Topic() typepath for /datum/proc/Topic() from the client Topic,
+so we cant queue it without this
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_rs 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.
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.
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.
display_job_bans
Lists all active jobbans for src client
+
from_client_connection - If true, user will not receive any info in chat if they have no job bans, used when a player loads into to the lobby.
fix_tgui_panel
tgui panel / chat troubleshooting verb
get_byond_account_date
Sets the clients BYOND date up properly
+
If the client does not have a saved BYOND account creation date, retrieve it from the website
+If they do have a saved date, use that from the DB, because this value will never change
+Arguments:
+
+
notify - Do we notify admins of this new accounts date
+
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 and sends it to the browser
maxview
Returns the biggest number from client.view so we can do easier maths
on_stat_panel_message
Handles incoming messages from the stat-panel TGUI.
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.
retrieve_byondacc_data
Retrieves the BYOND accounts data from the BYOND servers
+
Makes a web request to byond.com to retrieve the details for the BYOND account associated with the clients ckey.
+Returns the data in a parsed, associative list
set_macros
This proc sets the built in BYOND macros for keypresses to pass inputs on to the rebindable input system or the legacy system
+If you plan on ripping out the legacy system, see the set_macros() proc at the following commit: https://github.com/S34NW/Paradise/commit/83a0a0b0c633807cc5a88a630f623cec24e16027
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.
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_fullscreen
Handles fullscreen on the client.
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.
vv_core_topics
Core topics are VV topics which should work even if the code responsible
+for processing vv topics for that datum is runtiming. They're kept separately
+from /datum/proc/vv_do_topic for that reason.
\ No newline at end of file
diff --git a/code/__DEFINES/MC.html b/code/__DEFINES/MC.html
new file mode 100644
index 00000000000..4b96aa6da17
--- /dev/null
+++ b/code/__DEFINES/MC.html
@@ -0,0 +1,7 @@
+code/__DEFINES/MC.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
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
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
(also forces it to run first in the tick (unless SS_BACKGROUND))
Define Details
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
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_TICKER
(also forces it to run first in the tick (unless SS_BACKGROUND))
\ No newline at end of file
diff --git a/code/__DEFINES/__proc_refs.html b/code/__DEFINES/__proc_refs.html
new file mode 100644
index 00000000000..257614f4f7d
--- /dev/null
+++ b/code/__DEFINES/__proc_refs.html
@@ -0,0 +1 @@
+code/__DEFINES/__proc_refs.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/__DEFINES/_click.html b/code/__DEFINES/_click.html
new file mode 100644
index 00000000000..fbca3f4417f
--- /dev/null
+++ b/code/__DEFINES/_click.html
@@ -0,0 +1,3 @@
+code/__DEFINES/_click.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Objects will be clicked on if it is the topmost object and the pixel isn't transparent at the position of the mouse (default behavior for 99.99% of game objects)
Objects will be always be clicked on regardless of pixel transparency or other objects at that location (used in space vines, storage containers)
Define Details
BUTTON
Mouse button that was just clicked/released
+if(modifiersBUTTON == LEFT_CLICK)
MOUSE_OPACITY_ICON
Objects will be clicked on if it is the topmost object and the pixel isn't transparent at the position of the mouse (default behavior for 99.99% of game objects)
MOUSE_OPACITY_OPAQUE
Objects will be always be clicked on regardless of pixel transparency or other objects at that location (used in space vines, storage containers)
MOUSE_OPACITY_TRANSPARENT
Objects will ignore being clicked on regardless of their transparency (used in parallax, lighting effects, holograms, lasers, etc.)
\ No newline at end of file
diff --git a/code/__DEFINES/_globals.html b/code/__DEFINES/_globals.html
new file mode 100644
index 00000000000..5716465178e
--- /dev/null
+++ b/code/__DEFINES/_globals.html
@@ -0,0 +1 @@
+code/__DEFINES/_globals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
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_INIT
Create a list global with an initializer expression
GLOBAL_LIST_INIT_TYPED
Create a typed list global with an initializer expression
GLOBAL_RAW
Defines a global var on the controller, do not use
GLOBAL_REAL
Standard typed BYOND global, seriously do not use without an earthshakingly good reason
GLOBAL_REAL_VAR
Standard BYOND global, seriously do not use without an earthshakingly good reason
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
\ No newline at end of file
diff --git a/code/__DEFINES/_math.html b/code/__DEFINES/_math.html
new file mode 100644
index 00000000000..1a89f3a4e91
--- /dev/null
+++ b/code/__DEFINES/_math.html
@@ -0,0 +1,3 @@
+code/__DEFINES/_math.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Converts a probability/second chance to probability/seconds_per_tick chance
+For example, if you want an event to happen with a 10% per second chance, but your proc only runs every 5 seconds, do if(prob(100*SPT_PROB_RATE(0.1, 5)))
Like SPT_PROB_RATE but easier to use, simply put if(SPT_PROB(10, 5))
SPT_PROB_RATE
Converts a probability/second chance to probability/seconds_per_tick chance
+For example, if you want an event to happen with a 10% per second chance, but your proc only runs every 5 seconds, do if(prob(100*SPT_PROB_RATE(0.1, 5)))
hex2num
Returns an integer given a hex input, supports negative values "-ff". Skips preceding invalid characters.
normal_distribution
Returns probability based on deviation from the mean(m) and sigma(s)
num2hex
Returns the hex value of a decimal number. len == length of returned string.
\ No newline at end of file
diff --git a/code/__DEFINES/_protection.html b/code/__DEFINES/_protection.html
new file mode 100644
index 00000000000..1f085342ecd
--- /dev/null
+++ b/code/__DEFINES/_protection.html
@@ -0,0 +1 @@
+code/__DEFINES/_protection.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/__DEFINES/_tick.html b/code/__DEFINES/_tick.html
new file mode 100644
index 00000000000..23013e125f9
--- /dev/null
+++ b/code/__DEFINES/_tick.html
@@ -0,0 +1 @@
+code/__DEFINES/_tick.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
runs 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
MAPTICK_MC_MIN_RESERVE
Percentage of tick to leave for master controller to run
RUNNING_BEFORE_MASTER
Checks if a sleeping proc is running before or after the master controller
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_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
VERB_SHOULD_YIELD
Returns true if a verb ought to yield to the MC (IE: queue up to be processed by a subsystem)
\ No newline at end of file
diff --git a/code/__DEFINES/access_defines.html b/code/__DEFINES/access_defines.html
new file mode 100644
index 00000000000..63a96a0ae54
--- /dev/null
+++ b/code/__DEFINES/access_defines.html
@@ -0,0 +1,5 @@
+code/__DEFINES/access_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Used for events which require at least two people to confirm them.
ACCESS_RC_ANNOUNCE
Request console announcements.
ACCESS_SECURITY
Security equipment.
ACCESS_SEC_DOORS
Security front doors.
ACCESS_SYNDICATE
MARK: SYNDICATE ACCESS
+General Syndicate Access
ACCESS_SYNDICATE_COMMAND
Admin syndi officer
ACCESS_SYNDICATE_LEADER
Nuke Op Leader Access
ACCESS_TCOMSAT
Has access to the entire telecomms satellite / machinery.
ACCESS_THETA_STATION
Ghost role: Theta station.
ACCESS_TRADE_SOL
MARK: MISC ACCESS
+Trade stations
ACCESS_VOX
Vox Access
ACCESS_WEAPONS
Weapon authorization for secbots.
\ No newline at end of file
diff --git a/code/__DEFINES/action_button_defines.html b/code/__DEFINES/action_button_defines.html
new file mode 100644
index 00000000000..94eae4f3d7b
--- /dev/null
+++ b/code/__DEFINES/action_button_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/action_button_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Floating somewhere on the hud, not in any predefined place
SCRN_OBJ_IN_LIST
In the list of buttons stored at the top of the screen
SCRN_OBJ_IN_PALETTE
In the collapseable palette
\ No newline at end of file
diff --git a/code/__DEFINES/action_defines.html b/code/__DEFINES/action_defines.html
new file mode 100644
index 00000000000..538388f18af
--- /dev/null
+++ b/code/__DEFINES/action_defines.html
@@ -0,0 +1,3 @@
+code/__DEFINES/action_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The status shown in the stat panel.
+Can be stuff like "ready", "on cooldown", "active", "charges", "charge cost", etc.
\ No newline at end of file
diff --git a/code/__DEFINES/admin_defines.html b/code/__DEFINES/admin_defines.html
new file mode 100644
index 00000000000..0b54f8c9091
--- /dev/null
+++ b/code/__DEFINES/admin_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/admin_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Note "ckey" for roundstart antag rolling tracking. Do not EVER update this.
CIDTRACKING_PSUEDO_CKEY
Note "ckey" for CID info tracking. Do not EVER update this.
CIDWARNING_SUPPRESSED_NOTETEXT
Note text for suppressed CID warning
CONNECTION_TYPE_DROPPED_BANNED
Client was disallowed due to being banned
CONNECTION_TYPE_DROPPED_INVALID
Client was disallowed due to invalid data
CONNECTION_TYPE_DROPPED_IPINTEL
Client was disallowed due to IPIntel
CONNECTION_TYPE_ESTABLISHED
Client was let into the server
\ No newline at end of file
diff --git a/code/__DEFINES/ai/ai_defines.html b/code/__DEFINES/ai/ai_defines.html
new file mode 100644
index 00000000000..b14f7117271
--- /dev/null
+++ b/code/__DEFINES/ai/ai_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/ai/ai_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
macro for whether it's appropriate to resist right now, used by resist subtree
Define Details
AI_BEHAVIOR_CAN_PLAN_DURING_EXECUTION
Does this behavior NOT block planning?
AI_BEHAVIOR_DELAY
Update this behavior's cooldown
AI_BEHAVIOR_FAILED
Finish the behavior unsuccessfully
AI_BEHAVIOR_KEEP_MOVE_TARGET_ON_FINISH
Does finishing this task not null the current movement target?
AI_BEHAVIOR_MOVE_AND_PERFORM
Does this task let you perform the action while you move closer? (Things like moving and shooting)
AI_BEHAVIOR_REQUIRE_MOVEMENT
Does this task require movement from the AI before it can be performed?
AI_BEHAVIOR_REQUIRE_REACH
Does this require the current_movement_target to be adjacent and in reach?
AI_BEHAVIOR_SUCCEEDED
Finish the behavior successfully
AI_CONTROLLER_INCOMPATIBLE
Flags for ai_behavior new()
AI_FAILED_PLANNING_COOLDOWN
Cooldown on planning if planning failed last time
AI_FLAG_CAN_ACT_IN_STASIS
Continue processing while in stasis
AI_FLAG_CAN_ACT_WHILE_DEAD
Continue processing even if dead
AI_FLAG_PAUSE_DURING_DO_AFTER
Stop processing while in a progress bar
AI_FLAG_STOP_MOVING_WHEN_PULLED
Don't move if being pulled
AI_MAX_PATH_LENGTH
For JPS pathing, the maximum length of a path we'll try to generate. Should be modularized depending on what we're doing later on
AI_PREVENT_CANCEL_ACTIONS
bypass canceling our actions on set_ai_status()
AI_STATUS_IDLE
The AI is currently in idle mode.
AI_STATUS_OFF
The AI is currently offline for any reason.
AI_STATUS_ON
The AI is currently active.
AI_UNABLE_TO_RUN
pauses AI processing
RESIST_SUBTREE_PROB
probability that the pawn should try resisting out of restraints
SHOULD_RESIST
macro for whether it's appropriate to resist right now, used by resist subtree
SUBTREE_RETURN_FINISH_PLANNING
This subtree should cancel any further planning, (Including from other subtrees)
\ No newline at end of file
diff --git a/code/__DEFINES/ai/ash_whelp_defines.html b/code/__DEFINES/ai/ash_whelp_defines.html
new file mode 100644
index 00000000000..a89e0ed73f2
--- /dev/null
+++ b/code/__DEFINES/ai/ash_whelp_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/ai/ash_whelp_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
the target rock we will attempt to create a sculpture out of
BB_TARGET_TREE
the tree we will burn down
BB_WHELP_STRAIGHTLINE_FIRE
whelp's straight line fire ability
BB_WHELP_WIDESPREAD_FIRE
whelp's secondary enraged ability
\ No newline at end of file
diff --git a/code/__DEFINES/ai/blackboard_defines.html b/code/__DEFINES/ai/blackboard_defines.html
new file mode 100644
index 00000000000..4061a5dd8ca
--- /dev/null
+++ b/code/__DEFINES/ai/blackboard_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/ai/blackboard_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Blackboard field for the most recent command the pet was given
BB_AGGRO_RANGE
How close a mob must be for us to select it as a target, if that is less than how far we can maintain it as a target
BB_ALWAYS_IGNORE_FACTION
Should we skip the faction check for the targeting strategy?
BB_AUTOMATED_MINING
key that stores our mining mode
BB_BABIES_CHILD_TYPES
Types of animal that we make as a baby.
BB_BABIES_PARTNER_TYPES
Types of animal we can make babies with.
BB_BABIES_TARGET
Current partner target
BB_BASIC_FOODS
list of foods this mob likes
BB_BASIC_MOB_CURRENT_TARGET
Key for our current target.
BB_BASIC_MOB_CURRENT_TARGET_HIDING_LOCATION
Key for the current hidden location of our target if applicable.
BB_BASIC_MOB_EXECUTION_TARGET
some behaviors that check current_target also set this on deep crit mobs
BB_BASIC_MOB_FLEE_DISTANCE
Key defining how far we attempt to get away from something we're fleeing from
BB_BASIC_MOB_FLEE_TARGET
Key of something we're running away from
BB_BASIC_MOB_FLEE_TARGET_HIDING_LOCATION
Key for the current hidden location of something we're running away from
BB_BASIC_MOB_HAS_TARGET_TIME
Blackboard key storing how long your targeting strategy has held a particular target
BB_BASIC_MOB_IDLE_WALK_CHANCE
How likely is this mob to move when idle per tick?
BB_BASIC_MOB_RETALIATE_LIST
List of mobs who have damaged us
BB_BASIC_MOB_STOP_FLEEING
Flag to set on if you want your mob to STOP running away
BB_BASIC_MOB_TIPPER
the motherfucker who tipped us
BB_BASIC_MOB_TIP_REACTING
Bool that means a basic mob will start reacting to being tipped in its planning
BB_BLACKLIST_MINERAL_TURFS
key that stores list of the turfs we ignore
BB_BREED_READY
are we ready to breed?
BB_CHANGELING_SPIDER_ORDER
Key used by changelings who control spiders
BB_CHECK_HUNGRY
are we hungry? determined by the udder component
BB_CLEAN_TARGET
Target define for cleaning
BB_CURRENT_HOME
the bee hive we live inside
BB_CURRENT_HUNTING_TARGET
Key that holds our current hunting target
BB_CURRENT_MIN_MOVE_DISTANCE
The closest we're allowed to / required to get to a target.
BB_CURRENT_PET_TARGET
Blackboard field for what we actually want the pet to target
BB_DRONE_DEFEND
key that holds the drone we defend
BB_EAT_EMOTES
key holding emotes we play after eating
BB_EAT_FOOD_COOLDOWN
key holding our eating cooldown
BB_FIND_MOM_TYPES
list of types of mobs we will look for
BB_FIND_TARGETS_FIELD
For /datum/ai_behavior/find_potential_targets, what if any field are we using currently
BB_FLEE_TARGETING_STRATEGY
Key defining the targeting strategy for things to flee from
BB_FOOD_TARGET
what we're going to eat next
BB_FOUND_MOM
key holds the adult we found
BB_FRIENDS_LIST
List of UIDs to mobs this mob is friends with, will follow their instructions and won't attack them
BB_GENERIC_ACTION
Generic key for a non-specific action
BB_GOLIATH_HOLE_TARGET
Key where goliath stores a hole it wants to get into
BB_GOLIATH_TENTACLES
Key where we store the tentacleing ability
BB_HIVE_PARTNER
the hivebot partner we will go communicate with
BB_HUNTING_COOLDOWN
Key that holds the cooldown for our hunting subtree
BB_IGNORE_MOM_TYPES
list of types of mobs we must ignore
BB_LEGION_BROOD_CREATOR
The creator of our legion skull
BB_LEGION_CORPSE
Corpse we have consumed
BB_LEGION_RECENT_LINES
Things our target recently said
BB_LOW_PRIORITY_HUNTING_TARGET
Key that holds our less priority hunting target
BB_MALF_DRONE_PASSIVE
Are we active?
BB_MAX_CHILDREN
maximum kids we can have
BB_MINEBOT_AUTO_DEFEND
should we auto protect?
BB_MINEBOT_DUMP_ABILITY
key that stores our dump ore ability
BB_MINEBOT_GIBTONITE_RUN
gibtonite wall we need to run away from
BB_MINEBOT_LIGHT_ABILITY
key that stores our toggle light ability
BB_MINER_FRIEND
key that holds the miner we must befriend
BB_MINIMUM_SHOOTING_DISTANCE
key that holds the minimum distance before we flee
BB_NEARBY_DEAD_MINER
key that stores the nearest dead human
BB_NEXT_FOOD_EAT
key holding the next time we eat
BB_NEXT_HUNGRY
time until we should next eat, set by the generic hunger subtree
BB_NIAN_CATERPILLAR_SPIN_MOTHSILK_ACTION
Key that stores the silk spin ability
BB_OBSTACLE_TARGETING_WHITELIST
Blackboard key for a whitelist typecache of "things we can target while trying to move"
BB_ORE_IGNORE_TYPES
which ore types we will not eat
BB_ORE_TARGET
key that holds the ore we will eat
BB_OWNER_FRIENDLY_FIRE_APOLOGIES
List of strings used to apologize for attacking friends.
BB_OWNER_SELF_HARM_RESPONSES
List of strings we might say to encourage someone to make better choices.
BB_PARTNER_SEARCH_TIMEOUT
Timeout for finding partners when theres too many of us in 1 location
BB_PET_TARGETING_STRATEGY
Blackboard field for how we target things, as usually we want to be more permissive than normal
BB_PREVIOUS_UNREACHABLE_WALL
key that stores the previous blocked wall
BB_RANDOM_AGGRO_CHANCE
Chance to randomly acquire a new target
BB_RANDOM_DEAGGRO_CHANCE
Chance to randomly drop all of our targets
BB_RANGED_SKIRMISH_MAX_DISTANCE
Maximum range to keep target within
BB_RANGED_SKIRMISH_MIN_DISTANCE
Minimum range to keep target within
BB_SEARCH_RANGE
key holding a range to look for stuff in
BB_SPIDER_EGG_LAYING_ACTION
Key where we define the egg laying ability
BB_SPIDER_WEB_ACTION
Key where we store the web-spinning ability
BB_SPIDER_WEB_TARGET
Our webbing target
BB_SPIDER_WRAP_ACTION
Key where we define the wrapping ability
BB_SPIDER_WRAP_TARGET
Our wrapping target
BB_STATIONARY_CAUSE
Is there something that scared us into being stationary? If so, hold the reference here
BB_STATIONARY_COOLDOWN
How often can we get spooked by a target?
BB_STATIONARY_MOVE_TO_TARGET
Should we move towards the target that triggered us to be stationary?
BB_STATIONARY_SECONDS
How long should we remain stationary for?
BB_STATIONARY_TARGETS
What targets will trigger us to be stationary? Must be a list.
BB_TARGETED_ACTION
Generic key for a non-specific targeted action
BB_TARGETING_STRATEGY
Key for the type of targeting strategy we will apply.
BB_TARGET_FOOD
key holding any food we've found
BB_TARGET_HYDRO
the hydro we will pollinate
BB_TARGET_MINERAL_TURF
key that stores our target turf
BB_TARGET_MINERAL_WALL
key that tells the wall we will mine
BB_TARGET_MINIMUM_STAT
Key for the minimum status at which we want to target mobs (does not need to be specified if CONSCIOUS)
BB_TEMPORARILY_IGNORE_FACTION
Are we in some kind of temporary state of ignoring factions when targeting? can result in volatile results if multiple behaviours touch this
BB_VENTCRAWL_DELAY
key holding the amount of delay between steps in a vent (recommended: 1)
BB_VENTCRAWL_ENTRANCE
key holding the vent we will move to
BB_VENTCRAWL_EXIT
key holding the vent we will ventcrawl to
BB_VENTCRAWL_FINAL_TARGET
key holding the turf we will move to
BB_VENTCRAWL_IS_ENTERING
key holding a boolean value if we're entering into a vent
BB_VENT_SEARCH_RANGE
key holding a range to look for vents (recommended: 10)
\ No newline at end of file
diff --git a/code/__DEFINES/ai/incursion_blackboard_defines.html b/code/__DEFINES/ai/incursion_blackboard_defines.html
new file mode 100644
index 00000000000..6e737c0680c
--- /dev/null
+++ b/code/__DEFINES/ai/incursion_blackboard_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/ai/incursion_blackboard_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/__DEFINES/ai/swarmer_defines.html b/code/__DEFINES/ai/swarmer_defines.html
new file mode 100644
index 00000000000..77520699a7d
--- /dev/null
+++ b/code/__DEFINES/ai/swarmer_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/ai/swarmer_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Key where we define the barrier construction ability
BB_SWARMER_CONSTRUCT_TARGET
Our construction target
BB_SWARMER_REPLICATE_ACTION
Key where we store the replication ability
BB_SWARMER_RESOURCE_SHARE_ACTION
Key where we define the resource share ability
BB_SWARMER_TRAP_ACTION
Key where we define the trap construction ability
\ No newline at end of file
diff --git a/code/__DEFINES/announce_defines.html b/code/__DEFINES/announce_defines.html
new file mode 100644
index 00000000000..bbf4e8681a9
--- /dev/null
+++ b/code/__DEFINES/announce_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/announce_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
These values are used when logging user-initiated announcements.
Define Details
ANNOUNCE_KIND_DEFAULT
These values are used when logging user-initiated announcements.
\ No newline at end of file
diff --git a/code/__DEFINES/antag_defines.html b/code/__DEFINES/antag_defines.html
new file mode 100644
index 00000000000..c02706db0db
--- /dev/null
+++ b/code/__DEFINES/antag_defines.html
@@ -0,0 +1,16 @@
+code/__DEFINES/antag_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The string version of the interval for use in blackbox key names.
Define Details
ABDUCTOR_VEST_STEALTH
Abductors
BIOHAZARD_POP_INTERVAL
How often a biohazard's population is recorded after the event fires.
BIOHAZARD_POP_INTERVAL_STR
The string version of the interval for use in blackbox key names.
CHANGELING_INNATE_POWER
Changelings
+Denotes that this power is free and should be given to all changelings by default.
CHANGELING_PURCHASABLE_POWER
Denotes that this power can only be obtained by purchasing it.
CHANGELING_UNOBTAINABLE_POWER
Denotes that this power can not be obtained normally. Primarily used for base types such as /datum/action/changeling/weapon.
CONTRACT_STATUS_ACTIVE
The contract is in progress.
CONTRACT_STATUS_COMPLETED
The contract has been completed successfully.
CONTRACT_STATUS_FAILED
The contract failed for some reason.
CONTRACT_STATUS_INACTIVE
The contract hasn't been started yet.
CONTRACT_STATUS_INVALID
Contractors
+The contract is invalid for some reason and cannot be taken. It may be made valid later.
CONTRACT_STRINGS_WANTED
The name of the strings file containing data to use for contract fluff texts.
EXTRACTION_DIFFICULTY_EASY
Easy difficulty area to extract the kidnapee. Low rewards.
EXTRACTION_DIFFICULTY_HARD
Hard difficulty area to extract the kidnapee. High rewards.
EXTRACTION_DIFFICULTY_MEDIUM
Medium difficulty area to extract the kidnapee. Moderate rewards.
HERETIC_INFLUENCE_FILE
JSON string file for all of our heretic influence flavors
HERETIC_NO_HEART_ORGAN
Defines are used in /proc/has_living_heart() to report if the heretic has no heart period, no living heart, or has a living heart.
IS_CHANGELING
IS_ANTAG defines
IS_HERETIC
Heretic checks
+Checks if the given mob is a heretic.
IS_HERETIC_MONSTER
Check if the given mob is a heretic monster.
IS_HERETIC_OR_MONSTER
Checks if the given mob is either a heretic, heretic monster.
IS_IN_MANSUS
CHecks if the given mob is in the mansus realm
IS_VALID_GHOUL_MOB
Checks if the passed mob can become a heretic ghoul.
+
+
Must be a human (type, not species)
+
Skeletons cannot be husked (they are snowflaked instead of having a trait)
+
Monkeys are monkeys, not quite human (balance reasons)
+
MAX_KNOWLEDGE_PRIORITY
A define used in ritual priority for heretics.
MINDSHIELDED_TARGET
Objective targeting flags
+Objective target must be mindshielded if possible
ORG_CHAOS_AVERAGE
Your average tator, will be an issue
ORG_CHAOS_HIJACK
Hijack or hijack-tier antagonists.
ORG_CHAOS_HUNTER
Antag organizations
+Antag hunting antag. Might help security overall.
ORG_CHAOS_MILD
Will steal items/kill low importance crew, usually not much trouble
PULSEDEMON_SOURCE_DRAIN_INVALID
Pulse Demon
SYNDICATE_TARGET
Objective target must be a syndicate agent if possible
THEFT_FLAG_SPECIAL
Objectives
UNMINDSHIELDED_TARGET
Objective target must be non-mindshielded if possible
UPLINK_SPECIAL_SPAWNING
Traitors
\ No newline at end of file
diff --git a/code/__DEFINES/apc_defines.html b/code/__DEFINES/apc_defines.html
new file mode 100644
index 00000000000..7f84b2320bf
--- /dev/null
+++ b/code/__DEFINES/apc_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/apc_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
APC power channel Setting Off, if set while apc is "on" set apc to "off" otherwise set to "auto-off"
APC_CHANNEL_SETTING_OFF
Power channel is off, anything connected to it is not powered, cannot be set manually by players
APC_CHANNEL_SETTING_ON
APC power channel setting on,
\ No newline at end of file
diff --git a/code/__DEFINES/asset_defines.html b/code/__DEFINES/asset_defines.html
new file mode 100644
index 00000000000..79b786d83ec
--- /dev/null
+++ b/code/__DEFINES/asset_defines.html
@@ -0,0 +1,7 @@
+code/__DEFINES/asset_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Generate a filename for this asset
+The same asset will always lead to the same asset name
+Generated names do not include file extension.
Define Details
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 extension.
URL2HTMLLOADER
Get html to load a url.
+for use inside of browse() calls to html assets that might be loaded on a cdn.
\ No newline at end of file
diff --git a/code/__DEFINES/atmospherics_defines.html b/code/__DEFINES/atmospherics_defines.html
new file mode 100644
index 00000000000..ca6ff7e52f8
--- /dev/null
+++ b/code/__DEFINES/atmospherics_defines.html
@@ -0,0 +1,5 @@
+code/__DEFINES/atmospherics_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The coefficient a for a function of the form: 1 - (a / (x + c)^2) which gives a decomposition rate of 0.5 at 50000 Kelvin
+And a decomposition close to 0 at 1400 Kelvin
The coefficient c for a function of the form: 1 - (a / (x + c)^2) which gives a decomposition rate of 0.5 at 50000 Kelvin
+And a decomposition rate close to 0 at 1400 Kelvin
Agent B released this much energy per mole of CO2 converted to O2
AGENT_B_CONVERSION_MIN_TEMP
Agent B starts working at this temperature
ATMOS_MODE_EXPOSED_TO_ENVIRONMENT
Tile is exposed to the environment, ex: lavaland
ATMOS_MODE_NO_DECAY
Prevents hot tiles from automatically decaying towards T20C.
ATMOS_MODE_SEALED
Tile has no special behaviour
ATMOS_MODE_SPACE
Tile is exposed to space and loses air every second
COLD_ROOM_TEMP
-14C - Temperature used for kitchen cold room, medical freezer, etc.
ENVIRONMENT_COLD
Cold environment: Normal atmosphere, -93 C.
ENVIRONMENT_LAVALAND
Lavaland environment: hot, low pressure.
ENVIRONMENT_TEMPERATE
Temperate environment: Normal atmosphere, 20 C.
N2O_DECOMPOSITION_COEFFICIENT_A
The coefficient a for a function of the form: 1 - (a / (x + c)^2) which gives a decomposition rate of 0.5 at 50000 Kelvin
+And a decomposition close to 0 at 1400 Kelvin
N2O_DECOMPOSITION_COEFFICIENT_C
The coefficient c for a function of the form: 1 - (a / (x + c)^2) which gives a decomposition rate of 0.5 at 50000 Kelvin
+And a decomposition rate close to 0 at 1400 Kelvin
ONLY_CHECK_EXT_PRESSURE
Don't go over the external pressure
ONLY_CHECK_INT_PRESSURE
Only release until we reach this pressure
PRESSURE_HUD_LOAD_RADIUS
How far away should we load the pressure HUD data from MILLA?
PRESSURE_HUD_RADIUS
How far away should we send the pressure HUD to the player?
SERVER_ROOM_TEMP
1C - Temperature used for server rooms
\ No newline at end of file
diff --git a/code/__DEFINES/basic_mob_defines.html b/code/__DEFINES/basic_mob_defines.html
new file mode 100644
index 00000000000..89f45a22b99
--- /dev/null
+++ b/code/__DEFINES/basic_mob_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/basic_mob_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/__DEFINES/basic_mob_flags.html b/code/__DEFINES/basic_mob_flags.html
new file mode 100644
index 00000000000..a4146837c54
--- /dev/null
+++ b/code/__DEFINES/basic_mob_flags.html
@@ -0,0 +1,3 @@
+code/__DEFINES/basic_mob_flags.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Disables the function of attacking random body zones
REMAIN_DENSE_WHILE_DEAD
Mob remains dense while dead
\ No newline at end of file
diff --git a/code/__DEFINES/bio_chip_defines.html b/code/__DEFINES/bio_chip_defines.html
new file mode 100644
index 00000000000..097a143e84d
--- /dev/null
+++ b/code/__DEFINES/bio_chip_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/bio_chip_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The implant is passively active (like a mindshield)
BIOCHIP_EMOTE_TRIGGER_ALWAYS
If used, an implant will always trigger when the user makes an emote.
BIOCHIP_EMOTE_TRIGGER_INTENTIONAL
If used, an implant will trigger when an emote is intentionally used.
BIOCHIP_EMOTE_TRIGGER_UNINTENTIONAL
If used, an implant will trigger when an emote is forced/unintentionally used.
BIOCHIP_TRIGGER_DEATH_ANY
If used, an implant will trigger any time a user dies.
BIOCHIP_TRIGGER_DEATH_ONCE
If used, an implant will trigger on the user's first death.
BIOCHIP_TRIGGER_NOT_WHEN_GIBBED
If used, an implant will NOT trigger on death when a user is gibbed.
\ No newline at end of file
diff --git a/code/__DEFINES/callbacks.html b/code/__DEFINES/callbacks.html
new file mode 100644
index 00000000000..bd4230e2059
--- /dev/null
+++ b/code/__DEFINES/callbacks.html
@@ -0,0 +1 @@
+code/__DEFINES/callbacks.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/__DEFINES/chat.html b/code/__DEFINES/chat.html
new file mode 100644
index 00000000000..62428aba8ba
--- /dev/null
+++ b/code/__DEFINES/chat.html
@@ -0,0 +1,5 @@
+code/__DEFINES/chat.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
+How many chat payloads to keep in history
CHAT_RELIABILITY_MAX_RESENDS
How many resends to allow before giving up
\ No newline at end of file
diff --git a/code/__DEFINES/clothing_defines.html b/code/__DEFINES/clothing_defines.html
new file mode 100644
index 00000000000..24ae456b68c
--- /dev/null
+++ b/code/__DEFINES/clothing_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/clothing_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
max number of accessories that can be equiped to one piece of clothing
Define Details
ITEM_SLOT_2_INDEX
Translates an ITEM_SLOT back to an index that can be looked up in inv_slots. e.g. (1<<19) becomes 19.
MAX_EQUIPABLE_ACCESSORIES
max number of accessories that can be equiped to one piece of clothing
\ No newline at end of file
diff --git a/code/__DEFINES/color_defines.html b/code/__DEFINES/color_defines.html
new file mode 100644
index 00000000000..4f558f73d5a
--- /dev/null
+++ b/code/__DEFINES/color_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/color_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/__DEFINES/combat_defines.html b/code/__DEFINES/combat_defines.html
new file mode 100644
index 00000000000..8c4fe8407b1
--- /dev/null
+++ b/code/__DEFINES/combat_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/combat_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Multiplier for wall damage for comparison with object integrity.
Define Details
AUTOFIRE_STAT_ALERT
Gun is active and in the user hands. Wait until user does a valid click.
AUTOFIRE_STAT_FIRING
Gun is shooting.
AUTOFIRE_STAT_IDLE
Compatible firemode is in the gun. Wait until it's held in the user hands.
OBJ_INTEGRITY_TO_WALL_DAMAGE
Multiplier for wall damage for comparison with object integrity.
SECONDS_TO_JITTER
Jitter decays at a rate of 3 per life cycle, 15 if resting.
SHAME
Stam crits the effected mob, as well as ensures they dont die from suicide
\ No newline at end of file
diff --git a/code/__DEFINES/construction_defines.html b/code/__DEFINES/construction_defines.html
new file mode 100644
index 00000000000..3881ba1f99f
--- /dev/null
+++ b/code/__DEFINES/construction_defines.html
@@ -0,0 +1,3 @@
+code/__DEFINES/construction_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
let's just pretend fulltile windows being children of border windows is fine
GIRDER_NORMAL
girder construction states
MAT_WOOD
Material defines, for determining how much of a given material an item contains
MAXCOIL
maximum amount of cable in a coil
MAX_STACK_SIZE
The maximum size of a stack object.
MINERAL_MATERIAL_AMOUNT
The amount of materials you get from a sheet of mineral like iron/diamond/glass etc
MOUNTED_FRAME_SIMFLOOR
Mounted Frames BITMASK
NARSIE_WINDOW_COLOUR
other construction-related things
+windows affected by nar'sie turn this color.
PLASTIC_FLAPS_NORMAL
plastic flaps construction states
RCL_MAX_SPOOL_SIZE
maximum amount of cable in a RCL spool
RWALL_INTACT
rwall construction states
TINT_CONTROL_GROUP_NONE
ID of a tint control button with no group specified, so it controls only windows also with no group specified ('null-like' id).
TINT_CONTROL_RANGE_AREA
Range of a tint control button, that works only in its area.
WINDOW_OUT_OF_FRAME
window construction states
\ No newline at end of file
diff --git a/code/__DEFINES/cooking_defines.html b/code/__DEFINES/cooking_defines.html
new file mode 100644
index 00000000000..7e68132ce7a
--- /dev/null
+++ b/code/__DEFINES/cooking_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/cooking_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Someone tried starting the function while a prompt was running. Jerk.
PCWJ_NO_RECIPES
There are no recipes that match this object and container combination.
PCWJ_NO_STEPS
The used object has no valid recipe uses
PCWJ_PARTIAL_SUCCESS
The user decided to use the item but the qualifications for the step was not fulfilled
PCWJ_SUCCESS
The user decided to use the item and the step was followed
\ No newline at end of file
diff --git a/code/__DEFINES/cult_defines.html b/code/__DEFINES/cult_defines.html
new file mode 100644
index 00000000000..6fcc892b37b
--- /dev/null
+++ b/code/__DEFINES/cult_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/cult_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Checks that the given element is living an has a cult antag datum
Define Details
CULT_ASCENDANT_HIGH
Percent before ascend (Highpop)
CULT_ASCENDANT_LOW
Percent before ascend (Lowpop)
CULT_POPULATION_THRESHOLD
At what population does it switch to highpop values
CULT_RISEN_HIGH
Percent before rise (Highpop)
CULT_RISEN_LOW
Percent before rise (Lowpop)
ENHANCED_BLOODCHARGE
Maximum number of spells with enhanced magic
GET_CULT_DATA
Safely accesses SSticker.cult_data, returns the default if cult data is not set up yet. Allows for both variable and proc call access.
IS_CULTIST
Checks that the given element is living an has a cult antag datum
MAX_BLOODCHARGE
Maximum number of spells with an empowering rune
RUNELESS_MAX_BLOODCHARGE
Maximum number of spells without an empowering rune
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/ai_signals.html b/code/__DEFINES/dcs/ai_signals.html
new file mode 100644
index 00000000000..d5112cf49ce
--- /dev/null
+++ b/code/__DEFINES/dcs/ai_signals.html
@@ -0,0 +1 @@
+code/__DEFINES/dcs/ai_signals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
sent from ai controllers when they stop possessing a pawn: (datum/ai_controller/source_controller)
Define Details
AI_CONTROLLER_BEHAVIOR_QUEUED
sent from ai controllers when a behavior is inserted into the queue: (list/new_arguments)
COMSIG_AI_BLACKBOARD_KEY_CLEARED
Signal sent when a blackboard key is cleared
COMSIG_AI_BLACKBOARD_KEY_PRECLEAR
Signal sent before a blackboard key is cleared
COMSIG_AI_BLACKBOARD_KEY_SET
Signal sent when a blackboard key is set to a new value
COMSIG_AI_CONTROLLER_PICKED_BEHAVIORS
sent from ai controllers when they pick behaviors: (list/datum/ai_behavior/old_behaviors, list/datum/ai_behavior/new_behaviors)
COMSIG_AI_CONTROLLER_POSSESSED_PAWN
sent from ai controllers when they possess a pawn: (datum/ai_controller/source_controller)
COMSIG_AI_CONTROLLER_UNPOSSESSED_PAWN
sent from ai controllers when they stop possessing a pawn: (datum/ai_controller/source_controller)
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/area_signals.html b/code/__DEFINES/dcs/area_signals.html
new file mode 100644
index 00000000000..4cb36b39583
--- /dev/null
+++ b/code/__DEFINES/dcs/area_signals.html
@@ -0,0 +1,7 @@
+code/__DEFINES/dcs/area_signals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Signals for /area and subtypes that have too few related signals to put in separate files.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+From obj/machinery/light_switch/Destroy(): ()
Signals for /area and subtypes that have too few related signals to put in separate files.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+From obj/machinery/light_switch/Destroy(): ()
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/atom_signals.html b/code/__DEFINES/dcs/atom_signals.html
new file mode 100644
index 00000000000..cc2d6e96e9a
--- /dev/null
+++ b/code/__DEFINES/dcs/atom_signals.html
@@ -0,0 +1,5 @@
+code/__DEFINES/dcs/atom_signals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Signals for /atom and subtypes that have too few related signals to put in separate files.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
When using an insert on an item that can accept an insert
Define Details
ATTACKER_DAMAGING_ATTACK
The attack is a damaging-type attack
ATTACKER_SHOVING
the attacker is shoving the source
ATTACKER_STAMINA_ATTACK
The damage type of the weapon projectile is non-lethal stamina
COMPONENT_CANCEL_ALTCLICK
Cancel the alt-click, since this isn't properly part of the attack chain
COMSIG_ATOM_ACID_ACT
from base of atom/acid_act(): (acidpwr, acid_volume)
COMSIG_ATOM_AFTER_SUCCESSFUL_INITIALIZED_ON
Signals for /atom and subtypes that have too few related signals to put in separate files.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
COMSIG_ATOM_ATTACK_ANIMAL
from relay_attackers element: (atom/attacker, attack_flags)
COMSIG_ATOM_ATTACK_GHOST
from base of atom/attack_ghost(): (mob/dead/observer/ghost)
COMSIG_ATOM_ATTACK_HAND
from base of atom/attack_hand(): (mob/user)
COMSIG_ATOM_ATTACK_PAW
from base of atom/attack_paw(): (mob/user)
COMSIG_ATOM_BLOB_ACT
from base of atom/blob_act(): (/obj/structure/blob)
COMSIG_ATOM_BULLET_ACT
from base of atom/bullet_act(): (/obj/projectile, def_zone)
from base of atom/Click(): (location, control, params, mob/user)
COMSIG_CLICK_ALT
from base of atom/AltClick(): (/mob)
COMSIG_CLICK_CTRL
from base of atom/CtrlClickOn(): (/mob)
COMSIG_CLICK_CTRL_SHIFT
from base of atom/CtrlShiftClick(/mob)
COMSIG_CLICK_SHIFT
from base of atom/ShiftClick(): (/mob)
COMSIG_INSERT_ATTACH
When using an insert on an item that can accept an insert
COMSIG_LENS_ATTACH
When using a lens on an item that can accept a lens
COMSIG_LIVING_TRY_PULL
called on /living, when pull is attempted, but before it completes, from base of [/mob/living/proc/start_pulling]: (atom/movable/thing, force)
COMSIG_MOUSEDROPPED_ONTO
from base of atom/MouseDrop_T: (/atom/from, /mob/user)
COMSIG_MOUSEDROP_ONTO
from base of atom/MouseDrop(): (/atom/over, /mob/user)
COMSIG_PARENT_EXAMINE
from base of atom/examine(): (examining_user, examine_list)
COMSIG_PARENT_EXAMINE_MORE
from base of atom/examine_more(): (examining_user, examine_list)
COMSIG_TURF_IRRADIATE
from base of turf/irradiate(/datum/radiation_wave)
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/attack_chain_signals.html b/code/__DEFINES/dcs/attack_chain_signals.html
new file mode 100644
index 00000000000..2ec4e7d47c6
--- /dev/null
+++ b/code/__DEFINES/dcs/attack_chain_signals.html
@@ -0,0 +1,4 @@
+code/__DEFINES/dcs/attack_chain_signals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Continue the attack chain, i.e. allow other signals to respond.
FINISH_ATTACK
Do not continue the attack chain.
ITEM_INTERACT_COMPLETE
Cancel the rest of the attack chain, indicating success.
ITEM_INTERACT_SKIP_TO_AFTER_ATTACK
Skip pre-attack and attack/attack_by, going straight to after_attack.
MELEE_COOLDOWN_PREATTACK
Apply a CLICK_CD_MELEE cooldown.
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/basetype_signals.html b/code/__DEFINES/dcs/basetype_signals.html
new file mode 100644
index 00000000000..3e123b75638
--- /dev/null
+++ b/code/__DEFINES/dcs/basetype_signals.html
@@ -0,0 +1,7 @@
+code/__DEFINES/dcs/basetype_signals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Signals for base types that have too few related signals to put in separate files.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+from base of client/Click(): (atom/target, atom/location, control, params, mob/user)
from base of atom/movable/onShuttleMove(): (turf/new_turf)
Define Details
COMSIG_AREA_ENTERED
from base of area/Entered(): (atom/movable/M)
COMSIG_AREA_EXITED
from base of area/Exited(): (atom/movable/M)
COMSIG_ATOM_GET_DECALS
from base of turf/proc/get_decals(): (list/datum/element/decal/decals)
COMSIG_CLIENT_CLICK
Signals for base types that have too few related signals to put in separate files.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+from base of client/Click(): (atom/target, atom/location, control, params, mob/user)
COMSIG_CLIENT_MOUSEDOWN
from base of client/MouseDown(): (/client, object, location, control, params)
COMSIG_CLIENT_MOUSEDRAG
from base of client/MouseUp(): (/client, object, location, control, params)
COMSIG_CLIENT_MOUSEUP
from base of client/MouseUp(): (/client, object, location, control, params)
COMSIG_MOVABLE_ON_SHUTTLE_MOVE
from base of atom/movable/onShuttleMove(): (turf/new_turf)
COMSIG_TURF_CHANGE
from base of turf/ChangeTurf(): (path, list/new_baseturfs, flags, list/transferring_comps)
COMSIG_TURF_ON_SHUTTLE_MOVE
from base of turf/proc/onShuttleMove(): (turf/new_turf)
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/carbon_signals.html b/code/__DEFINES/dcs/carbon_signals.html
new file mode 100644
index 00000000000..dedeb9982f1
--- /dev/null
+++ b/code/__DEFINES/dcs/carbon_signals.html
@@ -0,0 +1,7 @@
+code/__DEFINES/dcs/carbon_signals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Signals for /mob/living/carbon and subtypes that have too few related signals to put in separate files.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+from /item/organ/proc/Insert() (/obj/item/organ/)
Signals for /mob/living/carbon and subtypes that have too few related signals to put in separate files.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+from /item/organ/proc/Insert() (/obj/item/organ/)
COMSIG_CARBON_LOSE_ORGAN
from /item/organ/proc/Remove() (/obj/item/organ/)
COMSIG_CARBON_REGENERATE_ICONS
From /mob/living/carbon/regenerate_icons()
COMSIG_CARBON_STAMINA_REGENERATED
From /mob/living/carbon/handle_status_effects()
COMSIG_CARBON_SWAP_HANDS
From /mob/living/carbon/swap_hand(): Called when the user swaps their active hand
COMSIG_CARBON_THROWN_ITEM_CAUGHT
From /mob/living/carbon/human/hitby()
COMSIG_CARBON_TOGGLE_THROW
From /mob/living/carbon/toggle_throw_mode()
COMSIG_CARBON_UPDATE_HANDCUFFED
From /mob/living/carbon/update_handcuffed()
COMSIG_HUMAN_ATTACKED
From mob/living/carbon/human/attackedby(): (mob/living/carbon/human/attacker). Also found on species/disarm and species/harm
COMSIG_HUMAN_CHANGE_BODY_ACCESSORY
From mob/living/carbon/human/change_body_accessory(): (mob/living/carbon/human/H, body_accessory_style)
COMSIG_HUMAN_CHANGE_HEAD_ACCESSORY
From mob/living/carbon/human/change_head_accessory(): (mob/living/carbon/human/H, head_accessory_style)
COMSIG_HUMAN_CHECK_SHIELDS
from /mob/living/carbon/human/proc/check_shields(): (/mob/living/carbon/human/owner, atom/hitby, attack_text, final_block_chance, damage, attack_type)
COMSIG_HUMAN_CREATE_MOB_HUD
from /mob/living/carbon/human/create_mob_hud()
COMSIG_HUMAN_MELEE_UNARMED_ATTACK
from mob/living/carbon/human/UnarmedAttack(): (atom/target, proximity)
COMSIG_HUMAN_MELEE_UNARMED_ATTACKBY
from mob/living/carbon/human/UnarmedAttack(): (mob/living/carbon/human/attacker)
COMSIG_HUMAN_RECEIVE_CPR
Sent from mob/living/carbon/human/do_cpr(): (mob/living/carbon/human/H, new_seconds_of_life)
COMSIG_HUMAN_SUICIDE_ACT
From mob/living/carbon/human/do_suicide()
COMSIG_LIVING_MOB_BUMP
From base of mob/living/MobBump() (mob/living)
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/datum_signals.html b/code/__DEFINES/dcs/datum_signals.html
new file mode 100644
index 00000000000..eea22574e38
--- /dev/null
+++ b/code/__DEFINES/dcs/datum_signals.html
@@ -0,0 +1,13 @@
+code/__DEFINES/dcs/datum_signals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Signals for /datums.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+when a component is added to a datum: (/datum/component)
Called from base of /datum/controller/subsystem/spatial_grid/proc/exit_cell: (/atom/movable)
Define Details
COMPONENT_BLOCK_DEFIB_DEAD
Defib is out of power.
COMPONENT_BLOCK_DEFIB_MISC
Something else: we won't have a custom message for this and should let the defib handle it.
COMPONENT_BLOOD_SPLASH_HANDLED
If returned from this signal, will prevent any surgery splashing.
COMPONENT_CLEANED
Returned by cleanable components when they are cleaned.
COMSIG_ACTION_GRANTED
From /datum/action/Grant(): (mob/grant_to)
COMSIG_ACTION_OVERLAY_APPLY
From /datum/action/apply_button_overlay()
COMSIG_ACTION_REMOVED
From /datum/action/Remove(): (mob/removed_from)
COMSIG_ACTION_TRIGGER
from base of datum/action/proc/Trigger(): (datum/action)
COMSIG_AFTER_SPECIES_CHANGE
Fires after a carbon's species changes.
COMSIG_BODY_TRANSFER_TO
called on the mob instead of the mind
COMSIG_COMPONENT_ADDED
Signals for /datums.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+when a component is added to a datum: (/datum/component)
COMSIG_COMPONENT_CLEAN_ACT
called on an object to clean it of cleanables.
COMSIG_COMPONENT_REMOVING
before a component is removed from a datum because of UnlinkComponent: (/datum/component)
COMSIG_DEFIB_PADDLES_APPLIED
/datum/component/defib
+Called when a defibrillator is first applied to someone. (mob/living/user, mob/living/target, harmful)
COMSIG_DEFIB_READY
Called when a defib's cooldown has run its course and it is once again ready. ()
COMSIG_DEFIB_SHOCK_APPLIED
Called when a defib has been successfully used, and a shock has been applied. (mob/living/user, mob/living/target, harmful, successful)
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_HUMAN_ROBOTIC_LIMBS_APPLIED
called when character creation robotic limbs are applied
COMSIG_LABEL_REMOVE
/datum/component/label
+Called when a handlabeler is used on an item when off
COMSIG_MIND_INITIALIZE
called when the mind is initialized (called every time the mob logins)
COMSIG_MIND_TRANSER_TO
from base of /datum/mind/proc/transfer_to(mob/living/new_character)
COMSIG_MOB_GRANTED_ACTION
From /datum/action/Grant(): (datum/action)
COMSIG_MOB_REMOVED_ACTION
From /datum/action/Remove(): (datum/action)
COMSIG_OBJECTIVE_CHECK_VALID_TARGET
from datum/objective/is_invalid_target()
COMSIG_OBJECTIVE_TARGET_FOUND
from datum/objective/proc/find_target(list/target_blacklist)
COMSIG_PARENT_PREQDELETED
before a datum's Destroy() is called: (force), returning a nonzero 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_POWERNET_POWER_CHANGE
from base of /datum/local_powernet/proc/power_change()
COMSIG_RULESET_FAILED_SPECIES
from base of /datum/ruleset/proc/can_apply()
COMSIG_SHADE_TO_CONSTRUCT_TRANSFER
Sent when bodies transfer between shades/shards and constructs
+from base of /datum/component/construct_held_body/proc/transfer_held_body()
COMSIG_SONG_END
sent to the instrument when a song stops playing
COMSIG_SONG_START
sent to the instrument when a song starts playing
COMSIG_SPECIES_GAIN
from datum/species/on_species_gain(): (datum/species/new_species, datum/species/old_species)
COMSIG_SPECIES_HITBY
from /datum/species/proc/spec_hitby()
COMSIG_SPECIES_LOSS
from datum/species/on_species_loss(): (datum/species/lost_species)
COMSIG_TRIGGERED_ALARM
datum/alarm_manager
COMSIG_TWOHANDED_UNWIELD
from base of datum/component/two_handed/proc/unwield(mob/living/carbon/user): (/mob/user)
COMSIG_TWOHANDED_WIELD
from base of datum/component/two_handed/proc/wield(mob/living/carbon/user): (/mob/user)
COMSIG_TWOHANDED_WIELDED_TRY_WIELD_INTERACT
from base of /datum/component/forces_doors_open/proc/force_open_door(obj/item): (datum/source, mob/user, atom/target)
SPATIAL_GRID_CELL_ENTERED
Called from base of /datum/controller/subsystem/spatial_grid/proc/enter_cell: (/atom/movable)
SPATIAL_GRID_CELL_EXITED
Called from base of /datum/controller/subsystem/spatial_grid/proc/exit_cell: (/atom/movable)
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/dcs_flags.html b/code/__DEFINES/dcs/dcs_flags.html
new file mode 100644
index 00000000000..b6226f77580
--- /dev/null
+++ b/code/__DEFINES/dcs/dcs_flags.html
@@ -0,0 +1,7 @@
+code/__DEFINES/dcs/dcs_flags.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
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
Only elements created with the same arguments given after argument_hash_start_idx 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
each 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 argument_hash_start_idx 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_ON_HOST_DESTROY
Causes the detach proc to be called when the host object is being deleted
ELEMENT_INCOMPATIBLE
Return value to cancel attaching
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/dcs_helpers.html b/code/__DEFINES/dcs/dcs_helpers.html
new file mode 100644
index 00000000000..b017abc5784
--- /dev/null
+++ b/code/__DEFINES/dcs/dcs_helpers.html
@@ -0,0 +1,9 @@
+code/__DEFINES/dcs/dcs_helpers.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
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
A 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.
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/dept_signals.html b/code/__DEFINES/dcs/dept_signals.html
new file mode 100644
index 00000000000..4d10ac62203
--- /dev/null
+++ b/code/__DEFINES/dcs/dept_signals.html
@@ -0,0 +1,5 @@
+code/__DEFINES/dcs/dept_signals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Signals for department mechanics.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
Signals for department mechanics.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
COMSIG_XENO_MONKEY_CLICK_CTRL
from monkey CtrlClickOn(): (/mob)
COMSIG_XENO_SLIME_CLICK_ALT
from slime AltClickOn(): (/mob)
COMSIG_XENO_SLIME_CLICK_CTRL
from slime CtrlClickOn(): (/mob)
COMSIG_XENO_SLIME_CLICK_SHIFT
from slime ShiftClickOn(): (/mob)
COMSIG_XENO_TURF_CLICK_CTRL
from turf AltClickOn(): (/mob)
COMSIG_XENO_TURF_CLICK_SHIFT
from turf ShiftClickOn(): (/mob)
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/disease_signals.html b/code/__DEFINES/dcs/disease_signals.html
new file mode 100644
index 00000000000..983aff7b533
--- /dev/null
+++ b/code/__DEFINES/dcs/disease_signals.html
@@ -0,0 +1 @@
+code/__DEFINES/dcs/disease_signals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Sent when the conditions to disinfect an atom are met
COMSIG_MOB_REAGENT_EXCHANGE
Sent when something is eaten or drunk by a mob
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/global_signals.html b/code/__DEFINES/dcs/global_signals.html
new file mode 100644
index 00000000000..e01f4e7a01b
--- /dev/null
+++ b/code/__DEFINES/dcs/global_signals.html
@@ -0,0 +1,7 @@
+code/__DEFINES/dcs/global_signals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Signals for globally accessible objects/procs.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+from base of datum/controller/subsystem/mapping/proc/add_new_zlevel(): (name, linkage, list/traits, transition_tag, level_type, zlevel)
called after an explosion happened : (epicenter, devastation_range, heavy_impact_range, light_impact_range, took, orig_dev_range, orig_heavy_range, orig_light_range)
sent after world.maxx and/or world.maxy are expanded: (has_expanded_world_maxx, has_expanded_world_maxy)
Define Details
COMSIG_ADMIN_DECONTAMINATE
Used by admin-tooling to remove radiation
COMSIG_GLOB_CABLE_UPDATED
cable was placed or joined somewhere : (turf)
COMSIG_GLOB_EXPANDED_WORLD_BOUNDS
sent after world.maxx and/or world.maxy are expanded: (has_expanded_world_maxx, has_expanded_world_maxy)
COMSIG_GLOB_EXPLOSION
called after an explosion happened : (epicenter, devastation_range, heavy_impact_range, light_impact_range, took, orig_dev_range, orig_heavy_range, orig_light_range)
COMSIG_GLOB_JOB_AFTER_SPAWN
job subsystem has spawned and equipped a new mob
COMSIG_GLOB_NEW_Z
Signals for globally accessible objects/procs.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+from base of datum/controller/subsystem/mapping/proc/add_new_zlevel(): (name, linkage, list/traits, transition_tag, level_type, zlevel)
COMSIG_GLOB_SHELTER_PLACED
Used when a shelter capsule deploys
COMSIG_GLOB_VAR_EDIT
called after a successful var edit somewhere in the world: (list/args)
COMSIG_SECURITY_LEVEL_CHANGED
from SSsecurity_level when the security level changes : (previous_level_number, new_level_number)
COMSIG_SECURITY_LEVEL_CHANGE_PLANNED
from SSsecurity_level on planning security level change : (previous_level_number, new_level_number)
COMSIG_TICKER_ROUND_STARTING
Called when the round has started, but before GAME_STATE_PLAYING.
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/heretic_signals.html b/code/__DEFINES/dcs/heretic_signals.html
new file mode 100644
index 00000000000..d1e6b30ae8d
--- /dev/null
+++ b/code/__DEFINES/dcs/heretic_signals.html
@@ -0,0 +1,3 @@
+code/__DEFINES/dcs/heretic_signals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
From /datum/spell/touch/mansus_grasp/cast_on_secondary_hand_hit : (mob/living/source, atom/target)
COMSIG_HERETIC_RANGED_BLADE_ATTACK
From /obj/item/melee/sickly_blade/ranged_interact_with_atom (without proximity) : (mob/living/source, mob/living/target)
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/item_signals.html b/code/__DEFINES/dcs/item_signals.html
new file mode 100644
index 00000000000..3ffde5b8c77
--- /dev/null
+++ b/code/__DEFINES/dcs/item_signals.html
@@ -0,0 +1,7 @@
+code/__DEFINES/dcs/item_signals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Signals for /obj/item and subtypes that have too few related signals to put in separate files.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+called on /obj/item before unequip from base of [/mob/proc/unEquip]: (force, atom/newloc, no_move, invdrop, silent)
from /mob/living/silicon/robot/proc/activate_item() (mob/user), A general signal for if a specific borg item needs something done when being activated.
from /mob/living/silicon/robot/proc/deactivate_item() (mob/user), A general signal for if a specific borg item needs something done when being deactivated.
called in /datum/component/automatic_fire/proc/on_mouse_down: (client/clicker, atom/target, turf/location, control, params)
COMSIG_AUTOFIRE_SHOT
called in /datum/component/automatic_fire/proc/process_shot(): (atom/target, mob/living/shooter, allow_akimbo, params)
COMSIG_CYBORG_ITEM_ACTIVATED
from /mob/living/silicon/robot/proc/activate_item() (mob/user), A general signal for if a specific borg item needs something done when being activated.
COMSIG_CYBORG_ITEM_DEACTIVATED
from /mob/living/silicon/robot/proc/deactivate_item() (mob/user), A general signal for if a specific borg item needs something done when being deactivated.
COMSIG_GUN_FIRED
called in /obj/item/gun/process_fire (user, target)
COMSIG_GUN_TRY_FIRE
called in /obj/item/gun/fire_gun (user, target, flag, params)
COMSIG_IMPLANT_ACTIVATED
from base of /obj/item/bio_chip/proc/activate(): ()
COMSIG_IMPLANT_EXISTING_UPLINK
called on implants being implanted into someone with an uplink implant: (datum/component/uplink)
COMSIG_IMPLANT_IMPLANTED
called on implants, after a successful implantation: (mob/living/target, mob/user, silent, force)
COMSIG_IMPLANT_IMPLANTING
from base of /obj/item/bio_chip/proc/implant(): (list/args)
COMSIG_IMPLANT_OTHER
called on already installed implants when a new one is being added in /obj/item/bio_chip/proc/implant(): (list/args, obj/item/bio_chip/new_implant)
COMSIG_IMPLANT_REMOVED
called on implants, after an implant has been removed: (mob/living/source, silent, special)
COMSIG_ITEM_DROPPED
from base of obj/item/dropped(): (mob/user)
COMSIG_ITEM_EQUIPPED
from base of obj/item/equipped(): (/mob/equipper, slot)
COMSIG_ITEM_HIT_REACT
from base of obj/item/hit_reaction(): (list/args)
COMSIG_ITEM_PICKUP
from base of obj/item/pickup(): (/mob/taker)
COMSIG_ITEM_PRE_UNEQUIP
Signals for /obj/item and subtypes that have too few related signals to put in separate files.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+called on /obj/item before unequip from base of [/mob/proc/unEquip]: (force, atom/newloc, no_move, invdrop, silent)
COMSIG_ITEM_SHARPEN_ACT
from base of item/sharpener/attackby(): (amount, max)
COMSIG_MOB_TRY_FIRE
called in /obj/item/gun/afterattack (user, target, flag, params)
COMSIG_MODULE_ACTIVATED
Called when a module activates, after all checks have passed and cooldown started.
COMSIG_MODULE_DEACTIVATED
Called when a module deactivates, after all checks have passed.
COMSIG_MODULE_TRIGGERED
Called when a module attempts to activate, however it does. At the end of checks so you can add some yourself, or work on trigger behavior (mob/user)
COMSIG_MODULE_USED
Called when a module is used, after all checks have passed and cooldown started.
COMSIG_MOD_ACTIVATE
Called when a MOD activation is called from toggle_activate(mob/user)
COMSIG_MOD_DEPLOYED
Called when a MOD deploys one or more of its parts.
COMSIG_MOD_MODULE_ADDED
Called when a MOD finishes having a module added to it.
COMSIG_MOD_MODULE_REMOVAL
Called when a MOD is having modules removed from crowbar_act(mob/user, obj/crowbar)
COMSIG_MOD_MODULE_REMOVED
Called when a MOD finishes having a module removed from it.
COMSIG_MOD_MODULE_SELECTED
Called when a module is selected to be the active one from on_select(obj/item/mod/module/module)
COMSIG_MOD_RETRACTED
Called when a MOD retracts one or more of its parts.
COMSIG_MOD_TOGGLED
Called when a MOD is finished toggling itself.
COMSIG_MOD_WEARER_SET
Called when the MODsuit wearer is set.
COMSIG_MOD_WEARER_UNSET
Called when the MODsuit wearer is unset.
COMSIG_ORGAN_IMPLANTED
Called on the organ when it is implanted into someone (mob/living/carbon/receiver)
COMSIG_ORGAN_REMOVED
Called on the organ when it is removed from someone (mob/living/carbon/old_owner)
COMSIG_SHOES_STEP_ACTION
from [/mob/living/carbon/human/proc/Move]: ()
COMSIG_SPEED_POTION_APPLIED
from base of /obj/item/slimepotion/speed/afterattack__legacy__attackchain(): (obj/target, /obj/src, mob/user)
MOD_ABORT_USE
Cancels activation, with no message. Include feedback on your cancel.
MOD_CANCEL_ACTIVATE
Cancels the suit's activation
MOD_CANCEL_REMOVAL
Cancels the removal of modules
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/leash_signals.html b/code/__DEFINES/dcs/leash_signals.html
new file mode 100644
index 00000000000..f167030bcc5
--- /dev/null
+++ b/code/__DEFINES/dcs/leash_signals.html
@@ -0,0 +1,5 @@
+code/__DEFINES/dcs/leash_signals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Called when a /datum/component/leash plans on pathfinding to the target, if out of range.
+Fired on the object with the leash component.
Define Details
COMSIG_LEASH_FORCE_TELEPORT
Called when a /datum/component/leash must forcibly teleport the parent to the owner.
+Fired on the object with the leash component.
COMSIG_LEASH_PATH_STARTED
Called when a /datum/component/leash plans on pathfinding to the target, if out of range.
+Fired on the object with the leash component.
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/machinery_signals.html b/code/__DEFINES/dcs/machinery_signals.html
new file mode 100644
index 00000000000..390cf9d874b
--- /dev/null
+++ b/code/__DEFINES/dcs/machinery_signals.html
@@ -0,0 +1,7 @@
+code/__DEFINES/dcs/machinery_signals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Signals for /obj/machinery and subtypes that have too few related signals to put in separate files.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+called on cameras after activation: (mob/user, display_message)
called on cameras when moved, such as ones inside helmets: (turf/prev_turf)
COMSIG_CAMERA_OFF
called on cameras after deactivation: (mob/user, display_message, emped)
COMSIG_CAMERA_ON
Signals for /obj/machinery and subtypes that have too few related signals to put in separate files.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+called on cameras after activation: (mob/user, display_message)
COMSIG_DOOR_CLOSE
called on doors when closed: ()
COMSIG_DOOR_OPEN
called on doors when opened: ()
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/mob_signals.html b/code/__DEFINES/dcs/mob_signals.html
new file mode 100644
index 00000000000..a1720be7505
--- /dev/null
+++ b/code/__DEFINES/dcs/mob_signals.html
@@ -0,0 +1,17 @@
+code/__DEFINES/dcs/mob_signals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Signals for /mob, /mob/living, and subtypes that have too few related signals to put in separate files.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+from base of /mob/Login(): ()
from base of mob/living/Knockdown() (amount, ignore_canstun)
+#define COMSIG_LIVING_STATUS_KNOCKDOWN "living_knockdown" // one day
+from base of mob/living/Paralyse() (amount, ignore_canstun)
Return to block the ability from starting / activating
COMPONENT_BLOCK_DEFIB
If returned from LIVING_BEFORE_DEFIB or LIVING_DEFIBBED, the defibrillation will fail
COMPONENT_BLOCK_EMOTE_SILENT
Return this to block an emote silently.
COMPONENT_BLOCK_EMOTE_UNUSABLE
Return this to block an emote and let the user know the emote is unusable.
COMPONENT_BLOCK_MISC_HELP
Stops the rest of help act (hugging, etc) from occurring
COMPONENT_BLOCK_SWAP
Prevent the mob from changing hands
COMPONENT_CANCEL_RANGED_ATTACK
Cancel to prevent the attack from happening
COMPONENT_CAST_HANDLESS
Return this to prevent the hand spawning/unspawning
COMPONENT_DEFIB_FAKEDEATH_ACCEPTED
If returned, allow to revive through false death.
COMPONENT_DEFIB_FAKEDEATH_DENIED
If returned, make the fake death look like a unresponsive ghost.
COMPONENT_DEFIB_OVERRIDE
If returned, don't even show the "failed" message, defer to the signal handler to do that.
COMPONENT_LIVING_CANCEL_LIFE_PROCESSING
Block the Life() proc from proceeding... this should really only be done in some really wacky situations.
COMSIG_ACTION_SET_STATPANEL
From base of /datum/action/cooldown/proc/set_statpanel_format(): (list/stat_panel_data)
COMSIG_BASICMOB_POST_ATTACK_RANGED
from the ranged_attacks component for basic mobs: (mob/living/basic/firer, atom/target, modifiers)
COMSIG_BASICMOB_POST_ATTACK_RANGED_BURST
from the ranged_attacks component for basic mobs: (mob/living/basic/firer, atom/target, modifiers)
COMSIG_BASICMOB_PRE_ATTACK_RANGED
from the ranged_attacks component for basic mobs: (mob/living/basic/firer, atom/target, modifiers)
COMSIG_BORG_SAFE_DECONSTRUCT
sent from borg mobs to itself, for tools to catch an upcoming destroy() due to safe decon (rather than detonation)
COMSIG_CARBON_APPLY_OVERLAY
Called from apply_overlay(cache_index, overlay)
COMSIG_CARBON_CUFF_ATTEMPTED
Called when someone attempts to cuff a carbon
COMSIG_CARBON_PRE_MISC_HELP
Called from /mob/living/carbon/help_shake_act, before any hugs have occurred. (mob/living/helper)
COMSIG_CARBON_REMOVE_OVERLAY
Called from remove_overlay(cache_index, overlay)
COMSIG_DO_AFTER_BEGAN
Sent from /proc/do_after if someone starts a do_after action bar.
COMSIG_DO_AFTER_ENDED
Sent from /proc/do_after once a do_after action completes, whether via the bar filling or via interruption.
COMSIG_DO_MOB_STRIP
from of mob/MouseDrop(): (/atom/over, /mob/user)
COMSIG_ENTERED_BORGCHARGER
sent when a mob enters a borg charger
COMSIG_EXITED_BORGCHARGER
sent when a mob exits a borg charger
COMSIG_FLAYER_RETRACT_IMPLANTS
called when something needs to force a mindflayer to retract their weapon implants
COMSIG_GHOST_START_OBSERVING
from observer_base/do_observe(): (mob/now_followed)
COMSIG_GHOST_STOP_OBSERVING
from observer_base/do_observe(): (mob/no_longer_following)
COMSIG_GOLIATH_TENTACLED_GRABBED
Fired by a mob which has been grabbed by a goliath
COMSIG_GOLIATH_TENTACLE_RETRACTING
Fired by a goliath tentacle which is returning to the earth
COMSIG_HUMAN_LOGIN
called in human/login
COMSIG_LIVING_ATTACH_LIMB
from base of /obj/item/bodypart/proc/attach_limb(): (new_limb, special) allows you to fail limb attachment
COMSIG_LIVING_BEFRIENDED
From /mob/living/befriend() : (mob/living/new_friend)
COMSIG_LIVING_CAN_TRACK
from base of /mob/living/can_track(): (mob/user)
COMSIG_LIVING_CLEAR_STUNS
called when a living mob's stun status is cleared: ()
COMSIG_LIVING_CULT_SACRIFICED
From /obj/effect/rune/convert/do_sacrifice() : (list/invokers)
COMSIG_LIVING_DEFIBBED
send from defibs on ressurection: (defibber, defib_item, ghost)
COMSIG_LIVING_ELECTROCUTE_ACT
from base of mob/living/electrocute_act(): (shock_damage, source, siemens_coeff, flags)
COMSIG_LIVING_ENTER_VENTCRAWL
from add_ventcrawler(): (mob/living/crawler)
COMSIG_LIVING_EXIT_VENTCRAWL
from remove_ventcrawler(): (mob/living/crawler)
COMSIG_LIVING_EXTINGUISHED
from base of mob/living/ExtinguishMob() (/mob/living)
COMSIG_LIVING_FIRE_TICK
sent from living mobs every tick of fire
COMSIG_LIVING_HEALTH_UPDATE
from base of mob/living/health_update()
COMSIG_LIVING_IGNITED
from base of mob/living/IgniteMob() (/mob/living)
COMSIG_LIVING_LIFE
From living/Life(). (seconds, times_fired)
COMSIG_LIVING_MINOR_SHOCK
sent by stuff like stunbatons and tasers: ()
COMSIG_LIVING_PRE_DEFIB
Sent from defibrillators when everything seems good and the user will be shocked: (defibber, defib_item, ghost)
COMSIG_LIVING_REGENERATE_LIMBS
from base of /mob/living/regenerate_limbs(): (noheal, excluded_limbs)
COMSIG_LIVING_RESIST
from base of mob/living/resist() (/mob/living)
COMSIG_LIVING_REVIVE
from base of mob/living/revive() (full_heal, admin_revive)
COMSIG_LIVING_SHOCK_PREVENTED
sent when items with siemen coeff. of 0 block a shock: (power_source, source, siemens_coeff, dist_check)
COMSIG_LIVING_STATUS_IMMOBILIZE
from base of mob/living/Immobilize() (amount, ignore_canstun)
COMSIG_LIVING_STATUS_PARALYSE
from base of mob/living/Knockdown() (amount, ignore_canstun)
+#define COMSIG_LIVING_STATUS_KNOCKDOWN "living_knockdown" // one day
+from base of mob/living/Paralyse() (amount, ignore_canstun)
COMSIG_LIVING_STATUS_SLEEP
from base of mob/living/Sleeping() (amount, ignore_canstun)
COMSIG_LIVING_STATUS_STUN
from base of mob/living/Stun() (amount, ignore_canstun)
COMSIG_LIVING_STATUS_UNCONSCIOUS
from base of mob/living/Unconscious() (amount, ignore_canstun)
COMSIG_LIVING_STATUS_WEAKEN
from base of mob/living/Stun() (amount, ignore_canstun)
COMSIG_LIVING_TRY_SYRINGE_INJECT
Sent to a mob being injected with a syringe when the do_after initiates
COMSIG_LIVING_TRY_SYRINGE_WITHDRAW
Sent to a mob being withdrawn from with a syringe when the do_after initiates
COMSIG_LIVING_TRY_VENTCRAWL
from handle_ventcrawl(): (mob/living/crawler)
COMSIG_LIVING_UNARMED_ATTACK
from mob/living/*/UnarmedAttack(): (mob/living/source, atom/target, proximity, modifiers)
COMSIG_LIVING_UNFRIENDED
From /mob/living/unfriend() : (mob/living/old_friend)
COMSIG_LIVING_WRITE_MEMORY
from base of mob/living/Write_Memory()
COMSIG_MOB_ABILITY_FINISHED
From base of /datum/action/cooldown/proc/PreActivate(), sent to the action owner: (datum/action/cooldown/finished)
COMSIG_MOB_ABILITY_STARTED
From base of /datum/action/cooldown/proc/PreActivate(), sent to the action owner: (datum/action/cooldown/activated)
COMSIG_MOB_ALLOWED
from base of obj/allowed(mob/M): (/obj) returns bool, if TRUE the mob has id access to the obj
COMSIG_MOB_ALTCLICKON
from base of mob/AltClickOn(): (atom/A)
COMSIG_MOB_APPLY_DAMAGE
from base of /mob/living/proc/apply_damage(): (damage, damagetype, def_zone)
COMSIG_MOB_ATE
From /datum/element/basic_eating/finish_eating()
COMSIG_MOB_ATTACK_HAND
from base of atom/attack_hand(): (mob/user)
COMSIG_MOB_ATTACK_RANGED
from base of mob/RangedAttack(): (atom/A, params)
COMSIG_MOB_BEFORE_SPELL_CAST
Sent from /datum/action/cooldown/spell/before_cast() to the caster: (datum/action/cooldown/spell/spell, atom/cast_on)
COMSIG_MOB_CANCEL_EAT
cancel eating attempt
COMSIG_MOB_CLICKON
from base of mob/clickon(): (atom/A, params)
COMSIG_MOB_CLIENT_BLOCK_PRE_MOVE
Should always match COMPONENT_MOVABLE_BLOCK_PRE_MOVE as these are interchangeable and used to block movement.
COMSIG_MOB_CLIENT_LOGIN
sent when a mob/login() finishes: (client)
COMSIG_MOB_CLIENT_MOVED
From base of /client/Move(): (direction, old_dir)
COMSIG_MOB_CLIENT_PRE_MOVE
From base of /client/Move(): (new_loc, direction)
COMSIG_MOB_CREATED_CALLOUT
From the base of /datum/component/callouts/proc/callout_picker(mob/user, atom/clicked_atom): (datum/callout_option/callout, atom/target)
COMSIG_MOB_DEADSAY
from /mob/say_dead(): (mob/speaker, message)
COMSIG_MOB_DEATH
from base of mob/death(): (gibbed)
COMSIG_MOB_EMOTE
General signal fired when a mob does any old emote
+from /datum/emote/proc/run_emote(): (key, intentional)
COMSIG_MOB_EMOTED
Specific signal used to track when a specific emote is used.
+From /datum/emote/run_emote(): (P, key, m_type, message, intentional)
COMSIG_MOB_EMOTE_AT
From /datum/emote/select_param(): (target, key, intentional)
COMSIG_MOB_EQUIPPED_ITEM
A mob has just equipped an item. Called on /mob from base of /obj/item/equipped(): (/obj/item/equipped_item, slot)
COMSIG_MOB_EXAMINATE
from base of /mob/verb/examinate(): (atom/target)
COMSIG_MOB_HUD_CREATED
from base of mob/create_mob_hud(): ()
COMSIG_MOB_ITEM_AFTERATTACK
from base of obj/item/afterattack__legacy__attackchain(): (atom/target, mob/user, proximity_flag, click_parameters)
COMSIG_MOB_ITEM_ATTACK
from base of /obj/item/attack(): (mob/M, mob/user)
COMSIG_MOB_LOGIN
Signals for /mob, /mob/living, and subtypes that have too few related signals to put in separate files.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+from base of /mob/Login(): ()
COMSIG_MOB_LOGOUT
from base of /mob/Logout(): ()
COMSIG_MOB_MIDDLECLICKON
from base of mob/MiddleClickOn(): (atom/A)
COMSIG_MOB_PREEMOTE
Signal fired when an emote is used but before it's executed.
+from /datum/emote/proc/try_run_emote(): (key, intentional)
COMSIG_MOB_PRE_EAT
From /datum/element/basic_eating/try_eating()
COMSIG_MOB_PRE_JAUNT
Sent from datum/spell/ethereal_jaunt/cast, before the mob enters jaunting as a pre-check: (mob/jaunter)
COMSIG_MOB_RECEIVE_MAGIC
from base of mob/can_block_magic(): (mob/user, casted_magic_flags, charge_cost)
COMSIG_MOB_RESTRICT_MAGIC
from base of mob/can_cast_magic(): (mob/user, magic_flags, charge_cost)
COMSIG_MOB_SAY
from /mob/living/say(): ()
COMSIG_MOB_SLEEP_TICK
From /datum/status_effect/incapacitating/sleeping/tick()
COMSIG_MOB_STATCHANGE
from base of mob/set_stat(): (new_stat)
COMSIG_MOB_SWAPPED_HANDS
Performed after the hands are swapped.
COMSIG_MOB_SWAPPING_HANDS
from base of mob/swap_hand(): (obj/item)
COMSIG_MOB_TERMINATE_EAT
cancel post eating
COMSIG_MOB_THROW
from base of /mob/throw_item(): (atom/target)
COMSIG_MOB_TRIED_ACCESS
from base of obj/allowed(mob/M): (/obj) returns ACCESS_ALLOWED if mob has id access to the obj
COMSIG_MOB_UNEQUIPPED_ITEM
A mob has just unequipped an item.
COMSIG_MOB_UPDATE_SIGHT
from base of /mob/update_sight(): ()
COMSIG_MOB_WEAPON_APPEARS
called when a user is getting new weapon and we want to remove previous weapon to clear hands
COMSIG_MOB_WILLINGLY_DROP
called when a user willingly drops something (i.e. keybind, or UI action)
COMSIG_MOVE_INTENT_TOGGLED
Called when movement intent is toggled.
COMSIG_PROCESS_BORGCHARGER_OCCUPANT
sent from borg recharge stations: (amount, repairs)
COMSIG_SIMPLEANIMAL_HANDLE_ENVIRONMENT
from /mob/living/simple_animal/handle_environment()
COMSIG_SPELL_BEFORE_CAST
Sent from /datum/action/cooldown/spell/before_cast() to the spell: (atom/cast_on)
COMSIG_SUMMONER_EXTRACTED
Sent during exfiltration to handle guardians
DUST_SACRIFICE
Dusts the target instead of gibbing them (no soulstone)
MOVE_ARG_DIRECTION
The arugment of move_args which dictates our movement direction
MOVE_ARG_NEW_LOC
The argument of move_args which corresponds to the loc we're moving to
SILENCE_NONTARGET_SACRIFICE_MESSAGE
Don't send a message for sacrificing this thing UNLESS it's the cult target
SILENCE_SACRIFICE_MESSAGE
Don't send a message for sacrificing this thing, we have our own
SPELL_CANCEL_CAST
Return to prevent the spell cast from continuing.
SPELL_NO_FEEDBACK
Return from before cast signals to prevent the spell from giving off sound or invocation.
SPELL_NO_IMMEDIATE_COOLDOWN
Return from before cast signals to prevent the spell from going on cooldown before aftercast.
STOP_SACRIFICE
Return to stop the sac from occurring
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/movable_signals.html b/code/__DEFINES/dcs/movable_signals.html
new file mode 100644
index 00000000000..03720329694
--- /dev/null
+++ b/code/__DEFINES/dcs/movable_signals.html
@@ -0,0 +1,7 @@
+code/__DEFINES/dcs/movable_signals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Signals for /atom/movable and subtypes that have too few related signals to put in separate files.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+from base of atom/movable/Moved(): (/atom)
called when the movable is added to a disposal holder object for disposal movement: (obj/structure/disposalholder/holder, obj/machinery/disposal/source)
called when the movable is removed from a disposal holder object: /obj/structure/disposalpipe/proc/expel(): (obj/structure/disposalholder/H, turf/T, direction)
a signal sent to /datum/component/tether by the tethered object to stop the tethering : (atom/tethered)
Define Details
COMPONENT_BLOCK_UNTILT
Return this to block an untilt attempt
COMSIG_ACTION_SCROLLED
From base of /atom/movable/screen/movable/action_button/MouseWheel(src, delta_x, delta_y, location, control, params)
COMSIG_ATOM_INTERCEPT_TELEPORTED
Called when blocking a teleport
COMSIG_ATOM_NO_LONGER_PULLING
signal sent out by an atom when it is no longer pulling something : (atom/pulling)
COMSIG_MOVABLE_BUCKLE
from base of atom/movable/buckle_mob(): (mob, force)
COMSIG_MOVABLE_BUMP
from base of atom/movable/Bump(): (/atom)
COMSIG_MOVABLE_CHECK_CROSS
from base of atom/movable/Cross(): (/atom/movable)
COMSIG_MOVABLE_CHECK_CROSS_OVER
from base of atom/movable/Move(): (/atom/movable)
COMSIG_MOVABLE_DISPOSING
called when the movable is added to a disposal holder object for disposal movement: (obj/structure/disposalholder/holder, obj/machinery/disposal/source)
COMSIG_MOVABLE_DRIFT_BLOCK_INPUT
from datum/component/drift/allow_final_movement(): ()
COMSIG_MOVABLE_DRIFT_VISUAL_ATTEMPT
from datum/component/drift/apply_initial_visuals(): ()
COMSIG_MOVABLE_EXIT_DISPOSALS
called when the movable is removed from a disposal holder object: /obj/structure/disposalpipe/proc/expel(): (obj/structure/disposalholder/H, turf/T, direction)
COMSIG_MOVABLE_IMPACT
from base of atom/movable/throw_impact(): (/atom/hit_atom, /datum/thrownthing/throwingdatum)
COMSIG_MOVABLE_IMPACT_ZONE
from base of mob/living/hitby(): (mob/living/target, hit_zone)
COMSIG_MOVABLE_MOVED
from base of atom/movable/Moved(): (/atom, dir)
COMSIG_MOVABLE_NEWTONIAN_MOVE
from base of atom/movable/newtonian_move(): (inertia_direction, start_delay)
COMSIG_MOVABLE_POINTED
from base of /atom/movable/point_at: (atom/A, obj/effect/temp_visual/point/point)
COMSIG_MOVABLE_POST_THROW
from base of atom/movable/throw_at(): (datum/thrownthing, spin)
COMSIG_MOVABLE_PREBUCKLE
from /atom/movable/proc/buckle_mob(): (mob/living/M, force, check_loc, buckle_mob_flags)
COMSIG_MOVABLE_PRE_MOVE
Signals for /atom/movable and subtypes that have too few related signals to put in separate files.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+from base of atom/movable/Moved(): (/atom)
COMSIG_MOVABLE_SHOVE_IMPACT
from base of atom/movable/shove_impact(): (mob/living/target, mob/living/attacker)
COMSIG_MOVABLE_SPACEMOVE
from base of atom/movable/Process_Spacemove(): (movement_dir, continuous_move)
COMSIG_MOVABLE_TELEPORTING
Called before a movable is being teleported from multiple sources: (destination)
COMSIG_MOVABLE_THROW_LANDED
from base of datum/thrownthing/finalize(): (obj/thrown_object, datum/thrownthing) used for when a throw is finished
COMSIG_MOVABLE_TRY_UNTILT
Called just before something gets untilted
COMSIG_MOVABLE_UNBUCKLE
from base of atom/movable/unbuckle_mob(): (mob, force)
COMSIG_MOVABLE_UNCROSS
from base of atom/movable/Uncross(): (/atom/movable)
COMSIG_MOVABLE_UNTILTED
Called when something gets untilted, from /datum/element/tilted/proc/do_untilt(atom/movable/source, mob/user)
COMSIG_MOVABLE_UPDATED_GLIDE_SIZE
called after the movable's glide size is updated: (old_glide_size)
COMSIG_MOVABLE_Z_CHANGED
from base of atom/movable/on_changed_z_level(): (turf/old_turf, turf/new_turf)
COMSIG_RIDDEN_DRIVER_MOVE
from /obj/vehicle/proc/driver_move, caught by the riding component to check and execute the driver trying to drive the vehicle
COMSIG_TETHER_DESTROYED
signal sent out by /datum/component/tether when durability/line of sight fails : (atom/tethered)
COMSIG_TETHER_STOP
a signal sent to /datum/component/tether by the tethered object to stop the tethering : (atom/tethered)
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/moveloop_signals.html b/code/__DEFINES/dcs/moveloop_signals.html
new file mode 100644
index 00000000000..fc746bd1f7d
--- /dev/null
+++ b/code/__DEFINES/dcs/moveloop_signals.html
@@ -0,0 +1 @@
+code/__DEFINES/dcs/moveloop_signals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/__DEFINES/dcs/obj_signals.html b/code/__DEFINES/dcs/obj_signals.html
new file mode 100644
index 00000000000..f178d7c378d
--- /dev/null
+++ b/code/__DEFINES/dcs/obj_signals.html
@@ -0,0 +1,9 @@
+code/__DEFINES/dcs/obj_signals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Signals for /obj and subtypes that have too few related signals to put in separate files.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+from base of obj/deconstruct(): (disassembled)
from /obj/structure/cursed_slot_machine/determine_victor() when someone loses.
COMSIG_CURSED_SLOT_MACHINE_USE
from /obj/structure/cursed_slot_machine/handle_status_effect() when someone pulls the handle on the slot machine
COMSIG_GLOB_CURSED_SLOT_MACHINE_WON
from /obj/structure/cursed_slot_machine/determine_victor() when someone finally wins.
COMSIG_JETPACK_ACTIVATED
from /obj/item/tank/jetpack/proc/turn_on() : ()
COMSIG_JETPACK_DEACTIVATED
from /obj/item/tank/jetpack/proc/turn_off() : ()
COMSIG_LIONHUNTER_FIRE
When the lionhunter shoots so I can unscope
COMSIG_LIONHUNTER_ON_HIT
When the lionhunter rifle hits something
COMSIG_OBJ_DECONSTRUCT
Signals for /obj and subtypes that have too few related signals to put in separate files.
+Doc format: /// when the signal is called: (signal arguments).
+All signals send the source datum of the signal as the first argument
+from base of obj/deconstruct(): (disassembled)
COMSIG_SHELF_ADDED_ON_MAPLOAD
from Initialize on objects implementing /datum/component/shelved
COMSIG_SHELF_ATTEMPT_PICKUP
from /datum/component/shelver/shelf_items()
COMSIG_SHELF_ITEM_ADDED
from /datum/component/shelver/add_item(): (obj/item/to_add, placement_idx, list/position_details)
COMSIG_SHELF_ITEM_REMOVED
from /datum/component/shelved/UnregisterFromParent(): (parent_uid)
COMSIG_SUPERMATTER_CONSUMED
from /datum/component/supermatter_crystal/proc/consume()
+called on the thing consumed, passes the thing which consumed it
SLOT_MACHINE_USE_CANCEL
we've used up the number of times we may use this slot machine. womp womp.
SLOT_MACHINE_USE_POSTPONE
we haven't used up all our attempts to gamble away our life but we should chill for a few seconds
\ No newline at end of file
diff --git a/code/__DEFINES/directions.html b/code/__DEFINES/directions.html
new file mode 100644
index 00000000000..985cd70d4e5
--- /dev/null
+++ b/code/__DEFINES/directions.html
@@ -0,0 +1,15 @@
+code/__DEFINES/directions.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Using the ^ operator or XOR, we can compared TRUE East and West bits against our direction,
+since XOR will only return TRUE if one bit is False and the other is True, if East is 0, that bit will return TRUE
+and if West is 1, then that bit will return 0
+hence EAST (0010) XOR EAST|WEST (0011) --> WEST (0001)
+Flips a direction along the horizontal axis, will convert E -> W, W -> E, NE -> NW, SE -> SW, etc
for directions, each cardinal direction only has 1 TRUE bit, so 1000 or 0100 for example, so when you subtract 1
+from a cardinal direction it results in that directions initial TRUE bit always switching to FALSE, so if you & check it
+against its initial self, it will return false, indicating that the direction is straight and not diagonal
+returns TRUE if direction is diagonal and false if not
Using the ^ operator or XOR, we can compared TRUE East and West bits against our direction,
+since XOR will only return TRUE if one bit is False and the other is True, if East is 0, that bit will return TRUE
+and if West is 1, then that bit will return 0
+hence EAST (0010) XOR EAST|WEST (0011) --> WEST (0001)
+Flips a direction along the horizontal axis, will convert E -> W, W -> E, NE -> NW, SE -> SW, etc
FLIP_DIR_VERTICALLY
Flips a direction along the vertical axis, will convert N -> S, S -> N, NE -> SE, SW -> NW, etc
IS_DIR_CARDINAL
returns TRUE if direction is cardinal and false if not
IS_DIR_DIAGONAL
for directions, each cardinal direction only has 1 TRUE bit, so 1000 or 0100 for example, so when you subtract 1
+from a cardinal direction it results in that directions initial TRUE bit always switching to FALSE, so if you & check it
+against its initial self, it will return false, indicating that the direction is straight and not diagonal
+returns TRUE if direction is diagonal and false if not
NO_DIRECTION
define purely for readability, cables especially need to use this as NO_DIRECTION represents a "node"
NSCOMPONENT
True if the dir is north or south, false therwise
REVERSE_DIR
Inverse direction, taking into account UP|DOWN if necessary.
TEXT_EAST
East direction as a string "[4]"
TEXT_NORTH
North direction as a string "[1]"
TEXT_SOUTH
South direction as a string "[2]"
TEXT_WEST
West direction as a string "[8]"
\ No newline at end of file
diff --git a/code/__DEFINES/disease_defines.html b/code/__DEFINES/disease_defines.html
new file mode 100644
index 00000000000..4b7c4f3e676
--- /dev/null
+++ b/code/__DEFINES/disease_defines.html
@@ -0,0 +1,3 @@
+code/__DEFINES/disease_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Evoltion chance each cycle in percents.
+The base chance in % that a virus will mutate as it spreads. Further modified by stage speed and the viral evolutionary acceleration trait
Define Details
VIRUS_DISINFECTION_TEMP
Temperature at which objects contaminated by viruses are disinfected
VIRUS_EVOLUTION_CHANCE
Evoltion chance each cycle in percents.
+The base chance in % that a virus will mutate as it spreads. Further modified by stage speed and the viral evolutionary acceleration trait
VIRUS_MAX_CHEM_TREATMENT_TIMER
The maximum amount of time a symptom will be delayed for after the treating reagents have left the body
VIRUS_SYMPTOM_LIMIT
The maximum amount of symptoms a virus can have
\ No newline at end of file
diff --git a/code/__DEFINES/economy_defines.html b/code/__DEFINES/economy_defines.html
new file mode 100644
index 00000000000..1d9d78faae5
--- /dev/null
+++ b/code/__DEFINES/economy_defines.html
@@ -0,0 +1,5 @@
+code/__DEFINES/economy_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
This acount can only be accessed by admins/CC characters
ACCOUNT_SECURITY_ID
//ACOUNT SECURITY LEVELS////
+There is no security on this account, it can be accessed through someone's ID card/account number
ACCOUNT_SECURITY_PIN
Before accessing this account, the pin number must be provided
ACCOUNT_SECURITY_RESTRICTED
This account can only be accessed through restricted terminals
ACCOUNT_SECURITY_VENDOR
This account is only accessible to NPCs and Vendors (aka, only through code)
CREW_MEMBER_STARTING_BALANCE
STARTING CASH AMOUNTS
CREW_PAY_ASSISTANT
BASE PAY AMOUNTS
DATABASE_LOG_THRESHHOLD
Transactions on money accounts will automatically be logged if they involve over 2500 space credits
MAIL_DELIVERY_BONUS
mail deliveries
MAX_STACKABLE_CASH
//CASH LIMITS/CAPS/////
+The total amount of space cash that can be stacked
MERCH_CAT_APPAREL
merch computer categories
SUPPLY_EMERGENCY
supply packs
\ No newline at end of file
diff --git a/code/__DEFINES/economy_event_defines.html b/code/__DEFINES/economy_event_defines.html
new file mode 100644
index 00000000000..9f6c2c4f008
--- /dev/null
+++ b/code/__DEFINES/economy_event_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/economy_event_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/__DEFINES/emotes_defines.html b/code/__DEFINES/emotes_defines.html
new file mode 100644
index 00000000000..63bf9273067
--- /dev/null
+++ b/code/__DEFINES/emotes_defines.html
@@ -0,0 +1,3 @@
+code/__DEFINES/emotes_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Cooldown for emotes that are emitted unintentionally, to prevent them from getting audibly spammy.
DEFAULT_EMOTE_COOLDOWN
Default cooldown for normal (non-audio) emotes.
EMOTE_ACT_STOP_EXECUTION
If returned from act_on_target(), emote execution will stop.
EMOTE_ADMIN_BLOCKED
The user cannot emote as they have been blocked by an admin.
EMOTE_AUDIBLE
Emote is audible (in character).
EMOTE_FORCE_NO_RUNECHAT
Regardless of its existing flags, an emote with this flag will not be sent to runechat.
EMOTE_INFINITE
The user can spam emotes to their heart's content.
EMOTE_MOUTH
This emote uses the mouth, and so should be blocked if the user is muzzled or can't breathe (for humans).
EMOTE_ON_COOLDOWN
The user cannot emote until their cooldown expires.
EMOTE_PARAM_SEPARATOR
Marker to separate an emote key from its parameters in user input.
EMOTE_PARAM_USE_POSTFIX
If passed as message_param, will default to using the message's postfix.
EMOTE_READY
The user is not on emote cooldown, and is ready to emote whenever.
EMOTE_TARGET_ANY
The target will check nearby mobs and objects.
EMOTE_TARGET_BHVR_DEFAULT_TO_BASE
If this is set and a valid target is not found, the emote will just ignore the parameter entirely.
EMOTE_TARGET_BHVR_IGNORE
The emote target is used elsewhere, and processing should be skipped.
EMOTE_TARGET_BHVR_MUST_MATCH
If this is set and a valid target is not found, the emote will not execute.
EMOTE_TARGET_BHVR_NUM
The emote target should be just a number. Anything else will be rejected.
EMOTE_TARGET_BHVR_RAW
No matching/processing will be performed, and the target will be purely what's passed in.
EMOTE_TARGET_BHVR_USE_PARAMS_ANYWAY
If this is set and a valid target is not found, the emote will work with the params that it has.
EMOTE_TARGET_MOB
The target will check all nearby living mobs.
EMOTE_TARGET_OBJ
The target will check all objects nearby.
EMOTE_VISIBLE
General defines used for emotes
+Emote is visible. These emotes will be runechatted.
USABLE_DEAD_EMOTES
List of emotes useable by ghosties
\ No newline at end of file
diff --git a/code/__DEFINES/flags.html b/code/__DEFINES/flags.html
new file mode 100644
index 00000000000..61e2833df25
--- /dev/null
+++ b/code/__DEFINES/flags.html
@@ -0,0 +1,3 @@
+code/__DEFINES/flags.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Whether a decal element's parent has already been initialized and thus has already had its decals attached.
+see https://github.com/tgstation/tgstation/pull/71658 for a detailed explanation of the flag.
Should the user hold the item in active hand to use it?
Define Details
ALLOW_BELT_NO_JUMPSUIT_2
This flag allows for wearing of a belt item, even if you're not wearing a jumpsuit
ALL_CARDINALS
All the cardinal direction bitflags.
CRITICAL_ATOM_2
Use when this shouldn't be obscured by large icons.
DECAL_INIT_UPDATE_EXPERIENCED_2
Whether a decal element's parent has already been initialized and thus has already had its decals attached.
+see https://github.com/tgstation/tgstation/pull/71658 for a detailed explanation of the flag.
IMMUNE_TO_SHUTTLECRUSH_2
Prevents shuttles from deleting the item
LAVA_BRIDGE
This turf has already been reserved for a lavaland bridge placement.
MOBILITY_MOVE
can move
MOBILITY_PICKUP
can pickup items
MOBILITY_PULL
can pull things
MOBILITY_STAND
can, and is, standing up
MOBILITY_USE
can hold and use items
NO_MALF_EFFECT_2
Prevents malf AI animate + overload ability
NO_RUST
Blocks this turf from being rusted
NO_SCREENTIPS
Whether or not this atom shows screentips when hovered over
RAD_NO_CONTAMINATE_2
should this object be allowed to be contaminated
RAD_PROTECT_CONTENTS_2
should the contents of this atom be acted upon
RANDOM_BLOCKER_2
Use this flag for items that can block randomly
RESERVATION_TURF
If a turf is a reserved turf
RICOCHET_HARD
If the thing can reflect matter (bullets/bomb shrapnel)
RICOCHET_SHINY
If the thing can reflect light (lasers/energy)
SCOPE_CLICK_MIDDLE
Do we let the user scope and click on the middle of their screen?
SCOPE_MOVEMENT_CANCELS
Do we have the scope cancel on move?
SCOPE_NEED_ACTIVE_HAND
Should the user hold the item in active hand to use it?
SCOPE_TURF_ONLY
Can we use scope from mechs, lockers, etc?
SHOCKED_2
Prevents mobs from getting chainshocked by teslas and the supermatter
UNUSED_RESERVATION_TURF
If a turf is an unused reservation turf awaiting assignment
UPDATE_DESC
Update the atom's desc
UPDATE_ICON
Update the atom's icon
UPDATE_ICON_STATE
Update the atom's icon state
UPDATE_NAME
Update the atom's name
UPDATE_OVERLAYS
Update the atom's overlays
\ No newline at end of file
diff --git a/code/__DEFINES/food_defines.html b/code/__DEFINES/food_defines.html
new file mode 100644
index 00000000000..4aaf9681776
--- /dev/null
+++ b/code/__DEFINES/food_defines.html
@@ -0,0 +1,3 @@
+code/__DEFINES/food_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Same as FOOD_GOAL_EXCESSIVE, just different name to indicate that there's another version of this food that's used in variety goals.
Define Details
FOOD_GOAL_DUPLICATE
Same as FOOD_GOAL_EXCESSIVE, just different name to indicate that there's another version of this food that's used in variety goals.
FOOD_GOAL_EASY
Easy food, ask for a lot for single goals.
FOOD_GOAL_EXCESSIVE
TOO hard, accepted for variety goals, but never used for single goals.
FOOD_GOAL_HARD
Hard reagent, ask for a little for single goals.
FOOD_GOAL_NORMAL
Normal food, ask for a middling amount for single goals.
FOOD_GOAL_SKIP
Used for secondary goals.
+TOO easy, not accepted for variety goals.
\ No newline at end of file
diff --git a/code/__DEFINES/gamemode.html b/code/__DEFINES/gamemode.html
new file mode 100644
index 00000000000..9e44da6f814
--- /dev/null
+++ b/code/__DEFINES/gamemode.html
@@ -0,0 +1 @@
+code/__DEFINES/gamemode.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The bomb is on station z-level, but not a station tile.
\ No newline at end of file
diff --git a/code/__DEFINES/hud.html b/code/__DEFINES/hud.html
new file mode 100644
index 00000000000..a5e1ad4fc83
--- /dev/null
+++ b/code/__DEFINES/hud.html
@@ -0,0 +1 @@
+code/__DEFINES/hud.dm - Space Station 13Space Station 13 - Modules - Types
Takes a string or num view, and converts it to pixel width/height in a list(pixel_width, pixel_height)
\ No newline at end of file
diff --git a/code/__DEFINES/icon_smoothing_defines.html b/code/__DEFINES/icon_smoothing_defines.html
new file mode 100644
index 00000000000..47d4d83a9aa
--- /dev/null
+++ b/code/__DEFINES/icon_smoothing_defines.html
@@ -0,0 +1,14 @@
+code/__DEFINES/icon_smoothing_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Smooths with objects, and will thus need to scan turfs for contents.
SMOOTH_QUEUED
Atom is currently queued to smooth.
S_TURF
*SMOOTHING GROUPS
+
+
Groups of things to smooth with.
+
+
+
Contained in the list/smoothing_groups variable.
+
+
+
+
+
Matched with the list/canSmoothWith variable to check whether smoothing is possible or not.
+
+
+
\ No newline at end of file
diff --git a/code/__DEFINES/important_recursive_contents.html b/code/__DEFINES/important_recursive_contents.html
new file mode 100644
index 00000000000..2773ddfb8f5
--- /dev/null
+++ b/code/__DEFINES/important_recursive_contents.html
@@ -0,0 +1,3 @@
+code/__DEFINES/important_recursive_contents.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
the client mobs channel of the important_recursive_contents list, everything in here will be a mob with an attached client
+this is given to both a clients mob, and a clients eye, both point to the clients mob
the parent of storage components currently shown to some client mob get this. gets removed when nothing is viewing the parent
Define Details
RECURSIVE_CONTENTS_ACTIVE_STORAGE
the parent of storage components currently shown to some client mob get this. gets removed when nothing is viewing the parent
RECURSIVE_CONTENTS_AREA_SENSITIVE
the area channel of the important_recursive_contents list, everything in here will be sent a signal when their last holding object changes areas
RECURSIVE_CONTENTS_CLIENT_MOBS
the client mobs channel of the important_recursive_contents list, everything in here will be a mob with an attached client
+this is given to both a clients mob, and a clients eye, both point to the clients mob
RECURSIVE_CONTENTS_HEARING_SENSITIVE
the hearing channel of the important_recursive_contents list, everything in here will count as a hearing atom
\ No newline at end of file
diff --git a/code/__DEFINES/instrument_defines.html b/code/__DEFINES/instrument_defines.html
new file mode 100644
index 00000000000..f3a2ca58287
--- /dev/null
+++ b/code/__DEFINES/instrument_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/instrument_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Minimum volume for when the sound is considered dead.
Define Details
CHANNELS_PER_INSTRUMENT
Max number of playing notes per instrument.
INSTRUMENT_EXP_FALLOFF_MIN
These are per decisecond.
INSTRUMENT_MAX_TOTAL_SUSTAIN
Maximum length a note should ever go for
INSTRUMENT_MIN_SUSTAIN_DROPOFF
Minimum volume for when the sound is considered dead.
\ No newline at end of file
diff --git a/code/__DEFINES/keybindings_defines.html b/code/__DEFINES/keybindings_defines.html
new file mode 100644
index 00000000000..fcaf9236117
--- /dev/null
+++ b/code/__DEFINES/keybindings_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/keybindings_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
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
\ No newline at end of file
diff --git a/code/__DEFINES/layers.html b/code/__DEFINES/layers.html
new file mode 100644
index 00000000000..892eca65668
--- /dev/null
+++ b/code/__DEFINES/layers.html
@@ -0,0 +1 @@
+code/__DEFINES/layers.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
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.
MAP_EDITOR_TURF_LAYER
Which layer turfs appear on by default in the map editor. Should be unique!
PLANE_MASTERS_GAME
Plane master controller keys
\ No newline at end of file
diff --git a/code/__DEFINES/lighting_defines.html b/code/__DEFINES/lighting_defines.html
new file mode 100644
index 00000000000..885fbcd8eef
--- /dev/null
+++ b/code/__DEFINES/lighting_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/lighting_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
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.
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 independant of the RGB value of EM_BLOCK_COLOR.
Parse the hexadecimal color into lumcounts of each perspective.
Define Details
EMISSIVE_APPEARANCE_FLAGS
A set of appearance flags applied to all emissive and emissive blocker overlays.
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 applied to all emissive overlays.
EM_BLOCK_COLOR
The color applied to all emissive blockers. Is meant to be the exact opposite of the EMMISIVE_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 independant 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
PARSE_LIGHT_COLOR
Parse the hexadecimal color into lumcounts of each perspective.
\ No newline at end of file
diff --git a/code/__DEFINES/machines.html b/code/__DEFINES/machines.html
new file mode 100644
index 00000000000..7eebd01abf8
--- /dev/null
+++ b/code/__DEFINES/machines.html
@@ -0,0 +1 @@
+code/__DEFINES/machines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Higher == Crystal safe operational temperature is higher.
\ No newline at end of file
diff --git a/code/__DEFINES/magic_defines.html b/code/__DEFINES/magic_defines.html
new file mode 100644
index 00000000000..5c9f2d247a8
--- /dev/null
+++ b/code/__DEFINES/magic_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/magic_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Whether the spell can be cast while the user has antimagic on them that corresponds to the spell's own antimagic flags.
Define Details
MAGIC_RESISTANCE
Default magic resistance that blocks normal magic (wizard, spells, magical staff projectiles)
MAGIC_RESISTANCE_HOLY
Holy magic resistance that blocks unholy magic (revenant, vampire, voice of god)
MAGIC_RESISTANCE_MIND
Tinfoil hat magic resistance that blocks mental magic (telepathy / mind links, mind curses, abductors)
SPELL_REQUIRES_NO_ANTIMAGIC
Whether the spell can be cast while the user has antimagic on them that corresponds to the spell's own antimagic flags.
\ No newline at end of file
diff --git a/code/__DEFINES/mappers.html b/code/__DEFINES/mappers.html
new file mode 100644
index 00000000000..5c2e3c0d8ec
--- /dev/null
+++ b/code/__DEFINES/mappers.html
@@ -0,0 +1 @@
+code/__DEFINES/mappers.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Create directional subtypes for a path to simplify mapping.
Define Details
MAPPING_DIRECTIONAL_HELPERS
Create directional subtypes for a path to simplify mapping.
\ No newline at end of file
diff --git a/code/__DEFINES/mindflayer_defines.html b/code/__DEFINES/mindflayer_defines.html
new file mode 100644
index 00000000000..460da2cf005
--- /dev/null
+++ b/code/__DEFINES/mindflayer_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/mindflayer_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
If we want to keep draining someone but we don't have any swarms to gain
Define Details
BRAIN_DRAIN_LIMIT
How many swarms can you drain per person?
DRAIN_BUT_NO_SWARMS
If we want to keep draining someone but we don't have any swarms to gain
DRAIN_TIME
The time per harvesting tick
FLAYER_INNATE_POWER
Denotes that this power is free and should be given to all mindflayers by default.
FLAYER_PURCHASABLE_POWER
Denotes that this power can only be obtained by purchasing it.
FLAYER_UNOBTAINABLE_POWER
Denotes that this power can not be obtained normally. Primarily used for base types such as /datum/spell/flayer/weapon.
\ No newline at end of file
diff --git a/code/__DEFINES/misc_defines.html b/code/__DEFINES/misc_defines.html
new file mode 100644
index 00000000000..44b675dffc6
--- /dev/null
+++ b/code/__DEFINES/misc_defines.html
@@ -0,0 +1,15 @@
+code/__DEFINES/misc_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Reading books can help with brain damage!
+These are seperate times so that a user gains more benefits by reading more books,
+but also cant infinitely switch between 1000 books.
+The amount of time needed to pass to let a single book be read again for brain benefits
Takes a datum as input, returns its ref string, or a cached version of it
+This allows us to cache \ref creation, which ensures it'll only ever happen once per datum, saving string tree time
+It is slightly less optimal then a []'d datum, but the cost is massively outweighed by the potential savings
+It will only work for datums mind, for datum reasons
+: because of the embedded typecheck
The number of seconds between the start of the UNIX and BYOND epochs.
Define Details
BANK_PIN_MIN
Economy account defines
BASE_DEFIB_TIME_LIMIT
Past this much time the patient is unrecoverable (in deciseconds).
BRAIN_DAMAGE_BOOK_TIME
Reading books can help with brain damage!
+These are seperate times so that a user gains more benefits by reading more books,
+but also cant infinitely switch between 1000 books.
+The amount of time needed to pass to let a single book be read again for brain benefits
BRAIN_DAMAGE_MOB_TIME
The amount of time a mob needs to wait between any book reading
CLIENT_FROM_VAR
Return a Client
DEADCHAT_ANARCHY_MODE
Allows each player to do a single command every cooldown.
DEADCHAT_DEMOCRACY_MODE
Will execute a single command after the cooldown based on player votes.
DEFIB_TIME_LOSS
Brain damage starts setting in on the patient after some time left rotting.
DISCORD_WEBHOOK_ADMIN
Send to the admin Discord webhook
DISCORD_WEBHOOK_MENTOR
Send to the mentor Discord webhook
DISCORD_WEBHOOK_PRIMARY
Send to the primary Discord webhook
DISPOSAL_SOUND_COOLDOWN
How frequently disposals can make sounds, to prevent huge sound stacking
EMOJI_SET
Emoji icon set
FOAM_REACT_BEFORE_SPREAD
Chemicals in the foam will react when the foam first reaches a tile.
FOAM_REACT_DURING_SPREAD
Chemicals in the foam will react while the foam is still processing.
FOAM_REACT_NEVER
The chemicals in the foam (if any) will never react.
FOAM_REACT_ON_DISSIPATE
Chemicals in the foam will only react when the foam dissipates.
GERM_LEVEL_AMBIENT
GERMS AND INFECTIONS
GREYSCALE_COLOR_REPLACE
Pure Black and white colorblindness. Every species except Vulpkanins and Tajarans will have this.
LAVALAND_TENDRIL_COLLAPSE_RANGE
The radius of the chasm created by killed tendrils.
LOG_MAZE_PROGRESS
I dont recommend touching these map generator defines unless you know what you're doing with maze generators.
MACH_CENTER
A define for the center of the coordinate map of big machinery
MAPTEXT
Prepares a text to be used for maptext. Use this so it doesn't look hideous.
MUTE_DEADCHAT_DEMOCRACY_MESSAGES
Mutes the democracy mode messages send to orbiters at the end of each cycle. Useful for when the cooldown is so low it'd get spammy.
PARALLAX_DELAY_DEFAULT
About 0.05 Seconds of delay
PINPOINTER_MODE_DET
Detective's mode on pinpointers
PROTANOPIA_COLOR_REPLACE
Red colorblindness. Vulpkanins/Wolpins have this.
RANGE_EDGE_TURFS
Returns the turfs on the edge of a square with CENTER in the middle and with the given RADIUS. If used near the edge of the map, will still work fine.
REFLECTABILITY_NEVER
Projectile reflectability defines
REGION_ALL
Access Region Codes
RESTRICT_TYPE
A helper used by restrict_file_types.py to identify types to restrict in a file. Not used by byond at all.
SLEEP_CHECK_QDEL
Sleep check QDEL. Like sleep check death, but checks deleting. Good for non mobs.
TECH_MATERIAL
Defines for hidden organ techs
TRITANOPIA_COLOR_REPLACE
Yellow-Blue colorblindness. Tajarans/Farwas have this.
UNTIL
Waits at a line of code until X is true
VOTE_RESULT_TYPE_MAJORITY
The different kinds of voting
get_area
Grabs the area of a supplied object. Passing an area in to this will result in an error
text_ref
Takes a datum as input, returns its ref string, or a cached version of it
+This allows us to cache \ref creation, which ensures it'll only ever happen once per datum, saving string tree time
+It is slightly less optimal then a []'d datum, but the cost is massively outweighed by the potential savings
+It will only work for datums mind, for datum reasons
+: because of the embedded typecheck
\ No newline at end of file
diff --git a/code/__DEFINES/mob_defines.html b/code/__DEFINES/mob_defines.html
new file mode 100644
index 00000000000..d379b4cb7f8
--- /dev/null
+++ b/code/__DEFINES/mob_defines.html
@@ -0,0 +1,3 @@
+code/__DEFINES/mob_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Default maximum body temperature mobs can exist in before taking damage
Define Details
COCOON_EMERGE_DELAY
Nian and Nian worme delay after they emerge from their cocoon, in seconds.
COCOON_WEAVE_DELAY
Nian and Nian Worme cocoon do_after delay, in seconds.
EXAMINE_MORE_WINDOW
If you examine the same atom twice in this timeframe, we call examine_more() instead of examine()
FLYSWATTER_DAMAGE_MULTIPLIER
Nian and nian worme fly swatter damage multiplier, X + 1 => Total multiplier. (Ex. Value of 9 => 10x dmg)
LYING_DOWN
Mob is lying down, usually associated with lying_angle values of 90 or 270.
MAX_GOLD_CORE_MOBS
Max amount of living Xenobio mobs allowed at any given time (excluding slimes).
NPC_DEFAULT_MAX_TEMP
Default maximum body temperature mobs can exist in before taking damage
NPC_DEFAULT_MIN_TEMP
Default minimum body temperature mobs can exist in before taking damage
ORGAN_BROKEN
ORGAN DEFINES
ORGAN_HAZARDOUS
An organ that is ostensibly dangerous when inside a body
PIXEL_Y_OFFSET_LYING
How much a mob's sprite should be moved when they're lying down
REAGENTS_METABOLISM
REAGENT STUFF
SHOCK_ILLUSION
Used when an illusion shocks something. Makes the shock deal stamina damage and not trigger certain secondary effects.
SHOCK_NOGLOVES
Flags used by the flags parameter of electrocute act.
+Makes it so that the shock doesn't take gloves into account.
SHOCK_NOSTUN
The shock doesn't stun.
SHOCK_TESLA
Used when the shock is from a tesla bolt.
STANDING_UP
Mob is standing up, usually associated with lying_angle value of 0.
\ No newline at end of file
diff --git a/code/__DEFINES/mod.html b/code/__DEFINES/mod.html
new file mode 100644
index 00000000000..0eb7737e5fd
--- /dev/null
+++ b/code/__DEFINES/mod.html
@@ -0,0 +1 @@
+code/__DEFINES/mod.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Default value for the max_complexity var on MODsuits
MODULE_ACTIVE
Actively usable module, you may only have one selected at a time.
MODULE_ALLOW_INACTIVE
This module can be used while the suit is off
MODULE_ALLOW_INCAPACITATED
This module can be used while incapacitated
MODULE_PASSIVE
Passive module, just acts when put in naturally.
MODULE_TOGGLE
Toggle module, you turn it on/off and it does stuff.
MODULE_USABLE
Usable module, does something when you press a button.
MOD_ACTIVATION_STEP_TIME
Default time for a part to seal
\ No newline at end of file
diff --git a/code/__DEFINES/monkey_defines.html b/code/__DEFINES/monkey_defines.html
new file mode 100644
index 00000000000..93dc86c4810
--- /dev/null
+++ b/code/__DEFINES/monkey_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/monkey_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
probability that monkey will disarm an armed attacker
MONKEY_BATTLE_CRY_COOLDOWN
Cooldown on screeching
MONKEY_CUFF_RETALIATION_PROB
Probability monkey will aggro when cuffed
MONKEY_ENEMY_VISION
how close an enemy must be to trigger aggression
MONKEY_FLEE_HEALTH
below this health value the monkey starts to flee from enemies
MONKEY_FLEE_VISION
how close an enemy must be before it triggers flee
MONKEY_HATRED_AMOUNT
amount of aggro to add to an enemy when they attack user
MONKEY_HATRED_REDUCTION_PROB
probability of reducing aggro by one when the monkey attacks
MONKEY_ITEM_SNATCH_DELAY
How long does it take the item to be taken from a mobs hand
MONKEY_PULL_AGGRO_PROB
probability that monkey aggro against the mob pulling it
MONKEY_RECRUIT_COOLDOWN
Monkey recruit cooldown
MONKEY_RECRUIT_HATED_AMOUNT
amount of aggro to add to an enemy when a monkey is recruited
MONKEY_RECRUIT_PROB
probability that monkey will get recruited when friend is attacked
MONKEY_RETALIATE_PROB
probability for the monkey to aggro when attacked
MONKEY_SHENANIGAN_PROB
probability that monkey will get into mischief, i.e. finding/stealing items
MONKEY_SYRINGE_RETALIATION_PROB
Probability monkey will aggro when syringed
\ No newline at end of file
diff --git a/code/__DEFINES/movement_defines.html b/code/__DEFINES/movement_defines.html
new file mode 100644
index 00000000000..f18514c9803
--- /dev/null
+++ b/code/__DEFINES/movement_defines.html
@@ -0,0 +1,5 @@
+code/__DEFINES/movement_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The maximum for glide_size to be clamped to.
+This shouldn't be higher than the icon size, and generally you shouldn't be changing this, but it's here just in case.
Returns a bitfield containing flags both present in flags arg and the processing_move_loop_flags move_packet variable.
+Has no use outside of procs called within the movement proc chain.
Returns a bitfield containing flags both present in flags arg and the processing_move_loop_flags move_packet variable.
+Has no use outside of procs called within the movement proc chain.
MAX_GLIDE_SIZE
The maximum for glide_size to be clamped to.
+This shouldn't be higher than the icon size, and generally you shouldn't be changing this, but it's here just in case.
MIN_GLIDE_SIZE
The minimum for glide_size to be clamped to.
MOVELOOP_FAILURE
Return values for moveloop Move()
MOVELOOP_STATUS_PAUSED
Has the loop been paused, soon to be resumed?
MOVELOOP_STATUS_QUEUED
Is the loop queued in a subsystem?
MOVELOOP_STATUS_RUNNING
Is the loop running? (Is true even when paused)
MOVEMENT_ABOVE_SPACE_PRIORITY
Higher then the heavens
MOVEMENT_DEFAULT_PRIORITY
Standard, go lower then this if you want to override, higher otherwise
MOVEMENT_LOOP_FORCE_MOVE
Should we forceMove instead of Move?
MOVEMENT_LOOP_IGNORE_GLIDE
Should we override the loop's glide?
MOVEMENT_LOOP_IGNORE_PRIORITY
Do we not use the priority system?
MOVEMENT_LOOP_NO_DIR_UPDATE
Should we not update our movables dir on move?
MOVEMENT_LOOP_NO_MOMENTUM_CHANGE
Controls how the loop will set momentum_change in its Move call.
MOVEMENT_LOOP_START_FAST
Should the loop act immediately following its addition?
MOVEMENT_SPACE_PRIORITY
Very few things should override this
RESOLVE_ACTIVE_MOVEMENT
Finish any active movements
SET_ACTIVE_MOVEMENT
The arguments of this macro correspond directly to the argument order of /atom/movable/proc/Moved
\ No newline at end of file
diff --git a/code/__DEFINES/newscaster_defines.html b/code/__DEFINES/newscaster_defines.html
new file mode 100644
index 00000000000..96a0c749565
--- /dev/null
+++ b/code/__DEFINES/newscaster_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/newscaster_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/__DEFINES/path_defines.html b/code/__DEFINES/path_defines.html
new file mode 100644
index 00000000000..eb96d4063a4
--- /dev/null
+++ b/code/__DEFINES/path_defines.html
@@ -0,0 +1,5 @@
+code/__DEFINES/path_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
A helper macro to see if it's possible to step from the first turf into the second one, minding things like door access and directional windows.
+If you really want to optimize things, optimize this, cuz this gets called a lot.
+We do early next.density check despite it being already checked in LinkBlockedWithAccess for short-circuit performance
Define Details
CANPATHFINDPASS_ALWAYS_PROC
If this is set, we bypass density checks and always call the proc
CANPATHFINDPASS_DENSITY
If set, we make the assumption that CanPathfindPass() will NEVER return FALSE unless density is true
CAN_STEP
A helper macro to see if it's possible to step from the first turf into the second one, minding things like door access and directional windows.
+If you really want to optimize things, optimize this, cuz this gets called a lot.
+We do early next.density check despite it being already checked in LinkBlockedWithAccess for short-circuit performance
\ No newline at end of file
diff --git a/code/__DEFINES/power_defines.html b/code/__DEFINES/power_defines.html
new file mode 100644
index 00000000000..d337e956e01
--- /dev/null
+++ b/code/__DEFINES/power_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/power_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
roughly 1/2000 chance of a machine flickering on any given tick. That means in a two hour round each machine will flicker on average a little less than two times.
Conversion ratio from Watt over a machine process tick time to Joules
Define Details
ACTIVE_POWER_USE
This machine is consuming its active power amount passively
APC_FULLY_CHARGED
APC battery is at 100%
APC_IS_CHARGING
APC is currently recieving power and storing it
APC_NOT_CHARGING
APC is not recieving power
BROKEN
Machine is broken
EMPED
Machine is currently affected by EMP pulse
IDLE_POWER_USE
This machine is consuming its idle power amount passively
MACHINE_FLICKER_CHANCE
roughly 1/2000 chance of a machine flickering on any given tick. That means in a two hour round each machine will flicker on average a little less than two times.
MAINT
machine is currently under maintenance
NOPOWER
Machine is not recieving any power from the local powernet
NO_POWER_USE
This machine is not currently consuming any power passively
PW_ALWAYS_POWERED
Local powernet in this area will always have power even if its not recieving power
PW_ALWAYS_UNPOWERED
Local powernet in this area will never be powered, even if its recieving power
PW_CHANNEL_ENVIRONMENT
Power channel for environmental power users
PW_CHANNEL_EQUIPMENT
Power Channel for equipment power users
PW_CHANNEL_LIGHTING
Power chanel for lighting power users
WATT_TICK_TO_JOULE
Conversion ratio from Watt over a machine process tick time to Joules
\ No newline at end of file
diff --git a/code/__DEFINES/preferences_defines.html b/code/__DEFINES/preferences_defines.html
new file mode 100644
index 00000000000..f79b97b4419
--- /dev/null
+++ b/code/__DEFINES/preferences_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/preferences_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Special toggles, stuff that just overrides set_toggles entirely
PREFTOGGLE_TOGGLE1
Interacts with the toggles bitflag
PREFTOGGLE_TOGGLE2
Interacts with the toggles2 bitflag
PREFTOGGLE_TOGGLE3
Interacts with the toggles3 bitflag
_2FA_DISABLED
Client has 2FA disabled
_2FA_ENABLED_ALWAYS
Client will be prompted for 2FA always
_2FA_ENABLED_IP
Client will be prompted for 2FA on IP changes
\ No newline at end of file
diff --git a/code/__DEFINES/procpath.html b/code/__DEFINES/procpath.html
new file mode 100644
index 00000000000..67880f9fd73
--- /dev/null
+++ b/code/__DEFINES/procpath.html
@@ -0,0 +1 @@
+code/__DEFINES/procpath.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/__DEFINES/qdel_defines.html b/code/__DEFINES/qdel_defines.html
new file mode 100644
index 00000000000..a4fb73891ab
--- /dev/null
+++ b/code/__DEFINES/qdel_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/qdel_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
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.
Number of item indexes, used for allocating the nested lists. Don't forget to increase this if you add a new queue item index
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
\ No newline at end of file
diff --git a/code/__DEFINES/radiation_defines.html b/code/__DEFINES/radiation_defines.html
new file mode 100644
index 00000000000..2d046c01863
--- /dev/null
+++ b/code/__DEFINES/radiation_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/radiation_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The portion of a radiation wave that acts on the source tile.
Define Details
RAD_SOURCE_WEIGHT
The portion of a radiation wave that acts on the source tile.
\ No newline at end of file
diff --git a/code/__DEFINES/reagents_defines.html b/code/__DEFINES/reagents_defines.html
new file mode 100644
index 00000000000..845b9be6652
--- /dev/null
+++ b/code/__DEFINES/reagents_defines.html
@@ -0,0 +1,3 @@
+code/__DEFINES/reagents_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
TOO hard, accepted for variety goals, but never used for single goals.
Define Details
BLOOD_TYPE_FAKE_BLOOD
Like O- blood but doesn't contribute to blood_volume or vampire nutrition
REAGENT_GOAL_EASY
Easy reagent, ask for a lot for single goals.
REAGENT_GOAL_EXCESSIVE
TOO hard, accepted for variety goals, but never used for single goals.
REAGENT_GOAL_HARD
Hard reagent, ask for a little for single goals.
REAGENT_GOAL_NORMAL
Normal reagent, ask for a middling amount for single goals.
REAGENT_GOAL_SKIP
Used for secondary goals.
+TOO easy, not accepted for variety goals.
SYNTHFLESH_UNHUSK_AMOUNT
Amount of synthflesh required to unhusk someone
SYRINGE_DRAW
Syringe mob interaction modes
UNHUSK_DAMAGE_THRESHOLD
Health threshold for synthflesh and rezadone to unhusk someone
\ No newline at end of file
diff --git a/code/__DEFINES/regex.html b/code/__DEFINES/regex.html
new file mode 100644
index 00000000000..a8897e713fc
--- /dev/null
+++ b/code/__DEFINES/regex.html
@@ -0,0 +1 @@
+code/__DEFINES/regex.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Use this for every proc passed in as second argument in regex.Replace. regex.Replace does not allow calling procs by name but as of 515 using proc refs will always call the top level proc instead of overrides
Define Details
REGEX_REPLACE_HANDLER
Use this for every proc passed in as second argument in regex.Replace. regex.Replace does not allow calling procs by name but as of 515 using proc refs will always call the top level proc instead of overrides
\ No newline at end of file
diff --git a/code/__DEFINES/rust.html b/code/__DEFINES/rust.html
new file mode 100644
index 00000000000..4a217ab70ad
--- /dev/null
+++ b/code/__DEFINES/rust.html
@@ -0,0 +1 @@
+code/__DEFINES/rust.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Interesting because it has wind that can push stuff around.
Define Details
MILLA_INTERESTING_REASON_DISPLAY
Interesting because it needs a display update.
MILLA_INTERESTING_REASON_HOT
Interesting because it's hot enough to start a fire. Excludes normal-temperature Lavaland tiles without an active fire.
MILLA_INTERESTING_REASON_WIND
Interesting because it has wind that can push stuff around.
MILLA_INTERESTING_TILE_SIZE
The number of values per interesting tile.
MILLA_TILE_SIZE
The number of values per tile.
\ No newline at end of file
diff --git a/code/__DEFINES/sight.html b/code/__DEFINES/sight.html
new file mode 100644
index 00000000000..7d3490bf1b7
--- /dev/null
+++ b/code/__DEFINES/sight.html
@@ -0,0 +1 @@
+code/__DEFINES/sight.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/__DEFINES/silicon_defines.html b/code/__DEFINES/silicon_defines.html
new file mode 100644
index 00000000000..e6e7c8a051a
--- /dev/null
+++ b/code/__DEFINES/silicon_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/silicon_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
These are the screen locations of a cyborg's modules 1, 2, and 3 in that order.
Define Details
CYBORG_HUD_LOCATIONS
These are the screen locations of a cyborg's modules 1, 2, and 3 in that order.
\ No newline at end of file
diff --git a/code/__DEFINES/smith_defines.html b/code/__DEFINES/smith_defines.html
new file mode 100644
index 00000000000..8cf9ddfb742
--- /dev/null
+++ b/code/__DEFINES/smith_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/smith_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/__DEFINES/sound_defines.html b/code/__DEFINES/sound_defines.html
new file mode 100644
index 00000000000..9f16328c4b2
--- /dev/null
+++ b/code/__DEFINES/sound_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/sound_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
default extra range for sounds considered to be quieter
SILENCED_SOUND_EXTRARANGE
The range deducted from sound range for things that are considered silent / sneaky
SOUND_DEFAULT_FALLOFF_DISTANCE
Percentage of sound's range where no falloff is applied
SOUND_FALLOFF_EXPONENT
The default exponent of sound falloff
SOUND_RANGE
Default range of a sound.
SOUND_RANGE_SET
Easy-to-math sound range for simpler coding with specific variables. Insert the exact range you wish the sound to be heard from.
\ No newline at end of file
diff --git a/code/__DEFINES/spatial_gridmap_defines.html b/code/__DEFINES/spatial_gridmap_defines.html
new file mode 100644
index 00000000000..cc105563111
--- /dev/null
+++ b/code/__DEFINES/spatial_gridmap_defines.html
@@ -0,0 +1,3 @@
+code/__DEFINES/spatial_gridmap_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
changes the cell_(x or y) vars on /datum/spatial_grid_cell to the x or y coordinate on the map for the LOWER LEFT CORNER of the grid cell.
+index is from 1 to SPATIAL_GRID_CELLS_PER_SIDE
Takes a coordinate, and spits out the spatial grid index (x or y) it's inside
GRID_CELL_REMOVE_ALL
remove from every list
GRID_INDEX_TO_COORDS
changes the cell_(x or y) vars on /datum/spatial_grid_cell to the x or y coordinate on the map for the LOWER LEFT CORNER of the grid cell.
+index is from 1 to SPATIAL_GRID_CELLS_PER_SIDE
HAS_SPATIAL_GRID_CONTENTS
whether movable is itself or containing something which should be in one of the spatial grid channels.
SPATIAL_GRID_CELLSIZE
each cell in a spatial_grid is this many turfs in length and width (with world.max(x or y) being 255, 15 of these fit on each side of a z level)
SPATIAL_GRID_CELLS_PER_SIDE
number of grid cells per x or y side of all z levels. pass in world.maxx or world.maxy
SPATIAL_GRID_CONTENTS_TYPE_ATMOS
all atmos machines are stored in this channel (I'm sorry kyler)
SPATIAL_GRID_CONTENTS_TYPE_CLIENTS
every movable that has a client in it is stored in this channel
SPATIAL_GRID_CONTENTS_TYPE_HEARING
everything that is hearing sensitive is stored in this channel
\ No newline at end of file
diff --git a/code/__DEFINES/station_defines.html b/code/__DEFINES/station_defines.html
new file mode 100644
index 00000000000..4500791f01d
--- /dev/null
+++ b/code/__DEFINES/station_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/station_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The data file that future station traits forced by an admin are stored in
Define Details
FUTURE_STATION_TRAITS_FILE
The data file that future station traits forced by an admin are stored in
STATION_TRAIT_ABSTRACT
For traits that shouldn't be selected, like abstract types (wow)
STATION_TRAIT_MAP_UNRESTRICTED
Not restricted by space or planet, can always just happen
STATION_TRAIT_PLANETARY
Only run on planet stations
STATION_TRAIT_SPACE_BOUND
Only run on space stations
\ No newline at end of file
diff --git a/code/__DEFINES/station_goals.html b/code/__DEFINES/station_goals.html
new file mode 100644
index 00000000000..a49c9885691
--- /dev/null
+++ b/code/__DEFINES/station_goals.html
@@ -0,0 +1,5 @@
+code/__DEFINES/station_goals.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
How many units can be missing from a reagent and still count to the goal.
+Prevents floationg point rounding from making you fail even though you
+seemed to have sent enough.
Define Details
REAGENT_GOAL_FORGIVENESS
How many units can be missing from a reagent and still count to the goal.
+Prevents floationg point rounding from making you fail even though you
+seemed to have sent enough.
\ No newline at end of file
diff --git a/code/__DEFINES/status_effects.html b/code/__DEFINES/status_effects.html
new file mode 100644
index 00000000000..eb27a8ecc54
--- /dev/null
+++ b/code/__DEFINES/status_effects.html
@@ -0,0 +1 @@
+code/__DEFINES/status_effects.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
gives you fluff messages for cough, sneeze, headache, etc but without an actual virus
STATUS_EFFECT_FLESHMEND
Rapid burn/brute/oxy/blood healing from the cling ability
STATUS_EFFECT_HIVELORD_TRACKING
Use by hivelords to determine if they can attack yet.
STATUS_EFFECT_LWAPSCOPE
This status effect lets the user see the lwap dots.
STATUS_EFFECT_OFFERING_ITEM
Status effect given when someone uses the Give Item command to offer an item to another player.
STATUS_EFFECT_REMOVE_CUFFS
Status effects for different actions
STATUS_EFFECT_REVIVABLE
This status effect allows a mob to be revived with a defibrillator.
STATUS_EFFECT_TELEPORT_ROULETTE
Causes a random safe teleport every 2 seconds for a limited time
\ No newline at end of file
diff --git a/code/__DEFINES/strippable_defines.html b/code/__DEFINES/strippable_defines.html
new file mode 100644
index 00000000000..61ed55c6d4c
--- /dev/null
+++ b/code/__DEFINES/strippable_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/strippable_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
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.
\ No newline at end of file
diff --git a/code/__DEFINES/subsystems.html b/code/__DEFINES/subsystems.html
new file mode 100644
index 00000000000..92b307c0fc8
--- /dev/null
+++ b/code/__DEFINES/subsystems.html
@@ -0,0 +1 @@
+code/__DEFINES/subsystems.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Delete the timer on parent datum Destroy() and when deltimer'd
Define Details
TIMER_DELETE_ME
Delete the timer on parent datum Destroy() and when deltimer'd
\ No newline at end of file
diff --git a/code/__DEFINES/surgery_defines.html b/code/__DEFINES/surgery_defines.html
new file mode 100644
index 00000000000..292f211bb4d
--- /dev/null
+++ b/code/__DEFINES/surgery_defines.html
@@ -0,0 +1,11 @@
+code/__DEFINES/surgery_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Return this from begin_step() to skip the current step entirely and proceed to the next one.
+Use this if you would end up leaving someone in an invalid state.
This step will automatically be retried without question as long as this is returned.
+Be very cautious with this one! Make sure that any flow where this is used has an exit condition where something else will be returned.
+Otherwise, the user will be stuck in a loop!
This surgery step will be conditionally retried, so long as the surgery step's can_repeat() proc returns TRUE.
+Otherwise, it'll behave just like SURGERY_STEP_INCOMPLETE.
The surgery never reached (or finished) the do_after. Go back to the state we were in before this even happened.
Define Details
ORGAN_CLOSED
Closed up.
ORGAN_ORGANIC_ENCASED_OPEN
An organ that's encased, probably with bone, where that casing has been cut through.
ORGAN_ORGANIC_OPEN
An organic limb that's been opened, at least once.
ORGAN_ORGANIC_VIOLENT_OPEN
An organ that has been violently opened, likely via damage.
ORGAN_SYNTHETIC_LOOSENED
Synthetic organ that's been unscrewed.
ORGAN_SYNTHETIC_OPEN
Synthetic organ that's had its panel opened.
SURGERY_BEGINSTEP_ABORT
Return this from begin_step() to abort the step and not try the surgery.
SURGERY_BEGINSTEP_SKIP
Return this from begin_step() to skip the current step entirely and proceed to the next one.
+Use this if you would end up leaving someone in an invalid state.
SURGERY_BLOODSPREAD_FULLBODY
Cover the surgeon's body in blood.
SURGERY_BLOODSPREAD_HANDS
Cover the surgeon's hands in blood.
SURGERY_BLOODSPREAD_NONE
Defines for surgery and other stuff.
+Don't splash any blood.
SURGERY_INITIATE_CONTINUE_CHAIN
The surgery initiation isn't even going to be started. If you're working with the attack chain, this is probably what you'll be using.
SURGERY_INITIATE_FAILURE
The surgery initiation was interrupted, or for some reason never completed. We don't want to return FALSE to the attack chain, though.
SURGERY_INITIATE_INTERRUPTED
The surgery never reached (or finished) the do_after. Go back to the state we were in before this even happened.
SURGERY_INITIATE_SUCCESS
The surgery initiaition was a success. We're advancing the current surgery.
SURGERY_INITIATOR_ORGANIC
An initiator with this can start surgeries on organic organs. Make sure that anything that can be sharp gets this as well.
SURGERY_INITIATOR_ROBOTIC
An initiator with this can start surgeries on robotic organs.
SURGERY_STEP_CONTINUE
The surgery step was completed, and the surgery should continue to the next step.
SURGERY_STEP_INCOMPLETE
The surgery step was not completed for some reason, and the next action will again be on this step.
SURGERY_STEP_RETRY
This surgery step will be conditionally retried, so long as the surgery step's can_repeat() proc returns TRUE.
+Otherwise, it'll behave just like SURGERY_STEP_INCOMPLETE.
SURGERY_STEP_RETRY_ALWAYS
This step will automatically be retried without question as long as this is returned.
+Be very cautious with this one! Make sure that any flow where this is used has an exit condition where something else will be returned.
+Otherwise, the user will be stuck in a loop!
\ No newline at end of file
diff --git a/code/__DEFINES/text_defines.html b/code/__DEFINES/text_defines.html
new file mode 100644
index 00000000000..57c853e1574
--- /dev/null
+++ b/code/__DEFINES/text_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/text_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Max Characters that can be on a single book page, this will give players an average of 5000 words worth of writing space (1000 per page)
SANITIZE_FILENAME
Removes characters incompatible with file names.
\ No newline at end of file
diff --git a/code/__DEFINES/tg_cooldowns.html b/code/__DEFINES/tg_cooldowns.html
new file mode 100644
index 00000000000..dad43f06cbf
--- /dev/null
+++ b/code/__DEFINES/tg_cooldowns.html
@@ -0,0 +1 @@
+code/__DEFINES/tg_cooldowns.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
adds to existing cooldown timer if its started, otherwise starts anew
Define Details
COOLDOWN_INCREMENT
adds to existing cooldown timer if its started, otherwise starts anew
MOB_SHARED_COOLDOWN_1
COOLDOWN SYSTEMS
TIMER_COOLDOWN_FINISHED
Checks if a timer based cooldown is finished.
TIMER_COOLDOWN_RUNNING
Checks if a timer based cooldown is NOT finished.
\ No newline at end of file
diff --git a/code/__DEFINES/tgs.html b/code/__DEFINES/tgs.html
new file mode 100644
index 00000000000..a4af3423069
--- /dev/null
+++ b/code/__DEFINES/tgs.html
@@ -0,0 +1,3 @@
+code/__DEFINES/tgs.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Create this define if you want to do TGS configuration outside of this file.
+Before a reboot mode change, extras parameters are the current and new reboot mode enums.
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.
User definable chat embed. Currently mirrors Discord chat embeds. See https://discord.com/developers/docs/resources/channel#embed-object-embed-structure for details.
See https://discord.com/developers/docs/resources/channel#embed-object-embed-field-structure for details. Must have name and value set in New().
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
Create this define if you want to do TGS configuration outside of this file.
+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_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
Put this 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.
\ No newline at end of file
diff --git a/code/__DEFINES/tgui_defines.html b/code/__DEFINES/tgui_defines.html
new file mode 100644
index 00000000000..db3c30d2946
--- /dev/null
+++ b/code/__DEFINES/tgui_defines.html
@@ -0,0 +1 @@
+code/__DEFINES/tgui_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
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
\ No newline at end of file
diff --git a/code/__DEFINES/turfs.html b/code/__DEFINES/turfs.html
new file mode 100644
index 00000000000..252d466a3ed
--- /dev/null
+++ b/code/__DEFINES/turfs.html
@@ -0,0 +1 @@
+code/__DEFINES/turfs.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/__DEFINES/user_verb_defines.html b/code/__DEFINES/user_verb_defines.html
new file mode 100644
index 00000000000..12703fc2c84
--- /dev/null
+++ b/code/__DEFINES/user_verb_defines.html
@@ -0,0 +1,13 @@
+code/__DEFINES/user_verb_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
This is the only macro you should use to define admin verbs.
+It will define the verb and the verb holder for you.
+Using it is very simple:
+USER_VERB(verb_path, R_PERM, "Name", "Description", "Admin.Category", args...)
+This sets up all of the above and also acts as syntatic sugar as a verb delcaration for the verb itself.
+Note that the verb args have an injected client/user argument that is the user that called the verb.
+Do not use usr in your verb; technically you can but I'll kill you.
Used for verbs you do not want to show up in the master verb panel.
Define Details
USER_VERB_CUSTOM_EXIST_CHECK
Used to define a special check to determine if the admin verb should exist at all. Useful for verbs such as play sound which require configuration.
USER_VERB_VISIBILITY
Used to define the visibility flag of the verb. If the admin does not have this flag enabled they will not see the verb.
VERB_CATEGORY_HIDDEN
Used for verbs you do not want to show up in the master verb panel.
VERB_NO_DESCRIPTION
Use this to mark your verb as not having a description. Should ONLY be used if you are also hiding the verb!
_USER_VERB
This is the only macro you should use to define admin verbs.
+It will define the verb and the verb holder for you.
+Using it is very simple:
+USER_VERB(verb_path, R_PERM, "Name", "Description", "Admin.Category", args...)
+This sets up all of the above and also acts as syntatic sugar as a verb delcaration for the verb itself.
+Note that the verb args have an injected client/user argument that is the user that called the verb.
+Do not use usr in your verb; technically you can but I'll kill you.
\ No newline at end of file
diff --git a/code/__DEFINES/vehicle_defines.html b/code/__DEFINES/vehicle_defines.html
new file mode 100644
index 00000000000..d87e89f91ca
--- /dev/null
+++ b/code/__DEFINES/vehicle_defines.html
@@ -0,0 +1,11 @@
+code/__DEFINES/vehicle_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Broken down, here's what this does:
+divides the world icon_size (32) by delay divided by ticklag to get the number of pixels something should be moving each tick.
+The division result is given a min value of 1 to prevent obscenely slow glide sizes from being set
+Then that's multiplied by the global glide size multiplier. 1.25 by default feels pretty close to spot on. This is just to try to get byond to behave.
+The whole result is then clamped to within the range above.
+Not very readable but it works
Similar to DELAY_TO_GLIDE_SIZE, except without the clamping, and it supports piping in an unrelated scalar
Define Details
CAN_KIDNAP
Will this car kidnap people by ramming into them?
DELAY_TO_GLIDE_SIZE
Broken down, here's what this does:
+divides the world icon_size (32) by delay divided by ticklag to get the number of pixels something should be moving each tick.
+The division result is given a min value of 1 to prevent obscenely slow glide sizes from being set
+Then that's multiplied by the global glide size multiplier. 1.25 by default feels pretty close to spot on. This is just to try to get byond to behave.
+The whole result is then clamped to within the range above.
+Not very readable but it works
FULL_MECHA_CONTROL
ez define for giving a single pilot mech all the flags it needs.
MOVEMENT_ADJUSTED_GLIDE_SIZE
Similar to DELAY_TO_GLIDE_SIZE, except without the clamping, and it supports piping in an unrelated scalar
RIDER_CARBON_OR_SILICON_NO_LARGE_MOBS
Do we need a carbon, a silicon, or a small mob, to ride the vehicle?
RIDER_NEEDS_ARMS
Does our vehicle require arms to operate? Also used for piggybacking on humans to reserve arms on the rider
RIDER_NEEDS_LEGS
Do we need legs to ride this (checks against TRAIT_FLOORED)
RIDING_OFFSET_ALL
The vehicle being ridden requires pixel offsets for all directions
UNBUCKLE_DISABLED_RIDER
If the rider is disabled or loses their needed limbs, do they fall off?
VEHICLE_CONTROL_DRIVE
controls the vehicles movement
VEHICLE_CONTROL_EQUIPMENT
using equipment/weapons on the vehicle
VEHICLE_CONTROL_KIDNAPPED
Can't leave vehicle voluntarily, has to resist.
VEHICLE_CONTROL_MELEE
melee attacks/shoves a vehicle may have
VEHICLE_CONTROL_SETTINGS
changing around settings and the like.
\ No newline at end of file
diff --git a/code/__DEFINES/verb_manager.html b/code/__DEFINES/verb_manager.html
new file mode 100644
index 00000000000..74af1e2ab32
--- /dev/null
+++ b/code/__DEFINES/verb_manager.html
@@ -0,0 +1,23 @@
+code/__DEFINES/verb_manager.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
verb queuing thresholds. remember that since verbs execute after SendMaps the player wont see the effects of the verbs on the game world
+until SendMaps executes next tick, and then when that later update reaches them. thus most player input has a minimum latency of world.tick_lag + player ping.
+however thats only for the visual effect of player input, when a verb processes the actual latency of game state changes or semantic latency is effectively 1/2 player ping,
+unless that verb is queued for the next tick in which case its some number probably smaller than world.tick_lag.
+so some verbs that represent player input are important enough that we only introduce semantic latency if we absolutely need to.
+its for this reason why player clicks are handled in SSinput before even movement - semantic latency could cause someone to move out of range
+when the verb finally processes but it was in range if the verb had processed immediately and overtimed.
+queuing tick_usage threshold for verbs that are high enough priority that they only queue if the server is overtiming.
+ONLY use for critical verbs
attempt to queue this verb process if the server is overloaded. evaluates to FALSE if queuing isnt necessary or if it failed.
+_verification_args... are only necessary if the verb_manager subsystem youre using checks them in can_queue_verb()
+if you put anything in _verification_args that ISNT explicitely put in the can_queue_verb() override of the subsystem youre using,
+it will runtime.
queue wrapper for TRY_QUEUE_VERB() when you want to call the proc if the server isnt overloaded enough to queue
Define Details
QUEUE_OR_CALL_VERB
queue wrapper for TRY_QUEUE_VERB() when you want to call the proc if the server isnt overloaded enough to queue
TRY_QUEUE_VERB
attempt to queue this verb process if the server is overloaded. evaluates to FALSE if queuing isnt necessary or if it failed.
+_verification_args... are only necessary if the verb_manager subsystem youre using checks them in can_queue_verb()
+if you put anything in _verification_args that ISNT explicitely put in the can_queue_verb() override of the subsystem youre using,
+it will runtime.
VERB_DEFAULT_QUEUE_THRESHOLD
default queuing tick_usage threshold for most verbs which can allow a small amount of latency to be processed in the next tick
VERB_HIGH_PRIORITY_QUEUE_THRESHOLD
queuing tick_usage threshold for verbs that need lower latency more than most verbs.
VERB_OVERTIME_QUEUE_THRESHOLD
verb queuing thresholds. remember that since verbs execute after SendMaps the player wont see the effects of the verbs on the game world
+until SendMaps executes next tick, and then when that later update reaches them. thus most player input has a minimum latency of world.tick_lag + player ping.
+however thats only for the visual effect of player input, when a verb processes the actual latency of game state changes or semantic latency is effectively 1/2 player ping,
+unless that verb is queued for the next tick in which case its some number probably smaller than world.tick_lag.
+so some verbs that represent player input are important enough that we only introduce semantic latency if we absolutely need to.
+its for this reason why player clicks are handled in SSinput before even movement - semantic latency could cause someone to move out of range
+when the verb finally processes but it was in range if the verb had processed immediately and overtimed.
+queuing tick_usage threshold for verbs that are high enough priority that they only queue if the server is overtiming.
+ONLY use for critical verbs
\ No newline at end of file
diff --git a/code/__DEFINES/zoom.html b/code/__DEFINES/zoom.html
new file mode 100644
index 00000000000..25ba5c6f77f
--- /dev/null
+++ b/code/__DEFINES/zoom.html
@@ -0,0 +1,3 @@
+code/__DEFINES/zoom.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Activated by clicking an item action button specified by the item_action_type var.
Define Details
ZOOM_METHOD_ITEM_ACTION
Activated by clicking an item action button specified by the item_action_type var.
ZOOM_METHOD_WIELD
How the scope component is toggled.
+Wielding the object with both hands toggles the zoom. Requires the two-handed component to work.
\ No newline at end of file
diff --git a/code/__HELPERS/api.html b/code/__HELPERS/api.html
new file mode 100644
index 00000000000..0171117bc8e
--- /dev/null
+++ b/code/__HELPERS/api.html
@@ -0,0 +1 @@
+code/__HELPERS/api.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/__HELPERS/atom_helpers.html b/code/__HELPERS/atom_helpers.html
new file mode 100644
index 00000000000..c49605bd59d
--- /dev/null
+++ b/code/__HELPERS/atom_helpers.html
@@ -0,0 +1,2 @@
+code/__HELPERS/atom_helpers.dm - Space Station 13Space Station 13 - Modules - Types
A datum storing information about attacks an atom has received.
+Only contains attacker name/ckey right now but could be expanded.
\ No newline at end of file
diff --git a/code/__HELPERS/basic_ai.html b/code/__HELPERS/basic_ai.html
new file mode 100644
index 00000000000..9267d5c715b
--- /dev/null
+++ b/code/__HELPERS/basic_ai.html
@@ -0,0 +1 @@
+code/__HELPERS/basic_ai.dm - Space Station 13Space Station 13 - Modules - Types
Returns either the best weapon from the given choices or null if held weapons are better
\ No newline at end of file
diff --git a/code/__HELPERS/bitflag_lists.html b/code/__HELPERS/bitflag_lists.html
new file mode 100644
index 00000000000..d1d793d7bf3
--- /dev/null
+++ b/code/__HELPERS/bitflag_lists.html
@@ -0,0 +1,9 @@
+code/__HELPERS/bitflag_lists.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
System for storing bitflags past the 24 limit, making use of an associative list.
Define Details
SET_BITFLAG_LIST
System for storing bitflags past the 24 limit, making use of an associative list.
+
Macro converts a list of integers into an associative list of bitflag entries for quicker comparison.
+Example: list(0, 4, 26, 32)) => list("0" = ( (1<<0) | (1<<4) ), "1" = ( (1<<2) | (1<<8) ))
+Lists are cached into a global list of lists to avoid identical duplicates.
+This system makes value comparisons faster than pairing every element of one list with every element of the other for evaluation.
+
Arguments:
+
+
target - List of integers.
+
\ No newline at end of file
diff --git a/code/__HELPERS/cmp.html b/code/__HELPERS/cmp.html
new file mode 100644
index 00000000000..6a17dbea373
--- /dev/null
+++ b/code/__HELPERS/cmp.html
@@ -0,0 +1 @@
+code/__HELPERS/cmp.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/__HELPERS/files.html b/code/__HELPERS/files.html
new file mode 100644
index 00000000000..6299552c5aa
--- /dev/null
+++ b/code/__HELPERS/files.html
@@ -0,0 +1,2 @@
+code/__HELPERS/files.dm - Space Station 13Space Station 13 - Modules - Types
Save file as an external file then md5 it.
+Used because md5ing files stored in the rsc sometimes gives incorrect md5 results.
\ No newline at end of file
diff --git a/code/__HELPERS/game.html b/code/__HELPERS/game.html
new file mode 100644
index 00000000000..bdfde9cb9e9
--- /dev/null
+++ b/code/__HELPERS/game.html
@@ -0,0 +1 @@
+code/__HELPERS/game.dm - Space Station 13Space Station 13 - Modules - Types
Checks to see if atom/source is behind atom/target
\ No newline at end of file
diff --git a/code/__HELPERS/global_lists.html b/code/__HELPERS/global_lists.html
new file mode 100644
index 00000000000..38da8e27344
--- /dev/null
+++ b/code/__HELPERS/global_lists.html
@@ -0,0 +1 @@
+code/__HELPERS/global_lists.dm - Space Station 13Space Station 13 - Modules - Types
Initialises all of /datum/reagent into a list indexed by reagent id.
\ No newline at end of file
diff --git a/code/__HELPERS/icon_helpers.html b/code/__HELPERS/icon_helpers.html
new file mode 100644
index 00000000000..131d4f271e8
--- /dev/null
+++ b/code/__HELPERS/icon_helpers.html
@@ -0,0 +1 @@
+code/__HELPERS/icon_helpers.dm - Space Station 13Space Station 13 - Modules - Types
Checks if the given iconstate exists in the given file, caching the result. Setting no_sprite to TRUE will print a stack trace ONCE.
\ No newline at end of file
diff --git a/code/__HELPERS/iconprocs.html b/code/__HELPERS/iconprocs.html
new file mode 100644
index 00000000000..9a7689a58e0
--- /dev/null
+++ b/code/__HELPERS/iconprocs.html
@@ -0,0 +1,11 @@
+code/__HELPERS/iconprocs.dm - Space Station 13Space Station 13 - Modules - Types
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
Converts an icon to base64. Operates by putting the icon in the iconCache savefile,
+exporting it as text, and then parsing the base64 from that.
+(This relies on byond automatically storing icons in savefiles as base64)
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 ""
Returns a list containing the width and height of an icon file
\ No newline at end of file
diff --git a/code/__HELPERS/lighting_helpers.html b/code/__HELPERS/lighting_helpers.html
new file mode 100644
index 00000000000..b1c0b87ef65
--- /dev/null
+++ b/code/__HELPERS/lighting_helpers.html
@@ -0,0 +1 @@
+code/__HELPERS/lighting_helpers.dm - Space Station 13Space Station 13 - Modules - Types
Produces a mutable appearance glued to the EMISSIVE_PLANE dyed to be the EMISSIVE_COLOR. Order of application matters: Default generated blockers are overlays, and will block its own emissive underlays. If you want an object to be both a blocker, and have their own emissive, it has to be an overlay instead. Grayscale lightmasks are visible in the BYOND right-click and Examine pane, unless they're covered up by another overlay.
\ No newline at end of file
diff --git a/code/__HELPERS/lists.html b/code/__HELPERS/lists.html
new file mode 100644
index 00000000000..2e544d89434
--- /dev/null
+++ b/code/__HELPERS/lists.html
@@ -0,0 +1,32 @@
+code/__HELPERS/lists.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Binary search sorted insert from TG
+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.
Even more custom binary search sorted insert, using defines instead of vars
+INPUT: Item to be inserted
+LIST: List to insert INPUT into
+TYPECONT: A define setting the var to the typepath of the contents of the list
+COMPARE: The item to compare against, usualy the same as INPUT
+COMPARISON: A define that takes an item to compare as input, and returns their comparable value
+COMPTYPE: How should the list be compared? Either COMPARE_KEY or COMPARE_VALUE.
Picks multiple unique elements from the suplied list.
+If the given list has a length less than the amount given then it will return a list with an equal amount
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)
Ensures the length of a list is at least I, prefilling it with V if needed. if V is a proc call, it is repeated for each new index so that list() can just make a new list for each item.
takes an input_key, as text, and the list of keys already used, outputting a replacement key in the format of "[input_key] ([number_of_duplicates])" if it finds a duplicate
+use this for lists of things that might have the same name, like mobs or objects, that you plan on giving to a player as input
Given a list, return a copy where values without defined weights are given weight 1.
+For example, fill_with_ones(list(A, B=2, C)) = list(A=1, B=2, C=1)
+Useful for weighted random choices (loot tables, syllables in languages, etc.)
If the provided key -> list is empty, remove it from the list
BINARY_INSERT_DEFINE
Even more custom binary search sorted insert, using defines instead of vars
+INPUT: Item to be inserted
+LIST: List to insert INPUT into
+TYPECONT: A define setting the var to the typepath of the contents of the list
+COMPARE: The item to compare against, usualy the same as INPUT
+COMPARISON: A define that takes an item to compare as input, and returns their comparable value
+COMPTYPE: How should the list be compared? Either COMPARE_KEY or COMPARE_VALUE.
BINARY_INSERT_TG
Binary search sorted insert from TG
+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
ISINDEXSAFE
Returns whether a numerical index is within a given list's bounds. Faster than isnull(LAZYACCESS(L, I)).
LAZYACCESS
returns L[I] if L exists and I is a valid index of L, runtimes if L is not a list
LAZYACCESSASSOC
Accesses an associative list, returns null if nothing is found
LAZYADD
Add an item to the list, if the list is null it will initialize it
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)
LAZYCLEARLIST
Removes all elements from the list
LAZYCOPY
Use LAZYLISTDUPLICATE instead if you want it to null with no entries
LAZYDISTINCTADD
Adds I to L, initializing L if necessary, if I is not already in L
LAZYIN
If the lazy list is currently initialized find item I in list L
LAZYINITLIST
Initialize the lazylist
LAZYLEN
Returns the length of L
LAZYLISTDUPLICATE
Like LAZYCOPY - copies an input list if the list has entries, If it doesn't the assigned list is nulled
LAZYNULL
Sets a list to null
LAZYOR
Add an item to the list if not already present, if the list is null it will initialize it
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.
LAZYREMOVE
Remove an item from the list, set the list to null if empty
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
LAZYSET
Sets the item K to the value V, if the list is null it will initialize it
LAZYSETLEN
Sets the length of a lazylist
LISTASSERTLEN
Ensures the length of a list is at least I, prefilling it with V if needed. if V is a proc call, it is repeated for each new index so that list() can just make a new list for each item.
LIST_VALUE_WRAP_LISTS
If value is a list, wrap it in a list so it can be used with list add/remove operations
QDEL_LAZYLIST
Qdel every item in the list before setting the list to null
UNSETEMPTY
If the provided list is empty, set it to null
UNTYPED_LIST_ADD
Add an untyped item to a list, taking care to handle list items by wrapping them in a list to remove the footgun
\ No newline at end of file
diff --git a/code/__HELPERS/matrices.html b/code/__HELPERS/matrices.html
new file mode 100644
index 00000000000..133028940b6
--- /dev/null
+++ b/code/__HELPERS/matrices.html
@@ -0,0 +1 @@
+code/__HELPERS/matrices.dm - Space Station 13Space Station 13 - Modules - Types
A color matrix allows us to set the color of an atom in a list form, thus allowing us to change color in more flexible ways. For example, we can set the brightness and contrast of the bloom and exposure of lamps
\ No newline at end of file
diff --git a/code/__HELPERS/mob_helpers.html b/code/__HELPERS/mob_helpers.html
new file mode 100644
index 00000000000..d9b0bcc24b8
--- /dev/null
+++ b/code/__HELPERS/mob_helpers.html
@@ -0,0 +1,2 @@
+code/__HELPERS/mob_helpers.dm - Space Station 13Space Station 13 - Modules - Types
rounds value to limited symbols after the period for organ damage and other values
\ No newline at end of file
diff --git a/code/__HELPERS/name_helpers.html b/code/__HELPERS/name_helpers.html
new file mode 100644
index 00000000000..879fa04406e
--- /dev/null
+++ b/code/__HELPERS/name_helpers.html
@@ -0,0 +1 @@
+code/__HELPERS/name_helpers.dm - Space Station 13Space Station 13 - Modules - Types
Find the last name of a mob from a passed string with regex
\ No newline at end of file
diff --git a/code/__HELPERS/paths/jps.html b/code/__HELPERS/paths/jps.html
new file mode 100644
index 00000000000..31ba90175d3
--- /dev/null
+++ b/code/__HELPERS/paths/jps.html
@@ -0,0 +1,9 @@
+code/__HELPERS/paths/jps.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
This file contains the stuff you need for using JPS (Jump Point Search) pathing, an alternative to A* that skips
+over large numbers of uninteresting tiles resulting in much quicker pathfinding solutions. Mind that diagonals
+cost the same as cardinal moves currently, so paths may look a bit strange, but should still be optimal.
+A helper macro for JPS, for telling when a node has forced neighbors that need expanding
+Only usable in the context of the jps datum because of the datum vars it relies on
The JPS Node datum represents a turf that we find interesting enough to add to the open list and possibly search for new tiles from
Define Details
STEP_NOT_HERE_BUT_THERE
This file contains the stuff you need for using JPS (Jump Point Search) pathing, an alternative to A* that skips
+over large numbers of uninteresting tiles resulting in much quicker pathfinding solutions. Mind that diagonals
+cost the same as cardinal moves currently, so paths may look a bit strange, but should still be optimal.
+A helper macro for JPS, for telling when a node has forced neighbors that need expanding
+Only usable in the context of the jps datum because of the datum vars it relies on
\ No newline at end of file
diff --git a/code/__HELPERS/paths/path.html b/code/__HELPERS/paths/path.html
new file mode 100644
index 00000000000..35f18077cb1
--- /dev/null
+++ b/code/__HELPERS/paths/path.html
@@ -0,0 +1,8 @@
+code/__HELPERS/paths/path.dm - Space Station 13Space Station 13 - Modules - Types
This is the proc you use whenever you want to have pathfinding more complex than "try stepping towards the thing".
+If no path was found, returns an empty list, which is important for bots like medibots who expect an empty list rather than nothing.
+It will yield until a path is returned, using magic
POTENTIALLY cheaper version of get_path_to
+This proc generates a path map for the end atom's turf, which allows us to cheaply do pathing operations "at" it
+Generation is significantly SLOWER then get_path_to, but if many things are/might be pathing at something then it is much faster
+Runs the risk of returning an suboptimal or INVALID PATH if the delay between map creation and use is too long
Uses funny pass by reference bullshit to take the output created by pathfinding, and insert it into a return list
+We'll be able to use this return list to tell a sleeping proc to continue execution
Holds all information about what an atom can move through
+Passed into CanPathfindPass to provide context for a pathing attempt
\ No newline at end of file
diff --git a/code/__HELPERS/paths/sssp.html b/code/__HELPERS/paths/sssp.html
new file mode 100644
index 00000000000..8fe8e362e5f
--- /dev/null
+++ b/code/__HELPERS/paths/sssp.html
@@ -0,0 +1,2 @@
+code/__HELPERS/paths/sssp.dm - Space Station 13Space Station 13 - Modules - Types
Single source shortest path
+Generates a flow map of a reachable turf -> the turf next closest to the map's center
\ No newline at end of file
diff --git a/code/__HELPERS/paths/ventcrawl_path.html b/code/__HELPERS/paths/ventcrawl_path.html
new file mode 100644
index 00000000000..c4abdff9767
--- /dev/null
+++ b/code/__HELPERS/paths/ventcrawl_path.html
@@ -0,0 +1 @@
+code/__HELPERS/paths/ventcrawl_path.dm - Space Station 13Space Station 13 - Modules - Types
Basic A-star implementation (I think), for pathfinding through vents.
\ No newline at end of file
diff --git a/code/__HELPERS/radiation_helpers.html b/code/__HELPERS/radiation_helpers.html
new file mode 100644
index 00000000000..e56cace8740
--- /dev/null
+++ b/code/__HELPERS/radiation_helpers.html
@@ -0,0 +1,3 @@
+code/__HELPERS/radiation_helpers.dm - Space Station 13Space Station 13 - Modules - Types
A special GetAllContents that doesn't search past things with rad insulation
+Components which return COMPONENT_BLOCK_RADIATION prevent further searching into that object's contents. The object itself will get returned still.
+The ignore list makes those objects never return at all
Contaminate the contents of a target(single instance)
\ No newline at end of file
diff --git a/code/__HELPERS/screen_objs.html b/code/__HELPERS/screen_objs.html
new file mode 100644
index 00000000000..0ceff51032c
--- /dev/null
+++ b/code/__HELPERS/screen_objs.html
@@ -0,0 +1,7 @@
+code/__HELPERS/screen_objs.dm - Space Station 13Space Station 13 - Modules - Types
Takes a screen loc string in the format
+"+-left-offset:+-pixel,+-bottom-offset:+-pixel"
+Where the :pixel is optional, and returns
+A list in the format (x_offset, y_offset)
+We require context to get info out of screen locs that contain relative info, so NORTH, SOUTH, etc
Takes a list in the form (x_offset, y_offset)
+And converts it to a screen loc string
+Accepts an optional view string/size to force the screen_loc around, so it can't go out of scope
Gets the location of an object on a client's screen. Thanks to Kaioken on BYOND forums.
\ No newline at end of file
diff --git a/code/__HELPERS/spatial_info.html b/code/__HELPERS/spatial_info.html
new file mode 100644
index 00000000000..2a85245b571
--- /dev/null
+++ b/code/__HELPERS/spatial_info.html
@@ -0,0 +1,8 @@
+code/__HELPERS/spatial_info.dm - Space Station 13Space Station 13 - Modules - Types
returns every hearaing movable in view to the turf of source not taking into account lighting
+useful when you need to maintain always being able to hear something if a sound is emitted from it and you can see it (and youre in range).
+otherwise this is just a more expensive version of get_hearers_in_LOS().
The exact same as get_hearers_in_view, but not limited by visibility. Does no filtering for traits, line of sight, or any other such criteria.
+Filtering is intended to be done by whatever calls this function.
Returns a list of movable atoms that are hearing sensitive in view_radius and line of sight to source
+the majority of the work is passed off to the spatial grid if view_radius > 0
+because view() isnt a raycasting algorithm, this does not hold symmetry to it. something in view might not be hearable with this.
+if you want that use get_hearers_in_view() - however thats significantly more expensive
Behaves like the orange() proc, but only looks in the outer range of the function (The "peel" of the orange).
+This is useful for things like checking if a mob is in a certain range, but not within a smaller range.
check if 2 diagonal turfs are blocked by dense objects
\ No newline at end of file
diff --git a/code/__HELPERS/string_assoc_lists.html b/code/__HELPERS/string_assoc_lists.html
new file mode 100644
index 00000000000..e890b4dc427
--- /dev/null
+++ b/code/__HELPERS/string_assoc_lists.html
@@ -0,0 +1 @@
+code/__HELPERS/string_assoc_lists.dm - Space Station 13Space Station 13 - Modules - Types
Caches lists with non-numeric stringify-able values (text or typepath).
\ No newline at end of file
diff --git a/code/__HELPERS/text.html b/code/__HELPERS/text.html
new file mode 100644
index 00000000000..e3d80d28e32
--- /dev/null
+++ b/code/__HELPERS/text.html
@@ -0,0 +1,2 @@
+code/__HELPERS/text.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/__HELPERS/time.html b/code/__HELPERS/time.html
new file mode 100644
index 00000000000..bcbc40cad8d
--- /dev/null
+++ b/code/__HELPERS/time.html
@@ -0,0 +1,2 @@
+code/__HELPERS/time.dm - Space Station 13Space Station 13 - Modules - Types
Take a value in seconds and makes it display like a clock (h:mm:ss)
\ No newline at end of file
diff --git a/code/__HELPERS/trait_helpers.html b/code/__HELPERS/trait_helpers.html
new file mode 100644
index 00000000000..4398aacf4d0
--- /dev/null
+++ b/code/__HELPERS/trait_helpers.html
@@ -0,0 +1,30 @@
+code/__HELPERS/trait_helpers.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
used for dead mobs that are observing, but should not be afforded all the same platitudes as full ghosts.
+This is a mind trait because ghosts can be frequently deleted and we want to be sure this sticks.
Prevent mobs on the turf from being affected by anything below that turf, such as a pulse demon going under it. Added by a /obj/structure with creates_cover set to TRUE
Prevents seeing this item on examine when on a mob, or seeing it in the strip menu. It's like ABSTRACT, without making the item fail to interact in several ways. The item can still be stripped however, combine with no_strip unless you have a reason not to.
Proc wrapper of remove_trait. You should only use this for callback. Otherwise, use the macro.
Define Details
ADD_TRAIT
Adds a status trait to the target datum.
+
Arguments: (All Required)
+
+
target - The datum to add the trait to.
+
trait - The trait which is being added.
+
source - The source of the trait which is being added.
+
ELEMENT_TRAIT
Trait applied by element
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
HAS_MIND_TRAIT
A simple helper for checking traits in a mob's mind
MENTOR_OBSERVING
Mentor observing
PACK_RAT_WRAP_SPEEDUP
How much faster pack rats are in wrapping packages as a percentage
REMOVE_TRAIT
Removes a status trait from a target datum.
+
ROUNDSTART_TRAIT traits can't be removed without being specified in sources.
+Arguments:
+
+
target - The datum to remove the trait from.
+
trait - The trait which is being removed.
+
sources - If specified, only remove the trait if it is from this source. (Lists Supported)
+
REMOVE_TRAITS_IN
Removes all status traits from a target datum which were added by sources.
+
Arguments:
+
+
target - The datum to remove the traits from.
+
sources - The trait source which is being searched for.
+
REMOVE_TRAITS_NOT_IN
Removes all status traits from a target datum which were NOT added by sources.
+
Arguments:
+
+
target - The datum to remove the traits from.
+
sources - The trait source which is being searched for.
+
STATION_TRAIT_BANANIUM_SHIPMENTS
Traits given by station traits
TRAIT_ABSORB_RADS
Given to items that have something that absorbs radiation in them that is neither the item or in it's contents
TRAIT_ACTIVE_STORAGE
every object that is currently the active storage of some client mob has this trait
TRAIT_ADJACENCY_TRANSPARENT
An /obj that should not increase the "depth" of the search for adjacency,
+e.g. a storage container or a modsuit.
TRAIT_ADVANCED_SURGICAL
An advanced surgical tool. If a surgical tool has this flag, it will be able to automatically repeat steps until they succeed.
TRAIT_AI_PAUSED
Trait that prevents AI controllers from planning detached from ai_status to prevent weird state stuff.
TRAIT_ALLOW_HERETIC_CASTING
Allows heretics to cast their spells.
TRAIT_ANTIMAGIC
This mob is antimagic, and immune to spells / cannot cast spells
TRAIT_ANTIMAGIC_NO_SELFBLOCK
This allows a person who has antimagic to cast spells without getting blocked
TRAIT_ANTI_VIRAL
A wearable item that protects the covered areas from viral infection
TRAIT_BATON_RESISTANCE
This trait makes you immune to baton knockdown.
TRAIT_BEING_BLADE_SHIELDED
Used to prevent multiple floating blades from triggering over the same target
TRAIT_BLUESPACE_SPEED
Removes slowdown while walking on these tiles.
TRAIT_BUTCHER
Allows faster butchering times
TRAIT_CANNOT_PULL
Inability to pull things.
TRAIT_CAN_POINT_WITH
An item that can be pointed at mobs, while on non-help intent.
TRAIT_COFFEE_SNOB
Allows user to drink coffee to point rapidly to get others to do what you want
TRAIT_CORPSE_RESIST
user wont vomit around corpses
TRAIT_CRAFTY
user can craft things from the crafting menu in 1/4 time
TRAIT_CURRENTLY_Z_MOVING
A trait for determining if a atom/movable is currently crossing into another z-level by using of /turf/space z-level "destination-xyz" transfers
TRAIT_CYBORG_SPECIALIST
allows the user to quick-charge borgs by using a battery on them
TRAIT_DODGE_ALL_OBJECTS
Allows a mob to dodge all thrown objects
TRAIT_ELECTRICAL_SPECIALIST
Allows user to to quick-repair unlocked APCs with a frame and board, and quick-swap cells.alist
TRAIT_FIRE_FIGHTER
Allows user to spray extinguishers further, and gives precisions = 1 during spray
TRAIT_FLOORED
Prevents voluntary standing or staying up on its own.
TRAIT_FRAIL
QUIRK TRAITS
TRAIT_GENETIC_BUDGET
User is alloted a higher genetics budget
TRAIT_GERMOPHOBE
Grants a 85% chance to NOT catch a disease when contract() is called. You'll probably still catch it though with exposure
TRAIT_GREEN_THUMB
Allows user to pick weeds with their bare hands
TRAIT_HANDS_BLOCKED
Prevents usage of manipulation appendages (picking, holding or using items, manipulating storage).
TRAIT_HEARING_SENSITIVE
every hearing sensitive atom has this trait
TRAIT_HIDE_EXAMINE
Forbids running broadcast_examine() in examinate().
TRAIT_HYPOTHERMIC
Trait for when you can no longer gain body heat
TRAIT_IMMOBILIZED
Prevents voluntary movement.
TRAIT_IN_CALL
Whether or not the user is in a MODlink call, prevents making more calls
TRAIT_ITEM_ACTIVE
Makes an item active, this is generally used by energy based weapons or toggle based items.
TRAIT_I_WANT_BRAINS_ORGAN
A general trait for tracking whether a zombie owned the organ or limb
TRAIT_JANITOR
Allows user to use mops faster, and have galoshes slow less
TRAIT_JUDICIAL
Gives the user a new tab for being able to open up space law/sop book pages
TRAIT_KNOCKEDOUT
Forces the user to stay unconscious.
TRAIT_LIVING_HEART
Designates a heart as a living heart for a heretic.
TRAIT_LOUD
Does this person produce loud runechat
TRAIT_MANSUS_TOUCHED
Trait given to anything linked to, not necessarily allied to, the mansus
TRAIT_MED_EXAMINE
allows user to do_after to give bone and IB locations
TRAIT_MENTOR_OBSERVING
used for dead mobs that are observing, but should not be afforded all the same platitudes as full ghosts.
+This is a mind trait because ghosts can be frequently deleted and we want to be sure this sticks.
TRAIT_MOB_BREEDER
trait determines if this mob can breed given by /datum/component/breeding
TRAIT_MOB_EATER
Trait given to mobs that have the basic eating element
TRAIT_MOB_TIPPED
Trait given when a mob has been tipped
TRAIT_NO_BREAK_GLASS_TABLES
A trait for items that will not break glass tables if the user is buckled to them.
TRAIT_NO_STRIP
Prevents stripping this equipment or seeing it in the strip menu
TRAIT_NO_THROWN_MESSAGE
Makes the item no longer spit out a visible message when thrown
TRAIT_NO_WORN_ICON
Items with this trait will not have their worn icon overlayed.
TRAIT_OBSCURED_WIRES
Wires on this will have their titles randomized for those with SHOW_WIRES
TRAIT_OIL_SLICKED
An item that is oiled. If sprayed with water, it's slowdown reverts to normal.
TRAIT_ORGAN_INSERTED_WHILE_DEAD
An organ that was inserted into a dead mob, that has not been revived yet
TRAIT_PACK_RAT
allows the user to stuff more items in lockers/crates and wrap them faster
TRAIT_QUICK_HEATER
user will take 25% less tox damage
TRAIT_RECENTLY_BLOCKED_MAGIC
This mob recently blocked magic with some form of antimagic
TRAIT_RELAYING_ATTACKER
Trait given by /datum/element/relay_attacker
TRAIT_RESTRAINED
Abstract condition that prevents movement if being pulled and might be resisted against. Handcuffs and straight jackets, basically.
TRAIT_SHOW_WIRE_INFO
Show what machine/door wires do when held.
TRAIT_SILENT_INSERTION
Makes the item not display a message on storage insertion
TRAIT_SKIP_EXAMINE
Prevents seeing this item on examine when on a mob, or seeing it in the strip menu. It's like ABSTRACT, without making the item fail to interact in several ways. The item can still be stripped however, combine with no_strip unless you have a reason not to.
TRAIT_SMITH
Allows the user to ????
TRAIT_SPEED_DEMON
user can drive the ambulance cart to push people out of the way
TRAIT_SPINNING_WEB_TURF
A web is being spun on this turf presently
TRAIT_SUBTREE_REQUIRED_OPERATIONAL_DATUM
Trait applied to a mob when it gets a required "operational datum" (components/elements). Sends out the source as the type of the element.
TRAIT_SUPERMATTER_IMMUNE
Immune to the SM / makes you immune to it when worn
TRAIT_SURGICAL
A surgical tool; when in hand in help intent (and with a surgery in progress) won't attack the user
TRAIT_SURGICAL_CANNOT_FAIL
Surgical tools with this trait have their prob_success set to 100 (but is still able to fail from other factors)
TRAIT_SURGICAL_OPEN_HAND
A surgical tool; If a surgical tool has this flag it can be used as an alternative to an open hand in surgery
TRAIT_SWARMER_CONSTRUCTION
A swarmer construct is being built here
TRAIT_SWARMER_DISINTEGRATING
A swarmer is deconstructing this already
TRAIT_TURF_COVERED
Prevent mobs on the turf from being affected by anything below that turf, such as a pulse demon going under it. Added by a /obj/structure with creates_cover set to TRUE
TRAIT_UI_BLOCKED
Inability to access UI hud elements.
TRAIT_WAS_SACRIFICED
Added to those who have been sacrificed.
TRAIT_WIELDED
An item that is being wielded.
UNIQUE_TRAIT_SOURCE
Gives a unique trait source for any given datum
\ No newline at end of file
diff --git a/code/__HELPERS/type2type.html b/code/__HELPERS/type2type.html
new file mode 100644
index 00000000000..51b97a4d1b4
--- /dev/null
+++ b/code/__HELPERS/type2type.html
@@ -0,0 +1 @@
+code/__HELPERS/type2type.dm - Space Station 13Space Station 13 - Modules - Types
Turns a Body_parts_covered bitfield into a list of organ/limb names.
\ No newline at end of file
diff --git a/code/__HELPERS/unique_ids.html b/code/__HELPERS/unique_ids.html
new file mode 100644
index 00000000000..599ab202fa8
--- /dev/null
+++ b/code/__HELPERS/unique_ids.html
@@ -0,0 +1 @@
+code/__HELPERS/unique_ids.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/__HELPERS/unsorted.html b/code/__HELPERS/unsorted.html
new file mode 100644
index 00000000000..2e48578840b
--- /dev/null
+++ b/code/__HELPERS/unsorted.html
@@ -0,0 +1,3 @@
+code/__HELPERS/unsorted.dm - Space Station 13Space Station 13 - Modules - Types
This proc takes a list of types, and returns them in the format below.
+[type] = amount of type in list.
+Useful for recipes.
\ No newline at end of file
diff --git a/code/__HELPERS/verb_helpers.html b/code/__HELPERS/verb_helpers.html
new file mode 100644
index 00000000000..baf5b53ca56
--- /dev/null
+++ b/code/__HELPERS/verb_helpers.html
@@ -0,0 +1 @@
+code/__HELPERS/verb_helpers.dm - Space Station 13Space Station 13 - Modules - Types
handles removing verb and sending it to browser to update, use this for removing verbs
\ No newline at end of file
diff --git a/code/_compile_options.html b/code/_compile_options.html
new file mode 100644
index 00000000000..c97cc334ba4
--- /dev/null
+++ b/code/_compile_options.html
@@ -0,0 +1,2 @@
+code/_compile_options.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/_globalvars/bitfields.html b/code/_globalvars/bitfields.html
new file mode 100644
index 00000000000..edd1df85d84
--- /dev/null
+++ b/code/_globalvars/bitfields.html
@@ -0,0 +1 @@
+code/_globalvars/bitfields.dm - Space Station 13Space Station 13 - Modules - Types
Turns /datum/bitfield subtypes into a list for use in debugging
\ No newline at end of file
diff --git a/code/_onclick/click_override.html b/code/_onclick/click_override.html
new file mode 100644
index 00000000000..5a10785ce6a
--- /dev/null
+++ b/code/_onclick/click_override.html
@@ -0,0 +1,2 @@
+code/_onclick/click_override.dm - Space Station 13Space Station 13 - Modules - Types
Middle click override which accepts a callback as an arugment in the New() proc.
+When the living mob that has this datum middle-clicks or alt-clicks on something, the callback will be invoked.
\ No newline at end of file
diff --git a/code/_onclick/hud/action_button.html b/code/_onclick/hud/action_button.html
new file mode 100644
index 00000000000..bd4f9f5e0a2
--- /dev/null
+++ b/code/_onclick/hud/action_button.html
@@ -0,0 +1 @@
+code/_onclick/hud/action_button.dm - Space Station 13Space Station 13 - Modules - Types
Exists so you have a place to put your buttons when you move them around
\ No newline at end of file
diff --git a/code/_onclick/hud/alert.html b/code/_onclick/hud/alert.html
new file mode 100644
index 00000000000..4d98fb7f5fc
--- /dev/null
+++ b/code/_onclick/hud/alert.html
@@ -0,0 +1 @@
+code/_onclick/hud/alert.dm - Space Station 13Space Station 13 - Modules - Types
Gives the player the option to succumb while in critical condition
\ No newline at end of file
diff --git a/code/_onclick/hud/follow_alert.html b/code/_onclick/hud/follow_alert.html
new file mode 100644
index 00000000000..f784aadd30a
--- /dev/null
+++ b/code/_onclick/hud/follow_alert.html
@@ -0,0 +1,2 @@
+code/_onclick/hud/follow_alert.dm - Space Station 13Space Station 13 - Modules - Types
Meteor alert.
+Appears during a meteor storm and allows for auto-following of debris.
\ No newline at end of file
diff --git a/code/_onclick/hud/fullscreen.html b/code/_onclick/hud/fullscreen.html
new file mode 100644
index 00000000000..f82ea337bbd
--- /dev/null
+++ b/code/_onclick/hud/fullscreen.html
@@ -0,0 +1,3 @@
+code/_onclick/hud/fullscreen.dm - Space Station 13Space Station 13 - Modules - Types
Stretch version is suitable for images that stick to screen edges, as they scale with user screen size
+For centrally located screen objects, use /atom/movable/screen/fullscreen/center
Centered fullscreen atoms
+These are used to center a widescreen image so it scales properly across screen sizes, not suitable for screen images that eminate from the edge of the screen
\ No newline at end of file
diff --git a/code/_onclick/hud/map_popups.html b/code/_onclick/hud/map_popups.html
new file mode 100644
index 00000000000..719d56f9ee6
--- /dev/null
+++ b/code/_onclick/hud/map_popups.html
@@ -0,0 +1,4 @@
+code/_onclick/hud/map_popups.dm - Space Station 13Space Station 13 - Modules - Types
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.
\ No newline at end of file
diff --git a/code/_onclick/hud/plane_master.html b/code/_onclick/hud/plane_master.html
new file mode 100644
index 00000000000..9cad6f1f92b
--- /dev/null
+++ b/code/_onclick/hud/plane_master.html
@@ -0,0 +1 @@
+code/_onclick/hud/plane_master.dm - Space Station 13Space Station 13 - Modules - Types
Things placed on this mask the lighting plane. Doesn't render directly.
\ No newline at end of file
diff --git a/code/_onclick/hud/plane_master_controller.html b/code/_onclick/hud/plane_master_controller.html
new file mode 100644
index 00000000000..ca99a26c3cb
--- /dev/null
+++ b/code/_onclick/hud/plane_master_controller.html
@@ -0,0 +1 @@
+code/_onclick/hud/plane_master_controller.dm - Space Station 13Space Station 13 - Modules - Types
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.
\ No newline at end of file
diff --git a/code/_onclick/hud/radial.html b/code/_onclick/hud/radial.html
new file mode 100644
index 00000000000..996c1a65fc4
--- /dev/null
+++ b/code/_onclick/hud/radial.html
@@ -0,0 +1,3 @@
+code/_onclick/hud/radial.dm - Space Station 13Space Station 13 - Modules - Types
Similar to show_radial_menu, but choices is a list of atoms, for which icons will be automatically generated.
+Supports multiple items of the same name, 2 soaps will become soap (1) and soap (2) to the user.
+Otherwise, has the exact same arguments as show_radial_menu
\ No newline at end of file
diff --git a/code/controllers/configuration/__config_defines.html b/code/controllers/configuration/__config_defines.html
new file mode 100644
index 00000000000..c4ab3f40b31
--- /dev/null
+++ b/code/controllers/configuration/__config_defines.html
@@ -0,0 +1 @@
+code/controllers/configuration/__config_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Wrapper to not overwrite a variable if a list key doesnt exist. Auto casts to number, and accepts a macro argument for number maths (ds to min for example)
Wrapper to not overwrite a variable if a list key doesnt exist. Ensures target is a list.
Define Details
CONFIG_LOAD_BOOL
Wrapper to not overwrite a variable if a list key doesnt exist. Auto casts to bools.
CONFIG_LOAD_LIST
Wrapper to not overwrite a variable if a list key doesnt exist. Ensures target is a list.
CONFIG_LOAD_NUM
Wrapper to not overwrite a variable if a list key doesnt exist. Auto casts to number.
CONFIG_LOAD_NUM_MULT
Wrapper to not overwrite a variable if a list key doesnt exist. Auto casts to number, and accepts a macro argument for number maths (ds to min for example)
CONFIG_LOAD_RAW
Wrapper to not overwrite a variable if a list key doesnt exist. No casting done.
CONFIG_LOAD_STR
Wrapper to not overwrite a variable if a list key doesnt exist. Auto casts to string.
\ No newline at end of file
diff --git a/code/controllers/configuration/configuration_core.html b/code/controllers/configuration/configuration_core.html
new file mode 100644
index 00000000000..0d49aafdba8
--- /dev/null
+++ b/code/controllers/configuration/configuration_core.html
@@ -0,0 +1 @@
+code/controllers/configuration/configuration_core.dm - Space Station 13Space Station 13 - Modules - Types
Represents a base configuration datum. Has everything else bundled into it
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/admin_configuration.html b/code/controllers/configuration/sections/admin_configuration.html
new file mode 100644
index 00000000000..0c780db74a2
--- /dev/null
+++ b/code/controllers/configuration/sections/admin_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/admin_configuration.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/afk_configuration.html b/code/controllers/configuration/sections/afk_configuration.html
new file mode 100644
index 00000000000..a468e6fa4f1
--- /dev/null
+++ b/code/controllers/configuration/sections/afk_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/afk_configuration.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/custom_sprites_configuration.html b/code/controllers/configuration/sections/custom_sprites_configuration.html
new file mode 100644
index 00000000000..50119ab0b85
--- /dev/null
+++ b/code/controllers/configuration/sections/custom_sprites_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/custom_sprites_configuration.dm - Space Station 13Space Station 13 - Modules - Types
Config holder for all things regarding custom sprites
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/database_configuration.html b/code/controllers/configuration/sections/database_configuration.html
new file mode 100644
index 00000000000..e817945b9bf
--- /dev/null
+++ b/code/controllers/configuration/sections/database_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/database_configuration.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/discord_configuration.html b/code/controllers/configuration/sections/discord_configuration.html
new file mode 100644
index 00000000000..5488dfd1a8a
--- /dev/null
+++ b/code/controllers/configuration/sections/discord_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/discord_configuration.dm - Space Station 13Space Station 13 - Modules - Types
Config holder for all things relating to discord webhooks
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/event_configuration.html b/code/controllers/configuration/sections/event_configuration.html
new file mode 100644
index 00000000000..bb6a4325950
--- /dev/null
+++ b/code/controllers/configuration/sections/event_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/event_configuration.dm - Space Station 13Space Station 13 - Modules - Types
Config holder for all stuff relating to ingame random events
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/gamemode_configuration.html b/code/controllers/configuration/sections/gamemode_configuration.html
new file mode 100644
index 00000000000..58af1f9136e
--- /dev/null
+++ b/code/controllers/configuration/sections/gamemode_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/gamemode_configuration.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/general_configuration.html b/code/controllers/configuration/sections/general_configuration.html
new file mode 100644
index 00000000000..feb65f7ab40
--- /dev/null
+++ b/code/controllers/configuration/sections/general_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/general_configuration.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/ipintel_configuration.html b/code/controllers/configuration/sections/ipintel_configuration.html
new file mode 100644
index 00000000000..73a7be917f0
--- /dev/null
+++ b/code/controllers/configuration/sections/ipintel_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/ipintel_configuration.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/job_configuration.html b/code/controllers/configuration/sections/job_configuration.html
new file mode 100644
index 00000000000..6e6a142b2d9
--- /dev/null
+++ b/code/controllers/configuration/sections/job_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/job_configuration.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/lighting_effects_configuration.html b/code/controllers/configuration/sections/lighting_effects_configuration.html
new file mode 100644
index 00000000000..4294216bb9f
--- /dev/null
+++ b/code/controllers/configuration/sections/lighting_effects_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/lighting_effects_configuration.dm - Space Station 13Space Station 13 - Modules - Types
Config holder for all ligting effect related things
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/logging_configuration.html b/code/controllers/configuration/sections/logging_configuration.html
new file mode 100644
index 00000000000..77b97faec2d
--- /dev/null
+++ b/code/controllers/configuration/sections/logging_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/logging_configuration.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/mc_configuration.html b/code/controllers/configuration/sections/mc_configuration.html
new file mode 100644
index 00000000000..abd80daeb77
--- /dev/null
+++ b/code/controllers/configuration/sections/mc_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/mc_configuration.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/metrics_configuration.html b/code/controllers/configuration/sections/metrics_configuration.html
new file mode 100644
index 00000000000..84755c8db9e
--- /dev/null
+++ b/code/controllers/configuration/sections/metrics_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/metrics_configuration.dm - Space Station 13Space Station 13 - Modules - Types
Config holder for stuff relating to metrics management
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/movement_configuration.html b/code/controllers/configuration/sections/movement_configuration.html
new file mode 100644
index 00000000000..e1a990094b9
--- /dev/null
+++ b/code/controllers/configuration/sections/movement_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/movement_configuration.dm - Space Station 13Space Station 13 - Modules - Types
Config holder for values relating to mob movement speeds
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/overflow_configuration.html b/code/controllers/configuration/sections/overflow_configuration.html
new file mode 100644
index 00000000000..57d72bbf870
--- /dev/null
+++ b/code/controllers/configuration/sections/overflow_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/overflow_configuration.dm - Space Station 13Space Station 13 - Modules - Types
Config holder for all overflow-server related things
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/redis_configuration.html b/code/controllers/configuration/sections/redis_configuration.html
new file mode 100644
index 00000000000..d200815afe3
--- /dev/null
+++ b/code/controllers/configuration/sections/redis_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/redis_configuration.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/ruin_configuration.html b/code/controllers/configuration/sections/ruin_configuration.html
new file mode 100644
index 00000000000..40980f72a0a
--- /dev/null
+++ b/code/controllers/configuration/sections/ruin_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/ruin_configuration.dm - Space Station 13Space Station 13 - Modules - Types
Config holder for all things regarding space ruins and lavaland ruins
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/system_configuration.html b/code/controllers/configuration/sections/system_configuration.html
new file mode 100644
index 00000000000..9e8492d921d
--- /dev/null
+++ b/code/controllers/configuration/sections/system_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/system_configuration.dm - Space Station 13Space Station 13 - Modules - Types
Config holder for stuff relating to server backend management and secrets
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/url_configuration.html b/code/controllers/configuration/sections/url_configuration.html
new file mode 100644
index 00000000000..3e5ed9d4798
--- /dev/null
+++ b/code/controllers/configuration/sections/url_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/url_configuration.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/configuration/sections/vote_configuration.html b/code/controllers/configuration/sections/vote_configuration.html
new file mode 100644
index 00000000000..3bb6da0ddb0
--- /dev/null
+++ b/code/controllers/configuration/sections/vote_configuration.html
@@ -0,0 +1 @@
+code/controllers/configuration/sections/vote_configuration.dm - Space Station 13Space Station 13 - Modules - Types
Config holder for stuff relating to the ingame vote system
\ No newline at end of file
diff --git a/code/controllers/failsafe.html b/code/controllers/failsafe.html
new file mode 100644
index 00000000000..37baa7002f6
--- /dev/null
+++ b/code/controllers/failsafe.html
@@ -0,0 +1 @@
+code/controllers/failsafe.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/master.html b/code/controllers/master.html
new file mode 100644
index 00000000000..4aadc471781
--- /dev/null
+++ b/code/controllers/master.html
@@ -0,0 +1 @@
+code/controllers/master.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/subsystem.html b/code/controllers/subsystem.html
new file mode 100644
index 00000000000..027ce3bdb7b
--- /dev/null
+++ b/code/controllers/subsystem.html
@@ -0,0 +1 @@
+code/controllers/subsystem.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/subsystem/SSai_controllers.html b/code/controllers/subsystem/SSai_controllers.html
new file mode 100644
index 00000000000..bcf9966a697
--- /dev/null
+++ b/code/controllers/subsystem/SSai_controllers.html
@@ -0,0 +1 @@
+code/controllers/subsystem/SSai_controllers.dm - Space Station 13Space Station 13 - Modules - Types
The subsystem used to tick /datum/ai_controllers instances. Handling the re-checking of plans.
\ No newline at end of file
diff --git a/code/controllers/subsystem/SSair.html b/code/controllers/subsystem/SSair.html
new file mode 100644
index 00000000000..866cd451848
--- /dev/null
+++ b/code/controllers/subsystem/SSair.html
@@ -0,0 +1 @@
+code/controllers/subsystem/SSair.dm - Space Station 13Space Station 13 - Modules - Types
Create a subclass of this and implement on_run to manipulate tile air safely. ONLY USE THIS VERSION IF YOU CAN'T AVOID SLEEPING; it will delay atmos ticks!
\ No newline at end of file
diff --git a/code/controllers/subsystem/SSambience.html b/code/controllers/subsystem/SSambience.html
new file mode 100644
index 00000000000..a6bd3349baf
--- /dev/null
+++ b/code/controllers/subsystem/SSambience.html
@@ -0,0 +1 @@
+code/controllers/subsystem/SSambience.dm - Space Station 13Space Station 13 - Modules - Types
The subsystem used to play ambience to users every now and then, makes them real excited.
\ No newline at end of file
diff --git a/code/controllers/subsystem/SSblackbox.html b/code/controllers/subsystem/SSblackbox.html
new file mode 100644
index 00000000000..41c14aadac4
--- /dev/null
+++ b/code/controllers/subsystem/SSblackbox.html
@@ -0,0 +1 @@
+code/controllers/subsystem/SSblackbox.dm - Space Station 13Space Station 13 - Modules - Types
Datum to hold feedback data, which gets logged at round end
\ No newline at end of file
diff --git a/code/controllers/subsystem/SSchat.html b/code/controllers/subsystem/SSchat.html
new file mode 100644
index 00000000000..8bc45edc512
--- /dev/null
+++ b/code/controllers/subsystem/SSchat.html
@@ -0,0 +1,2 @@
+code/controllers/subsystem/SSchat.dm - Space Station 13Space Station 13 - Modules - Types
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
\ No newline at end of file
diff --git a/code/controllers/subsystem/SScleanup.html b/code/controllers/subsystem/SScleanup.html
new file mode 100644
index 00000000000..4243055e559
--- /dev/null
+++ b/code/controllers/subsystem/SScleanup.html
@@ -0,0 +1 @@
+code/controllers/subsystem/SScleanup.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/subsystem/SSdbcore.html b/code/controllers/subsystem/SSdbcore.html
new file mode 100644
index 00000000000..d8c065c4cb2
--- /dev/null
+++ b/code/controllers/subsystem/SSdbcore.html
@@ -0,0 +1 @@
+code/controllers/subsystem/SSdbcore.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/subsystem/SSinput.html b/code/controllers/subsystem/SSinput.html
new file mode 100644
index 00000000000..a58fb734d85
--- /dev/null
+++ b/code/controllers/subsystem/SSinput.html
@@ -0,0 +1 @@
+code/controllers/subsystem/SSinput.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Culling occurs when a client has not pressed a key in over 60 seconds. We stop processing their inputs until they press another key down.
Define Details
AUTO_CULL_TIME
Culling occurs when a client has not pressed a key in over 60 seconds. We stop processing their inputs until they press another key down.
\ No newline at end of file
diff --git a/code/controllers/subsystem/SSping.html b/code/controllers/subsystem/SSping.html
new file mode 100644
index 00000000000..e654ae97af3
--- /dev/null
+++ b/code/controllers/subsystem/SSping.html
@@ -0,0 +1,2 @@
+code/controllers/subsystem/SSping.dm - Space Station 13Space Station 13 - Modules - Types
code/controllers/subsystem/SSping.dm
Copyright (c) 2022 Aleksej Komarov
+SPDX-License-Identifier: MIT
\ No newline at end of file
diff --git a/code/controllers/subsystem/SSshuttles.html b/code/controllers/subsystem/SSshuttles.html
new file mode 100644
index 00000000000..aaa0f160636
--- /dev/null
+++ b/code/controllers/subsystem/SSshuttles.html
@@ -0,0 +1,3 @@
+code/controllers/subsystem/SSshuttles.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
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
Define Details
MAX_TRANSIT_TILE_COUNT
How many turfs to allow before we start blocking transit requests
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
\ No newline at end of file
diff --git a/code/controllers/subsystem/SSstatpanel.html b/code/controllers/subsystem/SSstatpanel.html
new file mode 100644
index 00000000000..4d418fde3ae
--- /dev/null
+++ b/code/controllers/subsystem/SSstatpanel.html
@@ -0,0 +1,3 @@
+code/controllers/subsystem/SSstatpanel.dm - Space Station 13Space Station 13 - Modules - Types
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
\ No newline at end of file
diff --git a/code/controllers/subsystem/SStgui.html b/code/controllers/subsystem/SStgui.html
new file mode 100644
index 00000000000..fbd2f8e2f80
--- /dev/null
+++ b/code/controllers/subsystem/SStgui.html
@@ -0,0 +1 @@
+code/controllers/subsystem/SStgui.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/subsystem/SStimer.html b/code/controllers/subsystem/SStimer.html
new file mode 100644
index 00000000000..4c0e67237ba
--- /dev/null
+++ b/code/controllers/subsystem/SStimer.html
@@ -0,0 +1,3 @@
+code/controllers/subsystem/SStimer.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
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.
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
\ No newline at end of file
diff --git a/code/controllers/subsystem/SSunplanned_controllers.html b/code/controllers/subsystem/SSunplanned_controllers.html
new file mode 100644
index 00000000000..40f6a3bd58b
--- /dev/null
+++ b/code/controllers/subsystem/SSunplanned_controllers.html
@@ -0,0 +1 @@
+code/controllers/subsystem/SSunplanned_controllers.dm - Space Station 13Space Station 13 - Modules - Types
Handles making mobs perform lightweight "idle" behaviors such as wandering around when they have nothing planned
\ No newline at end of file
diff --git a/code/controllers/subsystem/SSverb_manager.html b/code/controllers/subsystem/SSverb_manager.html
new file mode 100644
index 00000000000..c64189e3f95
--- /dev/null
+++ b/code/controllers/subsystem/SSverb_manager.html
@@ -0,0 +1,3 @@
+code/controllers/subsystem/SSverb_manager.dm - Space Station 13Space Station 13 - Modules - Types
SSverb_manager, a subsystem that runs every tick and runs through its entire queue without yielding like SSinput.
+this exists because of how the byond tick works and where user inputted verbs are put within it.
queue a callback for the given verb/verblike proc and any given arguments to the specified verb subsystem, so that they process in the next tick.
+intended to only work with verbs or verblike procs called directly from client input, use as part of TRY_QUEUE_VERB() and co.
\ No newline at end of file
diff --git a/code/controllers/subsystem/SSvis_overlays.html b/code/controllers/subsystem/SSvis_overlays.html
new file mode 100644
index 00000000000..d5d99b08277
--- /dev/null
+++ b/code/controllers/subsystem/SSvis_overlays.html
@@ -0,0 +1 @@
+code/controllers/subsystem/SSvis_overlays.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/subsystem/movement/SSai_movement.html b/code/controllers/subsystem/movement/SSai_movement.html
new file mode 100644
index 00000000000..cf920e88d79
--- /dev/null
+++ b/code/controllers/subsystem/movement/SSai_movement.html
@@ -0,0 +1 @@
+code/controllers/subsystem/movement/SSai_movement.dm - Space Station 13Space Station 13 - Modules - Types
The subsystem used to tick /datum/ai_movement instances. Handling the movement of individual AI instances
\ No newline at end of file
diff --git a/code/controllers/subsystem/movement/movement_types.html b/code/controllers/subsystem/movement/movement_types.html
new file mode 100644
index 00000000000..c575af8d1ef
--- /dev/null
+++ b/code/controllers/subsystem/movement/movement_types.html
@@ -0,0 +1,5 @@
+code/controllers/subsystem/movement/movement_types.dm - Space Station 13Space Station 13 - Modules - Types
As close as you can get to a "do-nothing" move loop, the pure intention of this is to absolutely resist all and any automated movement until the move loop times out.
This isn't actually the same as walk_rand
+Because walk_rand is really more like walk_to_rand
+It appears to pick a spot outside of range, and move towards it, then pick a new spot, etc.
+I can't actually replicate this on our side, because of how bad our pathfinding is, and cause I'm not totally sure I know what it's doing.
+I can just implement a random-walk though
\ No newline at end of file
diff --git a/code/controllers/subsystem/non_firing/SSearly_assets.html b/code/controllers/subsystem/non_firing/SSearly_assets.html
new file mode 100644
index 00000000000..95754589e55
--- /dev/null
+++ b/code/controllers/subsystem/non_firing/SSearly_assets.html
@@ -0,0 +1 @@
+code/controllers/subsystem/non_firing/SSearly_assets.dm - Space Station 13Space Station 13 - Modules - Types
Initializes any assets that need to be loaded ASAP.
\ No newline at end of file
diff --git a/code/controllers/subsystem/non_firing/SSpathfinder.html b/code/controllers/subsystem/non_firing/SSpathfinder.html
new file mode 100644
index 00000000000..33afce83e2a
--- /dev/null
+++ b/code/controllers/subsystem/non_firing/SSpathfinder.html
@@ -0,0 +1 @@
+code/controllers/subsystem/non_firing/SSpathfinder.dm - Space Station 13Space Station 13 - Modules - Types
We generate a path for the passed in callbacks, and then pipe it over
\ No newline at end of file
diff --git a/code/controllers/subsystem/non_firing/SSpersistent_data.html b/code/controllers/subsystem/non_firing/SSpersistent_data.html
new file mode 100644
index 00000000000..37fb6c82675
--- /dev/null
+++ b/code/controllers/subsystem/non_firing/SSpersistent_data.html
@@ -0,0 +1 @@
+code/controllers/subsystem/non_firing/SSpersistent_data.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/controllers/subsystem/non_firing/SSspatial_grid.html b/code/controllers/subsystem/non_firing/SSspatial_grid.html
new file mode 100644
index 00000000000..f0dabf6414f
--- /dev/null
+++ b/code/controllers/subsystem/non_firing/SSspatial_grid.html
@@ -0,0 +1,5 @@
+code/controllers/subsystem/non_firing/SSspatial_grid.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
used by /datum/controller/subsystem/spatial_grid to cover every z level so that the coordinates of every turf in the world corresponds to one of these in
+the subsystems list of grid cells by z level. each one of these contains content lists holding all atoms meeting a certain criteria that is in our borders.
+these datums shouldnt have significant behavior, they should just hold data. the lists are filled and emptied by the subsystem.
the right or upper side index of a box composed of spatial grid cells with the given center x or y coordinate.
+outputted value cant exceed the number of cells on that axis
Define Details
BOUNDING_BOX_MAX
the right or upper side index of a box composed of spatial grid cells with the given center x or y coordinate.
+outputted value cant exceed the number of cells on that axis
BOUNDING_BOX_MIN
the left or bottom side index of a box composed of spatial grid cells with the given actual center x or y coordinate
NUMBER_OF_PREGENERATED_ORANGES_EARS
the subsystem creates this many /mob/oranges_ear mob instances during init. allocations that require more than this create more.
\ No newline at end of file
diff --git a/code/controllers/subsystem/processing/SSai_behaviors.html b/code/controllers/subsystem/processing/SSai_behaviors.html
new file mode 100644
index 00000000000..7fa74ab091f
--- /dev/null
+++ b/code/controllers/subsystem/processing/SSai_behaviors.html
@@ -0,0 +1,2 @@
+code/controllers/subsystem/processing/SSai_behaviors.dm - Space Station 13Space Station 13 - Modules - Types
The subsystem used to tick /datum/ai_behavior instances.
+Handling the individual actions an AI can take like punching someone in the fucking NUTS
\ No newline at end of file
diff --git a/code/datums/actions/cooldown_action.html b/code/datums/actions/cooldown_action.html
new file mode 100644
index 00000000000..7bcaa436680
--- /dev/null
+++ b/code/datums/actions/cooldown_action.html
@@ -0,0 +1 @@
+code/datums/actions/cooldown_action.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/actions/item_action.html b/code/datums/actions/item_action.html
new file mode 100644
index 00000000000..3f98eb8efcf
--- /dev/null
+++ b/code/datums/actions/item_action.html
@@ -0,0 +1 @@
+code/datums/actions/item_action.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/ai/ai_behavior.html b/code/datums/ai/ai_behavior.html
new file mode 100644
index 00000000000..c3f091a8506
--- /dev/null
+++ b/code/datums/ai/ai_behavior.html
@@ -0,0 +1 @@
+code/datums/ai/ai_behavior.dm - Space Station 13Space Station 13 - Modules - Types
Abstract class for an action an AI can take. Can range from movement to grabbing a nearby weapon.
\ No newline at end of file
diff --git a/code/datums/ai/ai_controller.html b/code/datums/ai/ai_controller.html
new file mode 100644
index 00000000000..f5a4df9b49f
--- /dev/null
+++ b/code/datums/ai/ai_controller.html
@@ -0,0 +1,13 @@
+code/datums/ai/ai_controller.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
AI controllers are a datumized form of AI that simulates the input a player
+would otherwise give to a atom. What this means is that these datums have
+ways of interacting with a specific atom and control it. They posses a
+"blackboard" with the information the AI knows and has, and will plan actions
+it will try to perform through multiple modular subtrees with behaviors.
Used for above to track all the keys that have registered a signal
Define Details
CLEAR_AI_DATUM_TARGET
Used to clear previously set reference handing by AI controllers
+
+
tracked_datum - something being removed from an ai blackboard
+
key - the associated key
+
TRACK_AI_DATUM_TARGET
Used to manage references to datum by AI controllers
+
+
tracked_datum - something being added to an ai blackboard
+
key - the associated key
+
TRAIT_AI_TRACKING
Used for above to track all the keys that have registered a signal
\ No newline at end of file
diff --git a/code/datums/ai/ai_planning_subtree.html b/code/datums/ai/ai_planning_subtree.html
new file mode 100644
index 00000000000..af3c3b570e6
--- /dev/null
+++ b/code/datums/ai/ai_planning_subtree.html
@@ -0,0 +1,4 @@
+code/datums/ai/ai_planning_subtree.dm - Space Station 13Space Station 13 - Modules - Types
A subtree is attached to a controller and is occasionally called by
+/ai_controller/select_behaviors(). This mainly exists to act as a way to
+subtype and modify select_behaviors() without needing to subtype the AI
+controller itself.
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_ai_behaviors/befriend_target.html b/code/datums/ai/basic_mobs/basic_ai_behaviors/befriend_target.html
new file mode 100644
index 00000000000..52f8d71f18c
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_ai_behaviors/befriend_target.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_ai_behaviors/befriend_target.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_ai_behaviors/interact_with_target.html b/code/datums/ai/basic_mobs/basic_ai_behaviors/interact_with_target.html
new file mode 100644
index 00000000000..2d536b4eea7
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_ai_behaviors/interact_with_target.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_ai_behaviors/interact_with_target.dm - Space Station 13Space Station 13 - Modules - Types
Behavior for general interactions with any targets
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_ai_behaviors/nearest_targeting.html b/code/datums/ai/basic_mobs/basic_ai_behaviors/nearest_targeting.html
new file mode 100644
index 00000000000..84d3e7bad1e
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_ai_behaviors/nearest_targeting.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_ai_behaviors/nearest_targeting.dm - Space Station 13Space Station 13 - Modules - Types
As above but targets have been filtered from the 'retaliate' blackboard list
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_ai_behaviors/run_away_from_target.html b/code/datums/ai/basic_mobs/basic_ai_behaviors/run_away_from_target.html
new file mode 100644
index 00000000000..90ee37493b8
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_ai_behaviors/run_away_from_target.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_ai_behaviors/run_away_from_target.dm - Space Station 13Space Station 13 - Modules - Types
Move to a position further away from your current target
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_ai_behaviors/stop_and_stare.html b/code/datums/ai/basic_mobs/basic_ai_behaviors/stop_and_stare.html
new file mode 100644
index 00000000000..e5b7b932381
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_ai_behaviors/stop_and_stare.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_ai_behaviors/stop_and_stare.dm - Space Station 13Space Station 13 - Modules - Types
Makes a mob simply stop and stare at a movable... yea...
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_ai_behaviors/targeted_mob_abilities.html b/code/datums/ai/basic_mobs/basic_ai_behaviors/targeted_mob_abilities.html
new file mode 100644
index 00000000000..404fb174f38
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_ai_behaviors/targeted_mob_abilities.html
@@ -0,0 +1,2 @@
+code/datums/ai/basic_mobs/basic_ai_behaviors/targeted_mob_abilities.dm - Space Station 13Space Station 13 - Modules - Types
Attempts to use a mob's cooldown ability on a target and then move the target into a special target blackboard datum
+Doesn't need another subtype to clear BB_BASIC_MOB_EXECUTION_TARGET because it will be the target key for the normal action
Attempts to move into the provided range and then use a mob's cooldown ability on a target
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_ai_behaviors/tipped_reaction.html b/code/datums/ai/basic_mobs/basic_ai_behaviors/tipped_reaction.html
new file mode 100644
index 00000000000..fb867aef4e9
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_ai_behaviors/tipped_reaction.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_ai_behaviors/tipped_reaction.dm - Space Station 13Space Station 13 - Modules - Types
Type of tipped reaction that is akin to puppy dog eyes.
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_ai_behaviors/travel_towards.html b/code/datums/ai/basic_mobs/basic_ai_behaviors/travel_towards.html
new file mode 100644
index 00000000000..49549ab8f64
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_ai_behaviors/travel_towards.html
@@ -0,0 +1,3 @@
+code/datums/ai/basic_mobs/basic_ai_behaviors/travel_towards.dm - Space Station 13Space Station 13 - Modules - Types
Travel towards an atom you pass directly from the controller rather than a blackboard key.
+You might need to do this to avoid repeating some checks in both a controller and an action.
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_subtrees/attack_adjacent_target.html b/code/datums/ai/basic_mobs/basic_subtrees/attack_adjacent_target.html
new file mode 100644
index 00000000000..0e2d479d86f
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_subtrees/attack_adjacent_target.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_subtrees/attack_adjacent_target.dm - Space Station 13Space Station 13 - Modules - Types
Attack something which is already adjacent to us without moving
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_subtrees/attack_obstacle_in_path.html b/code/datums/ai/basic_mobs/basic_subtrees/attack_obstacle_in_path.html
new file mode 100644
index 00000000000..047c5578891
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_subtrees/attack_obstacle_in_path.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_subtrees/attack_obstacle_in_path.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_subtrees/capricious_retaliate.html b/code/datums/ai/basic_mobs/basic_subtrees/capricious_retaliate.html
new file mode 100644
index 00000000000..0007c2e5724
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_subtrees/capricious_retaliate.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_subtrees/capricious_retaliate.dm - Space Station 13Space Station 13 - Modules - Types
Add or remove people to our retaliation shitlist just on an arbitrary whim
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_subtrees/find_food.html b/code/datums/ai/basic_mobs/basic_subtrees/find_food.html
new file mode 100644
index 00000000000..2dac2ebfbf1
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_subtrees/find_food.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_subtrees/find_food.dm - Space Station 13Space Station 13 - Modules - Types
Similar to finding a target but looks for food types in the blackboard.
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_subtrees/flee_target.html b/code/datums/ai/basic_mobs/basic_subtrees/flee_target.html
new file mode 100644
index 00000000000..c61b0d780c5
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_subtrees/flee_target.html
@@ -0,0 +1,2 @@
+code/datums/ai/basic_mobs/basic_subtrees/flee_target.dm - Space Station 13Space Station 13 - Modules - Types
Try to escape from your current target, without performing any other actions.
+Reads from some fleeing-specific targeting keys rather than the current mob target.
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_subtrees/maintain_distance.html b/code/datums/ai/basic_mobs/basic_subtrees/maintain_distance.html
new file mode 100644
index 00000000000..08f88adddfb
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_subtrees/maintain_distance.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_subtrees/maintain_distance.dm - Space Station 13Space Station 13 - Modules - Types
instead of taking a single step, we cover the entire distance
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_subtrees/make_babies.html b/code/datums/ai/basic_mobs/basic_subtrees/make_babies.html
new file mode 100644
index 00000000000..6047ae1f309
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_subtrees/make_babies.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_subtrees/make_babies.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_subtrees/ranged_skirmish.html b/code/datums/ai/basic_mobs/basic_subtrees/ranged_skirmish.html
new file mode 100644
index 00000000000..55c8925a06a
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_subtrees/ranged_skirmish.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_subtrees/ranged_skirmish.dm - Space Station 13Space Station 13 - Modules - Types
How often will we try to perform our ranged attack?
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_subtrees/shapechange_ambush.html b/code/datums/ai/basic_mobs/basic_subtrees/shapechange_ambush.html
new file mode 100644
index 00000000000..79ec806f20d
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_subtrees/shapechange_ambush.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_subtrees/shapechange_ambush.dm - Space Station 13Space Station 13 - Modules - Types
Selects a random shapeshift ability before shifting
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_subtrees/simple_find_nearest_target_to_flee.html b/code/datums/ai/basic_mobs/basic_subtrees/simple_find_nearest_target_to_flee.html
new file mode 100644
index 00000000000..64f38241c03
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_subtrees/simple_find_nearest_target_to_flee.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_subtrees/simple_find_nearest_target_to_flee.dm - Space Station 13Space Station 13 - Modules - Types
Find the nearest thing on our list of 'things which have done damage to me' and set it as the flee target
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_subtrees/stare_at_thing.html b/code/datums/ai/basic_mobs/basic_subtrees/stare_at_thing.html
new file mode 100644
index 00000000000..18d4f9723fc
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_subtrees/stare_at_thing.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_subtrees/stare_at_thing.dm - Space Station 13Space Station 13 - Modules - Types
Locate a thing (practically any atom) to stop and stare at.
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_subtrees/target_retaliate.html b/code/datums/ai/basic_mobs/basic_subtrees/target_retaliate.html
new file mode 100644
index 00000000000..4541ad805d6
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_subtrees/target_retaliate.html
@@ -0,0 +1,4 @@
+code/datums/ai/basic_mobs/basic_subtrees/target_retaliate.dm - Space Station 13Space Station 13 - Modules - Types
Places a mob which you can see and who has recently attacked you into some 'run away from this' AI keys
+Can use a different targeting strategy than you use to select attack targets
+Not required if fleeing is the only target behaviour or uses the same target datum
Picks a target from a provided list of atoms who have been pissing you off
+You will probably need /datum/element/ai_retaliate to take advantage of this unless you're populating the blackboard yourself
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_subtrees/targeted_mob_ability.html b/code/datums/ai/basic_mobs/basic_subtrees/targeted_mob_ability.html
new file mode 100644
index 00000000000..63b3b10961a
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_subtrees/targeted_mob_ability.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_subtrees/targeted_mob_ability.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_subtrees/tip_reaction.html b/code/datums/ai/basic_mobs/basic_subtrees/tip_reaction.html
new file mode 100644
index 00000000000..db448fde762
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_subtrees/tip_reaction.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_subtrees/tip_reaction.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_subtrees/travel_to_point.html b/code/datums/ai/basic_mobs/basic_subtrees/travel_to_point.html
new file mode 100644
index 00000000000..369598abfcd
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_subtrees/travel_to_point.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/basic_subtrees/travel_to_point.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/basic_subtrees/use_mob_ability.html b/code/datums/ai/basic_mobs/basic_subtrees/use_mob_ability.html
new file mode 100644
index 00000000000..a874e328d9f
--- /dev/null
+++ b/code/datums/ai/basic_mobs/basic_subtrees/use_mob_ability.html
@@ -0,0 +1,2 @@
+code/datums/ai/basic_mobs/basic_subtrees/use_mob_ability.dm - Space Station 13Space Station 13 - Modules - Types
Simple behaviours which simply try to use an ability whenever it is available.
+For something which wants a target try targeted_mob_ability.
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/generic_controllers.html b/code/datums/ai/basic_mobs/generic_controllers.html
new file mode 100644
index 00000000000..5130377ec98
--- /dev/null
+++ b/code/datums/ai/basic_mobs/generic_controllers.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/generic_controllers.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/hunting_behavior/find_and_hunt_target.html b/code/datums/ai/basic_mobs/hunting_behavior/find_and_hunt_target.html
new file mode 100644
index 00000000000..f1f0f710e87
--- /dev/null
+++ b/code/datums/ai/basic_mobs/hunting_behavior/find_and_hunt_target.html
@@ -0,0 +1,2 @@
+code/datums/ai/basic_mobs/hunting_behavior/find_and_hunt_target.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/hunting_behavior/find_hunt_target.html b/code/datums/ai/basic_mobs/hunting_behavior/find_hunt_target.html
new file mode 100644
index 00000000000..d407e1de535
--- /dev/null
+++ b/code/datums/ai/basic_mobs/hunting_behavior/find_hunt_target.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/hunting_behavior/find_hunt_target.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/hunting_behavior/hunt_target.html b/code/datums/ai/basic_mobs/hunting_behavior/hunt_target.html
new file mode 100644
index 00000000000..1320807a35c
--- /dev/null
+++ b/code/datums/ai/basic_mobs/hunting_behavior/hunt_target.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/hunting_behavior/hunt_target.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/ai/basic_mobs/hunting_behavior/hunting_corpses.html b/code/datums/ai/basic_mobs/hunting_behavior/hunting_corpses.html
new file mode 100644
index 00000000000..078c7efcf5c
--- /dev/null
+++ b/code/datums/ai/basic_mobs/hunting_behavior/hunting_corpses.html
@@ -0,0 +1 @@
+code/datums/ai/basic_mobs/hunting_behavior/hunting_corpses.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/ai/generic/find_and_set.html b/code/datums/ai/generic/find_and_set.html
new file mode 100644
index 00000000000..350877ce3b0
--- /dev/null
+++ b/code/datums/ai/generic/find_and_set.html
@@ -0,0 +1,3 @@
+code/datums/ai/generic/find_and_set.dm - Space Station 13Space Station 13 - Modules - Types
Finds an item near themselves, sets a blackboard key as it. Very useful for AIs that need to use machines or something.
+If you want to do something more complicated than find a single atom, change the search_tactic() proc
+cool tip: search_tactic() can set lists
Variant of find and set that also requires the item to be edible. checks hands too
\ No newline at end of file
diff --git a/code/datums/ai/generic/generic_behaviors.html b/code/datums/ai/generic/generic_behaviors.html
new file mode 100644
index 00000000000..10cca3473e2
--- /dev/null
+++ b/code/datums/ai/generic/generic_behaviors.html
@@ -0,0 +1 @@
+code/datums/ai/generic/generic_behaviors.dm - Space Station 13Space Station 13 - Modules - Types
Drops items in hands, very important for future behaviors that require the pawn to grab stuff
\ No newline at end of file
diff --git a/code/datums/ai/idle_behaviors/idle_random_walk.html b/code/datums/ai/idle_behaviors/idle_random_walk.html
new file mode 100644
index 00000000000..04c5e676d95
--- /dev/null
+++ b/code/datums/ai/idle_behaviors/idle_random_walk.html
@@ -0,0 +1 @@
+code/datums/ai/idle_behaviors/idle_random_walk.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/ai/monkey/monkey_controller.html b/code/datums/ai/monkey/monkey_controller.html
new file mode 100644
index 00000000000..311d5bb3dc3
--- /dev/null
+++ b/code/datums/ai/monkey/monkey_controller.html
@@ -0,0 +1 @@
+code/datums/ai/monkey/monkey_controller.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/ai/movement/ai_movement.html b/code/datums/ai/movement/ai_movement.html
new file mode 100644
index 00000000000..fafe8cd7ce0
--- /dev/null
+++ b/code/datums/ai/movement/ai_movement.html
@@ -0,0 +1 @@
+code/datums/ai/movement/ai_movement.dm - Space Station 13Space Station 13 - Modules - Types
This datum is an abstract class that can be overriden for different types of movement.
\ No newline at end of file
diff --git a/code/datums/ai/movement/ai_movement_jps.html b/code/datums/ai/movement/ai_movement_jps.html
new file mode 100644
index 00000000000..7deaed845a5
--- /dev/null
+++ b/code/datums/ai/movement/ai_movement_jps.html
@@ -0,0 +1 @@
+code/datums/ai/movement/ai_movement_jps.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/ai/movement/basic_avoidance.html b/code/datums/ai/movement/basic_avoidance.html
new file mode 100644
index 00000000000..0ac9b4320be
--- /dev/null
+++ b/code/datums/ai/movement/basic_avoidance.html
@@ -0,0 +1 @@
+code/datums/ai/movement/basic_avoidance.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/ai/movement/complete_stop.html b/code/datums/ai/movement/complete_stop.html
new file mode 100644
index 00000000000..5949a252346
--- /dev/null
+++ b/code/datums/ai/movement/complete_stop.html
@@ -0,0 +1 @@
+code/datums/ai/movement/complete_stop.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/ai/targeting_strategy/basic_targeting_strategy.html b/code/datums/ai/targeting_strategy/basic_targeting_strategy.html
new file mode 100644
index 00000000000..9daa7373c48
--- /dev/null
+++ b/code/datums/ai/targeting_strategy/basic_targeting_strategy.html
@@ -0,0 +1 @@
+code/datums/ai/targeting_strategy/basic_targeting_strategy.dm - Space Station 13Space Station 13 - Modules - Types
Subtype which searches for mobs of a size relative to ours
\ No newline at end of file
diff --git a/code/datums/ai/targeting_strategy/dont_target_friends.html b/code/datums/ai/targeting_strategy/dont_target_friends.html
new file mode 100644
index 00000000000..99158854020
--- /dev/null
+++ b/code/datums/ai/targeting_strategy/dont_target_friends.html
@@ -0,0 +1 @@
+code/datums/ai/targeting_strategy/dont_target_friends.dm - Space Station 13Space Station 13 - Modules - Types
Subtype that allows us to target items while deftly avoiding attacking our allies. Be careful when it comes to targeting items as an AI could get trapped targeting something it can't destroy.
\ No newline at end of file
diff --git a/code/datums/ai/targeting_strategy/targeting_strategy.html b/code/datums/ai/targeting_strategy/targeting_strategy.html
new file mode 100644
index 00000000000..9ae14269473
--- /dev/null
+++ b/code/datums/ai/targeting_strategy/targeting_strategy.html
@@ -0,0 +1,3 @@
+code/datums/ai/targeting_strategy/targeting_strategy.dm - Space Station 13Space Station 13 - Modules - Types
Datum for basic mobs to define what they can attack.
+Global, just like ai_behaviors.
+Meant to be subtyped into different kinds of targeting strategies.
\ No newline at end of file
diff --git a/code/datums/ai_law_sets.html b/code/datums/ai_law_sets.html
new file mode 100644
index 00000000000..ea6448255be
--- /dev/null
+++ b/code/datums/ai_law_sets.html
@@ -0,0 +1 @@
+code/datums/ai_law_sets.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/beam.html b/code/datums/beam.html
new file mode 100644
index 00000000000..07b7182c9a1
--- /dev/null
+++ b/code/datums/beam.html
@@ -0,0 +1 @@
+code/datums/beam.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/bug_report.html b/code/datums/bug_report.html
new file mode 100644
index 00000000000..c074a8d02e3
--- /dev/null
+++ b/code/datums/bug_report.html
@@ -0,0 +1 @@
+code/datums/bug_report.dm - Space Station 13Space Station 13 - Modules - Types
Create a list of ids, authors and titles of bug reports awaiting approval
\ No newline at end of file
diff --git a/code/datums/chat_payload.html b/code/datums/chat_payload.html
new file mode 100644
index 00000000000..cf231c1e680
--- /dev/null
+++ b/code/datums/chat_payload.html
@@ -0,0 +1 @@
+code/datums/chat_payload.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/chatmessage.html b/code/datums/chatmessage.html
new file mode 100644
index 00000000000..674056205ac
--- /dev/null
+++ b/code/datums/chatmessage.html
@@ -0,0 +1,3 @@
+code/datums/chatmessage.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Macro from Lummox used to get height from a MeasureText proc.
+resolves the MeasureText() return value once, then resolves the height, then sets return_var to that.
The number of z-layer 'slices' usable by the chat message layering
CHAT_LAYER_Z_STEP
Maximum precision of float before rounding errors occur (in this context)
CHAT_MESSAGE_APPROX_LHEIGHT
Approximate height in pixels of an 'average' line, used for height decay
CHAT_MESSAGE_EOL_FADE
How long the chat message's end of life fading animation will occur for
CHAT_MESSAGE_EXP_DECAY
Factor of how much the message index (number of messages) will account to exponential decay
CHAT_MESSAGE_GRACE_PERIOD
Grace period for fade before we actually delete the chat message
CHAT_MESSAGE_HEIGHT_DECAY
Factor of how much height will account to exponential decay
CHAT_MESSAGE_LIFESPAN
How long the chat message will exist prior to any exponential decay
CHAT_MESSAGE_MAX_LENGTH
Max length of chat message in characters
CHAT_MESSAGE_SPAWN_TIME
How long the chat message's spawn-in animation will occur for
CHAT_MESSAGE_WIDTH
Max width of chat message in pixels
WXH_TO_HEIGHT
Macro from Lummox used to get height from a MeasureText proc.
+resolves the MeasureText() return value once, then resolves the height, then sets return_var to that.
\ No newline at end of file
diff --git a/code/datums/click_intercept.html b/code/datums/click_intercept.html
new file mode 100644
index 00000000000..84c0ef3f424
--- /dev/null
+++ b/code/datums/click_intercept.html
@@ -0,0 +1,3 @@
+code/datums/click_intercept.dm - Space Station 13Space Station 13 - Modules - Types
Datum which is intended to be stored by a client's click_intercept variable.
+Used to override normal clicking behavior when clicking on an object.
+While active, a mob's ClickOn proc will redirect to the InterceptClickOn() proc instead.
\ No newline at end of file
diff --git a/code/datums/cogbar.html b/code/datums/cogbar.html
new file mode 100644
index 00000000000..819b88c6388
--- /dev/null
+++ b/code/datums/cogbar.html
@@ -0,0 +1 @@
+code/datums/cogbar.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/components.html b/code/datums/components.html
new file mode 100644
index 00000000000..64a3defceb9
--- /dev/null
+++ b/code/datums/components.html
@@ -0,0 +1,4 @@
+code/datums/components/README.md - Space Station 13Space Station 13 - Modules - Types
Datum Component System (DCS)
Concept
+
Loosely adapted from /vg/. This is an entity component system for adding behaviours to datums when inheritance doesn't quite cut it. By using signals and events instead of direct inheritance, you can inject behaviours without hacky overloads. It requires a different method of thinking, but is not hard to use correctly. If a behaviour can have application across more than one thing. Make it generic, make it a component. Atom/mob/obj event? Give it a signal, and forward it's arguments with a SendSignal() call. Now every component that want's to can also know about this happening.
+
See this thread for an introduction to the system as a whole.
\ No newline at end of file
diff --git a/code/datums/components/_component.html b/code/datums/components/_component.html
new file mode 100644
index 00000000000..937b3c19479
--- /dev/null
+++ b/code/datums/components/_component.html
@@ -0,0 +1 @@
+code/datums/components/_component.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/components/action_item_overlay.html b/code/datums/components/action_item_overlay.html
new file mode 100644
index 00000000000..b0c3b06f6c4
--- /dev/null
+++ b/code/datums/components/action_item_overlay.html
@@ -0,0 +1,2 @@
+code/datums/components/action_item_overlay.dm - Space Station 13Space Station 13 - Modules - Types
Apply to an action to allow it to take an item
+and apply it as an overlay of the action button
\ No newline at end of file
diff --git a/code/datums/components/ai_has_target_timer.html b/code/datums/components/ai_has_target_timer.html
new file mode 100644
index 00000000000..7f3754a0eeb
--- /dev/null
+++ b/code/datums/components/ai_has_target_timer.html
@@ -0,0 +1 @@
+code/datums/components/ai_has_target_timer.dm - Space Station 13Space Station 13 - Modules - Types
Increments a blackboard key while the attached mob is engaged with a particular target, does nothing else on its own
\ No newline at end of file
diff --git a/code/datums/components/ai_retaliate_advanced.html b/code/datums/components/ai_retaliate_advanced.html
new file mode 100644
index 00000000000..152a0c918e5
--- /dev/null
+++ b/code/datums/components/ai_retaliate_advanced.html
@@ -0,0 +1,3 @@
+code/datums/components/ai_retaliate_advanced.dm - Space Station 13Space Station 13 - Modules - Types
Attached to a mob with an AI controller, passes things which have damaged it to a blackboard.
+The AI controller is responsible for doing anything with that information.
+Differs from the element as it passes new entries through a callback.
\ No newline at end of file
diff --git a/code/datums/components/anti_magic.html b/code/datums/components/anti_magic.html
new file mode 100644
index 00000000000..f74314591f5
--- /dev/null
+++ b/code/datums/components/anti_magic.html
@@ -0,0 +1 @@
+code/datums/components/anti_magic.dm - Space Station 13Space Station 13 - Modules - Types
This provides different types of magic resistance on an object
\ No newline at end of file
diff --git a/code/datums/components/aura_healing.html b/code/datums/components/aura_healing.html
new file mode 100644
index 00000000000..08fe838f18a
--- /dev/null
+++ b/code/datums/components/aura_healing.html
@@ -0,0 +1,4 @@
+code/datums/components/aura_healing.dm - Space Station 13Space Station 13 - Modules - Types
Applies healing to those in the area.
+Will provide them with an alert while they're in range, as well as
+give them a healing particle.
+Can be applied to those only with a trait conditionally.
\ No newline at end of file
diff --git a/code/datums/components/basic_mob_aggro_emote.html b/code/datums/components/basic_mob_aggro_emote.html
new file mode 100644
index 00000000000..b8c86c393eb
--- /dev/null
+++ b/code/datums/components/basic_mob_aggro_emote.html
@@ -0,0 +1 @@
+code/datums/components/basic_mob_aggro_emote.dm - Space Station 13Space Station 13 - Modules - Types
A component for ai-controlled atoms which plays a sound if they switch to a living target which they can attack
\ No newline at end of file
diff --git a/code/datums/components/boomerang.html b/code/datums/components/boomerang.html
new file mode 100644
index 00000000000..a8f2d50aa19
--- /dev/null
+++ b/code/datums/components/boomerang.html
@@ -0,0 +1,2 @@
+code/datums/components/boomerang.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
If an object is given the boomerang component, it should be thrown back to the thrower after either hitting it's target, or landing on the thrown tile.
+Thrown objects should be thrown back to the original thrower with this component, a number of tiles defined by boomerang_throw_range.
Define Details
BOOMERANG_REBOUND_INTERVAL
The cooldown period between last_boomerang_throw and it's methods of implementing a rebound proc.
\ No newline at end of file
diff --git a/code/datums/components/boss_music.html b/code/datums/components/boss_music.html
new file mode 100644
index 00000000000..271ad06ba25
--- /dev/null
+++ b/code/datums/components/boss_music.html
@@ -0,0 +1 @@
+code/datums/components/boss_music.dm - Space Station 13Space Station 13 - Modules - Types
Attaches to a hostile simplemob and plays that music while they have a target.
\ No newline at end of file
diff --git a/code/datums/components/codeword_hearing.html b/code/datums/components/codeword_hearing.html
new file mode 100644
index 00000000000..2e6b0cad85f
--- /dev/null
+++ b/code/datums/components/codeword_hearing.html
@@ -0,0 +1 @@
+code/datums/components/codeword_hearing.dm - Space Station 13Space Station 13 - Modules - Types
Component that allows for highlighting of words or phrases in chat based on regular expressions.
\ No newline at end of file
diff --git a/code/datums/components/connect_containers.html b/code/datums/components/connect_containers.html
new file mode 100644
index 00000000000..b049688b32c
--- /dev/null
+++ b/code/datums/components/connect_containers.html
@@ -0,0 +1 @@
+code/datums/components/connect_containers.dm - Space Station 13Space Station 13 - Modules - Types
This component behaves similar to connect_loc_behalf, but it's nested and hooks a signal onto all MOVABLES containing this atom.
\ No newline at end of file
diff --git a/code/datums/components/connect_loc_behalf.html b/code/datums/components/connect_loc_behalf.html
new file mode 100644
index 00000000000..603520102ee
--- /dev/null
+++ b/code/datums/components/connect_loc_behalf.html
@@ -0,0 +1,4 @@
+code/datums/components/connect_loc_behalf.dm - Space Station 13Space Station 13 - Modules - Types
This component behaves similar to connect_loc, hooking into a signal on a tracked object's turf
+It has the ability to react to that signal on behalf of a separate listener however
+This has great use, primarily for components, but it carries with it some overhead
+So we do it separately as it needs to hold state which is very likely to lead to bugs if it remains as an element.
\ No newline at end of file
diff --git a/code/datums/components/connect_mob_behalf.html b/code/datums/components/connect_mob_behalf.html
new file mode 100644
index 00000000000..4ee4d360350
--- /dev/null
+++ b/code/datums/components/connect_mob_behalf.html
@@ -0,0 +1,3 @@
+code/datums/components/connect_mob_behalf.dm - Space Station 13Space Station 13 - Modules - Types
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 seperate listener, which makes this quite powerful
\ No newline at end of file
diff --git a/code/datums/components/connect_range.html b/code/datums/components/connect_range.html
new file mode 100644
index 00000000000..da69af13b37
--- /dev/null
+++ b/code/datums/components/connect_range.html
@@ -0,0 +1,3 @@
+code/datums/components/connect_range.dm - Space Station 13Space Station 13 - Modules - Types
This component behaves similar to connect_loc_behalf but for all turfs in range, hooking into a signal on each of them.
+Just like connect_loc_behalf, It can react to that signal on behalf of a seperate listener.
+Good for components, though it carries some overhead. Can't be an element as that may lead to bugs.
\ No newline at end of file
diff --git a/code/datums/components/corpse_description.html b/code/datums/components/corpse_description.html
new file mode 100644
index 00000000000..429be181bbd
--- /dev/null
+++ b/code/datums/components/corpse_description.html
@@ -0,0 +1,2 @@
+code/datums/components/corpse_description.dm - Space Station 13Space Station 13 - Modules - Types
Mapping component which adds examine text to a corpse that is removed on revival (in case for some reason someone revives your space ruin mob)
+For immersive environmental story telling
\ No newline at end of file
diff --git a/code/datums/components/cult_held_body.html b/code/datums/components/cult_held_body.html
new file mode 100644
index 00000000000..288164007b8
--- /dev/null
+++ b/code/datums/components/cult_held_body.html
@@ -0,0 +1,2 @@
+code/datums/components/cult_held_body.dm - Space Station 13Space Station 13 - Modules - Types
A component for tracking and manipulating bodies held inside constructs/shades
+Will drop the body/brain when the parent dies or is deleted.
\ No newline at end of file
diff --git a/code/datums/components/damage_aura.html b/code/datums/components/damage_aura.html
new file mode 100644
index 00000000000..4d28403a65e
--- /dev/null
+++ b/code/datums/components/damage_aura.html
@@ -0,0 +1,2 @@
+code/datums/components/damage_aura.dm - Space Station 13Space Station 13 - Modules - Types
Applies a status effect and deals damage to people in the area.
+Will deal more damage the more people are present.
\ No newline at end of file
diff --git a/code/datums/components/deadchat_control.html b/code/datums/components/deadchat_control.html
new file mode 100644
index 00000000000..cdbb12ccd51
--- /dev/null
+++ b/code/datums/components/deadchat_control.html
@@ -0,0 +1 @@
+code/datums/components/deadchat_control.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/components/death_linked.html b/code/datums/components/death_linked.html
new file mode 100644
index 00000000000..c95ae2762c0
--- /dev/null
+++ b/code/datums/components/death_linked.html
@@ -0,0 +1 @@
+code/datums/components/death_linked.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/components/defibrillator.html b/code/datums/components/defibrillator.html
new file mode 100644
index 00000000000..998b262c3d6
--- /dev/null
+++ b/code/datums/components/defibrillator.html
@@ -0,0 +1 @@
+code/datums/components/defibrillator.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
A component for an item that attempts to defibrillate a mob when activated.
Define Details
DEFIB_TIME
A component for an item that attempts to defibrillate a mob when activated.
\ No newline at end of file
diff --git a/code/datums/components/direct_explosive_trap.html b/code/datums/components/direct_explosive_trap.html
new file mode 100644
index 00000000000..c6d189968b9
--- /dev/null
+++ b/code/datums/components/direct_explosive_trap.html
@@ -0,0 +1 @@
+code/datums/components/direct_explosive_trap.dm - Space Station 13Space Station 13 - Modules - Types
Responds to certain signals and 'explodes' on the person using the item.
\ No newline at end of file
diff --git a/code/datums/components/drift.html b/code/datums/components/drift.html
new file mode 100644
index 00000000000..155bdc5b856
--- /dev/null
+++ b/code/datums/components/drift.html
@@ -0,0 +1,3 @@
+code/datums/components/drift.dm - Space Station 13Space Station 13 - Modules - Types
Component that handles drifting
+Manages a movement loop that actually does the legwork of moving someone
+Alongside dealing with the post movement input blocking required to make things look nice
\ No newline at end of file
diff --git a/code/datums/components/footstep.html b/code/datums/components/footstep.html
new file mode 100644
index 00000000000..868f6a0f7c4
--- /dev/null
+++ b/code/datums/components/footstep.html
@@ -0,0 +1 @@
+code/datums/components/footstep.dm - Space Station 13Space Station 13 - Modules - Types
Footstep component. Plays footsteps at parents location when it is appropriate.
\ No newline at end of file
diff --git a/code/datums/components/forces_doors_open.html b/code/datums/components/forces_doors_open.html
new file mode 100644
index 00000000000..e95f6cefabb
--- /dev/null
+++ b/code/datums/components/forces_doors_open.html
@@ -0,0 +1 @@
+code/datums/components/forces_doors_open.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/components/ghost_direct_control.html b/code/datums/components/ghost_direct_control.html
new file mode 100644
index 00000000000..9916ace9864
--- /dev/null
+++ b/code/datums/components/ghost_direct_control.html
@@ -0,0 +1 @@
+code/datums/components/ghost_direct_control.dm - Space Station 13Space Station 13 - Modules - Types
Component which lets ghosts click on a mob to take control of it
\ No newline at end of file
diff --git a/code/datums/components/label.html b/code/datums/components/label.html
new file mode 100644
index 00000000000..eaafc796294
--- /dev/null
+++ b/code/datums/components/label.html
@@ -0,0 +1 @@
+code/datums/components/label.dm - Space Station 13Space Station 13 - Modules - Types
A verson of the label component specific to labelling goal items.
\ No newline at end of file
diff --git a/code/datums/components/largeobjecttransparency.html b/code/datums/components/largeobjecttransparency.html
new file mode 100644
index 00000000000..0cbcf87dcdb
--- /dev/null
+++ b/code/datums/components/largeobjecttransparency.html
@@ -0,0 +1 @@
+code/datums/components/largeobjecttransparency.dm - Space Station 13Space Station 13 - Modules - Types
Makes large icons partially see through if high priority atoms are behind them.
\ No newline at end of file
diff --git a/code/datums/components/leash.html b/code/datums/components/leash.html
new file mode 100644
index 00000000000..2dc1e9f65d3
--- /dev/null
+++ b/code/datums/components/leash.html
@@ -0,0 +1,2 @@
+code/datums/components/leash.dm - Space Station 13Space Station 13 - Modules - Types
Keeps the parent within the distance of its owner as naturally as possible,
+but teleporting if necessary.
\ No newline at end of file
diff --git a/code/datums/components/multitile.html b/code/datums/components/multitile.html
new file mode 100644
index 00000000000..2a119731100
--- /dev/null
+++ b/code/datums/components/multitile.html
@@ -0,0 +1 @@
+code/datums/components/multitile.dm - Space Station 13Space Station 13 - Modules - Types
Lets multitile objects have dense walls around them based on the coordinate map
\ No newline at end of file
diff --git a/code/datums/components/orbiter.html b/code/datums/components/orbiter.html
new file mode 100644
index 00000000000..0743f69a8bf
--- /dev/null
+++ b/code/datums/components/orbiter.html
@@ -0,0 +1,31 @@
+code/datums/components/orbiter.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Code to handle atoms orbiting other atoms, following them as they move.
+The basic logic is simple. We register a signal, COMSIG_MOVABLE_MOVED onto orbited atoms.
+When the orbited atom moves, any ghosts orbiting them are moved to their turf.
+We also register a MOVED signal onto the ghosts to cancel their orbit if they move themselves.
+Complexities come in for items within other items (such as the NAD in a box in a backpack on an assistant pretending to be the captain),
+as items in containers do not fire COMSIG_MOVABLE_MOVED when their container moves.
Define Details
ORBIT_LOCK_IN
Code to handle atoms orbiting other atoms, following them as they move.
+The basic logic is simple. We register a signal, COMSIG_MOVABLE_MOVED onto orbited atoms.
+When the orbited atom moves, any ghosts orbiting them are moved to their turf.
+We also register a MOVED signal onto the ghosts to cancel their orbit if they move themselves.
+Complexities come in for items within other items (such as the NAD in a box in a backpack on an assistant pretending to be the captain),
+as items in containers do not fire COMSIG_MOVABLE_MOVED when their container moves.
+
The signal logic for items in containers is as follows:
+Assume 1 is some item (for example, the NAD) and 2 is a box.
+When 1 is added to 2, we register the typical orbit COMSIG_MOVABLE_MOVED onto 2.
+This in essence makes 2 the "leader", the atom that ghosts follow in movement.
+As 2 is moved around (say, dragged on the floor) ghosts will follow it.
+We also register a new intermediate COMSIG_MOVABLE_MOVED signal onto 1 that tracks if 1 is moved.
+Remember, this will only fire if 1 is moved around containers, since it's impossible for it to actually move on its own.
+If 1 is moved out of 2, this signal makes 1 the new leader.
+Lastly, we add a COMSIG_ATOM_EXITED to 2, which tracks if 1 is removed from 2.
+This EXITED signal cleans up any orbiting signals on and above 2.
+If 2 is added to another item, (say a backpack, 3)
+3 becomes the new leader
+2 becomes an intermediate
+1 is unchanged (but still carries the orbiter datum)
+
You may be asking yourself: is this overengineered?
+In part, yes. However, MOVED signals don't get fired for items in containers, so this is
+really the next best way.
+Also, is this really optimal?
+As much as it can be, I believe. This signal-shuffling will not happen for any item that is just moving from turf to turf,
+which should apply to 95% of cases (read: ghosts orbiting mobs).
\ No newline at end of file
diff --git a/code/datums/components/pet_commands/obeys_commands.html b/code/datums/components/pet_commands/obeys_commands.html
new file mode 100644
index 00000000000..352a8b50754
--- /dev/null
+++ b/code/datums/components/pet_commands/obeys_commands.html
@@ -0,0 +1,2 @@
+code/datums/components/pet_commands/obeys_commands.dm - Space Station 13Space Station 13 - Modules - Types
Manages a list of pet command datums, allowing you to boss it around
+Creates a radial menu of pet commands when this creature is alt-clicked, if it has any
\ No newline at end of file
diff --git a/code/datums/components/pet_commands/pet_command.html b/code/datums/components/pet_commands/pet_command.html
new file mode 100644
index 00000000000..1ceacd4c37f
--- /dev/null
+++ b/code/datums/components/pet_commands/pet_command.html
@@ -0,0 +1,2 @@
+code/datums/components/pet_commands/pet_command.dm - Space Station 13Space Station 13 - Modules - Types
Set some AI blackboard commands in response to receiving instructions
+This is abstract and should be extended for actual behaviour
\ No newline at end of file
diff --git a/code/datums/components/pet_commands/pet_command_planning.html b/code/datums/components/pet_commands/pet_command_planning.html
new file mode 100644
index 00000000000..3bcfb8057ed
--- /dev/null
+++ b/code/datums/components/pet_commands/pet_command_planning.html
@@ -0,0 +1,4 @@
+code/datums/components/pet_commands/pet_command_planning.dm - Space Station 13Space Station 13 - Modules - Types
Perform behaviour based on what pet commands you have received. This is delegated to the pet command datum.
+When a command is set, we blackboard a key to our currently active command.
+The blackboard also has a weak reference to every command datum available to us.
+We use the key to figure out which datum to run, then ask it to figure out how to execute its action.
\ No newline at end of file
diff --git a/code/datums/components/pet_commands/pet_commands_basic.html b/code/datums/components/pet_commands/pet_commands_basic.html
new file mode 100644
index 00000000000..8d2d1773f7b
--- /dev/null
+++ b/code/datums/components/pet_commands/pet_commands_basic.html
@@ -0,0 +1 @@
+code/datums/components/pet_commands/pet_commands_basic.dm - Space Station 13Space Station 13 - Modules - Types
Tells a pet to chase and bite the next thing you point at
\ No newline at end of file
diff --git a/code/datums/components/pet_commands/pet_follow_friend.html b/code/datums/components/pet_commands/pet_follow_friend.html
new file mode 100644
index 00000000000..068cc265008
--- /dev/null
+++ b/code/datums/components/pet_commands/pet_follow_friend.html
@@ -0,0 +1 @@
+code/datums/components/pet_commands/pet_follow_friend.dm - Space Station 13Space Station 13 - Modules - Types
Just keep following the target until the command is interrupted
\ No newline at end of file
diff --git a/code/datums/components/ranged_attacks.html b/code/datums/components/ranged_attacks.html
new file mode 100644
index 00000000000..c9f04ed53f3
--- /dev/null
+++ b/code/datums/components/ranged_attacks.html
@@ -0,0 +1 @@
+code/datums/components/ranged_attacks.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/components/regenerator.html b/code/datums/components/regenerator.html
new file mode 100644
index 00000000000..06ea4768eef
--- /dev/null
+++ b/code/datums/components/regenerator.html
@@ -0,0 +1,2 @@
+code/datums/components/regenerator.dm - Space Station 13Space Station 13 - Modules - Types
A mob with this component will regenerate its health over time, as long as it has not received damage
+in the last X seconds. Taking any damage will reset this cooldown.
\ No newline at end of file
diff --git a/code/datums/components/riding/riding.html b/code/datums/components/riding/riding.html
new file mode 100644
index 00000000000..885eb5968ce
--- /dev/null
+++ b/code/datums/components/riding/riding.html
@@ -0,0 +1 @@
+code/datums/components/riding/riding.dm - Space Station 13Space Station 13 - Modules - Types
This is the riding component, which is applied to a movable atom by the ridable element when a mob is successfully buckled to said movable.
\ No newline at end of file
diff --git a/code/datums/components/riding/riding_vehicle.html b/code/datums/components/riding/riding_vehicle.html
new file mode 100644
index 00000000000..053c6e900b2
--- /dev/null
+++ b/code/datums/components/riding/riding_vehicle.html
@@ -0,0 +1 @@
+code/datums/components/riding/riding_vehicle.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
This one lets the rider ignore gravity, move in zero g and so on, but only on ground turfs or at most one z-level above them.
Define Details
EPSILON
For making timers not accidentally skip an extra tick.
\ No newline at end of file
diff --git a/code/datums/components/scope.html b/code/datums/components/scope.html
new file mode 100644
index 00000000000..2de1d1d24d5
--- /dev/null
+++ b/code/datums/components/scope.html
@@ -0,0 +1 @@
+code/datums/components/scope.dm - Space Station 13Space Station 13 - Modules - Types
A component that allows players to use the item to zoom out. Mainly intended for firearms, but now works with other items too.
\ No newline at end of file
diff --git a/code/datums/components/shelved.html b/code/datums/components/shelved.html
new file mode 100644
index 00000000000..ea9a92973b3
--- /dev/null
+++ b/code/datums/components/shelved.html
@@ -0,0 +1 @@
+code/datums/components/shelved.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/components/shielded.html b/code/datums/components/shielded.html
new file mode 100644
index 00000000000..6c87d140ead
--- /dev/null
+++ b/code/datums/components/shielded.html
@@ -0,0 +1 @@
+code/datums/components/shielded.dm - Space Station 13Space Station 13 - Modules - Types
The shielded component causes the parent item to nullify a certain number of attacks against the wearer, see: shielded vests.
\ No newline at end of file
diff --git a/code/datums/components/slippery.html b/code/datums/components/slippery.html
new file mode 100644
index 00000000000..686fec4ef24
--- /dev/null
+++ b/code/datums/components/slippery.html
@@ -0,0 +1 @@
+code/datums/components/slippery.dm - Space Station 13Space Station 13 - Modules - Types
This is a component that can be applied to any movable atom (mob or obj).
\ No newline at end of file
diff --git a/code/datums/components/special_tastes.html b/code/datums/components/special_tastes.html
new file mode 100644
index 00000000000..3594a99ec34
--- /dev/null
+++ b/code/datums/components/special_tastes.html
@@ -0,0 +1 @@
+code/datums/components/special_tastes.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/components/squish.html b/code/datums/components/squish.html
new file mode 100644
index 00000000000..e82dc15e213
--- /dev/null
+++ b/code/datums/components/squish.html
@@ -0,0 +1 @@
+code/datums/components/squish.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/components/surgery_initiator.html b/code/datums/components/surgery_initiator.html
new file mode 100644
index 00000000000..2a4fd780456
--- /dev/null
+++ b/code/datums/components/surgery_initiator.html
@@ -0,0 +1 @@
+code/datums/components/surgery_initiator.dm - Space Station 13Space Station 13 - Modules - Types
Allows an item to start (or prematurely stop) a surgical operation.
\ No newline at end of file
diff --git a/code/datums/components/tameable.html b/code/datums/components/tameable.html
new file mode 100644
index 00000000000..3730ef2bfd4
--- /dev/null
+++ b/code/datums/components/tameable.html
@@ -0,0 +1 @@
+code/datums/components/tameable.dm - Space Station 13Space Station 13 - Modules - Types
This component lets you make specific mobs tameable by feeding them
\ No newline at end of file
diff --git a/code/datums/components/tilted.html b/code/datums/components/tilted.html
new file mode 100644
index 00000000000..35440bc567c
--- /dev/null
+++ b/code/datums/components/tilted.html
@@ -0,0 +1,2 @@
+code/datums/components/tilted.dm - Space Station 13Space Station 13 - Modules - Types
A component that should be attached to things that have been tilted over, and can be righted.
+This can optionally block normal attack_hand interactions
\ No newline at end of file
diff --git a/code/datums/components/tippable.html b/code/datums/components/tippable.html
new file mode 100644
index 00000000000..d6bbf7507c1
--- /dev/null
+++ b/code/datums/components/tippable.html
@@ -0,0 +1 @@
+code/datums/components/tippable.dm - Space Station 13Space Station 13 - Modules - Types
Tippable component. For making mobs able to be tipped, like cows and medibots.
\ No newline at end of file
diff --git a/code/datums/components/two_handed.html b/code/datums/components/two_handed.html
new file mode 100644
index 00000000000..9f055e8733a
--- /dev/null
+++ b/code/datums/components/two_handed.html
@@ -0,0 +1 @@
+code/datums/components/two_handed.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/custom_user_item.html b/code/datums/custom_user_item.html
new file mode 100644
index 00000000000..6233c76c0c0
--- /dev/null
+++ b/code/datums/custom_user_item.html
@@ -0,0 +1 @@
+code/datums/custom_user_item.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/discord/discord_webhook.html b/code/datums/discord/discord_webhook.html
new file mode 100644
index 00000000000..73d0622de6c
--- /dev/null
+++ b/code/datums/discord/discord_webhook.html
@@ -0,0 +1 @@
+code/datums/discord/discord_webhook.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/diseases/advance/symptoms/dizzy.html b/code/datums/diseases/advance/symptoms/dizzy.html
new file mode 100644
index 00000000000..53396fbb4be
--- /dev/null
+++ b/code/datums/diseases/advance/symptoms/dizzy.html
@@ -0,0 +1 @@
+code/datums/diseases/advance/symptoms/dizzy.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/elements/_element.html b/code/datums/elements/_element.html
new file mode 100644
index 00000000000..0b0dcb45696
--- /dev/null
+++ b/code/datums/elements/_element.html
@@ -0,0 +1 @@
+code/datums/elements/_element.dm - Space Station 13Space Station 13 - Modules - Types
A holder for simple behaviour that can be attached to many different types
\ No newline at end of file
diff --git a/code/datums/elements/ai_flee_while_injured.html b/code/datums/elements/ai_flee_while_injured.html
new file mode 100644
index 00000000000..c31fd82c1da
--- /dev/null
+++ b/code/datums/elements/ai_flee_while_injured.html
@@ -0,0 +1 @@
+code/datums/elements/ai_flee_while_injured.dm - Space Station 13Space Station 13 - Modules - Types
Attached to a mob with an AI controller, simply sets a flag on whether or not to run away based on current health values.
\ No newline at end of file
diff --git a/code/datums/elements/ai_retaliate.html b/code/datums/elements/ai_retaliate.html
new file mode 100644
index 00000000000..c7d3a1dd975
--- /dev/null
+++ b/code/datums/elements/ai_retaliate.html
@@ -0,0 +1,2 @@
+code/datums/elements/ai_retaliate.dm - Space Station 13Space Station 13 - Modules - Types
Attached to a mob with an AI controller, passes things which have damaged it to a blackboard.
+The AI controller is responsible for doing anything with that information.
\ No newline at end of file
diff --git a/code/datums/elements/atmos_requirements.html b/code/datums/elements/atmos_requirements.html
new file mode 100644
index 00000000000..94eb931e7a9
--- /dev/null
+++ b/code/datums/elements/atmos_requirements.html
@@ -0,0 +1 @@
+code/datums/elements/atmos_requirements.dm - Space Station 13Space Station 13 - Modules - Types
Bespoke element that deals damage to the attached mob when the atmos requirements aren't satisfied
\ No newline at end of file
diff --git a/code/datums/elements/basic_eating.html b/code/datums/elements/basic_eating.html
new file mode 100644
index 00000000000..b9dd888403e
--- /dev/null
+++ b/code/datums/elements/basic_eating.html
@@ -0,0 +1 @@
+code/datums/elements/basic_eating.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/elements/body_temperature.html b/code/datums/elements/body_temperature.html
new file mode 100644
index 00000000000..6d160897e68
--- /dev/null
+++ b/code/datums/elements/body_temperature.html
@@ -0,0 +1 @@
+code/datums/elements/body_temperature.dm - Space Station 13Space Station 13 - Modules - Types
Bespoke element that deals damage to the attached mob when the ambient temperature is unsuitable.
\ No newline at end of file
diff --git a/code/datums/elements/bombable_turf.html b/code/datums/elements/bombable_turf.html
new file mode 100644
index 00000000000..00ee0a2f42a
--- /dev/null
+++ b/code/datums/elements/bombable_turf.html
@@ -0,0 +1,3 @@
+code/datums/elements/bombable_turf.dm - Space Station 13Space Station 13 - Modules - Types
Apply this to a turf (usually a wall) and it will be destroyed instantly by any explosion.
+Most walls can already be destroyed by explosions so this is largely for usually indestructible ones.
+For applying it in a map editor, use /obj/effect/mapping_helpers/bombable_wall
\ No newline at end of file
diff --git a/code/datums/elements/butchers_humans.html b/code/datums/elements/butchers_humans.html
new file mode 100644
index 00000000000..65d899acf25
--- /dev/null
+++ b/code/datums/elements/butchers_humans.html
@@ -0,0 +1,2 @@
+code/datums/elements/butchers_humans.dm - Space Station 13Space Station 13 - Modules - Types
An element for items that butcher human corpses into meat when attacked on
+harm intent.
\ No newline at end of file
diff --git a/code/datums/elements/clothing_adjustment.html b/code/datums/elements/clothing_adjustment.html
new file mode 100644
index 00000000000..04da6ebb36b
--- /dev/null
+++ b/code/datums/elements/clothing_adjustment.html
@@ -0,0 +1,3 @@
+code/datums/elements/clothing_adjustment.dm - Space Station 13Space Station 13 - Modules - Types
An element for making visual modifications to items when worn externally by
+a carbon mob. This could range to anything from changing its pixel offsets
+to its color or size.
\ No newline at end of file
diff --git a/code/datums/elements/connect_loc.html b/code/datums/elements/connect_loc.html
new file mode 100644
index 00000000000..77563dca4e1
--- /dev/null
+++ b/code/datums/elements/connect_loc.html
@@ -0,0 +1,2 @@
+code/datums/elements/connect_loc.dm - Space Station 13Space Station 13 - Modules - Types
This element hooks a signal onto the loc the current object is on.
+When the object moves, it will unhook the signal and rehook it to the new object.
\ No newline at end of file
diff --git a/code/datums/elements/corrupt_organ.html b/code/datums/elements/corrupt_organ.html
new file mode 100644
index 00000000000..63af24c7d78
--- /dev/null
+++ b/code/datums/elements/corrupt_organ.html
@@ -0,0 +1,2 @@
+code/datums/elements/corrupt_organ.dm - Space Station 13Space Station 13 - Modules - Types
Component applying shared behaviour by cursed organs granted when sacrificed by a heretic
+Mostly just does something spooky when it is removed
\ No newline at end of file
diff --git a/code/datums/elements/death_gasses.html b/code/datums/elements/death_gasses.html
new file mode 100644
index 00000000000..ff914432f71
--- /dev/null
+++ b/code/datums/elements/death_gasses.html
@@ -0,0 +1 @@
+code/datums/elements/death_gasses.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/elements/hostile_machine.html b/code/datums/elements/hostile_machine.html
new file mode 100644
index 00000000000..bfc9803454c
--- /dev/null
+++ b/code/datums/elements/hostile_machine.html
@@ -0,0 +1 @@
+code/datums/elements/hostile_machine.dm - Space Station 13Space Station 13 - Modules - Types
AIs will attack this as a potential target if they see it
\ No newline at end of file
diff --git a/code/datums/elements/leaching_walk.html b/code/datums/elements/leaching_walk.html
new file mode 100644
index 00000000000..7e9eb841c86
--- /dev/null
+++ b/code/datums/elements/leaching_walk.html
@@ -0,0 +1 @@
+code/datums/elements/leaching_walk.dm - Space Station 13Space Station 13 - Modules - Types
Buffs and heals the target while standing on rust.
\ No newline at end of file
diff --git a/code/datums/elements/light_blocking.html b/code/datums/elements/light_blocking.html
new file mode 100644
index 00000000000..f429b1a1716
--- /dev/null
+++ b/code/datums/elements/light_blocking.html
@@ -0,0 +1 @@
+code/datums/elements/light_blocking.dm - Space Station 13Space Station 13 - Modules - Types
Attached to movable atoms with opacity. Listens to them move and updates their old and new turf loc's opacity accordingly
\ No newline at end of file
diff --git a/code/datums/elements/noticable_organ.html b/code/datums/elements/noticable_organ.html
new file mode 100644
index 00000000000..7381f4b7c0f
--- /dev/null
+++ b/code/datums/elements/noticable_organ.html
@@ -0,0 +1 @@
+code/datums/elements/noticable_organ.dm - Space Station 13Space Station 13 - Modules - Types
noticable organ element; which makes organs have a special description added to the person with the organ, if certain body zones aren't covered.
\ No newline at end of file
diff --git a/code/datums/elements/pet_bonus.html b/code/datums/elements/pet_bonus.html
new file mode 100644
index 00000000000..1da6838a0ea
--- /dev/null
+++ b/code/datums/elements/pet_bonus.html
@@ -0,0 +1 @@
+code/datums/elements/pet_bonus.dm - Space Station 13Space Station 13 - Modules - Types
Bespoke element that plays a fun message, and sends a heart out when you pet this animal.
\ No newline at end of file
diff --git a/code/datums/elements/relay_attackers.html b/code/datums/elements/relay_attackers.html
new file mode 100644
index 00000000000..9e082b6aa18
--- /dev/null
+++ b/code/datums/elements/relay_attackers.html
@@ -0,0 +1,3 @@
+code/datums/elements/relay_attackers.dm - Space Station 13Space Station 13 - Modules - Types
This element registers to a shitload of signals which can signify "someone attacked me".
+If anyone does it sends a single "someone attacked me" signal containing details about who done it.
+This prevents other components and elements from having to register to the same list of a million signals, should be more maintainable in one place.
\ No newline at end of file
diff --git a/code/datums/elements/ridable.html b/code/datums/elements/ridable.html
new file mode 100644
index 00000000000..bc6818726aa
--- /dev/null
+++ b/code/datums/elements/ridable.html
@@ -0,0 +1,2 @@
+code/datums/elements/ridable.dm - Space Station 13Space Station 13 - Modules - Types
This element is used to indicate that a movable atom can be mounted by mobs in order to ride it. The movable is considered mounted when a mob is buckled to it,
+at which point a riding component is created on the movable, and that component handles the actual riding behavior.
\ No newline at end of file
diff --git a/code/datums/elements/rust_element.html b/code/datums/elements/rust_element.html
new file mode 100644
index 00000000000..f47b11ebf0c
--- /dev/null
+++ b/code/datums/elements/rust_element.html
@@ -0,0 +1 @@
+code/datums/elements/rust_element.dm - Space Station 13Space Station 13 - Modules - Types
For rust applied by heretics (if that ever happens) / revenants
\ No newline at end of file
diff --git a/code/datums/elements/shatters_when_thrown.html b/code/datums/elements/shatters_when_thrown.html
new file mode 100644
index 00000000000..e466756d07e
--- /dev/null
+++ b/code/datums/elements/shatters_when_thrown.html
@@ -0,0 +1 @@
+code/datums/elements/shatters_when_thrown.dm - Space Station 13Space Station 13 - Modules - Types
When attached to something, will make that thing shatter into shards on throw impact or z level falling
\ No newline at end of file
diff --git a/code/datums/elements/shelf_positioning.html b/code/datums/elements/shelf_positioning.html
new file mode 100644
index 00000000000..9258d8c931a
--- /dev/null
+++ b/code/datums/elements/shelf_positioning.html
@@ -0,0 +1 @@
+code/datums/elements/shelf_positioning.dm - Space Station 13Space Station 13 - Modules - Types
Shelf positioning allows for custom positioning on shelves for individual items.
\ No newline at end of file
diff --git a/code/datums/elements/sideways_movement.html b/code/datums/elements/sideways_movement.html
new file mode 100644
index 00000000000..7a21d9001ac
--- /dev/null
+++ b/code/datums/elements/sideways_movement.html
@@ -0,0 +1 @@
+code/datums/elements/sideways_movement.dm - Space Station 13Space Station 13 - Modules - Types
A simple element that forces the mob to face a perpendicular direction when moving, like crabs.
\ No newline at end of file
diff --git a/code/datums/elements/strippable.html b/code/datums/elements/strippable.html
new file mode 100644
index 00000000000..12f0b2b85a1
--- /dev/null
+++ b/code/datums/elements/strippable.html
@@ -0,0 +1 @@
+code/datums/elements/strippable.dm - Space Station 13Space Station 13 - Modules - Types
Creates an assoc list of keys to /datum/strippable_item
\ No newline at end of file
diff --git a/code/datums/emote.html b/code/datums/emote.html
new file mode 100644
index 00000000000..cda23965fab
--- /dev/null
+++ b/code/datums/emote.html
@@ -0,0 +1,3 @@
+code/datums/emote.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Send an emote to runechat for all (listening) users in the vicinity.
Define Details
DEFAULT_MAX_STAT_ALLOWED
Sentinel for emote stats.
+If this is set for max stat, then its value will be ignored.
\ No newline at end of file
diff --git a/code/datums/helper_datums/async_input.html b/code/datums/helper_datums/async_input.html
new file mode 100644
index 00000000000..73d5433aa37
--- /dev/null
+++ b/code/datums/helper_datums/async_input.html
@@ -0,0 +1 @@
+code/datums/helper_datums/async_input.dm - Space Station 13Space Station 13 - Modules - Types
THIS WILL BE REMOVED IN THE FUTURE, I STRONGLY SUGGEST AGAINST USING THIS - GDN
\ No newline at end of file
diff --git a/code/datums/helper_datums/teleport.html b/code/datums/helper_datums/teleport.html
new file mode 100644
index 00000000000..a0726b332ed
--- /dev/null
+++ b/code/datums/helper_datums/teleport.html
@@ -0,0 +1 @@
+code/datums/helper_datums/teleport.dm - Space Station 13Space Station 13 - Modules - Types
Returns a random department of areas to pass into get_safe_random_station_turf() for more equal spawning.
\ No newline at end of file
diff --git a/code/datums/holocall.html b/code/datums/holocall.html
new file mode 100644
index 00000000000..38fb8bdd5ff
--- /dev/null
+++ b/code/datums/holocall.html
@@ -0,0 +1 @@
+code/datums/holocall.dm - Space Station 13Space Station 13 - Modules - Types
The hangup action handler, for handling the hangup button displayed in the top left corner of the screen
\ No newline at end of file
diff --git a/code/datums/http.html b/code/datums/http.html
new file mode 100644
index 00000000000..3ce92fb7661
--- /dev/null
+++ b/code/datums/http.html
@@ -0,0 +1 @@
+code/datums/http.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/job_selection/job_candidate.html b/code/datums/job_selection/job_candidate.html
new file mode 100644
index 00000000000..8851c1c3339
--- /dev/null
+++ b/code/datums/job_selection/job_candidate.html
@@ -0,0 +1,4 @@
+code/datums/job_selection/job_candidate.dm - Space Station 13Space Station 13 - Modules - Types
A datum representing all the information needed to perform roundstart job
+selection, without actually needing clients. This allows for the creation
+of fake candidates, allowing testing of the role selection system independent
+of the number of actual players.
\ No newline at end of file
diff --git a/code/datums/keybindings/mob_keybinds.html b/code/datums/keybindings/mob_keybinds.html
new file mode 100644
index 00000000000..585703d13b5
--- /dev/null
+++ b/code/datums/keybindings/mob_keybinds.html
@@ -0,0 +1 @@
+code/datums/keybindings/mob_keybinds.dm - Space Station 13Space Station 13 - Modules - Types
Don't add a name to this, shouldn't show up in the prefs menu
\ No newline at end of file
diff --git a/code/datums/looping_sounds/looping_sound.html b/code/datums/looping_sounds/looping_sound.html
new file mode 100644
index 00000000000..bd0a9763a03
--- /dev/null
+++ b/code/datums/looping_sounds/looping_sound.html
@@ -0,0 +1 @@
+code/datums/looping_sounds/looping_sound.dm - Space Station 13Space Station 13 - Modules - Types
Looping sounds that decrease volume by a specified % each loop until it reaches a specified total % volume.
\ No newline at end of file
diff --git a/code/datums/looping_sounds/machinery_sounds.html b/code/datums/looping_sounds/machinery_sounds.html
new file mode 100644
index 00000000000..d1bac0e361e
--- /dev/null
+++ b/code/datums/looping_sounds/machinery_sounds.html
@@ -0,0 +1 @@
+code/datums/looping_sounds/machinery_sounds.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/mapping/themes/caves_theme.html b/code/datums/mapping/themes/caves_theme.html
new file mode 100644
index 00000000000..11ee662213b
--- /dev/null
+++ b/code/datums/mapping/themes/caves_theme.html
@@ -0,0 +1 @@
+code/datums/mapping/themes/caves_theme.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Effective probability modifier for spawning flora and fauna in oases.
Define Details
LAVALAND_MAX_CAVE_Y
Approximate upper bound of the walkable land area on Lavaland, south of the Legion entrance.
LAVALAND_MIN_CAVE_Y
Approximate lower bound of the walkable land area on Lavaland, north of the southern lava border.
OASIS_SPAWNER_PROB_MODIFIER
Effective probability modifier for spawning flora and fauna in oases.
\ No newline at end of file
diff --git a/code/datums/move_manager.html b/code/datums/move_manager.html
new file mode 100644
index 00000000000..6e1378e4642
--- /dev/null
+++ b/code/datums/move_manager.html
@@ -0,0 +1 @@
+code/datums/move_manager.dm - Space Station 13Space Station 13 - Modules - Types
A packet of information that describes the current state of a moving object
\ No newline at end of file
diff --git a/code/datums/movement_detector.html b/code/datums/movement_detector.html
new file mode 100644
index 00000000000..07c74be8a93
--- /dev/null
+++ b/code/datums/movement_detector.html
@@ -0,0 +1 @@
+code/datums/movement_detector.dm - Space Station 13Space Station 13 - Modules - Types
A datum to handle the busywork of registering signals to handle in depth tracking of a movable
\ No newline at end of file
diff --git a/code/datums/ores.html b/code/datums/ores.html
new file mode 100644
index 00000000000..8b7546c266d
--- /dev/null
+++ b/code/datums/ores.html
@@ -0,0 +1 @@
+code/datums/ores.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The gibtonite ore has been stabilized and its detonation countdown is cancelled.
GIBTONITE_UNSTRUCK
The gibtonite ore is dormant.
\ No newline at end of file
diff --git a/code/datums/outfits/outfit_admin.html b/code/datums/outfits/outfit_admin.html
new file mode 100644
index 00000000000..cfa2e917246
--- /dev/null
+++ b/code/datums/outfits/outfit_admin.html
@@ -0,0 +1 @@
+code/datums/outfits/outfit_admin.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/outfits/outfit_debug.html b/code/datums/outfits/outfit_debug.html
new file mode 100644
index 00000000000..ac328e002c7
--- /dev/null
+++ b/code/datums/outfits/outfit_debug.html
@@ -0,0 +1 @@
+code/datums/outfits/outfit_debug.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/pathfinding_mover.html b/code/datums/pathfinding_mover.html
new file mode 100644
index 00000000000..5b8fa51d004
--- /dev/null
+++ b/code/datums/pathfinding_mover.html
@@ -0,0 +1 @@
+code/datums/pathfinding_mover.dm - Space Station 13Space Station 13 - Modules - Types
A generalized datum for pathfinding, and moving to a target.
\ No newline at end of file
diff --git a/code/datums/pipe_datums.html b/code/datums/pipe_datums.html
new file mode 100644
index 00000000000..c588a941ffd
--- /dev/null
+++ b/code/datums/pipe_datums.html
@@ -0,0 +1 @@
+code/datums/pipe_datums.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/position_point_vector.html b/code/datums/position_point_vector.html
new file mode 100644
index 00000000000..f655829293c
--- /dev/null
+++ b/code/datums/position_point_vector.html
@@ -0,0 +1 @@
+code/datums/position_point_vector.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/proximity/advanced_proximity_monitor.html b/code/datums/proximity/advanced_proximity_monitor.html
new file mode 100644
index 00000000000..179ad1fd275
--- /dev/null
+++ b/code/datums/proximity/advanced_proximity_monitor.html
@@ -0,0 +1,3 @@
+code/datums/proximity/advanced_proximity_monitor.dm - Space Station 13Space Station 13 - Modules - Types
Movable and easily code-modified fields! Allows for custom AOE effects that affect movement
+and anything inside of them, and can do custom turf effects!
+Supports automatic recalculation/reset on movement.
\ No newline at end of file
diff --git a/code/datums/proximity/void_storm_proximity.html b/code/datums/proximity/void_storm_proximity.html
new file mode 100644
index 00000000000..2f1e272d079
--- /dev/null
+++ b/code/datums/proximity/void_storm_proximity.html
@@ -0,0 +1,2 @@
+code/datums/proximity/void_storm_proximity.dm - Space Station 13Space Station 13 - Modules - Types
code/datums/proximity/void_storm_proximity.dm
Void storm for the void heretic ascension
+
Follows the heretic around and acts like an aura with damaging effects for non-heretics
\ No newline at end of file
diff --git a/code/datums/revision.html b/code/datums/revision.html
new file mode 100644
index 00000000000..ff2a8787ac4
--- /dev/null
+++ b/code/datums/revision.html
@@ -0,0 +1 @@
+code/datums/revision.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/spell_handler/spell_handler.html b/code/datums/spell_handler/spell_handler.html
new file mode 100644
index 00000000000..6fd2153e06f
--- /dev/null
+++ b/code/datums/spell_handler/spell_handler.html
@@ -0,0 +1,3 @@
+code/datums/spell_handler/spell_handler.dm - Space Station 13Space Station 13 - Modules - Types
The base class for the handler systems spells use.
+Subtypes of this class can be added to spells to modify their behaviour and change their can_cast.
+Thus allowing for a more modular behaviour system. For example a vampire spell that jaunts can just add the vampire spell_handler to the jaunt spell
\ No newline at end of file
diff --git a/code/datums/spell_targeting/alive_mobs.html b/code/datums/spell_targeting/alive_mobs.html
new file mode 100644
index 00000000000..79ea8c7be78
--- /dev/null
+++ b/code/datums/spell_targeting/alive_mobs.html
@@ -0,0 +1 @@
+code/datums/spell_targeting/alive_mobs.dm - Space Station 13Space Station 13 - Modules - Types
Will find targets in the GLOB.alive_mob_list. The result will be in a random order
\ No newline at end of file
diff --git a/code/datums/spell_targeting/aoe.html b/code/datums/spell_targeting/aoe.html
new file mode 100644
index 00000000000..e82444ba44a
--- /dev/null
+++ b/code/datums/spell_targeting/aoe.html
@@ -0,0 +1 @@
+code/datums/spell_targeting/aoe.dm - Space Station 13Space Station 13 - Modules - Types
An area of effect based spell targeting system. Will return all targets in the given range
\ No newline at end of file
diff --git a/code/datums/spell_targeting/click_spell_targeting.html b/code/datums/spell_targeting/click_spell_targeting.html
new file mode 100644
index 00000000000..104ddd4a8e4
--- /dev/null
+++ b/code/datums/spell_targeting/click_spell_targeting.html
@@ -0,0 +1 @@
+code/datums/spell_targeting/click_spell_targeting.dm - Space Station 13Space Station 13 - Modules - Types
A click based spell targeting system. The clicked atom will be used to determine who/what to target
\ No newline at end of file
diff --git a/code/datums/spell_targeting/clicked_atom.html b/code/datums/spell_targeting/clicked_atom.html
new file mode 100644
index 00000000000..43f4caff314
--- /dev/null
+++ b/code/datums/spell_targeting/clicked_atom.html
@@ -0,0 +1 @@
+code/datums/spell_targeting/clicked_atom.dm - Space Station 13Space Station 13 - Modules - Types
A simple spell targeting system. Will return the clicked atom as a target. Only works for 1 target max and is basically a dumbed down /datum/spell_targeting/click
\ No newline at end of file
diff --git a/code/datums/spell_targeting/matter_eater_targeting.html b/code/datums/spell_targeting/matter_eater_targeting.html
new file mode 100644
index 00000000000..15264433be4
--- /dev/null
+++ b/code/datums/spell_targeting/matter_eater_targeting.html
@@ -0,0 +1 @@
+code/datums/spell_targeting/matter_eater_targeting.dm - Space Station 13Space Station 13 - Modules - Types
A spell targeting system especially made for the matter eater gene
\ No newline at end of file
diff --git a/code/datums/spell_targeting/reachable_turfs.html b/code/datums/spell_targeting/reachable_turfs.html
new file mode 100644
index 00000000000..08729a0a805
--- /dev/null
+++ b/code/datums/spell_targeting/reachable_turfs.html
@@ -0,0 +1 @@
+code/datums/spell_targeting/reachable_turfs.dm - Space Station 13Space Station 13 - Modules - Types
A spell targeting system which will return nearby turfs which are reachable from the users location. Will pad the targets with the user's location if needed
\ No newline at end of file
diff --git a/code/datums/spell_targeting/remoteview_targeting.html b/code/datums/spell_targeting/remoteview_targeting.html
new file mode 100644
index 00000000000..9ee672e803c
--- /dev/null
+++ b/code/datums/spell_targeting/remoteview_targeting.html
@@ -0,0 +1 @@
+code/datums/spell_targeting/remoteview_targeting.dm - Space Station 13Space Station 13 - Modules - Types
A spell targeting system which will return one user picked target from all alive mobs who have the remoteview block but do not have the psyresist block active.
\ No newline at end of file
diff --git a/code/datums/spell_targeting/self_targeting.html b/code/datums/spell_targeting/self_targeting.html
new file mode 100644
index 00000000000..921fd1e4051
--- /dev/null
+++ b/code/datums/spell_targeting/self_targeting.html
@@ -0,0 +1 @@
+code/datums/spell_targeting/self_targeting.dm - Space Station 13Space Station 13 - Modules - Types
A spell targeting system which will return the caster as target
\ No newline at end of file
diff --git a/code/datums/spell_targeting/spell_targeting.html b/code/datums/spell_targeting/spell_targeting.html
new file mode 100644
index 00000000000..eae06ba15c8
--- /dev/null
+++ b/code/datums/spell_targeting/spell_targeting.html
@@ -0,0 +1 @@
+code/datums/spell_targeting/spell_targeting.dm - Space Station 13Space Station 13 - Modules - Types
The base class for the targeting systems spells use.
\ No newline at end of file
diff --git a/code/datums/spell_targeting/spiral_targeting.html b/code/datums/spell_targeting/spiral_targeting.html
new file mode 100644
index 00000000000..8878ab9080e
--- /dev/null
+++ b/code/datums/spell_targeting/spiral_targeting.html
@@ -0,0 +1 @@
+code/datums/spell_targeting/spiral_targeting.dm - Space Station 13Space Station 13 - Modules - Types
Gets a list of turfs around the center atom to scramble.
\ No newline at end of file
diff --git a/code/datums/spell_targeting/targeted.html b/code/datums/spell_targeting/targeted.html
new file mode 100644
index 00000000000..97223591fa8
--- /dev/null
+++ b/code/datums/spell_targeting/targeted.html
@@ -0,0 +1 @@
+code/datums/spell_targeting/targeted.dm - Space Station 13Space Station 13 - Modules - Types
A spell targeting system which is able to select 1 to many targets in range/view of the caster. Has a random mode, distance from user based mode or a user input mode.
\ No newline at end of file
diff --git a/code/datums/spell_targeting/telepathic.html b/code/datums/spell_targeting/telepathic.html
new file mode 100644
index 00000000000..2e22cea41ed
--- /dev/null
+++ b/code/datums/spell_targeting/telepathic.html
@@ -0,0 +1 @@
+code/datums/spell_targeting/telepathic.dm - Space Station 13Space Station 13 - Modules - Types
A spell targeting system which will allow the user to select a target from nearby living mobs. The name will be "Unknown entity" if the user can not see them
\ No newline at end of file
diff --git a/code/datums/spells/bloodcrawl.html b/code/datums/spells/bloodcrawl.html
new file mode 100644
index 00000000000..c32b8e803a3
--- /dev/null
+++ b/code/datums/spells/bloodcrawl.html
@@ -0,0 +1 @@
+code/datums/spells/bloodcrawl.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/spells/charge_up.html b/code/datums/spells/charge_up.html
new file mode 100644
index 00000000000..37222d96dd8
--- /dev/null
+++ b/code/datums/spells/charge_up.html
@@ -0,0 +1 @@
+code/datums/spells/charge_up.dm - Space Station 13Space Station 13 - Modules - Types
A click-based spell template which starts charging up once you click the action button/verb. Click again on something to activate the actual spell
\ No newline at end of file
diff --git a/code/datums/spells/charge_up_bounce.html b/code/datums/spells/charge_up_bounce.html
new file mode 100644
index 00000000000..f77c69282fc
--- /dev/null
+++ b/code/datums/spells/charge_up_bounce.html
@@ -0,0 +1,2 @@
+code/datums/spells/charge_up_bounce.dm - Space Station 13Space Station 13 - Modules - Types
A spell template that adds bounces to the charge_up spell template. The spell will bounce between targets once released.
+Don't override cast and instead override apply_bounce_effect and the other procs
\ No newline at end of file
diff --git a/code/datums/spells/construct_spells.html b/code/datums/spells/construct_spells.html
new file mode 100644
index 00000000000..c37f4b82f81
--- /dev/null
+++ b/code/datums/spells/construct_spells.html
@@ -0,0 +1 @@
+code/datums/spells/construct_spells.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/station_traits/_station_trait.html b/code/datums/station_traits/_station_trait.html
new file mode 100644
index 00000000000..dcd8510f524
--- /dev/null
+++ b/code/datums/station_traits/_station_trait.html
@@ -0,0 +1 @@
+code/datums/station_traits/_station_trait.dm - Space Station 13Space Station 13 - Modules - Types
Base class of station traits. These are used to influence rounds in one way or the other by influencing the levers of the station.
\ No newline at end of file
diff --git a/code/datums/station_traits/positive_traits.html b/code/datums/station_traits/positive_traits.html
new file mode 100644
index 00000000000..8eb5525069c
--- /dev/null
+++ b/code/datums/station_traits/positive_traits.html
@@ -0,0 +1 @@
+code/datums/station_traits/positive_traits.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/status_effects/debuffs.html b/code/datums/status_effects/debuffs.html
new file mode 100644
index 00000000000..5883c8b7991
--- /dev/null
+++ b/code/datums/status_effects/debuffs.html
@@ -0,0 +1,6 @@
+code/datums/status_effects/debuffs.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Status effect that gives the target miscellanous debuffs while throwing a status alert and causing them to smoke from the damage they're incurring.
+Purposebuilt for cursed slot machines.
\ No newline at end of file
diff --git a/code/datums/status_effects/neutral.html b/code/datums/status_effects/neutral.html
new file mode 100644
index 00000000000..21404de0954
--- /dev/null
+++ b/code/datums/status_effects/neutral.html
@@ -0,0 +1,2 @@
+code/datums/status_effects/neutral.dm - Space Station 13Space Station 13 - Modules - Types
A status effect that can have a certain amount of "bonus" duration added, which extends the duration every tick,
+although there is a maximum amount of bonus time that can be active at any given time.
\ No newline at end of file
diff --git a/code/datums/status_effects/status_effect.html b/code/datums/status_effects/status_effect.html
new file mode 100644
index 00000000000..175ae55736d
--- /dev/null
+++ b/code/datums/status_effects/status_effect.html
@@ -0,0 +1,2 @@
+code/datums/status_effects/status_effect.dm - Space Station 13Space Station 13 - Modules - Types
A status effect that works off a (possibly decimal) counter before expiring, rather than a specified world.time.
+This allows for a more precise tweaking of status durations at runtime (e.g. paralysis).
\ No newline at end of file
diff --git a/code/datums/uplink_items/uplink_special.html b/code/datums/uplink_items/uplink_special.html
new file mode 100644
index 00000000000..4cfb87478f1
--- /dev/null
+++ b/code/datums/uplink_items/uplink_special.html
@@ -0,0 +1 @@
+code/datums/uplink_items/uplink_special.dm - Space Station 13Space Station 13 - Modules - Types
This uplink catagory is for uplink items avalible by special circumstances. Think station traits, or if some event rolling in a round gave traitors special items, or an objective.
\ No newline at end of file
diff --git a/code/datums/uplink_items/uplink_traitor.html b/code/datums/uplink_items/uplink_traitor.html
new file mode 100644
index 00000000000..5bd82848dea
--- /dev/null
+++ b/code/datums/uplink_items/uplink_traitor.html
@@ -0,0 +1 @@
+code/datums/uplink_items/uplink_traitor.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/user_verb.html b/code/datums/user_verb.html
new file mode 100644
index 00000000000..5522d014201
--- /dev/null
+++ b/code/datums/user_verb.html
@@ -0,0 +1,3 @@
+code/datums/user_verb.dm - Space Station 13Space Station 13 - Modules - Types
This is the user verb datum. It is used to store the verb's information and handle the verb's functionality.
+All of this is setup for you, and you should not be defining this manually.
+That means you reader.
\ No newline at end of file
diff --git a/code/datums/verb_callbacks.html b/code/datums/verb_callbacks.html
new file mode 100644
index 00000000000..a5beeb073af
--- /dev/null
+++ b/code/datums/verb_callbacks.html
@@ -0,0 +1 @@
+code/datums/verb_callbacks.dm - Space Station 13Space Station 13 - Modules - Types
like normal callbacks but they also record their creation time for measurement purposes
\ No newline at end of file
diff --git a/code/datums/weather/weather_types/lavaland_weather.html b/code/datums/weather/weather_types/lavaland_weather.html
new file mode 100644
index 00000000000..f4fe59a007c
--- /dev/null
+++ b/code/datums/weather/weather_types/lavaland_weather.html
@@ -0,0 +1 @@
+code/datums/weather/weather_types/lavaland_weather.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/datums/weather/weather_types/radiation_storm.html b/code/datums/weather/weather_types/radiation_storm.html
new file mode 100644
index 00000000000..306a30e8e80
--- /dev/null
+++ b/code/datums/weather/weather_types/radiation_storm.html
@@ -0,0 +1 @@
+code/datums/weather/weather_types/radiation_storm.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Chance for mob to avoid being affected by rad storm
RAD_STORM_BAD_MUT_CHANCE
Chance to apply bad mutation. When failed will apply good mutation instead
RAD_STORM_RAD_AMOUNT
Amount of radiation mob receives when affected
\ No newline at end of file
diff --git a/code/game/area/areas/depot-areas.html b/code/game/area/areas/depot-areas.html
new file mode 100644
index 00000000000..021ba83e6c9
--- /dev/null
+++ b/code/game/area/areas/depot-areas.html
@@ -0,0 +1 @@
+code/game/area/areas/depot-areas.dm - Space Station 13Space Station 13 - Modules - Types
Currently disabled as our shuttle system does not support TG-shuttle areas yet
\ No newline at end of file
diff --git a/code/game/area/areas/mining_areas.html b/code/game/area/areas/mining_areas.html
new file mode 100644
index 00000000000..1201d55325f
--- /dev/null
+++ b/code/game/area/areas/mining_areas.html
@@ -0,0 +1 @@
+code/game/area/areas/mining_areas.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/area/areas/ruins/space_areas.html b/code/game/area/areas/ruins/space_areas.html
new file mode 100644
index 00000000000..388bb678b8e
--- /dev/null
+++ b/code/game/area/areas/ruins/space_areas.html
@@ -0,0 +1 @@
+code/game/area/areas/ruins/space_areas.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/area/away_content_areas.html b/code/game/area/away_content_areas.html
new file mode 100644
index 00000000000..44b2d695152
--- /dev/null
+++ b/code/game/area/away_content_areas.html
@@ -0,0 +1 @@
+code/game/area/away_content_areas.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/area/misc_areas.html b/code/game/area/misc_areas.html
new file mode 100644
index 00000000000..47db7e4624f
--- /dev/null
+++ b/code/game/area/misc_areas.html
@@ -0,0 +1 @@
+code/game/area/misc_areas.dm - Space Station 13Space Station 13 - Modules - Types
will be unused once kurper gets his login interface patch done
\ No newline at end of file
diff --git a/code/game/data_huds.html b/code/game/data_huds.html
new file mode 100644
index 00000000000..9d6eeb9ec5b
--- /dev/null
+++ b/code/game/data_huds.html
@@ -0,0 +1 @@
+code/game/data_huds.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/dna/dna_modifier.html b/code/game/dna/dna_modifier.html
new file mode 100644
index 00000000000..376f1869fdf
--- /dev/null
+++ b/code/game/dna/dna_modifier.html
@@ -0,0 +1 @@
+code/game/dna/dna_modifier.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/dna/mutations/mutation_powers.html b/code/game/dna/mutations/mutation_powers.html
new file mode 100644
index 00000000000..50816c391f0
--- /dev/null
+++ b/code/game/dna/mutations/mutation_powers.html
@@ -0,0 +1 @@
+code/game/dna/mutations/mutation_powers.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/gamemodes/cult/blood_magic.html b/code/game/gamemodes/cult/blood_magic.html
new file mode 100644
index 00000000000..c91142e02f1
--- /dev/null
+++ b/code/game/gamemodes/cult/blood_magic.html
@@ -0,0 +1 @@
+code/game/gamemodes/cult/blood_magic.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/gamemodes/cult/cult_objectives.html b/code/game/gamemodes/cult/cult_objectives.html
new file mode 100644
index 00000000000..75ed4f449ac
--- /dev/null
+++ b/code/game/gamemodes/cult/cult_objectives.html
@@ -0,0 +1 @@
+code/game/gamemodes/cult/cult_objectives.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/gamemodes/cult/cult_structures.html b/code/game/gamemodes/cult/cult_structures.html
new file mode 100644
index 00000000000..f36031b09ca
--- /dev/null
+++ b/code/game/gamemodes/cult/cult_structures.html
@@ -0,0 +1 @@
+code/game/gamemodes/cult/cult_structures.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The amount of time necessary for a structure to be able to produce items after being built
Define Details
CULT_STRUCTURE_COOLDOWN
The amount of time necessary for a structure to be able to produce items after being built
\ No newline at end of file
diff --git a/code/game/gamemodes/cult/runes.html b/code/game/gamemodes/cult/runes.html
new file mode 100644
index 00000000000..049dc777b30
--- /dev/null
+++ b/code/game/gamemodes/cult/runes.html
@@ -0,0 +1 @@
+code/game/gamemodes/cult/runes.dm - Space Station 13Space Station 13 - Modules - Types
When invoked deals up to 30 burn damage to nearby non-cultists and sets them on fire.
\ No newline at end of file
diff --git a/code/game/gamemodes/dynamic/antag_rulesets.html b/code/game/gamemodes/dynamic/antag_rulesets.html
new file mode 100644
index 00000000000..3b79b26b345
--- /dev/null
+++ b/code/game/gamemodes/dynamic/antag_rulesets.html
@@ -0,0 +1 @@
+code/game/gamemodes/dynamic/antag_rulesets.dm - Space Station 13Space Station 13 - Modules - Types
These are gamemode rulesets for the dynamic gamemode type. They determine what antagonists spawn during a round.
\ No newline at end of file
diff --git a/code/game/gamemodes/miniantags/abduction/abduction_gear.html b/code/game/gamemodes/miniantags/abduction/abduction_gear.html
new file mode 100644
index 00000000000..77600d0ab4f
--- /dev/null
+++ b/code/game/gamemodes/miniantags/abduction/abduction_gear.html
@@ -0,0 +1 @@
+code/game/gamemodes/miniantags/abduction/abduction_gear.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/gamemodes/miniantags/guardian/guardian.html b/code/game/gamemodes/miniantags/guardian/guardian.html
new file mode 100644
index 00000000000..7de699a0d08
--- /dev/null
+++ b/code/game/gamemodes/miniantags/guardian/guardian.html
@@ -0,0 +1 @@
+code/game/gamemodes/miniantags/guardian/guardian.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/gamemodes/miniantags/guardian/host_actions.html b/code/game/gamemodes/miniantags/guardian/host_actions.html
new file mode 100644
index 00000000000..4e6c512f00e
--- /dev/null
+++ b/code/game/gamemodes/miniantags/guardian/host_actions.html
@@ -0,0 +1 @@
+code/game/gamemodes/miniantags/guardian/host_actions.dm - Space Station 13Space Station 13 - Modules - Types
Allows the guardian host to exchange their guardian's player for another.
\ No newline at end of file
diff --git a/code/game/gamemodes/miniantags/uplifted_primitive/uplifted_primitive_nest.html b/code/game/gamemodes/miniantags/uplifted_primitive/uplifted_primitive_nest.html
new file mode 100644
index 00000000000..0cd5d844364
--- /dev/null
+++ b/code/game/gamemodes/miniantags/uplifted_primitive/uplifted_primitive_nest.html
@@ -0,0 +1 @@
+code/game/gamemodes/miniantags/uplifted_primitive/uplifted_primitive_nest.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The number of additional mobs permitted by each extra nearby nest.
Define Details
INTEGRITY_REGEN_AMOUNT
The amount of integrity to regenerate in exchange for scrap every process().
INTEGRITY_REGEN_SCRAP_COST
The amount of scrap to consume to regenerate every process().
SPAWN_COOLDOWN_TIME
The minimum amount of time to wait between spawning new mobs.
SPAWN_EXTRA_NEST_MOBS
The number of additional mobs permitted by each extra nearby nest.
SPAWN_FOOD_COST
The amount of food to consume when spawning a new mobs.
SPAWN_MAX_LIMIT
The maximum number the spawn count can reach before disabling NPC spawning.
SPAWN_SCRAP_COST
The amount of scrap to consume when spawning a new mobs.
SPAWN_SENTIENT_PROB_INCREASE
The number of percentage points to increase the probability of the next spawned mob being sentient by.
\ No newline at end of file
diff --git a/code/game/gamemodes/objective.html b/code/game/gamemodes/objective.html
new file mode 100644
index 00000000000..23bda547575
--- /dev/null
+++ b/code/game/gamemodes/objective.html
@@ -0,0 +1 @@
+code/game/gamemodes/objective.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/gamemodes/objective_holder.html b/code/game/gamemodes/objective_holder.html
new file mode 100644
index 00000000000..8a4be1be1a7
--- /dev/null
+++ b/code/game/gamemodes/objective_holder.html
@@ -0,0 +1 @@
+code/game/gamemodes/objective_holder.dm - Space Station 13Space Station 13 - Modules - Types
An objective holder for minds, antag datums, and teams.
\ No newline at end of file
diff --git a/code/game/gamemodes/wizard/artefact.html b/code/game/gamemodes/wizard/artefact.html
new file mode 100644
index 00000000000..8761ca168d7
--- /dev/null
+++ b/code/game/gamemodes/wizard/artefact.html
@@ -0,0 +1 @@
+code/game/gamemodes/wizard/artefact.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/gamemodes/wizard/magic_tarot.html b/code/game/gamemodes/wizard/magic_tarot.html
new file mode 100644
index 00000000000..de6f7d48b2f
--- /dev/null
+++ b/code/game/gamemodes/wizard/magic_tarot.html
@@ -0,0 +1 @@
+code/game/gamemodes/wizard/magic_tarot.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/gamemodes/wizard/soulstone.html b/code/game/gamemodes/wizard/soulstone.html
new file mode 100644
index 00000000000..6ce405979d6
--- /dev/null
+++ b/code/game/gamemodes/wizard/soulstone.html
@@ -0,0 +1 @@
+code/game/gamemodes/wizard/soulstone.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/jobs/job_exp.html b/code/game/jobs/job_exp.html
new file mode 100644
index 00000000000..5ee7f9b867b
--- /dev/null
+++ b/code/game/jobs/job_exp.html
@@ -0,0 +1 @@
+code/game/jobs/job_exp.dm - Space Station 13Space Station 13 - Modules - Types
Allows admins to determine who the newer players are.
\ No newline at end of file
diff --git a/code/game/machinery/Beacon.html b/code/game/machinery/Beacon.html
new file mode 100644
index 00000000000..73018e57bb1
--- /dev/null
+++ b/code/game/machinery/Beacon.html
@@ -0,0 +1 @@
+code/game/machinery/Beacon.dm - Space Station 13Space Station 13 - Modules - Types
beacon guaranteed offline at roundstart for infiltrator base
\ No newline at end of file
diff --git a/code/game/machinery/camera/camera.html b/code/game/machinery/camera/camera.html
new file mode 100644
index 00000000000..16eeee85f08
--- /dev/null
+++ b/code/game/machinery/camera/camera.html
@@ -0,0 +1 @@
+code/game/machinery/camera/camera.dm - Space Station 13Space Station 13 - Modules - Types
Cameras which are placed inside of things, such as helmets.
\ No newline at end of file
diff --git a/code/game/machinery/clonepod.html b/code/game/machinery/clonepod.html
new file mode 100644
index 00000000000..470085efba3
--- /dev/null
+++ b/code/game/machinery/clonepod.html
@@ -0,0 +1 @@
+code/game/machinery/clonepod.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
A list of robot parts for use later, so that you can put them straight into the cloner from the exosuit fabricator.
Define Details
ALLOWED_ROBOT_PARTS
A list of robot parts for use later, so that you can put them straight into the cloner from the exosuit fabricator.
FORBIDDEN_INTERNAL_ORGANS
Internal organs the cloner will never accept for insertion.
FORBIDDEN_LIMBS
Limbs that the cloner won't accept.
UPGRADE_LOCKED_ORGANS
Internal organs the cloner will only accept when fully upgraded.
VALID_BIOMASSABLES
Meats that can be used as biomass for the cloner.
VALID_REAGENTS
Reagents that can be inserted into the cloning pod (and not deleted by it).
\ No newline at end of file
diff --git a/code/game/machinery/clonescanner.html b/code/game/machinery/clonescanner.html
new file mode 100644
index 00000000000..b7a19e5c1a7
--- /dev/null
+++ b/code/game/machinery/clonescanner.html
@@ -0,0 +1 @@
+code/game/machinery/clonescanner.dm - Space Station 13Space Station 13 - Modules - Types
A datum to store the information gained by scanning a patient OR the fixes to be made to their body.
\ No newline at end of file
diff --git a/code/game/machinery/computer/camera_console.html b/code/game/machinery/computer/camera_console.html
new file mode 100644
index 00000000000..df111bda03d
--- /dev/null
+++ b/code/game/machinery/computer/camera_console.html
@@ -0,0 +1,4 @@
+code/game/machinery/computer/camera_console.dm - Space Station 13Space Station 13 - Modules - Types
The root type of all camera consoles. When used, these open a UI that has a left-hand sidebar
+displaying a list of active cameras in the console's assigned camera network. The bulk of the window
+on the right hand side displays a camera feed of the selected camera. This feed will attempt to refresh
+every time process() is called by SSobj as long as there are active watchers, living or dead.
\ No newline at end of file
diff --git a/code/game/machinery/computer/medical_records.html b/code/game/machinery/computer/medical_records.html
new file mode 100644
index 00000000000..1fba59c7a11
--- /dev/null
+++ b/code/game/machinery/computer/medical_records.html
@@ -0,0 +1 @@
+code/game/machinery/computer/medical_records.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/machinery/computer/power_monitor_console.html b/code/game/machinery/computer/power_monitor_console.html
new file mode 100644
index 00000000000..72768a6198e
--- /dev/null
+++ b/code/game/machinery/computer/power_monitor_console.html
@@ -0,0 +1 @@
+code/game/machinery/computer/power_monitor_console.dm - Space Station 13Space Station 13 - Modules - Types
Hides the power monitor (such as ones on ruins & CentCom) from PDA's to prevent metagaming.
\ No newline at end of file
diff --git a/code/game/machinery/cryopod.html b/code/game/machinery/cryopod.html
new file mode 100644
index 00000000000..29ab0b286b5
--- /dev/null
+++ b/code/game/machinery/cryopod.html
@@ -0,0 +1 @@
+code/game/machinery/cryopod.dm - Space Station 13Space Station 13 - Modules - Types
Immeditely teleport a human or robot to cryo and then despawn them.
\ No newline at end of file
diff --git a/code/game/machinery/deployable.html b/code/game/machinery/deployable.html
new file mode 100644
index 00000000000..4f4024a450e
--- /dev/null
+++ b/code/game/machinery/deployable.html
@@ -0,0 +1 @@
+code/game/machinery/deployable.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/machinery/doors/airlock.html b/code/game/machinery/doors/airlock.html
new file mode 100644
index 00000000000..dec30c644a8
--- /dev/null
+++ b/code/game/machinery/doors/airlock.html
@@ -0,0 +1 @@
+code/game/machinery/doors/airlock.dm - Space Station 13Space Station 13 - Modules - Types
Special case so spawners with doors autorotate, otherwise identicle
\ No newline at end of file
diff --git a/code/game/machinery/doors/airlock_types.html b/code/game/machinery/doors/airlock_types.html
new file mode 100644
index 00000000000..91ba08b2234
--- /dev/null
+++ b/code/game/machinery/doors/airlock_types.html
@@ -0,0 +1 @@
+code/game/machinery/doors/airlock_types.dm - Space Station 13Space Station 13 - Modules - Types
This door is used in the malf AI telecomms ruin. This door starts early access, and will try to crush someone to death who enters it's turf like how an AI door crushes.
\ No newline at end of file
diff --git a/code/game/machinery/flasher.html b/code/game/machinery/flasher.html
new file mode 100644
index 00000000000..9ba3ab39beb
--- /dev/null
+++ b/code/game/machinery/flasher.html
@@ -0,0 +1 @@
+code/game/machinery/flasher.dm - Space Station 13Space Station 13 - Modules - Types
Portable version of the flasher. Only flashes when anchored
\ No newline at end of file
diff --git a/code/game/machinery/hologram.html b/code/game/machinery/hologram.html
new file mode 100644
index 00000000000..88564e25a88
--- /dev/null
+++ b/code/game/machinery/hologram.html
@@ -0,0 +1 @@
+code/game/machinery/hologram.dm - Space Station 13Space Station 13 - Modules - Types
A stationary holopad for projecting hologram and making and receiving holocalls.
\ No newline at end of file
diff --git a/code/game/machinery/mass_driver.html b/code/game/machinery/mass_driver.html
new file mode 100644
index 00000000000..bceae600097
--- /dev/null
+++ b/code/game/machinery/mass_driver.html
@@ -0,0 +1 @@
+code/game/machinery/mass_driver.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/machinery/requests_console.html b/code/game/machinery/requests_console.html
new file mode 100644
index 00000000000..b351ff3c608
--- /dev/null
+++ b/code/game/machinery/requests_console.html
@@ -0,0 +1,2 @@
+code/game/machinery/requests_console.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Originally written by errorage, updated by: Carn, needs more work though. I just added some security fixes
\ No newline at end of file
diff --git a/code/game/machinery/shieldgen.html b/code/game/machinery/shieldgen.html
new file mode 100644
index 00000000000..a0e44d218ff
--- /dev/null
+++ b/code/game/machinery/shieldgen.html
@@ -0,0 +1 @@
+code/game/machinery/shieldgen.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
FIELD GEN START //shameless copypasta from fieldgen, powersink, and grille
\ No newline at end of file
diff --git a/code/game/machinery/syndicatebomb.html b/code/game/machinery/syndicatebomb.html
new file mode 100644
index 00000000000..7f54b69ff2c
--- /dev/null
+++ b/code/game/machinery/syndicatebomb.html
@@ -0,0 +1 @@
+code/game/machinery/syndicatebomb.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/machinery/tcomms/relay.html b/code/game/machinery/tcomms/relay.html
new file mode 100644
index 00000000000..425d0b78271
--- /dev/null
+++ b/code/game/machinery/tcomms/relay.html
@@ -0,0 +1 @@
+code/game/machinery/tcomms/relay.dm - Space Station 13Space Station 13 - Modules - Types
Extends the reach of telecomms to the z-level it is built on
\ No newline at end of file
diff --git a/code/game/machinery/tcomms/tcomms_base.html b/code/game/machinery/tcomms/tcomms_base.html
new file mode 100644
index 00000000000..8ab32df9d1c
--- /dev/null
+++ b/code/game/machinery/tcomms/tcomms_base.html
@@ -0,0 +1 @@
+code/game/machinery/tcomms/tcomms_base.dm - Space Station 13Space Station 13 - Modules - Types
Piece of paper that spawns with the default link password
\ No newline at end of file
diff --git a/code/game/machinery/tcomms/tcomms_core.html b/code/game/machinery/tcomms/tcomms_core.html
new file mode 100644
index 00000000000..e0b9a7f392d
--- /dev/null
+++ b/code/game/machinery/tcomms/tcomms_core.html
@@ -0,0 +1 @@
+code/game/machinery/tcomms/tcomms_core.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/machinery/tcomms/tcomms_presets.html b/code/game/machinery/tcomms/tcomms_presets.html
new file mode 100644
index 00000000000..5b590555d95
--- /dev/null
+++ b/code/game/machinery/tcomms/tcomms_presets.html
@@ -0,0 +1 @@
+code/game/machinery/tcomms/tcomms_presets.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/machinery/vendors/contraband_vendors.html b/code/game/machinery/vendors/contraband_vendors.html
new file mode 100644
index 00000000000..ed6ba2b8f48
--- /dev/null
+++ b/code/game/machinery/vendors/contraband_vendors.html
@@ -0,0 +1 @@
+code/game/machinery/vendors/contraband_vendors.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/machinery/vendors/generic_vendors.html b/code/game/machinery/vendors/generic_vendors.html
new file mode 100644
index 00000000000..2c61117c2ac
--- /dev/null
+++ b/code/game/machinery/vendors/generic_vendors.html
@@ -0,0 +1 @@
+code/game/machinery/vendors/generic_vendors.dm - Space Station 13Space Station 13 - Modules - Types
Used in the lavaland_biodome_beach.dmm ruin. As the ultimate in smokable vending, it sells the widest range in the grestest quantity.
\ No newline at end of file
diff --git a/code/game/machinery/vendors/tilt_crits.html b/code/game/machinery/vendors/tilt_crits.html
new file mode 100644
index 00000000000..df8d7b29d31
--- /dev/null
+++ b/code/game/machinery/vendors/tilt_crits.html
@@ -0,0 +1 @@
+code/game/machinery/vendors/tilt_crits.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/machinery/vendors/vending.html b/code/game/machinery/vendors/vending.html
new file mode 100644
index 00000000000..9736eff8630
--- /dev/null
+++ b/code/game/machinery/vendors/vending.html
@@ -0,0 +1 @@
+code/game/machinery/vendors/vending.dm - Space Station 13Space Station 13 - Modules - Types
Datum used to hold information about a product in a vending machine
\ No newline at end of file
diff --git a/code/game/machinery/wall_holosign.html b/code/game/machinery/wall_holosign.html
new file mode 100644
index 00000000000..edd535ccfc4
--- /dev/null
+++ b/code/game/machinery/wall_holosign.html
@@ -0,0 +1 @@
+code/game/machinery/wall_holosign.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/mecha/equipment/tools/janitor_tools.html b/code/game/mecha/equipment/tools/janitor_tools.html
new file mode 100644
index 00000000000..5f7ad60ba38
--- /dev/null
+++ b/code/game/mecha/equipment/tools/janitor_tools.html
@@ -0,0 +1 @@
+code/game/mecha/equipment/tools/janitor_tools.dm - Space Station 13Space Station 13 - Modules - Types
code/game/mecha/equipment/tools/janitor_tools.dm
How many seconds before the mopping sound triggers again
\ No newline at end of file
diff --git a/code/game/mecha/equipment/tools/other_tools.html b/code/game/mecha/equipment/tools/other_tools.html
new file mode 100644
index 00000000000..3468dfc3ea2
--- /dev/null
+++ b/code/game/mecha/equipment/tools/other_tools.html
@@ -0,0 +1,2 @@
+code/game/mecha/equipment/tools/other_tools.dm - Space Station 13Space Station 13 - Modules - Types
///////////////////////// ARMOR BOOSTER MODULES //////////////////////////////////////////////////////////
+what is that noise? A BAWWW from TK mutants.
\ No newline at end of file
diff --git a/code/game/mecha/mech_fabricator.html b/code/game/mecha/mech_fabricator.html
new file mode 100644
index 00000000000..2cdd7920f0a
--- /dev/null
+++ b/code/game/mecha/mech_fabricator.html
@@ -0,0 +1 @@
+code/game/mecha/mech_fabricator.dm - Space Station 13Space Station 13 - Modules - Types
A machine that allows for the production of exosuits and robotic parts.
\ No newline at end of file
diff --git a/code/game/mecha/mecha_parts.html b/code/game/mecha/mecha_parts.html
new file mode 100644
index 00000000000..4e39d4f909b
--- /dev/null
+++ b/code/game/mecha/mecha_parts.html
@@ -0,0 +1 @@
+code/game/mecha/mecha_parts.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/mecha/mecha_wreckage.html b/code/game/mecha/mecha_wreckage.html
new file mode 100644
index 00000000000..feb7edabdde
--- /dev/null
+++ b/code/game/mecha/mecha_wreckage.html
@@ -0,0 +1 @@
+code/game/mecha/mecha_wreckage.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/mecha/paintkits.html b/code/game/mecha/paintkits.html
new file mode 100644
index 00000000000..ba2899c4f7c
--- /dev/null
+++ b/code/game/mecha/paintkits.html
@@ -0,0 +1 @@
+code/game/mecha/paintkits.dm - Space Station 13Space Station 13 - Modules - Types
Please don't use this for anything, it's a base type for custom mech paintjobs.
\ No newline at end of file
diff --git a/code/game/objects/effects/anomalies.html b/code/game/objects/effects/anomalies.html
new file mode 100644
index 00000000000..ea947871515
--- /dev/null
+++ b/code/game/objects/effects/anomalies.html
@@ -0,0 +1 @@
+code/game/objects/effects/anomalies.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/game/objects/effects/anomalous_particulate.html b/code/game/objects/effects/anomalous_particulate.html
new file mode 100644
index 00000000000..a32e118e137
--- /dev/null
+++ b/code/game/objects/effects/anomalous_particulate.html
@@ -0,0 +1 @@
+code/game/objects/effects/anomalous_particulate.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The number of anomalous particulate gatherings per objective
Define Details
NUM_ANOM_PER_OBJ
The number of anomalous particulate gatherings per objective
\ No newline at end of file
diff --git a/code/game/objects/effects/decals/Cleanable/alien_blood.html b/code/game/objects/effects/decals/Cleanable/alien_blood.html
new file mode 100644
index 00000000000..679d3910fa3
--- /dev/null
+++ b/code/game/objects/effects/decals/Cleanable/alien_blood.html
@@ -0,0 +1 @@
+code/game/objects/effects/decals/Cleanable/alien_blood.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/effects/decals/Cleanable/humans.html b/code/game/objects/effects/decals/Cleanable/humans.html
new file mode 100644
index 00000000000..45cc446e5b7
--- /dev/null
+++ b/code/game/objects/effects/decals/Cleanable/humans.html
@@ -0,0 +1 @@
+code/game/objects/effects/decals/Cleanable/humans.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/effects/decals/Cleanable/misc_cleanables.html b/code/game/objects/effects/decals/Cleanable/misc_cleanables.html
new file mode 100644
index 00000000000..f150b92bd34
--- /dev/null
+++ b/code/game/objects/effects/decals/Cleanable/misc_cleanables.html
@@ -0,0 +1 @@
+code/game/objects/effects/decals/Cleanable/misc_cleanables.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/effects/decals/Cleanable/tracks.html b/code/game/objects/effects/decals/Cleanable/tracks.html
new file mode 100644
index 00000000000..20d8bd9318b
--- /dev/null
+++ b/code/game/objects/effects/decals/Cleanable/tracks.html
@@ -0,0 +1 @@
+code/game/objects/effects/decals/Cleanable/tracks.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/effects/decals/contraband_posters.html b/code/game/objects/effects/decals/contraband_posters.html
new file mode 100644
index 00000000000..5dcb9f7a766
--- /dev/null
+++ b/code/game/objects/effects/decals/contraband_posters.html
@@ -0,0 +1 @@
+code/game/objects/effects/decals/contraband_posters.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/effects/effect_system/effects_other.html b/code/game/objects/effects/effect_system/effects_other.html
new file mode 100644
index 00000000000..ac777ede0e0
--- /dev/null
+++ b/code/game/objects/effects/effect_system/effects_other.html
@@ -0,0 +1 @@
+code/game/objects/effects/effect_system/effects_other.dm - Space Station 13Space Station 13 - Modules - Types
Ion trails for jetpacks, ion thrusters and other space-flying things
\ No newline at end of file
diff --git a/code/game/objects/effects/effect_system/effects_smoke.html b/code/game/objects/effects/effect_system/effects_smoke.html
new file mode 100644
index 00000000000..f54cc3c5916
--- /dev/null
+++ b/code/game/objects/effects/effect_system/effects_smoke.html
@@ -0,0 +1 @@
+code/game/objects/effects/effect_system/effects_smoke.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/effects/effect_system/effects_sparks.html b/code/game/objects/effects/effect_system/effects_sparks.html
new file mode 100644
index 00000000000..b43e2c6367c
--- /dev/null
+++ b/code/game/objects/effects/effect_system/effects_sparks.html
@@ -0,0 +1 @@
+code/game/objects/effects/effect_system/effects_sparks.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/effects/effects.html b/code/game/objects/effects/effects.html
new file mode 100644
index 00000000000..81708f1448f
--- /dev/null
+++ b/code/game/objects/effects/effects.html
@@ -0,0 +1,2 @@
+code/game/objects/effects/effects.dm - Space Station 13Space Station 13 - Modules - Types
This is an object that is intended to able to be placed, but that is completely invisible.
+The object should be immune to all forms of damage, or things that can delete it, such as the singularity, or explosions.
These effects can be added to anything to hold particles, which is useful because Byond only allows a single particle per atom
\ No newline at end of file
diff --git a/code/game/objects/effects/forcefields.html b/code/game/objects/effects/forcefields.html
new file mode 100644
index 00000000000..6d0a353f254
--- /dev/null
+++ b/code/game/objects/effects/forcefields.html
@@ -0,0 +1 @@
+code/game/objects/effects/forcefields.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/effects/landmarks.html b/code/game/objects/effects/landmarks.html
new file mode 100644
index 00000000000..49d33cf2dda
--- /dev/null
+++ b/code/game/objects/effects/landmarks.html
@@ -0,0 +1 @@
+code/game/objects/effects/landmarks.dm - Space Station 13Space Station 13 - Modules - Types
Mob spawners, spawns a mob and deletes the landmark
\ No newline at end of file
diff --git a/code/game/objects/effects/overlays.html b/code/game/objects/effects/overlays.html
new file mode 100644
index 00000000000..ed4d27bb615
--- /dev/null
+++ b/code/game/objects/effects/overlays.html
@@ -0,0 +1 @@
+code/game/objects/effects/overlays.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/effects/spawners/depot_spawners.html b/code/game/objects/effects/spawners/depot_spawners.html
new file mode 100644
index 00000000000..2c260a3b495
--- /dev/null
+++ b/code/game/objects/effects/spawners/depot_spawners.html
@@ -0,0 +1 @@
+code/game/objects/effects/spawners/depot_spawners.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/effects/spawners/dynamic_bridge_spawner.html b/code/game/objects/effects/spawners/dynamic_bridge_spawner.html
new file mode 100644
index 00000000000..77b79bc560c
--- /dev/null
+++ b/code/game/objects/effects/spawners/dynamic_bridge_spawner.html
@@ -0,0 +1,2 @@
+code/game/objects/effects/spawners/dynamic_bridge_spawner.dm - Space Station 13Space Station 13 - Modules - Types
A spawner for dynamic bridges, largely with hardcoded expectations to be
+operating on Lavaland.
\ No newline at end of file
diff --git a/code/game/objects/effects/spawners/grouped_spawner.html b/code/game/objects/effects/spawners/grouped_spawner.html
new file mode 100644
index 00000000000..df3422a8d5d
--- /dev/null
+++ b/code/game/objects/effects/spawners/grouped_spawner.html
@@ -0,0 +1 @@
+code/game/objects/effects/spawners/grouped_spawner.dm - Space Station 13Space Station 13 - Modules - Types
Can be used to group spawners together so you ensure a certain amount of things are spawned but can be spawned on multiple locations.
\ No newline at end of file
diff --git a/code/game/objects/effects/spawners/random/pool/lavaland_pools.html b/code/game/objects/effects/spawners/random/pool/lavaland_pools.html
new file mode 100644
index 00000000000..b7cf14ac80c
--- /dev/null
+++ b/code/game/objects/effects/spawners/random/pool/lavaland_pools.html
@@ -0,0 +1 @@
+code/game/objects/effects/spawners/random/pool/lavaland_pools.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/effects/spawners/random/pool/pool_spawner.html b/code/game/objects/effects/spawners/random/pool/pool_spawner.html
new file mode 100644
index 00000000000..6ae9c214233
--- /dev/null
+++ b/code/game/objects/effects/spawners/random/pool/pool_spawner.html
@@ -0,0 +1 @@
+code/game/objects/effects/spawners/random/pool/pool_spawner.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/effects/spawners/random/pool/spawn_pool.html b/code/game/objects/effects/spawners/random/pool/spawn_pool.html
new file mode 100644
index 00000000000..7dfd293193c
--- /dev/null
+++ b/code/game/objects/effects/spawners/random/pool/spawn_pool.html
@@ -0,0 +1,3 @@
+code/game/objects/effects/spawners/random/pool/spawn_pool.dm - Space Station 13Space Station 13 - Modules - Types
Keeps track of the available points for a given pool, as well as any
+spawners that need to keep track globally of the number of any specific item
+that they spawn.
\ No newline at end of file
diff --git a/code/game/objects/effects/spawners/random/pool/spawn_pool_manager.html b/code/game/objects/effects/spawners/random/pool/spawn_pool_manager.html
new file mode 100644
index 00000000000..e612504e9e9
--- /dev/null
+++ b/code/game/objects/effects/spawners/random/pool/spawn_pool_manager.html
@@ -0,0 +1,3 @@
+code/game/objects/effects/spawners/random/pool/spawn_pool_manager.dm - Space Station 13Space Station 13 - Modules - Types
The singleton which keeps track of all spawn pools.
+All known /datum/spawn_pool subtypes are registered
+to it and are processed in SSlate_mapping.
\ No newline at end of file
diff --git a/code/game/objects/effects/spawners/random/random_spawner.html b/code/game/objects/effects/spawners/random/random_spawner.html
new file mode 100644
index 00000000000..56982ed6eca
--- /dev/null
+++ b/code/game/objects/effects/spawners/random/random_spawner.html
@@ -0,0 +1 @@
+code/game/objects/effects/spawners/random/random_spawner.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/effects/spawners/random/spawner_pixel_placer.html b/code/game/objects/effects/spawners/random/spawner_pixel_placer.html
new file mode 100644
index 00000000000..f8597fe5683
--- /dev/null
+++ b/code/game/objects/effects/spawners/random/spawner_pixel_placer.html
@@ -0,0 +1,2 @@
+code/game/objects/effects/spawners/random/spawner_pixel_placer.dm - Space Station 13Space Station 13 - Modules - Types
For use when arranging items on a tile with a staggered visual
+appearance. Initially for use with /obj/effect/spawner/randoms.
\ No newline at end of file
diff --git a/code/game/objects/effects/spawners/random/trash_spawners.html b/code/game/objects/effects/spawners/random/trash_spawners.html
new file mode 100644
index 00000000000..50600fbb5f1
--- /dev/null
+++ b/code/game/objects/effects/spawners/random/trash_spawners.html
@@ -0,0 +1,2 @@
+code/game/objects/effects/spawners/random/trash_spawners.dm - Space Station 13Space Station 13 - Modules - Types
Food trash spawner, for when you specifically want it to look like someone
+didn't clean up after themselves after lunch.
\ No newline at end of file
diff --git a/code/game/objects/effects/spawners/random_barrier.html b/code/game/objects/effects/spawners/random_barrier.html
new file mode 100644
index 00000000000..6f2501e9a49
--- /dev/null
+++ b/code/game/objects/effects/spawners/random_barrier.html
@@ -0,0 +1 @@
+code/game/objects/effects/spawners/random_barrier.dm - Space Station 13Space Station 13 - Modules - Types
these have no access restrictions, so for internal maintenance only
\ No newline at end of file
diff --git a/code/game/objects/effects/temporary_visuals/misc_visuals.html b/code/game/objects/effects/temporary_visuals/misc_visuals.html
new file mode 100644
index 00000000000..41208c3846c
--- /dev/null
+++ b/code/game/objects/effects/temporary_visuals/misc_visuals.html
@@ -0,0 +1 @@
+code/game/objects/effects/temporary_visuals/misc_visuals.dm - Space Station 13Space Station 13 - Modules - Types
A visual effect that will be shown only to a particular user for a period of time.
\ No newline at end of file
diff --git a/code/game/objects/empulse.html b/code/game/objects/empulse.html
new file mode 100644
index 00000000000..54f6193310e
--- /dev/null
+++ b/code/game/objects/empulse.html
@@ -0,0 +1,2 @@
+code/game/objects/empulse.dm - Space Station 13Space Station 13 - Modules - Types
Will cause an EMP on the given epicenter.
+This proc can sleep depending on the affected objects. So assume it sleeps!
\ No newline at end of file
diff --git a/code/game/objects/explosion.html b/code/game/objects/explosion.html
new file mode 100644
index 00000000000..dbe4f0ebdc5
--- /dev/null
+++ b/code/game/objects/explosion.html
@@ -0,0 +1 @@
+code/game/objects/explosion.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/AI_modules.html b/code/game/objects/items/AI_modules.html
new file mode 100644
index 00000000000..c5e33e4b139
--- /dev/null
+++ b/code/game/objects/items/AI_modules.html
@@ -0,0 +1,13 @@
+code/game/objects/items/AI_modules.dm - Space Station 13Space Station 13 - Modules - Types
Ion Module
+-- Incoming //No actual reason to inherit from ion boards here, either. sigh ~Miauw
\ No newline at end of file
diff --git a/code/game/objects/items/RCD.html b/code/game/objects/items/RCD.html
new file mode 100644
index 00000000000..924842b9dce
--- /dev/null
+++ b/code/game/objects/items/RCD.html
@@ -0,0 +1 @@
+code/game/objects/items/RCD.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/agent_id.html b/code/game/objects/items/agent_id.html
new file mode 100644
index 00000000000..9ae7ffaac00
--- /dev/null
+++ b/code/game/objects/items/agent_id.html
@@ -0,0 +1 @@
+code/game/objects/items/agent_id.dm - Space Station 13Space Station 13 - Modules - Types
like /obj/item/card/id/syndicate, but you can only swipe access, not change your identity, its also trackable
\ No newline at end of file
diff --git a/code/game/objects/items/bio_chips/bio_chip.html b/code/game/objects/items/bio_chips/bio_chip.html
new file mode 100644
index 00000000000..ae03aa9da94
--- /dev/null
+++ b/code/game/objects/items/bio_chips/bio_chip.html
@@ -0,0 +1 @@
+code/game/objects/items/bio_chips/bio_chip.dm - Space Station 13Space Station 13 - Modules - Types
Code for implants that can be inserted into a person and have some sort of passive or triggered action.
\ No newline at end of file
diff --git a/code/game/objects/items/bio_chips/bio_chip_gorilla_rampage.html b/code/game/objects/items/bio_chips/bio_chip_gorilla_rampage.html
new file mode 100644
index 00000000000..6d395ccdb1e
--- /dev/null
+++ b/code/game/objects/items/bio_chips/bio_chip_gorilla_rampage.html
@@ -0,0 +1 @@
+code/game/objects/items/bio_chips/bio_chip_gorilla_rampage.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/bio_chips/bio_chip_stealth.html b/code/game/objects/items/bio_chips/bio_chip_stealth.html
new file mode 100644
index 00000000000..d90937da627
--- /dev/null
+++ b/code/game/objects/items/bio_chips/bio_chip_stealth.html
@@ -0,0 +1 @@
+code/game/objects/items/bio_chips/bio_chip_stealth.dm - Space Station 13Space Station 13 - Modules - Types
Implant which allows you to summon an MGS-style cardboard box that turns you invisble after a short delay.
\ No newline at end of file
diff --git a/code/game/objects/items/cardboard_cutouts.html b/code/game/objects/items/cardboard_cutouts.html
new file mode 100644
index 00000000000..cc9b5126ac7
--- /dev/null
+++ b/code/game/objects/items/cardboard_cutouts.html
@@ -0,0 +1 @@
+code/game/objects/items/cardboard_cutouts.dm - Space Station 13Space Station 13 - Modules - Types
Purchased by Syndicate agents, these cutouts are indistinguishable from normal cutouts but aren't discolored when their appearance is changed
\ No newline at end of file
diff --git a/code/game/objects/items/cards_ids.html b/code/game/objects/items/cards_ids.html
new file mode 100644
index 00000000000..5a3e5f6c3ba
--- /dev/null
+++ b/code/game/objects/items/cards_ids.html
@@ -0,0 +1 @@
+code/game/objects/items/cards_ids.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/control_wand.html b/code/game/objects/items/control_wand.html
new file mode 100644
index 00000000000..344d0298d4c
--- /dev/null
+++ b/code/game/objects/items/control_wand.html
@@ -0,0 +1 @@
+code/game/objects/items/control_wand.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
How long before you can "jangle" your keyring again (to prevent spam)
Define Details
JANGLE_COOLDOWN
How long before you can "jangle" your keyring again (to prevent spam)
\ No newline at end of file
diff --git a/code/game/objects/items/devices/camera_bug.html b/code/game/objects/items/devices/camera_bug.html
new file mode 100644
index 00000000000..a95fec7b8e8
--- /dev/null
+++ b/code/game/objects/items/devices/camera_bug.html
@@ -0,0 +1 @@
+code/game/objects/items/devices/camera_bug.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/devices/flashlight.html b/code/game/objects/items/devices/flashlight.html
new file mode 100644
index 00000000000..0cd331ff838
--- /dev/null
+++ b/code/game/objects/items/devices/flashlight.html
@@ -0,0 +1 @@
+code/game/objects/items/devices/flashlight.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/devices/gasanalyzer.html b/code/game/objects/items/devices/gasanalyzer.html
new file mode 100644
index 00000000000..fce72013837
--- /dev/null
+++ b/code/game/objects/items/devices/gasanalyzer.html
@@ -0,0 +1,2 @@
+code/game/objects/items/devices/gasanalyzer.dm - Space Station 13Space Station 13 - Modules - Types
Outputs a message to the user describing the target's gasmixes.
+Used in chat-based gas scans.
\ No newline at end of file
diff --git a/code/game/objects/items/devices/geiger_counter.html b/code/game/objects/items/devices/geiger_counter.html
new file mode 100644
index 00000000000..066e240e205
--- /dev/null
+++ b/code/game/objects/items/devices/geiger_counter.html
@@ -0,0 +1 @@
+code/game/objects/items/devices/geiger_counter.dm - Space Station 13Space Station 13 - Modules - Types
DISCLAIMER: I know nothing about how real-life Geiger counters work. This will not be realistic. ~Xhuis
\ No newline at end of file
diff --git a/code/game/objects/items/devices/painter/painter.html b/code/game/objects/items/devices/painter/painter.html
new file mode 100644
index 00000000000..2951399cbcb
--- /dev/null
+++ b/code/game/objects/items/devices/painter/painter.html
@@ -0,0 +1 @@
+code/game/objects/items/devices/painter/painter.dm - Space Station 13Space Station 13 - Modules - Types
Contains variables for updating holder, as well as procs for choosing a colour and painting an atom.
\ No newline at end of file
diff --git a/code/game/objects/items/devices/painter/window_painter.html b/code/game/objects/items/devices/painter/window_painter.html
new file mode 100644
index 00000000000..c6e365287ac
--- /dev/null
+++ b/code/game/objects/items/devices/painter/window_painter.html
@@ -0,0 +1 @@
+code/game/objects/items/devices/painter/window_painter.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/devices/radio/beacon.html b/code/game/objects/items/devices/radio/beacon.html
new file mode 100644
index 00000000000..8f386a9466a
--- /dev/null
+++ b/code/game/objects/items/devices/radio/beacon.html
@@ -0,0 +1 @@
+code/game/objects/items/devices/radio/beacon.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
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 00000000000..24434332dcc
--- /dev/null
+++ b/code/game/objects/items/devices/radio/encryptionkey.html
@@ -0,0 +1 @@
+code/game/objects/items/devices/radio/encryptionkey.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/devices/radio/headset.html b/code/game/objects/items/devices/radio/headset.html
new file mode 100644
index 00000000000..019ad2a01e1
--- /dev/null
+++ b/code/game/objects/items/devices/radio/headset.html
@@ -0,0 +1 @@
+code/game/objects/items/devices/radio/headset.dm - Space Station 13Space Station 13 - Modules - Types
No need to care about icons, it should be hidden inside the AI anyway.
\ No newline at end of file
diff --git a/code/game/objects/items/devices/radio/radio_objects.html b/code/game/objects/items/devices/radio/radio_objects.html
new file mode 100644
index 00000000000..80e04d6b887
--- /dev/null
+++ b/code/game/objects/items/devices/radio/radio_objects.html
@@ -0,0 +1 @@
+code/game/objects/items/devices/radio/radio_objects.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/devices/traitordevices.html b/code/game/objects/items/devices/traitordevices.html
new file mode 100644
index 00000000000..f202627c612
--- /dev/null
+++ b/code/game/objects/items/devices/traitordevices.html
@@ -0,0 +1 @@
+code/game/objects/items/devices/traitordevices.dm - Space Station 13Space Station 13 - Modules - Types
An admin-spawn item that will tell you roughly how close the nearest loyal Nanotrasen crewmember is.
\ No newline at end of file
diff --git a/code/game/objects/items/devices/transfer_valve.html b/code/game/objects/items/devices/transfer_valve.html
new file mode 100644
index 00000000000..de5fe30e705
--- /dev/null
+++ b/code/game/objects/items/devices/transfer_valve.html
@@ -0,0 +1 @@
+code/game/objects/items/devices/transfer_valve.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
if the icon_state for the TTV's tank is in assemblies.dmi
Define Details
TTV_TANK_ICON_STATES
if the icon_state for the TTV's tank is in assemblies.dmi
\ No newline at end of file
diff --git a/code/game/objects/items/granters/_granters.html b/code/game/objects/items/granters/_granters.html
new file mode 100644
index 00000000000..554da899915
--- /dev/null
+++ b/code/game/objects/items/granters/_granters.html
@@ -0,0 +1 @@
+code/game/objects/items/granters/_granters.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/mountable_frames/air_alarm_frame.html b/code/game/objects/items/mountable_frames/air_alarm_frame.html
new file mode 100644
index 00000000000..6bbacd4fed0
--- /dev/null
+++ b/code/game/objects/items/mountable_frames/air_alarm_frame.html
@@ -0,0 +1 @@
+code/game/objects/items/mountable_frames/air_alarm_frame.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/robot/ai_upgrades.html b/code/game/objects/items/robot/ai_upgrades.html
new file mode 100644
index 00000000000..34f2ee84010
--- /dev/null
+++ b/code/game/objects/items/robot/ai_upgrades.html
@@ -0,0 +1 @@
+code/game/objects/items/robot/ai_upgrades.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/robot/robot_items.html b/code/game/objects/items/robot/robot_items.html
new file mode 100644
index 00000000000..6f6222fc2ea
--- /dev/null
+++ b/code/game/objects/items/robot/robot_items.html
@@ -0,0 +1 @@
+code/game/objects/items/robot/robot_items.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/salvage.html b/code/game/objects/items/salvage.html
new file mode 100644
index 00000000000..1377df6d456
--- /dev/null
+++ b/code/game/objects/items/salvage.html
@@ -0,0 +1 @@
+code/game/objects/items/salvage.dm - Space Station 13Space Station 13 - Modules - Types
Loot salvage, gained from fighting space simplemobs.
\ No newline at end of file
diff --git a/code/game/objects/items/stacks/sheets/leather.html b/code/game/objects/items/stacks/sheets/leather.html
new file mode 100644
index 00000000000..48b2f2e5931
--- /dev/null
+++ b/code/game/objects/items/stacks/sheets/leather.html
@@ -0,0 +1 @@
+code/game/objects/items/stacks/sheets/leather.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/stacks/sheets/sheet_types.html b/code/game/objects/items/stacks/sheets/sheet_types.html
new file mode 100644
index 00000000000..681132db796
--- /dev/null
+++ b/code/game/objects/items/stacks/sheets/sheet_types.html
@@ -0,0 +1 @@
+code/game/objects/items/stacks/sheets/sheet_types.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/theft_items.html b/code/game/objects/items/theft_items.html
new file mode 100644
index 00000000000..6b5aad7968e
--- /dev/null
+++ b/code/game/objects/items/theft_items.html
@@ -0,0 +1 @@
+code/game/objects/items/theft_items.dm - Space Station 13Space Station 13 - Modules - Types
The steal objective, so it doesnt mess with the SM sliver on pinpointers and objectives
\ No newline at end of file
diff --git a/code/game/objects/items/tools/multitool.html b/code/game/objects/items/tools/multitool.html
new file mode 100644
index 00000000000..5dc556dd4e9
--- /dev/null
+++ b/code/game/objects/items/tools/multitool.html
@@ -0,0 +1 @@
+code/game/objects/items/tools/multitool.dm - Space Station 13Space Station 13 - Modules - Types
Multitool -- A multitool is used for hacking electronic devices.
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/batons.html b/code/game/objects/items/weapons/batons.html
new file mode 100644
index 00000000000..acf700010c6
--- /dev/null
+++ b/code/game/objects/items/weapons/batons.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/batons.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/bio_chips/bio_chip_fluff.html b/code/game/objects/items/weapons/bio_chips/bio_chip_fluff.html
new file mode 100644
index 00000000000..84ca942157d
--- /dev/null
+++ b/code/game/objects/items/weapons/bio_chips/bio_chip_fluff.html
@@ -0,0 +1,2 @@
+code/game/objects/items/weapons/bio_chips/bio_chip_fluff.dm - Space Station 13Space Station 13 - Modules - Types
Bio-chip fluff is just lore about the bio-chip that is accessed through the implantpad, you must attach
+one of these datums to the implant_data var on a bio-chip for it to show it up.
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/dice.html b/code/game/objects/items/weapons/dice.html
new file mode 100644
index 00000000000..f6e2aac3dfe
--- /dev/null
+++ b/code/game/objects/items/weapons/dice.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/dice.dm - Space Station 13Space Station 13 - Modules - Types
depreciated d6, use /obj/item/dice/d6 if you actually want a d6
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/explosives.html b/code/game/objects/items/weapons/explosives.html
new file mode 100644
index 00000000000..9f51b41deb7
--- /dev/null
+++ b/code/game/objects/items/weapons/explosives.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/explosives.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/garrote.html b/code/game/objects/items/weapons/garrote.html
new file mode 100644
index 00000000000..f49b46763ce
--- /dev/null
+++ b/code/game/objects/items/weapons/garrote.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/garrote.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/grenades/chem_grenade.html b/code/game/objects/items/weapons/grenades/chem_grenade.html
new file mode 100644
index 00000000000..1f644403cc7
--- /dev/null
+++ b/code/game/objects/items/weapons/grenades/chem_grenade.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/grenades/chem_grenade.dm - Space Station 13Space Station 13 - Modules - Types
Intended for weaker, but longer lasting effects. Could have some interesting uses.
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/grenades/clusterbuster.html b/code/game/objects/items/weapons/grenades/clusterbuster.html
new file mode 100644
index 00000000000..cc4c5f313d1
--- /dev/null
+++ b/code/game/objects/items/weapons/grenades/clusterbuster.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/grenades/clusterbuster.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/grenades/flashbang.html b/code/game/objects/items/weapons/grenades/flashbang.html
new file mode 100644
index 00000000000..7d795ae09f0
--- /dev/null
+++ b/code/game/objects/items/weapons/grenades/flashbang.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/grenades/flashbang.dm - Space Station 13Space Station 13 - Modules - Types
Creates a flashing effect that blinds and deafens mobs within range
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/grenades/frag.html b/code/game/objects/items/weapons/grenades/frag.html
new file mode 100644
index 00000000000..55bfcdb708a
--- /dev/null
+++ b/code/game/objects/items/weapons/grenades/frag.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/grenades/frag.dm - Space Station 13Space Station 13 - Modules - Types
Shrapnel projectiles turn into this after trying to embed
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/holy_weapons.html b/code/game/objects/items/weapons/holy_weapons.html
new file mode 100644
index 00000000000..cce4199a723
--- /dev/null
+++ b/code/game/objects/items/weapons/holy_weapons.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/holy_weapons.dm - Space Station 13Space Station 13 - Modules - Types
May as well make it a "claymore" and inherit the blocking
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/kitchen.html b/code/game/objects/items/weapons/kitchen.html
new file mode 100644
index 00000000000..04c24c8caf7
--- /dev/null
+++ b/code/game/objects/items/weapons/kitchen.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/kitchen.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/legcuffs.html b/code/game/objects/items/weapons/legcuffs.html
new file mode 100644
index 00000000000..45297db65f1
--- /dev/null
+++ b/code/game/objects/items/weapons/legcuffs.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/legcuffs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/manuals.html b/code/game/objects/items/weapons/manuals.html
new file mode 100644
index 00000000000..d7be288f857
--- /dev/null
+++ b/code/game/objects/items/weapons/manuals.html
@@ -0,0 +1,6 @@
+code/game/objects/items/weapons/manuals.dm - Space Station 13Space Station 13 - Modules - Types
These are "programmatic books," that is books that are hard-coded into the game. Just for the sake of maintainability, keep
+information subject to change (as in likely to change SOON) out of the non-wiki manuals as they require PRs to change
+and it is not an author's responsbility to update manuals if they change a mechanic/recipe/feature referenced in one of them
+Don't worry about adding them to the library, as long as they're one of these types it is automatically added.
These are programmatic books that source its pages / "content" straight from the wiki
+That means that this content can ONLY be changed by editing the wiki
+Space Law and SOP Manuals can only be edited by Wiki Admins
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/melee/energy_melee_weapons.html b/code/game/objects/items/weapons/melee/energy_melee_weapons.html
new file mode 100644
index 00000000000..22f25552cb7
--- /dev/null
+++ b/code/game/objects/items/weapons/melee/energy_melee_weapons.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/melee/energy_melee_weapons.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/pneumaticCannon.html b/code/game/objects/items/weapons/pneumaticCannon.html
new file mode 100644
index 00000000000..bca29707378
--- /dev/null
+++ b/code/game/objects/items/weapons/pneumaticCannon.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/pneumaticCannon.dm - Space Station 13Space Station 13 - Modules - Types
Obtainable by improvised methods; more gas per use, less capacity, but smaller
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/storage/backpack.html b/code/game/objects/items/weapons/storage/backpack.html
new file mode 100644
index 00000000000..c6d7d8388f3
--- /dev/null
+++ b/code/game/objects/items/weapons/storage/backpack.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/storage/backpack.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/storage/bags.html b/code/game/objects/items/weapons/storage/bags.html
new file mode 100644
index 00000000000..974e48e4054
--- /dev/null
+++ b/code/game/objects/items/weapons/storage/bags.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/storage/bags.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/storage/belt.html b/code/game/objects/items/weapons/storage/belt.html
new file mode 100644
index 00000000000..afd6d7922a5
--- /dev/null
+++ b/code/game/objects/items/weapons/storage/belt.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/storage/belt.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/storage/boxes.html b/code/game/objects/items/weapons/storage/boxes.html
new file mode 100644
index 00000000000..519f95736a5
--- /dev/null
+++ b/code/game/objects/items/weapons/storage/boxes.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/storage/boxes.dm - Space Station 13Space Station 13 - Modules - Types
for ruins where it's a bad idea to give access to an autolathe/protolathe, but still want to make stock parts accessible
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/storage/uplink_kits.html b/code/game/objects/items/weapons/storage/uplink_kits.html
new file mode 100644
index 00000000000..1bfc9c168e6
--- /dev/null
+++ b/code/game/objects/items/weapons/storage/uplink_kits.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/storage/uplink_kits.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/stunbaton.html b/code/game/objects/items/weapons/stunbaton.html
new file mode 100644
index 00000000000..07ea246f971
--- /dev/null
+++ b/code/game/objects/items/weapons/stunbaton.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/stunbaton.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/twohanded.html b/code/game/objects/items/weapons/twohanded.html
new file mode 100644
index 00000000000..d31ee74b0b4
--- /dev/null
+++ b/code/game/objects/items/weapons/twohanded.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/twohanded.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/weaponry.html b/code/game/objects/items/weapons/weaponry.html
new file mode 100644
index 00000000000..d4faa005c14
--- /dev/null
+++ b/code/game/objects/items/weapons/weaponry.html
@@ -0,0 +1 @@
+code/game/objects/items/weapons/weaponry.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/structures/aliens.html b/code/game/objects/structures/aliens.html
new file mode 100644
index 00000000000..4f9bf0ecc00
--- /dev/null
+++ b/code/game/objects/structures/aliens.html
@@ -0,0 +1 @@
+code/game/objects/structures/aliens.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/game/objects/structures/crates_lockers/closets/secure/cargo_lockers.html b/code/game/objects/structures/crates_lockers/closets/secure/cargo_lockers.html
new file mode 100644
index 00000000000..2c9624c7cba
--- /dev/null
+++ b/code/game/objects/structures/crates_lockers/closets/secure/cargo_lockers.html
@@ -0,0 +1 @@
+code/game/objects/structures/crates_lockers/closets/secure/cargo_lockers.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/structures/crates_lockers/closets/statue.html b/code/game/objects/structures/crates_lockers/closets/statue.html
new file mode 100644
index 00000000000..d99a477f182
--- /dev/null
+++ b/code/game/objects/structures/crates_lockers/closets/statue.html
@@ -0,0 +1 @@
+code/game/objects/structures/crates_lockers/closets/statue.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/structures/disaster_counter.html b/code/game/objects/structures/disaster_counter.html
new file mode 100644
index 00000000000..7ffeb2ca12f
--- /dev/null
+++ b/code/game/objects/structures/disaster_counter.html
@@ -0,0 +1 @@
+code/game/objects/structures/disaster_counter.dm - Space Station 13Space Station 13 - Modules - Types
Tracks how many shifts it has been since the counter with that ID was exploded.
\ No newline at end of file
diff --git a/code/game/objects/structures/fence.html b/code/game/objects/structures/fence.html
new file mode 100644
index 00000000000..77dbe96f4da
--- /dev/null
+++ b/code/game/objects/structures/fence.html
@@ -0,0 +1 @@
+code/game/objects/structures/fence.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/game/objects/structures/flora.html b/code/game/objects/structures/flora.html
new file mode 100644
index 00000000000..5d5c24e5efd
--- /dev/null
+++ b/code/game/objects/structures/flora.html
@@ -0,0 +1 @@
+code/game/objects/structures/flora.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/structures/fluff.html b/code/game/objects/structures/fluff.html
new file mode 100644
index 00000000000..7357f8978e9
--- /dev/null
+++ b/code/game/objects/structures/fluff.html
@@ -0,0 +1 @@
+code/game/objects/structures/fluff.dm - Space Station 13Space Station 13 - Modules - Types
A variety of statue in disrepair; parts are broken off and a gemstone is missing
\ No newline at end of file
diff --git a/code/game/objects/structures/grille.html b/code/game/objects/structures/grille.html
new file mode 100644
index 00000000000..03991bce38b
--- /dev/null
+++ b/code/game/objects/structures/grille.html
@@ -0,0 +1 @@
+code/game/objects/structures/grille.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/structures/inflatable.html b/code/game/objects/structures/inflatable.html
new file mode 100644
index 00000000000..2860410fc10
--- /dev/null
+++ b/code/game/objects/structures/inflatable.html
@@ -0,0 +1 @@
+code/game/objects/structures/inflatable.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/structures/kitchen_spike.html b/code/game/objects/structures/kitchen_spike.html
new file mode 100644
index 00000000000..a7de419434e
--- /dev/null
+++ b/code/game/objects/structures/kitchen_spike.html
@@ -0,0 +1 @@
+code/game/objects/structures/kitchen_spike.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/structures/loom.html b/code/game/objects/structures/loom.html
new file mode 100644
index 00000000000..e36e77327b6
--- /dev/null
+++ b/code/game/objects/structures/loom.html
@@ -0,0 +1 @@
+code/game/objects/structures/loom.dm - Space Station 13Space Station 13 - Modules - Types
This is a loom. It's usually made out of wood and used to weave fabric like durathread or cotton into their respective cloth types.
\ No newline at end of file
diff --git a/code/game/objects/structures/plasticflaps.html b/code/game/objects/structures/plasticflaps.html
new file mode 100644
index 00000000000..cbc52d7641f
--- /dev/null
+++ b/code/game/objects/structures/plasticflaps.html
@@ -0,0 +1 @@
+code/game/objects/structures/plasticflaps.dm - Space Station 13Space Station 13 - Modules - Types
A specific type for mining that doesn't allow airflow because of them damn crates
\ No newline at end of file
diff --git a/code/game/objects/structures/railings.html b/code/game/objects/structures/railings.html
new file mode 100644
index 00000000000..f8ff4def6cc
--- /dev/null
+++ b/code/game/objects/structures/railings.html
@@ -0,0 +1 @@
+code/game/objects/structures/railings.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/structures/safe.html b/code/game/objects/structures/safe.html
new file mode 100644
index 00000000000..788d7eebffb
--- /dev/null
+++ b/code/game/objects/structures/safe.html
@@ -0,0 +1 @@
+code/game/objects/structures/safe.dm - Space Station 13Space Station 13 - Modules - Types
Contains the (generated on map load) codes for all publicly known safes.
\ No newline at end of file
diff --git a/code/game/objects/structures/statues.html b/code/game/objects/structures/statues.html
new file mode 100644
index 00000000000..5f945af8a24
--- /dev/null
+++ b/code/game/objects/structures/statues.html
@@ -0,0 +1 @@
+code/game/objects/structures/statues.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/structures/stool_bed_chair_nest/chairs.html b/code/game/objects/structures/stool_bed_chair_nest/chairs.html
new file mode 100644
index 00000000000..5ccd7f83a74
--- /dev/null
+++ b/code/game/objects/structures/stool_bed_chair_nest/chairs.html
@@ -0,0 +1 @@
+code/game/objects/structures/stool_bed_chair_nest/chairs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/structures/tables_racks.html b/code/game/objects/structures/tables_racks.html
new file mode 100644
index 00000000000..ccf4fe7687d
--- /dev/null
+++ b/code/game/objects/structures/tables_racks.html
@@ -0,0 +1 @@
+code/game/objects/structures/tables_racks.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/objects/structures/watercloset.html b/code/game/objects/structures/watercloset.html
new file mode 100644
index 00000000000..b30d6d1e282
--- /dev/null
+++ b/code/game/objects/structures/watercloset.html
@@ -0,0 +1 @@
+code/game/objects/structures/watercloset.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/sound.html b/code/game/sound.html
new file mode 100644
index 00000000000..7b5ba5047ef
--- /dev/null
+++ b/code/game/sound.html
@@ -0,0 +1,13 @@
+code/game/sound.dm - Space Station 13Space Station 13 - Modules - Types
code/game/sound.dm
/sound
Default override for echo
playsound
+
playsound is a proc used to play a 3D sound in a specific range. This uses SOUND_RANGE + extra_range to determine that.
+
source - Origin of sound
+soundin - Either a file, or a string that can be used to get an SFX
+vol - The volume of the sound, excluding falloff and pressure affection.
+vary - bool that determines if the sound changes pitch every time it plays
+extrarange - modifier for sound range. This gets added on top of SOUND_RANGE
+falloff_exponent - Rate of falloff for the audio. Higher means quicker drop to low volume. Should generally be over 1 to indicate a quick dive to 0 rather than a slow dive.
+frequency - playback speed of audio
+channel - The channel the sound is played at
+pressure_affected - Whether or not difference in pressure affects the sound (E.g. if you can hear in space)
+ignore_walls - Whether or not the sound can pass through walls.
+falloff_distance - Distance at which falloff begins. Sound is at peak volume (in regards to falloff) aslong as it is in this range.
\ No newline at end of file
diff --git a/code/game/turfs/simulated.html b/code/game/turfs/simulated.html
new file mode 100644
index 00000000000..c0038e535b1
--- /dev/null
+++ b/code/game/turfs/simulated.html
@@ -0,0 +1 @@
+code/game/turfs/simulated.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/game/turfs/simulated/floor/asteroid_floors.html b/code/game/turfs/simulated/floor/asteroid_floors.html
new file mode 100644
index 00000000000..8e73f8e6c38
--- /dev/null
+++ b/code/game/turfs/simulated/floor/asteroid_floors.html
@@ -0,0 +1 @@
+code/game/turfs/simulated/floor/asteroid_floors.dm - Space Station 13Space Station 13 - Modules - Types
Surface. The surface is warm, but survivable without a suit. Internals are required. The floors break to chasms, which drop you into the underground.
\ No newline at end of file
diff --git a/code/game/turfs/simulated/floor/chasm.html b/code/game/turfs/simulated/floor/chasm.html
new file mode 100644
index 00000000000..0dbf2b46cfc
--- /dev/null
+++ b/code/game/turfs/simulated/floor/chasm.html
@@ -0,0 +1 @@
+code/game/turfs/simulated/floor/chasm.dm - Space Station 13Space Station 13 - Modules - Types
An abstract object which is basically just a bag that the chasm puts people inside
\ No newline at end of file
diff --git a/code/game/turfs/simulated/floor/fancy_floor.html b/code/game/turfs/simulated/floor/fancy_floor.html
new file mode 100644
index 00000000000..5a293f16c38
--- /dev/null
+++ b/code/game/turfs/simulated/floor/fancy_floor.html
@@ -0,0 +1 @@
+code/game/turfs/simulated/floor/fancy_floor.dm - Space Station 13Space Station 13 - Modules - Types
This vairant shows up under normal turfs so fits in the regular 32x32 sprite
\ No newline at end of file
diff --git a/code/game/turfs/simulated/floor/indestructible.html b/code/game/turfs/simulated/floor/indestructible.html
new file mode 100644
index 00000000000..86074c7604a
--- /dev/null
+++ b/code/game/turfs/simulated/floor/indestructible.html
@@ -0,0 +1 @@
+code/game/turfs/simulated/floor/indestructible.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/turfs/simulated/floor/lava.html b/code/game/turfs/simulated/floor/lava.html
new file mode 100644
index 00000000000..5a7cc8479ca
--- /dev/null
+++ b/code/game/turfs/simulated/floor/lava.html
@@ -0,0 +1,3 @@
+code/game/turfs/simulated/floor/lava.dm - Space Station 13Space Station 13 - Modules - Types
Lava turf, burns things that are on it.
+Currently a subtype of floor so that footsteps work on it.
+Perhaps we could move it down to /turf/simulated/lava someday, as I dont think footsteps over lava are very important.
\ No newline at end of file
diff --git a/code/game/turfs/simulated/floor/misc_floor.html b/code/game/turfs/simulated/floor/misc_floor.html
new file mode 100644
index 00000000000..e3dad2107fa
--- /dev/null
+++ b/code/game/turfs/simulated/floor/misc_floor.html
@@ -0,0 +1 @@
+code/game/turfs/simulated/floor/misc_floor.dm - Space Station 13Space Station 13 - Modules - Types
TODO - Refactor water so they share the same parent type - Or alternatively component something like that
\ No newline at end of file
diff --git a/code/game/turfs/simulated/floor/plasteel/plasteel_floor.html b/code/game/turfs/simulated/floor/plasteel/plasteel_floor.html
new file mode 100644
index 00000000000..edf51d1ee1d
--- /dev/null
+++ b/code/game/turfs/simulated/floor/plasteel/plasteel_floor.html
@@ -0,0 +1 @@
+code/game/turfs/simulated/floor/plasteel/plasteel_floor.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/turfs/simulated/floor/plating.html b/code/game/turfs/simulated/floor/plating.html
new file mode 100644
index 00000000000..fdbcf2270e8
--- /dev/null
+++ b/code/game/turfs/simulated/floor/plating.html
@@ -0,0 +1,3 @@
+code/game/turfs/simulated/floor/plating.dm - Space Station 13Space Station 13 - Modules - Types
Used in situations like the anomalous crystal where we want
+floors that look and act like asteroid floors but aren't.
+This doesn't allow you to dig sand out of it but whatever.
\ No newline at end of file
diff --git a/code/game/turfs/simulated/minerals.html b/code/game/turfs/simulated/minerals.html
new file mode 100644
index 00000000000..b173090f8f0
--- /dev/null
+++ b/code/game/turfs/simulated/minerals.html
@@ -0,0 +1,2 @@
+code/game/turfs/simulated/minerals.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/game/turfs/simulated/river.html b/code/game/turfs/simulated/river.html
new file mode 100644
index 00000000000..ded543a744c
--- /dev/null
+++ b/code/game/turfs/simulated/river.html
@@ -0,0 +1,2 @@
+code/game/turfs/simulated/river.dm - Space Station 13Space Station 13 - Modules - Types
A straightforward system for making "rivers", paths made up of a specific
+turf type that are generated in a random path on a z-level.
\ No newline at end of file
diff --git a/code/game/turfs/simulated/walls_mineral.html b/code/game/turfs/simulated/walls_mineral.html
new file mode 100644
index 00000000000..2a663712315
--- /dev/null
+++ b/code/game/turfs/simulated/walls_mineral.html
@@ -0,0 +1,2 @@
+code/game/turfs/simulated/walls_mineral.dm - Space Station 13Space Station 13 - Modules - Types
Used when we don't want to smooth with outer walls
\ No newline at end of file
diff --git a/code/game/turfs/space/transit.html b/code/game/turfs/space/transit.html
new file mode 100644
index 00000000000..d266453da6c
--- /dev/null
+++ b/code/game/turfs/space/transit.html
@@ -0,0 +1 @@
+code/game/turfs/space/transit.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/goonstation/modules/power/power_transmission_laser/transmission_laser.html b/code/goonstation/modules/power/power_transmission_laser/transmission_laser.html
new file mode 100644
index 00000000000..4fd933216c0
--- /dev/null
+++ b/code/goonstation/modules/power/power_transmission_laser/transmission_laser.html
@@ -0,0 +1 @@
+code/goonstation/modules/power/power_transmission_laser/transmission_laser.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/modules/admin/admin_verbs.html b/code/modules/admin/admin_verbs.html
new file mode 100644
index 00000000000..592716f5ae4
--- /dev/null
+++ b/code/modules/admin/admin_verbs.html
@@ -0,0 +1,3 @@
+code/modules/admin/admin_verbs.dm - Space Station 13Space Station 13 - Modules - Types
Allow an admin to observe someone.
+mentors are allowed to use this verb while living, but with some stipulations:
+if they attempt to do anything that would stop their orbit, they will immediately be returned to their body.
\ No newline at end of file
diff --git a/code/modules/admin/centcom_ban_db.html b/code/modules/admin/centcom_ban_db.html
new file mode 100644
index 00000000000..925eaff9fff
--- /dev/null
+++ b/code/modules/admin/centcom_ban_db.html
@@ -0,0 +1 @@
+code/modules/admin/centcom_ban_db.dm - Space Station 13Space Station 13 - Modules - Types
Just a simple verb so admins can do manual lookups
\ No newline at end of file
diff --git a/code/modules/admin/misc_admin_procs.html b/code/modules/admin/misc_admin_procs.html
new file mode 100644
index 00000000000..a95f4a13f04
--- /dev/null
+++ b/code/modules/admin/misc_admin_procs.html
@@ -0,0 +1,10 @@
+code/modules/admin/misc_admin_procs.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Sends a message to the staff able to see admin tickets
+Arguments:
+msg - The message being send
+important - If the message is important. If TRUE it will ignore the CHAT_NO_TICKETLOGS preferences,
+send a sound and flash the window. Defaults to FALSE
Sends a message to the staff able to see mentor tickets
+Arguments:
+msg - The message being send
+important - If the message is important. If TRUE it will ignore the CHAT_NO_TICKETLOGS preferences,
+send a sound and flash the window. Defaults to FALSE
Allows admins to safely pick from SSticker.minds for objectives
Define Details
PLAYER_NOTES_ENTRIES_PER_PAGE
Panels
\ No newline at end of file
diff --git a/code/modules/admin/spawn_verbs.html b/code/modules/admin/spawn_verbs.html
new file mode 100644
index 00000000000..c94e5fd9029
--- /dev/null
+++ b/code/modules/admin/spawn_verbs.html
@@ -0,0 +1,4 @@
+code/modules/admin/spawn_verbs.dm - Space Station 13Space Station 13 - Modules - Types
If a guy was gibbed and you want to revive him, this is a good way to do so.
+Works kind of like entering the game with a new character. Character
+receives a new mind if they didn't have one. Traitors and the like can also
+be revived with the previous role mostly intact.
\ No newline at end of file
diff --git a/code/modules/admin/verbs/adminpm.html b/code/modules/admin/verbs/adminpm.html
new file mode 100644
index 00000000000..b6103ac37c9
--- /dev/null
+++ b/code/modules/admin/verbs/adminpm.html
@@ -0,0 +1,2 @@
+code/modules/admin/verbs/adminpm.dm - Space Station 13Space Station 13 - Modules - Types
Shows a list of clients we could send PMs to, then forwards our choice to cmd_admin_pm.
\ No newline at end of file
diff --git a/code/modules/admin/verbs/getlogs.html b/code/modules/admin/verbs/getlogs.html
new file mode 100644
index 00000000000..6656d4a1ea3
--- /dev/null
+++ b/code/modules/admin/verbs/getlogs.html
@@ -0,0 +1 @@
+code/modules/admin/verbs/getlogs.dm - Space Station 13Space Station 13 - Modules - Types
Allows download of past server logs saved within the data/logs/ folder by specifying a specific round ID.
\ No newline at end of file
diff --git a/code/modules/antagonists/_common/antag_hud.html b/code/modules/antagonists/_common/antag_hud.html
new file mode 100644
index 00000000000..cb2b5c5faca
--- /dev/null
+++ b/code/modules/antagonists/_common/antag_hud.html
@@ -0,0 +1 @@
+code/modules/antagonists/_common/antag_hud.dm - Space Station 13Space Station 13 - Modules - Types
Master Servent Datum Sytems,Based on TG Gang system
\ No newline at end of file
diff --git a/code/modules/antagonists/_common/antag_spawner.html b/code/modules/antagonists/_common/antag_spawner.html
new file mode 100644
index 00000000000..99d2d6f8712
--- /dev/null
+++ b/code/modules/antagonists/_common/antag_spawner.html
@@ -0,0 +1,2 @@
+code/modules/antagonists/_common/antag_spawner.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/antagonists/_common/antag_team.html b/code/modules/antagonists/_common/antag_team.html
new file mode 100644
index 00000000000..1be6b9774c2
--- /dev/null
+++ b/code/modules/antagonists/_common/antag_team.html
@@ -0,0 +1 @@
+code/modules/antagonists/_common/antag_team.dm - Space Station 13Space Station 13 - Modules - Types
Datum used by team antagonists to track it's members and objectives the team needs to complete.
\ No newline at end of file
diff --git a/code/modules/antagonists/antag_org/antag_org_datum.html b/code/modules/antagonists/antag_org/antag_org_datum.html
new file mode 100644
index 00000000000..0cad51dcdd5
--- /dev/null
+++ b/code/modules/antagonists/antag_org/antag_org_datum.html
@@ -0,0 +1 @@
+code/modules/antagonists/antag_org/antag_org_datum.dm - Space Station 13Space Station 13 - Modules - Types
The lore organization antagonists are attached to. Influences objectives and steal targets.
\ No newline at end of file
diff --git a/code/modules/antagonists/antag_org/antag_org_syndicate.html b/code/modules/antagonists/antag_org/antag_org_syndicate.html
new file mode 100644
index 00000000000..e88deb8249b
--- /dev/null
+++ b/code/modules/antagonists/antag_org/antag_org_syndicate.html
@@ -0,0 +1 @@
+code/modules/antagonists/antag_org/antag_org_syndicate.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/antagonists/changeling/evolution_menu.html b/code/modules/antagonists/changeling/evolution_menu.html
new file mode 100644
index 00000000000..2a313d86700
--- /dev/null
+++ b/code/modules/antagonists/changeling/evolution_menu.html
@@ -0,0 +1 @@
+code/modules/antagonists/changeling/evolution_menu.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The evolution menu will be shown in the expanded mode, with powers, costs, and power descriptions being displayed.
Define Details
COMPACT_MODE
The evolution menu will be shown in the compact mode, with only powers and costs being displayed.
EXPANDED_MODE
The evolution menu will be shown in the expanded mode, with powers, costs, and power descriptions being displayed.
\ No newline at end of file
diff --git a/code/modules/antagonists/changeling/powers/mutations.html b/code/modules/antagonists/changeling/powers/mutations.html
new file mode 100644
index 00000000000..b3c1b3b31ee
--- /dev/null
+++ b/code/modules/antagonists/changeling/powers/mutations.html
@@ -0,0 +1,11 @@
+code/modules/antagonists/changeling/powers/mutations.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/antagonists/changeling/powers/shriek.html b/code/modules/antagonists/changeling/powers/shriek.html
new file mode 100644
index 00000000000..bbb1ada3cde
--- /dev/null
+++ b/code/modules/antagonists/changeling/powers/shriek.html
@@ -0,0 +1 @@
+code/modules/antagonists/changeling/powers/shriek.dm - Space Station 13Space Station 13 - Modules - Types
A more expensive version, used during rounds with cyber rev station trait for balance reasons.
\ No newline at end of file
diff --git a/code/modules/antagonists/changeling/powers/summon_spiders.html b/code/modules/antagonists/changeling/powers/summon_spiders.html
new file mode 100644
index 00000000000..b45f079e046
--- /dev/null
+++ b/code/modules/antagonists/changeling/powers/summon_spiders.html
@@ -0,0 +1 @@
+code/modules/antagonists/changeling/powers/summon_spiders.dm - Space Station 13Space Station 13 - Modules - Types
Child of giant_spider because this should do everything the spider does and more
\ No newline at end of file
diff --git a/code/modules/antagonists/changeling/powers/tiny_prick.html b/code/modules/antagonists/changeling/powers/tiny_prick.html
new file mode 100644
index 00000000000..682f2fc88f4
--- /dev/null
+++ b/code/modules/antagonists/changeling/powers/tiny_prick.html
@@ -0,0 +1 @@
+code/modules/antagonists/changeling/powers/tiny_prick.dm - Space Station 13Space Station 13 - Modules - Types
Enable when mob cooling is fixed so that frostoil actually makes you cold, instead of mostly just hungry.
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/heretic_antag.html b/code/modules/antagonists/heretic/heretic_antag.html
new file mode 100644
index 00000000000..df3f404699b
--- /dev/null
+++ b/code/modules/antagonists/heretic/heretic_antag.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/heretic_antag.dm - Space Station 13Space Station 13 - Modules - Types
Heretic's research objective. "Research" is heretic knowledge nodes (You start with some).
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/heretic_focus.html b/code/modules/antagonists/heretic/heretic_focus.html
new file mode 100644
index 00000000000..b393a263e02
--- /dev/null
+++ b/code/modules/antagonists/heretic/heretic_focus.html
@@ -0,0 +1,2 @@
+code/modules/antagonists/heretic/heretic_focus.dm - Space Station 13Space Station 13 - Modules - Types
Heretic focus element, simple element for making an item a heretic focus,
+allowing heretics to cast advanced spells (examine message included).
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/heretic_knowledge.html b/code/modules/antagonists/heretic/heretic_knowledge.html
new file mode 100644
index 00000000000..b2a899fbf03
--- /dev/null
+++ b/code/modules/antagonists/heretic/heretic_knowledge.html
@@ -0,0 +1,6 @@
+code/modules/antagonists/heretic/heretic_knowledge.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The special final tier of knowledges that unlocks ASCENSION.
Define Details
KNOWLEDGE_RITUAL_POINTS
The amount of knowledge points the knowledge ritual gives on success.
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/heretic_living_heart.html b/code/modules/antagonists/heretic/heretic_living_heart.html
new file mode 100644
index 00000000000..0d2c96d5799
--- /dev/null
+++ b/code/modules/antagonists/heretic/heretic_living_heart.html
@@ -0,0 +1,3 @@
+code/modules/antagonists/heretic/heretic_living_heart.dm - Space Station 13Space Station 13 - Modules - Types
The action associated with the living heart.
+Allows a heretic to track sacrifice targets.
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/heretic_monster.html b/code/modules/antagonists/heretic/heretic_monster.html
new file mode 100644
index 00000000000..7aa8396cf7b
--- /dev/null
+++ b/code/modules/antagonists/heretic/heretic_monster.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/heretic_monster.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/influences.html b/code/modules/antagonists/heretic/influences.html
new file mode 100644
index 00000000000..51497cded40
--- /dev/null
+++ b/code/modules/antagonists/heretic/influences.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/influences.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/items/corrupted_organs.html b/code/modules/antagonists/heretic/items/corrupted_organs.html
new file mode 100644
index 00000000000..6f5d970b6a9
--- /dev/null
+++ b/code/modules/antagonists/heretic/items/corrupted_organs.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/items/corrupted_organs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/items/hunter_rifle.html b/code/modules/antagonists/heretic/items/hunter_rifle.html
new file mode 100644
index 00000000000..9c15e87c320
--- /dev/null
+++ b/code/modules/antagonists/heretic/items/hunter_rifle.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/items/hunter_rifle.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/items/keyring.html b/code/modules/antagonists/heretic/items/keyring.html
new file mode 100644
index 00000000000..7c74ed0dc84
--- /dev/null
+++ b/code/modules/antagonists/heretic/items/keyring.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/items/keyring.dm - Space Station 13Space Station 13 - Modules - Types
An ID card capable of shapeshifting to other IDs given by the Key Keepers Burden knowledge
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/items/labyrinth_handbook.html b/code/modules/antagonists/heretic/items/labyrinth_handbook.html
new file mode 100644
index 00000000000..a0e24300bc1
--- /dev/null
+++ b/code/modules/antagonists/heretic/items/labyrinth_handbook.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/items/labyrinth_handbook.dm - Space Station 13Space Station 13 - Modules - Types
A heretic item that spawns a barrier at the clicked turf, 3 uses
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/knowledge/blade_lore.html b/code/modules/antagonists/heretic/knowledge/blade_lore.html
new file mode 100644
index 00000000000..d72b1e83493
--- /dev/null
+++ b/code/modules/antagonists/heretic/knowledge/blade_lore.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/knowledge/blade_lore.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The amount of blood flow reduced per level of severity of gained bleeding wounds for Stance of the Torn Champion.
Define Details
BLADE_DANCE_COOLDOWN
The cooldown duration between triggers of blade dance
BLOOD_FLOW_PER_SEVEIRTY
The amount of blood flow reduced per level of severity of gained bleeding wounds for Stance of the Torn Champion.
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/knowledge/flesh_lore.html b/code/modules/antagonists/heretic/knowledge/flesh_lore.html
new file mode 100644
index 00000000000..7286c97fb90
--- /dev/null
+++ b/code/modules/antagonists/heretic/knowledge/flesh_lore.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/knowledge/flesh_lore.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/knowledge/sacrifice_knowledge/sacrifice_buff.html b/code/modules/antagonists/heretic/knowledge/sacrifice_knowledge/sacrifice_buff.html
new file mode 100644
index 00000000000..810fb22ee28
--- /dev/null
+++ b/code/modules/antagonists/heretic/knowledge/sacrifice_knowledge/sacrifice_buff.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/knowledge/sacrifice_knowledge/sacrifice_buff.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/knowledge/sacrifice_knowledge/sacrifice_curse.html b/code/modules/antagonists/heretic/knowledge/sacrifice_knowledge/sacrifice_curse.html
new file mode 100644
index 00000000000..edc993cd4f2
--- /dev/null
+++ b/code/modules/antagonists/heretic/knowledge/sacrifice_knowledge/sacrifice_curse.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/knowledge/sacrifice_knowledge/sacrifice_curse.dm - Space Station 13Space Station 13 - Modules - Types
A curse given to people to disencourage them from retaliating against someone who sacrificed them
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/knowledge/sacrifice_knowledge/sacrifice_knowledge.html b/code/modules/antagonists/heretic/knowledge/sacrifice_knowledge/sacrifice_knowledge.html
new file mode 100644
index 00000000000..2ccaf9c9341
--- /dev/null
+++ b/code/modules/antagonists/heretic/knowledge/sacrifice_knowledge/sacrifice_knowledge.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/knowledge/sacrifice_knowledge/sacrifice_knowledge.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Allows the heretic to sacrifice living heart targets.
Define Details
SACRIFICE_REALM_DURATION
How long sacrifices must stay in the shadow realm to survive.
SACRIFICE_SLEEP_DURATION
How long we put the target so sleep for during sacrifice.
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/knowledge/sacrifice_knowledge/sacrifice_map.html b/code/modules/antagonists/heretic/knowledge/sacrifice_knowledge/sacrifice_map.html
new file mode 100644
index 00000000000..7431df67d04
--- /dev/null
+++ b/code/modules/antagonists/heretic/knowledge/sacrifice_knowledge/sacrifice_map.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/knowledge/sacrifice_knowledge/sacrifice_map.dm - Space Station 13Space Station 13 - Modules - Types
Lardmarks meant to designate where heretic sacrifices are sent.
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/knowledge/side_void_blade.html b/code/modules/antagonists/heretic/knowledge/side_void_blade.html
new file mode 100644
index 00000000000..33220f4964e
--- /dev/null
+++ b/code/modules/antagonists/heretic/knowledge/side_void_blade.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/knowledge/side_void_blade.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/knowledge/starting_lore.html b/code/modules/antagonists/heretic/knowledge/starting_lore.html
new file mode 100644
index 00000000000..52b3dfae410
--- /dev/null
+++ b/code/modules/antagonists/heretic/knowledge/starting_lore.html
@@ -0,0 +1,8 @@
+code/modules/antagonists/heretic/knowledge/starting_lore.dm - Space Station 13Space Station 13 - Modules - Types
Codex Cicatrixi is available at the start:
+This allows heretics to choose if they want to rush all the influences and take them stealthily, or
+Construct a codex and take what's left with more points.
+Another downside to having the book is strip searches, which means that it's not just a free nab, at least until you get exposed - and when you do, you'll probably need the faster drawing speed.
+Overall, it's a tradeoff between speed and stealth or power.
Allows the heretic to break all of their knives in the world.
+This requires a knowledge point and makes them go on knife cooldown.
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/magic/ash_ascension.html b/code/modules/antagonists/heretic/magic/ash_ascension.html
new file mode 100644
index 00000000000..570b25a6946
--- /dev/null
+++ b/code/modules/antagonists/heretic/magic/ash_ascension.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/magic/ash_ascension.dm - Space Station 13Space Station 13 - Modules - Types
Creates one, large, expanding ring of fire around the caster, which does not follow them.
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/magic/cosmic_runes.html b/code/modules/antagonists/heretic/magic/cosmic_runes.html
new file mode 100644
index 00000000000..39a64e2d1aa
--- /dev/null
+++ b/code/modules/antagonists/heretic/magic/cosmic_runes.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/magic/cosmic_runes.dm - Space Station 13Space Station 13 - Modules - Types
A rune that allows you to teleport to the location of a linked rune.
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/magic/fire_blast.html b/code/modules/antagonists/heretic/magic/fire_blast.html
new file mode 100644
index 00000000000..50efdfdf04b
--- /dev/null
+++ b/code/modules/antagonists/heretic/magic/fire_blast.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/magic/fire_blast.dm - Space Station 13Space Station 13 - Modules - Types
Status effect applied when someone's hit by the fire blast.
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/magic/shadow_cloak.html b/code/modules/antagonists/heretic/magic/shadow_cloak.html
new file mode 100644
index 00000000000..f8f28600c7a
--- /dev/null
+++ b/code/modules/antagonists/heretic/magic/shadow_cloak.html
@@ -0,0 +1,2 @@
+code/modules/antagonists/heretic/magic/shadow_cloak.dm - Space Station 13Space Station 13 - Modules - Types
Shadow cloak effect. Conceals the owner in a cloud of purple smoke, making them unidentifiable.
+Also comes with some other buffs and debuffs - faster movespeed, slower actionspeed, etc.
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/magic/space_crawl.html b/code/modules/antagonists/heretic/magic/space_crawl.html
new file mode 100644
index 00000000000..d9a1e008775
--- /dev/null
+++ b/code/modules/antagonists/heretic/magic/space_crawl.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/magic/space_crawl.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/magic/void_conduit.html b/code/modules/antagonists/heretic/magic/void_conduit.html
new file mode 100644
index 00000000000..4b8f7e87c50
--- /dev/null
+++ b/code/modules/antagonists/heretic/magic/void_conduit.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/magic/void_conduit.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/soultrapped_heretic.html b/code/modules/antagonists/heretic/soultrapped_heretic.html
new file mode 100644
index 00000000000..8144d41a7e8
--- /dev/null
+++ b/code/modules/antagonists/heretic/soultrapped_heretic.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/soultrapped_heretic.dm - Space Station 13Space Station 13 - Modules - Types
a heretic that got soultrapped by cultists. does nothing, other than signify they suck
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/status_effects/heretic_buffs.html b/code/modules/antagonists/heretic/status_effects/heretic_buffs.html
new file mode 100644
index 00000000000..fbc0b2b5f10
--- /dev/null
+++ b/code/modules/antagonists/heretic/status_effects/heretic_buffs.html
@@ -0,0 +1,3 @@
+code/modules/antagonists/heretic/status_effects/heretic_buffs.dm - Space Station 13Space Station 13 - Modules - Types
A subtype that doesn't self-delete / disappear when all blades are gone
+It instead regenerates over time back to the max after blades are consumed
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/status_effects/heretic_debuffs.html b/code/modules/antagonists/heretic/status_effects/heretic_debuffs.html
new file mode 100644
index 00000000000..c0f30a9b2ce
--- /dev/null
+++ b/code/modules/antagonists/heretic/status_effects/heretic_debuffs.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/status_effects/heretic_debuffs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/status_effects/void_chill.html b/code/modules/antagonists/heretic/status_effects/void_chill.html
new file mode 100644
index 00000000000..94a8c148e5e
--- /dev/null
+++ b/code/modules/antagonists/heretic/status_effects/void_chill.html
@@ -0,0 +1,2 @@
+code/modules/antagonists/heretic/status_effects/void_chill.dm - Space Station 13Space Station 13 - Modules - Types
Contains the "Void Chill" status effect. Harmful debuff which freezes and slows down non-heretics
+Cannot affect silicons (How are you gonna freeze a robot?)
\ No newline at end of file
diff --git a/code/modules/antagonists/heretic/transmutation_rune.html b/code/modules/antagonists/heretic/transmutation_rune.html
new file mode 100644
index 00000000000..b631e4bdf30
--- /dev/null
+++ b/code/modules/antagonists/heretic/transmutation_rune.html
@@ -0,0 +1 @@
+code/modules/antagonists/heretic/transmutation_rune.dm - Space Station 13Space Station 13 - Modules - Types
A 3x3 heretic rune. The kind heretics actually draw in game.
\ No newline at end of file
diff --git a/code/modules/antagonists/mind_flayer/flayer_power.html b/code/modules/antagonists/mind_flayer/flayer_power.html
new file mode 100644
index 00000000000..0333d35f224
--- /dev/null
+++ b/code/modules/antagonists/mind_flayer/flayer_power.html
@@ -0,0 +1 @@
+code/modules/antagonists/mind_flayer/flayer_power.dm - Space Station 13Space Station 13 - Modules - Types
The shop for purchasing and upgrading abilities, from here on the rest of the file is just handling shopping. Specific powers are in the powers subfolder.
\ No newline at end of file
diff --git a/code/modules/antagonists/mind_flayer/powers/flayer_buffs.html b/code/modules/antagonists/mind_flayer/powers/flayer_buffs.html
new file mode 100644
index 00000000000..2af3f3a851c
--- /dev/null
+++ b/code/modules/antagonists/mind_flayer/powers/flayer_buffs.html
@@ -0,0 +1 @@
+code/modules/antagonists/mind_flayer/powers/flayer_buffs.dm - Space Station 13Space Station 13 - Modules - Types
A toggle ability that makes you speedy and attack faster while heating up, level one cast is guaranteed to hurt a bit.
\ No newline at end of file
diff --git a/code/modules/antagonists/mind_flayer/powers/flayer_stealth_powers.html b/code/modules/antagonists/mind_flayer/powers/flayer_stealth_powers.html
new file mode 100644
index 00000000000..485ebeb030a
--- /dev/null
+++ b/code/modules/antagonists/mind_flayer/powers/flayer_stealth_powers.html
@@ -0,0 +1 @@
+code/modules/antagonists/mind_flayer/powers/flayer_stealth_powers.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/antagonists/mind_flayer/powers/flayer_weapon_powers.html b/code/modules/antagonists/mind_flayer/powers/flayer_weapon_powers.html
new file mode 100644
index 00000000000..f87946e3e47
--- /dev/null
+++ b/code/modules/antagonists/mind_flayer/powers/flayer_weapon_powers.html
@@ -0,0 +1 @@
+code/modules/antagonists/mind_flayer/powers/flayer_weapon_powers.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/antagonists/traitor/contractor/datums/contractor_hub.html b/code/modules/antagonists/traitor/contractor/datums/contractor_hub.html
new file mode 100644
index 00000000000..0e59e4cbf1f
--- /dev/null
+++ b/code/modules/antagonists/traitor/contractor/datums/contractor_hub.html
@@ -0,0 +1 @@
+code/modules/antagonists/traitor/contractor/datums/contractor_hub.dm - Space Station 13Space Station 13 - Modules - Types
Describes and manages the contracts and rewards for a single contractor.
\ No newline at end of file
diff --git a/code/modules/antagonists/traitor/contractor/datums/objective_contract.html b/code/modules/antagonists/traitor/contractor/datums/objective_contract.html
new file mode 100644
index 00000000000..b8c4efa9e0a
--- /dev/null
+++ b/code/modules/antagonists/traitor/contractor/datums/objective_contract.html
@@ -0,0 +1 @@
+code/modules/antagonists/traitor/contractor/datums/objective_contract.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/antagonists/traitor/contractor/datums/rep_purchases/rep_purchase_base.html b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/rep_purchase_base.html
new file mode 100644
index 00000000000..fd0430e95b5
--- /dev/null
+++ b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/rep_purchase_base.html
@@ -0,0 +1 @@
+code/modules/antagonists/traitor/contractor/datums/rep_purchases/rep_purchase_base.dm - Space Station 13Space Station 13 - Modules - Types
Describes an item that can be purchased with Contractor Rep.
\ No newline at end of file
diff --git a/code/modules/antagonists/traitor/contractor/datums/rep_purchases/rep_purchases.html b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/rep_purchases.html
new file mode 100644
index 00000000000..e73b7259cbc
--- /dev/null
+++ b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/rep_purchases.html
@@ -0,0 +1 @@
+code/modules/antagonists/traitor/contractor/datums/rep_purchases/rep_purchases.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/antagonists/traitor/contractor/datums/syndicate_contract.html b/code/modules/antagonists/traitor/contractor/datums/syndicate_contract.html
new file mode 100644
index 00000000000..722755664ef
--- /dev/null
+++ b/code/modules/antagonists/traitor/contractor/datums/syndicate_contract.html
@@ -0,0 +1 @@
+code/modules/antagonists/traitor/contractor/datums/syndicate_contract.dm - Space Station 13Space Station 13 - Modules - Types
Describes a contract that can be completed by a Contractor.
\ No newline at end of file
diff --git a/code/modules/antagonists/traitor/contractor/items/contractor_uplink.html b/code/modules/antagonists/traitor/contractor/items/contractor_uplink.html
new file mode 100644
index 00000000000..cd8c79f740a
--- /dev/null
+++ b/code/modules/antagonists/traitor/contractor/items/contractor_uplink.html
@@ -0,0 +1 @@
+code/modules/antagonists/traitor/contractor/items/contractor_uplink.dm - Space Station 13Space Station 13 - Modules - Types
A contractor's point of contact with their Contractor Hub.
\ No newline at end of file
diff --git a/code/modules/antagonists/traitor/contractor/items/extraction_items.html b/code/modules/antagonists/traitor/contractor/items/extraction_items.html
new file mode 100644
index 00000000000..90f23e8f125
--- /dev/null
+++ b/code/modules/antagonists/traitor/contractor/items/extraction_items.html
@@ -0,0 +1,2 @@
+code/modules/antagonists/traitor/contractor/items/extraction_items.dm - Space Station 13Space Station 13 - Modules - Types
Cannot be opened. Contains the belongings of all kidnapped targets.
+Any item added inside stops processing and starts again when removed.
\ No newline at end of file
diff --git a/code/modules/antagonists/uplifted_primitive/team_uplifted_primitive.html b/code/modules/antagonists/uplifted_primitive/team_uplifted_primitive.html
new file mode 100644
index 00000000000..b67a7ecf43d
--- /dev/null
+++ b/code/modules/antagonists/uplifted_primitive/team_uplifted_primitive.html
@@ -0,0 +1 @@
+code/modules/antagonists/uplifted_primitive/team_uplifted_primitive.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
An team containing all uplifted primitives of a given species.
Define Details
TEAM_OBJECTIVE_MEMBER_THRESHOLD
The number of players a team must have before receiving their team objective.
\ No newline at end of file
diff --git a/code/modules/antagonists/vampire/vampire_powers/vampire_powers.html b/code/modules/antagonists/vampire/vampire_powers/vampire_powers.html
new file mode 100644
index 00000000000..7ad74478c95
--- /dev/null
+++ b/code/modules/antagonists/vampire/vampire_powers/vampire_powers.html
@@ -0,0 +1 @@
+code/modules/antagonists/vampire/vampire_powers/vampire_powers.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Full deviation. Flashed from directly behind or behind-left/behind-rack. Not flashed at all.
Define Details
DEVIATION_FULL
Full deviation. Flashed from directly behind or behind-left/behind-rack. Not flashed at all.
DEVIATION_NONE
No deviation at all. Flashed from the front or front-left/front-right. Alternatively, flashed in direct view.
DEVIATION_PARTIAL
Partial deviation. Flashed from the side. Alternatively, flashed out the corner of your eyes.
\ No newline at end of file
diff --git a/code/modules/assembly/infrared.html b/code/modules/assembly/infrared.html
new file mode 100644
index 00000000000..d7a9313746e
--- /dev/null
+++ b/code/modules/assembly/infrared.html
@@ -0,0 +1 @@
+code/modules/assembly/infrared.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/asset_cache.html b/code/modules/asset_cache.html
new file mode 100644
index 00000000000..c5352158ca5
--- /dev/null
+++ b/code/modules/asset_cache.html
@@ -0,0 +1,17 @@
+code/modules/asset_cache/readme.md - Space Station 13Space Station 13 - 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.
\ No newline at end of file
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 00000000000..90aaf5455bc
--- /dev/null
+++ b/code/modules/asset_cache/asset_cache_item.html
@@ -0,0 +1 @@
+code/modules/asset_cache/asset_cache_item.dm - Space Station 13Space Station 13 - Modules - Types
An internal datum containing info on items in the asset cache. Mainly used to cache md5 info for speed.
\ No newline at end of file
diff --git a/code/modules/asset_cache/asset_list.html b/code/modules/asset_cache/asset_list.html
new file mode 100644
index 00000000000..7b9cd78663a
--- /dev/null
+++ b/code/modules/asset_cache/asset_list.html
@@ -0,0 +1,5 @@
+code/modules/asset_cache/asset_list.dm - Space Station 13Space Station 13 - Modules - Types
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)
\ No newline at end of file
diff --git a/code/modules/asset_cache/assets/asset_chem_master.html b/code/modules/asset_cache/assets/asset_chem_master.html
new file mode 100644
index 00000000000..80b48058cf1
--- /dev/null
+++ b/code/modules/asset_cache/assets/asset_chem_master.html
@@ -0,0 +1 @@
+code/modules/asset_cache/assets/asset_chem_master.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/asset_cache/assets/asset_icon_ref_map.html b/code/modules/asset_cache/assets/asset_icon_ref_map.html
new file mode 100644
index 00000000000..292bd8f0b5a
--- /dev/null
+++ b/code/modules/asset_cache/assets/asset_icon_ref_map.html
@@ -0,0 +1 @@
+code/modules/asset_cache/assets/asset_icon_ref_map.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/asset_cache/assets/asset_job_icons.html b/code/modules/asset_cache/assets/asset_job_icons.html
new file mode 100644
index 00000000000..37a8abb81da
--- /dev/null
+++ b/code/modules/asset_cache/assets/asset_job_icons.html
@@ -0,0 +1 @@
+code/modules/asset_cache/assets/asset_job_icons.dm - Space Station 13Space Station 13 - Modules - Types
All job icon sprites, as visible on a security HUD. Used by orbit menu.
\ No newline at end of file
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 00000000000..28fe9a36537
--- /dev/null
+++ b/code/modules/asset_cache/transports/asset_transport.html
@@ -0,0 +1 @@
+code/modules/asset_cache/transports/asset_transport.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
When sending mutiple assets, how many before we give the client a quaint little sending resources message
\ No newline at end of file
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 00000000000..4daa83d6f24
--- /dev/null
+++ b/code/modules/asset_cache/transports/webroot_transport.html
@@ -0,0 +1 @@
+code/modules/asset_cache/transports/webroot_transport.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/atmospherics/environmental/LINDA_fire.html b/code/modules/atmospherics/environmental/LINDA_fire.html
new file mode 100644
index 00000000000..e1c0f8d0ac5
--- /dev/null
+++ b/code/modules/atmospherics/environmental/LINDA_fire.html
@@ -0,0 +1 @@
+code/modules/atmospherics/environmental/LINDA_fire.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/atmospherics/gasmixtures/gas_mixture.html b/code/modules/atmospherics/gasmixtures/gas_mixture.html
new file mode 100644
index 00000000000..35c947beda4
--- /dev/null
+++ b/code/modules/atmospherics/gasmixtures/gas_mixture.html
@@ -0,0 +1 @@
+code/modules/atmospherics/gasmixtures/gas_mixture.dm - Space Station 13Space Station 13 - Modules - Types
A gas mixture that should not be modified after creation.
\ No newline at end of file
diff --git a/code/modules/atmospherics/machinery/airalarm.html b/code/modules/atmospherics/machinery/airalarm.html
new file mode 100644
index 00000000000..ca1fd67f24a
--- /dev/null
+++ b/code/modules/atmospherics/machinery/airalarm.html
@@ -0,0 +1 @@
+code/modules/atmospherics/machinery/airalarm.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/atmospherics/machinery/components/binary_devices/valve.html b/code/modules/atmospherics/machinery/components/binary_devices/valve.html
new file mode 100644
index 00000000000..ed268122203
--- /dev/null
+++ b/code/modules/atmospherics/machinery/components/binary_devices/valve.html
@@ -0,0 +1 @@
+code/modules/atmospherics/machinery/components/binary_devices/valve.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/filter.html b/code/modules/atmospherics/machinery/components/trinary_devices/filter.html
new file mode 100644
index 00000000000..bbd2378d1da
--- /dev/null
+++ b/code/modules/atmospherics/machinery/components/trinary_devices/filter.html
@@ -0,0 +1 @@
+code/modules/atmospherics/machinery/components/trinary_devices/filter.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/tvalve.html b/code/modules/atmospherics/machinery/components/trinary_devices/tvalve.html
new file mode 100644
index 00000000000..3442be6ad59
--- /dev/null
+++ b/code/modules/atmospherics/machinery/components/trinary_devices/tvalve.html
@@ -0,0 +1 @@
+code/modules/atmospherics/machinery/components/trinary_devices/tvalve.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/atmospherics/machinery/other/refill_station.html b/code/modules/atmospherics/machinery/other/refill_station.html
new file mode 100644
index 00000000000..ee5b0a462b3
--- /dev/null
+++ b/code/modules/atmospherics/machinery/other/refill_station.html
@@ -0,0 +1 @@
+code/modules/atmospherics/machinery/other/refill_station.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The maximum target_pressure you can set on the station. Equates to about 1013.25 kPa.
Define Details
MAX_TARGET_PRESSURE
The maximum target_pressure you can set on the station. Equates to about 1013.25 kPa.
\ No newline at end of file
diff --git a/code/modules/atmospherics/machinery/portable/portable_pump.html b/code/modules/atmospherics/machinery/portable/portable_pump.html
new file mode 100644
index 00000000000..a0f013b0af7
--- /dev/null
+++ b/code/modules/atmospherics/machinery/portable/portable_pump.html
@@ -0,0 +1 @@
+code/modules/atmospherics/machinery/portable/portable_pump.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The maximum target_pressure you can set on the pump.
\ No newline at end of file
diff --git a/code/modules/awaymissions/cordon.html b/code/modules/awaymissions/cordon.html
new file mode 100644
index 00000000000..f20fd70914d
--- /dev/null
+++ b/code/modules/awaymissions/cordon.html
@@ -0,0 +1 @@
+code/modules/awaymissions/cordon.dm - Space Station 13Space Station 13 - Modules - Types
Turf type that appears to be a world border, completely impassable and non-interactable to all physical (alive) entities.
\ No newline at end of file
diff --git a/code/modules/awaymissions/mission_code/beach.html b/code/modules/awaymissions/mission_code/beach.html
new file mode 100644
index 00000000000..dba2d1f2c12
--- /dev/null
+++ b/code/modules/awaymissions/mission_code/beach.html
@@ -0,0 +1 @@
+code/modules/awaymissions/mission_code/beach.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/awaymissions/mission_code/ruins/freegolems.html b/code/modules/awaymissions/mission_code/ruins/freegolems.html
new file mode 100644
index 00000000000..7ae5d8fe32b
--- /dev/null
+++ b/code/modules/awaymissions/mission_code/ruins/freegolems.html
@@ -0,0 +1 @@
+code/modules/awaymissions/mission_code/ruins/freegolems.dm - Space Station 13Space Station 13 - Modules - Types
Free golem blueprints, like permit but can claim as much as needed.
\ No newline at end of file
diff --git a/code/modules/awaymissions/mission_code/ruins/oldstation.html b/code/modules/awaymissions/mission_code/ruins/oldstation.html
new file mode 100644
index 00000000000..c44aed01113
--- /dev/null
+++ b/code/modules/awaymissions/mission_code/ruins/oldstation.html
@@ -0,0 +1,2 @@
+code/modules/awaymissions/mission_code/ruins/oldstation.dm - Space Station 13Space Station 13 - Modules - Types
Secure Crates: Access locked to Theta crew. Cannot be moved, destroyed,
+emagged or EMPed because gamers can't be trusted not to game.
\ No newline at end of file
diff --git a/code/modules/awaymissions/mission_code/ruins/telecomns.html b/code/modules/awaymissions/mission_code/ruins/telecomns.html
new file mode 100644
index 00000000000..21797dddd73
--- /dev/null
+++ b/code/modules/awaymissions/mission_code/ruins/telecomns.html
@@ -0,0 +1 @@
+code/modules/awaymissions/mission_code/ruins/telecomns.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Turrets pop up in 1 second, animation is for 0.5 seconds, so we have to call for sleep() twice in order to make it 1 second and not fuck up the flick
Define Details
POPUP_ANIM_TIME
Turrets pop up in 1 second, animation is for 0.5 seconds, so we have to call for sleep() twice in order to make it 1 second and not fuck up the flick
\ No newline at end of file
diff --git a/code/modules/awaymissions/mission_code/ruins/watcher_grave.html b/code/modules/awaymissions/mission_code/ruins/watcher_grave.html
new file mode 100644
index 00000000000..3acce1d5188
--- /dev/null
+++ b/code/modules/awaymissions/mission_code/ruins/watcher_grave.html
@@ -0,0 +1 @@
+code/modules/awaymissions/mission_code/ruins/watcher_grave.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Beam fired by a baby watcher, doesn't actually do less damage than its parent
Define Details
WATCHER_EGG_ACTIVE_MOD
If greater than active mod, egg is active and jiggles
WATCHER_EGG_LIVELY_MOD
if greater than lively mod, jiggles faster
\ No newline at end of file
diff --git a/code/modules/awaymissions/mob_spawn.html b/code/modules/awaymissions/mob_spawn.html
new file mode 100644
index 00000000000..59aa9a3d96a
--- /dev/null
+++ b/code/modules/awaymissions/mob_spawn.html
@@ -0,0 +1 @@
+code/modules/awaymissions/mob_spawn.dm - Space Station 13Space Station 13 - Modules - Types
these mob spawn subtypes trigger immediately (New or Initialize) and are not player controlled... since they're dead, you know?
\ No newline at end of file
diff --git a/code/modules/buildmode.html b/code/modules/buildmode.html
new file mode 100644
index 00000000000..82f896992db
--- /dev/null
+++ b/code/modules/buildmode.html
@@ -0,0 +1,284 @@
+code/modules/buildmode/README.md - Space Station 13Space Station 13 - Modules - Types
Buildmode
Code layout
Buildmode
+
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.
+
+
+
Alt+Left click a turf, object, or mob:
+
Select the type of the object clicked.
+
+
+
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.
+
+
+
+
+
Atmos
+
Description:
+
Fills a region with configurable atmos. By default, ignores unsimulated turfs, but is able to "overwrite" the atmos of unsimulated turfs with a special control input.
+
By default, fills a region with a breathable, standard atmosphere.
+
Controls:
+
+
+
Right click on the mode selector icon:
+
Set the following traits:
+
+
Total Pressure
+
Temperature
+
Partial Pressure Ratio (PPR) Oxygen
+
PPR Nitrogen
+
PPR Plasma
+
PPR CO2
+
PPR N2O
+
+
+
+
Left click a region:
+
Fill the region with the configured atmos.
+
+
+
Control+Left click a region:
+
As with the regular left click, but also "overwrites" the base atmos of any unsimulated turfs in the region - such as space turfs.
+
+
+
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.
+
+
+
+
+
Link
+
Description:
+
Form links between door control buttons and either airlocks or pod bay doors.
+
The selected button will be highlighted, and visible lines will be drawn between the doors it is linked to and itself.
+
Controls:
+
+
+
Left click a door control button:
+
Makes the button active, and show what doors it is linked to.
+
+
+
Right click an airlock (requires active button):
+
Links the airlock to the active button. Will remove all links from the button first, if the button is linked to pod bay doors.
+
+
+
Right click a pod bay door (requires active button):
+
Links the pod bay door to the active button. Will remove all links from the button first, if the button is linked to regular airlocks.
+
+
+
+
+
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.
+
+
+
+
+
Map Generator
+
Description:
+
Fills rectangular regions with algorithmically generated content. Right click during region selection to cancel.
+
See the procedural_mapping module for the generators themselves.
+
Controls:
+
+
+
Right-click on the mode selector:
+
Select a map generator from all the generators present in the codebase.
+
+
+
Left click two corners of an area:
+
Use the generator to populate the region.
+
+
+
Right click during region selection:
+
Cancel region selection.
+
+
+
+
+
Save
+
Description:
+
Captures a rectangular region in a .dmm format, which can be loaded back later using the "Place Map Template" debug verb.
+
Keep in mind this feature is somewhat experimental, and may not always work.
+
Controls:
+
+
+
Right click on the mode selector:
+
Configure whether to save in either JSON mode or not.
+
+
+
Left click two corners of an area:
+
Save the region to a .dmm file. You will be prompted for where to save this - a copy will be saved in the _maps/quicksave folder.
+
+
+
Right click during region selection:
+
Cancel region selection.
+
+
+
+
+
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.
+
+
+
+
\ No newline at end of file
diff --git a/code/modules/client/jobban_holder.html b/code/modules/client/jobban_holder.html
new file mode 100644
index 00000000000..28b7a865c0d
--- /dev/null
+++ b/code/modules/client/jobban_holder.html
@@ -0,0 +1 @@
+code/modules/client/jobban_holder.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/client/login_processing/__client_login_processor.html b/code/modules/client/login_processing/__client_login_processor.html
new file mode 100644
index 00000000000..0e52f9146a0
--- /dev/null
+++ b/code/modules/client/login_processing/__client_login_processor.html
@@ -0,0 +1 @@
+code/modules/client/login_processing/__client_login_processor.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/clothing/clothing.html b/code/modules/clothing/clothing.html
new file mode 100644
index 00000000000..51185709dd8
--- /dev/null
+++ b/code/modules/clothing/clothing.html
@@ -0,0 +1 @@
+code/modules/clothing/clothing.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Suffix for jumpsuits used in .dmi files when rolled down
Define Details
JUMPSUIT_ROLLED_DOWN_SUFFIX
Suffix for jumpsuits used in .dmi files when rolled down
\ No newline at end of file
diff --git a/code/modules/clothing/glasses/engine_goggles.html b/code/modules/clothing/glasses/engine_goggles.html
new file mode 100644
index 00000000000..3c651521804
--- /dev/null
+++ b/code/modules/clothing/glasses/engine_goggles.html
@@ -0,0 +1 @@
+code/modules/clothing/glasses/engine_goggles.dm - Space Station 13Space Station 13 - Modules - Types
Atmospherics techs get their own version with T-ray and an exlusive Pressure view.
\ No newline at end of file
diff --git a/code/modules/clothing/gloves/colored_gloves.html b/code/modules/clothing/gloves/colored_gloves.html
new file mode 100644
index 00000000000..69bd81c7aaa
--- /dev/null
+++ b/code/modules/clothing/gloves/colored_gloves.html
@@ -0,0 +1 @@
+code/modules/clothing/gloves/colored_gloves.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/clothing/gloves/rings.html b/code/modules/clothing/gloves/rings.html
new file mode 100644
index 00000000000..2fbcab4daf3
--- /dev/null
+++ b/code/modules/clothing/gloves/rings.html
@@ -0,0 +1 @@
+code/modules/clothing/gloves/rings.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/clothing/head/beanie.html b/code/modules/clothing/head/beanie.html
new file mode 100644
index 00000000000..cbfa2ef70b4
--- /dev/null
+++ b/code/modules/clothing/head/beanie.html
@@ -0,0 +1 @@
+code/modules/clothing/head/beanie.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/clothing/head/misc_hats.html b/code/modules/clothing/head/misc_hats.html
new file mode 100644
index 00000000000..aacd57b54c3
--- /dev/null
+++ b/code/modules/clothing/head/misc_hats.html
@@ -0,0 +1 @@
+code/modules/clothing/head/misc_hats.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/clothing/shoes/magboots.html b/code/modules/clothing/shoes/magboots.html
new file mode 100644
index 00000000000..cce7dab1502
--- /dev/null
+++ b/code/modules/clothing/shoes/magboots.html
@@ -0,0 +1 @@
+code/modules/clothing/shoes/magboots.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/clothing/shoes/misc_shoes.html b/code/modules/clothing/shoes/misc_shoes.html
new file mode 100644
index 00000000000..d0faf7c4cdb
--- /dev/null
+++ b/code/modules/clothing/shoes/misc_shoes.html
@@ -0,0 +1 @@
+code/modules/clothing/shoes/misc_shoes.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/clothing/suits/misc_suits.html b/code/modules/clothing/suits/misc_suits.html
new file mode 100644
index 00000000000..038df5a7e2a
--- /dev/null
+++ b/code/modules/clothing/suits/misc_suits.html
@@ -0,0 +1 @@
+code/modules/clothing/suits/misc_suits.dm - Space Station 13Space Station 13 - Modules - Types
Advanced Protective Suit, AKA, God Mode in wearable form.
\ No newline at end of file
diff --git a/code/modules/clothing/under/accessories/accessory.html b/code/modules/clothing/under/accessories/accessory.html
new file mode 100644
index 00000000000..198dc433818
--- /dev/null
+++ b/code/modules/clothing/under/accessories/accessory.html
@@ -0,0 +1 @@
+code/modules/clothing/under/accessories/accessory.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/clothing/under/color.html b/code/modules/clothing/under/color.html
new file mode 100644
index 00000000000..314eec7e6df
--- /dev/null
+++ b/code/modules/clothing/under/color.html
@@ -0,0 +1 @@
+code/modules/clothing/under/color.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/clothing/under/costumes.html b/code/modules/clothing/under/costumes.html
new file mode 100644
index 00000000000..5401d25a822
--- /dev/null
+++ b/code/modules/clothing/under/costumes.html
@@ -0,0 +1 @@
+code/modules/clothing/under/costumes.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/clothing/under/jobs/medical_jumpsuits.html b/code/modules/clothing/under/jobs/medical_jumpsuits.html
new file mode 100644
index 00000000000..9e5142890d1
--- /dev/null
+++ b/code/modules/clothing/under/jobs/medical_jumpsuits.html
@@ -0,0 +1 @@
+code/modules/clothing/under/jobs/medical_jumpsuits.dm - Space Station 13Space Station 13 - Modules - Types
Seems like it should be here for organisational purposes
\ No newline at end of file
diff --git a/code/modules/cooking/cooking_container.html b/code/modules/cooking/cooking_container.html
new file mode 100644
index 00000000000..4dc096d7551
--- /dev/null
+++ b/code/modules/cooking/cooking_container.html
@@ -0,0 +1,7 @@
+code/modules/cooking/cooking_container.dm - Space Station 13Space Station 13 - Modules - Types
Cooking containers are used in ovens, fryers and so on, to hold multiple
+ingredients for a recipe. They interact with the cooking process, and link
+up with the cooking code dynamically. Originally sourced from the Aurora,
+heavily retooled to actually work with PCWJ Holder for a portion of an
+incomplete meal, allows a cook to temporarily offload recipes to work on
+things factory-style, eliminating the need for 20 plates to get things done
+fast.
\ No newline at end of file
diff --git a/code/modules/cooking/cooking_recipe.html b/code/modules/cooking/cooking_recipe.html
new file mode 100644
index 00000000000..71ba7e65aae
--- /dev/null
+++ b/code/modules/cooking/cooking_recipe.html
@@ -0,0 +1 @@
+code/modules/cooking/cooking_recipe.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/cooking/machines/cooking_surface.html b/code/modules/cooking/machines/cooking_surface.html
new file mode 100644
index 00000000000..fa33ca0ac2a
--- /dev/null
+++ b/code/modules/cooking/machines/cooking_surface.html
@@ -0,0 +1,2 @@
+code/modules/cooking/machines/cooking_surface.dm - Space Station 13Space Station 13 - Modules - Types
Cooking surfaces are representations of the available "slots" on a cooking machine
+that can hold a cooking container.
\ No newline at end of file
diff --git a/code/modules/cooking/recipe_tracker.html b/code/modules/cooking/recipe_tracker.html
new file mode 100644
index 00000000000..1c9376487b0
--- /dev/null
+++ b/code/modules/cooking/recipe_tracker.html
@@ -0,0 +1,4 @@
+code/modules/cooking/recipe_tracker.dm - Space Station 13Space Station 13 - Modules - Types
A single attempt to perform a step in a recipe.
+These are created in a recipe tracker and not kept around.
+This exists only to make the bookkeeping around recipe tracking easier.
A recipe tracker is an abstract representation of the progress that a
+cooking container has made towards any of its possible recipe outcomes.
\ No newline at end of file
diff --git a/code/modules/cooking/recipes/cutting_board_recipes.html b/code/modules/cooking/recipes/cutting_board_recipes.html
new file mode 100644
index 00000000000..9dd0abcbc16
--- /dev/null
+++ b/code/modules/cooking/recipes/cutting_board_recipes.html
@@ -0,0 +1,3 @@
+code/modules/cooking/recipes/cutting_board_recipes.dm - Space Station 13Space Station 13 - Modules - Types
A step that allows either direct adding of a supermatter sliver
+(if you have somehow manage to hold one), or
+from tongs if those are used and contain a sliver in them.
\ No newline at end of file
diff --git a/code/modules/cooking/recipes/oven_recipes.html b/code/modules/cooking/recipes/oven_recipes.html
new file mode 100644
index 00000000000..578dc25e484
--- /dev/null
+++ b/code/modules/cooking/recipes/oven_recipes.html
@@ -0,0 +1 @@
+code/modules/cooking/recipes/oven_recipes.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/cooking/recipes/stove_recipes.html b/code/modules/cooking/recipes/stove_recipes.html
new file mode 100644
index 00000000000..30787fcb17d
--- /dev/null
+++ b/code/modules/cooking/recipes/stove_recipes.html
@@ -0,0 +1 @@
+code/modules/cooking/recipes/stove_recipes.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/cooking/steps/recipe_step_add_meathunk.html b/code/modules/cooking/steps/recipe_step_add_meathunk.html
new file mode 100644
index 00000000000..2442a50c1d6
--- /dev/null
+++ b/code/modules/cooking/steps/recipe_step_add_meathunk.html
@@ -0,0 +1 @@
+code/modules/cooking/steps/recipe_step_add_meathunk.dm - Space Station 13Space Station 13 - Modules - Types
A specialized add-item step for specific meat subtypes
\ No newline at end of file
diff --git a/code/modules/cooking/steps/recipe_step_add_produce.html b/code/modules/cooking/steps/recipe_step_add_produce.html
new file mode 100644
index 00000000000..ab8eb90dee4
--- /dev/null
+++ b/code/modules/cooking/steps/recipe_step_add_produce.html
@@ -0,0 +1 @@
+code/modules/cooking/steps/recipe_step_add_produce.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/crafting/guncrafting.html b/code/modules/crafting/guncrafting.html
new file mode 100644
index 00000000000..c5b805582c4
--- /dev/null
+++ b/code/modules/crafting/guncrafting.html
@@ -0,0 +1 @@
+code/modules/crafting/guncrafting.dm - Space Station 13Space Station 13 - Modules - Types
These gun kits are printed from the protolathe to then be used in making new weapons
\ No newline at end of file
diff --git a/code/modules/crafting/recipes.html b/code/modules/crafting/recipes.html
new file mode 100644
index 00000000000..406e29a1e6e
--- /dev/null
+++ b/code/modules/crafting/recipes.html
@@ -0,0 +1 @@
+code/modules/crafting/recipes.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/customitems/item_defines.html b/code/modules/customitems/item_defines.html
new file mode 100644
index 00000000000..49c22fa88fd
--- /dev/null
+++ b/code/modules/customitems/item_defines.html
@@ -0,0 +1,5 @@
+code/modules/customitems/item_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
///////////PARADISE STATION CUSTOM ITEMS///////////
+
Usable Items
\ No newline at end of file
diff --git a/code/modules/economy.html b/code/modules/economy.html
new file mode 100644
index 00000000000..b69bcffa6e2
--- /dev/null
+++ b/code/modules/economy.html
@@ -0,0 +1,100 @@
+code/modules/economy/README.md - Space Station 13Space Station 13 - Modules - Types
Paradise Economy
Introduction
+
This README was last updated on October 2nd, 2022
+
Economy SubSystem
+
The Economy SubSystem performs a few important tasks that turns the gears of the economy
+
+
+
payday() - This is called every 30 minutes. the payday proc goes through every single money account and credits it the amount it has its paycheck set to. In addition, it will add/subtract credits based on what bonuses/deductions the money account has on it. In addition, SSeconomy tracks global deductions and bonuses which will be applied to EVERY paycheck and then zero'd out after the payday is over. If a money account is open on a NanoBank app, they will be alerted to the paycheck through the app.
+
+
+
process_job_tasks()- This is called every 30 seconds to check if players who have job objectives have completed the requirements of those job objectives, if so, it will add a "bonus" to the players next check and notify the player of the payroll modification. This proc handles calling procs and changing variables that will check completion on the job task and disable it from being checked in the future once payout is given.
+
+
+
The Space Credit Financial System
+
The Space Credit system is split up into two important datums: money accounts (/datum/money_account) and money account databases (datum/money_account_database). Money accounts represent individual accounts and money account databases represent a collection of money accounts.
+
Money Accounts
+
A /datum/money_acount or "money account" is where most economy data is stored. In money accounts information is contained about the owner as well as all relevant credentials and setting for the account. Money accounts are rather barebones and only contain helper functions to simplify direct interaction.
+
Credit Balance
+Accounts are primarily a store of space credits for crew
+/datum/money_account/proc/try_withdraw_credits - used to subtract credits from account balance with some safety checks
+/datum/money_account/proc/deposit_credits - used to deposit credits into the account balance
+/datum/money_account/proc/set_credits - used to set credit balance to a specified value
+
Account Security
+Accounts are not perfectly secure and safe, in fact, they're built to be broken into when crew members are not careful with their credentials, or an antagonist chooses to try and access another's account
+
/datum/money_account/proc/authenticate_login
+This authenticate_login() proc is used to check the provided credentials against the accounts security level, it returns fails (FALSE) or success (TRUE) if the provided values pass the threshold/security reqs for the specificed security level
+There are a few important accounts level
+
+
ACCOUNT_SECURITY_ID - Account can be accessed with only the account number
+
ACCOUNT_SECURITY_PIN - Account can be accessed only with the account number AND correct pin
+
ACCOUNT_SECURITY_RESTRICTED - Account has same pin/acc-number restrictions but can only be accessed through special machines
+
ACCOUNT_SECURITY_CC - Account requires user to be an admin, this is for CC character safety
make_transaction_log - Creates a /datum/transaction object to be tracked on money account
+Transactions are just logs of money going in and out of the account so that players can see where there money comes from and how it is being spent, it provides a paper trail as well for security and legal affairs
+
Money Transfers
+Money transfers are the transfer of space credits between money accounts, while the movement of space credits out of one account into another is handled by an account database, the actual requests that have not been resolved are stored and handled on money accounts
+
/datum/money_account/proc/create_transfer_request
+Simple helper proc that handles creating a transfer request on the money account, needed to interact with LAZYLISTs
+/datum/money_account/proc/resolve_transfer_request
+another helper proc that clears the transfer request
+
Neither of these procs actually transfer money account and rather just deal with how the information is being stored and processed on the money account, the actual money transfer is done through the account database.
+
Why You Shouldn't use these Procs
+You shouldn't be using these procs unless you intend to change how the account database interacts with money accounts. Like mentioned previously, money accounts are only for storing data and don't actual perform the functions and power the moving parts of the economy. This is because there can be upwards of 100 money accounts in one round, in order to make this memory performative, money accounts are focused on being as efficient as possible by utilizing LAZY LISTS and facilitating good Garbage Collection practices
+
Instead, if you want to perform calculations, purchases, transfers, etc with multiple money accounts, ALL of that should be done through a account database or some form of financial machinery but not the money account.
+
Account Databases
+
If Money accounts are just records of data, account databases are a store of multiple money data records. A datum/money_account_database holds lists of money accounts and serves as the primary means in which interactions are carried out
+
most instances of any financial/economy machinery/programs should have a reference to the main station
+database. You'll see a lot of machinery already use a var ref to the main station db, through this, most all economy actions can be performed. (Please see each procs documentation for usage). This is how you will interact with money account, through the account database.
+
Referencing Money Databases
+A good way to make sure your machine can access the station money database
+var/datum/money_account_database/account_db = GLOB.station_money_database
+Additionally, if you need to access a different money database you can go through SSeconomy
+SSeconomy.money_account_databases
+
Using a Money DB to find an account
+The only way to find personal money accounts in a money DB is with the account associated account number
+you can use find_user_account() for this.
+/datum/money_account_database/proc/find_user_account(account_number, include_departments = FALSE)
+for this proc specifically, you can specify to include departments in the search
+
For the main station type account db, you can also find departments, you can either get all the departments in one list an iterate through it yourself, or just provide the name of the department
+/datum/money_account_database/main_station/proc/get_all_department_accounts()
+/datum/money_account_database/main_station/proc/get_account_by_department(department)
+
Moving Money In and Out of Money Accounts
+You can charge a money account, when doing this through the account_db, you need to provide information about the purchase so that if the charge goes through, proper transaction logs can be created
+/datum/money_account_database/proc/charge_account
+
You can add credits to a money account with the credit account proc, works similairly to charge account
+/datum/money_account_database/proc/credit_account
+
Create a money transfer request datum on specified money account, notifies the money account to start storing this data
+/datum/money_account_database/proc/create_transfer_request
+Resolves a money transfer request, deletes transfer request and charges/credits involved accounts
+/datum/money_account_database/proc/resolve_transfer_request
+
Money Account Security through the DB
+Check user permission to access a money account based on given parameters
+/datum/money_account_database/proc/try_authenticate_login
+Create a transaction log on a money account (and DB in some cases), basically a constructor
+/datum/money_account_database/proc/log_account_action
+
for example, in order to interact with money account A you will need to go through your account database
+account_db.credit_account(A, 50, "Account Credit", ...)
+as opposed to doing it the wrong way which doesn't create a transaction log or check to see if the DB is online
+A.deposit_credits(50)
+
As with the previousl example, you may notice that a lot of these procs exist on the money account level. Those are internal procs that exist for the account database to use. The reason for this is to ensure proper logging for players and admins, handle interactions where two money accounts are involved, and to prevent runtimes that may occur from value mismatches. Many procs such as a charge_account() and resolve_transfer_request() also ensure perfect transfer of credits, this is important (And explained in the next section)
+
Perfect Credit Transfer
+
The power of an in-game economy exists because of how much control we have over it. Every credit spent needs to go somewhere, and every credit given needs to come from somewhere. One should avoid just crediting accounts on a whim or removing money for no reason. Since we don't have current implementations of supply/demand or rolling prices (increasing or decreasing), prices of items in-game are fixed. That means that the money supply is the only thing controlling how much or little of items that the crew can buy.
+
Space Credits Taps (In-Flow of Space Credits into the economy)
+
+
SSeconomy Payday every 30 minutes
+
Job Objectives Completion
+
Cargo selling crates, plasma, seeds, and research
+
Round-start Money Account Balances
+
Slot Machine Winnings (although this really is a space credit drain in disguise)
+
Contract Completions (contractors)
+
+
Space Credit Drains/Exchanges (Out-Flow of space credits out of the economy)
+
+
Vending Machine Purchases
+
Cargo Supply Console Purchases
+
Physical Destruction of Space cash or credits stored in economy machinery
+
RARE: Sol Traders
+
+
Other Important Economy Machinery/Programs
\ No newline at end of file
diff --git a/code/modules/economy/economy_helpers.html b/code/modules/economy/economy_helpers.html
new file mode 100644
index 00000000000..ad49063e700
--- /dev/null
+++ b/code/modules/economy/economy_helpers.html
@@ -0,0 +1 @@
+code/modules/economy/economy_helpers.dm - Space Station 13Space Station 13 - Modules - Types
matches a string job name to their department(s) and returns it as a list
\ No newline at end of file
diff --git a/code/modules/economy/economy_machinery/economy_machinery.html b/code/modules/economy/economy_machinery/economy_machinery.html
new file mode 100644
index 00000000000..5c5cab05cd9
--- /dev/null
+++ b/code/modules/economy/economy_machinery/economy_machinery.html
@@ -0,0 +1,2 @@
+code/modules/economy/economy_machinery/economy_machinery.dm - Space Station 13Space Station 13 - Modules - Types
Base machine type for machinery that needs to interact with users spending Space Cash or credit from Money Accounts
+has helper procs to automate account authentification and handling transactions.
\ No newline at end of file
diff --git a/code/modules/emoji/emoji_parse.html b/code/modules/emoji/emoji_parse.html
new file mode 100644
index 00000000000..48ef258526c
--- /dev/null
+++ b/code/modules/emoji/emoji_parse.html
@@ -0,0 +1 @@
+code/modules/emoji/emoji_parse.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/events/blob/blob_mobs_ai.html b/code/modules/events/blob/blob_mobs_ai.html
new file mode 100644
index 00000000000..d7676316642
--- /dev/null
+++ b/code/modules/events/blob/blob_mobs_ai.html
@@ -0,0 +1,2 @@
+code/modules/events/blob/blob_mobs_ai.dm - Space Station 13Space Station 13 - Modules - Types
Extremely simple AI, this isn't a very smart boy
+Only notable quirk is that it uses JPS movement, simple avoidance would fail to realise it can path through blobs
As blob zombie but will prioritise attacking corpses to zombify them
\ No newline at end of file
diff --git a/code/modules/events/blob/blob_structures/captured_nuke.html b/code/modules/events/blob/blob_structures/captured_nuke.html
new file mode 100644
index 00000000000..2d95c8c98d6
--- /dev/null
+++ b/code/modules/events/blob/blob_structures/captured_nuke.html
@@ -0,0 +1 @@
+code/modules/events/blob/blob_structures/captured_nuke.dm - Space Station 13Space Station 13 - Modules - Types
alternative to blob just straight up destroying nukes
\ No newline at end of file
diff --git a/code/modules/events/event.html b/code/modules/events/event.html
new file mode 100644
index 00000000000..d2a63c26aa7
--- /dev/null
+++ b/code/modules/events/event.html
@@ -0,0 +1 @@
+code/modules/events/event.dm - Space Station 13Space Station 13 - Modules - Types
NOTE: Times are measured in master controller ticks!
\ No newline at end of file
diff --git a/code/modules/events/event_procs.html b/code/modules/events/event_procs.html
new file mode 100644
index 00000000000..fb0b52567a4
--- /dev/null
+++ b/code/modules/events/event_procs.html
@@ -0,0 +1 @@
+code/modules/events/event_procs.dm - Space Station 13Space Station 13 - Modules - Types
Returns the net resources available for event rolling
\ No newline at end of file
diff --git a/code/modules/events/mass_hallucination.html b/code/modules/events/mass_hallucination.html
new file mode 100644
index 00000000000..dbff359e09c
--- /dev/null
+++ b/code/modules/events/mass_hallucination.html
@@ -0,0 +1 @@
+code/modules/events/mass_hallucination.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
at least 75% rad armor is required to be immune to this event
Define Details
RAD_ARMOR_TO_IMMUNITY
at least 75% rad armor is required to be immune to this event
\ No newline at end of file
diff --git a/code/modules/events/pulsedemon_event.html b/code/modules/events/pulsedemon_event.html
new file mode 100644
index 00000000000..6114864e331
--- /dev/null
+++ b/code/modules/events/pulsedemon_event.html
@@ -0,0 +1 @@
+code/modules/events/pulsedemon_event.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/modules/events/shuttle_loan/shuttle_loan_datum.html b/code/modules/events/shuttle_loan/shuttle_loan_datum.html
new file mode 100644
index 00000000000..8196391fb00
--- /dev/null
+++ b/code/modules/events/shuttle_loan/shuttle_loan_datum.html
@@ -0,0 +1 @@
+code/modules/events/shuttle_loan/shuttle_loan_datum.dm - Space Station 13Space Station 13 - Modules - Types
One of the potential shuttle loans you might receive.
\ No newline at end of file
diff --git a/code/modules/events/spacevine.html b/code/modules/events/spacevine.html
new file mode 100644
index 00000000000..dbc03ebe43d
--- /dev/null
+++ b/code/modules/events/spacevine.html
@@ -0,0 +1 @@
+code/modules/events/spacevine.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/events/tear.html b/code/modules/events/tear.html
new file mode 100644
index 00000000000..dd667e9170c
--- /dev/null
+++ b/code/modules/events/tear.html
@@ -0,0 +1 @@
+code/modules/events/tear.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/events/wizard/ghost_wizard_spells.html b/code/modules/events/wizard/ghost_wizard_spells.html
new file mode 100644
index 00000000000..0eebbf9fdb6
--- /dev/null
+++ b/code/modules/events/wizard/ghost_wizard_spells.html
@@ -0,0 +1 @@
+code/modules/events/wizard/ghost_wizard_spells.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/food_and_drinks/drinks/drinks/bottle.html b/code/modules/food_and_drinks/drinks/drinks/bottle.html
new file mode 100644
index 00000000000..c322b0f3a06
--- /dev/null
+++ b/code/modules/food_and_drinks/drinks/drinks/bottle.html
@@ -0,0 +1 @@
+code/modules/food_and_drinks/drinks/drinks/bottle.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/food_and_drinks/drinks/drinks_base.html b/code/modules/food_and_drinks/drinks/drinks_base.html
new file mode 100644
index 00000000000..72b29dd33a0
--- /dev/null
+++ b/code/modules/food_and_drinks/drinks/drinks_base.html
@@ -0,0 +1 @@
+code/modules/food_and_drinks/drinks/drinks_base.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/food_and_drinks/food/condiment.html b/code/modules/food_and_drinks/food/condiment.html
new file mode 100644
index 00000000000..134e5098584
--- /dev/null
+++ b/code/modules/food_and_drinks/food/condiment.html
@@ -0,0 +1 @@
+code/modules/food_and_drinks/food/condiment.dm - Space Station 13Space Station 13 - Modules - Types
Seperate from above since it's a small shaker rather then
\ No newline at end of file
diff --git a/code/modules/food_and_drinks/food/customizables.html b/code/modules/food_and_drinks/food/customizables.html
new file mode 100644
index 00000000000..e14bd7c3a08
--- /dev/null
+++ b/code/modules/food_and_drinks/food/customizables.html
@@ -0,0 +1 @@
+code/modules/food_and_drinks/food/customizables.dm - Space Station 13Space Station 13 - Modules - Types
In the event you fuckers find something I forgot to add a customizable food for.
\ No newline at end of file
diff --git a/code/modules/food_and_drinks/food/foods/ethnic.html b/code/modules/food_and_drinks/food/foods/ethnic.html
new file mode 100644
index 00000000000..93399705bf6
--- /dev/null
+++ b/code/modules/food_and_drinks/food/foods/ethnic.html
@@ -0,0 +1 @@
+code/modules/food_and_drinks/food/foods/ethnic.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/food_and_drinks/food/foods/ingredients.html b/code/modules/food_and_drinks/food/foods/ingredients.html
new file mode 100644
index 00000000000..279cbc274fc
--- /dev/null
+++ b/code/modules/food_and_drinks/food/foods/ingredients.html
@@ -0,0 +1 @@
+code/modules/food_and_drinks/food/foods/ingredients.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/food_and_drinks/food/foods/side_dishes.html b/code/modules/food_and_drinks/food/foods/side_dishes.html
new file mode 100644
index 00000000000..71b60d3a19f
--- /dev/null
+++ b/code/modules/food_and_drinks/food/foods/side_dishes.html
@@ -0,0 +1 @@
+code/modules/food_and_drinks/food/foods/side_dishes.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/food_and_drinks/food_base.html b/code/modules/food_and_drinks/food_base.html
new file mode 100644
index 00000000000..b26f6ae78d9
--- /dev/null
+++ b/code/modules/food_and_drinks/food_base.html
@@ -0,0 +1 @@
+code/modules/food_and_drinks/food_base.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/modules/food_and_drinks/kitchen_machinery/processor.html b/code/modules/food_and_drinks/kitchen_machinery/processor.html
new file mode 100644
index 00000000000..e42076905d7
--- /dev/null
+++ b/code/modules/food_and_drinks/kitchen_machinery/processor.html
@@ -0,0 +1 @@
+code/modules/food_and_drinks/kitchen_machinery/processor.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/food_and_drinks/kitchen_machinery/smartfridge.html b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.html
new file mode 100644
index 00000000000..6132a6dc2a6
--- /dev/null
+++ b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.html
@@ -0,0 +1,4 @@
+code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm - Space Station 13Space Station 13 - Modules - Types
The Chefs smartfridge. This smartfridge will spawn with a random condiment, then 3 stacks of 3 plants (or fish meat) to give chef some extra starting variety, or new ideas on what to cook!
Variant of the Smart Fridge for drying stuff.
+Doesn't have components.
\ No newline at end of file
diff --git a/code/modules/food_and_drinks/recipes/recipes_microwave.html b/code/modules/food_and_drinks/recipes/recipes_microwave.html
new file mode 100644
index 00000000000..6c1a20469a3
--- /dev/null
+++ b/code/modules/food_and_drinks/recipes/recipes_microwave.html
@@ -0,0 +1,5 @@
+code/modules/food_and_drinks/recipes/recipes_microwave.dm - Space Station 13Space Station 13 - Modules - Types
This recipe exists solely so that placing a brain in a microwave destroys it
+for the purpose of round-removing antag assassination targets. Because an
+effect can never be inserted into a microwave by hand, one hopes, the recipe
+itself cannot be completed. However, it accepts a brain as an ingredient, so
+microwaves can take that as input.
\ No newline at end of file
diff --git a/code/modules/games/unum.html b/code/modules/games/unum.html
new file mode 100644
index 00000000000..a9711dc1413
--- /dev/null
+++ b/code/modules/games/unum.html
@@ -0,0 +1 @@
+code/modules/games/unum.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/hallucinations/effects/backrooms.html b/code/modules/hallucinations/effects/backrooms.html
new file mode 100644
index 00000000000..0e9e1bba771
--- /dev/null
+++ b/code/modules/hallucinations/effects/backrooms.html
@@ -0,0 +1 @@
+code/modules/hallucinations/effects/backrooms.dm - Space Station 13Space Station 13 - Modules - Types
Temporarily sends the target to the backrooms. Their body's movement matches their movement in the backrooms.
\ No newline at end of file
diff --git a/code/modules/hallucinations/effects/blind_rush_hallucination.html b/code/modules/hallucinations/effects/blind_rush_hallucination.html
new file mode 100644
index 00000000000..706ef7db4cd
--- /dev/null
+++ b/code/modules/hallucinations/effects/blind_rush_hallucination.html
@@ -0,0 +1 @@
+code/modules/hallucinations/effects/blind_rush_hallucination.dm - Space Station 13Space Station 13 - Modules - Types
Makes target blind and causes them to see semi-transparent humanoids running at them.
\ No newline at end of file
diff --git a/code/modules/hallucinations/effects/common.html b/code/modules/hallucinations/effects/common.html
new file mode 100644
index 00000000000..e7558a74206
--- /dev/null
+++ b/code/modules/hallucinations/effects/common.html
@@ -0,0 +1 @@
+code/modules/hallucinations/effects/common.dm - Space Station 13Space Station 13 - Modules - Types
A generic hallucination based on the Chaser that attacks if close enough.
\ No newline at end of file
diff --git a/code/modules/hallucinations/effects/grenades.html b/code/modules/hallucinations/effects/grenades.html
new file mode 100644
index 00000000000..5d0f4954802
--- /dev/null
+++ b/code/modules/hallucinations/effects/grenades.html
@@ -0,0 +1,3 @@
+code/modules/hallucinations/effects/grenades.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/hallucinations/effects/major.html b/code/modules/hallucinations/effects/major.html
new file mode 100644
index 00000000000..dcd52581a5d
--- /dev/null
+++ b/code/modules/hallucinations/effects/major.html
@@ -0,0 +1 @@
+code/modules/hallucinations/effects/major.dm - Space Station 13Space Station 13 - Modules - Types
Fires a penetrator round at the target. On hit, knockdown + stam loss + hallucinated blood splatter for a bit.
\ No newline at end of file
diff --git a/code/modules/hallucinations/effects/minor.html b/code/modules/hallucinations/effects/minor.html
new file mode 100644
index 00000000000..6a4f061d8ee
--- /dev/null
+++ b/code/modules/hallucinations/effects/minor.html
@@ -0,0 +1 @@
+code/modules/hallucinations/effects/minor.dm - Space Station 13Space Station 13 - Modules - Types
A generic hallucination that causes the target to see unique examine descriptions
\ No newline at end of file
diff --git a/code/modules/hallucinations/effects/moderate.html b/code/modules/hallucinations/effects/moderate.html
new file mode 100644
index 00000000000..af790d73e6c
--- /dev/null
+++ b/code/modules/hallucinations/effects/moderate.html
@@ -0,0 +1 @@
+code/modules/hallucinations/effects/moderate.dm - Space Station 13Space Station 13 - Modules - Types
A suspicious individual peers out of a nearby vent at the target.
\ No newline at end of file
diff --git a/code/modules/hallucinations/effects/waves_hallucination.html b/code/modules/hallucinations/effects/waves_hallucination.html
new file mode 100644
index 00000000000..d7071b0e048
--- /dev/null
+++ b/code/modules/hallucinations/effects/waves_hallucination.html
@@ -0,0 +1,2 @@
+code/modules/hallucinations/effects/waves_hallucination.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/modules/hallucinations/effects/xeno_pounce.html b/code/modules/hallucinations/effects/xeno_pounce.html
new file mode 100644
index 00000000000..5fcd306ff51
--- /dev/null
+++ b/code/modules/hallucinations/effects/xeno_pounce.html
@@ -0,0 +1 @@
+code/modules/hallucinations/effects/xeno_pounce.dm - Space Station 13Space Station 13 - Modules - Types
An imaginary alien hunter pounces towards the target.
\ No newline at end of file
diff --git a/code/modules/hallucinations/hallucinations.html b/code/modules/hallucinations/hallucinations.html
new file mode 100644
index 00000000000..a1350d5e016
--- /dev/null
+++ b/code/modules/hallucinations/hallucinations.html
@@ -0,0 +1,2 @@
+code/modules/hallucinations/hallucinations.dm - Space Station 13Space Station 13 - Modules - Types
Subtype that doesn't delete itself.
+Mostly used for hallucination managers because they delete the hallucinations when required
\ No newline at end of file
diff --git a/code/modules/hydroponics/biogenerator.html b/code/modules/hydroponics/biogenerator.html
new file mode 100644
index 00000000000..876c726f645
--- /dev/null
+++ b/code/modules/hydroponics/biogenerator.html
@@ -0,0 +1 @@
+code/modules/hydroponics/biogenerator.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The base amount of plants that can be stored before taking our matter bin into account.
Define Details
BASE_MAX_STORABLE_PLANTS
The base amount of plants that can be stored before taking our matter bin into account.
\ No newline at end of file
diff --git a/code/modules/hydroponics/compost_bin.html b/code/modules/hydroponics/compost_bin.html
new file mode 100644
index 00000000000..62525822538
--- /dev/null
+++ b/code/modules/hydroponics/compost_bin.html
@@ -0,0 +1,2 @@
+code/modules/hydroponics/compost_bin.dm - Space Station 13Space Station 13 - Modules - Types
used to make soil from plants.
+Doesn't have components.
\ No newline at end of file
diff --git a/code/modules/hydroponics/grown/banana.html b/code/modules/hydroponics/grown/banana.html
new file mode 100644
index 00000000000..c8ddc69f41e
--- /dev/null
+++ b/code/modules/hydroponics/grown/banana.html
@@ -0,0 +1 @@
+code/modules/hydroponics/grown/banana.dm - Space Station 13Space Station 13 - Modules - Types
used by /obj/item/clothing/shoes/clown_shoes/banana_shoes
\ No newline at end of file
diff --git a/code/modules/hydroponics/grown/citrus.html b/code/modules/hydroponics/grown/citrus.html
new file mode 100644
index 00000000000..4a9b4e246b6
--- /dev/null
+++ b/code/modules/hydroponics/grown/citrus.html
@@ -0,0 +1 @@
+code/modules/hydroponics/grown/citrus.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/hydroponics/grown/flowers.html b/code/modules/hydroponics/grown/flowers.html
new file mode 100644
index 00000000000..37cbe80a873
--- /dev/null
+++ b/code/modules/hydroponics/grown/flowers.html
@@ -0,0 +1 @@
+code/modules/hydroponics/grown/flowers.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/hydroponics/grown/nettle.html b/code/modules/hydroponics/grown/nettle.html
new file mode 100644
index 00000000000..66918934dc3
--- /dev/null
+++ b/code/modules/hydroponics/grown/nettle.html
@@ -0,0 +1 @@
+code/modules/hydroponics/grown/nettle.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/hydroponics/grown/towercap.html b/code/modules/hydroponics/grown/towercap.html
new file mode 100644
index 00000000000..eae1e1ef86a
--- /dev/null
+++ b/code/modules/hydroponics/grown/towercap.html
@@ -0,0 +1 @@
+code/modules/hydroponics/grown/towercap.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Minimum required mole value of oxygen to ignite a bonfire.
\ No newline at end of file
diff --git a/code/modules/hydroponics/growninedible.html b/code/modules/hydroponics/growninedible.html
new file mode 100644
index 00000000000..78090d1928d
--- /dev/null
+++ b/code/modules/hydroponics/growninedible.html
@@ -0,0 +1 @@
+code/modules/hydroponics/growninedible.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/hydroponics/hydroitemdefines.html b/code/modules/hydroponics/hydroitemdefines.html
new file mode 100644
index 00000000000..deeba74c8f3
--- /dev/null
+++ b/code/modules/hydroponics/hydroitemdefines.html
@@ -0,0 +1 @@
+code/modules/hydroponics/hydroitemdefines.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/hydroponics/hydroponics_tray.html b/code/modules/hydroponics/hydroponics_tray.html
new file mode 100644
index 00000000000..1e5e4384b3e
--- /dev/null
+++ b/code/modules/hydroponics/hydroponics_tray.html
@@ -0,0 +1 @@
+code/modules/hydroponics/hydroponics_tray.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/hydroponics/plant_genes.html b/code/modules/hydroponics/plant_genes.html
new file mode 100644
index 00000000000..683f1468a2c
--- /dev/null
+++ b/code/modules/hydroponics/plant_genes.html
@@ -0,0 +1 @@
+code/modules/hydroponics/plant_genes.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/hydroponics/seed_extractor.html b/code/modules/hydroponics/seed_extractor.html
new file mode 100644
index 00000000000..894ea693f52
--- /dev/null
+++ b/code/modules/hydroponics/seed_extractor.html
@@ -0,0 +1 @@
+code/modules/hydroponics/seed_extractor.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Base Cap of the max amount of seeds you can store in a seed extractor
MAX_DISPENSE_SEEDS
Max Cap of the amount of seed we let players dispense at once
\ No newline at end of file
diff --git a/code/modules/instruments/_instrument_data.html b/code/modules/instruments/_instrument_data.html
new file mode 100644
index 00000000000..972cf73f91f
--- /dev/null
+++ b/code/modules/instruments/_instrument_data.html
@@ -0,0 +1 @@
+code/modules/instruments/_instrument_data.dm - Space Station 13Space Station 13 - Modules - Types
Instrument datums hold the data for any given instrument, as well as data on how to play it and what bounds there are to playing it.
\ No newline at end of file
diff --git a/code/modules/instruments/_instrument_key.html b/code/modules/instruments/_instrument_key.html
new file mode 100644
index 00000000000..24448e62a8b
--- /dev/null
+++ b/code/modules/instruments/_instrument_key.html
@@ -0,0 +1,2 @@
+code/modules/instruments/_instrument_key.dm - Space Station 13Space Station 13 - Modules - Types
Instrument key datums contain everything needed to know how to play a specific
+note of an instrument.*
\ No newline at end of file
diff --git a/code/modules/instruments/objs/items/instrument_items.html b/code/modules/instruments/objs/items/instrument_items.html
new file mode 100644
index 00000000000..39226ce4b91
--- /dev/null
+++ b/code/modules/instruments/objs/items/instrument_items.html
@@ -0,0 +1 @@
+code/modules/instruments/objs/items/instrument_items.dm - Space Station 13Space Station 13 - Modules - Types
This is a special guitar for the emagged service borg that hits pretty hard and can still play music. Clonk.
\ No newline at end of file
diff --git a/code/modules/instruments/songs/_song.html b/code/modules/instruments/songs/_song.html
new file mode 100644
index 00000000000..7d5d2868134
--- /dev/null
+++ b/code/modules/instruments/songs/_song.html
@@ -0,0 +1,2 @@
+code/modules/instruments/songs/_song.dm - Space Station 13Space Station 13 - Modules - Types
These are the actual backend behind instruments.
+They attach to an atom and provide the editor + playback functionality.
\ No newline at end of file
diff --git a/code/modules/library/book.html b/code/modules/library/book.html
new file mode 100644
index 00000000000..c15183970c5
--- /dev/null
+++ b/code/modules/library/book.html
@@ -0,0 +1,3 @@
+code/modules/library/book.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Game Object which stores pages of text usually written by players, has other editable information such as the book's
+title, author, summary, and categories. Has other values that are generated when books are acquired through the library
+computer.
Define Details
MAX_PAGES
Max Writeable Content Pages per book, players really don't need more than this
\ No newline at end of file
diff --git a/code/modules/library/library_catalog.html b/code/modules/library/library_catalog.html
new file mode 100644
index 00000000000..86f162bdc94
--- /dev/null
+++ b/code/modules/library/library_catalog.html
@@ -0,0 +1 @@
+code/modules/library/library_catalog.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Maximum number of books that can be uploaded by a single ckey
Define Details
DEFINE_CATEGORY
library category datum constructor helper, used to make easier the process of defining new report/book categories
MAX_PLAYER_UPLOADS
Maximum number of books that can be uploaded by a single ckey
\ No newline at end of file
diff --git a/code/modules/library/library_computer.html b/code/modules/library/library_computer.html
new file mode 100644
index 00000000000..72164544197
--- /dev/null
+++ b/code/modules/library/library_computer.html
@@ -0,0 +1 @@
+code/modules/library/library_computer.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
This is the player facing machine that handles all library functions
Define Details
LIBRARY_BOOKS_PER_PAGE
Defines how many player books appear on the player book archive TGUI tab
LOGIN_FULL
Login state for our computer, this state grants full access to functions
LOGIN_PUBLIC
Login state for our computer, this state grants basic access to functions
PRINTING_COOLDOWN
Wait time before printing another book, used to prevent spam
\ No newline at end of file
diff --git a/code/modules/library/library_datums.html b/code/modules/library/library_datums.html
new file mode 100644
index 00000000000..4581cc94754
--- /dev/null
+++ b/code/modules/library/library_datums.html
@@ -0,0 +1 @@
+code/modules/library/library_datums.dm - Space Station 13Space Station 13 - Modules - Types
Datum used to cache the SQL DB books locally in order to achieve a performance gain.
\ No newline at end of file
diff --git a/code/modules/lighting/lighting_emissive_blocker.html b/code/modules/lighting/lighting_emissive_blocker.html
new file mode 100644
index 00000000000..56dde05ed8b
--- /dev/null
+++ b/code/modules/lighting/lighting_emissive_blocker.html
@@ -0,0 +1 @@
+code/modules/lighting/lighting_emissive_blocker.dm - Space Station 13Space Station 13 - Modules - Types
Internal atom that copies an appearance on to the blocker plane
\ No newline at end of file
diff --git a/code/modules/mapping/base_map_datum.html b/code/modules/mapping/base_map_datum.html
new file mode 100644
index 00000000000..e2448b5ad1e
--- /dev/null
+++ b/code/modules/mapping/base_map_datum.html
@@ -0,0 +1 @@
+code/modules/mapping/base_map_datum.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mapping/dynamic_airlock_linker.html b/code/modules/mapping/dynamic_airlock_linker.html
new file mode 100644
index 00000000000..2efdf7f3fda
--- /dev/null
+++ b/code/modules/mapping/dynamic_airlock_linker.html
@@ -0,0 +1,8 @@
+code/modules/mapping/dynamic_airlock_linker.dm - Space Station 13Space Station 13 - Modules - Types
A manager that is used on mapload to generate airlock chambers based on the
+usage of /obj/effect/map_effect/dynamic_airlock helpers. These helpers
+make up the "zone" of an airlock chamber, as well as indicate which airlocks
+are exterior or interior, what access should be applied to the doors and
+controls, And what buttons, vents, and airlock controllers should be linked
+together. This is performed on Initialize of one of the related helpers.
+Once done, all the other helpers are deleted to prevent it happening again
+for that zone.
\ No newline at end of file
diff --git a/code/modules/mapping/dynamic_airlocks.html b/code/modules/mapping/dynamic_airlocks.html
new file mode 100644
index 00000000000..d7296999bd9
--- /dev/null
+++ b/code/modules/mapping/dynamic_airlocks.html
@@ -0,0 +1,4 @@
+code/modules/mapping/dynamic_airlocks.dm - Space Station 13Space Station 13 - Modules - Types
A mapping helper that defines the zone of a dynamically arranged airlock
+chamber. This can be used as an alternative to
+/obj/effect/spawner/airlocks.
A helper used to indicate what doors are connected to an airlock zone. Comes
+in interior and exterior variants as subtypes.
\ No newline at end of file
diff --git a/code/modules/mapping/mapping_helpers.html b/code/modules/mapping/mapping_helpers.html
new file mode 100644
index 00000000000..4db1d3cc336
--- /dev/null
+++ b/code/modules/mapping/mapping_helpers.html
@@ -0,0 +1 @@
+code/modules/mapping/mapping_helpers.dm - Space Station 13Space Station 13 - Modules - Types
Apply to a wall (or floor, technically) to ensure it is instantly destroyed by any explosion, even if usually invulnerable
\ No newline at end of file
diff --git a/code/modules/mapping/merge_conflicts.html b/code/modules/mapping/merge_conflicts.html
new file mode 100644
index 00000000000..cf1efc1189a
--- /dev/null
+++ b/code/modules/mapping/merge_conflicts.html
@@ -0,0 +1,3 @@
+code/modules/mapping/merge_conflicts.dm - Space Station 13Space Station 13 - Modules - Types
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.
\ No newline at end of file
diff --git a/code/modules/maptext_alerts/text_blurbs.html b/code/modules/maptext_alerts/text_blurbs.html
new file mode 100644
index 00000000000..6e52e80757e
--- /dev/null
+++ b/code/modules/maptext_alerts/text_blurbs.html
@@ -0,0 +1 @@
+code/modules/maptext_alerts/text_blurbs.dm - Space Station 13Space Station 13 - Modules - Types
Shows a ticker reading out the given text on a client's screen.
\ No newline at end of file
diff --git a/code/modules/mining/equipment/explorer_gear.html b/code/modules/mining/equipment/explorer_gear.html
new file mode 100644
index 00000000000..cb5958fe3ff
--- /dev/null
+++ b/code/modules/mining/equipment/explorer_gear.html
@@ -0,0 +1 @@
+code/modules/mining/equipment/explorer_gear.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mining/equipment/kinetic_crusher.html b/code/modules/mining/equipment/kinetic_crusher.html
new file mode 100644
index 00000000000..fec32c7d598
--- /dev/null
+++ b/code/modules/mining/equipment/kinetic_crusher.html
@@ -0,0 +1 @@
+code/modules/mining/equipment/kinetic_crusher.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mining/equipment/kinetic_crusher_cosmetics.html b/code/modules/mining/equipment/kinetic_crusher_cosmetics.html
new file mode 100644
index 00000000000..9b1579983b0
--- /dev/null
+++ b/code/modules/mining/equipment/kinetic_crusher_cosmetics.html
@@ -0,0 +1 @@
+code/modules/mining/equipment/kinetic_crusher_cosmetics.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mining/equipment/lazarus_injector.html b/code/modules/mining/equipment/lazarus_injector.html
new file mode 100644
index 00000000000..4adcb1b8b23
--- /dev/null
+++ b/code/modules/mining/equipment/lazarus_injector.html
@@ -0,0 +1 @@
+code/modules/mining/equipment/lazarus_injector.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mining/equipment/marker_beacons.html b/code/modules/mining/equipment/marker_beacons.html
new file mode 100644
index 00000000000..d5ce2d201c2
--- /dev/null
+++ b/code/modules/mining/equipment/marker_beacons.html
@@ -0,0 +1 @@
+code/modules/mining/equipment/marker_beacons.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mining/equipment/mineral_scanner.html b/code/modules/mining/equipment/mineral_scanner.html
new file mode 100644
index 00000000000..86f7cffdaa0
--- /dev/null
+++ b/code/modules/mining/equipment/mineral_scanner.html
@@ -0,0 +1 @@
+code/modules/mining/equipment/mineral_scanner.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mining/equipment/mining_tools.html b/code/modules/mining/equipment/mining_tools.html
new file mode 100644
index 00000000000..4d7adf4b04e
--- /dev/null
+++ b/code/modules/mining/equipment/mining_tools.html
@@ -0,0 +1 @@
+code/modules/mining/equipment/mining_tools.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mining/equipment/regenerative_core.html b/code/modules/mining/equipment/regenerative_core.html
new file mode 100644
index 00000000000..92d82e7d5c2
--- /dev/null
+++ b/code/modules/mining/equipment/regenerative_core.html
@@ -0,0 +1 @@
+code/modules/mining/equipment/regenerative_core.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mining/equipment/resonator.html b/code/modules/mining/equipment/resonator.html
new file mode 100644
index 00000000000..09ca8f0cfaf
--- /dev/null
+++ b/code/modules/mining/equipment/resonator.html
@@ -0,0 +1 @@
+code/modules/mining/equipment/resonator.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mining/equipment/vendor_items.html b/code/modules/mining/equipment/vendor_items.html
new file mode 100644
index 00000000000..5dfc13b8d2d
--- /dev/null
+++ b/code/modules/mining/equipment/vendor_items.html
@@ -0,0 +1 @@
+code/modules/mining/equipment/vendor_items.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mining/equipment/wormhole_jaunter.html b/code/modules/mining/equipment/wormhole_jaunter.html
new file mode 100644
index 00000000000..7d1d16ceac3
--- /dev/null
+++ b/code/modules/mining/equipment/wormhole_jaunter.html
@@ -0,0 +1 @@
+code/modules/mining/equipment/wormhole_jaunter.dm - Space Station 13Space Station 13 - Modules - Types
Because the original contractor flare is not a temp visual, for some reason.
\ No newline at end of file
diff --git a/code/modules/mining/laborcamp/laborshuttle.html b/code/modules/mining/laborcamp/laborshuttle.html
new file mode 100644
index 00000000000..a0e6d03bc89
--- /dev/null
+++ b/code/modules/mining/laborcamp/laborshuttle.html
@@ -0,0 +1 @@
+code/modules/mining/laborcamp/laborshuttle.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mining/lavaland/ash_flora.html b/code/modules/mining/lavaland/ash_flora.html
new file mode 100644
index 00000000000..9ebb89aef4d
--- /dev/null
+++ b/code/modules/mining/lavaland/ash_flora.html
@@ -0,0 +1 @@
+code/modules/mining/lavaland/ash_flora.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mining/lavaland/loot/colossus_loot.html b/code/modules/mining/lavaland/loot/colossus_loot.html
new file mode 100644
index 00000000000..7c36672979b
--- /dev/null
+++ b/code/modules/mining/lavaland/loot/colossus_loot.html
@@ -0,0 +1 @@
+code/modules/mining/lavaland/loot/colossus_loot.dm - Space Station 13Space Station 13 - Modules - Types
Revives anyone nearby, but turns them into shadowpeople and renders them uncloneable, so the crystal is your only hope of getting up again if you go down.
Allows you to bodyjack small animals, then exit them at your leisure, but you can only do this once per activation. Because they blow up. Also, if the bodyjacked animal dies, SO DO YOU.
\ No newline at end of file
diff --git a/code/modules/mining/machine_processing.html b/code/modules/mining/machine_processing.html
new file mode 100644
index 00000000000..53b263cf612
--- /dev/null
+++ b/code/modules/mining/machine_processing.html
@@ -0,0 +1 @@
+code/modules/mining/machine_processing.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mining/machine_redemption.html b/code/modules/mining/machine_redemption.html
new file mode 100644
index 00000000000..c12cabbb5a2
--- /dev/null
+++ b/code/modules/mining/machine_redemption.html
@@ -0,0 +1 @@
+code/modules/mining/machine_redemption.dm - Space Station 13Space Station 13 - Modules - Types
Labor camp variant of the ORM. Points can be claimed by anyone.
\ No newline at end of file
diff --git a/code/modules/mining/machine_stacking.html b/code/modules/mining/machine_stacking.html
new file mode 100644
index 00000000000..9424e73d4c4
--- /dev/null
+++ b/code/modules/mining/machine_stacking.html
@@ -0,0 +1 @@
+code/modules/mining/machine_stacking.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mining/machine_unloading.html b/code/modules/mining/machine_unloading.html
new file mode 100644
index 00000000000..bc040c448fc
--- /dev/null
+++ b/code/modules/mining/machine_unloading.html
@@ -0,0 +1 @@
+code/modules/mining/machine_unloading.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mining/machine_vending.html b/code/modules/mining/machine_vending.html
new file mode 100644
index 00000000000..e958b06ed3f
--- /dev/null
+++ b/code/modules/mining/machine_vending.html
@@ -0,0 +1 @@
+code/modules/mining/machine_vending.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mining/mine_items.html b/code/modules/mining/mine_items.html
new file mode 100644
index 00000000000..9cf784566a1
--- /dev/null
+++ b/code/modules/mining/mine_items.html
@@ -0,0 +1 @@
+code/modules/mining/mine_items.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mining/salvage_redemption.html b/code/modules/mining/salvage_redemption.html
new file mode 100644
index 00000000000..f507c7d4e75
--- /dev/null
+++ b/code/modules/mining/salvage_redemption.html
@@ -0,0 +1 @@
+code/modules/mining/salvage_redemption.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mining/satchel_ore_boxdm.html b/code/modules/mining/satchel_ore_boxdm.html
new file mode 100644
index 00000000000..b43606895e1
--- /dev/null
+++ b/code/modules/mining/satchel_ore_boxdm.html
@@ -0,0 +1 @@
+code/modules/mining/satchel_ore_boxdm.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/camera.html b/code/modules/mob/camera.html
new file mode 100644
index 00000000000..7c0e0f25daa
--- /dev/null
+++ b/code/modules/mob/camera.html
@@ -0,0 +1,49 @@
+code/modules/mob/camera/README.md - Space Station 13Space Station 13 - Modules - Types
AI Freelook
Credits
+
Initial code credit for this goes to Uristqwerty.
+Debugging, functionality, all comments and porting by Giacom.
+
What is this?
+
This is a replacement for the current camera movement system, of the AI. Before
+this, the AI had to move between cameras and could only see what the cameras
+could see. Not only this but the cameras could see through walls, which created
+problems. With this, the AI controls an "AI Eye" mob, which moves just like a
+ghost; such as moving through walls and being invisible to players. The AI's eye
+is set to this mob and then we use a system (explained below) to determine what
+the cameras around the AI Eye can and cannot see. If the camera cannot see a
+turf, it will black it out, otherwise it won't and the AI will be able to see
+it. This creates several features, such as.. no more see-through-wall cameras,
+easier to control camera movement, easier tracking, the AI only being able to
+track mobs which are visible to a camera, only trackable mobs appearing on the
+mob list and many more.
+
How it Works
+
It works by first creating a camera network datum. Inside of this camera network
+are "chunks" (which will be explained later) and "cameras". The cameras list is
+kept up to date by obj/machinery/camera/New() and Destroy().
+
Next the camera network has chunks. These chunks are a 16x16 tile block of turfs
+and cameras contained inside the chunk. These turfs are then sorted out based on
+what the cameras can and cannot see. If none of the cameras can see the turf,
+inside the 16x16 block, it is listed as an "obscured" turf. Meaning the AI won't
+be able to see it.
+
How it Updates
+
The camera network uses a streaming method in order to effeciently update
+chunks. Since the server will have doors opening, doors closing, turf being
+destroyed and other lag inducing stuff, we want to update it under certain
+conditions and not every tick.
+
The chunks are not created straight away, only when an AI eye moves into it's
+area is when it gets created. One a chunk is created, when a non glass door
+opens/closes or an opacity turf is destroyed, we check to see if an AI Eye is
+looking in the area. We do this with the "seenby" list, which updates everytime
+an AI is near a chunk. If there is an AI eye inside the area, we update the
+chunk that the changed atom is inside and all surrounding chunks, since a
+camera's vision could leak onto another chunk. If there is no AI Eye, we instead
+flag the chunk to update whenever it is loaded by an AI Eye. This is basically
+how the chunks update and keep it in sync. We then add some lag reducing
+measures, such as an UPDATE_BUFFER which stops a chunk from updating too many
+times in a certain time-frame, only updating if the changed atom was blocking
+sight; for example, we don't update glass airlocks or floors.
+
Where is Everything?
+
+
cameranet.dm: Everything about the cameranet datum.
+
chunk.dm: Everything about the chunk datum.
+
eye.dm: Everything about the AI and the AIEye.
+
updating.dm: Everything about triggers that will update chunks.
+
\ No newline at end of file
diff --git a/code/modules/mob/camera/chunk.html b/code/modules/mob/camera/chunk.html
new file mode 100644
index 00000000000..6f1612b1fc3
--- /dev/null
+++ b/code/modules/mob/camera/chunk.html
@@ -0,0 +1,2 @@
+code/modules/mob/camera/chunk.dm - Space Station 13Space Station 13 - Modules - Types
A 16x16 grid of the map with a list of turfs that can be seen, are visible and are dimmed.
+Allows camera eyes to stream these chunks and know what they can and cannot see.
\ No newline at end of file
diff --git a/code/modules/mob/camera/eye.html b/code/modules/mob/camera/eye.html
new file mode 100644
index 00000000000..ea0d2b3ad6a
--- /dev/null
+++ b/code/modules/mob/camera/eye.html
@@ -0,0 +1,6 @@
+code/modules/mob/camera/eye.dm - Space Station 13Space Station 13 - Modules - Types
Camera eyes are remote-control mobs that can move and see throughout the global cameranet.
+They're used in AI eyes, holograms, advanced camera consoles, abductor consoles, shuttle consoles,
+and xenobiology consoles. When created, the user with which they are initialized will be granted control,
+and their movements will be relayed to the camera eye instead. When destroyed, the user's control of the
+camera eye will be released; if they were previously remote controlling another object (such as another
+camera eye) then they will be put back in control of that object; otherwise they will return to their body.
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/basic_mob.html b/code/modules/mob/living/basic/basic_mob.html
new file mode 100644
index 00000000000..320441adf7c
--- /dev/null
+++ b/code/modules/mob/living/basic/basic_mob.html
@@ -0,0 +1,3 @@
+code/modules/mob/living/basic/basic_mob.dm - Space Station 13Space Station 13 - Modules - Types
Basic mobs are a modern replacement for the simple_animal/"simple mob"
+system. Rather than deep type trees with overrides for AI, basic mobs rely
+on their AI controllers for the majority of their behavior.
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/farm_animals/deer_ai.html b/code/modules/mob/living/basic/farm_animals/deer_ai.html
new file mode 100644
index 00000000000..942600990ff
--- /dev/null
+++ b/code/modules/mob/living/basic/farm_animals/deer_ai.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/farm_animals/deer_ai.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/farm_animals/goat.html b/code/modules/mob/living/basic/farm_animals/goat.html
new file mode 100644
index 00000000000..ddc12e9dbba
--- /dev/null
+++ b/code/modules/mob/living/basic/farm_animals/goat.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/farm_animals/goat.dm - Space Station 13Space Station 13 - Modules - Types
Goats are normally content to sorta hang around and crunch any plant in sight, but they will go ape on someone who attacks them.
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/friendly/crab.html b/code/modules/mob/living/basic/friendly/crab.html
new file mode 100644
index 00000000000..996d446ad4e
--- /dev/null
+++ b/code/modules/mob/living/basic/friendly/crab.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/friendly/crab.dm - Space Station 13Space Station 13 - Modules - Types
Crabs don't do much, but they want to live. They will flee when attacked, but will opportunistically melee attack people who do
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/friendly/diona_nymph.html b/code/modules/mob/living/basic/friendly/diona_nymph.html
new file mode 100644
index 00000000000..71d504b8532
--- /dev/null
+++ b/code/modules/mob/living/basic/friendly/diona_nymph.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/friendly/diona_nymph.dm - Space Station 13Space Station 13 - Modules - Types
Diona nymphs want to eat plant matter to get to evolution stage, but won't evolve or sample blood on their own. They flee when attacked.
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/friendly/lightgeist.html b/code/modules/mob/living/basic/friendly/lightgeist.html
new file mode 100644
index 00000000000..16cb5554f99
--- /dev/null
+++ b/code/modules/mob/living/basic/friendly/lightgeist.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/friendly/lightgeist.dm - Space Station 13Space Station 13 - Modules - Types
Attack only mobs who have damage that we can heal, I think this is specific enough not to be a generic type
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/friendly/mouse.html b/code/modules/mob/living/basic/friendly/mouse.html
new file mode 100644
index 00000000000..a86c3dec92d
--- /dev/null
+++ b/code/modules/mob/living/basic/friendly/mouse.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/friendly/mouse.dm - Space Station 13Space Station 13 - Modules - Types
Don't look for anything to run away from if you are distracted by being adjacent to cheese
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/friendly/nian_caterpillar.html b/code/modules/mob/living/basic/friendly/nian_caterpillar.html
new file mode 100644
index 00000000000..9b675f776e9
--- /dev/null
+++ b/code/modules/mob/living/basic/friendly/nian_caterpillar.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/friendly/nian_caterpillar.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/friendly/snake.html b/code/modules/mob/living/basic/friendly/snake.html
new file mode 100644
index 00000000000..ce2f93cb265
--- /dev/null
+++ b/code/modules/mob/living/basic/friendly/snake.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/friendly/snake.dm - Space Station 13Space Station 13 - Modules - Types
Snakes are primarily concerned with getting those tasty, tasty mice, but aren't afraid to strike back at those who attack them
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/hostile/alien/alien_mob_ai.html b/code/modules/mob/living/basic/hostile/alien/alien_mob_ai.html
new file mode 100644
index 00000000000..566c7e67408
--- /dev/null
+++ b/code/modules/mob/living/basic/hostile/alien/alien_mob_ai.html
@@ -0,0 +1,2 @@
+code/modules/mob/living/basic/hostile/alien/alien_mob_ai.dm - Space Station 13Space Station 13 - Modules - Types
Alien projectile
+Try to avoid friendly fire, and has a 3 second delay.
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/hostile/bees/bee_ai_behaviors.html b/code/modules/mob/living/basic/hostile/bees/bee_ai_behaviors.html
new file mode 100644
index 00000000000..c22203eccfe
--- /dev/null
+++ b/code/modules/mob/living/basic/hostile/bees/bee_ai_behaviors.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/hostile/bees/bee_ai_behaviors.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
if we have a hive, this will be our aggro distance
Define Details
AGGRO_DISTANCE_FROM_HIVE
if we have a hive, this will be our aggro distance
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/hostile/bees/bees.html b/code/modules/mob/living/basic/hostile/bees/bees.html
new file mode 100644
index 00000000000..61fbca3516a
--- /dev/null
+++ b/code/modules/mob/living/basic/hostile/bees/bees.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/hostile/bees/bees.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
the colour we make the stripes of the bee if our reagent has no colour (or we have no reagent)
BEE_FOODGROUPS
the bee food contents
BEE_POLLINATE_PEST_CHANCE
chance to decrease pest of plant
BEE_POLLINATE_POTENCY_CHANCE
chance to increase potancy of plant
BEE_POLLINATE_YIELD_CHANCE
chance to increase yield of plant
BEE_TRAY_RECENT_VISIT
How long in deciseconds until a tray can be visited by a bee again
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/hostile/demons/demon_loot.html b/code/modules/mob/living/basic/hostile/demons/demon_loot.html
new file mode 100644
index 00000000000..f11e3db1279
--- /dev/null
+++ b/code/modules/mob/living/basic/hostile/demons/demon_loot.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/hostile/demons/demon_loot.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/hostile/demons/pulse_demon.html b/code/modules/mob/living/basic/hostile/demons/pulse_demon.html
new file mode 100644
index 00000000000..f7784787702
--- /dev/null
+++ b/code/modules/mob/living/basic/hostile/demons/pulse_demon.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/hostile/demons/pulse_demon.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/hostile/demons/slaughter_demon.html b/code/modules/mob/living/basic/hostile/demons/slaughter_demon.html
new file mode 100644
index 00000000000..9ba2cd91bfd
--- /dev/null
+++ b/code/modules/mob/living/basic/hostile/demons/slaughter_demon.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/hostile/demons/slaughter_demon.dm - Space Station 13Space Station 13 - Modules - Types
Summoned as part of the cult objective "Bring the Slaughter"
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/hostile/giant_spider/giant_spider_ai.html b/code/modules/mob/living/basic/hostile/giant_spider/giant_spider_ai.html
new file mode 100644
index 00000000000..115cb170c43
--- /dev/null
+++ b/code/modules/mob/living/basic/hostile/giant_spider/giant_spider_ai.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/hostile/giant_spider/giant_spider_ai.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/hostile/hivebot_ai.html b/code/modules/mob/living/basic/hostile/hivebot_ai.html
new file mode 100644
index 00000000000..eac0552be1e
--- /dev/null
+++ b/code/modules/mob/living/basic/hostile/hivebot_ai.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/hostile/hivebot_ai.dm - Space Station 13Space Station 13 - Modules - Types
behavior that allow us to go communicate with other hivebots
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/hostile/megafauna/bluespace_horror/bluespace_horror_ai.html b/code/modules/mob/living/basic/hostile/megafauna/bluespace_horror/bluespace_horror_ai.html
new file mode 100644
index 00000000000..7885de2fe7d
--- /dev/null
+++ b/code/modules/mob/living/basic/hostile/megafauna/bluespace_horror/bluespace_horror_ai.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/hostile/megafauna/bluespace_horror/bluespace_horror_ai.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/hostile/megafauna/kidan_princess/kidan_princess.html b/code/modules/mob/living/basic/hostile/megafauna/kidan_princess/kidan_princess.html
new file mode 100644
index 00000000000..8da12dc7e6d
--- /dev/null
+++ b/code/modules/mob/living/basic/hostile/megafauna/kidan_princess/kidan_princess.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/hostile/megafauna/kidan_princess/kidan_princess.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/hostile/nether_mobs/incursion_ai.html b/code/modules/mob/living/basic/hostile/nether_mobs/incursion_ai.html
new file mode 100644
index 00000000000..440f3458cc5
--- /dev/null
+++ b/code/modules/mob/living/basic/hostile/nether_mobs/incursion_ai.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/hostile/nether_mobs/incursion_ai.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/hostile/revenant/revenant_abilities.html b/code/modules/mob/living/basic/hostile/revenant/revenant_abilities.html
new file mode 100644
index 00000000000..0f230ad1660
--- /dev/null
+++ b/code/modules/mob/living/basic/hostile/revenant/revenant_abilities.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/hostile/revenant/revenant_abilities.dm - Space Station 13Space Station 13 - Modules - Types
Gives everyone in a 7 tile radius 2 minutes of hallucinations
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/hostile/swarmers/swarmer_ai.html b/code/modules/mob/living/basic/hostile/swarmers/swarmer_ai.html
new file mode 100644
index 00000000000..c07838fa439
--- /dev/null
+++ b/code/modules/mob/living/basic/hostile/swarmers/swarmer_ai.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/hostile/swarmers/swarmer_ai.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/lavaland/ash_whelp/ash_whelp.html b/code/modules/mob/living/basic/lavaland/ash_whelp/ash_whelp.html
new file mode 100644
index 00000000000..8bf2912a99f
--- /dev/null
+++ b/code/modules/mob/living/basic/lavaland/ash_whelp/ash_whelp.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/lavaland/ash_whelp/ash_whelp.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/lavaland/ash_whelp/ash_whelp_actions.html b/code/modules/mob/living/basic/lavaland/ash_whelp/ash_whelp_actions.html
new file mode 100644
index 00000000000..8de71faabf2
--- /dev/null
+++ b/code/modules/mob/living/basic/lavaland/ash_whelp/ash_whelp_actions.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/lavaland/ash_whelp/ash_whelp_actions.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/lavaland/ash_whelp/ash_whelp_ai.html b/code/modules/mob/living/basic/lavaland/ash_whelp/ash_whelp_ai.html
new file mode 100644
index 00000000000..f0b4c196efb
--- /dev/null
+++ b/code/modules/mob/living/basic/lavaland/ash_whelp/ash_whelp_ai.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/lavaland/ash_whelp/ash_whelp_ai.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
subtree to look fortrees and burn them with our flamethrower
Define Details
MIN_TIME_TO_BREATH_WEAPON
We won't use fire breath unless we have had the same target forthis long
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/lavaland/goliath/goliath.html b/code/modules/mob/living/basic/lavaland/goliath/goliath.html
new file mode 100644
index 00000000000..db0a3c6521c
--- /dev/null
+++ b/code/modules/mob/living/basic/lavaland/goliath/goliath.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/lavaland/goliath/goliath.dm - Space Station 13Space Station 13 - Modules - Types
A slow but strong beast that tries to stun using its tentacles.
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/lavaland/goliath/goliath_actions.html b/code/modules/mob/living/basic/lavaland/goliath/goliath_actions.html
new file mode 100644
index 00000000000..a09d3e1da7e
--- /dev/null
+++ b/code/modules/mob/living/basic/lavaland/goliath/goliath_actions.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/lavaland/goliath/goliath_actions.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/lavaland/goliath/goliath_ai.html b/code/modules/mob/living/basic/lavaland/goliath/goliath_ai.html
new file mode 100644
index 00000000000..66de8da31c9
--- /dev/null
+++ b/code/modules/mob/living/basic/lavaland/goliath/goliath_ai.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/lavaland/goliath/goliath_ai.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
We won't use tentacles unless we have had the same target for this long
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/lavaland/goliath/tentacle.html b/code/modules/mob/living/basic/lavaland/goliath/tentacle.html
new file mode 100644
index 00000000000..1f3e843bd02
--- /dev/null
+++ b/code/modules/mob/living/basic/lavaland/goliath/tentacle.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/lavaland/goliath/tentacle.dm - Space Station 13Space Station 13 - Modules - Types
Goliath tentacle stun with special removal conditions
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/minebots/minebot_ai.html b/code/modules/mob/living/basic/minebots/minebot_ai.html
new file mode 100644
index 00000000000..2f19c7c43fa
--- /dev/null
+++ b/code/modules/mob/living/basic/minebots/minebot_ai.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/minebots/minebot_ai.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/minebots/minebot_upgrades.html b/code/modules/mob/living/basic/minebots/minebot_upgrades.html
new file mode 100644
index 00000000000..1a12401e4be
--- /dev/null
+++ b/code/modules/mob/living/basic/minebots/minebot_upgrades.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/minebots/minebot_upgrades.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/mining/goldgrub/goldgrub.html b/code/modules/mob/living/basic/mining/goldgrub/goldgrub.html
new file mode 100644
index 00000000000..7f15e44fe2f
--- /dev/null
+++ b/code/modules/mob/living/basic/mining/goldgrub/goldgrub.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/mining/goldgrub/goldgrub.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/mining/goldgrub/goldgrub_ai.html b/code/modules/mob/living/basic/mining/goldgrub/goldgrub_ai.html
new file mode 100644
index 00000000000..ead93c42147
--- /dev/null
+++ b/code/modules/mob/living/basic/mining/goldgrub/goldgrub_ai.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/mining/goldgrub/goldgrub_ai.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/mining/gutlunch.html b/code/modules/mob/living/basic/mining/gutlunch.html
new file mode 100644
index 00000000000..f6eef165dfa
--- /dev/null
+++ b/code/modules/mob/living/basic/mining/gutlunch.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/mining/gutlunch.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/mining/hivelord_ai.html b/code/modules/mob/living/basic/mining/hivelord_ai.html
new file mode 100644
index 00000000000..c168b0259b2
--- /dev/null
+++ b/code/modules/mob/living/basic/mining/hivelord_ai.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/mining/hivelord_ai.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/basic/retaliate/clown.html b/code/modules/mob/living/basic/retaliate/clown.html
new file mode 100644
index 00000000000..8aa8564bd73
--- /dev/null
+++ b/code/modules/mob/living/basic/retaliate/clown.html
@@ -0,0 +1 @@
+code/modules/mob/living/basic/retaliate/clown.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/brain/brain_emote.html b/code/modules/mob/living/brain/brain_emote.html
new file mode 100644
index 00000000000..34bb7a563e2
--- /dev/null
+++ b/code/modules/mob/living/brain/brain_emote.html
@@ -0,0 +1 @@
+code/modules/mob/living/brain/brain_emote.dm - Space Station 13Space Station 13 - Modules - Types
Emotes usable by brains, but only while they're in MMIs.
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/_defines.html b/code/modules/mob/living/carbon/_defines.html
new file mode 100644
index 00000000000..d428bece20d
--- /dev/null
+++ b/code/modules/mob/living/carbon/_defines.html
@@ -0,0 +1 @@
+code/modules/mob/living/carbon/_defines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid_emote.html b/code/modules/mob/living/carbon/alien/humanoid/humanoid_emote.html
new file mode 100644
index 00000000000..771561a2ffe
--- /dev/null
+++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid_emote.html
@@ -0,0 +1 @@
+code/modules/mob/living/carbon/alien/humanoid/humanoid_emote.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/carbon_stripping.html b/code/modules/mob/living/carbon/carbon_stripping.html
new file mode 100644
index 00000000000..fde7cb49f63
--- /dev/null
+++ b/code/modules/mob/living/carbon/carbon_stripping.html
@@ -0,0 +1 @@
+code/modules/mob/living/carbon/carbon_stripping.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/give.html b/code/modules/mob/living/carbon/give.html
new file mode 100644
index 00000000000..4a9a371c0cc
--- /dev/null
+++ b/code/modules/mob/living/carbon/give.html
@@ -0,0 +1,2 @@
+code/modules/mob/living/carbon/give.dm - Space Station 13Space Station 13 - Modules - Types
Alert which appears for a user when another player is attempting to offer them an item.
+The user can click the alert to accept, or simply do nothing to not take the item.
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/human/body_accessories.html b/code/modules/mob/living/carbon/human/body_accessories.html
new file mode 100644
index 00000000000..e8b975d5d1d
--- /dev/null
+++ b/code/modules/mob/living/carbon/human/body_accessories.html
@@ -0,0 +1 @@
+code/modules/mob/living/carbon/human/body_accessories.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/human/human_emote.html b/code/modules/mob/living/carbon/human/human_emote.html
new file mode 100644
index 00000000000..6bdeb7be0d2
--- /dev/null
+++ b/code/modules/mob/living/carbon/human/human_emote.html
@@ -0,0 +1 @@
+code/modules/mob/living/carbon/human/human_emote.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/human/physiology.html b/code/modules/mob/living/carbon/human/physiology.html
new file mode 100644
index 00000000000..e62d942e567
--- /dev/null
+++ b/code/modules/mob/living/carbon/human/physiology.html
@@ -0,0 +1 @@
+code/modules/mob/living/carbon/human/physiology.dm - Space Station 13Space Station 13 - Modules - Types
Datum that stores several modifiers in a way that isn't cleared by changing species
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/human/species/_species.html b/code/modules/mob/living/carbon/human/species/_species.html
new file mode 100644
index 00000000000..2d0f9ff7aee
--- /dev/null
+++ b/code/modules/mob/living/carbon/human/species/_species.html
@@ -0,0 +1 @@
+code/modules/mob/living/carbon/human/species/_species.dm - Space Station 13Space Station 13 - Modules - Types
Returns a list of names of non-blacklisted or hazardous species.
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/human/species/diona_species.html b/code/modules/mob/living/carbon/human/species/diona_species.html
new file mode 100644
index 00000000000..f0b18e8fd76
--- /dev/null
+++ b/code/modules/mob/living/carbon/human/species/diona_species.html
@@ -0,0 +1 @@
+code/modules/mob/living/carbon/human/species/diona_species.dm - Space Station 13Space Station 13 - Modules - Types
Same name and everything; we want the same limitations on them; we just want their regeneration to kick in at all times and them to have special factions
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/human/species/skeleton_species.html b/code/modules/mob/living/carbon/human/species/skeleton_species.html
new file mode 100644
index 00000000000..aa7da9bb0c3
--- /dev/null
+++ b/code/modules/mob/living/carbon/human/species/skeleton_species.html
@@ -0,0 +1 @@
+code/modules/mob/living/carbon/human/species/skeleton_species.dm - Space Station 13Space Station 13 - Modules - Types
The most common (and weakest) type, legion corpses and skeleton map spawners are these
\ No newline at end of file
diff --git a/code/modules/mob/living/carbon/superheroes.html b/code/modules/mob/living/carbon/superheroes.html
new file mode 100644
index 00000000000..dd0e10d3e7a
--- /dev/null
+++ b/code/modules/mob/living/carbon/superheroes.html
@@ -0,0 +1 @@
+code/modules/mob/living/carbon/superheroes.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/silicon/ai/ai_programs.html b/code/modules/mob/living/silicon/ai/ai_programs.html
new file mode 100644
index 00000000000..4099e133ad3
--- /dev/null
+++ b/code/modules/mob/living/silicon/ai/ai_programs.html
@@ -0,0 +1 @@
+code/modules/mob/living/silicon/ai/ai_programs.dm - Space Station 13Space Station 13 - Modules - Types
The base program type, which holds info about each ability.
\ No newline at end of file
diff --git a/code/modules/mob/living/silicon/pai/software/pai_software_base.html b/code/modules/mob/living/silicon/pai/software/pai_software_base.html
new file mode 100644
index 00000000000..1e49d7664de
--- /dev/null
+++ b/code/modules/mob/living/silicon/pai/software/pai_software_base.html
@@ -0,0 +1 @@
+code/modules/mob/living/silicon/pai/software/pai_software_base.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/silicon/robot/robot_modules.html b/code/modules/mob/living/silicon/robot/robot_modules.html
new file mode 100644
index 00000000000..77e6574aa7e
--- /dev/null
+++ b/code/modules/mob/living/silicon/robot/robot_modules.html
@@ -0,0 +1 @@
+code/modules/mob/living/silicon/robot/robot_modules.dm - Space Station 13Space Station 13 - Modules - Types
This datum is an alternative to the energy storages, instead being recharged in different ways
\ No newline at end of file
diff --git a/code/modules/mob/living/silicon/silicon_laws.html b/code/modules/mob/living/silicon/silicon_laws.html
new file mode 100644
index 00000000000..daade3321b1
--- /dev/null
+++ b/code/modules/mob/living/silicon/silicon_laws.html
@@ -0,0 +1 @@
+code/modules/mob/living/silicon/silicon_laws.dm - Space Station 13Space Station 13 - Modules - Types
returns a random non starting / kill crew lawset if the station has a unique ai lawset
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/bot/griefsky.html b/code/modules/mob/living/simple_animal/bot/griefsky.html
new file mode 100644
index 00000000000..a23cdaed4bf
--- /dev/null
+++ b/code/modules/mob/living/simple_animal/bot/griefsky.html
@@ -0,0 +1 @@
+code/modules/mob/living/simple_animal/bot/griefsky.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/constructs.html b/code/modules/mob/living/simple_animal/constructs.html
new file mode 100644
index 00000000000..a694f33afae
--- /dev/null
+++ b/code/modules/mob/living/simple_animal/constructs.html
@@ -0,0 +1 @@
+code/modules/mob/living/simple_animal/constructs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/friendly/dog.html b/code/modules/mob/living/simple_animal/friendly/dog.html
new file mode 100644
index 00000000000..a6da7adc3e9
--- /dev/null
+++ b/code/modules/mob/living/simple_animal/friendly/dog.html
@@ -0,0 +1 @@
+code/modules/mob/living/simple_animal/friendly/dog.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/hostile/heretic_monsters.html b/code/modules/mob/living/simple_animal/hostile/heretic_monsters.html
new file mode 100644
index 00000000000..8c4783a5b13
--- /dev/null
+++ b/code/modules/mob/living/simple_animal/hostile/heretic_monsters.html
@@ -0,0 +1,2 @@
+code/modules/mob/living/simple_animal/hostile/heretic_monsters.dm - Space Station 13Space Station 13 - Modules - Types
Moves a lot if healthy and on rust (to find more tiles to rust) or unhealthy and not on rust (to find healing rust)
+Still moving in random directions though we're not really seeking it out
The "Terror of the Night" / Armsy, a large worm made of multiple bodyparts that occupies multiple tiles
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/hostile/illusion.html b/code/modules/mob/living/simple_animal/hostile/illusion.html
new file mode 100644
index 00000000000..2b88b4b97ae
--- /dev/null
+++ b/code/modules/mob/living/simple_animal/hostile/illusion.html
@@ -0,0 +1 @@
+code/modules/mob/living/simple_animal/hostile/illusion.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/ancient_robot.html b/code/modules/mob/living/simple_animal/hostile/megafauna/ancient_robot.html
new file mode 100644
index 00000000000..0df7c81c760
--- /dev/null
+++ b/code/modules/mob/living/simple_animal/hostile/megafauna/ancient_robot.html
@@ -0,0 +1 @@
+code/modules/mob/living/simple_animal/hostile/megafauna/ancient_robot.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.html b/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.html
new file mode 100644
index 00000000000..96a9393b9d5
--- /dev/null
+++ b/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.html
@@ -0,0 +1 @@
+code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.html b/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.html
new file mode 100644
index 00000000000..81b461a20e8
--- /dev/null
+++ b/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.html
@@ -0,0 +1 @@
+code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm - Space Station 13Space Station 13 - Modules - Types
a hierophant's chaser. follows target around, moving and producing a blast every speed deciseconds.
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/hostile/mining/elites/goliath_broodmother.html b/code/modules/mob/living/simple_animal/hostile/mining/elites/goliath_broodmother.html
new file mode 100644
index 00000000000..5f3a23952ba
--- /dev/null
+++ b/code/modules/mob/living/simple_animal/hostile/mining/elites/goliath_broodmother.html
@@ -0,0 +1,3 @@
+code/modules/mob/living/simple_animal/hostile/mining/elites/goliath_broodmother.dm - Space Station 13Space Station 13 - Modules - Types
A stronger, faster variation of the goliath. Has the ability to spawn baby goliaths, which it can later detonate at will.
+When it's health is below half, tendrils will spawn randomly around it. When it is below a quarter of health, this effect is doubled.
+It's attacks are as follows:
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/hostile/mining/elites/herald.html b/code/modules/mob/living/simple_animal/hostile/mining/elites/herald.html
new file mode 100644
index 00000000000..b41bebe20f7
--- /dev/null
+++ b/code/modules/mob/living/simple_animal/hostile/mining/elites/herald.html
@@ -0,0 +1,3 @@
+code/modules/mob/living/simple_animal/hostile/mining/elites/herald.dm - Space Station 13Space Station 13 - Modules - Types
A slow-moving projectile user with a few tricks up it's sleeve. Less unga-bunga than Colossus, with more cleverness in it's fighting style.
+As it's health gets lower, the amount of projectiles fired per-attack increases.
+It's attacks are as follows:
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/hostile/mining/elites/legionnaire.html b/code/modules/mob/living/simple_animal/hostile/mining/elites/legionnaire.html
new file mode 100644
index 00000000000..08298ca8ebe
--- /dev/null
+++ b/code/modules/mob/living/simple_animal/hostile/mining/elites/legionnaire.html
@@ -0,0 +1,3 @@
+code/modules/mob/living/simple_animal/hostile/mining/elites/legionnaire.dm - Space Station 13Space Station 13 - Modules - Types
A towering skeleton, embodying the power of Legion.
+As it's health gets lower, the head does more damage.
+It's attacks are as follows:
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/hostile/mining/elites/pandora.html b/code/modules/mob/living/simple_animal/hostile/mining/elites/pandora.html
new file mode 100644
index 00000000000..4e2db60de5d
--- /dev/null
+++ b/code/modules/mob/living/simple_animal/hostile/mining/elites/pandora.html
@@ -0,0 +1,3 @@
+code/modules/mob/living/simple_animal/hostile/mining/elites/pandora.dm - Space Station 13Space Station 13 - Modules - Types
A box with a similar design to the Hierophant which trades large, single attacks for more frequent smaller ones.
+As it's health gets lower, the time between it's attacks decrease.
+It's attacks are as follows:
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/hostile/venus_human_trap.html b/code/modules/mob/living/simple_animal/hostile/venus_human_trap.html
new file mode 100644
index 00000000000..abef9f30efd
--- /dev/null
+++ b/code/modules/mob/living/simple_animal/hostile/venus_human_trap.html
@@ -0,0 +1 @@
+code/modules/mob/living/simple_animal/hostile/venus_human_trap.dm - Space Station 13Space Station 13 - Modules - Types
inheriting basic attack/damage stuff from alien structures
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/hostile/winter_mobs.html b/code/modules/mob/living/simple_animal/hostile/winter_mobs.html
new file mode 100644
index 00000000000..7a47409c17c
--- /dev/null
+++ b/code/modules/mob/living/simple_animal/hostile/winter_mobs.html
@@ -0,0 +1 @@
+code/modules/mob/living/simple_animal/hostile/winter_mobs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/living/simple_animal/slime/slime_emote.html b/code/modules/mob/living/simple_animal/slime/slime_emote.html
new file mode 100644
index 00000000000..cbae9e57820
--- /dev/null
+++ b/code/modules/mob/living/simple_animal/slime/slime_emote.html
@@ -0,0 +1 @@
+code/modules/mob/living/simple_animal/slime/slime_emote.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Sentinel value; passing this as mood sets mood to null.
Define Details
MOOD_RESET
Sentinel value; passing this as mood sets mood to null.
\ No newline at end of file
diff --git a/code/modules/mob/mob_misc_procs.html b/code/modules/mob/mob_misc_procs.html
new file mode 100644
index 00000000000..8be279acf40
--- /dev/null
+++ b/code/modules/mob/mob_misc_procs.html
@@ -0,0 +1 @@
+code/modules/mob/mob_misc_procs.dm - Space Station 13Space Station 13 - Modules - Types
Shake the camera of the person viewing the mob SO REAL!
\ No newline at end of file
diff --git a/code/modules/mob/new_player/sprite_accessories/human/human_body_markings.html b/code/modules/mob/new_player/sprite_accessories/human/human_body_markings.html
new file mode 100644
index 00000000000..0918f18c224
--- /dev/null
+++ b/code/modules/mob/new_player/sprite_accessories/human/human_body_markings.html
@@ -0,0 +1 @@
+code/modules/mob/new_player/sprite_accessories/human/human_body_markings.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/new_player/sprite_accessories/human/human_facial_hair.html b/code/modules/mob/new_player/sprite_accessories/human/human_facial_hair.html
new file mode 100644
index 00000000000..44ba563cefb
--- /dev/null
+++ b/code/modules/mob/new_player/sprite_accessories/human/human_facial_hair.html
@@ -0,0 +1 @@
+code/modules/mob/new_player/sprite_accessories/human/human_facial_hair.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/new_player/sprite_accessories/human/human_hair.html b/code/modules/mob/new_player/sprite_accessories/human/human_hair.html
new file mode 100644
index 00000000000..8a8bb75d381
--- /dev/null
+++ b/code/modules/mob/new_player/sprite_accessories/human/human_hair.html
@@ -0,0 +1,3 @@
+code/modules/mob/new_player/sprite_accessories/human/human_hair.dm - Space Station 13Space Station 13 - Modules - Types
Ume hairs end here///
+Fluff HairStyles//
+Pineapple Salad hair fluff its for a slime..has to go under human
\ No newline at end of file
diff --git a/code/modules/mob/new_player/sprite_accessories/shared/shared_tail_markings.html b/code/modules/mob/new_player/sprite_accessories/shared/shared_tail_markings.html
new file mode 100644
index 00000000000..f9bb1750f4c
--- /dev/null
+++ b/code/modules/mob/new_player/sprite_accessories/shared/shared_tail_markings.html
@@ -0,0 +1 @@
+code/modules/mob/new_player/sprite_accessories/shared/shared_tail_markings.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/new_player/sprite_accessories/skrell/skrell_face.html b/code/modules/mob/new_player/sprite_accessories/skrell/skrell_face.html
new file mode 100644
index 00000000000..a5aa7e078d6
--- /dev/null
+++ b/code/modules/mob/new_player/sprite_accessories/skrell/skrell_face.html
@@ -0,0 +1 @@
+code/modules/mob/new_player/sprite_accessories/skrell/skrell_face.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/new_player/sprite_accessories/tajaran/tajaran_head_markings.html b/code/modules/mob/new_player/sprite_accessories/tajaran/tajaran_head_markings.html
new file mode 100644
index 00000000000..a2a15a1a88d
--- /dev/null
+++ b/code/modules/mob/new_player/sprite_accessories/tajaran/tajaran_head_markings.html
@@ -0,0 +1 @@
+code/modules/mob/new_player/sprite_accessories/tajaran/tajaran_head_markings.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/new_player/sprite_accessories/tajaran/tajaran_tail_markings.html b/code/modules/mob/new_player/sprite_accessories/tajaran/tajaran_tail_markings.html
new file mode 100644
index 00000000000..f35c401cfdd
--- /dev/null
+++ b/code/modules/mob/new_player/sprite_accessories/tajaran/tajaran_tail_markings.html
@@ -0,0 +1 @@
+code/modules/mob/new_player/sprite_accessories/tajaran/tajaran_tail_markings.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/new_player/sprite_accessories/unathi/unathi_head_markings.html b/code/modules/mob/new_player/sprite_accessories/unathi/unathi_head_markings.html
new file mode 100644
index 00000000000..2867aa4ff6b
--- /dev/null
+++ b/code/modules/mob/new_player/sprite_accessories/unathi/unathi_head_markings.html
@@ -0,0 +1 @@
+code/modules/mob/new_player/sprite_accessories/unathi/unathi_head_markings.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mob/new_player/sprite_accessories/vulpkanin/vulpkanin_head_markings.html b/code/modules/mob/new_player/sprite_accessories/vulpkanin/vulpkanin_head_markings.html
new file mode 100644
index 00000000000..86b01c10c9c
--- /dev/null
+++ b/code/modules/mob/new_player/sprite_accessories/vulpkanin/vulpkanin_head_markings.html
@@ -0,0 +1 @@
+code/modules/mob/new_player/sprite_accessories/vulpkanin/vulpkanin_head_markings.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mod/adding_new_mod.html b/code/modules/mod/adding_new_mod.html
new file mode 100644
index 00000000000..3279e88a3ce
--- /dev/null
+++ b/code/modules/mod/adding_new_mod.html
@@ -0,0 +1,273 @@
+code/modules/mod/adding_new_mod.md - Space Station 13Space Station 13 - Modules - Types
code/modules/mod/adding_new_mod.md
Introduction
+
This is a step by step guide for creating a MODsuit theme, skin and module.
+
Theme
+
This is pretty simple, we go here and add a new definition, let's go with a Psychologist theme as an example.
+Their names should be like model names or use similar adjectives, like "magnate" or simply "engineering", so we'll go with "psychological".
+After that, it's good to decide what company is manufacturing the suit, and a basic description of what it offers, we'll write that down in the desc.
+So, let's our suit should be a low-power usage with lowered module capacity. We'd go with something like this.
+
/datum/mod_theme/psychological
+ name = "psychological"
+ desc = "A DeForest Medical Corporation power-saving psychological suit, limiting its' module capacity."
+
+
For people that want to see additional stuff, we add an extended description with some more insight into what the suit does. We also set the default skin to usually the theme name, like so.
+
/datum/mod_theme/psychological
+ name = "psychological"
+ desc = "A DeForest Medical Corporation power-saving psychological suit, limiting its' module capacity."
+ extended_desc = "DeForest Medical Corporation's prototype suit, based off the work of \
+ Nakamura Engineering. The suit has been modified to save power compared to regular suits, \
+ for operating at lower power levels, keeping people sane. As consequence, the capacity \
+ of the suit has decreased, not being able to fit many modules at all."
+ default_skin = "psychological"
+
+
Next we want to set the statistics, you can view them all in the theme file, so let's just grab our relevant ones, armor, charge and capacity and set them to what we establilished.
+Currently crew MODsuits should be lightly armored in combat relevant stats.
+
/datum/mod_theme/psychological
+ name = "psychological"
+ desc = "A DeForest Medical Corporation power-saving psychological suit, limiting its' module capacity."
+ extended_desc = "DeForest Medical Corporation's prototype suit, based off the work of \
+ Nakamura Engineering. The suit has been modified to save power compared to regular suits, \
+ for operating at lower power levels, keeping people sane. As consequence, the capacity \
+ of the suit has decreased, not being able to fit many modules at all."
+ default_skin = "psychological"
+ armor_type = /datum/armor/modtheme_psychological
+ complexity_max = DEFAULT_MAX_COMPLEXITY - 7
+ charge_drain = DEFAULT_CHARGE_DRAIN * 0.5
+
+
Now we have a basic theme, it lacks a skin which will be covered in the next section, and an item, which we will add right now.
+Let's go into here. It's as simple as adding a new suit type with the appropriate modules you want.
This will create our psychological suit, equipped with a storage and flashlight modules by default. We might also want to make it craftable, in which case we go here and set this.
After that we put it in the techweb or whatever other source we want. Now our suit is almost ready, it just needs a skin.
+
Skin
+
So, now that we have our theme, we want to add a skin to it (or another theme of our choosing). Let's start with a basis.
+
/datum/mod_theme/psychological
+ name = "psychological"
+ desc = "A DeForest Medical Corporation power-saving psychological suit, limiting its' module capacity."
+ extended_desc = "DeForest Medical Corporation's prototype suit, based off the work of \
+ Nakamura Engineering. The suit has been modified to save power compared to regular suits, \
+ for operating at lower power levels, keeping people sane. As consequence, the capacity \
+ of the suit has decreased, not being able to fit many modules at all."
+ default_skin = "psychological"
+ armor_type = /datum/armor/modtheme_psychological
+ complexity_max = DEFAULT_MAX_COMPLEXITY - 7
+ charge_drain = DEFAULT_CHARGE_DRAIN * 0.5
+ skins = list(
+ "psychological" = list(
+ HELMET_LAYER = null,
+ HELMET_FLAGS = list(
+ ),
+ CHESTPLATE_FLAGS = list(
+ ),
+ GAUNTLETS_FLAGS = list(
+ ),
+ BOOTS_FLAGS = list(
+ ),
+ ),
+ )
+
+
We now have a psychological skin, this will apply the psychological icons to every part of the suit. Next we'll be looking at the flags. Boots, gauntlets and the chestplate are usually very standard, we set their thickmaterial and pressureproofness while hiding the jumpsuit on the chestplate. On the helmet however, we'll actually look at its' icon.
+For example, if our helmet's icon covers the full head (like the research skin), we want to do something like this.
There are specific cases of helmets that semi-cover the head, like the cosmohonk, apocryphal and whatnot. You can look at these for more specific suits. So let's say our suit is an open helmet design, and also add an alternate skin with a closed helmet called psychotherapeutic. It'd look something like this.
+
/datum/mod_theme/psychological
+ name = "psychological"
+ desc = "A DeForest Medical Corporation power-saving psychological suit, limiting its' module capacity."
+ extended_desc = "DeForest Medical Corporation's prototype suit, based off the work of \
+ Nakamura Engineering. The suit has been modified to save power compared to regular suits, \
+ for operating at lower power levels, keeping people sane. As consequence, the capacity \
+ of the suit has decreased, not being able to fit many modules at all."
+ default_skin = "psychological"
+ armor_type = /datum/armor/modtheme_psychological
+ complexity_max = DEFAULT_MAX_COMPLEXITY - 7
+ charge_drain = DEFAULT_CHARGE_DRAIN * 0.5
+ skins = list(
+ "psychological" = list(
+ HELMET_LAYER = NECK_LAYER,
+ HELMET_FLAGS = list(
+ UNSEALED_CLOTHING = SNUG_FIT,
+ SEALED_CLOTHING = THICKMATERIAL|STOPSPRESSUREDAMAGE,
+ UNSEALED_INVISIBILITY = HIDEFACIALHAIR,
+ SEALED_INVISIBILITY = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDESNOUT,
+ SEALED_COVER = HEADCOVERSMOUTH|HEADCOVERSEYES|PEPPERPROOF,
+ ),
+ CHESTPLATE_FLAGS = list(
+ UNSEALED_CLOTHING = THICKMATERIAL,
+ SEALED_CLOTHING = STOPSPRESSUREDAMAGE,
+ SEALED_INVISIBILITY = HIDEJUMPSUIT,
+ ),
+ GAUNTLETS_FLAGS = list(
+ UNSEALED_CLOTHING = THICKMATERIAL,
+ SEALED_CLOTHING = STOPSPRESSUREDAMAGE,
+ ),
+ BOOTS_FLAGS = list(
+ UNSEALED_CLOTHING = THICKMATERIAL,
+ SEALED_CLOTHING = STOPSPRESSUREDAMAGE,
+ ),
+ "psychotherapeutic" = list(
+ HELMET_LAYER = null,
+ HELMET_FLAGS = list(
+ UNSEALED_CLOTHING = SNUG_FIT|THICKMATERIAL,
+ SEALED_CLOTHING = STOPSPRESSUREDAMAGE,
+ UNSEALED_INVISIBILITY = HIDEFACIALHAIR|HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDESNOUT,
+ UNSEALED_COVER = HEADCOVERSMOUTH|HEADCOVERSEYES|PEPPERPROOF,
+ ),
+ CHESTPLATE_FLAGS = list(
+ UNSEALED_CLOTHING = THICKMATERIAL,
+ SEALED_CLOTHING = STOPSPRESSUREDAMAGE,
+ SEALED_INVISIBILITY = HIDEJUMPSUIT,
+ ),
+ GAUNTLETS_FLAGS = list(
+ UNSEALED_CLOTHING = THICKMATERIAL,
+ SEALED_CLOTHING = STOPSPRESSUREDAMAGE,
+ ),
+ BOOTS_FLAGS = list(
+ UNSEALED_CLOTHING = THICKMATERIAL,
+ SEALED_CLOTHING = STOPSPRESSUREDAMAGE,
+ ),
+ ),
+ )
+
+
Thus we finished our codeside. Now we go to the icon files for the suits and simply add our new skin's icons.
+Now our suit is finished. But let's say we want to give it an unique module.
+
Module
+
So, for our psychological suit, let's say we want a module that heals the brain damage of everyone in range.
+As it's a medical module, we'll put it here. Let's start with the object definition.
+
/obj/item/mod/module/neuron_healer
+ name = "MOD neuron healer module"
+ desc = "A module made experimentally by DeForest Medical Corporation. On demand it releases waves \
+ that heal neuron damage of everyone nearby, getting their brains to a better state."
+ icon_state = "neuron_healer"
+
+
As we want this effect to be on demand, we probably want this to be an usable module. There are four types of modules:
+
+
Passive: These have a passive effect.
+
Togglable: You can turn these on and off.
+
Usable: You can use these for a one time effect.
+
Active: You can only have one selected at a time. It gives you a special click effect.
+
+
As we have an usable module, we want to set a cooldown time. All modules are also incompatible with themselves, have a specific power cost and complexity varying on how powerful they are, so let's update our definition, and also add a new variable for how much brain damage we'll heal.
+
/obj/item/mod/module/neuron_healer
+ name = "MOD neuron healer module"
+ desc = "A module made experimentally by DeForest Medical Corporation. On demand it releases waves \
+ that heal neuron damage of everyone nearby, getting their brains to a better state."
+ icon_state = "neuron_healer"
+ module_type = MODULE_USABLE
+ complexity = 3
+ use_power_cost = DEFAULT_CHARGE_DRAIN
+ incompatible_modules = list(/obj/item/mod/module/neuron_healer)
+ cooldown_time = 15 SECONDS
+ var/brain_damage_healed = 25
+
+
Now, we want to override the on_use proc for our new effect. We want to make sure the use checks passed from parent. You can read about most procs and variables by reading this
We now have a basic module, we can add it to the techwebs to make it printable ingame, and we can add an inbuilt, advanced version of it for our psychological suit. We'll give it more healing power, no complexity and make it unremovable.
Now we want to add it to the psychological theme, which is very simple, finishing with this:
+
/datum/mod_theme/psychological
+ name = "psychological"
+ desc = "A DeForest Medical Corporation power-saving psychological suit, limiting its' module capacity."
+ extended_desc = "DeForest Medical Corporation's prototype suit, based off the work of \
+ Nakamura Engineering. The suit has been modified to save power compared to regular suits, \
+ for operating at lower power levels, keeping people sane. As consequence, the capacity \
+ of the suit has decreased, not being able to fit many modules at all."
+ default_skin = "psychological"
+ armor_type = /datum/armor/modtheme_psychological
+ complexity_max = DEFAULT_MAX_COMPLEXITY - 7
+ charge_drain = DEFAULT_CHARGE_DRAIN * 0.5
+ inbuilt_modules = list(/obj/item/mod/module/neuron_healer/advanced)
+ skins = list(
+ "psychological" = list(
+ HELMET_LAYER = NECK_LAYER,
+ HELMET_FLAGS = list(
+ UNSEALED_CLOTHING = SNUG_FIT,
+ SEALED_CLOTHING = THICKMATERIAL|STOPSPRESSUREDAMAGE,
+ UNSEALED_INVISIBILITY = HIDEFACIALHAIR,
+ SEALED_INVISIBILITY = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDESNOUT,
+ SEALED_COVER = HEADCOVERSMOUTH|HEADCOVERSEYES|PEPPERPROOF,
+ ),
+ CHESTPLATE_FLAGS = list(
+ UNSEALED_CLOTHING = THICKMATERIAL,
+ SEALED_CLOTHING = STOPSPRESSUREDAMAGE,
+ SEALED_INVISIBILITY = HIDEJUMPSUIT,
+ ),
+ GAUNTLETS_FLAGS = list(
+ UNSEALED_CLOTHING = THICKMATERIAL,
+ SEALED_CLOTHING = STOPSPRESSUREDAMAGE,
+ ),
+ BOOTS_FLAGS = list(
+ UNSEALED_CLOTHING = THICKMATERIAL,
+ SEALED_CLOTHING = STOPSPRESSUREDAMAGE,
+ ),
+ "psychotherapeutic" = list(
+ HELMET_LAYER = null,
+ HELMET_FLAGS = list(
+ UNSEALED_CLOTHING = SNUG_FIT|THICKMATERIAL,
+ SEALED_CLOTHING = STOPSPRESSUREDAMAGE,
+ UNSEALED_INVISIBILITY = HIDEFACIALHAIR|HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDESNOUT,
+ UNSEALED_COVER = HEADCOVERSMOUTH|HEADCOVERSEYES|PEPPERPROOF,
+ ),
+ CHESTPLATE_FLAGS = list(
+ UNSEALED_CLOTHING = THICKMATERIAL,
+ SEALED_CLOTHING = STOPSPRESSUREDAMAGE,
+ SEALED_INVISIBILITY = HIDEJUMPSUIT,
+ ),
+ GAUNTLETS_FLAGS = list(
+ UNSEALED_CLOTHING = THICKMATERIAL,
+ SEALED_CLOTHING = STOPSPRESSUREDAMAGE,
+ ),
+ BOOTS_FLAGS = list(
+ UNSEALED_CLOTHING = THICKMATERIAL,
+ SEALED_CLOTHING = STOPSPRESSUREDAMAGE,
+ ),
+ ),
+ )
+
+
Ending
+
This finishes this hopefully easy to follow along tutorial. You should now know how to make a basic theme, a skin for it, and a module.
\ No newline at end of file
diff --git a/code/modules/mod/mod_construction.html b/code/modules/mod/mod_construction.html
new file mode 100644
index 00000000000..1c0ac79e2f6
--- /dev/null
+++ b/code/modules/mod/mod_construction.html
@@ -0,0 +1 @@
+code/modules/mod/mod_construction.dm - Space Station 13Space Station 13 - Modules - Types
Continued from above, none of these are steal objectives, and only the CE or RD one comes pre-installed with modules. You are getting the protection / speed / looks of these hardsuits, but no special modules.
This may be a bad idea. I think this is an interesting idea. And you still need robotics to build it, and traders can charge as much for it as they want. Also with ones like the CE modsuit, it is the flagship mod. That means it is sold a lot.
Don't think people will want the RD one though, it is as slow as shit. Anyway, here it is. Surely this will not end poorly.
\ No newline at end of file
diff --git a/code/modules/mod/mod_control.html b/code/modules/mod/mod_control.html
new file mode 100644
index 00000000000..7409678e297
--- /dev/null
+++ b/code/modules/mod/mod_control.html
@@ -0,0 +1 @@
+code/modules/mod/mod_control.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mod/mod_core.html b/code/modules/mod/mod_core.html
new file mode 100644
index 00000000000..632f134e846
--- /dev/null
+++ b/code/modules/mod/mod_core.html
@@ -0,0 +1 @@
+code/modules/mod/mod_core.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mod/mod_link.html b/code/modules/mod/mod_link.html
new file mode 100644
index 00000000000..757904c80f7
--- /dev/null
+++ b/code/modules/mod/mod_link.html
@@ -0,0 +1 @@
+code/modules/mod/mod_link.dm - Space Station 13Space Station 13 - Modules - Types
A MODlink call datum, used to handle the call between two MODlinks.
\ No newline at end of file
diff --git a/code/modules/mod/mod_theme.html b/code/modules/mod/mod_theme.html
new file mode 100644
index 00000000000..8f76f6c05b6
--- /dev/null
+++ b/code/modules/mod/mod_theme.html
@@ -0,0 +1 @@
+code/modules/mod/mod_theme.dm - Space Station 13Space Station 13 - Modules - Types
considering this should not be used, it's getting just DS armor, not infinity in everything.
\ No newline at end of file
diff --git a/code/modules/mod/mod_types.html b/code/modules/mod/mod_types.html
new file mode 100644
index 00000000000..10043912ff3
--- /dev/null
+++ b/code/modules/mod/mod_types.html
@@ -0,0 +1 @@
+code/modules/mod/mod_types.dm - Space Station 13Space Station 13 - Modules - Types
Diffrent look, as well as magic proof. It's perfect for inqusitors. Or if you want to give your ERT a fancy look. At this time, the other ones are unused, and frankly I don't like the idea of antimagic gamma.
\ No newline at end of file
diff --git a/code/modules/mod/modules/_modules.html b/code/modules/mod/modules/_modules.html
new file mode 100644
index 00000000000..71223f8ea28
--- /dev/null
+++ b/code/modules/mod/modules/_modules.html
@@ -0,0 +1 @@
+code/modules/mod/modules/_modules.dm - Space Station 13Space Station 13 - Modules - Types
Anomaly Locked - Causes the module to not function without an anomaly.
\ No newline at end of file
diff --git a/code/modules/mod/modules/module_kinesis.html b/code/modules/mod/modules/module_kinesis.html
new file mode 100644
index 00000000000..fac38f659a7
--- /dev/null
+++ b/code/modules/mod/modules/module_kinesis.html
@@ -0,0 +1 @@
+code/modules/mod/modules/module_kinesis.dm - Space Station 13Space Station 13 - Modules - Types
Kinesis - Gives you the ability to move and launch objects.
\ No newline at end of file
diff --git a/code/modules/mod/modules/module_pathfinder.html b/code/modules/mod/modules/module_pathfinder.html
new file mode 100644
index 00000000000..9266df1a270
--- /dev/null
+++ b/code/modules/mod/modules/module_pathfinder.html
@@ -0,0 +1 @@
+code/modules/mod/modules/module_pathfinder.dm - Space Station 13Space Station 13 - Modules - Types
Pathfinder - Can fly the suit from a long distance to an implant installed in someone.
\ No newline at end of file
diff --git a/code/modules/mod/modules/modules_antag.html b/code/modules/mod/modules/modules_antag.html
new file mode 100644
index 00000000000..7f33baeded6
--- /dev/null
+++ b/code/modules/mod/modules/modules_antag.html
@@ -0,0 +1 @@
+code/modules/mod/modules/modules_antag.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mod/modules/modules_engineering.html b/code/modules/mod/modules/modules_engineering.html
new file mode 100644
index 00000000000..0ec8727092f
--- /dev/null
+++ b/code/modules/mod/modules/modules_engineering.html
@@ -0,0 +1 @@
+code/modules/mod/modules/modules_engineering.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/modules/mod/modules/modules_general.html b/code/modules/mod/modules/modules_general.html
new file mode 100644
index 00000000000..e26c1724ea7
--- /dev/null
+++ b/code/modules/mod/modules/modules_general.html
@@ -0,0 +1 @@
+code/modules/mod/modules/modules_general.dm - Space Station 13Space Station 13 - Modules - Types
Plasma Stabilizer - Prevents plasmamen from igniting in the suit
\ No newline at end of file
diff --git a/code/modules/mod/modules/modules_maint.html b/code/modules/mod/modules/modules_maint.html
new file mode 100644
index 00000000000..4ba726ec351
--- /dev/null
+++ b/code/modules/mod/modules/modules_maint.html
@@ -0,0 +1 @@
+code/modules/mod/modules/modules_maint.dm - Space Station 13Space Station 13 - Modules - Types
Stamper - Extends a stamp that can switch between accept/deny modes.
\ No newline at end of file
diff --git a/code/modules/mod/modules/modules_medical.html b/code/modules/mod/modules/modules_medical.html
new file mode 100644
index 00000000000..a6f1bd33d0c
--- /dev/null
+++ b/code/modules/mod/modules/modules_medical.html
@@ -0,0 +1 @@
+code/modules/mod/modules/modules_medical.dm - Space Station 13Space Station 13 - Modules - Types
Health Analyzer - Gives the suit an extendable health analyzer, able to be upgraded
\ No newline at end of file
diff --git a/code/modules/mod/modules/modules_science.html b/code/modules/mod/modules/modules_science.html
new file mode 100644
index 00000000000..ec4cca48dc2
--- /dev/null
+++ b/code/modules/mod/modules/modules_science.html
@@ -0,0 +1 @@
+code/modules/mod/modules/modules_science.dm - Space Station 13Space Station 13 - Modules - Types
Teleporter - Lets the user teleport to a nearby location.
\ No newline at end of file
diff --git a/code/modules/mod/modules/modules_security.html b/code/modules/mod/modules/modules_security.html
new file mode 100644
index 00000000000..6b2f59b1db3
--- /dev/null
+++ b/code/modules/mod/modules/modules_security.html
@@ -0,0 +1 @@
+code/modules/mod/modules/modules_security.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mod/modules/modules_service.html b/code/modules/mod/modules/modules_service.html
new file mode 100644
index 00000000000..ed7c3291285
--- /dev/null
+++ b/code/modules/mod/modules/modules_service.html
@@ -0,0 +1 @@
+code/modules/mod/modules/modules_service.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/mod/modules/modules_supply.html b/code/modules/mod/modules/modules_supply.html
new file mode 100644
index 00000000000..c7c8a464aaa
--- /dev/null
+++ b/code/modules/mod/modules/modules_supply.html
@@ -0,0 +1 @@
+code/modules/mod/modules/modules_supply.dm - Space Station 13Space Station 13 - Modules - Types
Ore Bag - Lets you pick up ores and drop them from the suit.
\ No newline at end of file
diff --git a/code/modules/mod/modules/modules_visor.html b/code/modules/mod/modules/modules_visor.html
new file mode 100644
index 00000000000..2da8ac1a9cf
--- /dev/null
+++ b/code/modules/mod/modules/modules_visor.html
@@ -0,0 +1 @@
+code/modules/mod/modules/modules_visor.dm - Space Station 13Space Station 13 - Modules - Types
Base Visor - Adds a specific HUD and traits to you.
\ No newline at end of file
diff --git a/code/modules/newscaster/newsfeed_datums.html b/code/modules/newscaster/newsfeed_datums.html
new file mode 100644
index 00000000000..3683fb4d5d6
--- /dev/null
+++ b/code/modules/newscaster/newsfeed_datums.html
@@ -0,0 +1 @@
+code/modules/newscaster/newsfeed_datums.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/newscaster/obj/newscaster.html b/code/modules/newscaster/obj/newscaster.html
new file mode 100644
index 00000000000..faf8539870f
--- /dev/null
+++ b/code/modules/newscaster/obj/newscaster.html
@@ -0,0 +1 @@
+code/modules/newscaster/obj/newscaster.dm - Space Station 13Space Station 13 - Modules - Types
For all of the crew's news need. Includes reading, submitting and printing stories.
\ No newline at end of file
diff --git a/code/modules/newscaster/obj/newspaper.html b/code/modules/newscaster/obj/newspaper.html
new file mode 100644
index 00000000000..478667f9e56
--- /dev/null
+++ b/code/modules/newscaster/obj/newspaper.html
@@ -0,0 +1 @@
+code/modules/newscaster/obj/newspaper.dm - Space Station 13Space Station 13 - Modules - Types
A newspaper displaying the stories of all channels contained within.
\ No newline at end of file
diff --git a/code/modules/paperwork/filingcabinet.html b/code/modules/paperwork/filingcabinet.html
new file mode 100644
index 00000000000..1ef7e2719c4
--- /dev/null
+++ b/code/modules/paperwork/filingcabinet.html
@@ -0,0 +1 @@
+code/modules/paperwork/filingcabinet.dm - Space Station 13Space Station 13 - Modules - Types
not changing the path to avoid unecessary map issues, but please don't name stuff like this in the future -Pete
\ No newline at end of file
diff --git a/code/modules/paperwork/photocopier.html b/code/modules/paperwork/photocopier.html
new file mode 100644
index 00000000000..5d5b3021863
--- /dev/null
+++ b/code/modules/paperwork/photocopier.html
@@ -0,0 +1 @@
+code/modules/paperwork/photocopier.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Global limit on copied papers and photos, bundles are counted as a sum of their parts
Define Details
MAX_COPIES_PRINTABLE
Global limit on copied papers and photos, bundles are counted as a sum of their parts
\ No newline at end of file
diff --git a/code/modules/paperwork/photography.html b/code/modules/paperwork/photography.html
new file mode 100644
index 00000000000..542e4a38999
--- /dev/null
+++ b/code/modules/paperwork/photography.html
@@ -0,0 +1,3 @@
+code/modules/paperwork/photography.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
video camera
+The amount of time after being turned off that the camera is too hot to turn back on.
Define Details
CAMERA_STATE_COOLDOWN
video camera
+The amount of time after being turned off that the camera is too hot to turn back on.
\ No newline at end of file
diff --git a/code/modules/paperwork/silicon_photography.html b/code/modules/paperwork/silicon_photography.html
new file mode 100644
index 00000000000..8d2c73ee950
--- /dev/null
+++ b/code/modules/paperwork/silicon_photography.html
@@ -0,0 +1 @@
+code/modules/paperwork/silicon_photography.dm - Space Station 13Space Station 13 - Modules - Types
currently doesn't offer the verbs, thus cannot be used
\ No newline at end of file
diff --git a/code/modules/pda/cart.html b/code/modules/pda/cart.html
new file mode 100644
index 00000000000..31cbdb6c843
--- /dev/null
+++ b/code/modules/pda/cart.html
@@ -0,0 +1 @@
+code/modules/pda/cart.dm - Space Station 13Space Station 13 - Modules - Types
needed subtype so regular traitors can't open and close nuclear shuttle doors
\ No newline at end of file
diff --git a/code/modules/power/apc/apc.html b/code/modules/power/apc/apc.html
new file mode 100644
index 00000000000..5e617793197
--- /dev/null
+++ b/code/modules/power/apc/apc.html
@@ -0,0 +1 @@
+code/modules/power/apc/apc.dm - Space Station 13Space Station 13 - Modules - Types
Can handle any amount of power. Made with plasteel frames and is found in maints and other high power areas.
\ No newline at end of file
diff --git a/code/modules/power/cables/cable.html b/code/modules/power/cables/cable.html
new file mode 100644
index 00000000000..09d2fb9ffba
--- /dev/null
+++ b/code/modules/power/cables/cable.html
@@ -0,0 +1 @@
+code/modules/power/cables/cable.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/power/cell.html b/code/modules/power/cell.html
new file mode 100644
index 00000000000..a06bc426360
--- /dev/null
+++ b/code/modules/power/cell.html
@@ -0,0 +1 @@
+code/modules/power/cell.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/power/engines/fission/gas_node.html b/code/modules/power/engines/fission/gas_node.html
new file mode 100644
index 00000000000..e5c92571819
--- /dev/null
+++ b/code/modules/power/engines/fission/gas_node.html
@@ -0,0 +1 @@
+code/modules/power/engines/fission/gas_node.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
the minimum amount of moles we transfer, regardless of pressure on the other side.
Define Details
MINIMUM_MOLES
the minimum amount of moles we transfer, regardless of pressure on the other side.
\ No newline at end of file
diff --git a/code/modules/power/engines/fission/nuclear_rods.html b/code/modules/power/engines/fission/nuclear_rods.html
new file mode 100644
index 00000000000..5b5d15dd5d8
--- /dev/null
+++ b/code/modules/power/engines/fission/nuclear_rods.html
@@ -0,0 +1 @@
+code/modules/power/engines/fission/nuclear_rods.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/power/engines/fission/reactor.html b/code/modules/power/engines/fission/reactor.html
new file mode 100644
index 00000000000..ef539d35f73
--- /dev/null
+++ b/code/modules/power/engines/fission/reactor.html
@@ -0,0 +1 @@
+code/modules/power/engines/fission/reactor.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The overheat threshold bonus that plasma coolant provides
Define Details
AVERAGE_HEAT_THRESHOLD
The threshold the average heat-per-rod must exceed to generate coefficient.
CO2_EVENT_MODIFIER
The negative event chance from CO2.
DAMAGE_MAXIMUM
The highest amount of damage done when taking damage
DAMAGE_MINIMUM
The minimum amount of damage done when taking any damage
EMERGENCY_POINT
Begin sending warning messages over common
EVENT_MODIFIER
Multiplies the commonality of dangerous events.
EXPLOSION_MODIFIER
Adjusts the size of the engine explosion
HEAT_CAP
the highest temp before we artificially cap it
HEAT_CONVERSION_RATIO
How much heat over the threshold = an extra coefficient point.
HEAT_DAMAGE_MULTIPLIER
An adjuster for damage balance from high heat
HEAT_DAMAGE_RATE
The rate at which damage increases due to heat
MELTDOWN_POINT
The damage cap where meltdown occurs. higher = longer to meltdown
MIN_CHAMBERS_TO_OVERLOAD
The amount of connected chambers required before the overload is valid
MOLE_BONUS_COMPONENT
How many moles are required for one "unit" of modifier increase. Used in the math calculation.
MOLE_BONUS_THRESHOLD
The minimum number of moles needed to begin accruing multiplier.
MOL_DAMAGE_MULTIPLIER
An adjuster for damage balance from no gas
MOL_MINIMUM
The amount of mols of gas needed before it begins to take damage while operational
N2O_EVENT_MODIFIER
The negative event chance from N2O.
N2O_OVERHEAT_BONUS
The overheat threshold bonus that N2O coolant provides
N2_EVENT_MODIFIER
The negative event chance from N2.
N2_OVERHEAT_BONUS
The overheat threshold bonus that N2 coolant provides
NGCR_COUNTDOWN_TIME
How long the meltdown countdown lasts
O2_EVENT_MODIFIER
The POSITIVE event chance from O2.
O2_REACTIVITY_BONUS
The highest amount of reactivity that O2 coolant provides
PLASMA_OVERHEAT_BONUS
The overheat threshold bonus that plasma coolant provides
PLASMA_REACTIVITY_BONUS
The highest amount of reactivity that plasma coolant provides
PRESSURE_DAMAGE
The minimum damage caused by overpresurization
PRESSURE_MAXIMUM
The highest safe pressure allowed by the reactor
REACTIVITY_COEFFICIENT_CAP
The highest that reactivity coefficient can be
TOTAL_CONTROL_RODS
The max number of control rods.
TOTAL_HEAT_THRESHOLD
The temp (in K) needed to begin generating coefficient.
WARNING_DELAY
Time in deciseconds between warnings
WARNING_POINT
Begin sending warning messages
\ No newline at end of file
diff --git a/code/modules/power/engines/fission/reactor_machines.html b/code/modules/power/engines/fission/reactor_machines.html
new file mode 100644
index 00000000000..4263b1512e8
--- /dev/null
+++ b/code/modules/power/engines/fission/reactor_machines.html
@@ -0,0 +1 @@
+code/modules/power/engines/fission/reactor_machines.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/modules/power/engines/fission/rod_chamber.html b/code/modules/power/engines/fission/rod_chamber.html
new file mode 100644
index 00000000000..13a48ed8db0
--- /dev/null
+++ b/code/modules/power/engines/fission/rod_chamber.html
@@ -0,0 +1 @@
+code/modules/power/engines/fission/rod_chamber.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/modules/power/engines/singularity/narsie.html b/code/modules/power/engines/singularity/narsie.html
new file mode 100644
index 00000000000..b6b66b8e150
--- /dev/null
+++ b/code/modules/power/engines/singularity/narsie.html
@@ -0,0 +1 @@
+code/modules/power/engines/singularity/narsie.dm - Space Station 13Space Station 13 - Modules - Types
Moving narsie to a child object of the singularity so it can be made to function differently. --NEO
\ No newline at end of file
diff --git a/code/modules/power/engines/singularity/singulogen.html b/code/modules/power/engines/singularity/singulogen.html
new file mode 100644
index 00000000000..773c49d3753
--- /dev/null
+++ b/code/modules/power/engines/singularity/singulogen.html
@@ -0,0 +1 @@
+code/modules/power/engines/singularity/singulogen.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/power/engines/supermatter/supermatter.html b/code/modules/power/engines/supermatter/supermatter.html
new file mode 100644
index 00000000000..0cef9cee9e3
--- /dev/null
+++ b/code/modules/power/engines/supermatter/supermatter.html
@@ -0,0 +1 @@
+code/modules/power/engines/supermatter/supermatter.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Hugbox shard with crystal visuals, used in the Supermatter/Hyperfractal shuttle
Define Details
EVENT_POWER_PENALTY_THRESHOLD
The cutoff for the minimum amount of power required to trigger the crystal invasion delamination event.
SUPERMATTER_ACCENT_SOUND_MIN_COOLDOWN
to prevent accent sounds from layering
SUPERMATTER_COLOUR
Colours used for effects.
\ No newline at end of file
diff --git a/code/modules/power/engines/tesla/energy_ball.html b/code/modules/power/engines/tesla/energy_ball.html
new file mode 100644
index 00000000000..b9bc0f15aa4
--- /dev/null
+++ b/code/modules/power/engines/tesla/energy_ball.html
@@ -0,0 +1 @@
+code/modules/power/engines/tesla/energy_ball.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/power/exterior_lights.html b/code/modules/power/exterior_lights.html
new file mode 100644
index 00000000000..c7649b92c48
--- /dev/null
+++ b/code/modules/power/exterior_lights.html
@@ -0,0 +1,4 @@
+code/modules/power/exterior_lights.dm - Space Station 13Space Station 13 - Modules - Types
Exterior lights use the powernet of the wall they're installed on,
+not the tile they're placed on. This allows them to be in a different
+area than the area that powers them, making it possible to have a light
+"outside" a structure that shares its power state.
\ No newline at end of file
diff --git a/code/modules/power/generators/turbine.html b/code/modules/power/generators/turbine.html
new file mode 100644
index 00000000000..f15cd0e6196
--- /dev/null
+++ b/code/modules/power/generators/turbine.html
@@ -0,0 +1 @@
+code/modules/power/generators/turbine.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
The maximum portion of the compressor's kinetic energy the turbine can harvest each tick
Define Details
BEARING_DAMAGE_BASE_THRESHOLD
The temperature at which the bearings start taking damage
BEARING_DAMAGE_FRICTION
Friction from bearing damage
BEARING_DAMAGE_MAX
Amount of damage at which the turbine catastrophically fails
BEARING_DAMAGE_SCALING
Scales the damage taken by the bearings. Higher value means less damage.
COMPFRICTION
Multiplies the friction of the compressor
COMPRESSION_RATIO_MAX
The maximum compression ratio of the turbine
COMPRESSION_RPM_CURVE
Changes the scaling of compression ratio with RPM. Lower value means faster scaling
COMPRESSOR_HEAT_CAPACITY
Compressors heat capacity in J / K
COMP_MOMENT_OF_INERTIA
Compressor's moment of inertia in kg * m^2
FAIILRE_RPM_EXPLOSION_THRESHOLD
RPM at which the turbine explodes upon failing
FAILURE_MESSAGE
Message send upon catastrphic failure
KINETIC_TO_ELECTRIC
The portion of the kinetic energy converted to electrical
MAX_ENERGY_PORTION
The maximum portion of the compressor's kinetic energy the turbine can harvest each tick
POWER_EFF_PART_BASE
The base value we add values dervied from componenet ratings to for power efficiency. higher value means lesser effect of parts
RPM_TO_RAD_PER_SECOND
Convert RPM to radians per second(SI angular velocity units)
THERMAL_EFF_COMPRESSION_CURVE
Scales the effect of compresion ratio on thermal efficiency
THERMAL_EFF_MAX
Maximum possible thermal efficiency
THERMAL_EFF_PART_BASE
The base value we add values dervied from componenet ratings to for thermal efficiency scaling. higher value means lesser effect of parts
THERMAL_EFF_TEMP_CURVE
Changes the scaling of thermal efficiency with temperature. Lower value means faster scaling
\ No newline at end of file
diff --git a/code/modules/power/lights.html b/code/modules/power/lights.html
new file mode 100644
index 00000000000..211b7424983
--- /dev/null
+++ b/code/modules/power/lights.html
@@ -0,0 +1 @@
+code/modules/power/lights.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/power/powernets.html b/code/modules/power/powernets.html
new file mode 100644
index 00000000000..e231dc9a770
--- /dev/null
+++ b/code/modules/power/powernets.html
@@ -0,0 +1,78 @@
+code/modules/power/powernets/README.md - Space Station 13Space Station 13 - Modules - Types
Understanding Powernets
Much like any other massive numbers system in SS13, the power (or powernet) system is complex and confusing to work with, only being trumped in complexity by atmospherics/LINDA. This README serves as a powernets 101 guide and breaks down how the system works.
+
Two Types of Powernets
+
There are two types of powernets in our code
+
+
Regional Powernets
+
Local Powernets
+
+
They are two completely different datum types from eachother and serve different completely different purposes. In a nutshell, regional powernets are dynamically sized and deal with physical machinery, cables, and generators whereas local powernets are statically locked into a single area each and work directly with APCs to handle individual machines interactions with the larger regional powernet.
+
Regional Powernet
+
An inter-area datum which handles 1 continuous set of cables (var/list/cables) and all the connected machinery/nodes on that set of cable (var/list/nodes).
+
On this datum you'll notice a lot of different vars handling power input, output, consumption, demand, etc
+
Regional Powernet Process Call Stack
+
Starting in SSmachines,
+/datum/controller/subsystem/machines/fire(resumed = 0)
+the fire() proc will call process process_powernets()
+/datum/controller/subsystem/machines/proc/process_powernets(resumed = 0)
+This proc will then call process_power() on every single registered regional powernet
+
The Power Variables
+
var/available_power - the currently available power in the powernet in watts THIS PROCESS CYCLE
+var/power_demand - the power being consumed from available power in watts THIS PROCESS CYCLE
+
var/queued_power_production - the power in watts that will be available to be consumed in the NEXT PROCESS CYCLE
+--> All power producing generators dump their production into this variable
+var/queued_power_demand - the power in watts that will be guaranteed to be consumed in the NEXT PROCESS CYCLE
+--> Anything machine/item that needs to have priority consumption draws from the queue'd cycle first in order to ensure it gets priority power (electrocution, powersinks, etc)
+
Local Powernets
+
This is a power datum that is locked to an area. There is only one local powernet datum per area which handles all power tracking/consumption
+in that area. Every area will be initialized with a local powernet datum either by the area itself or if a machine intializes before the area does.
+
The Static/Passive Power System
+
Powernets used to iterate through every machine to check power, while this is incredibly accurate and straightforward, we don't really need to
+iterate through every machine (there are 1000's) since most of those machines will never change how much power they consume during their entire
+lifetime except to maybe change power states. So we made the Static/Passive power system which only tracks machine power on the local powernet
+so that we only have to iterate through the powernets instead of their machines.
+
/* Passive consumption vars, only change when machines are added/removed from the powernet (not if the power channel turns on/off) */
+/// The amount of power consumed by equipment in every power cycle
+VAR_PRIVATE/passive_equipment_consumption = 0
+/// The amount of power consumed by lighting in every power cycle
+VAR_PRIVATE/passive_lighting_consumption = 0
+/// The amount of power consumed by environment in every power cycle
+VAR_PRIVATE/passive_environment_consumption = 0
+
+
Using adjust_static_power(), it's possible to change these variables by inputting a channel and an amount to change the static power by.
+Due to the lack of tracking the machines and their current consumption on the local net (by design), we need to be very particular about
+how we're changing static power so we're maintaining perfect parity.
+
On Machine types, we have unsafe private setter procs that faciliate static power changes on machines
+
/// Helper proc to positively adjust static power tracking on the machine's powernet, not meant for general use!
+/obj/machinery/proc/_add_static_power(channel, amount)
+ PRIVATE_PROC(TRUE)
+ machine_powernet?.adjust_static_power(channel, amount)
+
+/// Helper proc to negatively adjust static power tracking on the machine's powernet, not meant for general use!
+/obj/machinery/proc/_remove_static_power(channel, amount)
+ PRIVATE_PROC(TRUE)
+ machine_powernet?.adjust_static_power(channel, -amount)
+
+
These setter procs are called both in Initialize() to set the initial power and by the helper procs we have in machines. Coders should not be
+using _add_static_power or _remove_static_power ever unless they're changing how power functions on the base machine type. Instead you should
+be using the safe helper procs below!
+
/// Safely changes the static power on the local powernet based on an adjustment in idle power
+/obj/machinery/proc/update_idle_power_consumption(channel = power_channel, amount)
+ if(!power_initialized)
+ return FALSE // we set static power values in Initialize(), do not update static consumption until after initialization or you will get weird values on powernet
+ if(power_state == IDLE_POWER_USE)
+ machine_powernet.adjust_static_power(power_channel, amount - idle_power_consumption)
+ idle_power_consumption = amount
+
+/// Safely changes the static power on the local powernet based on an adjustment in active power
+/obj/machinery/proc/update_active_power_consumption(channel = power_channel, amount)
+ if(!power_initialized)
+ return FALSE // we set static power values in Initialize(), do not update static consumption until after initialization or you will get weird values on powernet
+ if(power_state == ACTIVE_POWER_USE)
+ machine_powernet.adjust_static_power(power_channel, amount - active_power_consumption)
+ active_power_consumption = amount
+
+
These allow you to safely set how much power a machine will use when it's "Active" or "Idle," and the procs will handle changing the static
+power for you. That way you never have to worry about losing parity when you're just trying to make your new machine consume power.
+
As a note: you should never be manually setting power consumption variables in code, this is a really quick way to get funky number on your
+powernet. So for example don't edit power_state, idle_power_consumption, or active_power_consumption; Use their respective setter procs
+that are already defined on /machinery!
\ No newline at end of file
diff --git a/code/modules/power/powernets/local_powernet.html b/code/modules/power/powernets/local_powernet.html
new file mode 100644
index 00000000000..8ffbd5ea873
--- /dev/null
+++ b/code/modules/power/powernets/local_powernet.html
@@ -0,0 +1,2 @@
+code/modules/power/powernets/local_powernet.dm - Space Station 13Space Station 13 - Modules - Types
Manages all power related mechanics for a single /area
+Machines in areas will directly register to this datum in order to receive power
\ No newline at end of file
diff --git a/code/modules/power/powernets/powernet_helpers.html b/code/modules/power/powernets/powernet_helpers.html
new file mode 100644
index 00000000000..7d311b58fb7
--- /dev/null
+++ b/code/modules/power/powernets/powernet_helpers.html
@@ -0,0 +1 @@
+code/modules/power/powernets/powernet_helpers.dm - Space Station 13Space Station 13 - Modules - Types
remove the old powernet and replace it with a new one throughout the network.
\ No newline at end of file
diff --git a/code/modules/power/smes.html b/code/modules/power/smes.html
new file mode 100644
index 00000000000..81972772390
--- /dev/null
+++ b/code/modules/power/smes.html
@@ -0,0 +1 @@
+code/modules/power/smes.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Conversion ratio between a Watt-tick and SMES capacity units (should be the same as power cells)
Define Details
SMESRATE
Conversion ratio between a Watt-tick and SMES capacity units (should be the same as power cells)
\ No newline at end of file
diff --git a/code/modules/procedural_mapping/mapGenerators/syndicate_mapgen.html b/code/modules/procedural_mapping/mapGenerators/syndicate_mapgen.html
new file mode 100644
index 00000000000..788f9898c6b
--- /dev/null
+++ b/code/modules/procedural_mapping/mapGenerators/syndicate_mapgen.html
@@ -0,0 +1 @@
+code/modules/procedural_mapping/mapGenerators/syndicate_mapgen.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/projectiles/ammunition/energy_lens.html b/code/modules/projectiles/ammunition/energy_lens.html
new file mode 100644
index 00000000000..32239821622
--- /dev/null
+++ b/code/modules/projectiles/ammunition/energy_lens.html
@@ -0,0 +1 @@
+code/modules/projectiles/ammunition/energy_lens.dm - Space Station 13Space Station 13 - Modules - Types
needed a slightly weaker ranged option to give to Safety Overriden borgs. The fire rate is about the same as an emitter if you put it on the ground.
\ No newline at end of file
diff --git a/code/modules/projectiles/ammunition/magazines.html b/code/modules/projectiles/ammunition/magazines.html
new file mode 100644
index 00000000000..c12fe64a805
--- /dev/null
+++ b/code/modules/projectiles/ammunition/magazines.html
@@ -0,0 +1 @@
+code/modules/projectiles/ammunition/magazines.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/projectiles/firing.html b/code/modules/projectiles/firing.html
new file mode 100644
index 00000000000..2e3ce2db552
--- /dev/null
+++ b/code/modules/projectiles/firing.html
@@ -0,0 +1 @@
+code/modules/projectiles/firing.dm - Space Station 13Space Station 13 - Modules - Types
Calculates the pixel offsets and angle that a projectile should be launched at.
\ No newline at end of file
diff --git a/code/modules/projectiles/guns/medbeam.html b/code/modules/projectiles/guns/medbeam.html
new file mode 100644
index 00000000000..bb7b838557f
--- /dev/null
+++ b/code/modules/projectiles/guns/medbeam.html
@@ -0,0 +1 @@
+code/modules/projectiles/guns/medbeam.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/projectiles/guns/projectile/revolver.html b/code/modules/projectiles/guns/projectile/revolver.html
new file mode 100644
index 00000000000..542125be460
--- /dev/null
+++ b/code/modules/projectiles/guns/projectile/revolver.html
@@ -0,0 +1 @@
+code/modules/projectiles/guns/projectile/revolver.dm - Space Station 13Space Station 13 - Modules - Types
Summoned by the Finger Gun spell, from advanced mimery traitor item
\ No newline at end of file
diff --git a/code/modules/projectiles/guns/projectile/shotgun.html b/code/modules/projectiles/guns/projectile/shotgun.html
new file mode 100644
index 00000000000..2339b3ddf37
--- /dev/null
+++ b/code/modules/projectiles/guns/projectile/shotgun.html
@@ -0,0 +1 @@
+code/modules/projectiles/guns/projectile/shotgun.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/projectiles/guns/syringe_gun.html b/code/modules/projectiles/guns/syringe_gun.html
new file mode 100644
index 00000000000..04867401268
--- /dev/null
+++ b/code/modules/projectiles/guns/syringe_gun.html
@@ -0,0 +1 @@
+code/modules/projectiles/guns/syringe_gun.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/projectiles/projectile/bullets.html b/code/modules/projectiles/projectile/bullets.html
new file mode 100644
index 00000000000..47e5f539c40
--- /dev/null
+++ b/code/modules/projectiles/projectile/bullets.html
@@ -0,0 +1 @@
+code/modules/projectiles/projectile/bullets.dm - Space Station 13Space Station 13 - Modules - Types
...Rather a large amount of stamina damage. Used in the mime mecha
\ No newline at end of file
diff --git a/code/modules/projectiles/projectile_base.html b/code/modules/projectiles/projectile_base.html
new file mode 100644
index 00000000000..f3194ad0b7c
--- /dev/null
+++ b/code/modules/projectiles/projectile_base.html
@@ -0,0 +1 @@
+code/modules/projectiles/projectile_base.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
How many pixels to move the muzzle flash up so your character doesn't look like they're shitting out lasers.
Define Details
MOVES_HITSCAN
Is this a hitscan projectile or not, if so move like one
MUZZLE_EFFECT_PIXEL_INCREMENT
How many pixels to move the muzzle flash up so your character doesn't look like they're shitting out lasers.
\ No newline at end of file
diff --git a/code/modules/reagents/chemistry/chemical_reaction.html b/code/modules/reagents/chemistry/chemical_reaction.html
new file mode 100644
index 00000000000..4cee1c394c4
--- /dev/null
+++ b/code/modules/reagents/chemistry/chemical_reaction.html
@@ -0,0 +1 @@
+code/modules/reagents/chemistry/chemical_reaction.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/reagents/chemistry/reagents/admin_reagents.html b/code/modules/reagents/chemistry/reagents/admin_reagents.html
new file mode 100644
index 00000000000..77964a3c6cc
--- /dev/null
+++ b/code/modules/reagents/chemistry/reagents/admin_reagents.html
@@ -0,0 +1 @@
+code/modules/reagents/chemistry/reagents/admin_reagents.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/reagents/chemistry/reagents/alcohol.html b/code/modules/reagents/chemistry/reagents/alcohol.html
new file mode 100644
index 00000000000..a6afd9e7040
--- /dev/null
+++ b/code/modules/reagents/chemistry/reagents/alcohol.html
@@ -0,0 +1 @@
+code/modules/reagents/chemistry/reagents/alcohol.dm - Space Station 13Space Station 13 - Modules - Types
An EXTREMELY powerful drink. Smashed in seconds, dead in minutes.
\ No newline at end of file
diff --git a/code/modules/reagents/chemistry/reagents/blob_reagents.html b/code/modules/reagents/chemistry/reagents/blob_reagents.html
new file mode 100644
index 00000000000..72022423d92
--- /dev/null
+++ b/code/modules/reagents/chemistry/reagents/blob_reagents.html
@@ -0,0 +1 @@
+code/modules/reagents/chemistry/reagents/blob_reagents.dm - Space Station 13Space Station 13 - Modules - Types
does low burn damage and stamina damage and cools targets down
\ No newline at end of file
diff --git a/code/modules/reagents/chemistry/reagents/drugs.html b/code/modules/reagents/chemistry/reagents/drugs.html
new file mode 100644
index 00000000000..beaaf476638
--- /dev/null
+++ b/code/modules/reagents/chemistry/reagents/drugs.html
@@ -0,0 +1 @@
+code/modules/reagents/chemistry/reagents/drugs.dm - Space Station 13Space Station 13 - Modules - Types
This filter proc makes a visual effect where the object is split into fragments, with vertical lines cut out of them. It will appear as 2 seperate things are made of the one object that was cut out
\ No newline at end of file
diff --git a/code/modules/reagents/chemistry/reagents/food_reagents.html b/code/modules/reagents/chemistry/reagents/food_reagents.html
new file mode 100644
index 00000000000..c060b7de530
--- /dev/null
+++ b/code/modules/reagents/chemistry/reagents/food_reagents.html
@@ -0,0 +1,2 @@
+code/modules/reagents/chemistry/reagents/food_reagents.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/reagents/chemistry/reagents/medicine.html b/code/modules/reagents/chemistry/reagents/medicine.html
new file mode 100644
index 00000000000..393b4d32d03
--- /dev/null
+++ b/code/modules/reagents/chemistry/reagents/medicine.html
@@ -0,0 +1 @@
+code/modules/reagents/chemistry/reagents/medicine.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/reagents/chemistry/reagents/misc_reagents.html b/code/modules/reagents/chemistry/reagents/misc_reagents.html
new file mode 100644
index 00000000000..5d47e815759
--- /dev/null
+++ b/code/modules/reagents/chemistry/reagents/misc_reagents.html
@@ -0,0 +1 @@
+code/modules/reagents/chemistry/reagents/misc_reagents.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/reagents/chemistry/reagents/toxins.html b/code/modules/reagents/chemistry/reagents/toxins.html
new file mode 100644
index 00000000000..cde45797b34
--- /dev/null
+++ b/code/modules/reagents/chemistry/reagents/toxins.html
@@ -0,0 +1 @@
+code/modules/reagents/chemistry/reagents/toxins.dm - Space Station 13Space Station 13 - Modules - Types
This version has it's shocks much less frequently, while retaining the shock multiplier
\ No newline at end of file
diff --git a/code/modules/reagents/chemistry/reagents/water.html b/code/modules/reagents/chemistry/reagents/water.html
new file mode 100644
index 00000000000..b7a9139f2a9
--- /dev/null
+++ b/code/modules/reagents/chemistry/reagents/water.html
@@ -0,0 +1 @@
+code/modules/reagents/chemistry/reagents/water.dm - Space Station 13Space Station 13 - Modules - Types
if you somehow managed to extract this from someone, dont splash it on yourself and have a smoke
\ No newline at end of file
diff --git a/code/modules/reagents/chemistry/reagents_datum.html b/code/modules/reagents/chemistry/reagents_datum.html
new file mode 100644
index 00000000000..6c509be1bef
--- /dev/null
+++ b/code/modules/reagents/chemistry/reagents_datum.html
@@ -0,0 +1 @@
+code/modules/reagents/chemistry/reagents_datum.dm - Space Station 13Space Station 13 - Modules - Types
Flashfire is a proc used to log fire causing chemical reactions.
\ No newline at end of file
diff --git a/code/modules/reagents/chemistry/reagents_holder.html b/code/modules/reagents/chemistry/reagents_holder.html
new file mode 100644
index 00000000000..3f5b523185a
--- /dev/null
+++ b/code/modules/reagents/chemistry/reagents_holder.html
@@ -0,0 +1,2 @@
+code/modules/reagents/chemistry/reagents_holder.dm - Space Station 13Space Station 13 - Modules - Types
Returns a random reagent ID, with real non blacklisted balance boosting action!
\ No newline at end of file
diff --git a/code/modules/reagents/chemistry/recipes/food_reactions.html b/code/modules/reagents/chemistry/recipes/food_reactions.html
new file mode 100644
index 00000000000..13503731576
--- /dev/null
+++ b/code/modules/reagents/chemistry/recipes/food_reactions.html
@@ -0,0 +1 @@
+code/modules/reagents/chemistry/recipes/food_reactions.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/reagents/chemistry/recipes/pyrotechnics.html b/code/modules/reagents/chemistry/recipes/pyrotechnics.html
new file mode 100644
index 00000000000..8d19da4dc41
--- /dev/null
+++ b/code/modules/reagents/chemistry/recipes/pyrotechnics.html
@@ -0,0 +1 @@
+code/modules/reagents/chemistry/recipes/pyrotechnics.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/reagents/chemistry/recipes/toxins_reactions.html b/code/modules/reagents/chemistry/recipes/toxins_reactions.html
new file mode 100644
index 00000000000..fb35b3bf287
--- /dev/null
+++ b/code/modules/reagents/chemistry/recipes/toxins_reactions.html
@@ -0,0 +1 @@
+code/modules/reagents/chemistry/recipes/toxins_reactions.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/reagents/reagent_containers/applicator.html b/code/modules/reagents/reagent_containers/applicator.html
new file mode 100644
index 00000000000..28e775c392f
--- /dev/null
+++ b/code/modules/reagents/reagent_containers/applicator.html
@@ -0,0 +1 @@
+code/modules/reagents/reagent_containers/applicator.dm - Space Station 13Space Station 13 - Modules - Types
It magically goes through hardsuits. Don't ask how.
\ No newline at end of file
diff --git a/code/modules/reagents/reagent_containers/chemical_bottle.html b/code/modules/reagents/reagent_containers/chemical_bottle.html
new file mode 100644
index 00000000000..ad00540c13e
--- /dev/null
+++ b/code/modules/reagents/reagent_containers/chemical_bottle.html
@@ -0,0 +1 @@
+code/modules/reagents/reagent_containers/chemical_bottle.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/reagents/reagent_containers/dropper.html b/code/modules/reagents/reagent_containers/dropper.html
new file mode 100644
index 00000000000..e911945e08c
--- /dev/null
+++ b/code/modules/reagents/reagent_containers/dropper.html
@@ -0,0 +1 @@
+code/modules/reagents/reagent_containers/dropper.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/reagents/reagent_containers/glass_containers.html b/code/modules/reagents/reagent_containers/glass_containers.html
new file mode 100644
index 00000000000..e41c061bf76
--- /dev/null
+++ b/code/modules/reagents/reagent_containers/glass_containers.html
@@ -0,0 +1 @@
+code/modules/reagents/reagent_containers/glass_containers.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/reagents/reagent_containers/hypospray.html b/code/modules/reagents/reagent_containers/hypospray.html
new file mode 100644
index 00000000000..2f7390f49a7
--- /dev/null
+++ b/code/modules/reagents/reagent_containers/hypospray.html
@@ -0,0 +1 @@
+code/modules/reagents/reagent_containers/hypospray.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/reagents/reagent_containers/iv_bag.html b/code/modules/reagents/reagent_containers/iv_bag.html
new file mode 100644
index 00000000000..f687e4be11f
--- /dev/null
+++ b/code/modules/reagents/reagent_containers/iv_bag.html
@@ -0,0 +1 @@
+code/modules/reagents/reagent_containers/iv_bag.dm - Space Station 13Space Station 13 - Modules - Types
Don't use this - just an abstract type to allow blood bags to have a common blood_type var for ease of creation.
\ No newline at end of file
diff --git a/code/modules/reagents/reagent_containers/pill.html b/code/modules/reagents/reagent_containers/pill.html
new file mode 100644
index 00000000000..a2b84e288f3
--- /dev/null
+++ b/code/modules/reagents/reagent_containers/pill.html
@@ -0,0 +1 @@
+code/modules/reagents/reagent_containers/pill.dm - Space Station 13Space Station 13 - Modules - Types
A swallowable pill. Can be dissolved in reagent containers.
\ No newline at end of file
diff --git a/code/modules/reagents/reagent_containers/spray.html b/code/modules/reagents/reagent_containers/spray.html
new file mode 100644
index 00000000000..4e6d0969d77
--- /dev/null
+++ b/code/modules/reagents/reagent_containers/spray.html
@@ -0,0 +1,2 @@
+code/modules/reagents/reagent_containers/spray.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/recycling/belt-placer.html b/code/modules/recycling/belt-placer.html
new file mode 100644
index 00000000000..c4615e43247
--- /dev/null
+++ b/code/modules/recycling/belt-placer.html
@@ -0,0 +1 @@
+code/modules/recycling/belt-placer.dm - Space Station 13Space Station 13 - Modules - Types
Stores conveyor belts, click floor to make belt, use a conveyor switch on this to link all belts to that lever.
\ No newline at end of file
diff --git a/code/modules/redis/redis_callback.html b/code/modules/redis/redis_callback.html
new file mode 100644
index 00000000000..26b5f99b980
--- /dev/null
+++ b/code/modules/redis/redis_callback.html
@@ -0,0 +1 @@
+code/modules/redis/redis_callback.dm - Space Station 13Space Station 13 - Modules - Types
Callback datum for subscribed redis channel handling
\ No newline at end of file
diff --git a/code/modules/redis/redis_message.html b/code/modules/redis/redis_message.html
new file mode 100644
index 00000000000..ee57fa5ac2d
--- /dev/null
+++ b/code/modules/redis/redis_message.html
@@ -0,0 +1 @@
+code/modules/redis/redis_message.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/backup_console.html b/code/modules/research/backup_console.html
new file mode 100644
index 00000000000..4c5db34421a
--- /dev/null
+++ b/code/modules/research/backup_console.html
@@ -0,0 +1 @@
+code/modules/research/backup_console.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs.html b/code/modules/research/designs.html
new file mode 100644
index 00000000000..7b898900eb2
--- /dev/null
+++ b/code/modules/research/designs.html
@@ -0,0 +1 @@
+code/modules/research/designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/AI_module_designs.html b/code/modules/research/designs/AI_module_designs.html
new file mode 100644
index 00000000000..75f28b4c289
--- /dev/null
+++ b/code/modules/research/designs/AI_module_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/AI_module_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/autolathe_designs.html b/code/modules/research/designs/autolathe_designs.html
new file mode 100644
index 00000000000..b29cec33fa1
--- /dev/null
+++ b/code/modules/research/designs/autolathe_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/autolathe_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/biogenerator_designs.html b/code/modules/research/designs/biogenerator_designs.html
new file mode 100644
index 00000000000..f486bfb1bca
--- /dev/null
+++ b/code/modules/research/designs/biogenerator_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/biogenerator_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/bluespace_designs.html b/code/modules/research/designs/bluespace_designs.html
new file mode 100644
index 00000000000..aad70bd8872
--- /dev/null
+++ b/code/modules/research/designs/bluespace_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/bluespace_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/comp_board_designs.html b/code/modules/research/designs/comp_board_designs.html
new file mode 100644
index 00000000000..49772c79131
--- /dev/null
+++ b/code/modules/research/designs/comp_board_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/comp_board_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/equipment_designs.html b/code/modules/research/designs/equipment_designs.html
new file mode 100644
index 00000000000..b7b398a4bce
--- /dev/null
+++ b/code/modules/research/designs/equipment_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/equipment_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/janitorial_designs.html b/code/modules/research/designs/janitorial_designs.html
new file mode 100644
index 00000000000..a51f38b6993
--- /dev/null
+++ b/code/modules/research/designs/janitorial_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/janitorial_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/machine_designs.html b/code/modules/research/designs/machine_designs.html
new file mode 100644
index 00000000000..9cf9adc625a
--- /dev/null
+++ b/code/modules/research/designs/machine_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/machine_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/mecha_designs.html b/code/modules/research/designs/mecha_designs.html
new file mode 100644
index 00000000000..03764b72aed
--- /dev/null
+++ b/code/modules/research/designs/mecha_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/mecha_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/mechfabricator_designs.html b/code/modules/research/designs/mechfabricator_designs.html
new file mode 100644
index 00000000000..9949778d1d0
--- /dev/null
+++ b/code/modules/research/designs/mechfabricator_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/mechfabricator_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/medical_designs.html b/code/modules/research/designs/medical_designs.html
new file mode 100644
index 00000000000..826bc8143ad
--- /dev/null
+++ b/code/modules/research/designs/medical_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/medical_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/mining_designs.html b/code/modules/research/designs/mining_designs.html
new file mode 100644
index 00000000000..fb5039a562b
--- /dev/null
+++ b/code/modules/research/designs/mining_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/mining_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/misc_designs.html b/code/modules/research/designs/misc_designs.html
new file mode 100644
index 00000000000..8aa080ff2d2
--- /dev/null
+++ b/code/modules/research/designs/misc_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/misc_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/modsuit_designs.html b/code/modules/research/designs/modsuit_designs.html
new file mode 100644
index 00000000000..f87ffb33896
--- /dev/null
+++ b/code/modules/research/designs/modsuit_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/modsuit_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/power_designs.html b/code/modules/research/designs/power_designs.html
new file mode 100644
index 00000000000..07e6e0dd1b7
--- /dev/null
+++ b/code/modules/research/designs/power_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/power_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/smelting_designs.html b/code/modules/research/designs/smelting_designs.html
new file mode 100644
index 00000000000..0a7c45fa3a3
--- /dev/null
+++ b/code/modules/research/designs/smelting_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/smelting_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/stock_parts_designs.html b/code/modules/research/designs/stock_parts_designs.html
new file mode 100644
index 00000000000..daa7f86abd5
--- /dev/null
+++ b/code/modules/research/designs/stock_parts_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/stock_parts_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/telecomms_designs.html b/code/modules/research/designs/telecomms_designs.html
new file mode 100644
index 00000000000..d042195d87c
--- /dev/null
+++ b/code/modules/research/designs/telecomms_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/telecomms_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/designs/weapon_designs.html b/code/modules/research/designs/weapon_designs.html
new file mode 100644
index 00000000000..64f6d2a08be
--- /dev/null
+++ b/code/modules/research/designs/weapon_designs.html
@@ -0,0 +1 @@
+code/modules/research/designs/weapon_designs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/research/research.html b/code/modules/research/research.html
new file mode 100644
index 00000000000..23905e2e447
--- /dev/null
+++ b/code/modules/research/research.html
@@ -0,0 +1 @@
+code/modules/research/research.dm - Space Station 13Space Station 13 - Modules - Types
not meant to be raised by deconstruction, do not give objects toxins as an origin_tech
\ No newline at end of file
diff --git a/code/modules/research/xenobiology/xenobiology.html b/code/modules/research/xenobiology/xenobiology.html
new file mode 100644
index 00000000000..1aa5e7e6255
--- /dev/null
+++ b/code/modules/research/xenobiology/xenobiology.html
@@ -0,0 +1 @@
+code/modules/research/xenobiology/xenobiology.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/response_team/ert_outfits.html b/code/modules/response_team/ert_outfits.html
new file mode 100644
index 00000000000..afad9bc43ad
--- /dev/null
+++ b/code/modules/response_team/ert_outfits.html
@@ -0,0 +1 @@
+code/modules/response_team/ert_outfits.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/ruins/lavalandruin_code/dead_ratvar.html b/code/modules/ruins/lavalandruin_code/dead_ratvar.html
new file mode 100644
index 00000000000..fccc95aeffe
--- /dev/null
+++ b/code/modules/ruins/lavalandruin_code/dead_ratvar.html
@@ -0,0 +1 @@
+code/modules/ruins/lavalandruin_code/dead_ratvar.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/ruins/lavalandruin_code/sin_ruins.html b/code/modules/ruins/lavalandruin_code/sin_ruins.html
new file mode 100644
index 00000000000..160bf1b89b5
--- /dev/null
+++ b/code/modules/ruins/lavalandruin_code/sin_ruins.html
@@ -0,0 +1 @@
+code/modules/ruins/lavalandruin_code/sin_ruins.dm - Space Station 13Space Station 13 - Modules - Types
Envy's knife: Found in the Envy ruin. Attackers take on the appearance of whoever they strike.
\ No newline at end of file
diff --git a/code/modules/security_levels/security_level_datums.html b/code/modules/security_levels/security_level_datums.html
new file mode 100644
index 00000000000..17e333d39c2
--- /dev/null
+++ b/code/modules/security_levels/security_level_datums.html
@@ -0,0 +1 @@
+code/modules/security_levels/security_level_datums.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/server_commands/servermsg.html b/code/modules/server_commands/servermsg.html
new file mode 100644
index 00000000000..3909abcf1dc
--- /dev/null
+++ b/code/modules/server_commands/servermsg.html
@@ -0,0 +1 @@
+code/modules/server_commands/servermsg.dm - Space Station 13Space Station 13 - Modules - Types
Datum to handle both sending and receiving of server commands
\ No newline at end of file
diff --git a/code/modules/shuttle.html b/code/modules/shuttle.html
new file mode 100644
index 00000000000..3c2501c005e
--- /dev/null
+++ b/code/modules/shuttle.html
@@ -0,0 +1,128 @@
+code/modules/shuttle/README.md - Space Station 13Space Station 13 - Modules - Types
The following readme was last updated during Late 2015. The changes between Paradise & TG's shuttle system has diverged greatly since then. Do not take the documentation here's description of differences between tg & paradise seriously without double checking.
+
Shuttle system
Introduction
+
This folder belongs to the "shuttle" system. The shuttle system is used to control the
+"Shuttles" on the map, which are, at their core, a rectangular area of turfs that "move".
+
The shuttle system is comprised of two primary files.
+shuttle.dm,
+which contains the primary code, and
+shuttles.dm
+which contains the back-end controller system.
+There are a few other files, but it isn't worth noting on.
+
Shuttles are used for many purposes, including the end of rounds, so it's important to
+understand them.
+
Docking ports
obj docking_port
+
The /obj/docking_port type is the primary component of the shuttle system. Almost all of
+the shuttle system is controlled by the docking ports, the only thing that isn't, really,
+is the shuttle manager, which manages, you guessed it, the docking ports.
+
Docking ports are split into two main types: /obj/docking_port/stationary, and
+/obj/docking_port/mobile, but they share a few variables and procs defined at the
+/obj/docking_port level.
+
Variables
+
id: This variable is used for any plain-text references to the docking port. It should
+always be lowercase.
+
width, height: The width and height variables are absolute value variables which
+define the bounding box of the docking port. It is very important to note that these are
+different from the dwidth and dheight in terms of how they are counted. As they are
+absolute representations of the size of the bounding box, they need to be equal to the
+amount of turfs on the side of the bounding box. An easy way to think of it is, if you
+start at the very corner piece, you would start the count at 1 from that corner piece,
+IE, you move 1 turf in any direction, it would be 2.
+
A crude ASCII example:
+
||D|||
+
+
Would be classed by the values width = 6, height = 1.
+
It is important to note that bounding boxes are always rectangular. However, shuttles
+are allowed to be any shape they so wish, as anything that matches the turf_type of
+stationary docking ports will not be moved with the shuttle- by default, this is equal to
+/turf/space.
+Another quick example of this:
This, even though it is not exactly a rectangle, would be classified by the values
+width = 7, height = 7.
+
dwidth, dheight: The relative offset of the docking port to the bounding box. These
+values are calculated relative to the bounding box. The values are counted from the
+bottom left corner of the bounding box, relative to the direction of the docking port.
+The "bottom left corner" changes depending on the direction of the docking port object.
+so a docking port facing north that looks something like this:
+
|||
+|||
+|||D|
+|||||
+
+
Would have a dwidth value of 3, and a dheight value of 1.
+A docking port facing south that looks like this:
+
||||||
+|||D||
+ ||||
+
+
Would have a dwidth value of 2, and a dheight value of 1
+
/obj/docking_port/mobile
+
/obj/docking_port/mobile, or, "Mobile" docking ports are used to define and control the
+movement of the shuttle chunks. The "Mobile" docking port moves with the shuttle, and is
+essentially attached to it. A "Mobile" docking port only moves to predefined positions
+on the map, referred to as "Stationary" docking ports.
+
/obj/docking_port/mobile
+
/obj/docking_port/stationary, or "Stationary" docking ports are used as predefined
+references for where "Mobile" docking ports may move. "Stationary" docking ports do not
+move unless something has gone horribly wrong. They are essentially static points in
+space. Going into details, whenever a "Mobile" docking port "moves", it registers with the
+stationary docking port that it was requested to move to, and moves itself to it. It is
+important to note that docking ports will switch direction on the fly, and a "Stationary"
+docking port not matching the initial direction of the "Mobile" docking port will cause
+the entire shuttle to be rotated in order for the "Mobile" docking port to face the same
+direction as the "Stationary" docking port.
+
Modifications
+
There are three main differences between -tg-station13's shuttle system and the one in
+use on Paradise, and none are very complex.
+
Airlocks
+
The biggest modification comes in the form of how docking ports interact with airlocks.
+With -tg-station13's base code, any door on the shuttle will be closed, and any door
+directly next to the mobile docking port will be closed off of the shuttle.
+
In Paradise, however, when a mobile docking port undocks from the stationary docking port,
+it will look for any door in the machine list who's id_tag variable matches the
+stationary docking port's id variable. When it finds these doors, it will close and
+bolt the doors shut. Any airlocks on the shuttle will be closed as per usual, but any
+airlocks within the shuttle with the id_tag of s_docking_airlock will also be bolted,
+and will stay bolted until the shuttle has exited transit space.
+
Initialization
+
In -tg-station13's shuttle system, all docking ports register with the shuttle controller
+on New(). However, as Paradise uses a different system for the shuttle controller, it is
+not yet created when New() is called.
+
To fix this issue, all docking ports will not initialize automatically on New().
+Instead, they are manually initialized by the shuttle controller when it is created, via
+a proc called initialize().
\ No newline at end of file
diff --git a/code/modules/shuttle/shuttle_manipulator.html b/code/modules/shuttle/shuttle_manipulator.html
new file mode 100644
index 00000000000..1c203dcb68e
--- /dev/null
+++ b/code/modules/shuttle/shuttle_manipulator.html
@@ -0,0 +1 @@
+code/modules/shuttle/shuttle_manipulator.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
We really would rather not have admins altering this, this is the cooldown for the preview/shuttle spawning on the shuttle manipulator
Define Details
PREVIEW_OR_SHUTTLE_SPAWN_COOLDOWN
We really would rather not have admins altering this, this is the cooldown for the preview/shuttle spawning on the shuttle manipulator
\ No newline at end of file
diff --git a/code/modules/space_management/level_traits.html b/code/modules/space_management/level_traits.html
new file mode 100644
index 00000000000..03f5648e4f9
--- /dev/null
+++ b/code/modules/space_management/level_traits.html
@@ -0,0 +1 @@
+code/modules/space_management/level_traits.dm - Space Station 13Space Station 13 - Modules - Types
Proc to get a list of all the linked-together Z-Levels
\ No newline at end of file
diff --git a/code/modules/space_management/space_transition.html b/code/modules/space_management/space_transition.html
new file mode 100644
index 00000000000..6b0df70ebe1
--- /dev/null
+++ b/code/modules/space_management/space_transition.html
@@ -0,0 +1 @@
+code/modules/space_management/space_transition.dm - Space Station 13Space Station 13 - Modules - Types
this is explicitly utilitarian datum type made specially for the space map generation and are absolutely unusable for anything else
\ No newline at end of file
diff --git a/code/modules/spatial_grid/cell_tracker.html b/code/modules/spatial_grid/cell_tracker.html
new file mode 100644
index 00000000000..242e77c9eaa
--- /dev/null
+++ b/code/modules/spatial_grid/cell_tracker.html
@@ -0,0 +1 @@
+code/modules/spatial_grid/cell_tracker.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/station_goals/bluespace_tap.html b/code/modules/station_goals/bluespace_tap.html
new file mode 100644
index 00000000000..8761a84a0ee
--- /dev/null
+++ b/code/modules/station_goals/bluespace_tap.html
@@ -0,0 +1 @@
+code/modules/station_goals/bluespace_tap.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
A station goal that consumes enormous amounts of power to generate (mostly fluff) rewards
Define Details
BASE_POINTS
Amount of points generated per cycle per 50KW for the first 500KW
POINTS_PER_W
Points generated per cycle for each Watt of power consumption
\ No newline at end of file
diff --git a/code/modules/supply/supply_README.html b/code/modules/supply/supply_README.html
new file mode 100644
index 00000000000..69065e1a0ba
--- /dev/null
+++ b/code/modules/supply/supply_README.html
@@ -0,0 +1,17 @@
+code/modules/supply/supply_README.md - Space Station 13Space Station 13 - Modules - Types
code/modules/supply/supply_README.md
IMPORTANT SUPPLY PACKS NOTES
Pack Parameters
+
+
only secure crate types use the access var (and are lockable)
+
hidden packs only show up when the computer has been hacked.
+
Contraband is obtainable through modified supplycomp circuitboards.
+
+
Bug Prevention
+
+
Don't add living things to crates, that's bad, it will break the shuttle.
+
Do NOT set the price of any crates below 7 points. Doing so allows infinite points.
+
+
Pack Organization
+
+
Anytime a supply pack is ordered, it needs to be put in the dm file that matches its type
+
Anytime a supply pack category becomes overloaded (think 20+ packs) you should consider splitting it into multiple categories
+
Avoid throwing things in the miscellanious category unless it really doesn't have a place elsewhere
+
\ No newline at end of file
diff --git a/code/modules/supply/supply_packs/pack_abstract.html b/code/modules/supply/supply_packs/pack_abstract.html
new file mode 100644
index 00000000000..92faee61858
--- /dev/null
+++ b/code/modules/supply/supply_packs/pack_abstract.html
@@ -0,0 +1,2 @@
+code/modules/supply/supply_packs/pack_abstract.dm - Space Station 13Space Station 13 - Modules - Types
Abstract supply packs that don't contain any goods, but instead represent purchases that cargo can make.
+A supply pack that does not contain physical objects, but instead fires some sort of callback when ordered.
A sample supply pack that notifies admins when it is purchased, but provides no items.
\ No newline at end of file
diff --git a/code/modules/supply/supply_packs/pack_emergency.html b/code/modules/supply/supply_packs/pack_emergency.html
new file mode 100644
index 00000000000..e3af436f53f
--- /dev/null
+++ b/code/modules/supply/supply_packs/pack_emergency.html
@@ -0,0 +1 @@
+code/modules/supply/supply_packs/pack_emergency.dm - Space Station 13Space Station 13 - Modules - Types
Section header - use these to set default supply group and crate type for sections
\ No newline at end of file
diff --git a/code/modules/supply/supply_packs/pack_engineering.html b/code/modules/supply/supply_packs/pack_engineering.html
new file mode 100644
index 00000000000..1235726794f
--- /dev/null
+++ b/code/modules/supply/supply_packs/pack_engineering.html
@@ -0,0 +1 @@
+code/modules/supply/supply_packs/pack_engineering.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/supply/supply_packs/pack_miscellaneous.html b/code/modules/supply/supply_packs/pack_miscellaneous.html
new file mode 100644
index 00000000000..373a064bed2
--- /dev/null
+++ b/code/modules/supply/supply_packs/pack_miscellaneous.html
@@ -0,0 +1 @@
+code/modules/supply/supply_packs/pack_miscellaneous.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/supply/supply_packs/pack_organic.html b/code/modules/supply/supply_packs/pack_organic.html
new file mode 100644
index 00000000000..1754370fe85
--- /dev/null
+++ b/code/modules/supply/supply_packs/pack_organic.html
@@ -0,0 +1,2 @@
+code/modules/supply/supply_packs/pack_organic.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/supply/supply_packs/pack_security.html b/code/modules/supply/supply_packs/pack_security.html
new file mode 100644
index 00000000000..837d82a5b1b
--- /dev/null
+++ b/code/modules/supply/supply_packs/pack_security.html
@@ -0,0 +1 @@
+code/modules/supply/supply_packs/pack_security.dm - Space Station 13Space Station 13 - Modules - Types
Starter pack for an officer. Contains everything in a locker but backpack (officer already start with one). Convenient way to equip new officer on highpop.
\ No newline at end of file
diff --git a/code/modules/supply/supply_packs/pack_shuttle.html b/code/modules/supply/supply_packs/pack_shuttle.html
new file mode 100644
index 00000000000..aac9cec31c0
--- /dev/null
+++ b/code/modules/supply/supply_packs/pack_shuttle.html
@@ -0,0 +1 @@
+code/modules/supply/supply_packs/pack_shuttle.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/surgery/abstract_steps.html b/code/modules/surgery/abstract_steps.html
new file mode 100644
index 00000000000..29befce6eec
--- /dev/null
+++ b/code/modules/surgery/abstract_steps.html
@@ -0,0 +1,18 @@
+code/modules/surgery/abstract_steps.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
This file consists of how we manage somewhat non-linear surgeries.
+Essentially what goes on here is that we have some "proxy" surgery steps that get inserted into existing surgeries at key points.
+Depending on the tool used after that point, the proxy step chooses the next step(s) that should be executed.
A partial surgery that consists of a few steps that may be found in the middle of another operation.
+An existing surgery can yield to an intermediate surgery for a few steps by way of a proxy surgery_step.
Here's the special sauce: a surgery step that can pretend to be a few different surgery steps.
+These proxy steps will, depending on the tool that's used, either continue to the next surgery step, or temporarily spin off a new surgery
+by adding new steps to the current surgery.
This file consists of how we manage somewhat non-linear surgeries.
+Essentially what goes on here is that we have some "proxy" surgery steps that get inserted into existing surgeries at key points.
+Depending on the tool used after that point, the proxy step chooses the next step(s) that should be executed.
+
These proxy steps use a list of surgeries, so a full procedure can be inserted into an existing surgery. Just make sure that the user's state
+after an intermediate surgery is (in the context of the surgery) identical to before the intermediate surgery. Don't heal things that will
+need to be healed during the surgery, for example.
+
Adding a new intermediate surgery:
+
+
Define a new intermediate surgery datum with the list of steps that you want to inject. This forms one surgery "branch".
+
Define a new proxy surgery step with branches containing the typepath of your new surgery datum.
+
Insert that surgery step into an existing surgery.
+
\ No newline at end of file
diff --git a/code/modules/surgery/bones.html b/code/modules/surgery/bones.html
new file mode 100644
index 00000000000..226b70db173
--- /dev/null
+++ b/code/modules/surgery/bones.html
@@ -0,0 +1 @@
+code/modules/surgery/bones.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/surgery/organs/augments_arms.html b/code/modules/surgery/organs/augments_arms.html
new file mode 100644
index 00000000000..5ab1237c679
--- /dev/null
+++ b/code/modules/surgery/organs/augments_arms.html
@@ -0,0 +1 @@
+code/modules/surgery/organs/augments_arms.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/surgery/organs/blood.html b/code/modules/surgery/organs/blood.html
new file mode 100644
index 00000000000..b4b02651c5e
--- /dev/null
+++ b/code/modules/surgery/organs/blood.html
@@ -0,0 +1 @@
+code/modules/surgery/organs/blood.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
\ No newline at end of file
diff --git a/code/modules/surgery/organs/organ_datums/heart_datum.html b/code/modules/surgery/organs/organ_datums/heart_datum.html
new file mode 100644
index 00000000000..b2d0589d3af
--- /dev/null
+++ b/code/modules/surgery/organs/organ_datums/heart_datum.html
@@ -0,0 +1 @@
+code/modules/surgery/organs/organ_datums/heart_datum.dm - Space Station 13Space Station 13 - Modules - Types
A subtype that is always beating. Abductor glands and demon hearts use this.
\ No newline at end of file
diff --git a/code/modules/surgery/organs/organ_external.html b/code/modules/surgery/organs/organ_external.html
new file mode 100644
index 00000000000..c3b8abf586b
--- /dev/null
+++ b/code/modules/surgery/organs/organ_external.html
@@ -0,0 +1 @@
+code/modules/surgery/organs/organ_external.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/surgery/organs/organ_extractor.html b/code/modules/surgery/organs/organ_extractor.html
new file mode 100644
index 00000000000..6a07dbbbde9
--- /dev/null
+++ b/code/modules/surgery/organs/organ_extractor.html
@@ -0,0 +1 @@
+code/modules/surgery/organs/organ_extractor.dm - Space Station 13Space Station 13 - Modules - Types
Advanced abductor version. Is a lot faster with implanting into others
\ No newline at end of file
diff --git a/code/modules/surgery/organs/subtypes/diona_organs.html b/code/modules/surgery/organs/subtypes/diona_organs.html
new file mode 100644
index 00000000000..1726ca76f25
--- /dev/null
+++ b/code/modules/surgery/organs/subtypes/diona_organs.html
@@ -0,0 +1 @@
+code/modules/surgery/organs/subtypes/diona_organs.dm - Space Station 13Space Station 13 - Modules - Types
Turns into a nymph instantly, no transplanting possible.
\ No newline at end of file
diff --git a/code/modules/surgery/organs/subtypes/standard_organs.html b/code/modules/surgery/organs/subtypes/standard_organs.html
new file mode 100644
index 00000000000..a6c36643761
--- /dev/null
+++ b/code/modules/surgery/organs/subtypes/standard_organs.html
@@ -0,0 +1 @@
+code/modules/surgery/organs/subtypes/standard_organs.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/surgery/organs/subtypes/tajaran_organs.html b/code/modules/surgery/organs/subtypes/tajaran_organs.html
new file mode 100644
index 00000000000..b7f4d85402c
--- /dev/null
+++ b/code/modules/surgery/organs/subtypes/tajaran_organs.html
@@ -0,0 +1 @@
+code/modules/surgery/organs/subtypes/tajaran_organs.dm - Space Station 13Space Station 13 - Modules - Types
Being the lesser form of Tajara, Farwas have an utterly incurable version of their colourblindness.
\ No newline at end of file
diff --git a/code/modules/surgery/organs/subtypes/vulpkanin_organs.html b/code/modules/surgery/organs/subtypes/vulpkanin_organs.html
new file mode 100644
index 00000000000..5a4ed446821
--- /dev/null
+++ b/code/modules/surgery/organs/subtypes/vulpkanin_organs.html
@@ -0,0 +1 @@
+code/modules/surgery/organs/subtypes/vulpkanin_organs.dm - Space Station 13Space Station 13 - Modules - Types
Being the lesser form of Vulpkanin, Wolpins have an utterly incurable version of their colourblindness.
\ No newline at end of file
diff --git a/code/modules/surgery/organs/vocal_cords.html b/code/modules/surgery/organs/vocal_cords.html
new file mode 100644
index 00000000000..2b77d005e38
--- /dev/null
+++ b/code/modules/surgery/organs/vocal_cords.html
@@ -0,0 +1,2 @@
+code/modules/surgery/organs/vocal_cords.dm - Space Station 13Space Station 13 - Modules - Types
This command forces the listeners to say their true name (so masks and hoods won't help).
+Basic and simple mobs who are forced to state their name and don't have one already will... reveal their actual one!
Supertype of all those commands that make people emote and nothing else. Fuck copypasta.
\ No newline at end of file
diff --git a/code/modules/surgery/organs_internal.html b/code/modules/surgery/organs_internal.html
new file mode 100644
index 00000000000..07f765fe010
--- /dev/null
+++ b/code/modules/surgery/organs_internal.html
@@ -0,0 +1 @@
+code/modules/surgery/organs_internal.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Amount of units to transfer from the container to the organs during disinfection step.
MITO_REVIVAL_COST
Amount of mito necessary to revive an organ
\ No newline at end of file
diff --git a/code/modules/surgery/other.html b/code/modules/surgery/other.html
new file mode 100644
index 00000000000..cbb46404885
--- /dev/null
+++ b/code/modules/surgery/other.html
@@ -0,0 +1 @@
+code/modules/surgery/other.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/surgery/surgery.html b/code/modules/surgery/surgery.html
new file mode 100644
index 00000000000..ce6efab406a
--- /dev/null
+++ b/code/modules/surgery/surgery.html
@@ -0,0 +1 @@
+code/modules/surgery/surgery.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/surgery/tending.html b/code/modules/surgery/tending.html
new file mode 100644
index 00000000000..a067725203a
--- /dev/null
+++ b/code/modules/surgery/tending.html
@@ -0,0 +1 @@
+code/modules/surgery/tending.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/surgery/tools.html b/code/modules/surgery/tools.html
new file mode 100644
index 00000000000..795cfe926eb
--- /dev/null
+++ b/code/modules/surgery/tools.html
@@ -0,0 +1 @@
+code/modules/surgery/tools.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/telesci/gps.html b/code/modules/telesci/gps.html
new file mode 100644
index 00000000000..28342542d69
--- /dev/null
+++ b/code/modules/telesci/gps.html
@@ -0,0 +1 @@
+code/modules/telesci/gps.dm - Space Station 13Space Station 13 - Modules - Types
A small item that reports its current location. Has a tag to help distinguish between them.
\ No newline at end of file
diff --git a/code/modules/telesci/rcs.html b/code/modules/telesci/rcs.html
new file mode 100644
index 00000000000..68f97ac1a49
--- /dev/null
+++ b/code/modules/telesci/rcs.html
@@ -0,0 +1 @@
+code/modules/telesci/rcs.dm - Space Station 13Space Station 13 - Modules - Types
Used to teleport crates and closets to cargo telepads.
\ No newline at end of file
diff --git a/code/modules/telesci/telepad.html b/code/modules/telesci/telepad.html
new file mode 100644
index 00000000000..d8e6e54b82e
--- /dev/null
+++ b/code/modules/telesci/telepad.html
@@ -0,0 +1 @@
+code/modules/telesci/telepad.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/tgs.html b/code/modules/tgs.html
new file mode 100644
index 00000000000..e6643d0d67a
--- /dev/null
+++ b/code/modules/tgs.html
@@ -0,0 +1,14 @@
+code/modules/tgs/README.md - Space Station 13Space Station 13 - Modules - Types
DMAPI Internals
This folder should be placed on it's 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.
+
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.
\ No newline at end of file
diff --git a/code/modules/tgs/core.html b/code/modules/tgs/core.html
new file mode 100644
index 00000000000..f3db1230fb2
--- /dev/null
+++ b/code/modules/tgs/core.html
@@ -0,0 +1,7 @@
+code/modules/tgs/core/README.md - Space Station 13Space Station 13 - 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.
+
tgs_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.
+
tgs_datum.dm contains the /datum/tgs_api declarations that all APIs must implement.
+
tgs_version.dm contains the /datum/tgs_version definition
+
\ No newline at end of file
diff --git a/code/modules/tgs/v3210.html b/code/modules/tgs/v3210.html
new file mode 100644
index 00000000000..7c13e6c3ae4
--- /dev/null
+++ b/code/modules/tgs/v3210.html
@@ -0,0 +1,5 @@
+code/modules/tgs/v3210/README.md - Space Station 13Space Station 13 - Modules - Types
DMAPI V3
This DMAPI implements bridge using file output which TGS monitors for.
v3_commands.dm contains functions relating to /datum/tgs_chat_commands.
+
\ No newline at end of file
diff --git a/code/modules/tgs/v4.html b/code/modules/tgs/v4.html
new file mode 100644
index 00000000000..c328672de99
--- /dev/null
+++ b/code/modules/tgs/v4.html
@@ -0,0 +1,5 @@
+code/modules/tgs/v4/README.md - Space Station 13Space Station 13 - Modules - Types
DMAPI V4
This DMAPI implements bridge requests using file output which TGS monitors for. It has a safe mode restriction.
v4_commands.dm contains functions relating to /datum/tgs_chat_commands.
+
\ No newline at end of file
diff --git a/code/modules/tgs/v5.html b/code/modules/tgs/v5.html
new file mode 100644
index 00000000000..4ab963d24b4
--- /dev/null
+++ b/code/modules/tgs/v5.html
@@ -0,0 +1,12 @@
+code/modules/tgs/v5/README.md - Space Station 13Space Station 13 - Modules - Types
DMAPI V5
This DMAPI implements bridge requests using HTTP GET requests to TGS. It has no security restrictions.
+
+
v5_interop_version.dm contains the version of the API used between the DMAPI and TGS.
\ No newline at end of file
diff --git a/code/modules/tgui/external.html b/code/modules/tgui/external.html
new file mode 100644
index 00000000000..249ccb04847
--- /dev/null
+++ b/code/modules/tgui/external.html
@@ -0,0 +1 @@
+code/modules/tgui/external.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/tgui/modules/ghost_hud_panel.html b/code/modules/tgui/modules/ghost_hud_panel.html
new file mode 100644
index 00000000000..2f13a82ceb6
--- /dev/null
+++ b/code/modules/tgui/modules/ghost_hud_panel.html
@@ -0,0 +1 @@
+code/modules/tgui/modules/ghost_hud_panel.dm - Space Station 13Space Station 13 - Modules - Types
Allows ghosts to view a TGUI window which contains toggles for all HUD types available to them.
\ No newline at end of file
diff --git a/code/modules/tgui/plugins/modal.html b/code/modules/tgui/plugins/modal.html
new file mode 100644
index 00000000000..e2bdc1eb6a3
--- /dev/null
+++ b/code/modules/tgui/plugins/modal.html
@@ -0,0 +1 @@
+code/modules/tgui/plugins/modal.dm - Space Station 13Space Station 13 - Modules - Types
Boolean modal - has yes/no buttons that do different actions depending on which is pressed
\ No newline at end of file
diff --git a/code/modules/tgui/plugins/tgui_login.html b/code/modules/tgui/plugins/tgui_login.html
new file mode 100644
index 00000000000..2acfdee266b
--- /dev/null
+++ b/code/modules/tgui/plugins/tgui_login.html
@@ -0,0 +1 @@
+code/modules/tgui/plugins/tgui_login.dm - Space Station 13Space Station 13 - Modules - Types
Login state (there should be only one for one datum)
\ No newline at end of file
diff --git a/code/modules/tgui/states/always.html b/code/modules/tgui/states/always.html
new file mode 100644
index 00000000000..e96432ee9c7
--- /dev/null
+++ b/code/modules/tgui/states/always.html
@@ -0,0 +1,2 @@
+code/modules/tgui/states/always.dm - Space Station 13Space Station 13 - Modules - Types
code/modules/tgui/states/always.dm
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
\ No newline at end of file
diff --git a/code/modules/tgui/states/conscious.html b/code/modules/tgui/states/conscious.html
new file mode 100644
index 00000000000..50a8f95a52c
--- /dev/null
+++ b/code/modules/tgui/states/conscious.html
@@ -0,0 +1,2 @@
+code/modules/tgui/states/conscious.dm - Space Station 13Space Station 13 - Modules - Types
code/modules/tgui/states/conscious.dm
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
\ No newline at end of file
diff --git a/code/modules/tgui/states/contained.html b/code/modules/tgui/states/contained.html
new file mode 100644
index 00000000000..ed942d14d75
--- /dev/null
+++ b/code/modules/tgui/states/contained.html
@@ -0,0 +1,2 @@
+code/modules/tgui/states/contained.dm - Space Station 13Space Station 13 - Modules - Types
code/modules/tgui/states/contained.dm
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
\ No newline at end of file
diff --git a/code/modules/tgui/states/hands.html b/code/modules/tgui/states/hands.html
new file mode 100644
index 00000000000..d06587c3c67
--- /dev/null
+++ b/code/modules/tgui/states/hands.html
@@ -0,0 +1,2 @@
+code/modules/tgui/states/hands.dm - Space Station 13Space Station 13 - Modules - Types
code/modules/tgui/states/hands.dm
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
\ No newline at end of file
diff --git a/code/modules/tgui/states/human_adjacent.html b/code/modules/tgui/states/human_adjacent.html
new file mode 100644
index 00000000000..0d92eef96b1
--- /dev/null
+++ b/code/modules/tgui/states/human_adjacent.html
@@ -0,0 +1,2 @@
+code/modules/tgui/states/human_adjacent.dm - Space Station 13Space Station 13 - Modules - Types
code/modules/tgui/states/human_adjacent.dm
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
\ No newline at end of file
diff --git a/code/modules/tgui/states/not_incapacitated.html b/code/modules/tgui/states/not_incapacitated.html
new file mode 100644
index 00000000000..40d459097cf
--- /dev/null
+++ b/code/modules/tgui/states/not_incapacitated.html
@@ -0,0 +1,2 @@
+code/modules/tgui/states/not_incapacitated.dm - Space Station 13Space Station 13 - Modules - Types
code/modules/tgui/states/not_incapacitated.dm
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
\ No newline at end of file
diff --git a/code/modules/tgui/states/notcontained.html b/code/modules/tgui/states/notcontained.html
new file mode 100644
index 00000000000..bba9a2ffba7
--- /dev/null
+++ b/code/modules/tgui/states/notcontained.html
@@ -0,0 +1,2 @@
+code/modules/tgui/states/notcontained.dm - Space Station 13Space Station 13 - Modules - Types
code/modules/tgui/states/notcontained.dm
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
\ No newline at end of file
diff --git a/code/modules/tgui/states/physical.html b/code/modules/tgui/states/physical.html
new file mode 100644
index 00000000000..e4f144cba6a
--- /dev/null
+++ b/code/modules/tgui/states/physical.html
@@ -0,0 +1,2 @@
+code/modules/tgui/states/physical.dm - Space Station 13Space Station 13 - Modules - Types
code/modules/tgui/states/physical.dm
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
\ No newline at end of file
diff --git a/code/modules/tgui/states/self.html b/code/modules/tgui/states/self.html
new file mode 100644
index 00000000000..3e68dbd9d41
--- /dev/null
+++ b/code/modules/tgui/states/self.html
@@ -0,0 +1,2 @@
+code/modules/tgui/states/self.dm - Space Station 13Space Station 13 - Modules - Types
code/modules/tgui/states/self.dm
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
\ No newline at end of file
diff --git a/code/modules/tgui/tgui_datum.html b/code/modules/tgui/tgui_datum.html
new file mode 100644
index 00000000000..f654a5339e6
--- /dev/null
+++ b/code/modules/tgui/tgui_datum.html
@@ -0,0 +1,2 @@
+code/modules/tgui/tgui_datum.dm - Space Station 13Space Station 13 - Modules - Types
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
\ No newline at end of file
diff --git a/code/modules/tgui/tgui_input/alert_input.html b/code/modules/tgui/tgui_input/alert_input.html
new file mode 100644
index 00000000000..16bc84c9fcc
--- /dev/null
+++ b/code/modules/tgui/tgui_input/alert_input.html
@@ -0,0 +1,2 @@
+code/modules/tgui/tgui_input/alert_input.dm - Space Station 13Space Station 13 - Modules - Types
Datum used for instantiating and using a TGUI-controlled modal that prompts the user with
+a message and has buttons for responses.
\ No newline at end of file
diff --git a/code/modules/tgui/tgui_input/color_input.html b/code/modules/tgui/tgui_input/color_input.html
new file mode 100644
index 00000000000..5fd3773219b
--- /dev/null
+++ b/code/modules/tgui/tgui_input/color_input.html
@@ -0,0 +1 @@
+code/modules/tgui/tgui_input/color_input.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/tgui/tgui_input/input_checkbox.html b/code/modules/tgui/tgui_input/input_checkbox.html
new file mode 100644
index 00000000000..22c55442db2
--- /dev/null
+++ b/code/modules/tgui/tgui_input/input_checkbox.html
@@ -0,0 +1,2 @@
+code/modules/tgui/tgui_input/input_checkbox.dm - Space Station 13Space Station 13 - Modules - Types
Datum used for allowing a user to sort a TGUI-controlled list input that prompts the user with
+a message and shows a list of rankable options
\ No newline at end of file
diff --git a/code/modules/tgui/tgui_input/keycombo_input.html b/code/modules/tgui/tgui_input/keycombo_input.html
new file mode 100644
index 00000000000..79bb7f4faa8
--- /dev/null
+++ b/code/modules/tgui/tgui_input/keycombo_input.html
@@ -0,0 +1,2 @@
+code/modules/tgui/tgui_input/keycombo_input.dm - Space Station 13Space Station 13 - Modules - Types
Datum used for instantiating and using a TGUI-controlled key input that prompts the user with
+a message and listens for key presses.
\ No newline at end of file
diff --git a/code/modules/tgui/tgui_input/list_input.html b/code/modules/tgui/tgui_input/list_input.html
new file mode 100644
index 00000000000..bfe4eb4066d
--- /dev/null
+++ b/code/modules/tgui/tgui_input/list_input.html
@@ -0,0 +1,2 @@
+code/modules/tgui/tgui_input/list_input.dm - Space Station 13Space Station 13 - Modules - Types
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
\ No newline at end of file
diff --git a/code/modules/tgui/tgui_input/number_input.html b/code/modules/tgui/tgui_input/number_input.html
new file mode 100644
index 00000000000..0774e5d1274
--- /dev/null
+++ b/code/modules/tgui/tgui_input/number_input.html
@@ -0,0 +1,2 @@
+code/modules/tgui/tgui_input/number_input.dm - Space Station 13Space Station 13 - Modules - Types
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.
\ No newline at end of file
diff --git a/code/modules/tgui/tgui_input/ranked_list_input.html b/code/modules/tgui/tgui_input/ranked_list_input.html
new file mode 100644
index 00000000000..f6c0198d6a6
--- /dev/null
+++ b/code/modules/tgui/tgui_input/ranked_list_input.html
@@ -0,0 +1,2 @@
+code/modules/tgui/tgui_input/ranked_list_input.dm - Space Station 13Space Station 13 - Modules - Types
Datum used for allowing a user to sort a TGUI-controlled list input that prompts the user with
+a message and shows a list of rankable options
\ No newline at end of file
diff --git a/code/modules/tgui/tgui_input/text_input.html b/code/modules/tgui/tgui_input/text_input.html
new file mode 100644
index 00000000000..6e06c61f6e6
--- /dev/null
+++ b/code/modules/tgui/tgui_input/text_input.html
@@ -0,0 +1 @@
+code/modules/tgui/tgui_input/text_input.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/tgui/tgui_panel.html b/code/modules/tgui/tgui_panel.html
new file mode 100644
index 00000000000..3cee433cd0b
--- /dev/null
+++ b/code/modules/tgui/tgui_panel.html
@@ -0,0 +1,20 @@
+code/modules/tgui/tgui_panel/README.md - Space Station 13Space Station 13 - Modules - Types
code/modules/tgui/tgui_panel/README.md
/TG/ Chat
+
/TG/ Chat, which will be referred to as TgChat from this point onwards, is a system in which we can send messages to clients in a controlled and semi-reliable manner. The standard way of sending messages to BYOND clients simply dumps whatever you output to them directly into their chat window, however BYOND allows us to load our own code on the client to change this behaviour in a way that allows us to do some pretty neat things.
+
Message Format
+
TgChat handles sending messages from the server to the client through the use of JSON payloads, of which the format will change depending on the type of message and the intended client endpoint. An example of the payload for chat messages is as follows:
In the past there have been issues where BYOND will silently and without reason lose a message we sent to the client, to detect this and recover from it seamlessly TgChat also has a baked in reliability layer. This reliability layer is very primitive, and simply keeps track of received sequence numbers. Should the client receive an unexpected sequence number TgChat asks the server to resend any missing packets.
+
Ping System
+
TgChat supports a round trip time ping measurement, which is displayed to the client so they can know how long it takes for their commands and inputs to reach the server. This is done by sending the client a ping request, ping/soft, which tells the client to send a ping to the server. When the server receives said ping it sends a reply, ping/reply, to the client with a payload containing the current DateTime which the client can reference against the initial ping request.
+
Chat Tabs, Local Storage, and Highlighting
+
To make organizing and managing chat easier and more functional for both players and admins, TgChat has the ability to filter out messages based on their primary tag, such as individual departmental radios, to a dedicated chat tab for easier reading and comprehension. These tabs can also be configured to highlist messages based on a simple keyword search. You can set a multitude of different keywords to search for and they will be highlighting for instant alerting of the client. Said tabs, highlighting rules, and your chat history will persist thanks to use of local storage on the client. Using local storage TgChat can ensure that your preferences are saved and maintained between client restarts and switching between other /TG/ servers. Local Storage is also used to keep your chat history aswell, should you need to scroll through your chat logs.
\ No newline at end of file
diff --git a/code/modules/tgui/tgui_panel/telemetry.html b/code/modules/tgui/tgui_panel/telemetry.html
new file mode 100644
index 00000000000..67e7998b6a5
--- /dev/null
+++ b/code/modules/tgui/tgui_panel/telemetry.html
@@ -0,0 +1,5 @@
+code/modules/tgui/tgui_panel/telemetry.dm - Space Station 13Space Station 13 - Modules - Types — Define Details
Maximum time allocated for sending a telemetry packet.
Define Details
TGUI_TELEMETRY_MAX_CONNECTIONS
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
+
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.
\ No newline at end of file
diff --git a/code/modules/tgui/tgui_panel/tgui_panel.html b/code/modules/tgui/tgui_panel/tgui_panel.html
new file mode 100644
index 00000000000..aab3038020b
--- /dev/null
+++ b/code/modules/tgui/tgui_panel/tgui_panel.html
@@ -0,0 +1,2 @@
+code/modules/tgui/tgui_panel/tgui_panel.dm - Space Station 13Space Station 13 - Modules - Types
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
\ No newline at end of file
diff --git a/code/modules/tgui/tgui_panel/tgui_panel_message.html b/code/modules/tgui/tgui_panel/tgui_panel_message.html
new file mode 100644
index 00000000000..0e3c7c01288
--- /dev/null
+++ b/code/modules/tgui/tgui_panel/tgui_panel_message.html
@@ -0,0 +1 @@
+code/modules/tgui/tgui_panel/tgui_panel_message.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/code/modules/tgui/tgui_panel/to_chat.html b/code/modules/tgui/tgui_panel/to_chat.html
new file mode 100644
index 00000000000..9dcb44551f8
--- /dev/null
+++ b/code/modules/tgui/tgui_panel/to_chat.html
@@ -0,0 +1,3 @@
+code/modules/tgui/tgui_panel/to_chat.dm - Space Station 13Space Station 13 - Modules - Types
code/modules/tgui/tgui_panel/to_chat.dm
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
Circumvents the message queue and sends the message to the recipient (target) as soon as possible.
+trailing_newline, confidential, and handle_whitespace currently have no effect, please fix this in the future or remove the arguments to lower cache!
\ No newline at end of file
diff --git a/code/modules/tgui/tgui_window.html b/code/modules/tgui/tgui_window.html
new file mode 100644
index 00000000000..000281a1ad3
--- /dev/null
+++ b/code/modules/tgui/tgui_window.html
@@ -0,0 +1,2 @@
+code/modules/tgui/tgui_window.dm - Space Station 13Space Station 13 - Modules - Types
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
\ No newline at end of file
diff --git a/code/modules/tgui_input/say_modal/tgui_say_modal.html b/code/modules/tgui_input/say_modal/tgui_say_modal.html
new file mode 100644
index 00000000000..97d0cb0193d
--- /dev/null
+++ b/code/modules/tgui_input/say_modal/tgui_say_modal.html
@@ -0,0 +1,3 @@
+code/modules/tgui_input/say_modal/tgui_say_modal.dm - Space Station 13Space Station 13 - Modules - Types
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.
\ No newline at end of file
diff --git a/code/modules/vehicle/tg_vehicles/tg_vehicle_actions.html b/code/modules/vehicle/tg_vehicles/tg_vehicle_actions.html
new file mode 100644
index 00000000000..ed47e7fe125
--- /dev/null
+++ b/code/modules/vehicle/tg_vehicles/tg_vehicle_actions.html
@@ -0,0 +1 @@
+code/modules/vehicle/tg_vehicles/tg_vehicle_actions.dm - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/datum.html b/datum.html
new file mode 100644
index 00000000000..61224987b5f
--- /dev/null
+++ b/datum.html
@@ -0,0 +1,226 @@
+/datum - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
A cached version of our \ref
+The brunt of \ref costs are in creating entries in the string tree (a tree of immutable strings)
+This avoids doing that more then once per datum by ensuring ref strings always have a reference to them after they're first pulled
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
Do not override this. This proc exists solely to be overriden by /turf. This
+allows it to ignore clearing out signals which refer to it, in order to keep
+those signals valid after the turf has been changed.
Used for signal registrars who wish to completely ignore all behavior
+in the attack chain from parent types. Should be used sparingly, as
+subtypes are meant to build on behavior from the parent type.
Used for signal registrars who wish to completely ignore all behavior
+in the attack chain from parent types calling attack_by. Should be
+used sparingly, as subtypes are meant to build on behavior from the parent
+type.
This proc is only called if everything topic-wise is verified. The only verifications that should happen here is things like permission checks!
+href_list is a reference, modifying it in these procs WILL change the rest of the proc in topic.dm of admin/view_variables!
+This proc is for "high level" actions like admin heal/set species/etc/etc. The low level debugging things should go in admin/view_variables/topic_basic.dm in case this runtimes.
Var Details
cached_ref
A cached version of our \ref
+The brunt of \ref costs are in creating entries in the string tree (a tree of immutable strings)
+This avoids doing that more then once per datum by ensuring ref strings always have a reference to them after they're first pulled
isprocessing
Used by SSprocessing
md5_unique_datum_id
MD5'd version of the UID. Used for instances where we dont want to make clients aware of UIDs.
status_traits
Status traits attached to this datum
tgui_shared_states
global
+
Associative list of JSON-encoded shared states that were set by
+tgui clients.
Proc Details
CanProcCall
Proc to check if a datum allows proc calls on it
+
Returns TRUE if you can call a proc on the datum, FALSE if you cant
DeleteComponent
Removes the component from the datum
DeleteComponentsType
Removes all components of a given type from the datum
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:
+
+
datum/component/c_type The typepath of the component you want to get a reference to
+
GetComponents
Get all components of a given type that are attached to this datum
+
Arguments:
+
+
c_type The component type path
+
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:
+
+
datum/component/c_type The typepath of the component you want to get a reference to
+
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:
+
+
component_type The typepath of the component to create or return
+
... additional arguments to be passed when creating the component if it does not exist
+
MD5_UID
Safety wrapper for getting MD5 UIDs
+
This ensures it exists before reading it
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:
+
+
datum/target The target to listen for signals from
+
sig_type_or_types Either a string signal name, or a list of signal names (strings)
+
proctype The proc to call back when the signal is emitted
+
override If a previous registration exists you must explicitly set this
+
RegisterSignals
Registers multiple signals to the same proc.
TakeComponent
Transfer this component to another parent
+
Component is taken from source datum
+
Arguments:
+
+
datum/component/target Target datum to transfer to
+
TransferComponent
Transfer a single component from the source datum, to the target.
+
Arguments:
+
+
datum/target - the target to move the component to
+
component_instance_or_typepath - either an already created component, or a component typepath
+
TransferComponents
Transfer all components to target
+
All components from source datum are taken
+
Arguments:
+
+
/datum/target the target to move the components to
+
UID
Gets or creates the UID of a datum
+
BYOND refs are recycled, so this system prevents that. If a datum does not have a UID when this proc is ran, one will be created
+Returns the UID of the datum
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:
+
+
datum/target Datum to stop listening to signals from
+
sig_typeor_types Signal string key or list of signal keys to stop listening to specifically
+
_AddComponent
Creates an instance of new_type in the datum and attaches to it as parent
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
Do not override this. This proc exists solely to be overriden by /turf. This
+allows it to ignore clearing out signals which refer to it, in order to keep
+those signals valid after the turf has been changed.
add_traits
Proc that handles adding multiple traits to a target via a list. Must have a common source and target.
p_a
Functionally the \a macro, for the cases where you put a bicon between "some [bicon] pop corn"
p_are
Applies "is" for singular genders, or "are" for plural ones (e.g. "he is here" Vs. "they are here").
p_do
Applies "does" for singular genders, or "do" for plural ones (e.g. "she does stuff" Vs. "they do stuff").
p_es
Adds an "es" to the end of a word as appropriate for a particular gender (e.g. "he screeches" and "they screech"). For verb conjugation.
p_have
Applies "has" for singular genders, or "have" for plural ones (e.g. "she has eaten" Vs. "they have eaten").
p_s
Used to add an "s" to the end of a word as appropriate for a particular gender (e.g. "she looks" and "they look"). For verb conjugation.
p_their
Applies one of "their", "its", "his", or "her" as appropriate. Set to TRUE to capitalise.
p_them
Applies one of "them", "it", "him", or "her" as appropriate. Set to TRUE to capitalise.
p_themselves
Applies one of "themselves", "itself", "himself", or "herself" as appropriate. Set to TRUE to capitalise.
p_they
Applies one of "they", "it", "he", or "she" as appropriate. Set to TRUE to capitalise.
p_theyre
Applies one of "they're", "it's", "he's", or "she's" as appropriate. Set to TRUE to capitalise.
p_theyve
Applies one of "they've", "it's", "he's", or "she's" as appropriate. Set to TRUE to capitalise.
p_were
Applies "was" for singular genders, or "were" for plural ones (e.g. "it was huge" Vs. "they were huge").
remove_traits
Proc that handles removing multiple traits from a target via a list. Must have a common source and target.
signal_cancel_activate_self
Used for signal registrars who wish to completely ignore all behavior
+in the attack chain from parent types. Should be used sparingly, as
+subtypes are meant to build on behavior from the parent type.
signal_cancel_attack_by
Used for signal registrars who wish to completely ignore all behavior
+in the attack chain from parent types calling attack_by. Should be
+used sparingly, as subtypes are meant to build on behavior from the parent
+type.
signal_qdel
Signal qdel
+
Proc intended to be used when someone wants the src datum to be qdeled when a certain signal is sent to them.
+
Example usage:
+RegisterSignal(item, COMSIG_PARENT_QDELETING, TYPE_PROC_REF(/datum, signal_qdel))
string_assoc_list
Caches associative lists with non-numeric stringify-able index keys and stringify-able values (text/typepath -> text/path/number).
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 UI should be updated or not.
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_interact
External tgui definitions, such as src_object APIs.
+
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
+
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_modal_act
Call this from a proc that is called in ui_act() to process modal actions
+
Example: /obj/machinery/chem_master/proc/ui_act_modal
+You can then switch based on the return value and show different
+modals depending on the answer.
+Arguments:
+
+
source - The source datum
+
action - The called action
+
params - The params to the action
+
ui_modal_answer
Calls the source's currently assigned modal's (if there is one) on_answer() proc. Private.
+
Arguments:
+
+
source - The source datum
+
id - The ID of the modal
+
answer - The provided answer
+
ui_modal_bento
Opens a bento input UI modal
+
Internally checks if the answer is in the list of choices.
+Arguments:
+
+
source - The source datum
+
id - The ID of the modal
+
text - The text to display above the answers
+
delegate - The proc to call when submitted
+
arguments - List of arguments passed to and from JS (mostly useful for chaining modals)
+
value - The default value of the bento
+
choices - The list of available choices in the bento
+
ui_modal_boolean
Opens a yes/no UI modal
+
Arguments:
+
+
source - The source datum
+
id - The ID of the modal
+
text - The text to display above the answers
+
delegate - The proc to call when "Yes" is pressed
+
delegate_no - The proc to call when "No" is pressed
+
arguments - List of arguments passed to and from JS (mostly useful for chaining modals)
+
yes_text - The text to show in the "Yes" button
+
no_text - The text to show in the "No" button
+
ui_modal_choice
Opens a dropdown input UI modal
+
Internally checks if the answer is in the list of choices.
+Arguments:
+
+
source - The source datum
+
id - The ID of the modal
+
text - The text to display above the answers
+
delegate - The proc to call when submitted
+
arguments - List of arguments passed to and from JS (mostly useful for chaining modals)
+
value - The default value of the dropdown
+
choices - The list of available choices in the dropdown
+
ui_modal_clear
Clears the current modal for a given datum
+
Arguments:
+
+
source - The source datum
+
ui_modal_data
Call this from ui_data() to return modal information if needed
+
Arguments:
+
+
source - The source datum
+
ui_modal_input
Opens a text input UI modal
+
Arguments:
+
+
source - The source datum
+
id - The ID of the modal
+
text - The text to display above the answers
+
delegate - The proc to call when submitted
+
arguments - List of arguments passed to and from JS (mostly useful for chaining modals)
+
value - The default value of the input
+
max_length - The maximum char length of the input
+
ui_modal_message
Opens a message UI modal
+
Arguments:
+
+
source - The source datum
+
id - The ID of the modal
+
text - The text to display above the answers
+
delegate - The proc to call when closed
+
arguments - List of arguments passed to and from JS (mostly useful for chaining modals)
+
ui_modal_new
Registers a given modal to a source. Private.
+
Arguments:
+
+
source - The source datum
+
modal - The datum/ui_modal to register
+
replace_previous - Whether any modal currently assigned to source should be replaced
+
instant_update - Whether the changes should reflect immediately
+
ui_modal_preprocess_answer
Passes an answer from JS through the modal's proc.
+
Used namely for cutting the text short if it's longer
+than an input modal's max_length.
+Arguments:
+
+
source - The source datum
+
answer - The provided answer
+
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
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
+
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
vv_do_topic
This proc is only called if everything topic-wise is verified. The only verifications that should happen here is things like permission checks!
+href_list is a reference, modifying it in these procs WILL change the rest of the proc in topic.dm of admin/view_variables!
+This proc is for "high level" actions like admin heal/set species/etc/etc. The low level debugging things should go in admin/view_variables/topic_basic.dm in case this runtimes.
\ No newline at end of file
diff --git a/datum/action.html b/datum/action.html
new file mode 100644
index 00000000000..8774e537c19
--- /dev/null
+++ b/datum/action.html
@@ -0,0 +1,24 @@
+/datum/action - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
This is the icon state state for the BACKGROUND underlay icon of the button
+(If set to ACTION_BUTTON_DEFAULT_BACKGROUND, uses the hud's default background)
Any other miscellaneous "status" updates within the action button is handled here,
+such as redding out when unavailable or modifying maptext.
Var Details
action_disabled
Toggles whether this action is usable or not
background_icon
This is the icon state state for the BACKGROUND underlay icon of the button
+(If set to ACTION_BUTTON_DEFAULT_BACKGROUND, uses the hud's default background)
background_icon_state
Icon state of screen object background
button_icon
This is the file for the icon that appears on the button
button_icon_state
This is the icon state for the icon that appears on the button
default_button_position
Where any buttons we create should be by default. Accepts screen_loc and location defines
overlay_icon
This is the file for any FOREGROUND overlay icons on the button (such as borders)
overlay_icon_state
This is the icon state for any FOREGROUND overlay icons on the button (such as borders)
owner_has_control
If False, the owner of this action does not get a hud and cannot activate it on their own
show_to_observers
Whether or not this will be shown to observers
viewers
Map of huds viewing a button with our action -> their button
Proc Details
apply_button_background
Creates the background underlay for the button
+
button - what button are we editing?
+force - whether an update is forced regardless of existing status
apply_button_icon
Applies our button icon and icon state to the button
+
button - what button are we editing?
+force - whether an update is forced regardless of existing status
apply_button_overlay
Applies any overlays to our button
+
button - what button are we editing?
+force - whether an update is forced regardless of existing status
build_all_button_icons
Builds / updates all buttons we have shared or given out
build_button_icon
Builds the icon of the button.
+
Concept:
+
+
Underlay (Background icon)
+
Icon (button icon)
+
Maptext
+
Overlay (Background border)
+
+
button - which button we are modifying the icon of
+force - whether we're forcing a full update
is_action_active
Checks if our action is actively selected. Used for selecting icons primarily.
link_to
Links the passed target to our action, registering any relevant signals
on_target_icon_update
Updates our buttons if our target's icon was updated
update_button_name
Updates the name and description of the button to match our action name and discription.
+
button - what button are we editing?
+force - whether an update is forced regardless of existing status
update_button_status
Any other miscellaneous "status" updates within the action button is handled here,
+such as redding out when unavailable or modifying maptext.
+
button - what button are we editing?
+force - whether an update is forced regardless of existing status
\ No newline at end of file
diff --git a/datum/action/changeling.html b/datum/action/changeling.html
new file mode 100644
index 00000000000..215e1b415c1
--- /dev/null
+++ b/datum/action/changeling.html
@@ -0,0 +1 @@
+/datum/action/changeling - Space Station 13Space Station 13 - Modules - Types — Var Details
What stat value the changeling needs to have to use this power. Will be CONSCIOUS, UNCONSCIOUS or DEAD.
Var Details
active
If this power is active or not. Used for toggleable abilities.
bypass_fake_death
If this power can be used while the changeling has the TRAIT_FAKEDEATH trait.
category
Datum path used to determine the location and name of the power in changeling evolution menu UI
chemical_cost
Chemical cost to use this power.
cling
A reference to the changeling's changeling antag datum.
dna_cost
The cost of purchasing the power.
helptext
A description of what the power does.
power_type
Determines whether the power is always given to the changeling or if it must be purchased.
req_dna
The amount of victims the changeling needs to absorb before they can use this power. Changelings always start with a value of 1.
req_human
If you need to be in human form to activate this power.
req_stat
What stat value the changeling needs to have to use this power. Will be CONSCIOUS, UNCONSCIOUS or DEAD.
\ No newline at end of file
diff --git a/datum/action/changeling/biodegrade.html b/datum/action/changeling/biodegrade.html
new file mode 100644
index 00000000000..f800c109adf
--- /dev/null
+++ b/datum/action/changeling/biodegrade.html
@@ -0,0 +1 @@
+/datum/action/changeling/biodegrade - Space Station 13Space Station 13 - Modules - Types — Var Details
Current hand given to human, null is we did not give hand, object if hand is given
hand
Type of acid hand we give to person
\ No newline at end of file
diff --git a/datum/action/changeling/environmental_adaptation.html b/datum/action/changeling/environmental_adaptation.html
new file mode 100644
index 00000000000..f856ea6d4a9
--- /dev/null
+++ b/datum/action/changeling/environmental_adaptation.html
@@ -0,0 +1 @@
+/datum/action/changeling/environmental_adaptation - Space Station 13Space Station 13 - Modules - Types — Var Details
How much we slow chemical regeneration while active, in chems per second
Var Details
is_active
is ability active (we are invisible)?
recharge_slowdown
How much we slow chemical regeneration while active, in chems per second
\ No newline at end of file
diff --git a/datum/action/changeling/evolution_menu.html b/datum/action/changeling/evolution_menu.html
new file mode 100644
index 00000000000..502e474bad1
--- /dev/null
+++ b/datum/action/changeling/evolution_menu.html
@@ -0,0 +1 @@
+/datum/action/changeling/evolution_menu - Space Station 13Space Station 13 - Modules - Types — Var Details
A list containing lists of category and abilities, related to this category. For each ability includes its name, description, helptext and cost. For use with the UI.
Which UI view will be displayed. Compact mode will show only power names, and will leave out their descriptions and helptext.
Var Details
ability_tabs
A list containing lists of category and abilities, related to this category. For each ability includes its name, description, helptext and cost. For use with the UI.
purchased_abilities
A list containing the typepaths of bought changeling abilities. For use with the UI.
view_mode
Which UI view will be displayed. Compact mode will show only power names, and will leave out their descriptions and helptext.
\ No newline at end of file
diff --git a/datum/action/changeling/spiders.html b/datum/action/changeling/spiders.html
new file mode 100644
index 00000000000..4955c75c114
--- /dev/null
+++ b/datum/action/changeling/spiders.html
@@ -0,0 +1 @@
+/datum/action/changeling/spiders - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Makes a spider. Good for setting traps and combat.
Var Details
is_operating
Checks if changeling is already spawning a spider
spider_counter
This var keeps track of the changeling's spider count
Proc Details
sting_action
Makes a spider. Good for setting traps and combat.
\ No newline at end of file
diff --git a/datum/action/changeling/sting.html b/datum/action/changeling/sting.html
new file mode 100644
index 00000000000..7cc2c989825
--- /dev/null
+++ b/datum/action/changeling/sting.html
@@ -0,0 +1 @@
+/datum/action/changeling/sting - Space Station 13Space Station 13 - Modules - Types — Var Details
A middle click override used to intercept changeling stings performed on a target.
Var Details
click_override
A middle click override used to intercept changeling stings performed on a target.
\ No newline at end of file
diff --git a/datum/action/changeling/weapon.html b/datum/action/changeling/weapon.html
new file mode 100644
index 00000000000..9ad218f9bcc
--- /dev/null
+++ b/datum/action/changeling/weapon.html
@@ -0,0 +1 @@
+/datum/action/changeling/weapon - Space Station 13Space Station 13 - Modules - Types — Var Details
How much does the chemical recharge rate get reduced by having this weapon out?
Var Details
recharge_slowdown
How much does the chemical recharge rate get reduced by having this weapon out?
\ No newline at end of file
diff --git a/datum/action/cooldown.html b/datum/action/cooldown.html
new file mode 100644
index 00000000000..8d5eaa38b92
--- /dev/null
+++ b/datum/action/cooldown.html
@@ -0,0 +1,9 @@
+/datum/action/cooldown - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Starts a cooldown time for other abilities that share a cooldown with this. Has some niche usage with more complicated attack ai!
+Will use default cooldown time if an override is not specified
Unset our action as the click override of the passed mob.
Var Details
active_background_icon_state
The icon state the background uses when active
active_icon_state
The active icon state of the spell's button icon, used for editing the icon "on"
active_overlay_icon_state
The active icon_state of the overlay we apply
base_background_icon_state
The base icon_state of this action's background
base_icon_state
The base icon state of the spell's button icon, used for editing the icon "off"
base_overlay_icon_state
The base icon_state of the overlay we apply
click_cd_override
The cooldown added onto the user's next click.
click_to_activate
Setting for intercepting clicks before activating the ability
cooldown_rounding
Significant figures to round cooldown to
cooldown_time
The default cooldown applied when StartCooldown() is called
initialized_actions
List of prerequisite actions that have been initialized
melee_cooldown_time
The default melee cooldown applied after the ability ends. If set to null, copies cooldown_time.
next_melee_use_time
The actual next time the owner of this action can melee
next_use_time
The actual next time this ability can be used
panel
The stat panel this action shows up in the stat panel in. If null, will not show up.
ranged_mousepointer
What icon to replace our mouse cursor with when active. Optional
sequence_actions
List of prerequisite actions that are used in this sequenced ability, you cannot put other sequenced abilities in this
shared_cooldown
Shares cooldowns with other abiliies, bitflag
text_cooldown
Whether or not you want the cooldown for the ability to display in text form
unset_after_click
If TRUE, we will unset after using our click intercept.
Proc Details
Activate
To be implemented by subtypes (if not generic)
InterceptClickOn
Intercepts client owner clicks to activate the ability
PreActivate
For signal calling
ResetCooldown
Resets the cooldown of this ability
StartCooldown
Starts a cooldown time to be shared with similar abilities
+Will use default cooldown time if an override is not specified
StartCooldownOthers
Starts a cooldown time for other abilities that share a cooldown with this. Has some niche usage with more complicated attack ai!
+Will use default cooldown time if an override is not specified
StartCooldownSelf
Starts a cooldown time for this ability only
+Will use default cooldown time if an override is not specified
create_sequence_actions
Initializes any sequence actions
disable
Disables this cooldown action
disable_cooldown_actions
Disables all cooldown actions
enable
Re-enables this cooldown action
enable_cooldown_actions
Re-enables all cooldown actions
handle_melee_attack
Cancels melee attacks if they are on cooldown.
set_click_ability
Set our action as the click override on the passed mob.
set_statpanel_format
Formats the action to be returned to the stat panel.
unset_click_ability
Unset our action as the click override of the passed mob.
+
if refund_cooldown is TRUE, we are being unset by the user clicking the action off
+if refund_cooldown is FALSE, we are being forcefully unset, likely by someone actually using the action
\ No newline at end of file
diff --git a/datum/action/cooldown/mob_cooldown/fire_breath.html b/datum/action/cooldown/mob_cooldown/fire_breath.html
new file mode 100644
index 00000000000..8c5c2735b0a
--- /dev/null
+++ b/datum/action/cooldown/mob_cooldown/fire_breath.html
@@ -0,0 +1 @@
+/datum/action/cooldown/mob_cooldown/fire_breath - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Creates fire with a delay on the list of targeted turfs
Var Details
fire_damage
How much damage do you take when engulfed?
fire_delay
Time to wait between spawning each fire turf
fire_range
The range of the fire
fire_sound
The sound played when you use this ability
fire_temperature
How hot is our fire
fire_volume
'How much' fire do we expose the turf to?
mech_damage
How much damage to mechs take when engulfed?
Proc Details
attack_sequence
Apply our specific fire breathing shape, in proc form so we can override it in subtypes
burn_turf
Finally spawn the actual fire, spawns the fire hotspot in case you want to recolour it or something
fire_line
Breathe fire in a line towards the target, optionally rotated at an offset from the target
on_burn_mob
Do something unpleasant to someone we set on fire
progressive_fire_line
Creates fire with a delay on the list of targeted turfs
\ No newline at end of file
diff --git a/datum/action/cooldown/mob_cooldown/fire_breath/cone.html b/datum/action/cooldown/mob_cooldown/fire_breath/cone.html
new file mode 100644
index 00000000000..a78faefce81
--- /dev/null
+++ b/datum/action/cooldown/mob_cooldown/fire_breath/cone.html
@@ -0,0 +1 @@
+/datum/action/cooldown/mob_cooldown/fire_breath/cone - Space Station 13Space Station 13 - Modules - Types — Var Details
cone
Shoot three lines of fire in a sort of fork pattern approximating a cone
The angles relative to the target that shoot lines of fire
Var Details
angles
The angles relative to the target that shoot lines of fire
\ No newline at end of file
diff --git a/datum/action/cooldown/mob_cooldown/fire_breath/ice.html b/datum/action/cooldown/mob_cooldown/fire_breath/ice.html
new file mode 100644
index 00000000000..88c9c82d368
--- /dev/null
+++ b/datum/action/cooldown/mob_cooldown/fire_breath/ice.html
@@ -0,0 +1 @@
+/datum/action/cooldown/mob_cooldown/fire_breath/ice - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Apply our specific fire breathing shape, in proc form so we can override it in subtypes
breath_attack
Actually breathe fire
\ No newline at end of file
diff --git a/datum/action/cooldown/mob_cooldown/fire_breath/mass_fire.html b/datum/action/cooldown/mob_cooldown/fire_breath/mass_fire.html
new file mode 100644
index 00000000000..8fa8e6e60fb
--- /dev/null
+++ b/datum/action/cooldown/mob_cooldown/fire_breath/mass_fire.html
@@ -0,0 +1 @@
+/datum/action/cooldown/mob_cooldown/fire_breath/mass_fire - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Breathe fire in a circle, with a slight angle offset based on which of our several circles it is
Var Details
breath_delay
How long do we wait between each spin?
sectors
How many fire lines do we produce to turn a full circle?
total_spins
How many full circles do we perform?
Proc Details
fire_spin
Breathe fire in a circle, with a slight angle offset based on which of our several circles it is
\ No newline at end of file
diff --git a/datum/action/cooldown/mob_cooldown/goliath_tentacles.html b/datum/action/cooldown/mob_cooldown/goliath_tentacles.html
new file mode 100644
index 00000000000..044352ebec0
--- /dev/null
+++ b/datum/action/cooldown/mob_cooldown/goliath_tentacles.html
@@ -0,0 +1 @@
+/datum/action/cooldown/mob_cooldown/goliath_tentacles - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/action/cooldown/mob_cooldown/kidan_princess/martial_rush.html b/datum/action/cooldown/mob_cooldown/kidan_princess/martial_rush.html
new file mode 100644
index 00000000000..4878ad52e30
--- /dev/null
+++ b/datum/action/cooldown/mob_cooldown/kidan_princess/martial_rush.html
@@ -0,0 +1 @@
+/datum/action/cooldown/mob_cooldown/kidan_princess/martial_rush - Space Station 13Space Station 13 - Modules - Types — Proc Details
Leaves an afterimage behind the mob when they move
Proc Details
on_movement
Leaves an afterimage behind the mob when they move
\ No newline at end of file
diff --git a/datum/action/cooldown/mob_cooldown/vox_armalis/activate_qani.html b/datum/action/cooldown/mob_cooldown/vox_armalis/activate_qani.html
new file mode 100644
index 00000000000..20d6fcb79f9
--- /dev/null
+++ b/datum/action/cooldown/mob_cooldown/vox_armalis/activate_qani.html
@@ -0,0 +1 @@
+/datum/action/cooldown/mob_cooldown/vox_armalis/activate_qani - Space Station 13Space Station 13 - Modules - Types — Proc Details
Leaves an afterimage behind the mob when they move
Proc Details
dodge_bullets
Tries to dodge incoming bullets if we aren't disabled for any reasons
on_movement
Leaves an afterimage behind the mob when they move
\ No newline at end of file
diff --git a/datum/action/cooldown/mob_cooldown/vox_armalis/swap_ammo.html b/datum/action/cooldown/mob_cooldown/vox_armalis/swap_ammo.html
new file mode 100644
index 00000000000..b470d6f5563
--- /dev/null
+++ b/datum/action/cooldown/mob_cooldown/vox_armalis/swap_ammo.html
@@ -0,0 +1 @@
+/datum/action/cooldown/mob_cooldown/vox_armalis/swap_ammo - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/action/guardian/reset_guardian.html b/datum/action/guardian/reset_guardian.html
new file mode 100644
index 00000000000..7966fa1bcc3
--- /dev/null
+++ b/datum/action/guardian/reset_guardian.html
@@ -0,0 +1 @@
+/datum/action/guardian/reset_guardian - Space Station 13Space Station 13 - Modules - Types — Proc Details
Reset guardian action
Allows the guardian host to exchange their guardian's player for another.
Takes the action button off cooldown and makes it available again.
Proc Details
reset_cooldown
Takes the action button off cooldown and makes it available again.
\ No newline at end of file
diff --git a/datum/action/innate/cocoon.html b/datum/action/innate/cocoon.html
new file mode 100644
index 00000000000..50657c3a160
--- /dev/null
+++ b/datum/action/innate/cocoon.html
@@ -0,0 +1 @@
+/datum/action/innate/cocoon - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/datum/action/innate/cult/blood_magic.html b/datum/action/innate/cult/blood_magic.html
new file mode 100644
index 00000000000..d393e3dc9fc
--- /dev/null
+++ b/datum/action/innate/cult/blood_magic.html
@@ -0,0 +1 @@
+/datum/action/innate/cult/blood_magic - Space Station 13Space Station 13 - Modules - Types — Var Details
blood_magic
Blood magic handles the creation of blood spells (formerly talismans)
If the magic has been enhanced somehow, likely due to a crimson medallion.
Var Details
magic_enhanced
If the magic has been enhanced somehow, likely due to a crimson medallion.
\ No newline at end of file
diff --git a/datum/action/innate/cult/blood_spell.html b/datum/action/innate/cult/blood_spell.html
new file mode 100644
index 00000000000..f3283a65c3a
--- /dev/null
+++ b/datum/action/innate/cult/blood_spell.html
@@ -0,0 +1 @@
+/datum/action/innate/cult/blood_spell - Space Station 13Space Station 13 - Modules - Types — Var Details
blood_spell
The next generation of talismans, handles storage/creation of blood magic
Have we already been positioned into our starting location?
Var Details
positioned
Have we already been positioned into our starting location?
\ No newline at end of file
diff --git a/datum/action/innate/elite_attack.html b/datum/action/innate/elite_attack.html
new file mode 100644
index 00000000000..0f9c378b37d
--- /dev/null
+++ b/datum/action/innate/elite_attack.html
@@ -0,0 +1 @@
+/datum/action/innate/elite_attack - Space Station 13Space Station 13 - Modules - Types — Var Details
The displayed message into chat when this attack is selected
Var Details
chosen_attack_num
The internal attack ID for the elite's OpenFire() proc to use
chosen_message
The displayed message into chat when this attack is selected
\ No newline at end of file
diff --git a/datum/action/item_action/agent_box.html b/datum/action/item_action/agent_box.html
new file mode 100644
index 00000000000..ff8352c6300
--- /dev/null
+++ b/datum/action/item_action/agent_box.html
@@ -0,0 +1 @@
+/datum/action/item_action/agent_box - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/action/item_action/mod/activate.html b/datum/action/item_action/mod/activate.html
new file mode 100644
index 00000000000..15bc3d93ae2
--- /dev/null
+++ b/datum/action/item_action/mod/activate.html
@@ -0,0 +1 @@
+/datum/action/item_action/mod/activate - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Resets the state requiring to be doubleclicked again.
Var Details
ready
First time clicking this will set it to TRUE, second time will activate it.
Proc Details
reset_ready
Resets the state requiring to be doubleclicked again.
\ No newline at end of file
diff --git a/datum/action/item_action/mod/pinned_module.html b/datum/action/item_action/mod/pinned_module.html
new file mode 100644
index 00000000000..cd0f6373cd1
--- /dev/null
+++ b/datum/action/item_action/mod/pinned_module.html
@@ -0,0 +1 @@
+/datum/action/item_action/mod/pinned_module - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/action/item_action/mod_recall.html b/datum/action/item_action/mod_recall.html
new file mode 100644
index 00000000000..24b383b1e12
--- /dev/null
+++ b/datum/action/item_action/mod_recall.html
@@ -0,0 +1 @@
+/datum/action/item_action/mod_recall - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/action/item_action/organ_action/toggle/sensory_enhancer.html b/datum/action/item_action/organ_action/toggle/sensory_enhancer.html
new file mode 100644
index 00000000000..8da6f86a1ce
--- /dev/null
+++ b/datum/action/item_action/organ_action/toggle/sensory_enhancer.html
@@ -0,0 +1 @@
+/datum/action/item_action/organ_action/toggle/sensory_enhancer - Space Station 13Space Station 13 - Modules - Types — Var Details
Keeps track of how much mephedrone we inject into people on activation
Var Details
injection_amount
Keeps track of how much mephedrone we inject into people on activation
\ No newline at end of file
diff --git a/datum/action/track_target.html b/datum/action/track_target.html
new file mode 100644
index 00000000000..ef61cd6281b
--- /dev/null
+++ b/datum/action/track_target.html
@@ -0,0 +1,2 @@
+/datum/action/track_target - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
track_target
The action associated with the living heart.
+Allows a heretic to track sacrifice targets.
Tracks whether we were right clicked or left clicked in our last trigger
Proc Details
check_menu
Callback for the radial to ensure it's closed when not allowed.
get_distance_message
Gets the balloon message for who we're tracking.
\ No newline at end of file
diff --git a/datum/action_group.html b/datum/action_group.html
new file mode 100644
index 00000000000..b3509b70680
--- /dev/null
+++ b/datum/action_group.html
@@ -0,0 +1,7 @@
+/datum/action_group - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Returns the amount of objects we're storing at the moment
Var Details
actions
The action buttons we're managing
column_max
Max amount of buttons we can have per row
+Indexes at 1
landing
Our landing screen object
location
The screen location we go by
max_rows
How many rows of actions we can have at max before we just stop hiding
+Indexes at 1
north_offset
The initial vertical offset of our action buttons
owner
The hud we're owned by
pixel_horiz_offset
The pixel horizontal offset of our action buttons
pixel_north_offset
The pixel vertical offset of our action buttons
row_offset
How far "ahead" of the first row we start. Lets us "scroll" our rows
+Indexes at 1
west_offset
The initial horizontal offset of our action buttons
Proc Details
ButtonNumberToScreenCoords
Accepts a number represeting our position in the group, indexes at 0 to make the math nicer
clear_landing
Clears any landing objects we may currently have
generate_landing
Generates a landing object that can be dropped on to join this group
size
Returns the amount of objects we're storing at the moment
\ No newline at end of file
diff --git a/datum/admins.html b/datum/admins.html
new file mode 100644
index 00000000000..3dc325a724c
--- /dev/null
+++ b/datum/admins.html
@@ -0,0 +1,13 @@
+/datum/admins - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Opens a window which lists the teams for the round.
create_ccbdb_lookup
CCBDB Lookup Initiator
+
Checks the configuration before invoking the request to the CCBDB server.
+
Arguments:
+
+
ckey - ckey to be looked up
+
list_teams
Returns HTML content for the "check teams" window.
modify_traits
Allow admin to add or remove traits of datum
\ No newline at end of file
diff --git a/datum/ai_behavior.html b/datum/ai_behavior.html
new file mode 100644
index 00000000000..96ed6c0977a
--- /dev/null
+++ b/datum/ai_behavior.html
@@ -0,0 +1,43 @@
+/datum/ai_behavior - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
ai_behavior
Abstract class for an action an AI can take. Can range from movement to grabbing a nearby weapon.
Called when the action is finished. This needs the same args as perform
+besides the default ones. This should be used to clear up the blackboard of
+any unnecessary or obsolete data, and update the state of the pawn if
+necessary once we know whether or not the AI action was successful.
+succeeded is TRUE or FALSE depending on whether
+/datum/ai_behavior/proc/perform returns AI_BEHAVIOR_SUCCEEDED or
+AI_BEHAVIOR_FAILED.
Returns the delay to use for this behavior in the moment. The default
+behavior cooldown is CLICK_CD_MELEE, but can be customized; for example,
+you may want a mob crawling through vents to move slowly and at a random
+pace between pipes.
Called by the AI controller when this action is performed. This will
+typically require consulting the blackboard for information on the specific
+actions desired from this behavior, by passing the relevant blackboard data
+keys to this proc. Returns a combination of AI_BEHAVIOR_DELAY or
+[AI_BEHAVIOR_INSTANT], determining whether or not a cooldown occurs, and
+AI_BEHAVIOR_SUCCEEDED or AI_BEHAVIOR_FAILED. The behavior's
+finish_action proc is given TRUE or FALSE depending on whether or not the
+return value of perform is marked as successful or unsuccessful.
Called by the AI controller when first being added. Additional arguments
+depend on the behavior type. For example, if the behavior involves attacking
+a mob, you may require an argument naming the blackboard key which points to
+the target. Return FALSE to cancel.
Var Details
action_cooldown
Cooldown between actions performances, defaults to the value of
+CLICK_CD_MELEE because that seemed like a nice standard for the speed of
+AI behavior
behavior_flags
Flags for extra behavior
required_distance
What distance you need to be from the target to perform the action.
Proc Details
clear_movement_target
Clear the controller's movement target only if it was us who last set it
finish_action
Called when the action is finished. This needs the same args as perform
+besides the default ones. This should be used to clear up the blackboard of
+any unnecessary or obsolete data, and update the state of the pawn if
+necessary once we know whether or not the AI action was successful.
+succeeded is TRUE or FALSE depending on whether
+/datum/ai_behavior/proc/perform returns AI_BEHAVIOR_SUCCEEDED or
+AI_BEHAVIOR_FAILED.
get_cooldown
Returns the delay to use for this behavior in the moment. The default
+behavior cooldown is CLICK_CD_MELEE, but can be customized; for example,
+you may want a mob crawling through vents to move slowly and at a random
+pace between pipes.
perform
Called by the AI controller when this action is performed. This will
+typically require consulting the blackboard for information on the specific
+actions desired from this behavior, by passing the relevant blackboard data
+keys to this proc. Returns a combination of AI_BEHAVIOR_DELAY or
+[AI_BEHAVIOR_INSTANT], determining whether or not a cooldown occurs, and
+AI_BEHAVIOR_SUCCEEDED or AI_BEHAVIOR_FAILED. The behavior's
+finish_action proc is given TRUE or FALSE depending on whether or not the
+return value of perform is marked as successful or unsuccessful.
set_movement_target
Helper proc to ensure consistency in setting the source of the movement target
setup
Called by the AI controller when first being added. Additional arguments
+depend on the behavior type. For example, if the behavior involves attacking
+a mob, you may require an argument naming the blackboard key which points to
+the target. Return FALSE to cancel.
\ No newline at end of file
diff --git a/datum/ai_behavior/attack_obstructions.html b/datum/ai_behavior/attack_obstructions.html
new file mode 100644
index 00000000000..a3430c5beb8
--- /dev/null
+++ b/datum/ai_behavior/attack_obstructions.html
@@ -0,0 +1 @@
+/datum/ai_behavior/attack_obstructions - Space Station 13Space Station 13 - Modules - Types — Var Details
If we should attack walls, be prepared for complaints about breaches
Var Details
can_attack_dense_objects
For if you want your mob to be able to attack dense objects
can_attack_turfs
If we should attack walls, be prepared for complaints about breaches
\ No newline at end of file
diff --git a/datum/ai_behavior/basic_melee_attack.html b/datum/ai_behavior/basic_melee_attack.html
new file mode 100644
index 00000000000..b988478aff3
--- /dev/null
+++ b/datum/ai_behavior/basic_melee_attack.html
@@ -0,0 +1 @@
+/datum/ai_behavior/basic_melee_attack - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_behavior/basic_ranged_attack.html b/datum/ai_behavior/basic_ranged_attack.html
new file mode 100644
index 00000000000..0ee172fabcc
--- /dev/null
+++ b/datum/ai_behavior/basic_ranged_attack.html
@@ -0,0 +1 @@
+/datum/ai_behavior/basic_ranged_attack - Space Station 13Space Station 13 - Modules - Types — Var Details
range we will try chasing the target before giving up
Var Details
avoid_friendly_fire
do we care about avoiding friendly fire?
chase_range
range we will try chasing the target before giving up
\ No newline at end of file
diff --git a/datum/ai_behavior/basic_ranged_attack/minebot.html b/datum/ai_behavior/basic_ranged_attack/minebot.html
new file mode 100644
index 00000000000..cadcfb8e388
--- /dev/null
+++ b/datum/ai_behavior/basic_ranged_attack/minebot.html
@@ -0,0 +1 @@
+/datum/ai_behavior/basic_ranged_attack/minebot - Space Station 13Space Station 13 - Modules - Types — Var Details
if our target is closer than this distance, finish action
Var Details
minimum_distance
if our target is closer than this distance, finish action
\ No newline at end of file
diff --git a/datum/ai_behavior/battle_screech.html b/datum/ai_behavior/battle_screech.html
new file mode 100644
index 00000000000..be0806b43b5
--- /dev/null
+++ b/datum/ai_behavior/battle_screech.html
@@ -0,0 +1 @@
+/datum/ai_behavior/battle_screech - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_behavior/burrow_away.html b/datum/ai_behavior/burrow_away.html
new file mode 100644
index 00000000000..d1cca07e57e
--- /dev/null
+++ b/datum/ai_behavior/burrow_away.html
@@ -0,0 +1 @@
+/datum/ai_behavior/burrow_away - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
\ No newline at end of file
diff --git a/datum/ai_behavior/capricious_retaliate.html b/datum/ai_behavior/capricious_retaliate.html
new file mode 100644
index 00000000000..b86379c7800
--- /dev/null
+++ b/datum/ai_behavior/capricious_retaliate.html
@@ -0,0 +1 @@
+/datum/ai_behavior/capricious_retaliate - Space Station 13Space Station 13 - Modules - Types — Proc Details
capricious_retaliate
Add or remove people to our retaliation shitlist just on an arbitrary whim
\ No newline at end of file
diff --git a/datum/ai_behavior/find_and_set/ventcrawl.html b/datum/ai_behavior/find_and_set/ventcrawl.html
new file mode 100644
index 00000000000..3c0236a8dd4
--- /dev/null
+++ b/datum/ai_behavior/find_and_set/ventcrawl.html
@@ -0,0 +1 @@
+/datum/ai_behavior/find_and_set/ventcrawl - Space Station 13Space Station 13 - Modules - Types — Proc Details
This proc assumes that all ventcrawling creatures are omniscient.
Proc Details
nearby_vents
Find something interesting nearby that we have access to.
search_tactic
This proc assumes that all ventcrawling creatures are omniscient.
\ No newline at end of file
diff --git a/datum/ai_behavior/find_hunt_target.html b/datum/ai_behavior/find_hunt_target.html
new file mode 100644
index 00000000000..4a565d14af3
--- /dev/null
+++ b/datum/ai_behavior/find_hunt_target.html
@@ -0,0 +1 @@
+/datum/ai_behavior/find_hunt_target - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_behavior/find_mineral_wall.html b/datum/ai_behavior/find_mineral_wall.html
new file mode 100644
index 00000000000..d1287dfb0c9
--- /dev/null
+++ b/datum/ai_behavior/find_mineral_wall.html
@@ -0,0 +1 @@
+/datum/ai_behavior/find_mineral_wall - Space Station 13Space Station 13 - Modules - Types — Proc Details
Check to see if we can get to and mine the turf the mineral is in
Proc Details
check_if_mineable
Check to see if we can get to and mine the turf the mineral is in
\ No newline at end of file
diff --git a/datum/ai_behavior/find_mom.html b/datum/ai_behavior/find_mom.html
new file mode 100644
index 00000000000..1aa04cc488a
--- /dev/null
+++ b/datum/ai_behavior/find_mom.html
@@ -0,0 +1 @@
+/datum/ai_behavior/find_mom - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_behavior/find_partner.html b/datum/ai_behavior/find_partner.html
new file mode 100644
index 00000000000..45a3c3921f2
--- /dev/null
+++ b/datum/ai_behavior/find_partner.html
@@ -0,0 +1 @@
+/datum/ai_behavior/find_partner - Space Station 13Space Station 13 - Modules - Types — Var Details
find_partner
Find a compatible, living partner, if we're also alone.
\ No newline at end of file
diff --git a/datum/ai_behavior/find_potential_targets.html b/datum/ai_behavior/find_potential_targets.html
new file mode 100644
index 00000000000..416b8e3914a
--- /dev/null
+++ b/datum/ai_behavior/find_potential_targets.html
@@ -0,0 +1 @@
+/datum/ai_behavior/find_potential_targets - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Returns the desired final target from the filtered list of targets
Var Details
aggro_range_key
Blackboard key for aggro range, uses vision range if not specified
targets_allies
Can we target allies?
vision_range
How far can we see stuff?
Proc Details
pick_final_target
Returns the desired final target from the filtered list of targets
\ No newline at end of file
diff --git a/datum/ai_behavior/find_unwebbed_turf.html b/datum/ai_behavior/find_unwebbed_turf.html
new file mode 100644
index 00000000000..d82695e8fdd
--- /dev/null
+++ b/datum/ai_behavior/find_unwebbed_turf.html
@@ -0,0 +1 @@
+/datum/ai_behavior/find_unwebbed_turf - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_behavior/find_unwrapped_target.html b/datum/ai_behavior/find_unwrapped_target.html
new file mode 100644
index 00000000000..5e30c65a816
--- /dev/null
+++ b/datum/ai_behavior/find_unwrapped_target.html
@@ -0,0 +1 @@
+/datum/ai_behavior/find_unwrapped_target - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_behavior/goliath_find_diggable_turf.html b/datum/ai_behavior/goliath_find_diggable_turf.html
new file mode 100644
index 00000000000..a57efa41ea1
--- /dev/null
+++ b/datum/ai_behavior/goliath_find_diggable_turf.html
@@ -0,0 +1 @@
+/datum/ai_behavior/goliath_find_diggable_turf - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
\ No newline at end of file
diff --git a/datum/ai_behavior/hunt_target.html b/datum/ai_behavior/hunt_target.html
new file mode 100644
index 00000000000..203e7d36409
--- /dev/null
+++ b/datum/ai_behavior/hunt_target.html
@@ -0,0 +1 @@
+/datum/ai_behavior/hunt_target - Space Station 13Space Station 13 - Modules - Types — Var Details
How long do we have to wait after a successful hunt?
Var Details
always_reset_target
Do we reset the target after attacking something, so we can check for status changes.
hunt_cooldown
How long do we have to wait after a successful hunt?
\ No newline at end of file
diff --git a/datum/ai_behavior/hunt_target/interact_with_target.html b/datum/ai_behavior/hunt_target/interact_with_target.html
new file mode 100644
index 00000000000..6a8b703dcf4
--- /dev/null
+++ b/datum/ai_behavior/hunt_target/interact_with_target.html
@@ -0,0 +1 @@
+/datum/ai_behavior/hunt_target/interact_with_target - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_behavior/interact_with_target.html b/datum/ai_behavior/interact_with_target.html
new file mode 100644
index 00000000000..1b1986dcfe7
--- /dev/null
+++ b/datum/ai_behavior/interact_with_target.html
@@ -0,0 +1 @@
+/datum/ai_behavior/interact_with_target - Space Station 13Space Station 13 - Modules - Types — Var Details
interact_with_target
Behavior for general interactions with any targets
\ No newline at end of file
diff --git a/datum/ai_behavior/interact_with_target/eat_food.html b/datum/ai_behavior/interact_with_target/eat_food.html
new file mode 100644
index 00000000000..755a04ff4bc
--- /dev/null
+++ b/datum/ai_behavior/interact_with_target/eat_food.html
@@ -0,0 +1 @@
+/datum/ai_behavior/interact_with_target/eat_food - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_behavior/monkey_attack_mob.html b/datum/ai_behavior/monkey_attack_mob.html
new file mode 100644
index 00000000000..9005901331c
--- /dev/null
+++ b/datum/ai_behavior/monkey_attack_mob.html
@@ -0,0 +1 @@
+/datum/ai_behavior/monkey_attack_mob - Space Station 13Space Station 13 - Modules - Types — Proc Details
attack using a held weapon otherwise bite the enemy, then if we are angry there is a chance we might calm down a little
Proc Details
monkey_attack
attack using a held weapon otherwise bite the enemy, then if we are angry there is a chance we might calm down a little
\ No newline at end of file
diff --git a/datum/ai_behavior/monkey_equip.html b/datum/ai_behavior/monkey_equip.html
new file mode 100644
index 00000000000..38256588332
--- /dev/null
+++ b/datum/ai_behavior/monkey_equip.html
@@ -0,0 +1,3 @@
+/datum/ai_behavior/monkey_equip - Space Station 13Space Station 13 - Modules - Types — Proc Details
Equips an item on the monkey
+Returns TRUE if it works out, FALSE otherwise
Proc Details
equip_item
Equips an item on the monkey
+Returns TRUE if it works out, FALSE otherwise
\ No newline at end of file
diff --git a/datum/ai_behavior/ranged_skirmish.html b/datum/ai_behavior/ranged_skirmish.html
new file mode 100644
index 00000000000..01ab1592803
--- /dev/null
+++ b/datum/ai_behavior/ranged_skirmish.html
@@ -0,0 +1 @@
+/datum/ai_behavior/ranged_skirmish - Space Station 13Space Station 13 - Modules - Types — Var Details
ranged_skirmish
How often will we try to perform our ranged attack?
\ No newline at end of file
diff --git a/datum/ai_behavior/relay_message.html b/datum/ai_behavior/relay_message.html
new file mode 100644
index 00000000000..b7f9611a9c7
--- /dev/null
+++ b/datum/ai_behavior/relay_message.html
@@ -0,0 +1 @@
+/datum/ai_behavior/relay_message - Space Station 13Space Station 13 - Modules - Types — Var Details
relay_message
behavior that allow us to go communicate with other hivebots
\ No newline at end of file
diff --git a/datum/ai_behavior/return_home.html b/datum/ai_behavior/return_home.html
new file mode 100644
index 00000000000..a659bc7be38
--- /dev/null
+++ b/datum/ai_behavior/return_home.html
@@ -0,0 +1 @@
+/datum/ai_behavior/return_home - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_behavior/run_away_from_target.html b/datum/ai_behavior/run_away_from_target.html
new file mode 100644
index 00000000000..2c0aeec32f7
--- /dev/null
+++ b/datum/ai_behavior/run_away_from_target.html
@@ -0,0 +1 @@
+/datum/ai_behavior/run_away_from_target - Space Station 13Space Station 13 - Modules - Types — Var Details
run_away_from_target
Move to a position further away from your current target
How far do we try to run? Further makes for smoother running, but potentially weirder pathfinding
Var Details
clear_failed_targets
Clear target if we finish the action unsuccessfully
run_distance
How far do we try to run? Further makes for smoother running, but potentially weirder pathfinding
\ No newline at end of file
diff --git a/datum/ai_behavior/swarmer_find_construction_target.html b/datum/ai_behavior/swarmer_find_construction_target.html
new file mode 100644
index 00000000000..758de98120f
--- /dev/null
+++ b/datum/ai_behavior/swarmer_find_construction_target.html
@@ -0,0 +1 @@
+/datum/ai_behavior/swarmer_find_construction_target - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_behavior/swirl_around_target.html b/datum/ai_behavior/swirl_around_target.html
new file mode 100644
index 00000000000..e13eca6a614
--- /dev/null
+++ b/datum/ai_behavior/swirl_around_target.html
@@ -0,0 +1 @@
+/datum/ai_behavior/swirl_around_target - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_behavior/target_from_retaliate_list.html b/datum/ai_behavior/target_from_retaliate_list.html
new file mode 100644
index 00000000000..62d2a08f145
--- /dev/null
+++ b/datum/ai_behavior/target_from_retaliate_list.html
@@ -0,0 +1,2 @@
+/datum/ai_behavior/target_from_retaliate_list - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
target_from_retaliate_list
Picks a target from a provided list of atoms who have been pissing you off
+You will probably need /datum/element/ai_retaliate to take advantage of this unless you're populating the blackboard yourself
Returns the desired final target from the filtered list of enemies
Var Details
vision_range
How far can we see stuff?
Proc Details
pick_final_target
Returns the desired final target from the filtered list of enemies
\ No newline at end of file
diff --git a/datum/ai_behavior/travel_towards.html b/datum/ai_behavior/travel_towards.html
new file mode 100644
index 00000000000..27ccc42f41d
--- /dev/null
+++ b/datum/ai_behavior/travel_towards.html
@@ -0,0 +1,2 @@
+/datum/ai_behavior/travel_towards - Space Station 13Space Station 13 - Modules - Types — Var Details
Travel Towards
Moves towards the atom in the passed blackboard key.
+Planning continues during this action so it can be interrupted by higher priority actions.
If desired, an alternate /datum/ai_movement to use for movement/pathfinding.
Var Details
clear_target
If true we will get rid of our target on completion
new_movement_type
If desired, an alternate /datum/ai_movement to use for movement/pathfinding.
\ No newline at end of file
diff --git a/datum/ai_controller.html b/datum/ai_controller.html
new file mode 100644
index 00000000000..b30d8b2860d
--- /dev/null
+++ b/datum/ai_controller.html
@@ -0,0 +1,109 @@
+/datum/ai_controller - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
ai_controller
AI controllers are a datumized form of AI that simulates the input a player
+would otherwise give to a atom. What this means is that these datums have
+ways of interacting with a specific atom and control it. They posses a
+"blackboard" with the information the AI knows and has, and will plan actions
+it will try to perform through multiple modular subtrees with behaviors.
TRUE if we're able to run, FALSE if we aren't
+Should not be set manually, override get_able_to_run() instead
+Make sure you hook update_able_to_run() in setup_able_to_run() to whatever parameters changing that you added
+Otherwise we will not pay attention to them changing
All subtrees this AI has available. Will run them in order, so make sure
+they're in the order you want them to run. On initialization of this
+type, it will start as a typepath(s) and get converted to references of
+ai_subtrees found in SSai_controllers when init_subtrees() is called
Adds the value to the inner list at key with the inner key set to "thing"
+Throws an error if the key is not a list already, intended only for use with lists
Similar to [proc/add_blackboard_key_assoc], assuming key is intended to be a lazylist (so it will create a list)
+More dangerous / easier to override values, only use when you want to use a lazylist
Adds the passed "thing" to the associated key, assuming key is intended to be a lazylist (so it will create a list)
+More dangerous / easier to override values, only use when you want to use a lazylist
Gets the AI status we expect the AI controller to be on at this current
+moment. Returns AI_STATUS_OFF if it's inhabited by a client and shouldn't be,
+if it's dead and cannot act while dead, or is on a z level without clients.
+Returns AI_STATUS_ON otherwise.
Loops over the subtrees in planning_subtrees and looks at the ai_controllers to grab a reference
+Ensure planning_subtrees are typepaths and not instances/references before executing this!
Similar to [proc/add_blackboard_key], but performs an insertion rather than an add
+Throws an error if the key is not a list already, intended only for use with lists
Similar to [proc/set_blackboard_key_assoc] but operates under the assumption the key is a lazylist (so it will create a list)
+More dangerous / easier to override values, only use when you want to use a lazylist
Proc for deinitializing the pawn to the old controller
Var Details
able_to_plan
are we even able to plan?
able_to_run
TRUE if we're able to run, FALSE if we aren't
+Should not be set manually, override get_able_to_run() instead
+Make sure you hook update_able_to_run() in setup_able_to_run() to whatever parameters changing that you added
+Otherwise we will not pay attention to them changing
ai_movement
Reference to the movement datum we use. Is a type on initialize but becomes a ref afterwards.
ai_status
Current status of AI (OFF/ON)
ai_traits
Bitfield of traits for this AI to handle extra behavior.
behavior_args
Stored arguments for behaviors given during their initial creation
behavior_cooldowns
Current actions and their respective last time ran as an assoc list.
blackboard
This is a list of variables the AI uses and can be mutated by actions.
+
When an action is performed you pass this list and any relevant keys for
+the variables it can mutate.
+
DO NOT set values in the blackboard directly, and especially not if
+you're adding a datum reference to this! Use the setters, this is
+important for reference handing.
can_idle
Can this AI idle?
consecutive_pathing_attempts
Tracks recent pathing attempts, if we fail too many in a row we fail our current plans.
continue_processing_when_client
Can the AI remain in control if there is a client?
current_behaviors
Current actions being performed by the AI.
current_movement_target
Current movement target of the AI, generally set by decision making.
failed_planning_cooldown
Cooldown for new plans, to prevent AI from going nuts if it can't think of new plans and looping on end
idle_behavior
The idle behavior this AI performs when it has no actions.
interesting_dist
What distance should we be checking for interesting things when considering idling/deidling? Defaults to AI_DEFAULT_INTERESTING_DIST
max_target_distance
Distance to give up on target.
movement_delay
Delay between movements. This is on the controller so we can keep the movement datum singleton
movement_target_source
Identifier for what last touched our movement target, so it can be cleared conditionally
on_failed_planning_timeout
are we currently on failed planning timeout?
our_cells
Our current cell grid.
paused_until
AI paused time
pawn
The atom this controller is controlling.
planned_behaviors
Current actions planned to be performed by the AI in the upcoming plan.
planning_subtrees
All subtrees this AI has available. Will run them in order, so make sure
+they're in the order you want them to run. On initialization of this
+type, it will start as a typepath(s) and get converted to references of
+ai_subtrees found in SSai_controllers when init_subtrees() is called
Proc Details
add_blackboard_key
Adds the passed "thing" to the associated key
+
Works with lists or numbers, but not lazylists.
+
+
key - A blackboard key
+
thing - a value to set the blackboard key to.
+
add_blackboard_key_assoc
Adds the value to the inner list at key with the inner key set to "thing"
+Throws an error if the key is not a list already, intended only for use with lists
+
+
key - A blackboard key, with its value set to a list
+
thing - a value which becomes the inner list value's key
+
value - what to set the inner list's value to
+
add_blackboard_key_assoc_lazylist
Similar to [proc/add_blackboard_key_assoc], assuming key is intended to be a lazylist (so it will create a list)
+More dangerous / easier to override values, only use when you want to use a lazylist
+
+
key - A blackboard key, with its value set to a list
+
thing - a value which becomes the inner list value's key
+
value - what to set the inner list's value to
+
add_blackboard_key_lazylist
Adds the passed "thing" to the associated key, assuming key is intended to be a lazylist (so it will create a list)
+More dangerous / easier to override values, only use when you want to use a lazylist
+
+
key - A blackboard key
+
thing - a value to set the blackboard key to.
+
ai_interact
Interact with objects
blackboard_key_exists
Returns true if we have a blackboard key with the provided key and it is not qdeleting.
change_ai_movement_type
Overrides the current ai_movement of this controller with a new one
clear_blackboard_key
Clears the passed key, resetting it to null
+
Not intended for use with list keys - use [proc/remove_thing_from_blackboard_key] if you are removing a value from a list at a key
+
+
key - A blackboard key
+
get_able_to_run
Returns TRUE if the ai controller can actually run at the moment, FALSE otherwise
get_access
Use this proc to define how your controller defines what access the pawn has for the sake of pathfinding.
+Return the access list you want to use.
get_expected_ai_status
Gets the AI status we expect the AI controller to be on at this current
+moment. Returns AI_STATUS_OFF if it's inhabited by a client and shouldn't be,
+if it's dead and cannot act while dead, or is on a z level without clients.
+Returns AI_STATUS_ON otherwise.
get_minimum_distance
Returns the minimum required distance to preform one of our current behaviors.
+Honestly this should just be cached or something but fuck you
init_subtrees
Loops over the subtrees in planning_subtrees and looks at the ai_controllers to grab a reference
+Ensure planning_subtrees are typepaths and not instances/references before executing this!
insert_blackboard_key
Similar to [proc/add_blackboard_key], but performs an insertion rather than an add
+Throws an error if the key is not a list already, intended only for use with lists
+
+
key - A blackboard key, with its value set to a list
+
thing - a value to set the blackboard key to.
+
insert_blackboard_key_lazylist
Similar to [proc/insert_blackboard_key_lazylist], but performs an insertion / or rather than an add
+
+
key - A blackboard key
+
thing - a value to set the blackboard key to.
+
on_changed_z_level
Called when the AI controller pawn changes z levels.
+We check if there's any clients on the new one and wake up the AI if there is.
on_pawn_qdeleted
Turn the controller off if the pawn has been qdeleted.
on_stat_changed
Turn the controller on or off based on if you're alive.
+We only register to this if the flag is present so don't need to check again.
override_blackboard_key
Helper to force a key to be a certain thing no matter what's already there
+
Useful for if you're overriding a list with a new list entirely,
+as otherwise it would throw a runtime error from trying to override a list
+
Not necessary to use if you aren't dealing with lists, as set_blackboard_key will clear the existing value
+in that case already, but may be useful for clarity.
+
+
key - A blackboard key
+
thing - a value to set the blackboard key to.
+
possess_pawn
Proc to move from one pawn to another. This will destroy the target's existing controller.
post_blackboard_key_set
Called after we set a blackboard key, forwards signal information.
process
Runs any actions that are currently running
queue_behavior
Call this to add a behavior to the stack.
remove_from_blackboard_lazylist_key
Removes a tracked object from a lazylist.
remove_thing_from_blackboard_key
Remove the passed thing from the associated blackboard key
+
Intended for use with lists, if you're just clearing a reference from a key use [proc/clear_blackboard_key]
+
+
key - A blackboard key
+
thing - a value to set the blackboard key to.
+
replace_planning_subtrees
Completely replaces the planning_subtrees with a new set based on argument provided.
+List provided must contain specifically typepaths
reset_ai_status
Sets the AI on or off based on current conditions, call to reset after you've manually disabled it somewhere
select_behaviors
This is where you decide what actions are taken by the AI.
set_ai_status
This proc handles changing AI status, and starts/stops processing if required.
set_blackboard_key
Sets the key to the passed "thing".
+
+
key - A blackboard key
+
thing - a value to set the blackboard key to.
+
set_blackboard_key_assoc
Sets the key at index thing to the passed value
+
Assumes the key value is already a list, if not throws an error.
+
+
key - A blackboard key, with its value set to a list
+
thing - a value which becomes the inner list value's key
+
value - what to set the inner list's value to
+
set_blackboard_key_assoc_lazylist
Similar to [proc/set_blackboard_key_assoc] but operates under the assumption the key is a lazylist (so it will create a list)
+More dangerous / easier to override values, only use when you want to use a lazylist
+
+
key - A blackboard key, with its value set to a list
+
thing - a value which becomes the inner list value's key
+
value - what to set the inner list's value to
+
set_movement_target
Sets the current movement target, with an optional param to override the movement behavior
sig_remove_from_blackboard
Signal proc to go through every key and remove the datum from all keys it finds.
try_possess_pawn
Abstract proc for initializing the pawn to the new controller
unpossess_pawn
Proc for deinitializing the pawn to the old controller
\ No newline at end of file
diff --git a/datum/ai_controller/monkey.html b/datum/ai_controller/monkey.html
new file mode 100644
index 00000000000..fc04d0779ed
--- /dev/null
+++ b/datum/ai_controller/monkey.html
@@ -0,0 +1 @@
+/datum/ai_controller/monkey - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
re-used behavior pattern by monkeys for finding a weapon
retaliate
Reactive events to being hit
\ No newline at end of file
diff --git a/datum/ai_laws.html b/datum/ai_laws.html
new file mode 100644
index 00000000000..703d0426432
--- /dev/null
+++ b/datum/ai_laws.html
@@ -0,0 +1,2 @@
+/datum/ai_laws - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
\ No newline at end of file
diff --git a/datum/ai_movement.html b/datum/ai_movement.html
new file mode 100644
index 00000000000..df76ea0c3b3
--- /dev/null
+++ b/datum/ai_movement.html
@@ -0,0 +1,3 @@
+/datum/ai_movement - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
ai_movement
This datum is an abstract class that can be overriden for different types of movement.
Override this to setup the moveloop you want to use.
Var Details
max_pathing_attempts
How many times a given controller can fail on their route before they just give up.
moving_controllers
Assoc list ist of controllers that are currently moving as key, and what they are moving to as value.
update_moveloop_delay
Should this movement update the delay when a moveloop is about to happen?
Proc Details
allowed_to_move
Returns TRUE if the movement should be allowed, FALSE otherwise.
post_move
Anything to do post-movement.
pre_move
Anything to do before moving; any checks if the pawn should be able to
+move should be placed in allowed_to_move() and called by this proc.
start_moving_towards
Override this to setup the moveloop you want to use.
\ No newline at end of file
diff --git a/datum/ai_movement/basic_avoidance.html b/datum/ai_movement/basic_avoidance.html
new file mode 100644
index 00000000000..b1ef2e5b556
--- /dev/null
+++ b/datum/ai_movement/basic_avoidance.html
@@ -0,0 +1 @@
+/datum/ai_movement/basic_avoidance - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_movement/jps.html b/datum/ai_movement/jps.html
new file mode 100644
index 00000000000..2c6c84c8f1a
--- /dev/null
+++ b/datum/ai_movement/jps.html
@@ -0,0 +1 @@
+/datum/ai_movement/jps - Space Station 13Space Station 13 - Modules - Types — Var Details
how we deal with diagonal movement, whether we try to avoid them or follow through with them
Var Details
diagonal_flags
how we deal with diagonal movement, whether we try to avoid them or follow through with them
\ No newline at end of file
diff --git a/datum/ai_planning_subtree.html b/datum/ai_planning_subtree.html
new file mode 100644
index 00000000000..cd8d91fb936
--- /dev/null
+++ b/datum/ai_planning_subtree.html
@@ -0,0 +1,22 @@
+/datum/ai_planning_subtree - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
ai_planning_subtree
A subtree is attached to a controller and is occasionally called by
+/ai_controller/select_behaviors(). This mainly exists to act as a way to
+subtype and modify select_behaviors() without needing to subtype the AI
+controller itself.
A list of typepaths of "operational datums" (elements/components) we
+absolutely NEED to run. Checked in unit tests, as well as be a nice
+reminder to developers that such a thing might be needed. Note that in
+the Attach/Inititalize/New (or any future equivalent for these procs),
+you will need to add the trait TRAIT_SUBTREE_REQUIRED_OPERATIONAL_DATUM
+to the mob in question in order for unit tests to succeed. This will
+break obviously enough if you don't do this and declare the required
+datum here however.
Determines what behaviors should the controller try processing; if this
+returns SUBTREE_RETURN_FINISH_PLANNING then the controller won't go through
+the other subtrees should multiple exist in the controller.
Var Details
operational_datums
A list of typepaths of "operational datums" (elements/components) we
+absolutely NEED to run. Checked in unit tests, as well as be a nice
+reminder to developers that such a thing might be needed. Note that in
+the Attach/Inititalize/New (or any future equivalent for these procs),
+you will need to add the trait TRAIT_SUBTREE_REQUIRED_OPERATIONAL_DATUM
+to the mob in question in order for unit tests to succeed. This will
+break obviously enough if you don't do this and declare the required
+datum here however.
Proc Details
select_behaviors
Determines what behaviors should the controller try processing; if this
+returns SUBTREE_RETURN_FINISH_PLANNING then the controller won't go through
+the other subtrees should multiple exist in the controller.
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/attack_obstacle_in_path.html b/datum/ai_planning_subtree/attack_obstacle_in_path.html
new file mode 100644
index 00000000000..14670fe6be0
--- /dev/null
+++ b/datum/ai_planning_subtree/attack_obstacle_in_path.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/attack_obstacle_in_path - Space Station 13Space Station 13 - Modules - Types — Var Details
attack_obstacle_in_path
If there's something between us and our target then we need to queue a behaviour to make it not be there
The action to execute, extend to add a different cooldown or something
target_key
Blackboard key containing current target
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/basic_melee_attack_subtree.html b/datum/ai_planning_subtree/basic_melee_attack_subtree.html
new file mode 100644
index 00000000000..cfbe20095c4
--- /dev/null
+++ b/datum/ai_planning_subtree/basic_melee_attack_subtree.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/basic_melee_attack_subtree - Space Station 13Space Station 13 - Modules - Types — Var Details
Is this the last thing we do? (if we set a movement target, this will usually be yes)
melee_attack_behavior
What do we do in order to attack someone?
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/capricious_retaliate.html b/datum/ai_planning_subtree/capricious_retaliate.html
new file mode 100644
index 00000000000..a92e2e6d532
--- /dev/null
+++ b/datum/ai_planning_subtree/capricious_retaliate.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/capricious_retaliate - Space Station 13Space Station 13 - Modules - Types — Var Details
capricious_retaliate
Add or remove people to our retaliation shitlist just on an arbitrary whim
Blackboard key which tells us how to select valid targets
Var Details
ignore_faction
Whether we should skip checking faction for our decision
targeting_strategy_key
Blackboard key which tells us how to select valid targets
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/cling_spider_follow.html b/datum/ai_planning_subtree/cling_spider_follow.html
new file mode 100644
index 00000000000..a4f62722aa8
--- /dev/null
+++ b/datum/ai_planning_subtree/cling_spider_follow.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/cling_spider_follow - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/conjure_skulls.html b/datum/ai_planning_subtree/conjure_skulls.html
new file mode 100644
index 00000000000..d2c17ec774f
--- /dev/null
+++ b/datum/ai_planning_subtree/conjure_skulls.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/conjure_skulls - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/enter_exit_home.html b/datum/ai_planning_subtree/enter_exit_home.html
new file mode 100644
index 00000000000..beddb1dc84c
--- /dev/null
+++ b/datum/ai_planning_subtree/enter_exit_home.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/enter_exit_home - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/find_and_hunt_target.html b/datum/ai_planning_subtree/find_and_hunt_target.html
new file mode 100644
index 00000000000..3a95bc8e6d1
--- /dev/null
+++ b/datum/ai_planning_subtree/find_and_hunt_target.html
@@ -0,0 +1,4 @@
+/datum/ai_planning_subtree/find_and_hunt_target - Space Station 13Space Station 13 - Modules - Types — Var Details
find_and_hunt_target
Tells the AI to find a certain target nearby to hunt.
+If a target has been found, we will start to move towards it, and eventually attack it.
What key in the blacbkboard do we store our hunting target?
+If you want to have multiple hunting behaviors on a controller be sure that this is unique
Var Details
finding_behavior
What behavior to execute if we have no target
finish_planning
do we finish planning subtree
hunt_chance
What are the chances we hunt something at any given moment
hunt_range
In what radius will we hunt
hunt_targets
What targets we're hunting for
hunting_behavior
What behavior to execute if we do have a target
target_key
What key in the blacbkboard do we store our hunting target?
+If you want to have multiple hunting behaviors on a controller be sure that this is unique
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/find_food.html b/datum/ai_planning_subtree/find_food.html
new file mode 100644
index 00000000000..0a144b99b46
--- /dev/null
+++ b/datum/ai_planning_subtree/find_food.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/find_food - Space Station 13Space Station 13 - Modules - Types — Var Details
find_food
Similar to finding a target but looks for food types in the blackboard.
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/find_nearest_thing_which_attacked_me_to_flee.html b/datum/ai_planning_subtree/find_nearest_thing_which_attacked_me_to_flee.html
new file mode 100644
index 00000000000..f3a6d2bfb33
--- /dev/null
+++ b/datum/ai_planning_subtree/find_nearest_thing_which_attacked_me_to_flee.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/find_nearest_thing_which_attacked_me_to_flee - Space Station 13Space Station 13 - Modules - Types — Var Details
find_nearest_thing_which_attacked_me_to_flee
Find the nearest thing on our list of 'things which have done damage to me' and set it as the flee target
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/flee_target.html b/datum/ai_planning_subtree/flee_target.html
new file mode 100644
index 00000000000..d1e15e12bfc
--- /dev/null
+++ b/datum/ai_planning_subtree/flee_target.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/flee_target - Space Station 13Space Station 13 - Modules - Types — Var Details
flee_target
Try to escape from your current target, without performing any other actions.
Blackboard key in which to store selected target's hiding place
target_key
Blackboard key in which to store selected target
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/generic_hunger.html b/datum/ai_planning_subtree/generic_hunger.html
new file mode 100644
index 00000000000..23ae366cbb9
--- /dev/null
+++ b/datum/ai_planning_subtree/generic_hunger.html
@@ -0,0 +1,6 @@
+/datum/ai_planning_subtree/generic_hunger - Space Station 13Space Station 13 - Modules - Types — Proc Details
Requires at least a living mob that can hold items.
+
relevant blackboards:
+
+
BB_NEXT_HUNGRY - set by this subtree, is when the controller is next hungry
+
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/generic_resist.html b/datum/ai_planning_subtree/generic_resist.html
new file mode 100644
index 00000000000..f306a807e41
--- /dev/null
+++ b/datum/ai_planning_subtree/generic_resist.html
@@ -0,0 +1,6 @@
+/datum/ai_planning_subtree/generic_resist - Space Station 13Space Station 13 - Modules - Types — Proc Details
Generic Resist Subtree, resist if it makes sense to!
Proc Details
select_behaviors
Generic Resist Subtree, resist if it makes sense to!
+
Requires nothing beyond a living pawn, makes sense on a good amount of mobs since anything can get buckled.
+
relevant blackboards:
+
+
None!
+
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/goliath_dig.html b/datum/ai_planning_subtree/goliath_dig.html
new file mode 100644
index 00000000000..d9a3d9654ee
--- /dev/null
+++ b/datum/ai_planning_subtree/goliath_dig.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/goliath_dig - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/hive_communicate.html b/datum/ai_planning_subtree/hive_communicate.html
new file mode 100644
index 00000000000..4d76582ea58
--- /dev/null
+++ b/datum/ai_planning_subtree/hive_communicate.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/hive_communicate - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/lay_eggs.html b/datum/ai_planning_subtree/lay_eggs.html
new file mode 100644
index 00000000000..dfa4129371c
--- /dev/null
+++ b/datum/ai_planning_subtree/lay_eggs.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/lay_eggs - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/locate_dead_humans.html b/datum/ai_planning_subtree/locate_dead_humans.html
new file mode 100644
index 00000000000..b7635631193
--- /dev/null
+++ b/datum/ai_planning_subtree/locate_dead_humans.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/locate_dead_humans - Space Station 13Space Station 13 - Modules - Types — Proc Details
Find dead humans and report their location on the radio
Proc Details
select_behaviors
Find dead humans and report their location on the radio
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/look_for_adult.html b/datum/ai_planning_subtree/look_for_adult.html
new file mode 100644
index 00000000000..ff4ee3f03dd
--- /dev/null
+++ b/datum/ai_planning_subtree/look_for_adult.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/look_for_adult - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/maintain_distance.html b/datum/ai_planning_subtree/maintain_distance.html
new file mode 100644
index 00000000000..6c949f27e79
--- /dev/null
+++ b/datum/ai_planning_subtree/maintain_distance.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/maintain_distance - Space Station 13Space Station 13 - Modules - Types — Var Details
Blackboard key holding atom we want to stay away from
view_distance
How far do we look for our target?
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/make_babies.html b/datum/ai_planning_subtree/make_babies.html
new file mode 100644
index 00000000000..e801e16760d
--- /dev/null
+++ b/datum/ai_planning_subtree/make_babies.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/make_babies - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/minebot_mining.html b/datum/ai_planning_subtree/minebot_mining.html
new file mode 100644
index 00000000000..fa5fff2e3d7
--- /dev/null
+++ b/datum/ai_planning_subtree/minebot_mining.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/minebot_mining - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/monkey_combat.html b/datum/ai_planning_subtree/monkey_combat.html
new file mode 100644
index 00000000000..0561cebbc00
--- /dev/null
+++ b/datum/ai_planning_subtree/monkey_combat.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/monkey_combat - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/random_speech.html b/datum/ai_planning_subtree/random_speech.html
new file mode 100644
index 00000000000..b1f93f6a5a6
--- /dev/null
+++ b/datum/ai_planning_subtree/random_speech.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/random_speech - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Unlike speak_emote, the list of things in this variable only show by themselves with no spoken text. IE: Ian barks, Ian yaps
sound
The sound effects associated with this speech, if any
speak
Possible lines of speech the AI can have
speak_verbs
The possible verbs used to perform the speech, if any. Defaults to "says" elsewhere in code.
speech_chance
The chance of an emote occurring each second
Proc Details
speak
Actually perform an action
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/ranged_skirmish.html b/datum/ai_planning_subtree/ranged_skirmish.html
new file mode 100644
index 00000000000..49b3168dd51
--- /dev/null
+++ b/datum/ai_planning_subtree/ranged_skirmish.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/ranged_skirmish - Space Station 13Space Station 13 - Modules - Types — Var Details
ranged_skirmish
Fire a ranged attack without interrupting movement.
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/shapechange_ambush.html b/datum/ai_planning_subtree/shapechange_ambush.html
new file mode 100644
index 00000000000..ecacda7c9eb
--- /dev/null
+++ b/datum/ai_planning_subtree/shapechange_ambush.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/shapechange_ambush - Space Station 13Space Station 13 - Modules - Types — Var Details
shapechange_ambush
Shapeshift when we have no target, until someone has been nearby for long enough
How long to lull our target into a false sense of security
target_key
Key where we keep our target
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/simple_find_target.html b/datum/ai_planning_subtree/simple_find_target.html
new file mode 100644
index 00000000000..f7040512254
--- /dev/null
+++ b/datum/ai_planning_subtree/simple_find_target.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/simple_find_target - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/spin_mothsilk.html b/datum/ai_planning_subtree/spin_mothsilk.html
new file mode 100644
index 00000000000..9c7d015d033
--- /dev/null
+++ b/datum/ai_planning_subtree/spin_mothsilk.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/spin_mothsilk - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/spin_web.html b/datum/ai_planning_subtree/spin_web.html
new file mode 100644
index 00000000000..e90ae26665b
--- /dev/null
+++ b/datum/ai_planning_subtree/spin_web.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/spin_web - Space Station 13Space Station 13 - Modules - Types — Var Details
spin_web
Run the spin web behaviour if we have an ability to use for it
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/swarmer_create_barricade.html b/datum/ai_planning_subtree/swarmer_create_barricade.html
new file mode 100644
index 00000000000..1cfddb451b3
--- /dev/null
+++ b/datum/ai_planning_subtree/swarmer_create_barricade.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/swarmer_create_barricade - Space Station 13Space Station 13 - Modules - Types — Var Details
swarmer_create_barricade
Run the barricade construction behaviour if we have an ability to use for it
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/swarmer_create_trap.html b/datum/ai_planning_subtree/swarmer_create_trap.html
new file mode 100644
index 00000000000..2ecc7b4c489
--- /dev/null
+++ b/datum/ai_planning_subtree/swarmer_create_trap.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/swarmer_create_trap - Space Station 13Space Station 13 - Modules - Types — Var Details
swarmer_create_trap
Run the trap construction behaviour if we have an ability to use for it
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/swarmer_replicate.html b/datum/ai_planning_subtree/swarmer_replicate.html
new file mode 100644
index 00000000000..17ca9d2c8b2
--- /dev/null
+++ b/datum/ai_planning_subtree/swarmer_replicate.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/swarmer_replicate - Space Station 13Space Station 13 - Modules - Types — Var Details
swarmer_replicate
Run the barricade construction behaviour if we have an ability to use for it
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/swarmer_share_resources.html b/datum/ai_planning_subtree/swarmer_share_resources.html
new file mode 100644
index 00000000000..f7c9ef7b599
--- /dev/null
+++ b/datum/ai_planning_subtree/swarmer_share_resources.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/swarmer_share_resources - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/swirl_around_target.html b/datum/ai_planning_subtree/swirl_around_target.html
new file mode 100644
index 00000000000..2f8fd4b8e0f
--- /dev/null
+++ b/datum/ai_planning_subtree/swirl_around_target.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/swirl_around_target - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/target_retaliate.html b/datum/ai_planning_subtree/target_retaliate.html
new file mode 100644
index 00000000000..047ab9830be
--- /dev/null
+++ b/datum/ai_planning_subtree/target_retaliate.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/target_retaliate - Space Station 13Space Station 13 - Modules - Types — Var Details
target_retaliate
Sets the BB target to a mob which you can see and who has recently attacked you
Blackboard key which tells us how to select valid targets
Var Details
check_faction
do we check for faction?
hiding_place_key
Blackboard key in which to store selected target's hiding place
target_key
Blackboard key in which to store selected target
targeting_strategy_key
Blackboard key which tells us how to select valid targets
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/targeted_mob_ability.html b/datum/ai_planning_subtree/targeted_mob_ability.html
new file mode 100644
index 00000000000..7e669d49103
--- /dev/null
+++ b/datum/ai_planning_subtree/targeted_mob_ability.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/targeted_mob_ability - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Any additional checks before we queue the behaviour
Var Details
ability_key
Blackboard key for the ability
finish_planning
If true we terminate planning after trying to use the ability.
target_key
Blackboard key for where the target ref is stored
use_ability_behaviour
Behaviour to perform using ability
Proc Details
additional_ability_checks
Any additional checks before we queue the behaviour
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/targeted_mob_ability/evil_mech_weaponry.html b/datum/ai_planning_subtree/targeted_mob_ability/evil_mech_weaponry.html
new file mode 100644
index 00000000000..72f1182be31
--- /dev/null
+++ b/datum/ai_planning_subtree/targeted_mob_ability/evil_mech_weaponry.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/targeted_mob_ability/evil_mech_weaponry - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/targeted_mob_ability/horror_offensive_spellcasting.html b/datum/ai_planning_subtree/targeted_mob_ability/horror_offensive_spellcasting.html
new file mode 100644
index 00000000000..284d1fc754f
--- /dev/null
+++ b/datum/ai_planning_subtree/targeted_mob_ability/horror_offensive_spellcasting.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/targeted_mob_ability/horror_offensive_spellcasting - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/targeted_mob_ability/kidan_princess_spellcasting.html b/datum/ai_planning_subtree/targeted_mob_ability/kidan_princess_spellcasting.html
new file mode 100644
index 00000000000..68678b6c0cc
--- /dev/null
+++ b/datum/ai_planning_subtree/targeted_mob_ability/kidan_princess_spellcasting.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/targeted_mob_ability/kidan_princess_spellcasting - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/targeted_mob_ability/whale_offensive_spellcasting.html b/datum/ai_planning_subtree/targeted_mob_ability/whale_offensive_spellcasting.html
new file mode 100644
index 00000000000..dbebc978f86
--- /dev/null
+++ b/datum/ai_planning_subtree/targeted_mob_ability/whale_offensive_spellcasting.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/targeted_mob_ability/whale_offensive_spellcasting - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/travel_to_point.html b/datum/ai_planning_subtree/travel_to_point.html
new file mode 100644
index 00000000000..d6a5767d342
--- /dev/null
+++ b/datum/ai_planning_subtree/travel_to_point.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/travel_to_point - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/use_mob_ability.html b/datum/ai_planning_subtree/use_mob_ability.html
new file mode 100644
index 00000000000..14a4f7c7bc2
--- /dev/null
+++ b/datum/ai_planning_subtree/use_mob_ability.html
@@ -0,0 +1,2 @@
+/datum/ai_planning_subtree/use_mob_ability - Space Station 13Space Station 13 - Modules - Types — Var Details
use_mob_ability
Simple behaviours which simply try to use an ability whenever it is available.
+For something which wants a target try targeted_mob_ability.
If true we terminate planning after trying to use the ability.
use_ability_behavior
Behaviour to perform using ability
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/warpbots.html b/datum/ai_planning_subtree/warpbots.html
new file mode 100644
index 00000000000..13bdd8aba48
--- /dev/null
+++ b/datum/ai_planning_subtree/warpbots.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/warpbots - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_planning_subtree/wrap_target.html b/datum/ai_planning_subtree/wrap_target.html
new file mode 100644
index 00000000000..e7215e70f06
--- /dev/null
+++ b/datum/ai_planning_subtree/wrap_target.html
@@ -0,0 +1 @@
+/datum/ai_planning_subtree/wrap_target - Space Station 13Space Station 13 - Modules - Types — Var Details
wrap_target
Run the wrap behaviour if we have an ability to use for it
\ No newline at end of file
diff --git a/datum/ai_program.html b/datum/ai_program.html
new file mode 100644
index 00000000000..e6b5d6fd586
--- /dev/null
+++ b/datum/ai_program.html
@@ -0,0 +1 @@
+/datum/ai_program - Space Station 13Space Station 13 - Modules - Types — Var Details
ai_program
The base program type, which holds info about each ability.
How many upgrades have been bought of this program?
cooldown
The cooldown when the ability is used
cost
How much memory does the program cost?
external
Is this program only installable through disk?
installed
Is this program installed?
max_level
Max level for passive upgrades
nanite_cost
How much does this program cost to use?
power_type
If the module gives an active ability, use this. Mutually exclusive with upgrade.
program_id
Internal ID of the program
unlock_sound
Sound played when an ability is unlocked
unlock_text
Text shown when an ability is unlocked
upgrade
If the module gives a passive upgrade, use this. Mutually exclusive with power_type.
upgrade_level
The level of the upgrade for passives
\ No newline at end of file
diff --git a/datum/ai_program/enhanced_doors.html b/datum/ai_program/enhanced_doors.html
new file mode 100644
index 00000000000..6ddf8f2d91e
--- /dev/null
+++ b/datum/ai_program/enhanced_doors.html
@@ -0,0 +1 @@
+/datum/ai_program/enhanced_doors - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ai_program/multimarket_analyser.html b/datum/ai_program/multimarket_analyser.html
new file mode 100644
index 00000000000..7863bbd7346
--- /dev/null
+++ b/datum/ai_program/multimarket_analyser.html
@@ -0,0 +1 @@
+/datum/ai_program/multimarket_analyser - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/announcement_configuration.html b/datum/announcement_configuration.html
new file mode 100644
index 00000000000..2914eede6d3
--- /dev/null
+++ b/datum/announcement_configuration.html
@@ -0,0 +1,3 @@
+/datum/announcement_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
Global announcements are received regardless of being in range of a
+radio, unless you're in the lobby, to prevent metagaming.
log_name
The name used when describing the announcement type in logs.
sound
What sound to play when the announcement is made.
style
A CSS class name.
\ No newline at end of file
diff --git a/datum/announcer.html b/datum/announcer.html
new file mode 100644
index 00000000000..9e1b10c9b83
--- /dev/null
+++ b/datum/announcer.html
@@ -0,0 +1 @@
+/datum/announcer - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/anomalous_particulate_tracker.html b/datum/anomalous_particulate_tracker.html
new file mode 100644
index 00000000000..6edb9c1d66e
--- /dev/null
+++ b/datum/anomalous_particulate_tracker.html
@@ -0,0 +1,7 @@
+/datum/anomalous_particulate_tracker - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Removes a mind from the list of people that need things spawned
Var Details
num_drained
The total number of gatherings that have been drained, for tracking.
smashes
List of tracked influences (reality smashes)
tracked_objectiveholders
List of minds with the objective to get particulate
Proc Details
add_tracked_mind
Adds a mind to the list of people that need things spawned
+
Use this whenever you want to add someone to the list
generate_new_influences
Generates a set amount of reality smashes
+based on the number of already existing smashes
+and the number of minds we're tracking.
remove_tracked_mind
Removes a mind from the list of people that need things spawned
+
Use this whenever you want to remove someone from the list
\ No newline at end of file
diff --git a/datum/antag_org.html b/datum/antag_org.html
new file mode 100644
index 00000000000..e577ec2129e
--- /dev/null
+++ b/datum/antag_org.html
@@ -0,0 +1 @@
+/datum/antag_org - Space Station 13Space Station 13 - Modules - Types — Var Details
antag_org
The lore organization antagonists are attached to. Influences objectives and steal targets.
List of theft targets favored by this organization if any
Var Details
chaos_level
Estimation of how much trouble this antag will be for security.
focus
Used for prob() for objectives. Higher focus means the org is less likely to diverge from their favorites.
forced_objectives
If set, the antag's first objective(s) will be forced to this.
intro_desc
Description given to the antagonist on spawn, below 'You are a Traitor!' or similar
name
Organization's name
objectives
List of objectives favored by this org
targeted_departments
Department(s) targeted by this organization if any
theft_targets
List of theft targets favored by this organization if any
\ No newline at end of file
diff --git a/datum/antagonist.html b/datum/antagonist.html
new file mode 100644
index 00000000000..002a3996695
--- /dev/null
+++ b/datum/antagonist.html
@@ -0,0 +1,66 @@
+/datum/antagonist - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Antagonist datum specific information that appears in the player's notes. Information stored here will be removed when the datum is removed from the player.
The url page name for this antagonist, appended to the end of the wiki url in the form of: [GLOB.configuration.url.wiki_url]/index.php/[wiki_page_name]
Removes owner's dependencies on this antag datum.
+For example: removal of antag datum from owner's antag_datums, antag datum related teams etc.
+If your /datum/antagonist subtype adds more dependencies on owner - they should be cleared there.
Create and assign a full set of randomized, basic human traitor objectives.
+can_hijack - If you want the 5% chance for the antagonist to be able to roll hijack, only true for traitors
Create and assign a single randomized human traitor objective.
+Step one: Seperate your objectives into objectives that lead to people dying, and objectives that do not.
+Objectives that lead to people dying should take up HALF of the pick weight, and non lethal should be the OTHER half.
+After that, add it to the switch list.
+The kill objective pool weight has been done by putting the old code through a million or so runs to figure out averages, to keep it consistant.
Selects and set the organization this antag is associated with.
+Base proc, override as needed
Var Details
antag_datum_blacklist
List of other antag datum types that this type can't coexist with.
antag_hud_name
Holds the name of the hud's icon in the .dmi files, i.e "hudtraitor", "hudvampire", etc.
antag_hud_type
Holds the type of antagonist hud this datum will get, i.e. ANTAG_HUD_TRAITOR, ANTAG_HUD_VAMPIRE, etc.
antag_memory
Antagonist datum specific information that appears in the player's notes. Information stored here will be removed when the datum is removed from the player.
blurb_font
Intro Blurb Font
blurb_text_color
Intro Blurbs text colour
blurb_text_outline_width
Intro Blurbs outline width
boss_title
The title of the players "boss", used for exfil strings
clown_gain_text
If the owner is a clown, this text will be displayed to them when they gain this datum.
clown_removal_text
If the owner is a clown, this text will be displayed to them when they lose this datum.
clown_text_span_class
The spawn class to use for gain/removal clown text
delayed_objectives
Do we have delayed objective giving?
give_objectives
Should we automatically give this antagonist objectives upon them gaining the datum?
in_exchange
If the antagonist has been chosen for either side on an exchange objective
job_rank
Used to determine if the player jobbanned from this role. Things like SPECIAL_ROLE_TRAITOR should go here to determine the role.
mimicking
If the antagonist can have their spoken voice be something else, this is the "voice" that they will appear as.
name
The name of the antagonist.
objective_holder
List of objectives connected to this datum.
organization
The organization, if any, this antag is associated with
owner
Mind that owns this datum.
replace_banned
Should we replace the role-banned player with a ghost?
roundend_category
Section of roundend report, datums with same category will be displayed together, also default header for the section.
show_in_roundend
Set to false to hide the antagonists from roundend report.
silent
Should the owner mob get a greeting text? Determines whether or not the greet() proc is called.
special_role
The special role that will be applied to the owner's special_role var. i.e. SPECIAL_ROLE_TRAITOR, SPECIAL_ROLE_VAMPIRE.
wiki_page_name
The url page name for this antagonist, appended to the end of the wiki url in the form of: [GLOB.configuration.url.wiki_url]/index.php/[wiki_page_name]
Proc Details
add_antag_hud
Adds this datum's antag hud to antag_mob.
+
Arguments:
+
+
antag_mob - the mob to add the antag hud to.
+
add_antag_objective
Create and add an objective of the given type.
+
If the given objective type needs a target, it will try to find a target which isn't already the target of different objective for this antag.
+If one cannot be found, it tries one more time. If one still cannot be found, it will be added as a "Free Objective" without a target.
+
Arguments:
+
+
objective_type - A type path of an objective, for example: /datum/objective/steal
+
explanation_text - the explanation text that will be passed into the objective's New() proc
+
mob/target_override - a target for the objective
+
add_owner_to_gamemode
Adds the owner to their respective gamemode's list. For example SSticker.mode.traitors |= owner.
apply_innate_effects
This handles the application of antag huds/special abilities.
+
Gives the antag mob their assigned hud.
+If they're a clown, removes their clumsy mutataion.
+
Arguments:
+
+
mob/living/mob_override - a mob to apply effects to. Can be null.
+
can_assign_hijack_objective
Check if this antag can be assigned hijack.
can_be_owned
Loops through the owner's antag_datums list and determines if this one is blacklisted by any others.
+
If it's in one of their blacklists, return FALSE. It cannot coexist with the datum we're trying to add here.
create_team
Creates a new antagonist team.
custom_blurb
This is the custom blurb message used on login for an antagonist.
detach_from_owner
Removes owner's dependencies on this antag datum.
+For example: removal of antag datum from owner's antag_datums, antag datum related teams etc.
+If your /datum/antagonist subtype adds more dependencies on owner - they should be cleared there.
farewell
Displays a message to the antag mob while the datum is being deleted, i.e. "Your powers are gone and you're no longer a vampire!"
+
Called in on_removal() if silent is set to FALSE.
finalize_antag
Give the antag any final information or items.
forge_basic_objectives
Create and assign a full set of randomized, basic human traitor objectives.
+can_hijack - If you want the 5% chance for the antagonist to be able to roll hijack, only true for traitors
get_antag_objectives
Get all of this antagonist's objectives, including from the team.
get_team
Returns the team the antagonist belongs to, if any.
give_objectives
Give the antagonist their objectives. Base proc, override as needed.
greet
Displays a message and their objectives to the antag mob after the datum is added to them, i.e. "Greetings you are a traitor! etc.
+
Called in on_gain() if silent it set to FALSE.
handle_clown_mutation
Handles adding and removing the clumsy mutation from clown antags.
+
Arguments:
+
+
clown - the mob in which to add or remove clumsy from.
+
message - the chat message to display to them the clown mob
+
granting_datum - TRUE if the datum is being applied to the clown mob.
+
has_antag_objectives
Do we have any objectives at all, including from a team.
+Faster than get_antag_objectives()
is_banned
Checks if the person trying to receive this datum is role banned from it.
on_body_transfer
Removes antagonist datum effects from the old body and applies it to the new one.
+
Called in the/datum/mind/proc/transfer_to().
+
Arguments:
+
+
new_body - the new body the antag mob is transferring into.
+
old_body - the old body the antag mob is leaving.
+
on_gain
Proc called when the datum is given to a mind.
remove_antag_hud
Removes this datum's antag hud from antag_mob.
+
Arguments:
+
+
antag_mob - the mob to remove the antag hud from.
+
remove_antag_objective
Complement to add_antag_objective that removes the objective.
+Currently unused.
remove_innate_effects
This handles the removal of antag huds/special abilities.
+
Removes the antag's assigned hud.
+If they're a clown, gives them back their clumsy mutataion.
+
Arguments:
+
+
mob/living/mob_override - a mob to remove effects from. Can be null.
+
remove_owner_from_gamemode
Removes the owner from their respective gamemode's list. For example SSticker.mode.traitors -= owner.
replace_banned_player
Attempts to replace the role banned antag with a ghost player.
restore_last_hud_and_role
Re-sets the antag hud and special_role of the owner to that of the previous antag datum they had before this one was added.
+
For example, if the owner has a traitor datum and a vampire datum, both at index 1 and 2 respectively,
+After the vampire datum gets removed, it sets the owner's antag hud/role to whatever is set for traitor datum.
roll_single_human_objective
Create and assign a single randomized human traitor objective.
+Step one: Seperate your objectives into objectives that lead to people dying, and objectives that do not.
+Objectives that lead to people dying should take up HALF of the pick weight, and non lethal should be the OTHER half.
+After that, add it to the switch list.
+The kill objective pool weight has been done by putting the old code through a million or so runs to figure out averages, to keep it consistant.
select_organization
Selects and set the organization this antag is associated with.
+Base proc, override as needed
\ No newline at end of file
diff --git a/datum/antagonist/changeling.html b/datum/antagonist/changeling.html
new file mode 100644
index 00000000000..a2d108c8de2
--- /dev/null
+++ b/datum/antagonist/changeling.html
@@ -0,0 +1,51 @@
+/datum/antagonist/changeling - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Gives the changeling the passed in power. Subtracts the cost of the power from our genetic points.
+
Arugments:
+
+
datum/action/changeling/power - the power to give to the changeling.
+
mob/living/changeling - the changeling who owns this datum. Optional argument.
+
take_cost - if we should spend genetic points when giving the power
+
remove_changeling_powers
Removes a changeling's abilities.
+
Arguments:
+
+
keep_innate_powers - set to TRUE if changeling actions with a power_type of CHANGELING_INNATE_POWER should be kept.
+
remove_specific_power
Removes all power_type abilities that the changeling has. Refunds the cost of the power from our genetic points.
+
Arugments:
+
+
datum/action/changeling/power - the typepath power to remove from the changeling.
+
refund_cost - if we should refund genetic points when giving the power
+
remove_unnatural_languages
Removes all the languages the mob L has absorbed throughout their life as a changeling and should no longer have.
+
Ignores languages the player has chosen from character creation, and species languages from the changeling mob's current species.
+
Arguments:
+
+
mob/living/L - the changeling mob to remove languages from
+
respec
Resets a changeling to the point they were when they first became a changeling, i.e no genetic points to spend, no non-innate powers, etc.
select_dna
Prompt the changeling with a list of names associated with their stored DNA. Return a /datum/dna based on the name chosen.
+
Arguments:
+
+
message - the message of the input() window
+
title - the title of the input() window
+
not_in_bank - if we should filter out DNA that's already in the hivemind bank
+
store_dna
Store the target DNA. If the DNA belongs to one of the changeling's "escape with identity" objectives, make the DNA protected.
+
Arguments:
+
+
datum/dna/new_dna - the DNA to store
+
trim_dna
Clears the most "stale" DNA from the absorbed_dna list.
try_respec
Respec the changeling's powers after first checking if they're able to respec.
update_languages
Teach the changeling every language in the absorbed_language list. Already known languages will be ignored.
using_stale_dna
Determines if the changeling's current DNA is stale.
\ No newline at end of file
diff --git a/datum/antagonist/heretic.html b/datum/antagonist/heretic.html
new file mode 100644
index 00000000000..0c0315cd547
--- /dev/null
+++ b/datum/antagonist/heretic.html
@@ -0,0 +1,44 @@
+/datum/antagonist/heretic - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Signal proc for COMSIG_PARENT_QDELETING registered on sac targets
+if sacrifice targets are deleted (gibbed, dusted, whatever), free their slot and reference
List of all sacrifice target's names, used for end of round report
ascended
Whether we've ascended! (Completed one of the final rituals)
blacklisted_rune_turfs
A blacklist of turfs we cannot scribe on.
drawing_rune
Whether we're drawing a rune or not
feast_of_owls
Wether we are allowed to ascend
force_unlock_ascension
A variable for admins to tweak to allow ascending.
heretic_path
The path our heretic has chosen. Mostly used for flavor.
high_value_sacrifices
A list of TOTAL how many high value sacrifices completed. (Heads of staff)
knowledge_points
A sum of how many knowledge points this heretic CURRENTLY has. Used to research.
list_of_our_monsters
A list of all the monsters the heretic has active.
living_heart_organ_slot
The organ slot we place our Living Heart in.
mindslave_limit
The maximum mindslave limit. Applies to berserks as well
mindslaves
Who do we currently have under our mindslavery?
monster_limit
What is the limit of monsters we can have as a heretic?
our_menu
Our research menu
passive_gain_timer
The time between gaining influence passively. The heretic gain +1 knowledge points every this duration of time.
researched_knowledge
Assoc list of [typepath] = [knowledge instance]. A list of all knowledge this heretic's reserached.
rewards_given
Simpler version of above used to limit amount of loot that can be hoarded
rust_strength
Controls what types of turf we can spread rust to, increases as we unlock more powerful rust abilites
sac_targets
Lazy assoc list of [refs to humans] to [image previews of the human]. Humans that we have as sacrifice targets.
scribing_tools
A static typecache of all tools we can scribe with.
total_sacrifices
A list of TOTAL how many sacrifices completed. (Includes high value sacrifices)
unlocked_heretic_items
List that keeps track of which items have been gifted to the heretic after a cultist was sacrificed. Used to alter drop chances to reduce dupes.
Proc Details
add_sacrifice_target
Add [target] as a sacrifice target for the heretic.
+Generates a preview image and associates it with a weakref of the mob.
admin_change_points
Admin proc for easily adding / removing knowledge points.
admin_give_focus
Admin proc for giving a heretic a focus.
can_ascend
Checks to see if our heretic can currently ascend.
+
Returns FALSE if not all of our objectives are complete, or TRUE otherwise.
check_mansus_grasp_offhand
Callback to check that the user's still got their Mansus Grasp out when drawing a rune.
+
Arguments
+
+
user - the mob drawing the rune
+
draw_rune
The actual process of drawing a rune.
+
Arguments
+
+
user - the mob drawing the rune
+
target_turf - the place the rune's being drawn
+
drawing_time - how long the do_after takes to make the rune
+
additional checks - optional callbacks to be ran while drawing the rune
+
forge_primary_objectives
Create our objectives for our heretic.
gain_knowledge
Learns the passed [typepath] of knowledge, creating a knowledge datum
+and adding it to our researched knowledge list.
+
Returns TRUE if the knowledge was added successfully. FALSE otherwise.
get_knowledge
Check if the wanted type-path is in the list of research knowledge.
get_researchable_knowledge
Get a list of all knowledge TYPEPATHS that we can currently research.
get_rituals
Get a list of all rituals this heretic can invoke on a rune.
+Iterates over all of our knowledge and, if we can invoke it, adds it to our list.
+
Returns an associated list of [knowledge name] to [knowledge datum] sorted by knowledge priority.
give_living_heart
Admin proc for giving a heretic a Living Heart easily.
has_living_heart
Helper to determine if a Heretic
+
+
Has a Living Heart
+
Has a an organ in the correct slot that isn't a living heart
+
Is missing the organ they need in the slot to make a living heart
+
+
Returns HERETIC_NO_HEART_ORGAN if they have no heart (organ) at all,
+Returns HERETIC_NO_LIVING_HEART if they have a heart (organ) but it's not a living one,
+and returns HERETIC_HAS_LIVING_HEART if they have a living heart
increase_rust_strength
Makes our heretic more able to rust things.
+if side_path_only is set to TRUE, this function does nothing for rust heretics.
Signal proc for COMSIG_PARENT_QDELETING registered on sac targets
+if sacrifice targets are deleted (gibbed, dusted, whatever), free their slot and reference
passive_influence_gain
Increments knowledge by one.
+Used in callbacks for passive gain over time.
remove_sacrifice_target
Removes [target] from the heretic's sacrifice list.
+Returns FALSE if no one was removed, TRUE otherwise
remove_target
Admin proc for removing a mob from a heretic's sac list.
try_draw_rune
Attempt to draw a rune on [target_turf].
+
Arguments
+
+
user - the mob drawing the rune
+
target_turf - the place the rune's being drawn
+
drawing_time - how long the do_after takes to make the rune
+
additional checks - optional callbacks to be ran while drawing the rune
+
\ No newline at end of file
diff --git a/datum/antagonist/mindflayer.html b/datum/antagonist/mindflayer.html
new file mode 100644
index 00000000000..f9045b0ff47
--- /dev/null
+++ b/datum/antagonist/mindflayer.html
@@ -0,0 +1,31 @@
+/datum/antagonist/mindflayer - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Begins draining the brain of H, gains swarms equal to the amount of brain damage dealt per tick. Upgrades can increase the amount of damage per tick.
handle_mindflayer
This is the proc that gets called every tick of life(), use this for updating something that should update every few seconds
has_passive
Checks if a mindflayer has a given passive already
+
+
Arguments: to_get - Some datum/mindflayer_passive to check if a mindflayer has
+
Returns: The datum/mindflayer_passive if the mindflayer has the passive already, null otherwise
+
has_spell
Checks if a mindflayer has a given spell already
+
+
Arguments: to_get - Some datum/spell/flayer to check if a mindflayer has
+
Returns: The datum/spell/mindflayer if the mindflayer has the power already, null otherwise
+
\ No newline at end of file
diff --git a/datum/antagonist/mindslave.html b/datum/antagonist/mindslave.html
new file mode 100644
index 00000000000..ff0caac9efe
--- /dev/null
+++ b/datum/antagonist/mindslave.html
@@ -0,0 +1 @@
+/datum/antagonist/mindslave - Space Station 13Space Station 13 - Modules - Types — Var Details
Custom greeting text if you don't want to use the basic greeting. Specify this when making a new mindslave datum with New().
master
A reference to the mind who minslaved us.
master_hud_name
The hudicon for the mindslaves master
\ No newline at end of file
diff --git a/datum/antagonist/space_ninja.html b/datum/antagonist/space_ninja.html
new file mode 100644
index 00000000000..207e4cbca39
--- /dev/null
+++ b/datum/antagonist/space_ninja.html
@@ -0,0 +1 @@
+/datum/antagonist/space_ninja - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/antagonist/traitor.html b/datum/antagonist/traitor.html
new file mode 100644
index 00000000000..a85846a6459
--- /dev/null
+++ b/datum/antagonist/traitor.html
@@ -0,0 +1 @@
+/datum/antagonist/traitor - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Gives a traitor human their uplink, and uplink code.
Var Details
give_codewords
Should the traitor get codewords?
give_uplink
Should we give the traitor their uplink?
is_roundstart
Whether this traitor was assigned during round start
sending_backstab
Have we / are we sending a backstab message at this time. If we are, do not send another.
Proc Details
add_law_zero
Gives traitor AIs, and their connected cyborgs, a law 0. Additionally gives the AI their choose modules action button.
can_assign_hijack_objective
Helper functions for hijack pop checks
finalize_antag
Give human traitors their uplink, and AI traitors their law 0. Play the traitor an alert sound.
forge_ai_objectives
Create and assign a full set of AI traitor objectives.
forge_human_objectives
Create and assign a full set of randomized human traitor objectives.
get_living_security_players_count
Same as above but only count Sec
give_codewords
Notify the traitor of their codewords and write them to antag_memory (notes).
give_uplink
Gives a traitor human their uplink, and uplink code.
\ No newline at end of file
diff --git a/datum/antagonist/uplifted_primitive.html b/datum/antagonist/uplifted_primitive.html
new file mode 100644
index 00000000000..3bcf6a9e7c4
--- /dev/null
+++ b/datum/antagonist/uplifted_primitive.html
@@ -0,0 +1 @@
+/datum/antagonist/uplifted_primitive - Space Station 13Space Station 13 - Modules - Types — Var Details
The list of objective types which can be selected from when picking a personal objective.
Var Details
initial_species
The species of the owner at the time this datum was added.
nest_uid
The UID of the nest built by the owner.
potential_objectives
The list of objective types which can be selected from when picking a personal objective.
\ No newline at end of file
diff --git a/datum/antagonist/vampire.html b/datum/antagonist/vampire.html
new file mode 100644
index 00000000000..1a260315b49
--- /dev/null
+++ b/datum/antagonist/vampire.html
@@ -0,0 +1,18 @@
+/datum/antagonist/vampire - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Remove and delete the vampire's current subclass and all associated abilities.
+
Arguments:
+
+
give_specialize_power - if the specialize power should be given back or not
+
remove_all_powers
Removes all of the vampire's current powers.
subtract_usable_blood
Safely subtract vampire's bloodusable. Clamped between 0 and bloodtotal.
+
Arguments:
+
+
blood_amount: amount of blood to subtract.
+
\ No newline at end of file
diff --git a/datum/antagonist/wizard/adept.html b/datum/antagonist/wizard/adept.html
new file mode 100644
index 00000000000..28b3f4b7a86
--- /dev/null
+++ b/datum/antagonist/wizard/adept.html
@@ -0,0 +1 @@
+/datum/antagonist/wizard/adept - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/antagonist/wizard/apprentice.html b/datum/antagonist/wizard/apprentice.html
new file mode 100644
index 00000000000..9b93a9fd5f7
--- /dev/null
+++ b/datum/antagonist/wizard/apprentice.html
@@ -0,0 +1 @@
+/datum/antagonist/wizard/apprentice - Space Station 13Space Station 13 - Modules - Types — Var Details
Temporary reference to a mob for purposes of objectives, and general text for the apprentice.
Var Details
class_type
The class type of this apprentice,
my_teacher
Temporary reference to a mob for purposes of objectives, and general text for the apprentice.
\ No newline at end of file
diff --git a/datum/antagonist/wizard/construct.html b/datum/antagonist/wizard/construct.html
new file mode 100644
index 00000000000..ea58c5747c9
--- /dev/null
+++ b/datum/antagonist/wizard/construct.html
@@ -0,0 +1 @@
+/datum/antagonist/wizard/construct - Space Station 13Space Station 13 - Modules - Types — Var Details
Temporary reference to a mob for purposes of objectives, and general text for the apprentice.
Var Details
my_creator
Temporary reference to a mob for purposes of objectives, and general text for the apprentice.
\ No newline at end of file
diff --git a/datum/asset.html b/datum/asset.html
new file mode 100644
index 00000000000..0fc5ed36ddb
--- /dev/null
+++ b/datum/asset.html
@@ -0,0 +1,3 @@
+/datum/asset - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Whether or not this asset should be loaded in the "early assets" SS
Proc Details
ensure_ready
Stub that allows us to react to something trying to get us
+Not useful here, more handy for sprite sheets
get_serialized_url_mappings
Returns a cached tgui message of URL mappings
\ No newline at end of file
diff --git a/datum/asset/json.html b/datum/asset/json.html
new file mode 100644
index 00000000000..003c715c841
--- /dev/null
+++ b/datum/asset/json.html
@@ -0,0 +1 @@
+/datum/asset/json - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
\ No newline at end of file
diff --git a/datum/asset/simple.html b/datum/asset/simple.html
new file mode 100644
index 00000000000..9bacf4b2f16
--- /dev/null
+++ b/datum/asset/simple.html
@@ -0,0 +1 @@
+/datum/asset/simple - Space Station 13Space Station 13 - Modules - Types — Var Details
Set to true to have this asset also be sent via browse_rsc when cdn asset 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 browse_rsc when cdn asset transports are enabled
\ No newline at end of file
diff --git a/datum/asset/simple/icon_states.html b/datum/asset/simple/icon_states.html
new file mode 100644
index 00000000000..47b142810b6
--- /dev/null
+++ b/datum/asset/simple/icon_states.html
@@ -0,0 +1 @@
+/datum/asset/simple/icon_states - Space Station 13Space Station 13 - Modules - Types — Var Details
icon_states
Generates assets based on iconstates of a single icon
Used in asset name generation, (asset_name = "[prefix].[icon_state_name].png")
Var Details
generic_icon_names
Generate icon filenames using GENERATE_ASSET_NAME instead the "[prefix].[icon_state_name].png" format
prefix
Used in asset name generation, (asset_name = "[prefix].[icon_state_name].png")
\ No newline at end of file
diff --git a/datum/asset/simple/namespaced.html b/datum/asset/simple/namespaced.html
new file mode 100644
index 00000000000..f1c1190efdb
--- /dev/null
+++ b/datum/asset/simple/namespaced.html
@@ -0,0 +1,7 @@
+/datum/asset/simple/namespaced - Space Station 13Space Station 13 - Modules - Types — Var Details
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)
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.
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.
\ No newline at end of file
diff --git a/datum/asset/spritesheet.html b/datum/asset/spritesheet.html
new file mode 100644
index 00000000000..2125de4d07f
--- /dev/null
+++ b/datum/asset/spritesheet.html
@@ -0,0 +1,9 @@
+/datum/asset/spritesheet - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Returns the size class (ex design32x32) for a given sprite's icon
Var Details
sizes
"32x32" -> list(10, icon/normal, icon/stripped)
sprites
"foo_bar" -> list("32x32", 5)
Proc Details
ModifyInserted
A simple proc handing the Icon for you to modify before it gets turned into an asset.
+
Arguments:
+
+
I: icon being turned into an asset
+
icon_size_id
Returns the size class (ex design32x32) for a given sprite's icon
+
Arguments:
+
+
sprite_name - The sprite to get the size of
+
\ No newline at end of file
diff --git a/datum/asset_cache_item.html b/datum/asset_cache_item.html
new file mode 100644
index 00000000000..9b91ade3deb
--- /dev/null
+++ b/datum/asset_cache_item.html
@@ -0,0 +1,11 @@
+/datum/asset_cache_item - Space Station 13Space Station 13 - 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.
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)
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
Var Details
ext
our file extension e.g. .png, .gif, etc
hash
md5() of the file this asset item represents.
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?
name
the name of this asset item, becomes the key in SSassets.cache list
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
resource
the file this asset represents
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
\ No newline at end of file
diff --git a/datum/asset_transport.html b/datum/asset_transport.html
new file mode 100644
index 00000000000..b0b1b666c3e
--- /dev/null
+++ b/datum/asset_transport.html
@@ -0,0 +1,28 @@
+/datum/asset_transport - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
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 SSassets.transport.get_asset_url and the asset isn't marked legacy, fix one of those.
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 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.
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.
Check 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 SSassets.transport.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:
+
+
asset_name - the identifier of the asset.
+
asset - the actual asset file (or an asset_cache_item datum).
+
file_hash - optional, a hash of the contents of the asset files contents. used so asset_cache_item doesnt have to hash it again
+
dmi_file_path - optional, means that the given asset is from the rsc and thus we dont need to do some expensive operations
+
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
\ No newline at end of file
diff --git a/datum/asset_transport/webroot.html b/datum/asset_transport/webroot.html
new file mode 100644
index 00000000000..e583086add5
--- /dev/null
+++ b/datum/asset_transport/webroot.html
@@ -0,0 +1,11 @@
+/datum/asset_transport/webroot - Space Station 13Space Station 13 - Modules - Types — Proc Details
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 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.
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.
\ No newline at end of file
diff --git a/datum/atom_hud.html b/datum/atom_hud.html
new file mode 100644
index 00000000000..e1e3ff9b963
--- /dev/null
+++ b/datum/atom_hud.html
@@ -0,0 +1 @@
+/datum/atom_hud - Space Station 13Space Station 13 - Modules - Types — Var Details
Do we ignore the invisibility check? Used by anom huds so we can see our stuff.
Var Details
ignore_invisibility_check
Do we ignore the invisibility check? Used by anom huds so we can see our stuff.
\ No newline at end of file
diff --git a/datum/atom_hud/data/pressure.html b/datum/atom_hud/data/pressure.html
new file mode 100644
index 00000000000..999b6c463f2
--- /dev/null
+++ b/datum/atom_hud/data/pressure.html
@@ -0,0 +1 @@
+/datum/atom_hud/data/pressure - Space Station 13Space Station 13 - Modules - Types — Proc Details
Pressure hud is special, because it doesn't use hudatoms. SSair manages its images, so tell SSair to add the initial set.
Proc Details
add_hud_to
Pressure hud is special, because it doesn't use hudatoms. SSair manages its images, so tell SSair to add the initial set.
\ No newline at end of file
diff --git a/datum/attack_info.html b/datum/attack_info.html
new file mode 100644
index 00000000000..83f66033a90
--- /dev/null
+++ b/datum/attack_info.html
@@ -0,0 +1,2 @@
+/datum/attack_info - Space Station 13Space Station 13 - Modules - Types — Var Details
attack_info
A datum storing information about attacks an atom has received.
+Only contains attacker name/ckey right now but could be expanded.
Name and type of the weapon that the last attack was performed with.
Var Details
last_attacker_ckey
Ckey of the player who performed the last attack.
last_attacker_name
Name of the mob who performed the last attack.
last_attacker_weapon
Name and type of the weapon that the last attack was performed with.
\ No newline at end of file
diff --git a/datum/barsign.html b/datum/barsign.html
new file mode 100644
index 00000000000..dab19370aeb
--- /dev/null
+++ b/datum/barsign.html
@@ -0,0 +1 @@
+/datum/barsign - Space Station 13Space Station 13 - Modules - Types — Var Details
Signs that have a syndicate theme. Normally accessed by emagging the sign.
Var Details
hidden
Signs that should never be accessed by players via the selection menu.
syndicate
Signs that have a syndicate theme. Normally accessed by emagging the sign.
\ No newline at end of file
diff --git a/datum/beam.html b/datum/beam.html
new file mode 100644
index 00000000000..923227c3a1e
--- /dev/null
+++ b/datum/beam.html
@@ -0,0 +1,31 @@
+/datum/beam - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
beam
+
Beam Datum and Effect
+
+
IF YOU ARE LAZY AND DO NOT WANT TO READ, GO TO THE BOTTOM OF THE FILE AND USE THAT PROC!
+
+
+
This is the beam datum! It's a really neat effect for the game in drawing a line from one atom to another.
+
+
+
It has two parts:
+
+
+
The datum itself which manages redrawing the beam to constantly keep it pointing from the origin to the target.
+
+
+
The effect which is what the beams are made out of. They're placed in a line from the origin to target, rotated towards the target and snipped off at the end.
+
+
+
These effects are kept in a list and constantly created and destroyed (hence the proc names draw and reset, reset destroying all effects and draw creating more.)
+
+
+
You can add more special effects to the beam itself by changing what the drawn beam effects do. For example you can make a vine that pricks people by making the beam_type
+
+
+
include a crossed proc that damages the crosser. Examples in venus_human_trap.dm
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.
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.
Var Details
beam_color
The color of the beam we're drawing.
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
use_get_turf
Should we use a turf for origin/target's x and y values instead
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.
\ No newline at end of file
diff --git a/datum/bitfield.html b/datum/bitfield.html
new file mode 100644
index 00000000000..2579eb98e9c
--- /dev/null
+++ b/datum/bitfield.html
@@ -0,0 +1 @@
+/datum/bitfield - Space Station 13Space Station 13 - Modules - Types — Var Details
An associative list of the readable flag and its true value
variable
The variable name that contains the bitfield
\ No newline at end of file
diff --git a/datum/body_accessory.html b/datum/body_accessory.html
new file mode 100644
index 00000000000..e28ee99db0f
--- /dev/null
+++ b/datum/body_accessory.html
@@ -0,0 +1 @@
+/datum/body_accessory - Space Station 13Space Station 13 - Modules - Types — Var Details
If true, adds an underlay (in addition to the regular overlay!) to the character sprite, with the state "[icon_state]_BEHIND".
Var Details
has_behind
If true, adds an underlay (in addition to the regular overlay!) to the character sprite, with the state "[icon_state]_BEHIND".
\ No newline at end of file
diff --git a/datum/browser.html b/datum/browser.html
new file mode 100644
index 00000000000..32651c215a2
--- /dev/null
+++ b/datum/browser.html
@@ -0,0 +1 @@
+/datum/browser - Space Station 13Space Station 13 - Modules - Types — Var Details
Various options to control elements such as titlebar buttons for the window
Var Details
atom_uid
UID of the host atom
content
HTML content of the browser datum
head_content
Header HTML content of the browser datum
include_default_stylesheet
Should default stylesheets be loaded
scripts
Assoc list of script files for use by the datum
stylesheets
Assoc list of stylesheets for use by the datum
window_id
window_id is used as the window name for browse and onclose calls
window_options
Various options to control elements such as titlebar buttons for the window
\ No newline at end of file
diff --git a/datum/buildmode_mode/tilting.html b/datum/buildmode_mode/tilting.html
new file mode 100644
index 00000000000..b9336b849fa
--- /dev/null
+++ b/datum/buildmode_mode/tilting.html
@@ -0,0 +1 @@
+/datum/buildmode_mode/tilting - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/cachedbook.html b/datum/cachedbook.html
new file mode 100644
index 00000000000..bb9de1bb95d
--- /dev/null
+++ b/datum/cachedbook.html
@@ -0,0 +1 @@
+/datum/cachedbook - Space Station 13Space Station 13 - Modules - Types — Proc Details
cachedbook
Datum used to cache the SQL DB books locally in order to achieve a performance gain.
helper proc to turn our returned query rows into a cachedbook datum
Proc Details
LoadFromRow
helper proc to turn our returned query rows into a cachedbook datum
\ No newline at end of file
diff --git a/datum/callback/verb_callback.html b/datum/callback/verb_callback.html
new file mode 100644
index 00000000000..4635a8e8a52
--- /dev/null
+++ b/datum/callback/verb_callback.html
@@ -0,0 +1 @@
+/datum/callback/verb_callback - Space Station 13Space Station 13 - Modules - Types — Var Details
verb_callback
like normal callbacks but they also record their creation time for measurement purposes
the tick this callback datum was created in. used for testing latency
Var Details
creation_time
the tick this callback datum was created in. used for testing latency
\ No newline at end of file
diff --git a/datum/camerachunk.html b/datum/camerachunk.html
new file mode 100644
index 00000000000..937bf97d6d6
--- /dev/null
+++ b/datum/camerachunk.html
@@ -0,0 +1,4 @@
+/datum/camerachunk - Space Station 13Space Station 13 - Modules - Types — Proc Details
camerachunk
A 16x16 grid of the map with a list of turfs that can be seen, are visible and are dimmed.
+Allows camera eyes to stream these chunks and know what they can and cannot see.
Updates the chunk, makes sure that it doesn't update too much. If the chunk isn't being watched it will
+instead be flagged to update the next time a camera eye moves near it.
Called when a chunk has changed. I.E: A wall was deleted.
Proc Details
New
Create a new camera chunk, since the chunks are made as they are needed.
add
Add a camera eye to the chunk, then update if changed.
add_camera
Adds a camera to the chunk if it has not already been added.
camera_moved
Handles each movement by a camera that has been added to the chunk.
has_changed
Updates the chunk, makes sure that it doesn't update too much. If the chunk isn't being watched it will
+instead be flagged to update the next time a camera eye moves near it.
remove
Remove a camera eye from the chunk, then update if changed.
remove_camera
Removes a camera from the chunk.
update
Gathers the visible turfs from cameras and puts them into the appropiate lists.
visibility_changed
Called when a chunk has changed. I.E: A wall was deleted.
\ No newline at end of file
diff --git a/datum/cameranet.html b/datum/cameranet.html
new file mode 100644
index 00000000000..bba501b45fa
--- /dev/null
+++ b/datum/cameranet.html
@@ -0,0 +1,9 @@
+/datum/cameranet - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Private method for updating the chunk an atom is in, and all surrounding chunks.
+add will be added as a camera to the chunk of its current location and all surrounding chunks.
+remove will be removed as a camera from the chunk of its current location and all surrounding chunks.
+update will not be added or removed as a camera, but its surrounding chunks will be updated.
+These parameters are mutually exclusive.
The cameras on the map, no matter if they work or not. Updated in obj/machinery/camera.dm by New() and Destroy().
chunks
The chunks of the map, mapping the areas that the cameras can see.
Proc Details
add_camera
Add a camera to a chunk.
check_camera_vis
Returns 1 if a mob is on a viewable turf, otherwise returns 0.
chunk_generated
Returns the chunk at (x, y, z) if it exists, otherwise returns null.
get_camera_chunk
Returns the chunk at (x, y, z) if it exists, otherwise returns a new chunk at that location.
major_chunk_change
Private method for updating the chunk an atom is in, and all surrounding chunks.
+add will be added as a camera to the chunk of its current location and all surrounding chunks.
+remove will be removed as a camera from the chunk of its current location and all surrounding chunks.
+update will not be added or removed as a camera, but its surrounding chunks will be updated.
+These parameters are mutually exclusive.
remove_camera
Removes a camera from a chunk.
update_portable_camera
Refreshes the chunk location of a portable camera. Used by Cyborgs.
update_visibility
Updates the chunks that the turf is located in. Use this when obstacles are destroyed or when doors open.
visibility
Updates what the camera network can see.
\ No newline at end of file
diff --git a/datum/can_pass_info.html b/datum/can_pass_info.html
new file mode 100644
index 00000000000..8f710c9ef7f
--- /dev/null
+++ b/datum/can_pass_info.html
@@ -0,0 +1,8 @@
+/datum/can_pass_info - Space Station 13Space Station 13 - Modules - Types — Var Details
can_pass_info
Holds all information about what an atom can move through
+Passed into CanPathfindPass to provide context for a pathing attempt
+
Also used to check if using a cached path_map is safe
+There are some vars here that are unused. They exist to cover cases where caller_ref is used
+They're the properties of caller_ref used in those cases.
+It's kinda annoying, but there's some proc chains we can't convert to this datum
If our mob is buckled to something, what's it like
camera_type
Cameras have a lot of BS can_z_move overrides
+Let's avoid this
can_ventcrawl
Can we ventcrawl?
has_gravity
Do we have gravity
incapacitated
Is our mob incapacitated
incorporeal_move
Is our mob incorporeal
is_bot
Are we a bot?
is_drone
Are we a drone?
is_flying
Are we flying?
is_living
Are we a living mob?
is_megafauna
Are we megafauna?
is_movable
Are we a movable? This seems weird but some of our pathfind checks do check for this
is_observer
Are we a ghost? (they have effectively unique pathfinding)
mob_size
What is the size of our mob
movement_type
What sort of movement do we have. Mirrors /atom/movable/movement_type
no_id
If we have no id, public airlocks are walls
pass_flags
What we can pass through. Mirrors /atom/movable/pass_flags
pulling_info
Pass information for the object we are pulling, if any
rider_info
If our mob has a rider, what does it look like
thrown
Are we being thrown?
\ No newline at end of file
diff --git a/datum/candidate_poll.html b/datum/candidate_poll.html
new file mode 100644
index 00000000000..e00febdbc4c
--- /dev/null
+++ b/datum/candidate_poll.html
@@ -0,0 +1,13 @@
+/datum/candidate_poll - Space Station 13Space Station 13 - Modules - Types — Proc Details
Deletes any candidates who may have disconnected from the list
Proc Details
remove_candidate
Attempts to remove a signed-up mob from a poll.
+
Arguments:
+
+
M - The mob to remove from the poll, if present.
+
silent - If TRUE, no messages will be sent to M about their removal.
+
sign_up
Attempts to sign a (controlled) mob up
+
Will fail if the mob is already signed up or the poll's timer ran out.
+Does not check for eligibility
+Arguments:
+
+
M - The (controlled) mob to sign up
+
silent - Whether no messages should appear or not. If not TRUE, signing up to this poll will also sign the mob up for identical polls
+
time_left
Returns the time left for a poll
trim_candidates
Deletes any candidates who may have disconnected from the list
\ No newline at end of file
diff --git a/datum/card_deck_table_tracker.html b/datum/card_deck_table_tracker.html
new file mode 100644
index 00000000000..f288114ae4c
--- /dev/null
+++ b/datum/card_deck_table_tracker.html
@@ -0,0 +1 @@
+/datum/card_deck_table_tracker - Space Station 13Space Station 13 - Modules - Types — Var Details
The list of tables that the card deck's location is contiguous with.
Var Details
debug
Indicate field activity with colors on the field's turfs.
deck_uid
The UID of the deck
floors
The list of floors from which a player can access the card field.
host
The deck we're tracking.
max_table_distance
How far away you can be (in terms of table squares).
max_total_distance
How far away you can be (euclidean distance).
tables
The list of tables that the card deck's location is contiguous with.
\ No newline at end of file
diff --git a/datum/cell_tracker.html b/datum/cell_tracker.html
new file mode 100644
index 00000000000..f4becd317be
--- /dev/null
+++ b/datum/cell_tracker.html
@@ -0,0 +1,13 @@
+/datum/cell_tracker - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
cell_tracker
Spatial gridmap, cell tracking
+
This datum exists to make the large, repeated "everything in some range" pattern faster
+Rather then just refreshing against everything, we track all the cells in range of the passed in "window"
+This lets us do entered/left logic, and make ordinarially quite expensive logic much cheaper
+
Note: This system should not be used for things who have strict requirements about what is NOT in their processed entries
+It should instead only be used for logic that only really cares about limiting how much gets "entered" in any one call
+Because we apply this limitation, we can do things to make our code much less prone to unneeded work
Returns a list of newly and formerly joined spatial grid managed objects of type [type] in the form list(new, old)
+Takes the center of our window as input
Takes a width and height, and uses them to set the inner window, and interpolate the outer window
Var Details
inner_window_x_radius
The height (y radius) of our inner window
inner_window_y_radius
The width (x radius) of our inner window
outer_window_x_radius
The height (y radius) of our outer window
outer_window_y_radius
The width (x radius) of our outer window
Proc Details
New
Accepts a width and height to use for this tracker
+Also accepts the ratio to use between inner and outer window. Optional, defaults to 2
recalculate_cells
Recalculates our member list, returns a list in the form list(new members, old members) for reaction
+Accepts the turf to use as our "center"
recalculate_type_members
Returns a list of newly and formerly joined spatial grid managed objects of type [type] in the form list(new, old)
+Takes the center of our window as input
set_bounds
Takes a width and height, and uses them to set the inner window, and interpolate the outer window
\ No newline at end of file
diff --git a/datum/changeling_power_category.html b/datum/changeling_power_category.html
new file mode 100644
index 00000000000..523b8062e1b
--- /dev/null
+++ b/datum/changeling_power_category.html
@@ -0,0 +1 @@
+/datum/changeling_power_category - Space Station 13Space Station 13 - Modules - Types — Var Details
The number used to determine category position in changeling evolution menu UI
Var Details
name
The name of the category
priority
The number used to determine category position in changeling evolution menu UI
\ No newline at end of file
diff --git a/datum/character_save.html b/datum/character_save.html
new file mode 100644
index 00000000000..6935c75c4dc
--- /dev/null
+++ b/datum/character_save.html
@@ -0,0 +1,13 @@
+/datum/character_save - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
limit - The amount of jobs allowed per column. Defaults to 17 to make it look nice.
+splitJobs - Allows you split the table by job. You can make different tables for each department by including their heads. Defaults to CE to make it look nice.
+widthPerColumn - Screen's width for every column.
+height - Screen's height.
+1366x768 is a common screen resolution, and increasing widthPerColumn or height to above 400 and 700,
+will result in the window being placed outside the screen for these users. If we get more jobs than limit x 3, increase limit.
Load in and process the database's information on the player's character save.
+The order of indices here is the relative order from get_query() in 20-load-characters.dm.
Var Details
body_accessory
The body accessory name of the mob (e.g. wings, tail).
custom_emotes
Custom emote text ("name" = "emote text")
cyborg_brain_type
If a spawned cyborg should have an MMI, a positronic, or a robobrain. MMI by default
from_db
Is this character from the DB?
pda_ringtone
The ringtone their PDA should start with
quirks
A list/JSON of the quirk datums to attach to the character
runechat_color
Runechat color
slot_number
Character slot number, used for saves and stuff.
valid_save
Is this character valid to be picked? This is necessary to avoid someone getting a bald human called "Character 30"
Proc Details
SetChoices
limit - The amount of jobs allowed per column. Defaults to 17 to make it look nice.
+splitJobs - Allows you split the table by job. You can make different tables for each department by including their heads. Defaults to CE to make it look nice.
+widthPerColumn - Screen's width for every column.
+height - Screen's height.
+1366x768 is a common screen resolution, and increasing widthPerColumn or height to above 400 and 700,
+will result in the window being placed outside the screen for these users. If we get more jobs than limit x 3, increase limit.
load
Load in and process the database's information on the player's character save.
+The order of indices here is the relative order from get_query() in 20-load-characters.dm.
\ No newline at end of file
diff --git a/datum/chat_payload.html b/datum/chat_payload.html
new file mode 100644
index 00000000000..411e3a9f63d
--- /dev/null
+++ b/datum/chat_payload.html
@@ -0,0 +1 @@
+/datum/chat_payload - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Returns an HTML-encoded message from our contents.
into_message
Converts the chat payload into a JSON string
\ No newline at end of file
diff --git a/datum/chatmessage.html b/datum/chatmessage.html
new file mode 100644
index 00000000000..14c94900897
--- /dev/null
+++ b/datum/chatmessage.html
@@ -0,0 +1,35 @@
+/datum/chatmessage - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
finishes the image generation after the MeasureText() call in generate_image().
+necessary because after that call the proc can resume at the end of the tick and cause overtime.
Our animation lifespan, how long this message will last
animate_start
When we started animating the message
approx_lines
Contains the approximate amount of lines for height decay
current_z_idx
The current index used for adjusting the layer of each sequential chat message such that recent messages will overlay older ones
message
The visual element of the chat messsage
message_loc
The location in which the message is appearing
owned_by
The client who heard this message
Proc Details
New
Constructs a chat message overlay
+
Arguments:
+
+
text - The text content of the overlay
+
target - The target atom to display the overlay at
+
owner - The mob that owns this overlay, only this mob will be able to view it
+
italics - Should we use italics or not
+
lifespan - The lifespan of the message in deciseconds
+
symbol - The symbol type of the message
+
colorize_string
Gets a color for a name, will return the same color for a given string consistently within a round.atom
+
Note that this proc aims to produce pastel-ish colors using the HSL colorspace. These seem to be favorable for displaying on the map.
+
Arguments:
+
+
name - The name to generate a color for
+
sat_shift - A value between 0 and 1 that will be multiplied against the saturation
+
lum_shift - A value between 0 and 1 that will be multiplied against the luminescence
+
finish_image_generation
finishes the image generation after the MeasureText() call in generate_image().
+necessary because after that call the proc can resume at the end of the tick and cause overtime.
generate_image
Generates a chat message image representation
+
Arguments:
+
+
text - The text content of the overlay
+
target - The target atom to display the overlay at
+
owner - The mob that owns this overlay, only this mob will be able to view it
+
radio_speech - Fancy shmancy radio icon represents that we use radio
+
lifespan - The lifespan of the message in deciseconds
+
italics - Just copy and paste, sir
+
size - Size of the message
+
symbol - The symbol type of the message
+
get_current_alpha
Returns the current alpha of the message based on the time spent
on_parent_qdel
Calls qdel on the chatmessage when its parent is deleted, used to register qdel signal
sanitize_color
Ensures a colour is bright enough for the system
+
This proc is used to brighten parts of a colour up if its too dark, and looks bad
+
Arguments:
+
+
hex - Hex colour to be brightened up
+
\ No newline at end of file
diff --git a/datum/chemical_production_mode.html b/datum/chemical_production_mode.html
new file mode 100644
index 00000000000..05b8bc47923
--- /dev/null
+++ b/datum/chemical_production_mode.html
@@ -0,0 +1,5 @@
+/datum/chemical_production_mode - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
required data Data persistent through invocations in the same loop.
+required R The reagents used to make the item P.
+required P The container to configure.
\ No newline at end of file
diff --git a/datum/chemical_reaction.html b/datum/chemical_reaction.html
new file mode 100644
index 00000000000..f5350430930
--- /dev/null
+++ b/datum/chemical_reaction.html
@@ -0,0 +1,9 @@
+/datum/chemical_reaction - Space Station 13Space Station 13 - Modules - Types — Var Details
This is the amount of the resulting reagent this recipe will produce.
+It's recommended you set this to the total volume of all required reagents.
Var Details
required_container
The container required for the reaction to happen.
+Leave this null if you want the reaction to happen anywhere.
required_other
Extra requirements for the reaction to happen.
required_reagents
A list of IDs of the required reagents.
+
Each ID also needs an associated value that gives us the minimum
+required amount / of that reagent. The handle_reaction proc can detect
+mutiples of the same recipes / so for most cases you want to set the
+required amount to 1.
result_amount
This is the amount of the resulting reagent this recipe will produce.
+It's recommended you set this to the total volume of all required reagents.
\ No newline at end of file
diff --git a/datum/chemical_reaction/acapulco_de_noche.html b/datum/chemical_reaction/acapulco_de_noche.html
new file mode 100644
index 00000000000..575666a07d7
--- /dev/null
+++ b/datum/chemical_reaction/acapulco_de_noche.html
@@ -0,0 +1 @@
+/datum/chemical_reaction/acapulco_de_noche - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/chemical_reaction/hanky_panky.html b/datum/chemical_reaction/hanky_panky.html
new file mode 100644
index 00000000000..6cc401e7a08
--- /dev/null
+++ b/datum/chemical_reaction/hanky_panky.html
@@ -0,0 +1 @@
+/datum/chemical_reaction/hanky_panky - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/chemical_reaction/matadora_beer.html b/datum/chemical_reaction/matadora_beer.html
new file mode 100644
index 00000000000..72ec779c411
--- /dev/null
+++ b/datum/chemical_reaction/matadora_beer.html
@@ -0,0 +1 @@
+/datum/chemical_reaction/matadora_beer - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/chemical_reaction/michelada.html b/datum/chemical_reaction/michelada.html
new file mode 100644
index 00000000000..08914ae9623
--- /dev/null
+++ b/datum/chemical_reaction/michelada.html
@@ -0,0 +1 @@
+/datum/chemical_reaction/michelada - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/chemical_reaction/unclegits_specialmilk.html b/datum/chemical_reaction/unclegits_specialmilk.html
new file mode 100644
index 00000000000..1895143d6a1
--- /dev/null
+++ b/datum/chemical_reaction/unclegits_specialmilk.html
@@ -0,0 +1 @@
+/datum/chemical_reaction/unclegits_specialmilk - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/chemical_reaction/vampiro.html b/datum/chemical_reaction/vampiro.html
new file mode 100644
index 00000000000..0b60fb9d6ec
--- /dev/null
+++ b/datum/chemical_reaction/vampiro.html
@@ -0,0 +1 @@
+/datum/chemical_reaction/vampiro - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/chemical_reaction/zombie.html b/datum/chemical_reaction/zombie.html
new file mode 100644
index 00000000000..9e0c74d7175
--- /dev/null
+++ b/datum/chemical_reaction/zombie.html
@@ -0,0 +1 @@
+/datum/chemical_reaction/zombie - Space Station 13Space Station 13 - Modules - Types — Var Details
A virus symptom required to complete this chemical reaction
Var Details
amt_req_cures
The amount of reagents to pick from get_possible_cures()
cure_level
The cure level of the reagent, level 4 cure requires level 3 cure, which requires level 2 cure, etc
required_symptom
A virus symptom required to complete this chemical reaction
\ No newline at end of file
diff --git a/datum/click_intercept.html b/datum/click_intercept.html
new file mode 100644
index 00000000000..f44c0a9574a
--- /dev/null
+++ b/datum/click_intercept.html
@@ -0,0 +1,11 @@
+/datum/click_intercept - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Click intercept datum
Datum which is intended to be stored by a client's click_intercept variable.
+Used to override normal clicking behavior when clicking on an object.
+While active, a mob's ClickOn proc will redirect to the InterceptClickOn() proc instead.
Called when you want to cancel a client's click intercept and return to normal clicking.
Var Details
buttons
Any atom/movable/screen/buttons the client is meant to receive when assigned this click intercept datum.
holder
A reference to the client which is assigned this click intercept datum.
Proc Details
InterceptClickOn
Called in various mob's ClickOn procs, which happens when they click on an object in the world.
+
If the mob's client.click_intercept variable is set to something other than null, calls the InterceptClickOn proc for that click intercept datum. Aka, this proc.
+
If you return TRUE, click on ends the click. Otherwise, normal clicking happens
+Arguments:
+
+
user - the mob which just clicked on something.
+
params - the params arguemnt passed from the ClickOn proc.
+
object - the atom that was just clicked.
+
create_buttons
Base proc, intended to be overriden. Code that adds datum specific buttons to the list of buttons, should go here.
quit
Called when you want to cancel a client's click intercept and return to normal clicking.
\ No newline at end of file
diff --git a/datum/click_intercept/give.html b/datum/click_intercept/give.html
new file mode 100644
index 00000000000..6ac3aef3b5c
--- /dev/null
+++ b/datum/click_intercept/give.html
@@ -0,0 +1 @@
+/datum/click_intercept/give - Space Station 13Space Station 13 - Modules - Types — Var Details
Give click intercept
While a mob has this intercept, left clicking on a carbon mob will attempt to offer their currently held item to that mob.
If the intercept user has succesfully offered the item to another player.
Var Details
item_offered
If the intercept user has succesfully offered the item to another player.
\ No newline at end of file
diff --git a/datum/client_login_processor.html b/datum/client_login_processor.html
new file mode 100644
index 00000000000..202223934ec
--- /dev/null
+++ b/datum/client_login_processor.html
@@ -0,0 +1,26 @@
+/datum/client_login_processor - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Client Login Processor Framework
The holder class for all client data processing
+
This framework is designed for loading in client data from the database.
+Login processors have their own queries, which will be put into one async batch and
+executed at the same time, to reduce the time it takes for a client to login.
+Login processors can also be given priorities to have things fire in specific orders
+EG: Load their preferences before their job bans, etc etc
+
When creating these, please name the files with the priority at the start, and the typepath after
+EG: 10-load_preferences.dm
+This makes it easier to track stuff down -AA07
The login priority. A lower priority will fire first
Proc Details
get_query
Query Getter
+
Gets the DB query for this login processor
+
Takes the client as an arg instead of just the ckey incase we need more data (IP, CID, etc).
+Returns a DB query datum.
+
Arguments:
+
+
C - The client to use to generate the query
+
process_result
Result Processor
+
Takes the (now executed) query and the client and parses the required data out
+Note: This can be a no-op if you want to just update the DB, just return on the override
+
Arguments:
+
+
Q - The DB query to process data from
+
C - The client to store stuff on
+
\ No newline at end of file
diff --git a/datum/cloning_data.html b/datum/cloning_data.html
new file mode 100644
index 00000000000..bed0bb16f4e
--- /dev/null
+++ b/datum/cloning_data.html
@@ -0,0 +1,5 @@
+/datum/cloning_data - Space Station 13Space Station 13 - Modules - Types — Var Details
cloning_data
A datum to store the information gained by scanning a patient OR the fixes to be made to their body.
The patient's external organs (limbs) and their data, stored as an associated list of lists.
+List format: limb = list(brute, burn, status, missing, name, max damage)
The patient's internal organs and their data, stored as an associated list of lists.
+List format: organ = list(damage, status, missing, name, max damage, organ tag)
The patient's external organs (limbs) and their data, stored as an associated list of lists.
+List format: limb = list(brute, burn, status, missing, name, max damage)
mindUID
A reference to the patient's mind.
name
The patient's name.
organs
The patient's internal organs and their data, stored as an associated list of lists.
+List format: organ = list(damage, status, missing, name, max damage, organ tag)
quirks
What quirks the patient has
\ No newline at end of file
diff --git a/datum/code_revision.html b/datum/code_revision.html
new file mode 100644
index 00000000000..7df46855a63
--- /dev/null
+++ b/datum/code_revision.html
@@ -0,0 +1,8 @@
+/datum/code_revision - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
code_revision
Code Revision Datum
+
Allows the server code to be aware of the Git environment it is running in, and lets commit hash be viewed
Origin commit (Only set if running TGS, and will only be different if the server is running testmerges)
testmerges
List of testmerges (If applicable)
Proc Details
get_testmerge_chatmessage
Testmerge Chat Message Helper
+
Formats testmerged PRs into a nice message
+Arguments:
+
+
header - Should a header be sent too
+
log_info
Code Revision Logging Helper
+
Small proc to simplify logging all this stuff
\ No newline at end of file
diff --git a/datum/cogbar.html b/datum/cogbar.html
new file mode 100644
index 00000000000..210cbdc6c3b
--- /dev/null
+++ b/datum/cogbar.html
@@ -0,0 +1,20 @@
+/datum/cogbar - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Cogbar
Represents that the user is busy doing something.
+
The cogbar is a visual representation in the game that indicates to other players
+that a user is currently busy with an action. This class handles the creation,
+display, and removal of the cog animation.
Removes the cog from the user
+Initiates the removal process for the cog overlay.
Var Details
blank
The blank image that overlaps the cog - hides it from the source user
cog
The visible element to other players
offset_y
The offset of the icon
user
Who's doing the thing
user_client
The user client
Proc Details
Destroy
Cleans up the cogbar instance, removing overlays and images associated with the user.
+
This method ensures that all visual elements are properly removed when the cogbar instance is destroyed
New
Initializes a new instance of the cogbar for the specified user.
+
This constructor sets up the user and user client properties, adds the cog overlay
+to the user, and registers a signal to handle user deletion.
+
@param user - The user for whom the cogbar is created.
add_cog_to_user
Adds the cog to the user, visible by other players
+Adds the cog overlay to the user, making it visible to other players.
+
This function creates the cog overlay with appropriate properties and
+initiates the animation to fade it in. Additionally, a blank image is
+added to the user's client to hide the cog from the user's own perspective.
on_user_delete
When the user is deleted, remove the cog
+Handles the cleanup when the associated user is deleted.
+
This function is triggered by a signal and ensures that the cogbar instance is properly destroyed
remove
Removes the cog from the user
+Initiates the removal process for the cog overlay.
+
This function fades out the cog overlay and schedules the cogbar instance
+for deletion after the animation completes.
\ No newline at end of file
diff --git a/datum/color_matrix.html b/datum/color_matrix.html
new file mode 100644
index 00000000000..9c8de3e1bce
--- /dev/null
+++ b/datum/color_matrix.html
@@ -0,0 +1 @@
+/datum/color_matrix - Space Station 13Space Station 13 - Modules - Types — Proc Details
color_matrix
A color matrix allows us to set the color of an atom in a list form, thus allowing us to change color in more flexible ways. For example, we can set the brightness and contrast of the bloom and exposure of lamps
Value can be color as text (e.g. "#735184") that will set matrix to be the same color / number that will set the saturation of matrix / the color list itself, contrast as number, brightness as number
Value can be color as text (e.g. "#735184") that will set matrix to be the same color / number that will set the saturation of matrix / the color list itself, contrast as number, brightness as number
hex2value
Handles values from 00 to FF.
\ No newline at end of file
diff --git a/datum/component.html b/datum/component.html
new file mode 100644
index 00000000000..e968d5b9fb8
--- /dev/null
+++ b/datum/component.html
@@ -0,0 +1,31 @@
+/datum/component - Space Station 13Space Station 13 - 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
datum/P the parent datum this component reacts to signals from
+
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
Deletes the component and removes it from parent.
UnlinkComponent
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
ui_host
Return the object that is the host of any UI's that this component has
\ No newline at end of file
diff --git a/datum/component/action_item_overlay.html b/datum/component/action_item_overlay.html
new file mode 100644
index 00000000000..28c21673ac1
--- /dev/null
+++ b/datum/component/action_item_overlay.html
@@ -0,0 +1,2 @@
+/datum/component/action_item_overlay - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
action_item_overlay
Apply to an action to allow it to take an item
+and apply it as an overlay of the action button
\ No newline at end of file
diff --git a/datum/component/aggro_emote.html b/datum/component/aggro_emote.html
new file mode 100644
index 00000000000..9d0e66b1c5f
--- /dev/null
+++ b/datum/component/aggro_emote.html
@@ -0,0 +1 @@
+/datum/component/aggro_emote - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
aggro_emote
A component for ai-controlled atoms which plays a sound if they switch to a living target which they can attack
When we get a new target, see if we want to bark at it
Var Details
aggro_sound
Aggro sound
aggro_volume
Volume for the sound
emote_chance
Chance to play an emote
emote_list
List of emotes to play
living_only
If we want to limit emotes to only play at mobs
minimum_chance
Minimum chance to play an emote
say_list
List of possible things to say
sound_vary
Does the sound vary
subtract_chance
Chance to subtract every time we play an emote (permanently)
target_key
Blackboard key in which target data is stored
Proc Details
on_target_changed
When we get a new target, see if we want to bark at it
\ No newline at end of file
diff --git a/datum/component/ai_retaliate_advanced.html b/datum/component/ai_retaliate_advanced.html
new file mode 100644
index 00000000000..5a14c3295e5
--- /dev/null
+++ b/datum/component/ai_retaliate_advanced.html
@@ -0,0 +1,3 @@
+/datum/component/ai_retaliate_advanced - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
ai_retaliate_advanced
Attached to a mob with an AI controller, passes things which have damaged it to a blackboard.
+The AI controller is responsible for doing anything with that information.
+Differs from the element as it passes new entries through a callback.
Add an attacking atom to a blackboard list of things which attacked us
Var Details
post_retaliate_callback
Callback to a mob for custom behaviour
Proc Details
on_attacked
Add an attacking atom to a blackboard list of things which attacked us
\ No newline at end of file
diff --git a/datum/component/ai_target_timer.html b/datum/component/ai_target_timer.html
new file mode 100644
index 00000000000..0e072e3e1e6
--- /dev/null
+++ b/datum/component/ai_target_timer.html
@@ -0,0 +1 @@
+/datum/component/ai_target_timer - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
ai_target_timer
Increments a blackboard key while the attached mob is engaged with a particular target, does nothing else on its own
Store the current time on our timer in our blackboard key
Var Details
increment_key
Blackboard key to store data inside
last_target
The last target we had
reset_clock_timer
Timer used to see if you
target_key
Blackboard key to watch to indicate whether we are 'in combat'
time_on_target
Amount of time we have spent focused on one target
Proc Details
changed_target
When we get a new target, reset the timer and start processing
finalise_losing_target
Called if we have had no target for long enough
lost_target
When we lose our target, start a short timer in case we reacquire it very quickly
store_current_time
Store the current time on our timer in our blackboard key
\ No newline at end of file
diff --git a/datum/component/anti_magic.html b/datum/component/anti_magic.html
new file mode 100644
index 00000000000..dc72f4e1671
--- /dev/null
+++ b/datum/component/anti_magic.html
@@ -0,0 +1,21 @@
+/datum/component/anti_magic - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
anti_magic
This provides different types of magic resistance on an object
Whether we should, on equipping, alert the caster that this item can block any of their spells
+This changes between true and false on equip and drop, don't set it outright to something
cannot cast magic with the same type of antimagic present
Var Details
alert_caster_on_equip
Whether we should, on equipping, alert the caster that this item can block any of their spells
+This changes between true and false on equip and drop, don't set it outright to something
antimagic_flags
A bitflag with the types of magic resistance on the object
charges
The amount of times the object can protect the user from magic
+Set to INFINITY to have, well, infinite charges.
drain_antimagic
The callback invoked when we have been drained a antimagic charge
expiration
The callback invoked when twe have been depleted of all charges
inventory_flags
The inventory slot the object must be located at in order to activate
Proc Details
Initialize
Adds magic resistances to an object
+
Magic resistance will prevent magic from affecting the user if it has the correct resistance
+against the type of magic being used
+
args:
+
+
antimagic_flags (optional) A bitflag with the types of magic resistance on the object
+
charges (optional) The amount of times the object can protect the user from magic
+
inventory_flags (optional) The inventory slot the object must be located at in order to activate
+
drain_antimagic (optional) The proc that is triggered when an object has been drained a antimagic charge
+
expiration (optional) The proc that is triggered when the object is depleted of charges
+
+
antimagic bitflags: (see code/__DEFINES/magic.dm)
+
+
MAGIC_RESISTANCE - Default magic resistance that blocks normal magic (wizard, spells, staffs)
+
MAGIC_RESISTANCE_MIND - Tinfoil hat magic resistance that blocks mental magic (telepathy, abductors, jelly people)
+
MAGIC_RESISTANCE_HOLY - Holy magic resistance that blocks unholy magic (revenant, cult, vampire, voice of god)
+
restrict_casting_magic
cannot cast magic with the same type of antimagic present
\ No newline at end of file
diff --git a/datum/component/aura_healing.html b/datum/component/aura_healing.html
new file mode 100644
index 00000000000..26ebf1abf38
--- /dev/null
+++ b/datum/component/aura_healing.html
@@ -0,0 +1,4 @@
+/datum/component/aura_healing - Space Station 13Space Station 13 - Modules - Types — Var Details
aura_healing
Applies healing to those in the area.
+Will provide them with an alert while they're in range, as well as
+give them a healing particle.
+Can be applied to those only with a trait conditionally.
Whether or not you must be a visible object of the parent
simple_heal
Amount of damage to heal on simple mobs over a second
stamina_heal
Stamina damage to heal over a second
suffocation_heal
Suffocation damage to heal over a second
toxin_heal
Toxin damage to heal over a second
\ No newline at end of file
diff --git a/datum/component/automatic_fire.html b/datum/component/automatic_fire.html
new file mode 100644
index 00000000000..c082846a33e
--- /dev/null
+++ b/datum/component/automatic_fire.html
@@ -0,0 +1,3 @@
+/datum/component/automatic_fire - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Reset for our windup, resetting everything back to initial values after a variable set amount of time (determined by var/windup_spindown).
Var Details
allow_akimbo
Should dual wielding be allowed?
autofire_shot_delay
Time between individual shots.
current_windup_reduction
the reduction to shot delay for windup
mouse_status
This seems hacky but there can be two MouseDown() without a MouseUp() in between if the user holds click and uses alt+tab, printscreen or similar.
timerid
Timer for tracking the spindown reset timings
windup_autofire
windup autofire vars
+Whether the delay between shots increases over time, simulating a spooling weapon
windup_autofire_cap
How high of a reduction that current_windup_reduction can reach
windup_autofire_reduction_multiplier
the percentage of autfire_shot_delay that is added to current_windup_reduction
windup_spindown
How long it takes for weapons that have spooled-up to reset back to the original firing speed
Proc Details
windup_reset
Reset for our windup, resetting everything back to initial values after a variable set amount of time (determined by var/windup_spindown).
\ No newline at end of file
diff --git a/datum/component/boomerang.html b/datum/component/boomerang.html
new file mode 100644
index 00000000000..bbddab30aca
--- /dev/null
+++ b/datum/component/boomerang.html
@@ -0,0 +1,20 @@
+/datum/component/boomerang - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
boomerang
If an object is given the boomerang component, it should be thrown back to the thrower after either hitting it's target, or landing on the thrown tile.
+Thrown objects should be thrown back to the original thrower with this component, a number of tiles defined by boomerang_throw_range.
Proc that triggers when the thrown boomerang does not hit a target.
Var Details
boomerang_throw_range
How far should the boomerang try to travel to return to the thrower?
last_boomerang_throw
This cooldown prevents our 2 throwing signals from firing too often based on how we implement those signals within thrown impacts.
thrower_easy_catch_enabled
If this boomerang is thrown, does it re-enable the throwers throw mode?
Proc Details
aerodynamic_swing
Proc that triggers when the thrown boomerang has been fully thrown, rethrowing the boomerang back to the thrower, and producing visible feedback.
+
+
throwing_datum: The thrownthing datum that originally impacted the object, that we use to build the new throwing datum for the rebound.
+
hit_atom: The atom that has been hit by the boomerang'd object.
+
prepare_throw
Proc'd before the first thrown is performed in order to gather information regarding each throw as well as handle throw_mode as necessary.
+
+
source: Datum src from original signal call.
+
thrown_thing: The thrownthing datum from the parent object's latest throw. Updates thrown_boomerang.
+
spin: Carry over from POST_THROW, the speed of rotation on the boomerang when thrown.
+
return_hit_throw
Proc that triggers when the thrown boomerang hits an object.
+
+
source: Datum src from original signal call.
+
hit_atom: The atom that has been hit by the boomerang component.
+
init_throwing_datum: The thrownthing datum that originally impacted the object, that we use to build the new throwing datum for the rebound.
+
return_missed_throw
Proc that triggers when the thrown boomerang does not hit a target.
+
+
source: Datum src from original signal call.
+
throwing_datum: The thrownthing datum that originally impacted the object, that we use to build the new throwing datum for the rebound.
+
\ No newline at end of file
diff --git a/datum/component/boss_music.html b/datum/component/boss_music.html
new file mode 100644
index 00000000000..718e73c5187
--- /dev/null
+++ b/datum/component/boss_music.html
@@ -0,0 +1,5 @@
+/datum/component/boss_music - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
boss_music
Attaches to a hostile simplemob and plays that music while they have a target.
Removes old_target from the list of players listening, and stops their music if it is still playing.
+This allows them to have music played again if they re-enter combat with this fauna.
Handles giving the boss music to a new target the fauna has received.
+Keeps track of them to not repeatedly overwrite its own track.
Var Details
boss_track
The music track we will play to players.
music_callbacks
List of callback timers, used to clear out mobs listening to boss music after track_duration.
players_listening_uids
List of all mobs listening to the boss music currently. Cleared on Destroy or after track_duration.
track_duration
How long the track is, used to clear players out when the music is supposed to end.
Proc Details
clear_target
Removes old_target from the list of players listening, and stops their music if it is still playing.
+This allows them to have music played again if they re-enter combat with this fauna.
on_mob_death
Called when a mob listening to boss music dies- ends their music early.
on_target_found
Handles giving the boss music to a new target the fauna has received.
+Keeps track of them to not repeatedly overwrite its own track.
\ No newline at end of file
diff --git a/datum/component/breed.html b/datum/component/breed.html
new file mode 100644
index 00000000000..0375d46f549
--- /dev/null
+++ b/datum/component/breed.html
@@ -0,0 +1 @@
+/datum/component/breed - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/component/caltrop.html b/datum/component/caltrop.html
new file mode 100644
index 00000000000..82c95ca287b
--- /dev/null
+++ b/datum/component/caltrop.html
@@ -0,0 +1 @@
+/datum/component/caltrop - Space Station 13Space Station 13 - Modules - Types — Var Details
given to connect_loc to listen for something moving over target
flags
Shoebypassing, walking interaction, silence
max_damage
Maximum damage when crossed
min_damage
Minimum damage when crossed
probability
Probability of stunning and doing daamge
weaken_duration
Duration of weaken when crossed
\ No newline at end of file
diff --git a/datum/component/codeword_hearing.html b/datum/component/codeword_hearing.html
new file mode 100644
index 00000000000..c2d2c0c51d7
--- /dev/null
+++ b/datum/component/codeword_hearing.html
@@ -0,0 +1,6 @@
+/datum/component/codeword_hearing - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
codeword_hearing
Component that allows for highlighting of words or phrases in chat based on regular expressions.
+
Hooks into /mob/proc/combine_message to wrap every regex match in the message
+between tags with the provided span class. This modifies the output that
+is sent to the parent's chat window.
+
Removal of this component should be done by calling [GetComponents(/datum/component/codeword_hearing)]
+on the parent and then iterating through all components calling [delete_if_from_source(source)].
Since a parent can have multiple of these components on them simultaneously, this allows a datum to delete components from a specific source.
Var Details
replace_regex
Regex for matching words or phrases you want highlighted.
source
The source of this component. Used to identify the source in delete_if_from_source since this component is COMPONENT_DUPE_ALLOWED.
span_class
The to use for highlighting matches.
Proc Details
delete_if_from_source
Since a parent can have multiple of these components on them simultaneously, this allows a datum to delete components from a specific source.
\ No newline at end of file
diff --git a/datum/component/connect_containers.html b/datum/component/connect_containers.html
new file mode 100644
index 00000000000..e340df31751
--- /dev/null
+++ b/datum/component/connect_containers.html
@@ -0,0 +1,3 @@
+/datum/component/connect_containers - Space Station 13Space Station 13 - Modules - Types — Var Details
connect_containers
This component behaves similar to connect_loc_behalf, but it's nested and hooks a signal onto all MOVABLES containing this atom.
The atom the component is tracking. The component will delete itself if the tracked is deleted.
+Signals will also be updated whenever it moves.
Var Details
connections
An assoc list of signal -> procpath to register to the loc this object is on.
tracked
The atom the component is tracking. The component will delete itself if the tracked is deleted.
+Signals will also be updated whenever it moves.
\ No newline at end of file
diff --git a/datum/component/connect_loc_behalf.html b/datum/component/connect_loc_behalf.html
new file mode 100644
index 00000000000..4928db96a7e
--- /dev/null
+++ b/datum/component/connect_loc_behalf.html
@@ -0,0 +1,4 @@
+/datum/component/connect_loc_behalf - Space Station 13Space Station 13 - Modules - Types — Var Details
connect_loc_behalf
This component behaves similar to connect_loc, hooking into a signal on a tracked object's turf
+It has the ability to react to that signal on behalf of a separate listener however
+This has great use, primarily for components, but it carries with it some overhead
+So we do it separately as it needs to hold state which is very likely to lead to bugs if it remains as an element.
An assoc list of signal -> procpath to register to the loc this object is on.
Var Details
connections
An assoc list of signal -> procpath to register to the loc this object is on.
\ No newline at end of file
diff --git a/datum/component/connect_mob_behalf.html b/datum/component/connect_mob_behalf.html
new file mode 100644
index 00000000000..d864a391988
--- /dev/null
+++ b/datum/component/connect_mob_behalf.html
@@ -0,0 +1,3 @@
+/datum/component/connect_mob_behalf - Space Station 13Space Station 13 - Modules - Types — Var Details
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 seperate listener, which makes this quite powerful
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
\ No newline at end of file
diff --git a/datum/component/connect_range.html b/datum/component/connect_range.html
new file mode 100644
index 00000000000..9cc7fbdd15d
--- /dev/null
+++ b/datum/component/connect_range.html
@@ -0,0 +1,5 @@
+/datum/component/connect_range - Space Station 13Space Station 13 - Modules - Types — Var Details
connect_range
This component behaves similar to connect_loc_behalf but for all turfs in range, hooking into a signal on each of them.
+Just like connect_loc_behalf, It can react to that signal on behalf of a seperate listener.
+Good for components, though it carries some overhead. Can't be an element as that may lead to bugs.
The atom the component is tracking. The component will delete itself if the tracked is deleted.
+Signals will also be updated whenever it moves (if it's a movable).
Whether the component works when the movable isn't directly located on a turf.
Var Details
connections
An assoc list of signal -> procpath to register to the loc this object is on.
range
The component will hook into signals only on turfs not farther from tracked than this.
tracked
The atom the component is tracking. The component will delete itself if the tracked is deleted.
+Signals will also be updated whenever it moves (if it's a movable).
turfs
The turfs currently connected to this component
works_in_containers
Whether the component works when the movable isn't directly located on a turf.
\ No newline at end of file
diff --git a/datum/component/construct_held_body.html b/datum/component/construct_held_body.html
new file mode 100644
index 00000000000..1f8a14ac815
--- /dev/null
+++ b/datum/component/construct_held_body.html
@@ -0,0 +1,2 @@
+/datum/component/construct_held_body - Space Station 13Space Station 13 - Modules - Types — Var Details
construct_held_body
A component for tracking and manipulating bodies held inside constructs/shades
+Will drop the body/brain when the parent dies or is deleted.
A reference to either a mob, or a brain organ that is held inside our parent. Will drop when parent dies/is deleted
Var Details
held_body
A reference to either a mob, or a brain organ that is held inside our parent. Will drop when parent dies/is deleted
\ No newline at end of file
diff --git a/datum/component/corpse_description.html b/datum/component/corpse_description.html
new file mode 100644
index 00000000000..9b3ce28ca97
--- /dev/null
+++ b/datum/component/corpse_description.html
@@ -0,0 +1,2 @@
+/datum/component/corpse_description - Space Station 13Space Station 13 - Modules - Types — Var Details
corpse_description
Mapping component which adds examine text to a corpse that is removed on revival (in case for some reason someone revives your space ruin mob)
+For immersive environmental story telling
\ No newline at end of file
diff --git a/datum/component/damage_aura.html b/datum/component/damage_aura.html
new file mode 100644
index 00000000000..d18ddeb4548
--- /dev/null
+++ b/datum/component/damage_aura.html
@@ -0,0 +1,2 @@
+/datum/component/damage_aura - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
damage_aura
Applies a status effect and deals damage to people in the area.
+Will deal more damage the more people are present.
What effect the damage aura has if it has an owner.
Var Details
blood_damage
Amount of blood to damage over a second
brute_damage
Brute damage to damage over a second
burn_damage
Burn damage to damage over a second
current_owner
Sets a special set of conditions for the owner
damage_message
If set, gives a message when damaged
immune_factions
Which factions are immune to the damage aura
last_damage_effect_time
Declares the cooldown timer for the damage aura effect to take place
message_probability
Probability for above.
range
The range of which to damage
requires_visibility
Whether or not you must be a visible object of the parent
simple_damage
Amount of damage to damage on simple mobs over a second
stamina_damage
Stamina damage to damage over a second
suffocation_damage
Suffocation damage to damage over a second
toxin_damage
Toxin damage to damage over a second
Proc Details
check_requirements
The requirements for the mob to be effected by the damage aura.
owner_effect
What effect the damage aura has if it has an owner.
\ No newline at end of file
diff --git a/datum/component/deadchat_control.html b/datum/component/deadchat_control.html
new file mode 100644
index 00000000000..a406ea91b29
--- /dev/null
+++ b/datum/component/deadchat_control.html
@@ -0,0 +1,10 @@
+/datum/component/deadchat_control - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
deadchat_control
Deadchat Plays Things - The Componenting
+
Allows deadchat to control stuff and things by typing commands into chat.
+These commands will then trigger callbacks to execute procs!
Assoc list of ckey:value pairings. In DEADCHAT_DEMOCRACY_MODE, value is the player's vote. In DEADCHAT_ANARCHY_MODE, value is world.time when their cooldown expires.
Set to true if a point of interest was created for an object, and needs to be removed if deadchat control is removed. Needed for preventing objects from having two points of interest.
In DEADCHAT_DEMOCRACY_MODE, this is how long players have to vote on an input. In DEADCHAT_ANARCHY_MODE, this is how long between inputs for each unique player.
Prevents messages used to control the parent from counting towards the automute threshold for repeated identical messages.
Var Details
ckey_to_cooldown
Assoc list of ckey:value pairings. In DEADCHAT_DEMOCRACY_MODE, value is the player's vote. In DEADCHAT_ANARCHY_MODE, value is world.time when their cooldown expires.
deadchat_mode
A bitfield containing the mode which this component uses (DEADCHAT_DEMOCRACY_MODE or DEADCHAT_ANARCHY_MODE) and other settings)
generated_point_of_interest
Set to true if a point of interest was created for an object, and needs to be removed if deadchat control is removed. Needed for preventing objects from having two points of interest.
input_cooldown
In DEADCHAT_DEMOCRACY_MODE, this is how long players have to vote on an input. In DEADCHAT_ANARCHY_MODE, this is how long between inputs for each unique player.
inputs
Assoc list of key-chat command string, value-callback pairs. list("right" = CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(_step), src, EAST))
on_removal
Callback invoked when this component is Destroy()ed to allow the parent to return to a non-deadchat controlled state.
orbiters
List of everything orbitting this component's parent.
timerid
The id for the DEADCHAT_DEMOCRACY_MODE looping vote timer.
Proc Details
_step
Dummy to call since we can't proc reference builtins
end_cooldown
Removes the ghost from the ckey_to_cooldown list and lets them know they are free to submit a command for the parent again.
on_examine
Informs any examiners to the inputs available as part of deadchat control, as well as the current operating mode and cooldowns.
waive_automute
Prevents messages used to control the parent from counting towards the automute threshold for repeated identical messages.
message: The message that the speaker is trying to say.
+
mute_type: Which type of mute the message counts towards.
+
\ No newline at end of file
diff --git a/datum/component/deadchat_control/cardinal_movement.html b/datum/component/deadchat_control/cardinal_movement.html
new file mode 100644
index 00000000000..0882dfbdae5
--- /dev/null
+++ b/datum/component/deadchat_control/cardinal_movement.html
@@ -0,0 +1,3 @@
+/datum/component/deadchat_control/cardinal_movement - Space Station 13Space Station 13 - Modules - Types — Proc Details
A special variant of the deadchat_control component that comes pre-baked with all the hottest inputs for a spicy
+singularity or vomit goose.
\ No newline at end of file
diff --git a/datum/component/deadchat_control/human.html b/datum/component/deadchat_control/human.html
new file mode 100644
index 00000000000..f8c292a4077
--- /dev/null
+++ b/datum/component/deadchat_control/human.html
@@ -0,0 +1,3 @@
+/datum/component/deadchat_control/human - Space Station 13Space Station 13 - Modules - Types — Proc Details
A special variant of the deadchat_control component that comes pre-baked with basic inputs for moving humans around,
+with special behavior that has them resist while moving.
\ No newline at end of file
diff --git a/datum/component/deadchat_control/immovable_rod.html b/datum/component/deadchat_control/immovable_rod.html
new file mode 100644
index 00000000000..7efee0e84c0
--- /dev/null
+++ b/datum/component/deadchat_control/immovable_rod.html
@@ -0,0 +1,3 @@
+/datum/component/deadchat_control/immovable_rod - Space Station 13Space Station 13 - Modules - Types — Proc Details
A special variant of the deadchat_control component that comes pre-baked with all the hottest inputs for spicy
+immovable rod.
\ No newline at end of file
diff --git a/datum/component/death_linked.html b/datum/component/death_linked.html
new file mode 100644
index 00000000000..262fc8818f9
--- /dev/null
+++ b/datum/component/death_linked.html
@@ -0,0 +1,2 @@
+/datum/component/death_linked - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
death_linked
Death link component
+
When the owner of this component dies it also gibs a linked mob
\ No newline at end of file
diff --git a/datum/component/debris.html b/datum/component/debris.html
new file mode 100644
index 00000000000..c568ba04cae
--- /dev/null
+++ b/datum/component/debris.html
@@ -0,0 +1 @@
+/datum/component/debris - Space Station 13Space Station 13 - Modules - Types — Var Details
Icon state of debris when impacted by a projectile
debris_amount
Amount of debris particles
debris_scale
Scale of particle debris
debris_velocity
Velocity of debris particles
\ No newline at end of file
diff --git a/datum/component/defib.html b/datum/component/defib.html
new file mode 100644
index 00000000000..67dc9fdd31c
--- /dev/null
+++ b/datum/component/defib.html
@@ -0,0 +1,18 @@
+/datum/component/defib - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Start the defibrillation process when triggered by a signal.
Var Details
actual_unit_uid
uid to an item that should be making noise and handling things that our direct parent shouldn't be concerned with.
busy
If the defib is actively performing a defib cycle
charge_sound
Sound for defib windup.
combat
If it should penetrate space suits
cooldown
Cooldown length for this defib in deciseconds
emag_proof
If true, this cannot be emagged.
emp_proof
If true, EMPs will have no effect.
fail_sound
Sound when the defib fails.
heart_attack_chance
If combat is true, this determines whether or not it should always cause a heart attack.
on_cooldown
Whether or not we're currently on cooldown
robotic
If this is being used by a borg or not, with necessary safeties applied if so.
safety
Whether the safeties are enabled or not
safety_off_sound
Sound when the defib's safety is disabled.
safety_on_sound
Sound when the defib's safety is enabled.
speed_multiplier
How fast the defib should work.
success_sound
Sound when the defib is successful.
zap_sound
Sound when the defib shocks the patient.
Proc Details
Initialize
Create a new defibrillation component.
+
Arguments:
+
+
robotic - whether this should be treated like a borg module.
+
cooldown - Minimum time possible between shocks.
+
speed_multiplier - Speed multiplier for defib do-afters.
+
combat - If true, the defib can zap through hardsuits.
+
heart_attack_chance - If combat and safeties are off, the % chance for this to cause a heart attack on harm intent.
+
safe_by_default - If true, safety will be enabled by default.
+
emp_proof - If true, safety won't be switched by emp. Note that the device itself can still have behavior from it, it's just that the component will not.
+
emag_proof - If true, safety won't be switched by emag. Note that the device itself can still have behavior from it, it's just that the component will not.
+
actual_unit - Unit which the component's parent is based from, such as a large defib unit or a borg. The actual_unit will make the sounds and be the "origin" of visible messages, among other things.
+
defibrillate
Perform a defibrillation.
fibrillate
Inflict stamina loss (and possibly inflict cardiac arrest) on someone.
+
Arguments:
+
+
user - wielder of the defib
+
target - person getting shocked
+
get_effect_target
Get the "parent" that effects (emags, EMPs) should be applied onto.
trigger_defib
Start the defibrillation process when triggered by a signal.
\ No newline at end of file
diff --git a/datum/component/direct_explosive_trap.html b/datum/component/direct_explosive_trap.html
new file mode 100644
index 00000000000..6a711e114fc
--- /dev/null
+++ b/datum/component/direct_explosive_trap.html
@@ -0,0 +1 @@
+/datum/component/direct_explosive_trap - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
direct_explosive_trap
Responds to certain signals and 'explodes' on the person using the item.
Optional additional target checks before we go off
explosive_force
Amount of force to apply
saboteur
An optional mob to inform about explosions
triggering_signals
Signals which set off the bomb, must pass a mob as the first non-source argument
Proc Details
bomb_expired
Called if we sit too long without going off
explode
Blow up
on_bomber_deleted
Don't hang a reference to the person who placed the bomb
on_examined
Let people know something is up
\ No newline at end of file
diff --git a/datum/component/drift.html b/datum/component/drift.html
new file mode 100644
index 00000000000..f5ce5073d01
--- /dev/null
+++ b/datum/component/drift.html
@@ -0,0 +1,3 @@
+/datum/component/drift - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
drift
Component that handles drifting
+Manages a movement loop that actually does the legwork of moving someone
+Alongside dealing with the post movement input blocking required to make things look nice
If we're pulling something and stop, we want it to continue at our rate and such
Var Details
delayed
Have we been delayed? IE: active, but not working right this second?
Proc Details
Initialize
Accepts three args. The direction to drift in, if the drift is instant or not, and if it's not instant, the delay on the start
stopped_pulling
If we're pulling something and stop, we want it to continue at our rate and such
\ No newline at end of file
diff --git a/datum/component/effect_remover.html b/datum/component/effect_remover.html
new file mode 100644
index 00000000000..6caea4192f3
--- /dev/null
+++ b/datum/component/effect_remover.html
@@ -0,0 +1 @@
+/datum/component/effect_remover - Space Station 13Space Station 13 - Modules - Types — Var Details
If above 0, how long it takes while standing still to remove the effect.
Var Details
effects_we_clear
A typecache of all effects we can clear with our item.
on_clear_callback
Callback invoked with removal is done.
success_feedback
Line sent to the user on successful removal.
success_forcesay
Line forcesaid by the user on successful removal.
time_to_remove
If above 0, how long it takes while standing still to remove the effect.
\ No newline at end of file
diff --git a/datum/component/emissive_blocker.html b/datum/component/emissive_blocker.html
new file mode 100644
index 00000000000..7ca994bd7ec
--- /dev/null
+++ b/datum/component/emissive_blocker.html
@@ -0,0 +1 @@
+/datum/component/emissive_blocker - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Updates the generic blocker when the icon_state is changed
Var Details
stored_blocker
Stores either the mutable_appearance or a list of them
Proc Details
update_generic_block
Updates the generic blocker when the icon_state is changed
\ No newline at end of file
diff --git a/datum/component/event_tracker.html b/datum/component/event_tracker.html
new file mode 100644
index 00000000000..b75e18e663b
--- /dev/null
+++ b/datum/component/event_tracker.html
@@ -0,0 +1 @@
+/datum/component/event_tracker - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/component/footstep.html b/datum/component/footstep.html
new file mode 100644
index 00000000000..8ff1672e956
--- /dev/null
+++ b/datum/component/footstep.html
@@ -0,0 +1 @@
+/datum/component/footstep - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
footstep
Footstep component. Plays footsteps at parents location when it is appropriate.
Prepares a footstep. Determines if it should get played. Returns the turf it should get played on. Note that it is always a /turf/simulated/floor (eventually /turf/open)
Var Details
e_range
e_range stands for extra range - aka how far the sound can be heard. This is added to the base value and ignored if there isn't a base value.
footstep_sounds
This can be a list OR a soundfile OR null. Determines whatever sound gets played.
footstep_type
footstep_type is a define which determines what kind of sounds should get chosen.
sound_vary
Whether or not to add variation to the sounds played
steps
How many steps the parent has taken since the last time a footstep was played.
volume
volume determines the extra volume of the footstep. This is multiplied by the base volume, should there be one.
Proc Details
play_simplestep_machine
Prepares a footstep for machine walking
prepare_step
Prepares a footstep. Determines if it should get played. Returns the turf it should get played on. Note that it is always a /turf/simulated/floor (eventually /turf/open)
\ No newline at end of file
diff --git a/datum/component/forces_doors_open.html b/datum/component/forces_doors_open.html
new file mode 100644
index 00000000000..0a0193c66b4
--- /dev/null
+++ b/datum/component/forces_doors_open.html
@@ -0,0 +1,2 @@
+/datum/component/forces_doors_open - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Whether the airlock can be forced open while powered.
can_force_open_while_unpowered
Whether the airlock can be forced open while unpowered.
can_open_firedoors
Whether the firedoor can be opened.
no_sound
Indicates whether no sound should be played when opening.
open_sound
The sound played when the airlock is forced open.
time_to_open
The time it takes to open the airlock when forced
Proc Details
check_intent
check is user in harm intent
open_powered_airlock
open airlock with delay
open_unpowered_door
open door without checks
try_to_force_open_airlock
try to force open airlock
try_to_open_firedoor
try to open firedoor
\ No newline at end of file
diff --git a/datum/component/forces_doors_open/mantis.html b/datum/component/forces_doors_open/mantis.html
new file mode 100644
index 00000000000..dc1d6ab7cef
--- /dev/null
+++ b/datum/component/forces_doors_open/mantis.html
@@ -0,0 +1 @@
+/datum/component/forces_doors_open/mantis - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/datum/component/ghost_direct_control.html b/datum/component/ghost_direct_control.html
new file mode 100644
index 00000000000..d193f025f56
--- /dev/null
+++ b/datum/component/ghost_direct_control.html
@@ -0,0 +1 @@
+/datum/component/ghost_direct_control - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
ghost_direct_control
Component which lets ghosts click on a mob to take control of it
Callback run after someone successfully takes over the body
assumed_control_message
Message to display upon successful possession
awaiting_ghosts
If we're currently awaiting the results of a ghost poll
ban_type
Type of ban you can get to prevent you from accepting this role
extra_control_checks
Any extra checks which need to run before we take over
is_antag_spawner
Is this an antagonist spawner, so we check ROLE_SYNDICATE
Proc Details
assume_direct_control
Grant possession of our mob, component is now no longer required
attempt_possession
We got far enough to establish that this mob is a valid target, let's try to posssess it
on_examined
Inform ghosts that they can possess this
on_ghost_clicked
A ghost clicked on us, they want to get in this body
on_login
When someone assumes control, get rid of our component
request_ghost_control
Send out a request for a brain
\ No newline at end of file
diff --git a/datum/component/inherent_radioactivity.html b/datum/component/inherent_radioactivity.html
new file mode 100644
index 00000000000..04f7c5fc2db
--- /dev/null
+++ b/datum/component/inherent_radioactivity.html
@@ -0,0 +1 @@
+/datum/component/inherent_radioactivity - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/component/jetpack.html b/datum/component/jetpack.html
new file mode 100644
index 00000000000..e8b00da0d1e
--- /dev/null
+++ b/datum/component/jetpack.html
@@ -0,0 +1,9 @@
+/datum/component/jetpack - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Returns true if the thrust went well, false otherwise
Var Details
activation_signal
The signal we listen for as an activation
check_on_move
Checks to ensure if we can move & if we can activate
deactivation_signal
The signal we listen for as a de-activation
effect_type
The typepath to instansiate our trail as, when we need it
return_flag
The return flag our parent expects for a failed activation
stabilize
If we should stabilize ourselves when not drifting
trail
The effect system for the jet pack trail
Proc Details
Initialize
Arguments:
+
+
stabilize - If we should drift when we finish moving, or sit stable in space]
+
activation_signal - Signal we activate on
+
deactivation_signal - Signal we deactivate on
+
return_flag - Flag to return if activation fails
+
check_on_move - Callback we call each time we attempt a move, we expect it to retun true if the move is ok, false otherwise. It expects an arg, TRUE if fuel should be consumed, FALSE othewise
+
effect_type - Type of trail_follow to spawn
+
block_starting_visuals
Basically, tell the drift component not to do its starting visuals, because they look dumb for us
ignore_ending_block
If we're on, don't let the drift component block movements at the end since we can speed
thrust
Returns true if the thrust went well, false otherwise
\ No newline at end of file
diff --git a/datum/component/label.html b/datum/component/label.html
new file mode 100644
index 00000000000..cec36d2ce1e
--- /dev/null
+++ b/datum/component/label.html
@@ -0,0 +1,17 @@
+/datum/component/label - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
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.
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.
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.
The name of the label the player is applying to the parent.
Proc Details
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.
apply_label
Applies a label to the name of the parent in the format of: "parent_name (label)"
on_update_name
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:
+
+
source: The parent.
+
user: The mob exmaining the parent.
+
examine_list: The current list of text getting passed from the parent's normal examine() proc.
+Reapplies label when update_name is called on the parent object. Attempts to remove it first just in case.
+
remove_label
Removes the label from the parent's name
\ No newline at end of file
diff --git a/datum/component/label/goal.html b/datum/component/label/goal.html
new file mode 100644
index 00000000000..c53ffd3232f
--- /dev/null
+++ b/datum/component/label/goal.html
@@ -0,0 +1,3 @@
+/datum/component/label/goal - Space Station 13Space Station 13 - Modules - Types — Proc Details
goal
A verson of the label component specific to labelling goal items.
This proc will fire after the parent is hit by a hand labeler which is trying to apply another goal label.
+Since the parent already has a goal label, it will remove the old one from the parent's name, and apply the new one.
This proc will fire after the parent is hit by a hand labeler which is trying to apply another goal label.
+Since the parent already has a goal label, it will remove the old one from the parent's name, and apply the new one.
on_examine
Adds detailed information to the examine text.
\ No newline at end of file
diff --git a/datum/component/leash.html b/datum/component/leash.html
new file mode 100644
index 00000000000..ef111de479d
--- /dev/null
+++ b/datum/component/leash.html
@@ -0,0 +1,2 @@
+/datum/component/leash - Space Station 13Space Station 13 - Modules - Types — Var Details
leash
Keeps the parent within the distance of its owner as naturally as possible,
+but teleporting if necessary.
The owner of the leash. If this is qdeleted, the leash is as well.
Var Details
distance
The maximum distance you can move from your owner
force_teleport_in_effect
The object type to create on the new turf when forcibly teleporting out
force_teleport_out_effect
The object type to create on the old turf when forcibly teleporting out
owner
The owner of the leash. If this is qdeleted, the leash is as well.
\ No newline at end of file
diff --git a/datum/component/living_heart.html b/datum/component/living_heart.html
new file mode 100644
index 00000000000..d391669e1eb
--- /dev/null
+++ b/datum/component/living_heart.html
@@ -0,0 +1,5 @@
+/datum/component/living_heart - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Living Heart Component
Applied to a heart to turn it into a heretic's 'living heart'.
+The living heart is what they use to track people they need to sacrifice.
+
This component handles the action associated with it -
+if the organ is removed, the action should be deleted
If the organ is removed, the component will remove itself.
\ No newline at end of file
diff --git a/datum/component/multitile.html b/datum/component/multitile.html
new file mode 100644
index 00000000000..803b2a0d339
--- /dev/null
+++ b/datum/component/multitile.html
@@ -0,0 +1 @@
+/datum/component/multitile - Space Station 13Space Station 13 - Modules - Types — Var Details
multitile
Lets multitile objects have dense walls around them based on the coordinate map
\ No newline at end of file
diff --git a/datum/component/obeys_commands.html b/datum/component/obeys_commands.html
new file mode 100644
index 00000000000..2fb197babe9
--- /dev/null
+++ b/datum/component/obeys_commands.html
@@ -0,0 +1,2 @@
+/datum/component/obeys_commands - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Obeys Commands Component
Manages a list of pet command datums, allowing you to boss it around
+Creates a radial menu of pet commands when this creature is alt-clicked, if it has any
List of commands you can give to the owner of this component
Proc Details
Initialize
The available_commands parameter should be passed as a list of typepaths
add_friend
Add someone to our friends list
on_examine
Add a note about whether they will follow the instructions of the inspecting mob
remove_friend
Remove someone from our friends list
\ No newline at end of file
diff --git a/datum/component/orbiter.html b/datum/component/orbiter.html
new file mode 100644
index 00000000000..874fe70449b
--- /dev/null
+++ b/datum/component/orbiter.html
@@ -0,0 +1,33 @@
+/datum/component/orbiter - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
End the orbit and clean up our transformation.
+If this removes the last atom orbiting us, then qdel ourselves.
+Howver, if refreshing == TRUE, src will not be qdeleted if this leaves us with 0 orbiters.
The actual implementation function of the move react.
+if you're trying to call this from a signal, call parent_move_react instead.
+This implementation is separate so the orbited atom's old location and new location can be passed in separately.
Callback fired when an item is removed from a tracked atom.
+Removes all orbit-related signals up its hierarchy and moves orbiters to the current child.
+As this will never be called by a turf, this should not conflict with parent_move_react.
Signal handler for COMSIG_MOVABLE_MOVED. Special wrapper to handle the arguments that come from the signal.
+If you want to call this directly, just call handle_parent_move.
Register signals up the hierarchy, adding them to each parent (and their parent, and so on) up to the turf they're on.
+The last atom in the hierarchy (the one whose .loc is the turf) becomes the leader, the atom ghosts will follow.
+Registers on_intermediate_move for every non-leader atom so that if they move (removing them from the hierarchy), they will be set as the new leader.
+Also registers on_remove_child to remove signals up the hierarchy when a child gets removed.
+start: the first atom to register signals on. If start isn't inside of anything (or if its .loc is a turf), then it will become the leader.
+Returns the new "leader", the atom that ghosts will follow.
orbit data helper functions
+Store a collection of data for an orbiter.
+orbiter: orbiter atom itself. The orbiter's transform and layer at this point will be captured and cached.
+orbit_flags: bitfield consisting of flags describing the orbit.
Var Details
orbit_data
Cached transforms from before the orbiter started orbiting, to be restored on stopping their orbit
orbiter_list
List of observers orbiting the parent
Proc Details
InheritComponent
See atom/movable/proc/orbit for parameter definitions
Initialize
See atom/movable/proc/orbit for parameter definitions
begin_orbit
See atom/movable/proc/orbit for parameter definitions
end_orbit
End the orbit and clean up our transformation.
+If this removes the last atom orbiting us, then qdel ourselves.
+Howver, if refreshing == TRUE, src will not be qdeleted if this leaves us with 0 orbiters.
get_cached_transform
Get cached transform of the given orbiter.
get_orbit_params
Get the given orbiter's orbit parameters bitfield
get_orbiter_layer
Get the layer the given orbiter was on before they started orbiting
handle_parent_move
The actual implementation function of the move react.
+if you're trying to call this from a signal, call parent_move_react instead.
+This implementation is separate so the orbited atom's old location and new location can be passed in separately.
is_in_hierarchy
Returns TRUE if atom_to_find is transitively a parent of src.
on_intermediate_move
Called when an intermediate (somewhere between the topmost and the orbited) atom moves.
+This atom will now become the leader.
on_remove_child
Callback fired when an item is removed from a tracked atom.
+Removes all orbit-related signals up its hierarchy and moves orbiters to the current child.
+As this will never be called by a turf, this should not conflict with parent_move_react.
orbiter_move_react
Called when the orbiter themselves moves.
parent_move_react
Signal handler for COMSIG_MOVABLE_MOVED. Special wrapper to handle the arguments that come from the signal.
+If you want to call this directly, just call handle_parent_move.
register_signals
Register signals up the hierarchy, adding them to each parent (and their parent, and so on) up to the turf they're on.
+The last atom in the hierarchy (the one whose .loc is the turf) becomes the leader, the atom ghosts will follow.
+Registers on_intermediate_move for every non-leader atom so that if they move (removing them from the hierarchy), they will be set as the new leader.
+Also registers on_remove_child to remove signals up the hierarchy when a child gets removed.
+start: the first atom to register signals on. If start isn't inside of anything (or if its .loc is a turf), then it will become the leader.
+Returns the new "leader", the atom that ghosts will follow.
remove_signals
Remove all orbit-related signals in the object hierarchy above start.
store_orbit_data
orbit data helper functions
+Store a collection of data for an orbiter.
+orbiter: orbiter atom itself. The orbiter's transform and layer at this point will be captured and cached.
+orbit_flags: bitfield consisting of flags describing the orbit.
\ No newline at end of file
diff --git a/datum/component/parry.html b/datum/component/parry.html
new file mode 100644
index 00000000000..bff1516798a
--- /dev/null
+++ b/datum/component/parry.html
@@ -0,0 +1 @@
+/datum/component/parry - Space Station 13Space Station 13 - Modules - Types — Var Details
Text to be shown to users who examine the parent. Will list which type of attacks it can parry.
no_parry_sound
Do we wish to mute the parry sound?
parry_cooldown
the time between parry attempts
parry_time_out_time
the max time since time_parried that the shield is still considered "active"
parryable_attack_types
the attack types that are considered for parrying
requires_activation
Does this item require activation? This is for activation based items or energy weapons.
requires_two_hands
Does this item have a require a condition to meet before being able to parry? This is for two handed weapons that can parry. (Default: FALSE)
stamina_coefficient
stamina_coefficient * damage * time_since_time_parried = stamina damage taken per non perfect parry
stamina_constant
the flat amount of damage the shield user takes per non-perfect parry
time_parried
the world.time we last parried at
\ No newline at end of file
diff --git a/datum/component/radioactive.html b/datum/component/radioactive.html
new file mode 100644
index 00000000000..68b696bb094
--- /dev/null
+++ b/datum/component/radioactive.html
@@ -0,0 +1 @@
+/datum/component/radioactive - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/component/ranged_attacks.html b/datum/component/ranged_attacks.html
new file mode 100644
index 00000000000..61a4a743b71
--- /dev/null
+++ b/datum/component/ranged_attacks.html
@@ -0,0 +1 @@
+/datum/component/ranged_attacks - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
What kind of projectile to we fire? Use only one of this or casing_type
Proc Details
async_fire_ranged_attack
Actually fire the damn thing
\ No newline at end of file
diff --git a/datum/component/regenerator.html b/datum/component/regenerator.html
new file mode 100644
index 00000000000..8a800cbccd9
--- /dev/null
+++ b/datum/component/regenerator.html
@@ -0,0 +1,2 @@
+/datum/component/regenerator - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Regenerator component
A mob with this component will regenerate its health over time, as long as it has not received damage
+in the last X seconds. Taking any damage will reset this cooldown.
Start processing health regeneration, and show animation if provided
Var Details
brute_per_second
Brute reagined every second
burn_per_second
Burn reagined every second
ignore_damage_types
List of damage types we don't care about, in case you want to only remove this with fire damage or something
outline_colour
Colour of regeneration animation, or none if you don't want one
oxy_per_second
Oxygen reagined every second
regen_check
Callback for adding special checks for whether or not we can start regenning
regeneration_delay
You will only regain health if you haven't been hurt for this many seconds
regeneration_start_timer
When this timer completes we start restoring health, it is a timer rather than a cooldown so we can do something on its completion
tox_per_second
Toxin reagined every second
Proc Details
on_take_damage
When you take damage, reset the cooldown and start processing
should_be_regenning
Checks if the passed mob is in a valid state to be regenerating
start_regenerating
Start processing health regeneration, and show animation if provided
\ No newline at end of file
diff --git a/datum/component/riding.html b/datum/component/riding.html
new file mode 100644
index 00000000000..11d649392cf
--- /dev/null
+++ b/datum/component/riding.html
@@ -0,0 +1,15 @@
+/datum/component/riding - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
riding
This is the riding component, which is applied to a movable atom by the ridable element when a mob is successfully buckled to said movable.
+
This component lives for as long as at least one mob is buckled to the parent. Once all mobs are unbuckled, the component is deleted, until another mob is buckled in
+and we make a new riding component, so on and so forth until the sun explodes.
If the driver needs a certain item in hand (or inserted, for vehicles) to drive this. For vehicles, this must be duplicated on the actual vehicle object in their
+[/obj/vehicle/var/key_type] variable because the vehicle objects still have a few special checks/functions of their own I'm not porting over to the riding component
+quite yet. Make sure if you define it on the vehicle, you define it here too.
Ride check flags defined for the specific riding component types, so we know if we need arms, legs, or whatever.
+Takes additional flags from the ridable element and the buckle proc (buckle_mob_flags) for riding cyborgs/humans in case we need to reserve arms
This proc is used to see if we have the appropriate key to drive this atom, if such a key is needed. Returns FALSE if we don't have what we need to drive.
Check to see if we have all of the necessary bodyparts and not-falling-over statuses we need to stay onboard.
+If not and if consequences is TRUE, well, there'll be consequences.
allow typecache for only certain turfs, forbid to allow all but those. allow only certain turfs will take precedence.
can_force_unbuckle
can anyone other than the rider unbuckle the rider?
directional_vehicle_layers
["[DIRECTION]"] = layer. Don't set it for a direction for default, set a direction to null for no change.
directional_vehicle_offsets
same as above but instead of layer you have a list(px, py)
forbid_turf_typecache
allow typecache for only certain turfs, forbid to allow all but those. allow only certain turfs will take precedence.
keytype
If the driver needs a certain item in hand (or inserted, for vehicles) to drive this. For vehicles, this must be duplicated on the actual vehicle object in their
+[/obj/vehicle/var/key_type] variable because the vehicle objects still have a few special checks/functions of their own I'm not porting over to the riding component
+quite yet. Make sure if you define it on the vehicle, you define it here too.
message_cooldown
For telling someone they can't drive
override_allow_spacemove
We don't need roads where we're going if this is TRUE, allow normal movement in space tiles
ride_check_flags
Ride check flags defined for the specific riding component types, so we know if we need arms, legs, or whatever.
+Takes additional flags from the ridable element and the buckle proc (buckle_mob_flags) for riding cyborgs/humans in case we need to reserve arms
riding_offsets
position_of_user = list(dir = list(px, py)), or RIDING_OFFSET_ALL for a generic one.
vehicle_move_cooldown
For telling someone they can't drive
vehicle_move_delay
Tick delay between movements, lower = faster, higher = slower
Proc Details
driver_move
Every time the driver tries to move, this is called to see if they can actually drive and move the vehicle (via relaymove)
handle_specials
This proc handles all of the proc calls to things like set_vehicle_dir_layer() that a type of riding datum needs to call on creation
+
The original riding component had these procs all called from the ridden object itself through the use of GetComponent() and LoadComponent()
+This was obviously problematic for componentization, but while lots of the variables being set were able to be moved to component variables,
+the proc calls couldn't be. Thus, anything that has to do an initial proc call should be handled here.
handle_vehicle_layer
Some ridable atoms may want to only show on top of the rider in certain directions, like wheelchairs
keycheck
This proc is used to see if we have the appropriate key to drive this atom, if such a key is needed. Returns FALSE if we don't have what we need to drive.
+
Still needs to be neatened up and spruced up with proper OOP, as a result of vehicles having their own key handling from other ridable atoms
on_rider_try_pull
This proc is called when the rider attempts to grab something, preventing them from doing so.
ride_check
Check to see if we have all of the necessary bodyparts and not-falling-over statuses we need to stay onboard.
+If not and if consequences is TRUE, well, there'll be consequences.
unequip_buckle_inhands
currently replicated from ridable because we need this behavior here too, see if we can deal with that
vehicle_bump
So we can check all occupants when we bump a door to see if anyone has access
vehicle_mob_buckle
This proc is called when a rider buckles, allowing for offsets to be set properly
vehicle_mob_unbuckle
This proc is called when a rider unbuckles, whether they chose to or not. If there's no more riders, this will be the riding component's death knell.
vehicle_moved
This is called after the ridden atom is successfully moved and is used to handle icon stuff
vehicle_turned
Turning is like moving
\ No newline at end of file
diff --git a/datum/component/riding/vehicle.html b/datum/component/riding/vehicle.html
new file mode 100644
index 00000000000..edfd9584004
--- /dev/null
+++ b/datum/component/riding/vehicle.html
@@ -0,0 +1 @@
+/datum/component/riding/vehicle - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/datum/component/riding/vehicle/scooter/skateboard.html b/datum/component/riding/vehicle/scooter/skateboard.html
new file mode 100644
index 00000000000..94780fa8896
--- /dev/null
+++ b/datum/component/riding/vehicle/scooter/skateboard.html
@@ -0,0 +1 @@
+/datum/component/riding/vehicle/scooter/skateboard - Space Station 13Space Station 13 - Modules - Types — Var Details
If TRUE, the vehicle will be slower (but safer) to ride on walk intent.
Var Details
can_slow_down
If TRUE, the vehicle will be slower (but safer) to ride on walk intent.
\ No newline at end of file
diff --git a/datum/component/riding/vehicle/scooter/skateboard/hover.html b/datum/component/riding/vehicle/scooter/skateboard/hover.html
new file mode 100644
index 00000000000..db3829b87f5
--- /dev/null
+++ b/datum/component/riding/vehicle/scooter/skateboard/hover.html
@@ -0,0 +1 @@
+/datum/component/riding/vehicle/scooter/skateboard/hover - Space Station 13Space Station 13 - Modules - Types — Proc Details
hover
This one lets the rider ignore gravity, move in zero g and so on, but only on ground turfs or at most one z-level above them.
Makes sure that the hoverboard can move in zero-g in (open) space but only there's a ground turf on the z-level below.
Proc Details
check_drifting
Makes sure the vehicle isn't drifting while it can be maneuvered.
check_grav
Makes sure that the vehicle is grav-less if capable of zero-g movement. Forced gravity will honestly screw this.
hover_check
Makes sure that the hoverboard can move in zero-g in (open) space but only there's a ground turf on the z-level below.
\ No newline at end of file
diff --git a/datum/component/scope.html b/datum/component/scope.html
new file mode 100644
index 00000000000..7d0bd8ccaa9
--- /dev/null
+++ b/datum/component/scope.html
@@ -0,0 +1,13 @@
+/datum/component/scope - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
scope
A component that allows players to use the item to zoom out. Mainly intended for firearms, but now works with other items too.
We start zooming by adding our tracker overlay and starting our processing.
Var Details
flags
Flags for scoping. Check code\__DEFINES\flags.dm
item_action_type
if not null, an item action will be added. Redundant if the mode is ZOOM_METHOD_RIGHT_CLICK or ZOOM_METHOD_WIELD.
range_modifier
How far the view can be moved from the player. At 1, it can be moved by the player's view distance; other values scale linearly.
time_to_scope
Time to scope up, if you want the scope to take time to boot up. Used by the LWAP
tracker
Fullscreen object we use for tracking.
tracker_owner_ckey
The owner of the tracker's ckey. For comparing with the current owner mob, in case the client has left it (e.g. ghosted).
trait_to_add
A trait you want to add when scoped in to the mob.
zoom_method
The method which we zoom in and out
Proc Details
get_target
We find and return the best target to hit on a given turf.
+
Arguments:
+
+
target_turf: The turf we are looking for targets on.
+
stop_zooming
We stop zooming, canceling processing, resetting stuff back to normal and deleting our tracker.
+
Arguments:
+
+
user: The mob we are canceling zooming on.
+
zoom
We start zooming by adding our tracker overlay and starting our processing.
+
Arguments:
+
+
user: The mob we are starting zooming on.
+
\ No newline at end of file
diff --git a/datum/component/shelved.html b/datum/component/shelved.html
new file mode 100644
index 00000000000..45ff233c152
--- /dev/null
+++ b/datum/component/shelved.html
@@ -0,0 +1 @@
+/datum/component/shelved - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Generic handler for if anything moves us off our original shelf position, such as atmos pressure.
Var Details
original_appearance_flags
A copy of the shelved object's original appearance flags, to restore after removing from the shelf.
original_layer
A copy of the shelved object's original layer, to restore after removing from the shelf.
original_transform
A copy of the shelved object's original transform, to restore after removing from the shelf.
shelf_uid
The UID of the object acting as the shelf
shuttle_moving
Are we currently being moved by a shuttle? Prevents us from falling off the shelf in transport.
Proc Details
on_movable_moved
Generic handler for if anything moves us off our original shelf position, such as atmos pressure.
\ No newline at end of file
diff --git a/datum/component/shelver.html b/datum/component/shelver.html
new file mode 100644
index 00000000000..254e4c95e99
--- /dev/null
+++ b/datum/component/shelver.html
@@ -0,0 +1,9 @@
+/datum/component/shelver - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
A list whose keys are a 4-tuple of (left, bottom, right, top) bounding boxes to position details.
+Position details include "x" and "y" as pixel offsets, and "layer" as appearance layer for a placed object.
A list of types whose subtypes are valid to place on this shelf. Used in addition to [allowed_types].
allowed_types
A list of types which are are valid to place on this shelf.
default_rotation
The default rotation transformation for objects placed on the shelf.
default_scale
The default scale transformation for objects placed on the shelf.
placement_zones
A list whose keys are a 4-tuple of (left, bottom, right, top) bounding boxes to position details.
+Position details include "x" and "y" as pixel offsets, and "layer" as appearance layer for a placed object.
random_pickup_locations
Whether objects auto-shelved by the component are placed in random order on the shelf.
used_places
A list of slots, one per placement zone. Either empty, or containing the UID of the object in that place.
Proc Details
add_item
Add an item to the shelf.
+
Arguments:
+
+
to_add - The item to add. Adding will fail if not an /obj/item.
+
placement_idx - The slot on the shelf to add the item to.
+
position_details - A list containing the "x" and "y" pixel offsets of the position, and the "layer" the object will be set to, if applicable.
+
\ No newline at end of file
diff --git a/datum/component/shielded.html b/datum/component/shielded.html
new file mode 100644
index 00000000000..7dc08723633
--- /dev/null
+++ b/datum/component/shielded.html
@@ -0,0 +1,3 @@
+/datum/component/shielded - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
shielded
The shielded component causes the parent item to nullify a certain number of attacks against the wearer, see: shielded vests.
This proc fires when we're hit, and is responsible for checking if we're charged, then deducting one + returning that we're blocking if so.
+It then runs the callback in /datum/component/shielded/var/on_hit_effects which handles the messages/sparks (so the visuals)
How long we have to avoid being hit to replenish charges. If set to 0, we never recharge lost charges
shield_icon
What icon is used when someone has a functional shield up
shield_icon_file
What .dmi we're pulling the shield icon from
shield_inhand
Do we still shield if we're being held in-hand? If FALSE, it needs to be equipped to a slot to work
show_charge_as_alpha
Should the shield's alpha change to show its remaining charge
wearer
The person currently wearing us
Proc Details
actually_run_hit_callback
The wrapper to invoke the on_hit callback, so we don't have to worry about blocking in the signal handler
default_run_hit_callback
Default on_hit proc, since cult robes are stupid and have different descriptions/sparks
lost_wearer
Either we've been dropped or our wearer has been QDEL'd. Either way, they're no longer our problem
on_equipped
Check if we've been equipped to a valid slot to shield
on_hit_react
This proc fires when we're hit, and is responsible for checking if we're charged, then deducting one + returning that we're blocking if so.
+It then runs the callback in /datum/component/shielded/var/on_hit_effects which handles the messages/sparks (so the visuals)
on_update_overlays
Used to draw the shield overlay on the wearer
\ No newline at end of file
diff --git a/datum/component/slippery.html b/datum/component/slippery.html
new file mode 100644
index 00000000000..241b981d746
--- /dev/null
+++ b/datum/component/slippery.html
@@ -0,0 +1,5 @@
+/datum/component/slippery - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Slip Component
This is a component that can be applied to any movable atom (mob or obj).
+
While the atom has this component, any human mob that walks over it will have a chance to slip.
+Duration, tiles moved, and so on, depend on what variables are passed in when the component is added.
Called whenever the parent receives the ATOM_ENTERED signal.
Var Details
default_connections
what we give to connect_loc by default, makes slippable mobs moving over us slip
description
Text that gets displayed in the slip proc, i.e. "user slips on [description]"
horizontal_required
TRUE the player will only slip if the mob this datum is attached to is horizontal
knockdown
The amount of knockdown to apply after slip.
slip_always
FALSE if you want no slip shoes to make you immune to the slip
slip_chance
The chance that walking over the parent will slip you.
slip_tiles
The amount of tiles someone will be moved after slip.
slip_verb
The verb that players will see when someone slips on the parent. In the form of "You [slip_verb]ped on".
walking_is_safe
TRUE If this slip can be avoided by walking.
Proc Details
slip
Called whenever the parent receives the ATOM_ENTERED signal.
+
Calls the victim's slip() proc with the component's variables as arguments.
+Additionally calls the parent's after_slip() proc on the victim.
\ No newline at end of file
diff --git a/datum/component/special_tastes.html b/datum/component/special_tastes.html
new file mode 100644
index 00000000000..04341e537b9
--- /dev/null
+++ b/datum/component/special_tastes.html
@@ -0,0 +1,3 @@
+/datum/component/special_tastes - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Turn the item into food, can only be eaten in 1 bite to prevent creating a half-eaten item that those without the trait can also eat.
Var Details
edible_items
associated list of item to reagents and tastes
+Typepath = (list(reagents = list(reagents), tastes = list(tastes)); Ex: list(/obj/item/stack/sheet/mineral/silver = list("reagents" = list("nutriment" = 5, "vitamin" = 1), "tastes" = list("metal and blood" = 1)))
Proc Details
attempt_ingest
check if item is in the list of potential food
attempt_to_eat
Handle eating and nutrition gain from eating minerals
turn_into_food
Turn the item into food, can only be eaten in 1 bite to prevent creating a half-eaten item that those without the trait can also eat.
\ No newline at end of file
diff --git a/datum/component/squeak.html b/datum/component/squeak.html
new file mode 100644
index 00000000000..3e28979f8fd
--- /dev/null
+++ b/datum/component/squeak.html
@@ -0,0 +1 @@
+/datum/component/squeak - Space Station 13Space Station 13 - Modules - Types — Var Details
sound exponent for squeak. Defaults to 10 as squeaking is loud and annoying enough.
Var Details
item_connections
what we set connect_loc to if parent is an item
sound_extra_range
extra-range for this component's sound
sound_falloff_distance
when sounds start falling off for the squeak
sound_falloff_exponent
sound exponent for squeak. Defaults to 10 as squeaking is loud and annoying enough.
\ No newline at end of file
diff --git a/datum/component/sticky.html b/datum/component/sticky.html
new file mode 100644
index 00000000000..c6ca8b2acce
--- /dev/null
+++ b/datum/component/sticky.html
@@ -0,0 +1 @@
+/datum/component/sticky - Space Station 13Space Station 13 - Modules - Types — Var Details
Do we drop on attached_to's destroy? If not, we qdel
overlay
Our priority overlay put on top of attached_to
\ No newline at end of file
diff --git a/datum/component/surgery_initiator.html b/datum/component/surgery_initiator.html
new file mode 100644
index 00000000000..981ded7f130
--- /dev/null
+++ b/datum/component/surgery_initiator.html
@@ -0,0 +1,17 @@
+/datum/component/surgery_initiator - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Surgery Initiator
Allows an item to start (or prematurely stop) a surgical operation.
If true, can start surgery on someone while they're standing up.
+Seeing as how we really don't support this (yet), it's much nicer to selectively enable this if we want it.
Bitfield for the types of surgeries that this can start.
+Note that in cases where organs are missing, this will be ignored.
+Also, note that for anything sharp, SURGERY_INITIATOR_ORGANIC should be set as well.
Handle to allow for easily overriding the message shown
Var Details
can_cancel
If true, can be used with a cautery in the off-hand to cancel a surgery.
can_cancel_before_first
If true, the initial step will be cancellable by just using the tool again. Should be FALSE for any tool that actually has a first surgery step.
can_start_on_stander
If true, can start surgery on someone while they're standing up.
+Seeing as how we really don't support this (yet), it's much nicer to selectively enable this if we want it.
forced_surgery
If present, this surgery TYPE will be attempted when the item is used.
+Useful for things like limb reattachments that don't need a scalpel.
germ_prevention_quality
How effective this is at preventing infections.
+0 = preventing nothing, 1 = preventing any infection
surgery_start_sound
The sound to play when starting surgeries
valid_starting_types
Bitfield for the types of surgeries that this can start.
+Note that in cases where organs are missing, this will be ignored.
+Also, note that for anything sharp, SURGERY_INITIATOR_ORGANIC should be set as well.
Proc Details
Initialize
Create a new surgery initiating component.
+
Arguments:
+
+
forced_surgery - (optional) the surgery that will be started when the parent is used on a mob.
+
attempt_cancel_surgery
Does the surgery de-initiation.
do_initiate_surgery_moment
Meat and potatoes of starting surgery.
initiate_surgery_moment
Does the surgery initiation.
on_parent_sharpness_change
Keep tabs on the attached item's sharpness.
+This component gets added in atoms when they're made sharp as well.
show_starting_message
Handle to allow for easily overriding the message shown
\ No newline at end of file
diff --git a/datum/component/tameable.html b/datum/component/tameable.html
new file mode 100644
index 00000000000..3441f82fd2d
--- /dev/null
+++ b/datum/component/tameable.html
@@ -0,0 +1 @@
+/datum/component/tameable - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
tameable
This component lets you make specific mobs tameable by feeding them
Added success chance after every failed tame attempt.
current_tame_chance
Current chance to tame on interaction
tame_chance
Starting success chance for taming.
unique
If true, this atom can only be domesticated by one person
Proc Details
already_friends
Check if the passed mob is already considered one of our friends
on_tame
Ran once taming succeeds
\ No newline at end of file
diff --git a/datum/component/tilted.html b/datum/component/tilted.html
new file mode 100644
index 00000000000..9eecfae72b5
--- /dev/null
+++ b/datum/component/tilted.html
@@ -0,0 +1,2 @@
+/datum/component/tilted - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
tilted
A component that should be attached to things that have been tilted over, and can be righted.
+This can optionally block normal attack_hand interactions
The angle by which we rotated as a result of tilting. Should help us avoid cases where something gets tilted until it's upright.
untilt_duration
How long it should take to untilt
Proc Details
untilt
Untilt a tilted object.
\ No newline at end of file
diff --git a/datum/component/tippable.html b/datum/component/tippable.html
new file mode 100644
index 00000000000..7db38f86b21
--- /dev/null
+++ b/datum/component/tippable.html
@@ -0,0 +1,30 @@
+/datum/component/tippable - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
tippable
Tippable component. For making mobs able to be tipped, like cows and medibots.
Actually tip over the mob, setting it to tipped.
+Also invoking any callbacks we have, with the tipper as the argument,
+and set a timer to right our self-right our tipped mob if we can.
Proc called after a timer to have a tipped mob un-tip itself after a certain length of time.
+Sets our mob to untipped and invokes the untipped callback without any arguments if we have one.
Try to tip over [tipped_mob].
+If the mob is dead, or optional callback returns a value, or our do-after fails, we don't tip the mob.
+Otherwise, upon completing of the do_after, tip over the mob.
Try to untip a mob that has been tipped.
+After a do-after is completed, we untip the mob.
Var Details
is_tipped
Whether the mob is currently tipped.
post_tipped_callback
Callback to additional behavior after successfully tipping the mob.
post_untipped_callback
Callback to additional behavior after being untipped.
pre_tipped_callback
Callback to additional behavior before being tipped (on try_tip). Return anything from this callback to cancel the tip.
self_right_time
Time it takes for the mob to right itself. Can be 0 for instant self-righting, or null, to never self-right.
self_untip_timer
The timer given until they untip themselves
tip_time
Time it takes to tip the mob. Can be 0, for instant tipping.
untip_time
Time it takes to untip the mob. Can also be 0, for instant untip.
Proc Details
do_tip
Actually tip over the mob, setting it to tipped.
+Also invoking any callbacks we have, with the tipper as the argument,
+and set a timer to right our self-right our tipped mob if we can.
+
tipped_mob - the mob who was tipped
+tipper - the mob who tipped the tipped_mob
do_untip
Actually untip over the mob, setting it to untipped.
+Also invoke any untip callbacks we have, with the untipper as the argument.
+
tipped_mob - the mob who was tipped
+tipper - the mob who tipped the tipped_mob
interact_with_tippable
Attempt to interact with [source], either tipping it or helping it up.
+
source - the mob being tipped over
+user - the mob interacting with source
right_self
Proc called after a timer to have a tipped mob un-tip itself after a certain length of time.
+Sets our mob to untipped and invokes the untipped callback without any arguments if we have one.
+
tipped_mob - the mob who was tipped, and is freeing itself
set_tipped_status
Toggles our tipped status between tipped or untipped (TRUE or FALSE)
+also handles rotating our mob and adding immobilization traits
+
tipped_mob - the mob we're setting to tipped or untipped
+new_status - the tipped status we're setting the mob to - TRUE for tipped, FALSE for untipped
try_tip
Try to tip over [tipped_mob].
+If the mob is dead, or optional callback returns a value, or our do-after fails, we don't tip the mob.
+Otherwise, upon completing of the do_after, tip over the mob.
+
tipped_mob - the mob being tipped over
+tipper - the mob tipping the tipped_mob
try_untip
Try to untip a mob that has been tipped.
+After a do-after is completed, we untip the mob.
+
tipped_mob - the mob who is tipped
+untipper - the mob who is untipping the tipped_mob
\ No newline at end of file
diff --git a/datum/component/two_handed.html b/datum/component/two_handed.html
new file mode 100644
index 00000000000..6c2bfc13c42
--- /dev/null
+++ b/datum/component/two_handed.html
@@ -0,0 +1,26 @@
+/datum/component/two_handed - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
two_handed
Two Handed Component
+
When applied to an item it will make it two handed
The multiplier applied to force when wielded, does not work with force_wielded, and force_unwielded
force_unwielded
The force of the item when unweilded
force_wielded
The force of the item when weilded
icon_wielded
The icon that will be used when wielded
offhand_item
Reference to the offhand created for the item
only_sharp_when_wielded
Whether or not the object is only sharp when wielded. If it's never sharp, ignore this.
require_twohands
Does it have to be held in both hands
sharpened_increase
The amount of increase recived from sharpening the item
unwield_callback
A callback on the parent to be called when the item is unwielded
unwieldsound
Play sound when unwielded
wield_callback
A callback on the parent to be called when the item is wielded
wielded
Are we holding the two handed item properly
wieldsound
Play sound when wielded
Proc Details
Initialize
Two Handed component
+
vars:
+
+
require_twohands (optional) Does the item need both hands to be carried
+
wieldsound (optional) The sound to play when wielded
+
unwieldsound (optional) The sound to play when unwielded
+
attacksound (optional) The sound to play when wielded and attacking
+
force_multiplier (optional) The force multiplier when wielded, do not use with force_wielded, and force_unwielded
+
force_wielded (optional) The force setting when the item is wielded, do not use with force_multiplier
+
force_unwielded (optional) The force setting when the item is unwielded, do not use with force_multiplier
+
icon_wielded (optional) The icon to be used when wielded
+
only_sharp_when_wielded (optional) Is the item only sharp when held in both hands?
+
check_unwielded
Check if item is unwielded
+
returns TRUE if unwielded
on_attack_self
Triggered on attack self of the item containing the component
on_destroy
Triggered on destroy of the component's offhand
on_drop
Triggered on drop of item containing the component
on_equip
Triggered on equip of the item containing the component
on_moved
on_moved Triggers on item moved
on_sharpen
on_sharpen Triggers on usage of a sharpening stone on the item
on_swapping_hands
on_swap_hands Triggers on swapping hands, blocks swap if the other hand is busy
on_update_icon
on_update_icon triggers on call to update parent items icon
+
Updates the icon using icon_wielded if set
unwield
Unwield the two handed item
+
vars:
+
+
user The mob/living/carbon that is unwielding the item
+
show_message (option) show a message to chat on unwield
+
can_drop (option) whether 'dropItemToGround' can be called or not.
+
wield
Wield the two handed item in both hands
+
vars:
+
+
user The mob/living/carbon that is wielding the item
+
\ No newline at end of file
diff --git a/datum/component/viral_contamination.html b/datum/component/viral_contamination.html
new file mode 100644
index 00000000000..fc702b098cb
--- /dev/null
+++ b/datum/component/viral_contamination.html
@@ -0,0 +1 @@
+/datum/component/viral_contamination - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/configuration_section.html b/datum/configuration_section.html
new file mode 100644
index 00000000000..3bef09993d5
--- /dev/null
+++ b/datum/configuration_section.html
@@ -0,0 +1 @@
+/datum/configuration_section - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/configuration_section/admin_configuration.html b/datum/configuration_section/admin_configuration.html
new file mode 100644
index 00000000000..c54a0baa4f6
--- /dev/null
+++ b/datum/configuration_section/admin_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/admin_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
Do we want to allow admins to set their own OOC colour?
ckey_rank_map
Assoc list of admin ckeys and their ranks. key: ckey | value: rank name
common_cid_map
Assoc list of CIDs which shouldnt be banned due to mass collisions
enable_localhost_autoadmin
Do we want to auto enable admin rights if you connect from localhost?
rank_colour_map
Assoc list of admin ranks and their colours. key: rank | value: rank colour
rank_rights_map
Assoc list of admin ranks and their stuff. key: rank name string | value: list of rights
use_database_admins
Do we want to load admins from the database?
\ No newline at end of file
diff --git a/datum/configuration_section/afk_configuration.html b/datum/configuration_section/afk_configuration.html
new file mode 100644
index 00000000000..5e62adb2374
--- /dev/null
+++ b/datum/configuration_section/afk_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/afk_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/configuration_section/asset_cache_configuration.html b/datum/configuration_section/asset_cache_configuration.html
new file mode 100644
index 00000000000..9150ff56f3a
--- /dev/null
+++ b/datum/configuration_section/asset_cache_configuration.html
@@ -0,0 +1,17 @@
+/datum/configuration_section/asset_cache_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
URL the asset_cdn_webroot can be accessed from.
+For best results the webserver powering this should return a long cache validity time,
+as all assets sent via this transport use hash based urls
+if you want to test this locally, you simpily run the localhost-asset-webroot-server.py python3 script
+to host assets stored in data/asset-store/ via http://localhost:58715/
Local folder to save assets to.
+Assets will be saved in the format of asset.MD5HASH.EXT or in namespaces/hash/
+as ASSET_FILE_NAME or asset.MD5HASH.EXT
Type of asset transport that will be used for asset delivery.
+Available options are "simple" or "webroot".
Var Details
asset_cdn_url
URL the asset_cdn_webroot can be accessed from.
+For best results the webserver powering this should return a long cache validity time,
+as all assets sent via this transport use hash based urls
+if you want to test this locally, you simpily run the localhost-asset-webroot-server.py python3 script
+to host assets stored in data/asset-store/ via http://localhost:58715/
asset_cdn_webroot
Local folder to save assets to.
+Assets will be saved in the format of asset.MD5HASH.EXT or in namespaces/hash/
+as ASSET_FILE_NAME or asset.MD5HASH.EXT
asset_simple_preload
Whether to make server passively send all browser assets to each client in the background
+(instead of waiting for them to be needed)
asset_transport
Type of asset transport that will be used for asset delivery.
+Available options are "simple" or "webroot".
\ No newline at end of file
diff --git a/datum/configuration_section/custom_sprites_configuration.html b/datum/configuration_section/custom_sprites_configuration.html
new file mode 100644
index 00000000000..50d7aa22b33
--- /dev/null
+++ b/datum/configuration_section/custom_sprites_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/custom_sprites_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
custom_sprites_configuration
Config holder for all things regarding custom sprites
A list of ckeys to available undershirt fluff accessories
ipc_screen_map
Assoc of ckeys that have custom pAI screens. Key: ckey | value: list of icon states
pai_holoform_ckeys
List of ckeys that have custom pAI holoforms
\ No newline at end of file
diff --git a/datum/configuration_section/database_configuration.html b/datum/configuration_section/database_configuration.html
new file mode 100644
index 00000000000..14c7b420225
--- /dev/null
+++ b/datum/configuration_section/database_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/database_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/configuration_section/discord_configuration.html b/datum/configuration_section/discord_configuration.html
new file mode 100644
index 00000000000..8d8c13bd5b4
--- /dev/null
+++ b/datum/configuration_section/discord_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/discord_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
discord_configuration
Config holder for all things relating to discord webhooks
Admin role to ping if no admins are online. Disables if empty string
admin_webhook_urls
List of all URLs for the admin webhooks
forward_all_ahelps
Do we want to forward all ahelps or just ones sent with no active admins
main_webhook_urls
List of all URLs for the main webhooks
mentor_role_id
Mentor role to ping if no mentors are online. Disables if empty string
mentor_webhook_urls
List of all URLs for the mentor webhooks
webhooks_enabled
Are webhooks enabled at all
\ No newline at end of file
diff --git a/datum/configuration_section/event_configuration.html b/datum/configuration_section/event_configuration.html
new file mode 100644
index 00000000000..43f7e047e94
--- /dev/null
+++ b/datum/configuration_section/event_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/event_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
event_configuration
Config holder for all stuff relating to ingame random events
Assoc list of when the first event in a group can run. key: severity | value: assoc list with upper and low bounds (key: "upper"/"lower" | value: time in deciseconds)
Var Details
blob_highpop_trigger
the population needed to allow blobs to split consciousness
delay_lower_bound
Assoc list of lower bounds of event delays. key: severity | value: delay (deciseconds)
delay_upper_bound
Assoc list of lower bounds of event delays. key: severity | value: delay (deciseconds)
enable_random_events
Do we want to enable random events at all
expected_round_length
Expected time of a round in deciseconds
first_run_times
Assoc list of when the first event in a group can run. key: severity | value: assoc list with upper and low bounds (key: "upper"/"lower" | value: time in deciseconds)
\ No newline at end of file
diff --git a/datum/configuration_section/gamemode_configuration.html b/datum/configuration_section/gamemode_configuration.html
new file mode 100644
index 00000000000..e1f5c8c99da
--- /dev/null
+++ b/datum/configuration_section/gamemode_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/gamemode_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
List of all gamemodes that can be voted for, (value: config-tag)
Var Details
add_random_station_traits
Should we generate random station traits at game start?
antag_account_age_restriction
Should antags be restricted based on account age?
disable_certain_round_early_end
Rounds such as rev, wizard and malf end instantly when the antag has won. Enable the setting below to not do that.
enable_gamemode_player_limit
Enable player limits on gamemodes? Disabling can be useful for testing
gamemode_names
Assoc list of gamemode names (key: config-tag | value: mode name)
gamemodes
List of all gamemodes (value: config-tag)
min_players_hijack_midround
Minimum alive crew required for midround hijack objectives
min_players_hijack_roundstart
Minimum readied up players required for roundstart hijack objectives
min_security_hijack_midround
Minimum living security required for midround hijack objectives
prevent_mindshield_antags
Prevent mindshield roles getting antagonist status
probabilities
Assoc list of gamemode probabilities (key: config-tag | value: probability)
traitor_objectives_amount
Amount of objectives traitors should get. Does not include escape or hijack.
traitor_scaling
Scale amount of traitors with population
votable_modes
List of all gamemodes that can be voted for, (value: config-tag)
\ No newline at end of file
diff --git a/datum/configuration_section/general_configuration.html b/datum/configuration_section/general_configuration.html
new file mode 100644
index 00000000000..093e08b281f
--- /dev/null
+++ b/datum/configuration_section/general_configuration.html
@@ -0,0 +1,3 @@
+/datum/configuration_section/general_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
Bomb cap (Devastation) Other values will be calculated around this
breakable_bones
Do we want to allow bones to break?
byond_account_age_threshold
BYOND account age threshold for first join alerts
chicken_hatched_cap
Cap for chickens
cryo_penalty_period
Respawnability loss penalty for eary cryoing (minutes)
developer_express_start
Auto start the game if on a local test server
disable_ambient_noise
Disable ambient sound and white noise
disable_cid_warning_popup
Disable a popup if 2 users are on the same CID?
disable_lobby_music
Disable lobby music?
enable_auto_mute
Enable auto muting in all chat channels
enable_auto_profiler
Enable automatic profiling to profile.json
enable_cloning
Enable/disable cloning
enable_default_weather_events
Enable weather events initialized by SSweather. New weather events can still
+be added during the round if this is disabled.
enable_night_shifts
Enable night-shift lighting?
enable_ooc_emoji
Enable OOC emojis?
enable_revival_pod_plants
Enable/disable revival pod plants
enabled_cid_randomiser_buster
Enable CID randomiser buster?
forbid_singulo_possession
Forbid admins from posessing and flying the singulo round
ghost_interaction
Allow ghosts to spin chairs round
guest_ban
Ban all Guest BYOND accounts
lobby_time
Time in seconds for the pregame lobby. Measured in seconds
max_client_cid_history
Max CIDs a client can have history of before a warning is thrown
minimum_client_build
Minimum client build. Keep above 1421 due to exploits
monkey_cube_cap
Cap for monkey cube monkey spawns
popup_admin_pm
Force open a PM window when replied to? This is very annoying
random_ai_lawset
Enable random AI lawsets from the default=TRUE pool
randomise_shift_time
Randomise shift time instead of it always being 12:00?
reactionary_explosions
Enable to make explosions react to obstacles instead of ignoring them
respawn_delay
Time to wait before you can respawn as a new character.
respawn_enabled
Enable respawns by default?
restart_timeout
Default timeout for world reboot. Measured in seconds
restrict_antag_hud_rejoin
Forbid players from rejoining if they use AntagHUD?
revival_brain_life
Time for a brain to keep its spark of life (deciseconds)
roundstart_observer_period
Observers count as roundstart if they join from the main menu before this time (in minutes). Set to 0 to allow only-pregame start observers.
server_features
Server features in a newline
server_name
Server name for the BYOND hub
server_tag_line
Tagline for the hub entry
ssd_warning
Show a warning to players to make them accept touching an SSD
starlight
Enable/disable starlight to light up space
start_now_confirmation
Give a confirm button for the "Start Now" verb
\ No newline at end of file
diff --git a/datum/configuration_section/ipintel_configuration.html b/datum/configuration_section/ipintel_configuration.html
new file mode 100644
index 00000000000..4f90d1fc77a
--- /dev/null
+++ b/datum/configuration_section/ipintel_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/ipintel_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
Are we in whitelist mode (Auto-kick people who are on proxies/VPNs)
Var Details
bad_rating
0-1 float for percentage threshold to kick people out
contact_email
IPIntel contact email. Required.
details_url
Details URL for more info on an IP, including ASN. IP is tacked straight on the end.
enabled
Is IPIntel enabled
hours_save_bad
How many hours to save bad matches for. Cached due to rate limits
hours_save_good
How many hours to save good matches for. Cached due to rate limits
ipintel_domain
IPIntel Domain. Do not prefix with a protocol
playtime_ignore_threshold
Do not proxy-check players with more hours than the below threshold
whitelist_mode
Are we in whitelist mode (Auto-kick people who are on proxies/VPNs)
\ No newline at end of file
diff --git a/datum/configuration_section/job_configuration.html b/datum/configuration_section/job_configuration.html
new file mode 100644
index 00000000000..c6a8d2e73bd
--- /dev/null
+++ b/datum/configuration_section/job_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/job_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
Number of crew on the manifest needed to activate skeleton crew access
Var Details
allow_ai
Allow non-admins to play as AI
allow_skeleton_crew_access
Will the crew be given extended access if the manifest count is low enough?
assistant_limit
Limit amount of assistants?
assistant_maint_access
Grant assistants maint access
assistant_security_ratio
If yes to above, ratio of assistants per security officer (IE: 4:1)
enable_exp_admin_bypass
Allow admins to bypass EXP restrictions
enable_exp_restrictions
Lockout jobs based on EXP
enable_exp_tracking
Enable EXP logging and tracking
enable_job_amount_overrides
Enable loading of job overrides from the config
guest_job_ban
Prevent guests from playing high profile roles
highpop_job_map
Map of job:amount for highpop. key: Job | value: amount
lowpop_job_map
Map of job:amount for lowpop. key: Job | value: amount
restrict_jobs_on_account_age
Do we want to restrict jobs based on account age
restrict_jobs_on_account_age_admin_bypass
Allow admins to bypass age-based job restrictions
skeleton_crew_escape_threshold
Number of crew on the manifest needed to disable skeleton crew access
skeleton_crew_threshold
Number of crew on the manifest needed to activate skeleton crew access
\ No newline at end of file
diff --git a/datum/configuration_section/lighting_effects_configuration.html b/datum/configuration_section/lighting_effects_configuration.html
new file mode 100644
index 00000000000..fb409899913
--- /dev/null
+++ b/datum/configuration_section/lighting_effects_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/lighting_effects_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
lighting_effects_configuration
Config holder for all ligting effect related things
Contrast of bloom effect that depends on light_power
Var Details
exposure_brightness_base
Brightness of exposure effect independent of light_power
exposure_brightness_power
Brightness of exposure effect that depends on light_power
exposure_contrast_base
Contrast of exposure effect independent of light_power
exposure_contrast_power
Contrast of exposure effect that depends on light_power
glow_brightness_base
Brightness of bloom effect independent of light_power
glow_brightness_power
Brightness of bloom effect that depends on light_power
glow_contrast_base
Contrast of bloom effect independent of light_power
glow_contrast_power
Contrast of bloom effect that depends on light_power
\ No newline at end of file
diff --git a/datum/configuration_section/logging_configuration.html b/datum/configuration_section/logging_configuration.html
new file mode 100644
index 00000000000..d4ba92ed0b8
--- /dev/null
+++ b/datum/configuration_section/logging_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/logging_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
Log game events (roundstart, results, a lot of other things)
href_logging
Log hrefs
ooc_logging
Log OOC messages
pda_logging
Enable logging of PDA messages
runtime_logging
Enable runtime logging
say_logging
Log ingame say messages
vote_logging
Enable logging of votes and their results
whisper_logging
Enable logging of whipers
world_logging
Enable world.log output logging
\ No newline at end of file
diff --git a/datum/configuration_section/mc_configuration.html b/datum/configuration_section/mc_configuration.html
new file mode 100644
index 00000000000..3b110b719d2
--- /dev/null
+++ b/datum/configuration_section/mc_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/mc_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/configuration_section/metrics_configuration.html b/datum/configuration_section/metrics_configuration.html
new file mode 100644
index 00000000000..2593a6fbbce
--- /dev/null
+++ b/datum/configuration_section/metrics_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/metrics_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
metrics_configuration
Config holder for stuff relating to metrics management
\ No newline at end of file
diff --git a/datum/configuration_section/movement_configuration.html b/datum/configuration_section/movement_configuration.html
new file mode 100644
index 00000000000..cf01d3fefa9
--- /dev/null
+++ b/datum/configuration_section/movement_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/movement_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
movement_configuration
Config holder for values relating to mob movement speeds
\ No newline at end of file
diff --git a/datum/configuration_section/overflow_configuration.html b/datum/configuration_section/overflow_configuration.html
new file mode 100644
index 00000000000..257ca82e5e6
--- /dev/null
+++ b/datum/configuration_section/overflow_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/overflow_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
overflow_configuration
Config holder for all overflow-server related things
Amount of players before reroute server is used. 0 to disable.
Var Details
overflow_server_location
Location of the overflow server
overflow_whitelist
List of ckeys who will never be routed to the overflow server
reroute_cap
Amount of players before reroute server is used. 0 to disable.
\ No newline at end of file
diff --git a/datum/configuration_section/redis_configuration.html b/datum/configuration_section/redis_configuration.html
new file mode 100644
index 00000000000..c1080e0e057
--- /dev/null
+++ b/datum/configuration_section/redis_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/redis_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
Redis connection string. Includes passphrase if needed.
enabled
Redis enabled or not
\ No newline at end of file
diff --git a/datum/configuration_section/ruin_configuration.html b/datum/configuration_section/ruin_configuration.html
new file mode 100644
index 00000000000..7f9f426e1fa
--- /dev/null
+++ b/datum/configuration_section/ruin_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/ruin_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
ruin_configuration
Config holder for all things regarding space ruins and lavaland ruins
Globally enable and disable placing of all ruins across lavaland and space.
enable_space
Enable space z-level generation.
lavaland_ruin_budget_max
Maximum budget for lavaland ruins
lavaland_ruin_budget_min
Minimum budget for lavaland ruins
maximum_lavaland_zlevels
Maximum number of extra lavaland zlevels to generate
maximum_space_zlevels
Maximum number of extra space zlevels to generate
minimum_lavaland_zlevels
Minimum number of extra lavaland zlevels to generate
minimum_space_zlevels
Minimum number of extra space zlevels to generate
space_ruin_budget_max
Maximum budget for space ruins
space_ruin_budget_min
Minimum budget for space ruins
\ No newline at end of file
diff --git a/datum/configuration_section/system_configuration.html b/datum/configuration_section/system_configuration.html
new file mode 100644
index 00000000000..cdf4e97bdcc
--- /dev/null
+++ b/datum/configuration_section/system_configuration.html
@@ -0,0 +1,3 @@
+/datum/configuration_section/system_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
system_configuration
Config holder for stuff relating to server backend management and secrets
The URL for a ss13-yt-wrap server (https://github.com/Absolucy/ss13-yt-wrap) to use.
Var Details
api_host
Internal API host
api_key
Internal API key
enable_multi_instance_support
Do we want to enable instancing stuff at all?
external_tos_handler
Are we using an external handler for TOS
github_api_token
Github API token
instance_id
Server instance ID
internal_ip
Server internal IP
is_production
Is this server a production server (Has higher security and requires 2FA)
override_map
Map datum of the map to use, overriding the defaults, and data/next_map.txt
shutdown_on_reboot
Do we want the server to kill on reboot instead of keeping the same DD session
shutdown_shell_command
If above is true, you can run a shell command
toast_on_init_complete
Assoc list of region names and their server IPs. Used for geo-routing.
+Send a system toast on init completion?
topic_ip_ratelimit_bypass
List of IP addresses which bypass world topic rate limiting
topic_key
Password for authorising world/Topic requests
ytdlp_url
The URL for a ss13-yt-wrap server (https://github.com/Absolucy/ss13-yt-wrap) to use.
\ No newline at end of file
diff --git a/datum/configuration_section/url_configuration.html b/datum/configuration_section/url_configuration.html
new file mode 100644
index 00000000000..36dbc7c3d6c
--- /dev/null
+++ b/datum/configuration_section/url_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/url_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
URL for linking ingame accounts and forum accounts. Token is appended to end
forum_playerinfo_url
URL for pulling player info on webtools
forum_url
URL for the server forums
github_url
URL for the server github repository
round_stats_url
URL for the stats page
rsc_urls
List of URLs for the server RSC data
rules_url
URL for the server rules
server_url
Server URL for auto-reconnecting people at end round
wiki_url
URL for the server wiki
\ No newline at end of file
diff --git a/datum/configuration_section/vote_configuration.html b/datum/configuration_section/vote_configuration.html
new file mode 100644
index 00000000000..736da561c6e
--- /dev/null
+++ b/datum/configuration_section/vote_configuration.html
@@ -0,0 +1 @@
+/datum/configuration_section/vote_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
vote_configuration
Config holder for stuff relating to the ingame vote system
Time between subsequent shuttle votes if the first one is not successful (deciseconds)
disable_default_vote
Default to players not voting
enable_map_voting
Enable map voting?
map_vote_day_types
Dictionary of day number (string) to vote string
non_repeating_maps
If TRUE, you will not be able to vote for the current map
prevent_dead_voting
Prevent dead players from voting
vote_time
How long will a vote last for in deciseconds
\ No newline at end of file
diff --git a/datum/construction.html b/datum/construction.html
new file mode 100644
index 00000000000..c7147b755fc
--- /dev/null
+++ b/datum/construction.html
@@ -0,0 +1 @@
+/datum/construction - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/construction/mecha.html b/datum/construction/mecha.html
new file mode 100644
index 00000000000..305fe33b3df
--- /dev/null
+++ b/datum/construction/mecha.html
@@ -0,0 +1 @@
+/datum/construction/mecha - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/datum/contractor_hub.html b/datum/contractor_hub.html
new file mode 100644
index 00000000000..c0ec75b727e
--- /dev/null
+++ b/datum/contractor_hub.html
@@ -0,0 +1,27 @@
+/datum/contractor_hub - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Syndicate Hub
Describes and manages the contracts and rewards for a single contractor.
Completing every contract at a given difficulty will always result in a sum of TC greater or equal than the difficulty's threshold.
+Structure: EXTRACTION_DIFFICULTY_(EASY|MEDIUM|HARD) => number
List of targets from each contract in /datum/contractor_hub/var/contracts.
+Used to make sure two contracts from the same hub don't have the same target.
Maximum variation a single contract's TC reward can have upon generation.
+In other words: final_reward = CEILING((tc_threshold / num_contracts) * (1 - (rand(0, 100) / 100) * tc_variation), 1)
TC reward multiplier if the target was extracted DEAD. Should be a penalty so between 0 and 1.
+The final amount is rounded up.
difficulty_tc_thresholds
Completing every contract at a given difficulty will always result in a sum of TC greater or equal than the difficulty's threshold.
+Structure: EXTRACTION_DIFFICULTY_(EASY|MEDIUM|HARD) => number
num_contracts
The number of contracts to generate initially.
owner
The contractor associated to this hub.
page
Current UI page index.
purchases
List of purchases that can be done for Rep.
rep
Amount of Contractor Rep available for spending.
rep_per_completion
How much Contractor Rep to earn per contract completion.
reward_tc_available
Amount of telecrystals available for redeeming.
reward_tc_paid_out
Total amount of paid out telecrystals since the start.
targets
List of targets from each contract in /datum/contractor_hub/var/contracts.
+Used to make sure two contracts from the same hub don't have the same target.
tc_variation
Maximum variation a single contract's TC reward can have upon generation.
+In other words: final_reward = CEILING((tc_threshold / num_contracts) * (1 - (rand(0, 100) / 100) * tc_variation), 1)
Proc Details
calculate_tc_reward
Generates an amount of TC to be used as a contract reward for the given difficulty.
+
Arguments:
+
+
total_contracts - The number of contracts being generated.
+
difficulty - The difficulty to base the threshold from.
+
claim_tc
Gives any unclaimed TC to the given mob.
+
Arguments:
+
+
M - The mob to give the TC to.
+
first_login
Called when the loading animation completes for the first time.
generate_contracts
Regenerates a list of contracts for the contractor to take up.
is_user_authorized
Returns whether the given mob is allowed to connect to the uplink.
\ No newline at end of file
diff --git a/datum/controller.html b/datum/controller.html
new file mode 100644
index 00000000000..91443163418
--- /dev/null
+++ b/datum/controller.html
@@ -0,0 +1 @@
+/datum/controller - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/datum/controller/global_vars.html b/datum/controller/global_vars.html
new file mode 100644
index 00000000000..7cedc91fbb4
--- /dev/null
+++ b/datum/controller/global_vars.html
@@ -0,0 +1,49 @@
+/datum/controller/global_vars - Space Station 13Space Station 13 - Modules - Types — Var Details
list of known advanced disease ids. If an advanced disease isn't here it will display as unknown disease on scanners
+Initialized with the id of the flu and cold samples from the virologist's fridge in the pandemic's init
Static typecache list of things we are interested in
+Consider this a union of the for loop and the hearers call from below
+Must be kept up to date with the contents of hostile_machines
Amount of singulos created during the round(note that this will include teslas as well)
gravity_generators
Global list of all active gravity generators. Keyed by the Z level
hands_state
tgui state: hands_state
+
Checks that the src_object is in the user's hands.
heretic_sacrifice_landmarks
A global assoc list of all landmarks that denote a heretic sacrifice location. [string heretic path] = [landmark].
heretic_start_knowledge
Global list of all heretic knowledge that have is_starting_knowledge = TRUE. List of PATHS.
hostile_machines
List of objects that AIs will treat as targets
huds
GLOBAL HUD LIST
human_adjacent_state
tgui state: human_adjacent_state
+
In addition to default checks, only allows interaction for a
+human adjacent user.
icon_dimensions
Cache of the width and height of icon files, to avoid repeating the same expensive operation
inventory_state
tgui state: inventory_state
+
Checks that the src_object is in the user's top-level (hand, ear, pocket, belt, etc) inventory.
join_motd
Join MOTD for the server
join_tos
Join TOS for the server
known_advanced_diseases
list of known advanced disease ids. If an advanced disease isn't here it will display as unknown disease on scanners
+Initialized with the id of the flu and cold samples from the virologist's fridge in the pandemic's init
library_catalog
Library Catalog global is for storing a library catalog datum that will track book, category, and report lists for the library
log_pulltypes
A list of types of objects we want to record in admin logs when
+a player starts pulling them.
looc_enabled
Is LOOC currently enabled?
looping_sounds
List of looping sounds
marker_beacon_colors
Marker Beacons
mod_link_ids
Global list of all ids associated to a /datum/mod_link instance
mod_themes
Global list of all /datum/mod_theme
mouse_respawn_time
Amount of time (in minutes) that must pass between a player dying as a mouse and repawning as a mouse
multiverse
Multiverse Blade
news_network
The feed network singleton. Contains all channels (which contain all stories).
next_unique_datum_id
The next UID to be used (Increments by 1 for each UID)
nologevent
Are we in a no-log event (EORG, highlander, etc)?
not_incapacitated_state
tgui state: not_incapacitated_state
+
Checks that the user isn't incapacitated
not_incapacitated_turf_state
tgui state: not_incapacitated_turf_state
+
Checks that the user isn't incapacitated and that their loc is a turf
notcontained_state
tgui state: notcontained_state
+
Checks that the user is not inside src_object, and then makes the
+default checks.
observer_state
tgui state: observer_state
+
Checks that the user is an observer/ghost.
ooc_enabled
Is OOC currently enabled?
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.
ragnarok_kill_count
Used to track warrior/servant deaths
rcd_list
List of entertainment telescreens connected to the "news" cameranet
reality_smash_track
We want reality_smash_tracker to exist only once and be accessible from anywhere.
rnd_tech_id_to_name
Assoc list of all RND techs with ID to name
scanned_organs
what xeno organs have been scanned today?
security_positions
Roles that include any semblence of security, mostly for jobbans
seeds_cached_base64_icons
Stores a list of the cached seed icons. Used in the seed extractor and the gene modder
self_state
tgui state: self_state
+
Only checks that the user and src_object are the same.
slower_restart
Will our restart be slower?
smokes_active
Counter for the current amount of smoke
sparks_active
Counter for the current amount of sparks
special_role_times
Minimum age (in days) for accounts to play these roles.
strippable_state
tgui state: strippable_state
+
Checks if user can strip the mob src_object
swarmer_blacklist
Blacklist of types that swarmers should not touch
target_interested_atoms
Static typecache list of things we are interested in
+Consider this a union of the for loop and the hearers call from below
+Must be kept up to date with the contents of hostile_machines
tcomms_machines
Global list for all telecomms machines in the world
tesla_containment
List of things that restrain teslas.
tgs_log
Log of TGS stuff that can be viewed ingame
tilt_crits
List of possible crits from things tipping over
trait_name_map
value -> trait name, generated on use from trait_by_type global
ui_logins
tgui login
+
Allows the handling of logins using IDs within tgui.
+
Two key procs:
+
+
/obj/proc/ui_login_act - Call in your ui_act() proc to catch any login actions and handle them.
Optional: call /obj/proc/ui_login_attackby in your attackby__legacy__attackchain() to make the login process easier.
+
+
How to use (JS side): Use the and interfaces.
ui_modals
ui modals
+
Allows creation of modals within tgui.
uid_log
Log of all UIDs created in the round. Assoc list with type as key and amount as value
unplanned_controllers
Basic AI controllers that are currently performing idled behaviors
viewer_state
tgui state: viewer_state
+
State for only viewing, regardless of distance. Different from observer_state, which grants interactivity exclusively if an observer/admin.
voice_of_god_commands
List of all voice of god commands
wire_color_directory
List of wire colors for each object type of that round. One for airlocks, one for vendors, etc.
world_topic_handlers
List of all world topic handler datums. Populated inside makeDatumRefLists()
world_topic_spam_prevention_handlers
List of all world topic spam prevention handlers. See code/modules/world_topic/_spam_prevention_handler.dm
\ No newline at end of file
diff --git a/datum/controller/master.html b/datum/controller/master.html
new file mode 100644
index 00000000000..3ca1dc45fe5
--- /dev/null
+++ b/datum/controller/master.html
@@ -0,0 +1,3 @@
+/datum/controller/master - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
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
Var Details
current_runlevel
For scheduling different subsystems for different stages of the round
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
world.time of last fire, for tracking lag outside of the mc
make_runtime
Set this to 1 to debug the MC with a detailed stack trace. Do not set on a production server.
map_loading
Are we loading in a new map?
processing
Are we processing (higher values increase the processing delay by n ticks)
queue_head
Start of queue linked list
queue_priority_count
Running total so that we don't have to loop thru the queue each run to split up the tick
queue_priority_count_bg
Same, but for background subsystems
queue_tail
End of queue linked list (used for appending to the list)
random_seed
Random seed generated for randomness if entropy is required
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)
sleep_offline_after_initializations
Do we want to sleep until players log in?
ss_in_init_order
Cache for the loading screen - cleared after
subsystems
List of subsystems to fire().
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
\ No newline at end of file
diff --git a/datum/controller/subsystem.html b/datum/controller/subsystem.html
new file mode 100644
index 00000000000..84f745770db
--- /dev/null
+++ b/datum/controller/subsystem.html
@@ -0,0 +1,18 @@
+/datum/controller/subsystem - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
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
[Subsystem Flags][SS_NO_INIT] 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)
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.
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
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
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)
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.
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)
cpu_display
Tab to display in under the MC subtabs
failure_strikes
How many times we suspect a subsystem type has crashed the MC, 3 strikes and you're out!
fire_sleep_count
Amount of times the subsystem has slept during fire()
flags
[Subsystem Flags][SS_NO_INIT] 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.
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()
offline_implications
What are the implications of this SS being offlined?
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.
ss_id
SS ID - Again, change this but keep it snake_case
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
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.
get_cost
Returns what to display as the ms cost for this subsystem.
get_metrics
Returns the metrics for the subsystem.
+
This can be overriden on subtypes for variables that could affect tick usage
+Example: ATs on SSair
ignite
This is used so the mc knows when the subsystem sleeps. do not override.
last_task
Allows a subsystem to report what it was doing in case of a silent crash.
postpone
Causes the next "cycle" fires to be missed. Effect is accumulative but can reset by calling update_nextfire(reset_time = TRUE)
update_nextfire
+
Update next_fire for the next run.
+
reset_time (bool) - Ignore things that would normally alter the next fire, like tick_overrun, and last_fire. (also resets postpone)
+
\ No newline at end of file
diff --git a/datum/controller/subsystem/ai_controllers.html b/datum/controller/subsystem/ai_controllers.html
new file mode 100644
index 00000000000..ce870890c78
--- /dev/null
+++ b/datum/controller/subsystem/ai_controllers.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/ai_controllers - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Creates all instances of ai_subtrees and assigns them to the ai_subtrees list.
Var Details
our_cost
The tick cost of all active AI, calculated on fire.
planning_status
Type of status we are interested in running
summing_cost
The tick cost of all currently processed AI, being summed together
Proc Details
on_max_z_changed
Called when the max Z level was changed, updating our coverage.
setup_subtrees
Creates all instances of ai_subtrees and assigns them to the ai_subtrees list.
\ No newline at end of file
diff --git a/datum/controller/subsystem/air.html b/datum/controller/subsystem/air.html
new file mode 100644
index 00000000000..90b6b87eee0
--- /dev/null
+++ b/datum/controller/subsystem/air.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/air - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The set of current bound mixtures. Shown in SS Info as BM:x+y, where x is the length at the start of the most recent processing, and y is the number of mixtures that have been added during processing.
Is MILLA currently idle? TRUE if the MILLA tick has finished, meaning data is fresh and changes can be made. FALSE if MILLA is currently running a tick, meaning data is from last tick and changes cannot be made.
Similar to addtimer, but triggers once MILLA enters synchronous mode.
Var Details
added_bound_mixtures
The number of bound mixtures that were added during this processing cycle.
atmos_machinery
The set of active atmos machinery. Length shown in SS Info as AM.
bound_mixtures
The set of current bound mixtures. Shown in SS Info as BM:x+y, where x is the length at the start of the most recent processing, and y is the number of mixtures that have been added during processing.
cost_atmos_machinery
The cost of a pass through atmos machinery, shown in SS Info's C block as AM.
cost_bound_mixtures
The cost of a pass through bound gas mixtures, shown in SS Info's C block as BM.
cost_full
How long we took for a full pass through the subsystem. Custom-tracked version of cost.
cost_hotspots
The cost of a pass through hotspots, shown in SS Info's C block as HS.
cost_interesting_tiles
The cost of a pass through interesting tiles, shown in SS Info's C block as IT.
cost_milla_tick
The cost of a MILLA tick in ms, shown in SS Info's C block as MT.
cost_pipenets
The cost of a pass through pipenets, shown in SS Info's C block as PN.
cost_pipenets_to_build
The cost of a pass through building pipenets, shown in SS Info's C block as DPN.
cost_pressure_tiles
The cost of a pass through loading pressure tiles, shown in SS Info's C block as PT.
cost_windy_tiles
The cost of a pass through windy tiles, shown in SS Info's C block as WT.
currentpart
Which step we're currently on, used to let us resume if our time budget elapses.
currentrun
An arbitrary list of stuff currently being processed.
hotspot_count
The length of the most recent hotspot list, shown in SS Info as HS.
hotspots
The set of tiles that are currently on fire.
in_milla_safe_code
Are we currently running in a MILLA-safe context, i.e. is milla_idle guaranteed to be TRUE. Nothing outside of this file should change this.
interesting_tile_count
The length of the most recent interesting tiles list, shown in SS Info as IT.
last_bound_mixtures
The number of bound mixtures we saw when we last stopped processing them.
last_complete_tick
When did we last finish running a complete tick?
last_tick_start
When did we last start a tick?
machinery_to_construct
A list of atmos machinery to set up in Initialize.
milla_idle
Is MILLA currently idle? TRUE if the MILLA tick has finished, meaning data is fresh and changes can be made. FALSE if MILLA is currently running a tick, meaning data is from last tick and changes cannot be made.
milla_tick
And that means we also nee a replacement for times_fired.
new_hotspots
The set of tiles that are still on fire after this tick.
new_windy_tiles
The set of tiles that are still experiencing wind after this tick.
original_bound_mixtures
The original length of bound_mixtures.
pipenets
The set of active pipenets. Length shown in SS Info as PN.
pipenets_to_build
The set of pipenets that need to be built. Length shown in SS Info as PTB.
pressure_hud_users
The people who were using the pressure HUD last tick.
pressure_overlay_alpha
What alpha to use for the pressure overlay. Applies to everyone using the overlay.
pressure_x
The coordinates of the pressure image we're currently loading.
self_wait
How long we actually wait between ticks. Will round up to the next server tick.
sleepers
What sleeping callbacks are currently running?
time_slept
How long we spent sleeping while waiting for MILLA to finish the last tick, shown in SS Info's C block as ZZZ.
waiting_for_sync
A list of callbacks waiting for MILLA to finish its tick and enter synchronous mode.
was_paused
MC seems to not be good at tracking whether SSair pauses, so track that ourselves.
windy_tile_count
The length of the most recent windy tiles list, shown in SS Info as WT.
windy_tiles
The set of tiles that are currently experiencing wind.
Proc Details
sleepable_synchronize
Similar to addtimer, but triggers once MILLA enters synchronous mode. This version allows for sleeping if it's absolutely necessary.
synchronize
Similar to addtimer, but triggers once MILLA enters synchronous mode.
\ No newline at end of file
diff --git a/datum/controller/subsystem/ambience.html b/datum/controller/subsystem/ambience.html
new file mode 100644
index 00000000000..66062a3f5e9
--- /dev/null
+++ b/datum/controller/subsystem/ambience.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/ambience - Space Station 13Space Station 13 - Modules - Types — Var Details
Assoc list of listening client - next ambience time
Var Details
ambience_listening_clients
Assoc list of listening client - next ambience time
\ No newline at end of file
diff --git a/datum/controller/subsystem/assets.html b/datum/controller/subsystem/assets.html
new file mode 100644
index 00000000000..529e3bae102
--- /dev/null
+++ b/datum/controller/subsystem/assets.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/assets - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/controller/subsystem/blackbox.html b/datum/controller/subsystem/blackbox.html
new file mode 100644
index 00000000000..70f3034f02d
--- /dev/null
+++ b/datum/controller/subsystem/blackbox.html
@@ -0,0 +1,48 @@
+/datum/controller/subsystem/blackbox - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
List of highest tech levels attained that isn't lost lost by destruction of RD computers
sealed
Is it time to stop tracking stats?
versions
Associative list of any feedback variables that have had their format changed since creation and their current version, remember to update this
Proc Details
LogBroadcast
Radio broadcast logging helper
+
Called during [/proc/broadcast_message()] to log a message to the blackbox.
+Translates the specific frequency to a name
+
Arguments:
+
+
freq - Frequency of the transmission
+
ReportDeath
Death reporting proc
+
Called when humans and cyborgs die, and logs death info to the death table
+
Arguments:
+
+
L - The human or cyborg to be logged
+
Seal
Blackbox Sealer
+
Seals the blackbox, preventing new data from being stored. This is to avoid data being bloated during end round grief
Shutdown
Shutdown Helper
+
Dumps all feedback stats to the DB. Doesnt get much simpler than that.
find_feedback_datum
Helper to find and return a feeedback datum
+
Pass in a feedback datum key and key_type to do a lookup.
+It will create the feedback datum if it doesnt exist
+
Arguments:
+
+
key - Key of the variable to lookup
+
key_type - Type of feedback to be recorded if the feedback datum cant be found
+
log_research
Research level broadcast logging helper
+
This is called on R&D updates for a safe way of logging tech levels if an R&D console is destroyed
+
Arguments:
+
+
tech - Research technology name
+
level - Research technology level
+
record_feedback
Main feedback recording proc
+
This is the bulk of this subsystem and is in charge of creating and using the variables.
+See .github/USING_FEEDBACK_DATA.md for instructions
+Note that feedback is not recorded to the DB during this function. That happens at round end.
+
Arguments:
+
+
key_type - Type of key. Either "text", "amount", "tally", "nested tally", "associative"
+
key - Key of the data to be used (EG: "user_verb")
+
stat - Either a number accumulated via "amount", "tally", or "nested tally"; or a number/string collected by "ledger" or "nested ledger".
+
data - The actual data to logged
+
overwrite - Do we want to overwrite the existing key
+
ignore_seal - Does the feedback go in regardless of blackbox sealed status? (EG: map vote results)
+
record_feedback_recurse_list
Recursive list recorder
+
Used by the above proc for nested tallies
+
Arguments:
+
+
L - List to use
+
key_list - List of keys to add
+
value - How much to increase by or append to
+
depth - Depth to use
+
accumulate - TRUE if we are adding value to a tally, FALSE if we are appending it to a record
+
\ No newline at end of file
diff --git a/datum/controller/subsystem/chat.html b/datum/controller/subsystem/chat.html
new file mode 100644
index 00000000000..5ac94613ab3
--- /dev/null
+++ b/datum/controller/subsystem/chat.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/chat - Space Station 13Space Station 13 - Modules - Types — Var Details
Associates a ckey with their next sequence number.
Var Details
client_to_payloads
Associates a ckey with a list of messages to send to them.
client_to_reliability_history
Associates a ckey with an associative list of their last CHAT_RELIABILITY_HISTORY_SIZE messages.
client_to_sequence_number
Associates a ckey with their next sequence number.
\ No newline at end of file
diff --git a/datum/controller/subsystem/cleanup.html b/datum/controller/subsystem/cleanup.html
new file mode 100644
index 00000000000..b411bbccf88
--- /dev/null
+++ b/datum/controller/subsystem/cleanup.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/cleanup - Space Station 13Space Station 13 - Modules - Types — Var Details
A list of global lists we want the subsystem to clean.
Var Details
lists_to_clean
A list of global lists we want the subsystem to clean.
\ No newline at end of file
diff --git a/datum/controller/subsystem/dbcore.html b/datum/controller/subsystem/dbcore.html
new file mode 100644
index 00000000000..f1d08df0878
--- /dev/null
+++ b/datum/controller/subsystem/dbcore.html
@@ -0,0 +1,39 @@
+/datum/controller/subsystem/dbcore - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Connection handle. This is an arbitrary handle returned from rustlibs.
failed_connection_timeout
Timeout of failed connections
failed_connections
Amount of failed connections
last_error
Last error to occur
schema_valid
Is the DB schema valid
total_errors
SQL errors that have occured mid round
Proc Details
CheckSchemaVersion
Schema Version Checker
+
Basically verifies that the DB schema in the config is the same as the version the game is expecting.
+If it is a valid version, the DB will then connect.
Connect
Connection Creator
+
This proc basically does a few sanity checks before connecting, then attempts to make a connection
+When connecting, rustlibs will initialize a thread pool for queries to use to run asynchronously
Disconnect
Disconnection Handler
+
Tells the DLL to clean up any open connections.
+This will also reset the failed connection counter
ErrorMsg
Error Message Helper
+
Returns the last error that the subsystem encountered.
+Will always report "Database disabled by configuration" if the DB is disabled.
IsConnected
IsConnected Helper
+
Short helper to check if the DB is connected or not.
+Does a few sanity checks, then asks the DLL if we are properly connected
MassExecute
Handler to allow many queries to be executed en masse
+
Feed this proc a list of queries and it will execute them all at once, by the power of async magic!
+
Arguments:
+
+
querys - List of queries to execute
+
warn - Boolean to warn on query failure
+
qdel - Boolean to enable auto qdel of queries
+
assoc - Boolean to enable support for an associative list of queries
+
log - Do we want to generate logs for these queries
+
NewQuery
New Query Invoker
+
Checks to make sure this query isnt being invoked by admin fuckery, then returns a new /datum/db_query
+
Arguments:
+
+
sql_query - SQL query to be ran, with :parameter placeholders
+
arguments - Associative list of parameters to be inserted into the query
+
ReportError
Error Reporting Helper
+
Pretty much just sets last_error to the error argument
+
Arguments:
+
+
error - Error text to set last_error to
+
SetRoundEnd
Round End Time Setter
+
Called during SSticker.declare_completion()
+Sets the time that the round ended in the DB, as well as some other params
SetRoundID
Round ID Setter
+
Called during world/New() at the earliest point
+Declares a round ID in the database and assigns it to a global. Also ensures that server address and ports are set
SetRoundStart
Round End Time Setter
+
Called during SSticker.setup()
+Sets the time that the round started in the DB
Shutdown
Shutdown Handler
+
Called during world/Reboot() as part of the MC shutdown
+Finalises a round in the DB before disconnecting.
\ No newline at end of file
diff --git a/datum/controller/subsystem/debugview.html b/datum/controller/subsystem/debugview.html
new file mode 100644
index 00000000000..ddd5887575a
--- /dev/null
+++ b/datum/controller/subsystem/debugview.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/debugview - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/controller/subsystem/economy.html b/datum/controller/subsystem/economy.html
new file mode 100644
index 00000000000..4ea9150d02a
--- /dev/null
+++ b/datum/controller/subsystem/economy.html
@@ -0,0 +1,9 @@
+/datum/controller/subsystem/economy - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
credits gained for each secondary goal completed
+These get split in 3, one part for Cargo, one for the department,
+and one part for the person who requested the goal.
Total amount of account created during the round, neccesary for generating unique account ids
cargo_account
///CARGO VARIABLES/////
+the department account tethered to this supply console, we keep a ref here for shuttle operations
centcom_message
Remarks from Centcom on how well you checked the last order.
credits_per_design
credits gained per research design sold
credits_per_easy_reagent_goal
credits gained for each secondary goal completed
+These get split in 3, one part for Cargo, one for the department,
+and one part for the person who requested the goal.
credits_per_intel
credits gained per intel sold
credits_per_manifest
credits gained per slip returned
credits_per_mech
credits gained per working mech sold
credits_per_plasma
credits gained per plasma sold
credits_per_salvage
points gained per salvage sold
credits_per_virology_goal
points gained per virology goal
current_10_minute_spending
amount of money spent in this 15 minute slot during the round
delivery_list
Crates that will be on next shuttle
discovered_plants
Typepaths for unusual plants we've already sent CentComm, associated with their potencies
economy_data
list of vars that will be tracked throughout the round (a new entry for each key list will be added every 15 minutes)
fine_for_loose_cargo
credits lost for sending unsecured cargo
fine_for_messy_shuttle
credits lost for sending a messy shuttle
fine_for_selling_trash
credits lost for sending unwanted items
money_account_databases
List of all money account databases existing in the round
next_data_check
time to next stats check
next_mail_delay
Time until the next mail shipment
next_paycheck_delay
///Paycheck Variables/////
+time to next payday
ordernum
Current Order number
pack_price_modifier
The modifier on crate prices to multiple the price by.
payday_count
total paydays this round
request_list
Requested crates, waiting for approval by department heads
shopping_list
Approved Crates, waiting to be delivered
space_credits_created
The amount of space credits that have been created out of thin air, does not include credits created at round-start
space_credits_destroyed
The amount of space credits that have been irreversibly deleted/removed from the round
supply_packs
Full list of all available supply packs to purchase
total_credit_transfers
The amount of transfers (that are worth more than a few credits) that have been accepted during the round
total_space_cash
The absolute total amount of space cash (not to be confused with credits) in the round, does not count space credits in money accounts
total_space_credits
The absolute total amount of space credits in various economy systems, does not count space cash
total_vendor_transactions
the amount of venor purchases during the round
Proc Details
generate_supply_order
Supply Stuff
payday
Paycheck Stuff
\ No newline at end of file
diff --git a/datum/controller/subsystem/events.html b/datum/controller/subsystem/events.html
new file mode 100644
index 00000000000..f1c1f6e1ba0
--- /dev/null
+++ b/datum/controller/subsystem/events.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/events - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/controller/subsystem/ghost_spawns.html b/datum/controller/subsystem/ghost_spawns.html
new file mode 100644
index 00000000000..111cd820b37
--- /dev/null
+++ b/datum/controller/subsystem/ghost_spawns.html
@@ -0,0 +1,30 @@
+/datum/controller/subsystem/ghost_spawns - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Called by the subsystem when a poll's timer runs out
Var Details
currently_polling
List of polls currently ongoing, to be checked on next fire()
next_poll_to_finish
The poll that's closest to finishing
polls_active
Whether there are active polls or not
total_polls
Number of polls performed since the start
Proc Details
is_eligible
Returns whether an observer is eligible to be an event mob
+
Arguments:
+
+
M - The mob to check eligibility
+
role - The role to check eligibility for. Checks 1. the client has enabled the role 2. the account's age for this role if antag_age_check is TRUE
+
antag_age_check - Whether to check the account's age or not for the given role.
+
role_text - The role's clean text. Used for checking job bans to determine eligibility
+
min_hours - The amount of minimum hours the client needs before being eligible
+
check_antaghud - Whether to consider a client who enabled AntagHUD ineligible or not
+
poll_candidates
Polls for candidates with a question and a preview of the role
+
This proc replaces /proc/pollCandidates.
+Should NEVER be used in a proc that has waitfor set to FALSE/0 (due to #define UNTIL)
+Arguments:
+
+
question - The question to ask to potential candidates
+
role - The role to poll for. Should be a ROLE_x enum. If set, potential candidates who aren't eligible will be ignored
+
antag_age_check - Whether to filter out potential candidates who don't have an old enough account
+
poll_time - How long to poll for in deciseconds
+
ignore_respawnability - Whether to ignore the player's respawnability
+
min_hours - The amount of hours needed for a potential candidate to be eligible
+
flash_window - Whether the poll should flash a potential candidate's game window
+
check_antaghud - Whether to filter out potential candidates who enabled AntagHUD
+
source - The atom, atom prototype, icon or mutable appearance to display as an icon in the alert
+
role_cleanname - The name override to display to clients
+
polling_finished
Called by the subsystem when a poll's timer runs out
+
Can be called manually to finish a poll prematurely
+Arguments:
+
+
P - The poll to finish
+
\ No newline at end of file
diff --git a/datum/controller/subsystem/heartbeat.html b/datum/controller/subsystem/heartbeat.html
new file mode 100644
index 00000000000..091f67d9114
--- /dev/null
+++ b/datum/controller/subsystem/heartbeat.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/heartbeat - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/controller/subsystem/http.html b/datum/controller/subsystem/http.html
new file mode 100644
index 00000000000..f42d129b928
--- /dev/null
+++ b/datum/controller/subsystem/http.html
@@ -0,0 +1,5 @@
+/datum/controller/subsystem/http - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Variable to define if logging is enabled or not. Disabled by default since we know the requests the server is making. Enable with VV if you need to debug requests
List of all async HTTP requests in the processing chain
logging_enabled
Variable to define if logging is enabled or not. Disabled by default since we know the requests the server is making. Enable with VV if you need to debug requests
total_requests
Total requests the SS has processed in a round
Proc Details
create_async_request
Async request creator
+
Generates an async request, and adds it to the subsystem's processing list
+These should be used as they do not lock the entire DD process up as they execute inside their own thread pool inside RUSTG
make_blocking_request
Blocking request creator
+
Generates a blocking request, executes it, logs the info then cleanly returns the response
+Exists as a proof of concept, and should never be used
\ No newline at end of file
diff --git a/datum/controller/subsystem/input.html b/datum/controller/subsystem/input.html
new file mode 100644
index 00000000000..282fa985f61
--- /dev/null
+++ b/datum/controller/subsystem/input.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/input - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/controller/subsystem/jobs.html b/datum/controller/subsystem/jobs.html
new file mode 100644
index 00000000000..83f5ec79487
--- /dev/null
+++ b/datum/controller/subsystem/jobs.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/jobs - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Returns a list of jobs keyed by name to UI color for the job transfer selection.
Var Details
drunken_spawning
Do we spawn people drunkenly due to the party last night?
job_selector
Job selector, used for roundstart and late join job assignment
late_arrivals_spawning
Do we spawn everyone at shuttle due to late arivals?
skeleton_crew
Is the crew count below the skeleton crew threshold?
skeleton_revoke_timer
Holds a reference to the skeleton timer until it's finished or killed.
station_departments
list of station departments and their associated roles and economy payments
Proc Details
format_jobs_for_id_computer
Returns a list of jobs keyed by name to UI color for the job transfer selection.
\ No newline at end of file
diff --git a/datum/controller/subsystem/late_mapping.html b/datum/controller/subsystem/late_mapping.html
new file mode 100644
index 00000000000..4f2ce18922a
--- /dev/null
+++ b/datum/controller/subsystem/late_mapping.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/late_mapping - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Randomly spawns mice in maintenance instead of being purely fixed spawn points
Var Details
maze_generators
List of all maze generators to process
Proc Details
maintenance_mice
Randomly spawns mice in maintenance instead of being purely fixed spawn points
\ No newline at end of file
diff --git a/datum/controller/subsystem/machines.html b/datum/controller/subsystem/machines.html
new file mode 100644
index 00000000000..ee20f53f190
--- /dev/null
+++ b/datum/controller/subsystem/machines.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/machines - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Removes a machine from the machine subsystem; should only be called by the machine itself inside Destroy.
Var Details
all_machines
All machines, not just those that are processing.
machines_by_type
Associative list of all machines that exist.
powernets
All regional powernets (/datum/regional_powernet) in the world
Proc Details
get_by_type
Gets a list of all machines that are either the passed type or a subtype.
register_machine
Registers a machine with the machine subsystem; should only be called by the machine itself during its creation.
unregister_machine
Removes a machine from the machine subsystem; should only be called by the machine itself inside Destroy.
\ No newline at end of file
diff --git a/datum/controller/subsystem/mapping.html b/datum/controller/subsystem/mapping.html
new file mode 100644
index 00000000000..509473af2e5
--- /dev/null
+++ b/datum/controller/subsystem/mapping.html
@@ -0,0 +1,5 @@
+/datum/controller/subsystem/mapping - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
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
Schedules a group of turfs to be handed back to the reservation system's control
Var Details
caves_theme
What primary cave theme we have picked for cave generation today.
emergency_shuttle_id
The emergency shuttle to load at Centcom in late_mapping
environments
A mapping of environment names to MILLA environment IDs.
existing_station_areas
List of areas that exist on the station this shift
existing_station_areas_types
Types of areas that exist on the station this shift
gamma_armory_shuttle_id
The Gamma Armory shuttle to load at Centcom in late_mapping.
ghostteleportlocs
List of all areas that can be accessed via IC and OOC means
last_map
What map was used last round?
lavaland_ruins_placer
Ruin placement manager for lavaland levels.
lavaland_theme
What do we have as the lavaland theme today?
lists_to_reserve
List of lists of turfs to reserve
map_datum
What map datum are we using
next_map
What map will be used next round
space_ruins_placer
Ruin placement manager for space levels.
teleportlocs
List of all areas that can be accessed via IC means
trader_shuttle_id
The trader shuttle to load at Centcom in late_mapping.
Proc Details
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
lazy_load_template
Lazy loads a template on a lazy-loaded z-level.
request_turf_block_reservation
Requests a /datum/turf_reservation based on the given width, height.
unreserve_turfs
Schedules a group of turfs to be handed back to the reservation system's control
\ No newline at end of file
diff --git a/datum/controller/subsystem/metrics.html b/datum/controller/subsystem/metrics.html
new file mode 100644
index 00000000000..43ef22a69b8
--- /dev/null
+++ b/datum/controller/subsystem/metrics.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/metrics - Space Station 13Space Station 13 - Modules - Types — Var Details
The real time of day the server started. Used to calculate time drift
Var Details
world_init_time
The real time of day the server started. Used to calculate time drift
\ No newline at end of file
diff --git a/datum/controller/subsystem/mobs.html b/datum/controller/subsystem/mobs.html
new file mode 100644
index 00000000000..a47091f9118
--- /dev/null
+++ b/datum/controller/subsystem/mobs.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/mobs - Space Station 13Space Station 13 - Modules - Types — Var Details
The amount of Xenobiology mobs (and their offspring) that exist in the world. Used for mob capping. Excludes Slimes
Var Details
xenobiology_mobs
The amount of Xenobiology mobs (and their offspring) that exist in the world. Used for mob capping. Excludes Slimes
\ No newline at end of file
diff --git a/datum/controller/subsystem/movement.html b/datum/controller/subsystem/movement.html
new file mode 100644
index 00000000000..746ca4ccb14
--- /dev/null
+++ b/datum/controller/subsystem/movement.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/movement - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Removes a bucket from our system. You only need to pass in the time, but if you pass in the index of the list you save us some work
Var Details
buckets
Assoc list of "target time" -> list(things to process). Used for quick lookup
canonical_time
The time we started our last fire at
sorted_buckets
Sorted list of list(target time, bucket to process)
visual_delay
The visual delay of the subsystem
Proc Details
pour_bucket
Processes a bucket of movement loops (This should only ever be called by fire(), it exists to prevent runtime fuckery)
smash_bucket
Removes a bucket from our system. You only need to pass in the time, but if you pass in the index of the list you save us some work
\ No newline at end of file
diff --git a/datum/controller/subsystem/movement/ai_movement.html b/datum/controller/subsystem/movement/ai_movement.html
new file mode 100644
index 00000000000..810c1906195
--- /dev/null
+++ b/datum/controller/subsystem/movement/ai_movement.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/movement/ai_movement - Space Station 13Space Station 13 - Modules - Types — Var Details
an assoc list of all ai_movement types. Assoc type to instance
Var Details
movement_types
an assoc list of all ai_movement types. Assoc type to instance
\ No newline at end of file
diff --git a/datum/controller/subsystem/pathfinder.html b/datum/controller/subsystem/pathfinder.html
new file mode 100644
index 00000000000..853912759f1
--- /dev/null
+++ b/datum/controller/subsystem/pathfinder.html
@@ -0,0 +1,11 @@
+/datum/controller/subsystem/pathfinder - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Takes a set of pathfind info, returns the first valid pathmap that would work if one exists
+Optionally takes a max age to accept (defaults to 0 seconds) and a minimum acceptable range
+If include_building is true and we can only find a building path, ew'll use that instead. tho we will wait for it to finish first
Begins to handle a pathfinding run based off the input /datum/pathfind datum
+You should not use this, it exists to allow for shenanigans. You do not know how to do shenanigans
Initiates a swarmed pathfind. Returns TRUE if we're good, FALSE if something's failed
+If a valid pathmap exists for the TARGET turf we'll use that, otherwise we have to build a new one
Initiates a pathfind. Returns true if we're good, FALSE if something's failed
Var Details
active_pathing
List of pathfind datums we are currently trying to process
currentmaps
List of uncheccked source_to_map entries
currentrun
List of pathfind datums being ACTIVELY processed. exists to make subsystem stats readable
source_to_maps
Assoc list of target turf -> list(/datum/path_map) centered on the turf
Proc Details
build_map
Initiates a SSSP run. Returns true if we're good, FALSE if something's failed
can_pass_build_map
Initiates a SSSP run from a pass_info datum. Returns true if we're good, FALSE if something's failed
get_valid_map
Takes a set of pathfind info, returns the first valid pathmap that would work if one exists
+Optionally takes a max age to accept (defaults to 0 seconds) and a minimum acceptable range
+If include_building is true and we can only find a building path, ew'll use that instead. tho we will wait for it to finish first
get_valid_maps
Takes a set of pathfind info, returns all valid pathmaps that would work
+Takes an optional minimum range arg
path_map_cache
Caches the passed in path_map, allowing for reuse in future
pathfind
Initiates a pathfind. Returns true if we're good, FALSE if something's failed
run_pathfind
Begins to handle a pathfinding run based off the input /datum/pathfind datum
+You should not use this, it exists to allow for shenanigans. You do not know how to do shenanigans
swarmed_pathfind
Initiates a swarmed pathfind. Returns TRUE if we're good, FALSE if something's failed
+If a valid pathmap exists for the TARGET turf we'll use that, otherwise we have to build a new one
ventcrawl_pathfind
Initiates a pathfind. Returns true if we're good, FALSE if something's failed
\ No newline at end of file
diff --git a/datum/controller/subsystem/persistent_data.html b/datum/controller/subsystem/persistent_data.html
new file mode 100644
index 00000000000..5f24506a3f4
--- /dev/null
+++ b/datum/controller/subsystem/persistent_data.html
@@ -0,0 +1,7 @@
+/datum/controller/subsystem/persistent_data - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Set to true after a the end of the round to prevent griefing being saved
registered_atoms
List of atoms registered into the subsystem for persistent data storage. Can be anything at all
Proc Details
register
Proc to register an atom with SSpersistent_data
+
This will add any provided atom to the list of registered atoms, and add it to the Initialization queue
+If the system has already initialized, it calls persistent_load() at that moment
+
Arguments:
+
+
A - Atom to register
+
\ No newline at end of file
diff --git a/datum/controller/subsystem/ping.html b/datum/controller/subsystem/ping.html
new file mode 100644
index 00000000000..b9574959040
--- /dev/null
+++ b/datum/controller/subsystem/ping.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/ping - Space Station 13Space Station 13 - Modules - Types — Var Details
List used each time SS fires to track which clients have been processed so far
Var Details
current_run
List used each time SS fires to track which clients have been processed so far
\ No newline at end of file
diff --git a/datum/controller/subsystem/processing/ai_behaviors.html b/datum/controller/subsystem/processing/ai_behaviors.html
new file mode 100644
index 00000000000..9412acd1086
--- /dev/null
+++ b/datum/controller/subsystem/processing/ai_behaviors.html
@@ -0,0 +1,5 @@
+/datum/controller/subsystem/processing/ai_behaviors - Space Station 13Space Station 13 - Modules - Types — Var Details
List of all targeting_strategy singletons, key is the typepath while assigned
+value is a newly created instance of the typepath. See setup_targeting_strats().
Var Details
ai_behaviors
List of all ai_behavior singletons, key is the typepath while assigned
+value is a newly created instance of the typepath. See setup_ai_behaviors().
targeting_strategies
List of all targeting_strategy singletons, key is the typepath while assigned
+value is a newly created instance of the typepath. See setup_targeting_strats().
\ No newline at end of file
diff --git a/datum/controller/subsystem/processing/dcs.html b/datum/controller/subsystem/processing/dcs.html
new file mode 100644
index 00000000000..7580d9bfa8a
--- /dev/null
+++ b/datum/controller/subsystem/processing/dcs.html
@@ -0,0 +1,7 @@
+/datum/controller/subsystem/processing/dcs - Space Station 13Space Station 13 - Modules - Types — Proc Details
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
Remove old decals and apply new decals after rotation as necessary
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
rotate_decals
Remove old decals and apply new decals after rotation as necessary
\ No newline at end of file
diff --git a/datum/controller/subsystem/processing/instruments.html b/datum/controller/subsystem/processing/instruments.html
new file mode 100644
index 00000000000..0e9cda072f2
--- /dev/null
+++ b/datum/controller/subsystem/processing/instruments.html
@@ -0,0 +1,17 @@
+/datum/controller/subsystem/processing/instruments - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Deciseconds between hearchecks. Too high and instruments seem to lag when people are moving around in terms of who can hear it. Too low and the server lags from this.
Reserves a sound channel for a given instrument datum
Var Details
current_instrument_channels
Current number of channels allocated for instruments
instrument_data
List of all instrument data, associative id = datum
max_instrument_channels
Maximum instrument channels total instruments are allowed to use. This is so you don't have instruments deadlocking all sound channels.
musician_hearcheck_mindelay
Deciseconds between hearchecks. Too high and instruments seem to lag when people are moving around in terms of who can hear it. Too low and the server lags from this.
musician_maxlinechars
Max characters per line in songs
musician_maxlines
Max lines in songs
songs
List of all song datums.
synthesizer_instrument_ids
Single cached list for synthesizer instrument ids, so you don't have to have a new list with every synthesizer.
Proc Details
get_instrument
Returns the instrument datum at the given ID or path
+
Arguments:
+
+
id_or_path - The ID or path of the instrument
+
initialize_instrument_data
Initializes all instrument datums
on_song_del
Called when a datum/song is deleted
+
Arguments:
+
+
S - The deleted datum/song
+
on_song_new
Called when a datum/song is created
+
Arguments:
+
+
S - The created datum/song
+
reserve_instrument_channel
Reserves a sound channel for a given instrument datum
+
Arguments:
+
+
I - The instrument datum
+
\ No newline at end of file
diff --git a/datum/controller/subsystem/processing/projectiles.html b/datum/controller/subsystem/processing/projectiles.html
new file mode 100644
index 00000000000..a1ac210cd8e
--- /dev/null
+++ b/datum/controller/subsystem/processing/projectiles.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/processing/projectiles - Space Station 13Space Station 13 - Modules - Types — Var Details
How many pixels one iteration can move a projectile.
Var Details
global_iterations_per_move
Maximum iterations a move can perform.
global_max_tick_moves
Maximum moves a projectile can make per tick.
global_pixel_speed
How many pixels one iteration can move a projectile.
\ No newline at end of file
diff --git a/datum/controller/subsystem/processing/radiation.html b/datum/controller/subsystem/processing/radiation.html
new file mode 100644
index 00000000000..1190456fc62
--- /dev/null
+++ b/datum/controller/subsystem/processing/radiation.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/processing/radiation - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/controller/subsystem/processing/station.html b/datum/controller/subsystem/processing/station.html
new file mode 100644
index 00000000000..1d512b5b694
--- /dev/null
+++ b/datum/controller/subsystem/processing/station.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/processing/station - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Creates a given trait of a specific type, while also removing any blacklisted ones from the future pool.
Var Details
selectable_traits_by_types
Assoc list of trait type || assoc list of traits with weighted value. Used for picking traits from a specific category.
station_traits
A list of currently active station traits
Proc Details
SetupTraits
Rolls for the amount of traits and adds them to the traits list
pick_traits
Picks traits of a specific category (e.g. bad or good) and a specified amount, then initializes them and adds them to the list of traits.
setup_trait
Creates a given trait of a specific type, while also removing any blacklisted ones from the future pool.
\ No newline at end of file
diff --git a/datum/controller/subsystem/profiler.html b/datum/controller/subsystem/profiler.html
new file mode 100644
index 00000000000..e0d49b304f4
--- /dev/null
+++ b/datum/controller/subsystem/profiler.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/profiler - Space Station 13Space Station 13 - Modules - Types — Var Details
Time it took to send the stuff down FFI for redis (ms)
Var Details
mfetch_cost
Time it took to fetch map profile data (ms)
mwrite_cost
Time it took to write the map file (ms)
nfetch_cost
Time it took to fetch normal profile data (ms)
nwrite_cost
Time it took to write the normal file (ms)
send_encode_cost
Time it took to encode the data for redis (ms)
send_ffi_cost
Time it took to send the stuff down FFI for redis (ms)
\ No newline at end of file
diff --git a/datum/controller/subsystem/queue.html b/datum/controller/subsystem/queue.html
new file mode 100644
index 00000000000..f7cb4e94e4a
--- /dev/null
+++ b/datum/controller/subsystem/queue.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/queue - Space Station 13Space Station 13 - Modules - Types — Var Details
Last world.time we let a ckey in. 3 second delay between each letin to avoid a mass bubble
persist_queue
Whether to persist these settings over multiple rounds
queue_bypass_list
List of ckeys allowed to bypass queue this round
queue_enabled
Whether the queue is enabled or not
queue_threshold
Threshold of players to queue new people
\ No newline at end of file
diff --git a/datum/controller/subsystem/redis.html b/datum/controller/subsystem/redis.html
new file mode 100644
index 00000000000..c2171bf8ff3
--- /dev/null
+++ b/datum/controller/subsystem/redis.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/redis - Space Station 13Space Station 13 - Modules - Types — Var Details
Message queue (If messages are sent before the SS has init'd)
subbed_channels
Amount of subscribed channels on the redis server
\ No newline at end of file
diff --git a/datum/controller/subsystem/research.html b/datum/controller/subsystem/research.html
new file mode 100644
index 00000000000..0e376ae328b
--- /dev/null
+++ b/datum/controller/subsystem/research.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/research - Space Station 13Space Station 13 - Modules - Types — Var Details
List of R&D backups - Key = datum ID, value = /datum/rnd_backup
Var Details
backups
List of R&D backups - Key = datum ID, value = /datum/rnd_backup
\ No newline at end of file
diff --git a/datum/controller/subsystem/security_level.html b/datum/controller/subsystem/security_level.html
new file mode 100644
index 00000000000..f7372a4adad
--- /dev/null
+++ b/datum/controller/subsystem/security_level.html
@@ -0,0 +1,29 @@
+/datum/controller/subsystem/security_level - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Option reference of a timer id of the latest set security level. Only set when security level is changed to one with set_delay > 0
Proc Details
announce_security_level
Handles announcements of the newly set security level
+
Arguments:
+
+
selected_level - The new security level that has been set
+
do_set_level
Actually sets the security level after the announcement
+
Sends COMSIG_SECURITY_LEVEL_CHANGED in the end
+
Arguments:
+
+
selected_level - The datum of security level selected to be changed to
+
get_colored_current_security_level_name
Returns security level name formatted with it's color
get_current_level_as_number
Returns the current security level as a number
+In case the subsystem hasn't finished initializing yet, returns default security level
get_current_level_as_text
Returns the current security level as text
number_level_to_text
Converts a number security level to a text
+
Arguments:
+
+
level - The number security level to convert
+
pre_set_level
Do things before the actual security level set, like executing security level specific pre change behavior
+
Arguments:
+
+
selected_level - The datum of security level selected to be changed to
+
set_level
Sets a new security level as our current level
+
This is how everything should change the security level
+
Arguments:
+
+
new_level - The new security level that will become our current level, could be number or name of security level
+
text_level_to_number
Converts a text security level to a number
+
Arguments:
+
+
level - The text security level to convert
+
\ No newline at end of file
diff --git a/datum/controller/subsystem/shuttle.html b/datum/controller/subsystem/shuttle.html
new file mode 100644
index 00000000000..6884735cd60
--- /dev/null
+++ b/datum/controller/subsystem/shuttle.html
@@ -0,0 +1,3 @@
+/datum/controller/subsystem/shuttle - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
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
Whether or not a custom shuttle is currently loading at centcomm.
custom_shuttle_ordered
Whether or not a custom shuttle has been ordered.
emergency_locked_in
Have we locked in the emergency shuttle, to prevent people from breaking things / wasting player money?
hostile_environments
Things blocking escape shuttle from leaving.
mobile_docking_ports
A list of all the mobile docking ports.
refuel_delay
Default refuel delay
shuttle_loan_UID
The current shuttle loan event, if any.
stationary_docking_ports
A list of all the stationary docking ports.
supply_shuttle_turfs
Supply shuttle turfs to make mail be put down faster
transit_docking_ports
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
load_template
Loads a shuttle from the template into a cordon. Returns its docking port if successful.
replace_shuttle
Create a new shuttle and replace the emergency shuttle with it.
+if loaded shuttle is passed in, a new one will not be loaded.
transit_space_clearing
Gotta manage our space brother
\ No newline at end of file
diff --git a/datum/controller/subsystem/sounds.html b/datum/controller/subsystem/sounds.html
new file mode 100644
index 00000000000..0588b32613a
--- /dev/null
+++ b/datum/controller/subsystem/sounds.html
@@ -0,0 +1,15 @@
+/datum/controller/subsystem/sounds - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
lower iteration position - Incremented and looped to get "random" sound channels for normal sounds. The channel at this index is returned when asking for a random channel.
higher reserve position - decremented and incremented to reserve sound channels, anything above this is reserved. The channel at this index is the highest unreserved channel.
Amount of channels to reserve for random usage rather than reservations being allowed to reserve all channels. Also a nice safeguard for when someone screws up.
lower iteration position - Incremented and looped to get "random" sound channels for normal sounds. The channel at this index is returned when asking for a random channel.
channel_reserve_high
higher reserve position - decremented and incremented to reserve sound channels, anything above this is reserved. The channel at this index is the highest unreserved channel.
random_channels_min
Amount of channels to reserve for random usage rather than reservations being allowed to reserve all channels. Also a nice safeguard for when someone screws up.
reserved_channels
Associative list of all reserved channels associated to their position. "[channel_number]" = index as number
using_channels
Assoc list, "[channel]" = either the datum using it or TRUE for an unsafe-reserved (datumless reservation) channel
using_channels_by_datum
Assoc list datum = list(channel1, channel2, ...) for what channels something reserved.
Proc Details
available_channels_left
How many channels we have left
free_channel
Frees a channel and updates the datastructure. Private proc.
free_datum_channels
Frees all the channels a datum is using
+
Arguments:
+
+
D - The datum
+
free_datumless_channels
Frees all datumless channels
free_sound_channel
Removes a channel from using list
+
Arguments:
+
+
channel - The channel number
+
random_available_channel
Random available channel, returns number
random_available_channel_text
Random available channel, returns text
reserve_channel
Reserves a channel and updates the datastructure. Private proc.
reserve_sound_channel
Reserves a channel for a datum. Automatic cleanup only when the datum is deleted.
+
Returns an integer for channel
+Arguments:
+
+
D - The datum
+
reserve_sound_channel_datumless
NO AUTOMATIC CLEANUP - If you use this, you better manually free it later!
+
Returns an integer for channel
setup_available_channels
Sets up all available sound channels
\ No newline at end of file
diff --git a/datum/controller/subsystem/spatial_grid.html b/datum/controller/subsystem/spatial_grid.html
new file mode 100644
index 00000000000..aa0a82c58c1
--- /dev/null
+++ b/datum/controller/subsystem/spatial_grid.html
@@ -0,0 +1,41 @@
+/datum/controller/subsystem/spatial_grid - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
empty spatial grid cell content lists are just a reference to this instead of a standalone list to save memory without needed to check if its null when iterating
associative list of the form: movable.spatial_grid_key (string) -> inner list of spatial grid types for that key.
+inner lists contain contents channel types such as SPATIAL_GRID_CONTENTS_TYPE_HEARING etc.
+we use this to make adding to a cell static cost, and to save on memory
Adds grid awareness to the passed in atom, of the passed in type
+Basically, when this atom moves between grids, it wants to have enter/exit cell called on it
Alerts the atom's current cell that it wishes to be treated as a member
+This functionally amounts to "hey, I was recently made aware by [add_grid_awareness], please insert me into my current cell"
adds cells to the grid for every z level when world.maxx or world.maxy is expanded after this subsystem is initialized. hopefully this is never needed.
+because i never tested this.
allocate one /mob/oranges_ear mob per turf containing atoms_that_need_ears and give them a reference to every listed atom in their turf.
+if an oranges_ear is allocated to a turf that already has an oranges_ear then the second one fails to allocate (and gives the existing one the atom it was assigned to)
find the spatial map cell that target used to belong to, then remove the target (and sometimes its important_recusive_contents) from it.
+make sure to provide the turf old_target used to be "in"
remove this movable from the grid by finding the grid cell its in and removing it from that.
+if it cant infer a grid cell its located in (e.g. if its in nullspace but it can happen if the grid isnt expanded to a z level), search every grid cell.
creates number_to_generate new oranges_ear's and adds them to the subsystems list of ears.
+i really fucking hope this never gets called after init :clueless:
if for whatever reason this movable is "untracked" e.g. it breaks the assumption that a movable is only inside the contents of any grid cell associated with its loc,
+this will error. this checks every grid cell in the world so dont call this on live unless you have to.
+returns TRUE if this movable is untracked, FALSE otherwise
Updates the string that atoms hold that stores their grid awareness
+We will use it to key into their spatial grid categories later
Var Details
dummy_list
empty spatial grid cell content lists are just a reference to this instead of a standalone list to save memory without needed to check if its null when iterating
grids_by_z_level
list of the spatial_grid_cell datums per z level, arranged in the order of y index then x index
number_of_oranges_ears
how many pregenerated /mob/oranges_ear instances currently exist. this should hopefully never exceed its starting value
pregenerated_oranges_ears
list of all of /mob/oranges_ear instances we have pregenerated for view() iteration speedup
spatial_grid_categories
associative list of the form: movable.spatial_grid_key (string) -> inner list of spatial grid types for that key.
+inner lists contain contents channel types such as SPATIAL_GRID_CONTENTS_TYPE_HEARING etc.
+we use this to make adding to a cell static cost, and to save on memory
waiting_to_add_by_type
everything that spawns before us is added to this list until we initialize
Proc Details
add_grid_awareness
Adds grid awareness to the passed in atom, of the passed in type
+Basically, when this atom moves between grids, it wants to have enter/exit cell called on it
add_grid_membership
Alerts the atom's current cell that it wishes to be treated as a member
+This functionally amounts to "hey, I was recently made aware by [add_grid_awareness], please insert me into my current cell"
add_single_type
acts like enter_cell() but only adds the target to a specified type of grid cell contents list
after_world_bounds_expanded
adds cells to the grid for every z level when world.maxx or world.maxy is expanded after this subsystem is initialized. hopefully this is never needed.
+because i never tested this.
assign_oranges_ears
allocate one /mob/oranges_ear mob per turf containing atoms_that_need_ears and give them a reference to every listed atom in their turf.
+if an oranges_ear is allocated to a turf that already has an oranges_ear then the second one fails to allocate (and gives the existing one the atom it was assigned to)
enter_cell
find the spatial map cell that target belongs to, then add the target to it, as its type prefers.
+make sure to provide the turf new_target is "in"
enter_pre_init_queue
add a movable to the pre init queue for whichever type is specified so that when the subsystem initializes they get added to the grid
exit_cell
find the spatial map cell that target used to belong to, then remove the target (and sometimes its important_recusive_contents) from it.
+make sure to provide the turf old_target used to be "in"
+
+
old_target - the thing we want to remove from the spatial grid cell
+
target_turf - the turf we use to determine the cell we're removing from
+
exclusive_type - either null or a valid contents channel. if you just want to remove a single type from the grid cell then use this
+
find_hanging_cell_refs_for_movable
if shit goes south, this will find hanging references for qdeleting movables inside the spatial grid
force_remove_from_cell
remove this movable from the given spatial_grid_cell
force_remove_from_grid
remove this movable from the grid by finding the grid cell its in and removing it from that.
+if it cant infer a grid cell its located in (e.g. if its in nullspace but it can happen if the grid isnt expanded to a z level), search every grid cell.
get_cell_of
get the grid cell encomapassing targets coordinates
get_cells_in_bounds
get all grid cells intersecting the bounding box around center with sides of length (2 * range_x, 2 * range_y)
get_cells_in_range
get all grid cells intersecting the bounding box around center with sides of length 2 * range
searches through the grid cells intersecting a rectangular search space (with sides of length 2 * range) then returns all contents of type inside them.
+much faster than iterating through view() to find all of what you want.
+
this does NOT return things only in range distance from center! the search space is a square not a circle, if you want only things in a certain distance
+then you need to filter that yourself
+
+
center - the atom that is the center of the searched circle
+
type - the type of grid contents you are looking for, see __DEFINES/spatial_grid.dm
+
range - the bigger this is, the more spatial grid cells the search space intersects
+
pregenerate_more_oranges_ears
creates number_to_generate new oranges_ear's and adds them to the subsystems list of ears.
+i really fucking hope this never gets called after init :clueless:
propogate_spatial_grid_to_new_z
creates the spatial grid for a new z level
queued_item_deleted
if a movable is inside our pre init queue before we're initialized and it gets deleted we need to remove that reference with this proc
remove_from_pre_init_queue
removes an initialized and probably deleted movable from our pre init queue before we're initialized
remove_grid_awareness
Removes grid awareness from the passed in atom, of the passed in type
remove_grid_membership
Removes grid membership from the passed in atom, of the passed in type
remove_single_type
acts like exit_cell() but only removes the target from the specified type of grid cell contents list
untracked_movable_error
if for whatever reason this movable is "untracked" e.g. it breaks the assumption that a movable is only inside the contents of any grid cell associated with its loc,
+this will error. this checks every grid cell in the world so dont call this on live unless you have to.
+returns TRUE if this movable is untracked, FALSE otherwise
update_grid_awareness
Updates the string that atoms hold that stores their grid awareness
+We will use it to key into their spatial grid categories later
\ No newline at end of file
diff --git a/datum/controller/subsystem/statpanels.html b/datum/controller/subsystem/statpanels.html
new file mode 100644
index 00000000000..aacef80c807
--- /dev/null
+++ b/datum/controller/subsystem/statpanels.html
@@ -0,0 +1,3 @@
+/datum/controller/subsystem/statpanels - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Returns all our ready object tab images
+Returns a list in the form list(list(object_name, object_ref, loaded_image), ...)
Var Details
admin_data
Stuff shown to all admins.
default_wait
How many subsystem fires between most tab updates
global_data
Stuff shown to everyone.
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
return_object_images
Returns all our ready object tab images
+Returns a list in the form list(list(object_name, object_ref, loaded_image), ...)
\ No newline at end of file
diff --git a/datum/controller/subsystem/tgui.html b/datum/controller/subsystem/tgui.html
new file mode 100644
index 00000000000..704e5e48271
--- /dev/null
+++ b/datum/controller/subsystem/tgui.html
@@ -0,0 +1,48 @@
+/datum/controller/subsystem/tgui - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
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.
\ No newline at end of file
diff --git a/datum/controller/subsystem/throwing.html b/datum/controller/subsystem/throwing.html
new file mode 100644
index 00000000000..abb6c0bdd98
--- /dev/null
+++ b/datum/controller/subsystem/throwing.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/throwing - Space Station 13Space Station 13 - Modules - Types — Var Details
How many sounds we've skipped due to hitting the per-tick cap.
Var Details
impact_sounds
How many throw impact sounds have happened this tick.
impact_sounds_cap
How many throw impact sounds we allow per tick.
last_impact_sounds
How many sounds there were last tick.
skipped_sounds
How many sounds we've skipped due to hitting the per-tick cap.
\ No newline at end of file
diff --git a/datum/controller/subsystem/ticker.html b/datum/controller/subsystem/ticker.html
new file mode 100644
index 00000000000..b35bbe7b284
--- /dev/null
+++ b/datum/controller/subsystem/ticker.html
@@ -0,0 +1,17 @@
+/datum/controller/subsystem/ticker - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Cult static info, used for things like sprites. Someone should refactor the sprites out of it someday and just use SEPERATE ICONS DEPNDING ON THE TYPE OF CULT... like a sane person
Returns whether the given biohazard includes mobs that were admin spawned.
+Only returns TRUE or FALSE, does not attempt to track which mobs were
+admin-spawned and which ones weren't.
Return whether or not a given biohazard is an active threat.
+For blobs, this is simply if there are any overminds left. For terrors and
+xenomorphs, this is whether they have overwhelming numbers.
This proc is for recording biohazard events, and blackboxing if they lived,
+died, or ended the round. This currently applies to: Terror spiders,
+Xenomorphs, and Blob.
List of biohazards keyed to the last time their population was sampled.
cinematic
Used for station explosion cinematic
cult_data
Cult static info, used for things like sprites. Someone should refactor the sprites out of it someday and just use SEPERATE ICONS DEPNDING ON THE TYPE OF CULT... like a sane person
cult_tried_summon
Has cult tried to summon?
current_state
Current status of the game. See code__DEFINES\game.dm
delay_end
If set to TRUE, the round will not restart on it's own
end_state
Server end state (Did we end properly or reboot or nuke or what)
facted
Did we broadcast the fact of the round yet?
flagged_antag_rollers
List of ckeys who had antag rolling issues flagged
force_ending
Do we want to force-end as soon as we can
force_start
Do we want to force-start as soon as we can
hide_mode
Leave here at FALSE ! setup() will take care of it when needed for Secret mode -walter0o
login_music
The current pick of lobby music played in the lobby
minds
List of all minds in the game. Used for objective tracking
mode
Our current game mode
mode_result
Gamemode result (For things like cult or nukies which can end multiple ways)
next_autotransfer
Holder for inital autotransfer vote timer
pregame_timeleft
This is used for calculations for the statpanel
random_players
If set to nonzero, ALL players who latejoin or declare-ready join will have random appearances/genders
real_reboot_time
Time the real reboot kicks in
round_end_announced
Spam Prevention. Announce round end only once.
round_start_time
Time the game should start, relative to world.time
score
Datum used to generate the end of round scoreboard.
selected_fact
What will be the fact of the round?
selected_tip
What will be the tip of the round?
ticker_going
Is the ticker currently processing? If FALSE, roundstart is delayed
time_game_started
Time that the round started
tipped
Did we broadcast the tip of the round yet?
triai
Global holder for triple AI mode
Proc Details
any_admin_spawned_mobs
Returns whether the given biohazard includes mobs that were admin spawned.
+Only returns TRUE or FALSE, does not attempt to track which mobs were
+admin-spawned and which ones weren't.
biohazard_active_threat
Return whether or not a given biohazard is an active threat.
+For blobs, this is simply if there are any overminds left. For terrors and
+xenomorphs, this is whether they have overwhelming numbers.
record_biohazard_results
This proc is for recording biohazard events, and blackboxing if they lived,
+died, or ended the round. This currently applies to: Terror spiders,
+Xenomorphs, and Blob.
+
This code is predicated on the assumption that multiple midrounds
+of the same type are either extremely rare or impossible. We don't want to get
+into the insanity of trying to record if the first xeno biohazard was defeated
+but the second xeno biohazard was nuked.
record_biohazard_start
Record the initial time that a biohazard spawned.
\ No newline at end of file
diff --git a/datum/controller/subsystem/tickets.html b/datum/controller/subsystem/tickets.html
new file mode 100644
index 00000000000..bf5a89bb18b
--- /dev/null
+++ b/datum/controller/subsystem/tickets.html
@@ -0,0 +1,27 @@
+/datum/controller/subsystem/tickets - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Will add the URLs usable by staff to the message and return it
+Arguments:
+C - The client who send the message
+msg - The raw message
+ticketNum - Which ticket number the ticket has
Sends a message to the designated staff
+Arguments:
+msg - The message being send
+alt - If an alternative prefix should be used or not. Defaults to TICKET_STAFF_MESSAGE_PREFIX
+important - If the message is important. If TRUE it will ignore the CHAT_NO_TICKETLOGS preferences,
+send a sound and flash the window. Defaults to FALSE
Will either make a new ticket using the given text or will add the text to an existing ticket.
+Staff will get a message
+Arguments:
+C - The client who requests help
+text - The text the client send
Var Details
anchor_link_extra
Text that will be added to the anchor link
db_save_id
DB ID for these tickets to be logged with
open_detail_uis
Who has what tickets open? Maps client -> open ticket number.
other_ticket_name
The name of the other ticket type to convert to
other_ticket_permission
Which permission to look for when seeing if there is staff available for the other ticket type
Proc Details
makeUrlMessage
Will add the URLs usable by staff to the message and return it
+Arguments:
+C - The client who send the message
+msg - The raw message
+ticketNum - Which ticket number the ticket has
message_staff
Sends a message to the designated staff
+Arguments:
+msg - The message being send
+alt - If an alternative prefix should be used or not. Defaults to TICKET_STAFF_MESSAGE_PREFIX
+important - If the message is important. If TRUE it will ignore the CHAT_NO_TICKETLOGS preferences,
+send a sound and flash the window. Defaults to FALSE
newHelpRequest
Will either make a new ticket using the given text or will add the text to an existing ticket.
+Staff will get a message
+Arguments:
+C - The client who requests help
+text - The text the client send
\ No newline at end of file
diff --git a/datum/controller/subsystem/timer.html b/datum/controller/subsystem/timer.html
new file mode 100644
index 00000000000..70bf0b96317
--- /dev/null
+++ b/datum/controller/subsystem/timer.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/timer - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Destroys 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
\ No newline at end of file
diff --git a/datum/controller/subsystem/unplanned_controllers.html b/datum/controller/subsystem/unplanned_controllers.html
new file mode 100644
index 00000000000..f9e78fbba5c
--- /dev/null
+++ b/datum/controller/subsystem/unplanned_controllers.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/unplanned_controllers - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/controller/subsystem/user_verbs.html b/datum/controller/subsystem/user_verbs.html
new file mode 100644
index 00000000000..83df7e64c52
--- /dev/null
+++ b/datum/controller/subsystem/user_verbs.html
@@ -0,0 +1,5 @@
+/datum/controller/subsystem/user_verbs - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Unassociates an admin from their user verbs.
+Goes over all user verbs because we don't know which ones are assigned to the admin's mob without a bunch of extra bookkeeping.
+This might be a performance issue in the future if we have a lot of user verbs.
Var Details
admin_visibility_flags
A map of all associated admins and their visibility flags.
admins_pending_subsytem_init
A list of all admins that are pending initialization of this SS.
user_verbs_by_type
A list of all user verbs indexed by their type.
user_verbs_by_visibility_flag
A list of all user verbs indexed by their visibility flag.
Proc Details
associate
Assosciates and/or resyncs an admin with their accessible user verbs.
deassociate
Unassociates an admin from their user verbs.
+Goes over all user verbs because we don't know which ones are assigned to the admin's mob without a bunch of extra bookkeeping.
+This might be a performance issue in the future if we have a lot of user verbs.
\ No newline at end of file
diff --git a/datum/controller/subsystem/verb_manager.html b/datum/controller/subsystem/verb_manager.html
new file mode 100644
index 00000000000..94b6a7e464e
--- /dev/null
+++ b/datum/controller/subsystem/verb_manager.html
@@ -0,0 +1,16 @@
+/datum/controller/subsystem/verb_manager - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
if TRUE this will... message admins every time a verb is queued to this subsystem for the next tick with stats.
+for obvious reasons dont make this be TRUE on the code level this is for admins to turn on
list of callbacks to procs called from verbs or verblike procs that were executed when the server was overloaded and had to delay to the next tick.
+this list is ran through every tick, and the subsystem does not yield until this queue is finished.
queue a callback for the given proc, so that it is invoked in the next tick.
+intended to only work with verbs or verblike procs called directly from client input, use as part of TRY_QUEUE_VERB()
runs through all of this subsystems queue of verb callbacks.
+goes through the entire verb queue without yielding.
+used so you can flush the queue outside of fire() without interfering with anything else subtype subsystems might do in fire().
if this is true all verbs immediately execute and dont queue. in case the mc is fucked or something
always_queue
always queue if possible. overides can_queue_admin_verbs but not FOR_ADMINS_IF_VERBS_FUCKED_immediately_execute_all_verbs
can_queue_admin_verbs
if TRUE we treat usr's with holders just like usr's without holders. otherwise they always execute immediately
message_admins_on_queue
if TRUE this will... message admins every time a verb is queued to this subsystem for the next tick with stats.
+for obvious reasons dont make this be TRUE on the code level this is for admins to turn on
verb_queue
list of callbacks to procs called from verbs or verblike procs that were executed when the server was overloaded and had to delay to the next tick.
+this list is ran through every tick, and the subsystem does not yield until this queue is finished.
verbs_executed_per_second
running average of how many verb callbacks are executed every second. used for the stat entry
Proc Details
can_queue_verb
subsystem-specific check for whether a callback can be queued.
+intended so that subsystem subtypes can verify whether
+
subtypes may include additional arguments here if they need them! you just need to include them properly
+in TRY_QUEUE_VERB() and co.
queue_verb
queue a callback for the given proc, so that it is invoked in the next tick.
+intended to only work with verbs or verblike procs called directly from client input, use as part of TRY_QUEUE_VERB()
+
returns TRUE if the queuing was successful, FALSE otherwise.
run_verb_queue
runs through all of this subsystems queue of verb callbacks.
+goes through the entire verb queue without yielding.
+used so you can flush the queue outside of fire() without interfering with anything else subtype subsystems might do in fire().
\ No newline at end of file
diff --git a/datum/controller/subsystem/vis_overlays.html b/datum/controller/subsystem/vis_overlays.html
new file mode 100644
index 00000000000..e2503933dea
--- /dev/null
+++ b/datum/controller/subsystem/vis_overlays.html
@@ -0,0 +1,35 @@
+/datum/controller/subsystem/vis_overlays - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Creates a new visual overlay with the specified parameters.
+
This procedure initializes a new visual overlay object with the given attributes.
+
Arguments:
+
+
icon - The icon to display for the overlay.
+
iconstate - The state of the icon.
+
layer - The layer on which the overlay will be rendered.
+
plane - The plane for the overlay.
+
dir - The direction the overlay faces.
+
alpha - The transparency level of the overlay.
+
add_appearance_flags - Additional flags for overlay appearance.
+
+
Returns the newly created overlay.
add_vis_overlay
Adds a visual overlay to a given atom.
+
This procedure creates and adds a visual overlay to the specified object. It can either create a unique
+overlay or reuse an existing one based on the provided parameters.
+
Arguments:
+
+
thing - The atom to which the overlay will be added. The "thing" var can be anything with vis_contents which includes images
+
icon - The icon to display for the overlay.
+
iconstate - The state of the icon.
+
layer - The layer on which the overlay will be rendered.
+
plane - The plane for the overlay.
+
dir - The direction the overlay faces.
+
alpha - The transparency level of the overlay (default is 255).
+
add_appearance_flags - Additional flags for overlay appearance (default is NONE).
+
unique - A boolean indicating if the overlay should be unique (default is FALSE).
+
+
Returns the overlay that was added.
remove_vis_overlay
Removes specified visual overlays from an atom.
+
This procedure removes the given overlays from the atom's visual contents and also updates the
+managed overlays list if applicable.
+
Arguments:
+
+
thing - The atom from which the overlays will be removed.
+
overlays - A list of overlays to remove.
+
\ No newline at end of file
diff --git a/datum/controller/subsystem/vote.html b/datum/controller/subsystem/vote.html
new file mode 100644
index 00000000000..64cf3da5464
--- /dev/null
+++ b/datum/controller/subsystem/vote.html
@@ -0,0 +1 @@
+/datum/controller/subsystem/vote - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/cooking/recipe.html b/datum/cooking/recipe.html
new file mode 100644
index 00000000000..5e11b93353a
--- /dev/null
+++ b/datum/cooking/recipe.html
@@ -0,0 +1,17 @@
+/datum/cooking/recipe - Space Station 13Space Station 13 - Modules - Types — Var Details
recipe
ParaCooking With Jane
+
A cooking rework ported from Sojourn and heavily adapted for Para.
+
The recipe datum outlines a list of steps from getting a piece of food from
+point A to point B.
+
Recipes have clear start and end points. They start with a particular item
+and end with a particular item. That said, a start item can follow multiple
+recipes until they eventually diverge as different steps are followed. In the
+case two recipes have identical steps, the user should be prompted on what
+their intended result should be. (Donuts vs Bagels)
+
Recipes are loaded at startup. Food items reference it by the recipe_tracker
+datum.
+
Recipes and their steps are singletons. Cooking processes should never alter
+them.
A list of /datum/cooking/recipe_steps needed to be followed
+to create the recipe. Generally steps must be completed in order
+for the preparation to be considered valid.
Var Details
appear_in_default_catalog
Everything appears in the catalog by default.
catalog_category
The category of the recipe for the cookbook PDA app and other sources of recipe info.
container_type
The type of the cooking container the recipe is performed in.
product_count
How much of a thing is made per case of the recipe being followed.
product_type
Type path for the product created by the recipe.
replace_reagents
Determines if we entirely replace the contents of the food product with the slurry that goes into it.
steps
A list of /datum/cooking/recipe_steps needed to be followed
+to create the recipe. Generally steps must be completed in order
+for the preparation to be considered valid.
\ No newline at end of file
diff --git a/datum/cooking/recipe_step.html b/datum/cooking/recipe_step.html
new file mode 100644
index 00000000000..58c6eccd86c
--- /dev/null
+++ b/datum/cooking/recipe_step.html
@@ -0,0 +1,21 @@
+/datum/cooking/recipe_step - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Attempt to have the autochef actually perform this step. This is during the "performance"
+stage of the autochef, during which other steps of the recipe may have already been performed.
See if the used_item meets the conditions for this recipe step. This will
+typically be something like ensuring that a recipe step for adding a
+specific kind of item has been passed an item of that type.
Special function to check if the step has been satisfied. Sometimes just
+following the step is enough, but not always.
Var Details
optional
Whether or not the recipe requires this step to be performed.
Proc Details
attempt_autochef_perform
Attempt to have the autochef actually perform this step. This is during the "performance"
+stage of the autochef, during which other steps of the recipe may have already been performed.
attempt_autochef_prepare
Attempt to see if the autochef can finish the recipe with the available resources it has.
+This is done in the "preparation" stage of the autochef.
check_conditions_met
See if the used_item meets the conditions for this recipe step. This will
+typically be something like ensuring that a recipe step for adding a
+specific kind of item has been passed an item of that type.
+
Returns one of [PCWJ_CHECK_INVALID], [PCWJ_CHECK_VALID], PCWJ_CHECK_FULL,
+[PCWJ_CHECK_SILENT].
follow_step
Attempt to satisfy the requirements of this step with the object used_item
+being used on the cooking container that the tracker is tracking.
+
The return value is a list of metadata about the step used by the tracker
+during the preparation and final recipe creation. There is no fixed set of
+values to return here, and different recipe steps may return different
+useful keys to the tracker. One key that is returned by most steps is
+"message", which returns the visible message that should be shown in chat to
+the user when the step is followed.
get_pda_formatted_desc
Return a human readable description of the recipe step as an instruction to the reader.
is_complete
Special function to check if the step has been satisfied. Sometimes just
+following the step is enough, but not always.
\ No newline at end of file
diff --git a/datum/cooking/recipe_step/add_item/meathunk.html b/datum/cooking/recipe_step/add_item/meathunk.html
new file mode 100644
index 00000000000..e177e0a678e
--- /dev/null
+++ b/datum/cooking/recipe_step/add_item/meathunk.html
@@ -0,0 +1 @@
+/datum/cooking/recipe_step/add_item/meathunk - Space Station 13Space Station 13 - Modules - Types — Var Details
meathunk
A specialized add-item step for specific meat subtypes
A list of subtypes of meat which aren't appropriate substitutes for the generic "hunk of meat" base type in recipes
Var Details
exclude_meat_subtypes
A list of subtypes of meat which aren't appropriate substitutes for the generic "hunk of meat" base type in recipes
\ No newline at end of file
diff --git a/datum/cooking/recipe_step/add_reagent.html b/datum/cooking/recipe_step/add_reagent.html
new file mode 100644
index 00000000000..f2e09d8743e
--- /dev/null
+++ b/datum/cooking/recipe_step/add_reagent.html
@@ -0,0 +1 @@
+/datum/cooking/recipe_step/add_reagent - Space Station 13Space Station 13 - Modules - Types — Var Details
What percentage of the reagent ends up in the product, as a value from 0.0 to 1.0
Var Details
remain_percent
What percentage of the reagent ends up in the product, as a value from 0.0 to 1.0
\ No newline at end of file
diff --git a/datum/cooking/recipe_tracker.html b/datum/cooking/recipe_tracker.html
new file mode 100644
index 00000000000..98b34ff0f79
--- /dev/null
+++ b/datum/cooking/recipe_tracker.html
@@ -0,0 +1,38 @@
+/datum/cooking/recipe_tracker - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
recipe_tracker
A recipe tracker is an abstract representation of the progress that a
+cooking container has made towards any of its possible recipe outcomes.
+
When items are added/steps are performed on a cooking container, the tracker
+is responsible for determining what known recipes are possible after the
+step occurs, and tracking whether or not the step was successful. Once a
+step has been performed that ends a recipe and is successful, the tracker
+coordinates with the winning recipe to create the result, using what it
+knows about the steps performed to choose the quality and other attributes
+of the output.
A list of recipe types to metadata returned from completing its steps.
+This may include things like a custom message shown to the player, or
+the UID of relevant items used for determining quality at recipe
+completion.
Wrapper function for analyzing process_item internally.
Var Details
container_uid
The parent object holding the recipe tracker.
recipe_started
Tells if steps have been taken for this recipe.
recipes_all_applied_steps
A list of recipe types to list of step indices we know we've performed.
+Ensures we don't perform e.g. optional steps we skipped on completion.
recipes_applied_step_data
A list of recipe types to metadata returned from completing its steps.
+This may include things like a custom message shown to the player, or
+the UID of relevant items used for determining quality at recipe
+completion.
recipes_last_completed_step
A list of recipe types to the index of the latest step we know we've
+gotten to.
Proc Details
process_item
Core function that checks if a object meets all the requirements for certain
+recipe actions.
+
This is one of the thornier and grosser parts of the cooking system and most
+people working with it or implementing recipes should never have to look at
+this. The core idea is:
+
+
we keep track of what recipes are still valid outcomes by testing the used
+item against the list of recipes which are valid so far.
Once a recipe reaches its final step, the tracker completes the recipe and
+typically stops existing at that point.
process_item_wrap
Wrapper function for analyzing process_item internally.
\ No newline at end of file
diff --git a/datum/crafting_recipe.html b/datum/crafting_recipe.html
new file mode 100644
index 00000000000..39ec40d8d77
--- /dev/null
+++ b/datum/crafting_recipe.html
@@ -0,0 +1 @@
+/datum/crafting_recipe - Space Station 13Space Station 13 - Modules - Types — Var Details
Will this recipe send an admin message when it's completed.
always_available
Is this recipe always available, or does it need to be learned first.
blacklist
Type paths of items explicitly not allowed as an ingredient.
category
What category it's shown under in the crafting UI.
name
In-game display name.
parts
Type paths of items that will be placed inside the result.
pathtools
Type paths of items needed but not consumed.
reqs
Type paths of items consumed associated with how many are needed.
result
Type paths of item(s) resulting from this craft.
subcategory
What subcategory it's shown under in the crafting UI. (e.g 'Ammo' under 'Weapons')
time
Crafting time in deciseconds.
tools
Tool behaviours of items needed but not consumed.
\ No newline at end of file
diff --git a/datum/crusher_skin.html b/datum/crusher_skin.html
new file mode 100644
index 00000000000..edbf7372748
--- /dev/null
+++ b/datum/crusher_skin.html
@@ -0,0 +1 @@
+/datum/crusher_skin - Space Station 13Space Station 13 - Modules - Types — Var Details
Specifies the sprite/icon state which the crusher is changed to as an item. Should appear in the icons/obj/mining.dmi file with accompanying "lit" and "recharging" sprites
Can this skin be normally selected by a generic retool kit?
retool_icon
Specifies the icon file in which the crusher's new state is stored.
retool_icon_state
Specifies the sprite/icon state which the crusher is changed to as an item. Should appear in the icons/obj/mining.dmi file with accompanying "lit" and "recharging" sprites
retool_inhand_icon
Specifies the icon state for the crusher's appearance in hand. Should appear in both retool_lefthand_file and retool_righthand_file.
retool_inhand_x
Specifies the X dimensions of the new inhand, only relevant with different inhand files.
retool_inhand_y
Specifies the Y dimensions of the new inhand, only relevant with different inhand files.
retool_lefthand_file
Specifies the left hand inhand icon file. Don't forget to set the right hand file as well.
retool_projectile_icon
Specifies the icon file in which the crusher's projectile sprite is located.
retool_projectile_icon_state
For if the retool kit changes the projectile's appearance.
retool_righthand_file
Specifies the right hand inhand icon file. Don't forget to set the left hand file as well.
retool_worn_file
Specifies the worn icon file.
\ No newline at end of file
diff --git a/datum/custom_user_item.html b/datum/custom_user_item.html
new file mode 100644
index 00000000000..b9f879a29ef
--- /dev/null
+++ b/datum/custom_user_item.html
@@ -0,0 +1,10 @@
+/datum/custom_user_item - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Custom User Item
Holder for CUIs
+
This datum is a holder that is essentially a "model" of the customuseritems
+database table, and is used for giving people their CUIs on spawn.
+It is instanced as part of the client data loading framework on the client.
Parses all the raw info into usable stuff, and also does validity checks
+Returns TRUE if its a valid item, and FALSE if not
+
Arguments:
+
+
owning_ckey - Player who owns this item. Used for logging purposes.
+
\ No newline at end of file
diff --git a/datum/data/bluespace_tap_product.html b/datum/data/bluespace_tap_product.html
new file mode 100644
index 00000000000..f0c9a36e79d
--- /dev/null
+++ b/datum/data/bluespace_tap_product.html
@@ -0,0 +1 @@
+/datum/data/bluespace_tap_product - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/data/pda/app/game/minesweeper.html b/datum/data/pda/app/game/minesweeper.html
new file mode 100644
index 00000000000..5663b908e97
--- /dev/null
+++ b/datum/data/pda/app/game/minesweeper.html
@@ -0,0 +1 @@
+/datum/data/pda/app/game/minesweeper - Space Station 13Space Station 13 - Modules - Types — Var Details
Decision to make interface untouchable in the momemnt of regenerating
leaderboard
The leaderboard list
minesweeper_matrix
Here we have all the minesweeper info
start_time
The moment then game was started for point count
\ No newline at end of file
diff --git a/datum/data/pda/app/nanobank.html b/datum/data/pda/app/nanobank.html
new file mode 100644
index 00000000000..8f63456bfc8
--- /dev/null
+++ b/datum/data/pda/app/nanobank.html
@@ -0,0 +1 @@
+/datum/data/pda/app/nanobank - Space Station 13Space Station 13 - Modules - Types — Var Details
world time of last transaction, used for cooldowns (to protect against transfer spams or accidental double clicks)
premium_version
Has this user purchased NanoBank Premium?
user_account
the money account tethered to this program
\ No newline at end of file
diff --git a/datum/data/vending_product.html b/datum/data/vending_product.html
new file mode 100644
index 00000000000..e4dbbf32075
--- /dev/null
+++ b/datum/data/vending_product.html
@@ -0,0 +1 @@
+/datum/data/vending_product - Space Station 13Space Station 13 - Modules - Types — Var Details
vending_product
Datum used to hold information about a product in a vending machine
\ No newline at end of file
diff --git a/datum/data/vending_product/from_path.html b/datum/data/vending_product/from_path.html
new file mode 100644
index 00000000000..44615497d64
--- /dev/null
+++ b/datum/data/vending_product/from_path.html
@@ -0,0 +1 @@
+/datum/data/vending_product/from_path - Space Station 13Space Station 13 - Modules - Types — Var Details
Typepath of the product that is created when this record "sells"
Var Details
amount
How many of this product we currently have
max_amount
How many we can store at maximum
product_path
Typepath of the product that is created when this record "sells"
\ No newline at end of file
diff --git a/datum/data/vending_product/physical.html b/datum/data/vending_product/physical.html
new file mode 100644
index 00000000000..3c696982cb6
--- /dev/null
+++ b/datum/data/vending_product/physical.html
@@ -0,0 +1 @@
+/datum/data/vending_product/physical - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/db_query.html b/datum/db_query.html
new file mode 100644
index 00000000000..f29357aecde
--- /dev/null
+++ b/datum/db_query.html
@@ -0,0 +1,26 @@
+/datum/db_query - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
db_query
Datum based handler for all database queries
+
Holds information regarding inputs, status, and outputs
An associative list of parameters to be substituted into the statement
connection
The connection being used with this query
in_progress
Is the query currently in progress
item
List of data values populated by NextRow()
last_activity
What was our last activity
last_activity_time
When was our last activity
last_error
What was our last error, if any
last_insert_id
ID of the last inserted row
next_row_to_take
Counter of the next row to take
query_id
What is the query ID?
rows
List of all rows returned
sql
The SQL statement being executed with :parameter placeholders
Proc Details
Activity
Activity Update Handler
+
Sets the last activity text to the argument input, as well as updating the activity time
+
Arguments:
+
+
activity - Last activity text
+
Execute
Main Execution Handler
+
Invoked by [warn_execute()]
+This handles query error logging, as well as invoking the actual runner
+Arguments:
+
+
async - Are we running this query asynchronously
+
log_error - Do we want to log errors this creates? Disable this if you are running sensitive queries where you dont want errors logged in plain text (EG: Auth token stuff)
+
NextRow
Proc to get the next row in a DB query
+
Cycles item to the next row in the DB query, if multiple were fetched
run_query
Actual Query Runner
+
This does the main query with the database and the rust calls themselves
+
Arguments:
+
+
async - Are we running this query asynchronously
+
warn_execute
Wrapped for warning on execution
+
You should use this proc when running the SQL statement. It will auto inform the user and the online admins if a query fails
+
Arguments:
+
+
async - Are we running this query asynchronously
+
log_error - Do we want to log errors this creates? Disable this if you are running sensitive queries where you dont want errors logged in plain text (EG: Auth token stuff)
+
\ No newline at end of file
diff --git a/datum/department_member.html b/datum/department_member.html
new file mode 100644
index 00000000000..deee34a368e
--- /dev/null
+++ b/datum/department_member.html
@@ -0,0 +1 @@
+/datum/department_member - Space Station 13Space Station 13 - Modules - Types — Var Details
Can this department member approve crates for the department?
member_account
This department members money account
name
Name of the department member
role
Occupation of the department member
\ No newline at end of file
diff --git a/datum/design.html b/datum/design.html
new file mode 100644
index 00000000000..ba636a775b0
--- /dev/null
+++ b/datum/design.html
@@ -0,0 +1,4 @@
+/datum/design - Space Station 13Space Station 13 - Modules - Types — Var Details
design
Design Datums
+
+
All the data for building stuff.
+Datum for object designs, used in construction
Determines whether or not we get to get a design blueprint from a disk
Var Details
requires_whitelist
Determines whether or not we get to get a design blueprint from a disk
\ No newline at end of file
diff --git a/datum/discord_embed.html b/datum/discord_embed.html
new file mode 100644
index 00000000000..080c5be529b
--- /dev/null
+++ b/datum/discord_embed.html
@@ -0,0 +1,5 @@
+/datum/discord_embed - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Discord Embed
Holder datum for discord embeds
+
Used in /datum/discord_webhook_payload and serves as a code-first means to add an embed.
+See https://discord.com/developers/docs/resources/channel#embed-object
Colour of the strip on the side of the embed. Must be in hexadecimal WITHOUT leading hash
embed_content
Content of the embed
embed_timestamp
Timestamp the embed was sent at. Must be in 8601 format. Will be autoset on /New()
embed_title
Title of the embed
fields
List of all fields in the embed
Proc Details
serialize2list
Embed Serializer
+
Converts the DM embed object into JSON for a POST request.
+Not called serialize() because thats a proc at the /datum level already
\ No newline at end of file
diff --git a/datum/discord_embed_field.html b/datum/discord_embed_field.html
new file mode 100644
index 00000000000..2093826ff1e
--- /dev/null
+++ b/datum/discord_embed_field.html
@@ -0,0 +1,3 @@
+/datum/discord_embed_field - Space Station 13Space Station 13 - Modules - Types — Var Details
Discord Embed Field
Holder datum for discord embed fields
+
Used in /datum/discord_embed and serves as a code-first means to add fields to an embed
+See https://discord.com/developers/docs/resources/channel#embed-object-embed-field-structure
\ No newline at end of file
diff --git a/datum/discord_manager.html b/datum/discord_manager.html
new file mode 100644
index 00000000000..2bccce338f5
--- /dev/null
+++ b/datum/discord_manager.html
@@ -0,0 +1 @@
+/datum/discord_manager - Space Station 13Space Station 13 - Modules - Types — Var Details
Last time the administrator ping was dropped. This ensures administrators cannot be mass pinged if a large chunk of ahelps go off at once (IE: tesloose)
Last time the mentor ping was dropped. This ensures mentors cannot be mass pinged if a large chunk of mhelps go off at once.
Var Details
last_administration_ping
Last time the administrator ping was dropped. This ensures administrators cannot be mass pinged if a large chunk of ahelps go off at once (IE: tesloose)
last_mentor_ping
Last time the mentor ping was dropped. This ensures mentors cannot be mass pinged if a large chunk of mhelps go off at once.
\ No newline at end of file
diff --git a/datum/discord_webhook_payload.html b/datum/discord_webhook_payload.html
new file mode 100644
index 00000000000..4c4f86d175d
--- /dev/null
+++ b/datum/discord_webhook_payload.html
@@ -0,0 +1,6 @@
+/datum/discord_webhook_payload - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Discord Webhook Payload
Holder datum for discord webhook POST send data
+
Holds all information that a webhook would need,
+as well as a method to serialize the entire thing into JSON.
+See https://discord.com/developers/docs/resources/webhook#execute-webhook-jsonform-params
Converts the DM webhook object into JSON for a POST request.
+Not called serialize() because thats a proc at the /datum level already
\ No newline at end of file
diff --git a/datum/disease.html b/datum/disease.html
new file mode 100644
index 00000000000..05850582df9
--- /dev/null
+++ b/datum/disease.html
@@ -0,0 +1 @@
+/datum/disease - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Allow the virus to infect and process while the affected_mob is dead
discovered
If TRUE, this virus will show up on medical HUDs. Automatically set when it reaches mid-stage.
discovery_threshold
The fraction of stages the virus must at least be at to show up on medical HUDs. Rounded up.
incubation
How many cycles we should incubate
medical_name
Used for identification of viruses in the Medical Records Virus Database
Proc Details
get_pandemic_base_stats
Returns the Disease's base stats
get_pandemic_symptoms
Returns an Asoc list of disease's symptoms and their properties in a format usable by the PANDEMIC
is_known
Returns whether or not the disease is known
record_infection
Not interested in normal diseases right now
\ No newline at end of file
diff --git a/datum/disease/advance.html b/datum/disease/advance.html
new file mode 100644
index 00000000000..dacb832e7b6
--- /dev/null
+++ b/datum/disease/advance.html
@@ -0,0 +1 @@
+/datum/disease/advance - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The base properties of the virus. retained between strains
cures_required
The number of cures from the cure list required to cure a patient
event
The event the virus came from, if it did
evolution_chance
Chance of the virus evolving on spread
id
A unique ID for the strain and symptoms.
last_advancement
The time at which the disease last advanced
progress
How far along the disease has progressed? This is tied with stage but is separate to give more granularity to symptom effects
strain
A unique ID for the strain. Uses the unique_datum_id of the first virus datum that is of that strain.
symptoms
The symptoms of the disease.
tracker
Saves an ID. If that ID is analyzed the virus will be automatically analyzed when inserted into the PANDEMIC
Proc Details
AssignProperties
Set the characteristics of the disease depending on the received properties
GenerateProperties
Generate disease properties based on the symptoms and base properties. Returns an associated list.
Refresh
Called after changes are made to a disease to apply them properly
after_infect
Randomly mutate the disease
\ No newline at end of file
diff --git a/datum/disease/magnitis.html b/datum/disease/magnitis.html
new file mode 100644
index 00000000000..e2e03c88630
--- /dev/null
+++ b/datum/disease/magnitis.html
@@ -0,0 +1,8 @@
+/datum/disease/magnitis - Space Station 13Space Station 13 - Modules - Types — Proc Details
Handles magnitis pulling and throwing stuff.
+Arguments:
Proc Details
magnetic_pull
Handles magnitis pulling and throwing stuff.
+Arguments:
+
+
affected_mob - The magnitis-affected mob doing the pulling.
+
pull_range - How far the magnetic influence reaches.
+
throw_chance - Probability affected objects will be violently thrown at the affected_mob instead of being harmlessly pulled.
+
\ No newline at end of file
diff --git a/datum/disease/wizarditis.html b/datum/disease/wizarditis.html
new file mode 100644
index 00000000000..6d495330c14
--- /dev/null
+++ b/datum/disease/wizarditis.html
@@ -0,0 +1 @@
+/datum/disease/wizarditis - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/disease/zombie.html b/datum/disease/zombie.html
new file mode 100644
index 00000000000..caa03d8d15b
--- /dev/null
+++ b/datum/disease/zombie.html
@@ -0,0 +1 @@
+/datum/disease/zombie - Space Station 13Space Station 13 - Modules - Types — Var Details
Cooldown until the virus can advance to the next stage
Var Details
cure_stage
How far this particular virus is in being cured (0-4)
instant_zombie
Activate the immediate zombie rot loop
plague_disease
What disease are we passing along to datum/antagonist/zombie
stage_timer
Cooldown until the virus can advance to the next stage
\ No newline at end of file
diff --git a/datum/dmm_suite.html b/datum/dmm_suite.html
new file mode 100644
index 00000000000..db4a3b65dec
--- /dev/null
+++ b/datum/dmm_suite.html
@@ -0,0 +1,34 @@
+/datum/dmm_suite - Space Station 13Space Station 13 - Modules - Types — Proc Details
Fill a given tile with its area/turf/objects/mobs
+Variable model is one full map line (e.g /turf/simulated/wall{icon_state = "rock"},/area/mine/dangerous/explored)
Tries to parse the given value_text. Will fallback on the value_text as a string if it fails
Proc Details
load_map
Construct the model map and control the loading process
+
WORKING :
+
+
Makes an associative mapping of model_keys with model
+e.g aa = /turf/simulated/wall{icon_state = "rock"}
+
Read the map line by line, parsing the result (using parse_grid)
+
+
If measureOnly is set, then no atoms will be created, and all this will do
+is return the bounds after parsing the file
+
If you need to freeze init while you're working, you can use the spacial allocator's
+"add_dirt" and "remove_dirt" which will put initializations on hold until you say
+the word. This is important for loading large maps such as the cyberiad, where
+atmos will attempt to start before it's ready, causing runtimes galore if init is
+allowed to romp unchecked.
parse_grid
Fill a given tile with its area/turf/objects/mobs
+Variable model is one full map line (e.g /turf/simulated/wall{icon_state = "rock"},/area/mine/dangerous/explored)
+
WORKING :
+
+
+
Read the model string, member by member (delimiter is ',')
+
+
+
Get the path of the atom and store it into a list
+
+
+
a) Check if the member has variables (text within '{' and '}')
+
+
+
b) Construct an associative list with found variables, if any (the atom index in members is the same as its variables in members_attributes)
+
+
+
Instanciates the atom with its variables
+
+
parse_value
Tries to parse the given value_text. Will fallback on the value_text as a string if it fails
\ No newline at end of file
diff --git a/datum/dna.html b/datum/dna.html
new file mode 100644
index 00000000000..baff620430c
--- /dev/null
+++ b/datum/dna.html
@@ -0,0 +1 @@
+/datum/dna - Space Station 13Space Station 13 - Modules - Types — Var Details
The chat color to load for when a character is cloned, a changeling transforms, or when a character is created
default_blocks
list of all blocks toggled at roundstart
flavor_text
The flavor text of the person. We store this here for polymorph and changelings.
real_name
Stores the real name of the person who originally got this dna datum. Used primarily for changelings,
species
The type of mutant race the player is if applicable (i.e. potato-man)
struc_enzymes
Encoded SE
uni_identity
Encoded UI
unique_enzymes
MD5 of player name
\ No newline at end of file
diff --git a/datum/dynamic_airlock_linker.html b/datum/dynamic_airlock_linker.html
new file mode 100644
index 00000000000..620571c56f8
--- /dev/null
+++ b/datum/dynamic_airlock_linker.html
@@ -0,0 +1,32 @@
+/datum/dynamic_airlock_linker - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
dynamic_airlock_linker
A manager that is used on mapload to generate airlock chambers based on the
+usage of /obj/effect/map_effect/dynamic_airlock helpers. These helpers
+make up the "zone" of an airlock chamber, as well as indicate which airlocks
+are exterior or interior, what access should be applied to the doors and
+controls, And what buttons, vents, and airlock controllers should be linked
+together. This is performed on Initialize of one of the related helpers.
+Once done, all the other helpers are deleted to prevent it happening again
+for that zone.
Use all the information discovered about the airlock zone to link up the
+included airlock controllers, buttons, airlocks, and vent pumps. Make sure
+that all helpers found in this process are qdel'd so that no other helper
+attempts to do the same thing with this zone.
Find all the /obj/effect/mapping_helpers/airlock/access helpers on the
+passed in helper's tile, and add them to the list of accesses we'll assign
+to the linked objects later. Make sure that all mapping helpers found in
+this process are qdel'd so they don't attempt to assign access to anything
+else later.
Use all the information discovered about the airlock zone to link up the
+included airlock controllers, buttons, airlocks, and vent pumps. Make sure
+that all helpers found in this process are qdel'd so that no other helper
+attempts to do the same thing with this zone.
consume_access_helpers
Find all the /obj/effect/mapping_helpers/airlock/access helpers on the
+passed in helper's tile, and add them to the list of accesses we'll assign
+to the linked objects later. Make sure that all mapping helpers found in
+this process are qdel'd so they don't attempt to assign access to anything
+else later.
extend_zone
Starting from an arbitrary initial helper, search out from all adjacent
+tiles and find all other helpers that are part of this zone.
+
Right now this is a (relatively) busy proc that can't leave any setup to
+the Initialize of any helpers in its zone, because airlock controllers need
+all of their airlocks etc known when linkage occurs, which is in
+LateInitialize. I'm not sure if that's something that can be "fixed".
\ No newline at end of file
diff --git a/datum/effect_system.html b/datum/effect_system.html
new file mode 100644
index 00000000000..06063be003b
--- /dev/null
+++ b/datum/effect_system.html
@@ -0,0 +1 @@
+/datum/effect_system - Space Station 13Space Station 13 - Modules - Types — Var Details
The number of objects the effect system will spawn
Var Details
number
The number of objects the effect system will spawn
\ No newline at end of file
diff --git a/datum/effect_system/foam_spread.html b/datum/effect_system/foam_spread.html
new file mode 100644
index 00000000000..9f10541363f
--- /dev/null
+++ b/datum/effect_system/foam_spread.html
@@ -0,0 +1 @@
+/datum/effect_system/foam_spread - Space Station 13Space Station 13 - Modules - Types — Var Details
the temperature that the reagents in the foam will be set to
Var Details
banned_reagents
the reagents that we don't want in foam
carried_reagents
the IDs of reagents present when the foam was mixed
spread_size
the size of the foam spread.
temperature
the temperature that the reagents in the foam will be set to
\ No newline at end of file
diff --git a/datum/effect_system/foam_spread/metal.html b/datum/effect_system/foam_spread/metal.html
new file mode 100644
index 00000000000..9a24781d739
--- /dev/null
+++ b/datum/effect_system/foam_spread/metal.html
@@ -0,0 +1 @@
+/datum/effect_system/foam_spread/metal - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/element.html b/datum/element.html
new file mode 100644
index 00000000000..851a90b1374
--- /dev/null
+++ b/datum/element.html
@@ -0,0 +1,11 @@
+/datum/element - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
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.
The index of the last attach argument to consider for duplicate elements
+Only used when element_flags contains ELEMENT_BESPOKE.
+If not set, it'll copy every argument from argument_hash_start_idx onwards as normal
Deactivates the functionality defines by the element on the given datum
Var Details
argument_hash_end_idx
The index of the last attach argument to consider for duplicate elements
+Only used when element_flags contains ELEMENT_BESPOKE.
+If not set, it'll copy every argument from argument_hash_start_idx onwards as normal
argument_hash_start_idx
The index of the first attach argument to consider for duplicate elements
+
All arguments from this index onwards (1 based, until argument_hash_end_idx is reached, if set)
+are hashed into the key to determine if this is a new unique element or one already exists
Activates the functionality defined by the element on the given target datum
Detach
Deactivates the functionality defines by the element on the given datum
\ No newline at end of file
diff --git a/datum/element/ai_flee_while_injured.html b/datum/element/ai_flee_while_injured.html
new file mode 100644
index 00000000000..edb153285bd
--- /dev/null
+++ b/datum/element/ai_flee_while_injured.html
@@ -0,0 +1 @@
+/datum/element/ai_flee_while_injured - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
ai_flee_while_injured
Attached to a mob with an AI controller, simply sets a flag on whether or not to run away based on current health values.
When the mob's health changes, check what the blackboard state should be
Var Details
start_fleeing_below
Health value to start fleeing if at or below
stop_fleeing_at
Health value to end fleeing if at or above
Proc Details
on_health_changed
When the mob's health changes, check what the blackboard state should be
\ No newline at end of file
diff --git a/datum/element/ai_retaliate.html b/datum/element/ai_retaliate.html
new file mode 100644
index 00000000000..19a7d8fd70c
--- /dev/null
+++ b/datum/element/ai_retaliate.html
@@ -0,0 +1,2 @@
+/datum/element/ai_retaliate - Space Station 13Space Station 13 - Modules - Types — Proc Details
ai_retaliate
Attached to a mob with an AI controller, passes things which have damaged it to a blackboard.
+The AI controller is responsible for doing anything with that information.
Add an attacking atom to a blackboard list of things which attacked us
Proc Details
on_attacked
Add an attacking atom to a blackboard list of things which attacked us
\ No newline at end of file
diff --git a/datum/element/atmos_requirements.html b/datum/element/atmos_requirements.html
new file mode 100644
index 00000000000..d2310695e62
--- /dev/null
+++ b/datum/element/atmos_requirements.html
@@ -0,0 +1 @@
+/datum/element/atmos_requirements - Space Station 13Space Station 13 - Modules - Types — Var Details
atmos_requirements
Bespoke element that deals damage to the attached mob when the atmos requirements aren't satisfied
How much (brute) damage we take from being in unsuitable atmos.
Var Details
atmos_requirements
An assoc list of "what atmos does this mob require to survive in".
unsuitable_atmos_damage
How much (brute) damage we take from being in unsuitable atmos.
\ No newline at end of file
diff --git a/datum/element/basic_eating.html b/datum/element/basic_eating.html
new file mode 100644
index 00000000000..22091d1489b
--- /dev/null
+++ b/datum/element/basic_eating.html
@@ -0,0 +1,2 @@
+/datum/element/basic_eating - Space Station 13Space Station 13 - Modules - Types — Var Details
basic_eating
basic eating element!
+
Small behavior for non-carbons to eat certain stuff they interact with
If true, we put food in our tummy instead of deleting it
damage_amount
Amount to hurt
damage_type
Type of hurt to apply
drinking
Whether to flavor it as drinking rather than eating.
food_types
Types the animal can eat.
heal_amt
Amount to heal
\ No newline at end of file
diff --git a/datum/element/body_temperature.html b/datum/element/body_temperature.html
new file mode 100644
index 00000000000..721dea9078f
--- /dev/null
+++ b/datum/element/body_temperature.html
@@ -0,0 +1 @@
+/datum/element/body_temperature - Space Station 13Space Station 13 - Modules - Types — Var Details
body_temperature
Bespoke element that deals damage to the attached mob when the ambient temperature is unsuitable.
\ No newline at end of file
diff --git a/datum/element/bombable_turf.html b/datum/element/bombable_turf.html
new file mode 100644
index 00000000000..44c9a4943e5
--- /dev/null
+++ b/datum/element/bombable_turf.html
@@ -0,0 +1,3 @@
+/datum/element/bombable_turf - Space Station 13Space Station 13 - Modules - Types — Proc Details
bombable_turf
Apply this to a turf (usually a wall) and it will be destroyed instantly by any explosion.
+Most walls can already be destroyed by explosions so this is largely for usually indestructible ones.
+For applying it in a map editor, use /obj/effect/mapping_helpers/bombable_wall
If this turf becomes something else we either just went off or regardless don't want this any more
Proc Details
detonate
If we get blowed up, move to the next turf
on_examined
Show a little extra on examine
turf_changed
If this turf becomes something else we either just went off or regardless don't want this any more
\ No newline at end of file
diff --git a/datum/element/connect_loc.html b/datum/element/connect_loc.html
new file mode 100644
index 00000000000..7d48597af70
--- /dev/null
+++ b/datum/element/connect_loc.html
@@ -0,0 +1,2 @@
+/datum/element/connect_loc - Space Station 13Space Station 13 - Modules - Types — Var Details
connect_loc
This element hooks a signal onto the loc the current object is on.
+When the object moves, it will unhook the signal and rehook it to the new object.
An assoc list of signal -> procpath to register to the loc this object is on.
Var Details
connections
An assoc list of signal -> procpath to register to the loc this object is on.
\ No newline at end of file
diff --git a/datum/element/corrupted_organ.html b/datum/element/corrupted_organ.html
new file mode 100644
index 00000000000..4fea6e31d8a
--- /dev/null
+++ b/datum/element/corrupted_organ.html
@@ -0,0 +1,2 @@
+/datum/element/corrupted_organ - Space Station 13Space Station 13 - Modules - Types — Proc Details
corrupted_organ
Component applying shared behaviour by cursed organs granted when sacrificed by a heretic
+Mostly just does something spooky when it is removed
When we're taken out of someone, do something spooky
Proc Details
on_removed
When we're taken out of someone, do something spooky
\ No newline at end of file
diff --git a/datum/element/death_gases.html b/datum/element/death_gases.html
new file mode 100644
index 00000000000..037dabe68a8
--- /dev/null
+++ b/datum/element/death_gases.html
@@ -0,0 +1,2 @@
+/datum/element/death_gases - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
death_gases
death gases element!
+
Bespoke element that spawns one type of gas when a mob is killed
\ No newline at end of file
diff --git a/datum/element/decal.html b/datum/element/decal.html
new file mode 100644
index 00000000000..312218e7e7d
--- /dev/null
+++ b/datum/element/decal.html
@@ -0,0 +1,7 @@
+/datum/element/decal - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
If the decal was not given an appearance, it will generate one based on the other given arguments.
+element won't be compatible if it cannot do either
+all args are fed into creating an image, they are byond vars for images you'll recognize in the byond docs
+(except source, source is the object whose appearance we're copying.)
Var Details
base_icon_state
The base icon state that this decal was initialized with.
cleanable
Whether this decal can be cleaned.
description
A description this decal appends to the target's examine message.
directional
If true this was initialized with no set direction - will follow the parent dir.
pic
The overlay applied by this decal to the target.
Proc Details
generate_appearance
If the decal was not given an appearance, it will generate one based on the other given arguments.
+element won't be compatible if it cannot do either
+all args are fed into creating an image, they are byond vars for images you'll recognize in the byond docs
+(except source, source is the object whose appearance we're copying.)
\ No newline at end of file
diff --git a/datum/element/effect_trail.html b/datum/element/effect_trail.html
new file mode 100644
index 00000000000..161f6ed3261
--- /dev/null
+++ b/datum/element/effect_trail.html
@@ -0,0 +1 @@
+/datum/element/effect_trail - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
\ No newline at end of file
diff --git a/datum/element/heretic_focus.html b/datum/element/heretic_focus.html
new file mode 100644
index 00000000000..8e4461b363a
--- /dev/null
+++ b/datum/element/heretic_focus.html
@@ -0,0 +1,8 @@
+/datum/element/heretic_focus - Space Station 13Space Station 13 - Modules - Types — Proc Details
heretic_focus
Heretic focus element, simple element for making an item a heretic focus,
+allowing heretics to cast advanced spells (examine message included).
Signal proc for COMSIG_PARENT_EXAMINE.
+Let's the examiner see that this item is a heretic focus
Proc Details
on_drop
Signal proc for COMSIG_ITEM_DROPPED.
+Remove our trait when we drop (unequip) our item
on_equip
Signal proc for COMSIG_ITEM_EQUIPPED.
+When equipped in a right slot, give user our trait
on_examine
Signal proc for COMSIG_PARENT_EXAMINE.
+Let's the examiner see that this item is a heretic focus
\ No newline at end of file
diff --git a/datum/element/leeching_walk.html b/datum/element/leeching_walk.html
new file mode 100644
index 00000000000..3b569c87055
--- /dev/null
+++ b/datum/element/leeching_walk.html
@@ -0,0 +1,3 @@
+/datum/element/leeching_walk - Space Station 13Space Station 13 - Modules - Types — Proc Details
leeching_walk
Buffs and heals the target while standing on rust.
Gradually heals the heretic ([source]) on rust,
+including baton knockdown and stamina damage.
\ No newline at end of file
diff --git a/datum/element/light_blocking.html b/datum/element/light_blocking.html
new file mode 100644
index 00000000000..146341be86b
--- /dev/null
+++ b/datum/element/light_blocking.html
@@ -0,0 +1 @@
+/datum/element/light_blocking - Space Station 13Space Station 13 - Modules - Types — Proc Details
light_blocking
Attached to movable atoms with opacity. Listens to them move and updates their old and new turf loc's opacity accordingly
\ No newline at end of file
diff --git a/datum/element/noticable_organ.html b/datum/element/noticable_organ.html
new file mode 100644
index 00000000000..268c81c73b1
--- /dev/null
+++ b/datum/element/noticable_organ.html
@@ -0,0 +1,2 @@
+/datum/element/noticable_organ - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
noticable_organ
noticable organ element; which makes organs have a special description added to the person with the organ, if certain body zones aren't covered.
Proc that returns true or false if the organ should show its examine check.
Var Details
body_zone
Which body zone has to be exposed. If none is set, this is always noticable.
infused_desc
Shows on examining someone with an infused organ.
Proc Details
should_show_text
Proc that returns true or false if the organ should show its examine check.
\ No newline at end of file
diff --git a/datum/element/pet_bonus.html b/datum/element/pet_bonus.html
new file mode 100644
index 00000000000..ecf649fa6d7
--- /dev/null
+++ b/datum/element/pet_bonus.html
@@ -0,0 +1 @@
+/datum/element/pet_bonus - Space Station 13Space Station 13 - Modules - Types — Var Details
Pet bonus element!
Bespoke element that plays a fun message, and sends a heart out when you pet this animal.
\ No newline at end of file
diff --git a/datum/element/relay_attackers.html b/datum/element/relay_attackers.html
new file mode 100644
index 00000000000..8665ffa0d07
--- /dev/null
+++ b/datum/element/relay_attackers.html
@@ -0,0 +1,3 @@
+/datum/element/relay_attackers - Space Station 13Space Station 13 - Modules - Types — Proc Details
relay_attackers
This element registers to a shitload of signals which can signify "someone attacked me".
+If anyone does it sends a single "someone attacked me" signal containing details about who done it.
+This prevents other components and elements from having to register to the same list of a million signals, should be more maintainable in one place.
Send out a signal identifying whoever just attacked us (usually a mob but sometimes a mech or turret)
Proc Details
on_bullet_act
Even if another component blocked this hit, someone still shot at us
on_hitby
Even if another component blocked this hit, someone still threw something
relay_attacker
Send out a signal identifying whoever just attacked us (usually a mob but sometimes a mech or turret)
\ No newline at end of file
diff --git a/datum/element/ridable.html b/datum/element/ridable.html
new file mode 100644
index 00000000000..4cb135c4ddd
--- /dev/null
+++ b/datum/element/ridable.html
@@ -0,0 +1,5 @@
+/datum/element/ridable - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
ridable
This element is used to indicate that a movable atom can be mounted by mobs in order to ride it. The movable is considered mounted when a mob is buckled to it,
+at which point a riding component is created on the movable, and that component handles the actual riding behavior.
+
Besides the target, the ridable element has one argument: the component subtype. This is not really ideal since there's ~20-30 component subtypes rather than
+having the behavior defined on the ridable atoms themselves or some such, but because the old riding behavior was so horrifyingly spread out and redundant,
+just having the variables, behavior, and procs be standardized is still a big improvement.
\ No newline at end of file
diff --git a/datum/element/rust.html b/datum/element/rust.html
new file mode 100644
index 00000000000..67e2ba7f6c3
--- /dev/null
+++ b/datum/element/rust.html
@@ -0,0 +1 @@
+/datum/element/rust - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
rust
Adding this element to an atom will have it automatically render an overlay.
Because do_after sleeps we register the signal here and defer via an async call
Var Details
rust_overlay
The rust image itself, since the icon and icon state are only used as an argument
Proc Details
handle_tool_use
We call this from secondary_tool_act because we sleep with do_after
on_interaction
Prevents placing floor tiles on rusted turf
welder_tool_act
Because do_after sleeps we register the signal here and defer via an async call
\ No newline at end of file
diff --git a/datum/element/shatters_when_thrown.html b/datum/element/shatters_when_thrown.html
new file mode 100644
index 00000000000..efb2ce66e15
--- /dev/null
+++ b/datum/element/shatters_when_thrown.html
@@ -0,0 +1 @@
+/datum/element/shatters_when_thrown - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
shatters_when_thrown
When attached to something, will make that thing shatter into shards on throw impact or z level falling
Handles the actual shattering part, throwing shards of whatever is defined on the component everywhere
Var Details
number_of_shards
How many shards total are made when the thing we're attached to shatters
shard_type
What type of item is spawned as a 'shard' once the shattering happens
shattering_sound
What sound plays when the thing we're attached to shatters
Proc Details
on_throw_impact
Tells the parent to shatter if we are thrown and impact something
shatter
Handles the actual shattering part, throwing shards of whatever is defined on the component everywhere
\ No newline at end of file
diff --git a/datum/element/sideways_movement.html b/datum/element/sideways_movement.html
new file mode 100644
index 00000000000..89ee7beeac7
--- /dev/null
+++ b/datum/element/sideways_movement.html
@@ -0,0 +1 @@
+/datum/element/sideways_movement - Space Station 13Space Station 13 - Modules - Types — Proc Details
sideways_movement
A simple element that forces the mob to face a perpendicular direction when moving, like crabs.
retain the old dir unless walking straight ahead or backward, in which case rotate the dir left or right by a 90°
Proc Details
on_move
retain the old dir unless walking straight ahead or backward, in which case rotate the dir left or right by a 90°
\ No newline at end of file
diff --git a/datum/element/squish.html b/datum/element/squish.html
new file mode 100644
index 00000000000..5934838c4ae
--- /dev/null
+++ b/datum/element/squish.html
@@ -0,0 +1,3 @@
+/datum/element/squish - Space Station 13Space Station 13 - Modules - Types
squish
squish.dm
+
It's an element that squishes things. After the duration passes, it reverses the transformation it squished with, taking into account if they are a different orientation than they started (read: rotationally-fluid)
+
Normal squishes apply vertically, as if the target is being squished from above, but you can set reverse to TRUE if you want to squish them from the sides, like if they pancake into a wall from the East or West
\ No newline at end of file
diff --git a/datum/element/strippable.html b/datum/element/strippable.html
new file mode 100644
index 00000000000..3cdecd70533
--- /dev/null
+++ b/datum/element/strippable.html
@@ -0,0 +1 @@
+/datum/element/strippable - Space Station 13Space Station 13 - Modules - Types — Var Details
strippable
An element for atoms that, when dragged and dropped onto a mob, opens a strip panel.
\ No newline at end of file
diff --git a/datum/element/wears_collar.html b/datum/element/wears_collar.html
new file mode 100644
index 00000000000..eb9e3f8232a
--- /dev/null
+++ b/datum/element/wears_collar.html
@@ -0,0 +1 @@
+/datum/element/wears_collar - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/emote.html b/datum/emote.html
new file mode 100644
index 00000000000..a81282c985d
--- /dev/null
+++ b/datum/emote.html
@@ -0,0 +1,123 @@
+/datum/emote - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Emote
Most of the text that's not someone talking is based off of this.
How unconscious/dead can you be while still being able to use this emote intentionally?
+If this is set to DEFAULT_STAT_ALLOWED, it'll behave as if it isn't set.
Same as above, how unconscious/dead do you need to be to have this emote forced out of you?
+If this is set to DEFAULT_STAT_ALLOWED, it'll behave as if it isn't set.
Message with %t at the end to allow adding params to the message, like for mobs doing an emote relatively to something else.
+Set this to EMOTE_PARAM_USE_POSTFIX to just use the postfix.
Message postfix with %t used when we don't want to use message_param for our targeting. Used for things like message_monkey or message_mime.
+Punctuation from the message will be stripped when this is applied, so make sure it's punctuated as well.
Return whether a user should be able to vocalize emotes or not, due to a mask or inability to speak.
+If this returns false, any mouth emotes will be replaced with muzzled noises.
Check whether or not an emote can be used due to a cooldown.
+This applies to per-emote cooldowns, preventing individual emotes from being used (intentionally) too frequently.
+This also checks audio cooldowns, so that intentional uses of audio emotes across the mob are time-constrained.
Play the sound effect in an emote.
+If you want to change the way the playsound call works, override this.
+Note! If you want age_based to work, you need to force vary to TRUE.
Reset the emote back to its original state.
+Necessary if you've made modifications to the emote itself over the course of its
+execution, as emotes are singletons, and changes would be reflected on every usage of the emote.
Try to run an emote, checking can_run_emote once before executing the emote itself.
Var Details
age_based
Whether or not to adjust the frequency of the emote sound based on age.
audio_cooldown
How long is the cooldown on the audio of the emote, if it has one?
bypass_unintentional_cooldown
If true, an emote will completely bypass any cooldown when called unintentionally. Necessary for things like deathgasp.
cooldown
The cooldown between the uses of the emote.
emote_target_type
If our target behavior isn't to ignore, what should we look for with targets?
emote_type
Whether the emote is visible or audible.
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.
max_stat_allowed
How unconscious/dead can you be while still being able to use this emote intentionally?
+If this is set to DEFAULT_STAT_ALLOWED, it'll behave as if it isn't set.
max_unintentional_stat_allowed
Same as above, how unconscious/dead do you need to be to have this emote forced out of you?
+If this is set to DEFAULT_STAT_ALLOWED, it'll behave as if it isn't set.
message
Message displayed when emote is used.
message_AI
Message displayed if the user is an AI.
message_alien
Message displayed if the user is a grown alien.
message_larva
Message displayed if the user is an alien larva.
message_mime
Message displayed if the user is a mime.
message_monkey
Message displayed if the user is a monkey.
message_observer
Message to display if the user is a spooky observer ghost.
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.
+Set this to EMOTE_PARAM_USE_POSTFIX to just use the postfix.
message_postfix
Message postfix with %t used when we don't want to use message_param for our targeting. Used for things like message_monkey or message_mime.
+Punctuation from the message will be stripped when this is applied, so make sure it's punctuated as well.
message_robot
Message displayed if the user is a robot.
message_simple
Message to display if the user is a simple_animal.
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
If the emote type is EMOTE_MOUTH but should still bypass a muzzle.
muzzled_noises
Sounds emitted when the user is muzzled. Generally used like "[user] makes a pick(muzzled_noises) noise!"
only_forced_audio
If true, this emote will only make a sound effect when called unintentionally.
only_unintentional
Whether or not the emote can even be called at all if it's not intentional
param_desc
Description appended to the emote name describing what the target should be, like for help commands.
sound
Sound to play when emote is called. If you want to adjust this dynamically, see get_sound().
species_type_blacklist_typecache
Species types which the emote will be exclusively not available to. Should be subclasses of /datum/species
species_type_whitelist_typecache
Species types which the emote will be exclusively available to. Should be subclasses of /datum/species
stat_allowed
How conscious do you need to be to use this emote intentionally?
target_behavior
If we get a target, how do we want to treat it?
unintentional_audio_cooldown
If the emote is triggered unintentionally, how long would that cooldown be?
unintentional_stat_allowed
How conscious do you need to be to have this emote forced out of you?
vary
Whether or not to vary the sound of the emote.
volume
How loud is the audio emote?
Proc Details
act_on_target
Perform an action on the target of an emote, if one was found.
+
This gets called in select_param if a valid object target was found, and should let you interact with the
+object being targeted while it's still in scope.
+
+
user - Person who is triggering the emote.
+
Target - The target of the emote itself.
+
can_run_emote
Check to see if the user is allowed to run the emote.
+
Arguments:
+
+
user - Person that is trying to send the emote.
+
status_check - Bool that says whether we should check their stat or not.
+
intentional - Bool that says whether the emote was forced (FALSE) or not (TRUE).
+
+
Returns a bool about whether or not the user can run the emote.
can_vocalize_emotes
Return whether a user should be able to vocalize emotes or not, due to a mask or inability to speak.
+If this returns false, any mouth emotes will be replaced with muzzled noises.
check_cooldown
Check whether or not an emote can be used due to a cooldown.
+This applies to per-emote cooldowns, preventing individual emotes from being used (intentionally) too frequently.
+This also checks audio cooldowns, so that intentional uses of audio emotes across the mob are time-constrained.
+
Arguments:
+
+
user - Person that is trying to send the emote.
+
intentional - Bool that says whether the emote was forced (FALSE) or not (TRUE).
+
+
Returns FALSE if the cooldown is not over, TRUE if the cooldown is over.
find_target
Find a target for the emote based on the message parameter fragment passed in.
+
+
user - The user looking for a target.
+
fragment - The mesage parameter or fragment of text they're using to try to find a target.
+
emote_target_type - Define denoting the type of target to use when searching.
+
+
Returns a matched target, or null if a specific match couldn't be made.
get_sound
To get the sound that the emote plays, for special sound interactions depending on the mob.
+
Arguments:
+
+
user - Person that is trying to send the emote.
+
+
Returns the sound that will be made while sending the emote.
get_volume
Get the volume of the audio emote to play.
+
Override this if you want to dynamically change the volume of an emote.
+
Arguments:
+
+
user - Person that is trying to send the emote.
+
+
Returns the volume level for an emote's audio component.
play_sound_effect
Play the sound effect in an emote.
+If you want to change the way the playsound call works, override this.
+Note! If you want age_based to work, you need to force vary to TRUE.
+
+
user - The user of the emote.
+
intentional - Whether or not the emote was triggered intentionally.
+
sound_path - Filesystem path to the audio clip to play.
+
sound_volume - Volume at which to play the audio clip.
+
replace_pronoun
Replace pronouns in the inputed string with the user's proper pronouns.
+
Specifically replaces they/them/their pronouns with the user's pronouns, as well as %s (like theirs)
+
Arguments:
+
+
user - Person that is trying to send the emote.
+
msg - The string to modify.
+
+
Returns the modified msg string.
reset_emote
Reset the emote back to its original state.
+Necessary if you've made modifications to the emote itself over the course of its
+execution, as emotes are singletons, and changes would be reflected on every usage of the emote.
run_emote
Handles the modifications and execution of emotes.
+
In general, what this does:
+
+
Checks if the user can run the emote at all
+
Checks and applies the message parameter, if it exists
+
Replaces pronouns with a mob's specific pronouns
+
Checks for and plays sound if the emote supports it
+
Sends the emote to users
+
Runechats the emote
+
+
You most likely want to use try_run_emote() anywhere you would otherwise call this directly,
+as that will incorporate can_run_emote() checking as well.
+
Arguments:
+
+
user - Person that is trying to send the emote.
+
emote_arg - String parameter added after the emote.
+
type_override - Override to the current emote_type.
+
intentional - Bool that says whether the emote was forced (FALSE) or not (TRUE).
+
+
Returns TRUE if it was able to run the emote, FALSE otherwise.
select_message_type
Selects the message type to override the message with.
+
Arguments:
+
+
user - Person that is trying to send the emote.
+
msg - The string to modify.
+
intentional - Bool that says whether the emote was forced (FALSE) or not (TRUE).
+
+
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.
+
The behavior of this proc is particularly dependent on target_behavior and emote_target_type.
+If target_behavior is EMOTE_TARGET_BHVR_RAW, we ignore any sort of target searching.
+Otherwise, we try to find a target in view to call this emote on based on emote_target_type.
+
If you want to call something on the target object itself while it's still in scope, override act_on_target().
+
Arguments:
+
+
user - Person that is trying to send the emote.
+
params - Parameters added after the emote.
+
substitution_str - String to substitute the target into.
+
base_message - If passed, the original message before any sort of modification occurred. Useful when dealing with non-standard message types.
+
+
Returns the modified string, or null if the given parameter is invalid. May also return EMOTE_ACT_STOP_EXECUTION if acting on the target should stop emote execution.
should_play_sound
Check to see if the user should play a sound when performing the emote.
+
Arguments:
+
+
user - Person that is doing the emote.
+
intentional - Bool that says whether the emote was forced (FALSE) or not (TRUE).
+
+
Returns a bool about whether or not the user should play a sound when performing the emote.
try_run_emote
Try to run an emote, checking can_run_emote once before executing the emote itself.
+
+
user - User of the emote
+
params - An optional extra argument included after the emote key.
+
type_override - emote type to override the existing one with, if given.
+
intentional - Whether or not the emote was triggered intentionally (if false, the emote was forced by code).
+
+
Returns TRUE if the emote was able to be run (or failed successfully), or FALSE if the emote is unusable.
\ No newline at end of file
diff --git a/datum/emote/living/brain.html b/datum/emote/living/brain.html
new file mode 100644
index 00000000000..f8ed4c8be81
--- /dev/null
+++ b/datum/emote/living/brain.html
@@ -0,0 +1 @@
+/datum/emote/living/brain - Space Station 13Space Station 13 - Modules - Types — Var Details
brain
Emotes usable by brains, but only while they're in MMIs.
The message that will be displayed to themselves, since brains can't really see their own emotes
Var Details
self_message
The message that will be displayed to themselves, since brains can't really see their own emotes
\ No newline at end of file
diff --git a/datum/emote/living/carbon/human.html b/datum/emote/living/carbon/human.html
new file mode 100644
index 00000000000..aecff9dc1d5
--- /dev/null
+++ b/datum/emote/living/carbon/human.html
@@ -0,0 +1,3 @@
+/datum/emote/living/carbon/human - Space Station 13Space Station 13 - Modules - Types — Var Details
Custom messages applied to mimes of a particular species
Var Details
species_custom_messages
Custom messages that should be applied based on species
+Should be an associative list of species name: message
species_custom_mime_messages
Custom messages applied to mimes of a particular species
\ No newline at end of file
diff --git a/datum/emote/living/carbon/human/highfive.html b/datum/emote/living/carbon/human/highfive.html
new file mode 100644
index 00000000000..213d2fbce9b
--- /dev/null
+++ b/datum/emote/living/carbon/human/highfive.html
@@ -0,0 +1 @@
+/datum/emote/living/carbon/human/highfive - Space Station 13Space Station 13 - Modules - Types — Var Details
Status effect to apply when this emote is used. Should be a subtype
Var Details
action_name
title override, used for the re-use message.
status
Status effect to apply when this emote is used. Should be a subtype
\ No newline at end of file
diff --git a/datum/emote/living/carbon/human/highfive/rps.html b/datum/emote/living/carbon/human/highfive/rps.html
new file mode 100644
index 00000000000..3212a6e9e6b
--- /dev/null
+++ b/datum/emote/living/carbon/human/highfive/rps.html
@@ -0,0 +1 @@
+/datum/emote/living/carbon/human/highfive/rps - Space Station 13Space Station 13 - Modules - Types — Var Details
If the user used parameters, the move that will be made.
Var Details
move
If the user used parameters, the move that will be made.
\ No newline at end of file
diff --git a/datum/emote/living/simple_animal/slime.html b/datum/emote/living/simple_animal/slime.html
new file mode 100644
index 00000000000..ea703404a63
--- /dev/null
+++ b/datum/emote/living/simple_animal/slime.html
@@ -0,0 +1 @@
+/datum/emote/living/simple_animal/slime - Space Station 13Space Station 13 - Modules - Types — Var Details
Apply mood of the emote. Set this to MOOD_RESET to cause the emote to reset the mood back to default.
Var Details
mood
Apply mood of the emote. Set this to MOOD_RESET to cause the emote to reset the mood back to default.
\ No newline at end of file
diff --git a/datum/enchantment.html b/datum/enchantment.html
new file mode 100644
index 00000000000..60165f9a21e
--- /dev/null
+++ b/datum/enchantment.html
@@ -0,0 +1 @@
+/datum/enchantment - Space Station 13Space Station 13 - Modules - Types — Var Details
whether the enchant procs despite not being in proximity
Var Details
applied_traits
If the spellblade has traits, has it applied them?
cooldown
stores cooldown between activations.
desc
used for wizards/cultists examining the runes on the blade
name
used for blackbox logging
power
used for damage values
ranged
whether the enchant procs despite not being in proximity
\ No newline at end of file
diff --git a/datum/engi_event.html b/datum/engi_event.html
new file mode 100644
index 00000000000..f19dad3d96e
--- /dev/null
+++ b/datum/engi_event.html
@@ -0,0 +1 @@
+/datum/engi_event - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
\ No newline at end of file
diff --git a/datum/engi_event/bluespace_tap_event.html b/datum/engi_event/bluespace_tap_event.html
new file mode 100644
index 00000000000..224d5b2cb9b
--- /dev/null
+++ b/datum/engi_event/bluespace_tap_event.html
@@ -0,0 +1 @@
+/datum/engi_event/bluespace_tap_event - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/event.html b/datum/event.html
new file mode 100644
index 00000000000..16fa1c01442
--- /dev/null
+++ b/datum/event.html
@@ -0,0 +1,26 @@
+/datum/event - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
event
NOTE: Times are measured in master controller ticks!
Override this to make a custom fake announcement that differs from the normal announcement.
+Used for false alarms.
+If this proc returns TRUE, the regular Announce() won't be called.
Called on or after the tick counter is equal to startWhen.
Var Details
activeFor
How long the event has existed. You don't need to change this.
announceWhen
When in the lifetime to call announce().
endWhen
When in the lifetime the event should end.
endedAt
When this event ended.
impact_area
The area the event will hit
isRunning
If this event is currently running. You should not change this.
name
The human-readable name of the event
noAutoEnd
Does the event end automatically after endWhen passes?
nominal_severity
The severity the event has normally
role_requirements
A baseline requirement of different roles the event has at it's nominal severity
role_weights
The base weight of each role on the event for the purpose of calculating event weight and resource cost
severity
Severity. Lower means less severe, higher means more severe. Does not have to be supported. Is set on New().
startWhen
When in the lifetime to call start().
startedAt
When this event started.
Proc Details
announce
Called when the tick is equal to the announceWhen variable.
+
Allows you to announce before starting or vice versa.
+Only called once.
+Ensure no sleep is called. Use INVOKE_ASYNC to call procs which do.
end
Called on or after the tick is equal or more than endWhen
+
You can include code related to the event ending.
+Do not place spawn() in here, instead use tick() to check for
+the activeFor variable.
+For example: if(activeFor == myOwnVariable + 30) doStuff()
+Only called once.
+Ensure no sleep is called. Use INVOKE_ASYNC to call procs which do.
event_resource_cost
The amount of people in different roles needed to handle an ongoing event.
fake_announce
Override this to make a custom fake announcement that differs from the normal announcement.
+Used for false alarms.
+If this proc returns TRUE, the regular Announce() won't be called.
get_weight
Calculate the weight for rolling the event based on round circumstances.
kill
Called when start(), announce() and end() has all been called.
lastProcessAt
Returns the latest point of event processing.
process
Do not override this proc, instead use the appropiate procs.
+
This proc will handle the calls to the appropiate procs.
+Ensure none of the code paths have a sleep in them. Use INVOKE_ASYNC to call procs which do.
setup
Called first before processing.
+
Allows you to setup your event, such as randomly
+setting the startWhen and or announceWhen variables.
+Only called once.
start
Called when the tick is equal to the startWhen variable.
+
Allows you to start before announcing or vice versa.
+Only called once.
+Ensure no sleep is called. Use INVOKE_ASYNC to call procs which do.
tick
Called on or after the tick counter is equal to startWhen.
+
You can include code related to your event or add your own
+time stamped events.
+Called more than once.
+Ensure no sleep is called. Use INVOKE_ASYNC to call procs which do.
\ No newline at end of file
diff --git a/datum/event/abductor.html b/datum/event/abductor.html
new file mode 100644
index 00000000000..b9760071479
--- /dev/null
+++ b/datum/event/abductor.html
@@ -0,0 +1 @@
+/datum/event/abductor - Space Station 13Space Station 13 - Modules - Types — Proc Details
abductor costs are calculated independently of event
Proc Details
event_resource_cost
abductor costs are calculated independently of event
\ No newline at end of file
diff --git a/datum/event/alien_infestation.html b/datum/event/alien_infestation.html
new file mode 100644
index 00000000000..c978815ca4b
--- /dev/null
+++ b/datum/event/alien_infestation.html
@@ -0,0 +1 @@
+/datum/event/alien_infestation - Space Station 13Space Station 13 - Modules - Types — Proc Details
Xeno costs are calculated independently from the event itself
Proc Details
event_resource_cost
Xeno costs are calculated independently from the event itself
\ No newline at end of file
diff --git a/datum/event/anomaly.html b/datum/event/anomaly.html
new file mode 100644
index 00000000000..e50b2cd101f
--- /dev/null
+++ b/datum/event/anomaly.html
@@ -0,0 +1 @@
+/datum/event/anomaly - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/event/aurora_caelus.html b/datum/event/aurora_caelus.html
new file mode 100644
index 00000000000..20f40c37178
--- /dev/null
+++ b/datum/event/aurora_caelus.html
@@ -0,0 +1 @@
+/datum/event/aurora_caelus - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/event/blob.html b/datum/event/blob.html
new file mode 100644
index 00000000000..406c3ca04ab
--- /dev/null
+++ b/datum/event/blob.html
@@ -0,0 +1 @@
+/datum/event/blob - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Blob costs are calculated independently from the event itself
Var Details
blob_things
List of all blob cores and blob mice related to this event
successSpawn
So we don't make a command report if nothing gets spawned.
Proc Details
event_resource_cost
Blob costs are calculated independently from the event itself
\ No newline at end of file
diff --git a/datum/event/bureaucratic_error.html b/datum/event/bureaucratic_error.html
new file mode 100644
index 00000000000..5772b418742
--- /dev/null
+++ b/datum/event/bureaucratic_error.html
@@ -0,0 +1 @@
+/datum/event/bureaucratic_error - Space Station 13Space Station 13 - Modules - Types — Var Details
Jobs that pass an additional 40% chance per roll to be picked for the bureaucratic error
Var Details
blacklisted_jobs
Jobs that are not allowed to be picked for the bureaucratic error
uncommon_jobs
Jobs that pass an additional 40% chance per roll to be picked for the bureaucratic error
\ No newline at end of file
diff --git a/datum/event/cargo_pods.html b/datum/event/cargo_pods.html
new file mode 100644
index 00000000000..3c1a6eff566
--- /dev/null
+++ b/datum/event/cargo_pods.html
@@ -0,0 +1 @@
+/datum/event/cargo_pods - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/event/carp_migration.html b/datum/event/carp_migration.html
new file mode 100644
index 00000000000..eb74943f321
--- /dev/null
+++ b/datum/event/carp_migration.html
@@ -0,0 +1 @@
+/datum/event/carp_migration - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/event/demon_incursion.html b/datum/event/demon_incursion.html
new file mode 100644
index 00000000000..f9326303a1b
--- /dev/null
+++ b/datum/event/demon_incursion.html
@@ -0,0 +1 @@
+/datum/event/demon_incursion - Space Station 13Space Station 13 - Modules - Types — Var Details
Corresponds to the number of process() runs the event has lasted for. Roughly 2 minutes here.
notify_image
The icon of the notification
notify_title
The name of the notification for dchat
portal_list
List of portals
spawned
Toggled when the first portal is spawned
target_portals
The target number of portals
\ No newline at end of file
diff --git a/datum/event/disease_outbreak.html b/datum/event/disease_outbreak.html
new file mode 100644
index 00000000000..f8799b84fe3
--- /dev/null
+++ b/datum/event/disease_outbreak.html
@@ -0,0 +1 @@
+/datum/event/disease_outbreak - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Cost of ongoing disease outbreak. 1 medical personnal per 2 infected at major severity.
Var Details
chosen_disease
The type of disease that patient zero will be infected with.
Proc Details
event_resource_cost
Cost of ongoing disease outbreak. 1 medical personnal per 2 infected at major severity.
\ No newline at end of file
diff --git a/datum/event/infestation.html b/datum/event/infestation.html
new file mode 100644
index 00000000000..452f98310c4
--- /dev/null
+++ b/datum/event/infestation.html
@@ -0,0 +1 @@
+/datum/event/infestation - Space Station 13Space Station 13 - Modules - Types — Var Details
All possible areas for spawning, matched with their pretty names
vermin
Which kind of vermin we'll be spawning (one of the three defines)
vermstring
Pretty name for the vermin we're spawning
\ No newline at end of file
diff --git a/datum/event/market_crash.html b/datum/event/market_crash.html
new file mode 100644
index 00000000000..4a62840abb4
--- /dev/null
+++ b/datum/event/market_crash.html
@@ -0,0 +1 @@
+/datum/event/market_crash - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/event/meteor_wave.html b/datum/event/meteor_wave.html
new file mode 100644
index 00000000000..a57d02f8ee1
--- /dev/null
+++ b/datum/event/meteor_wave.html
@@ -0,0 +1 @@
+/datum/event/meteor_wave - Space Station 13Space Station 13 - Modules - Types — Var Details
The time at which we clear the storm. This is set during the event run so we initialize it to an unreachable value
Var Details
clear_time
The time at which we clear the storm. This is set during the event run so we initialize it to an unreachable value
\ No newline at end of file
diff --git a/datum/event/shuttle_loan.html b/datum/event/shuttle_loan.html
new file mode 100644
index 00000000000..41e26906fbc
--- /dev/null
+++ b/datum/event/shuttle_loan.html
@@ -0,0 +1 @@
+/datum/event/shuttle_loan - Space Station 13Space Station 13 - Modules - Types — Var Details
what type of shuttle loan situation the station faces.
Var Details
dispatch_attempts
How many times can it try to take the shuttle before it gives up and rerolls?
dispatched
Whether the station has let Centcom commandeer the shuttle yet.
situation
what type of shuttle loan situation the station faces.
\ No newline at end of file
diff --git a/datum/event/spawn_uplifted_primitive.html b/datum/event/spawn_uplifted_primitive.html
new file mode 100644
index 00000000000..1474c611123
--- /dev/null
+++ b/datum/event/spawn_uplifted_primitive.html
@@ -0,0 +1 @@
+/datum/event/spawn_uplifted_primitive - Space Station 13Space Station 13 - Modules - Types — Var Details
The list of species this event can spawn uplifted primitives of.
Var Details
allowed_species
The list of species this event can spawn uplifted primitives of.
\ No newline at end of file
diff --git a/datum/event/spider_terror.html b/datum/event/spider_terror.html
new file mode 100644
index 00000000000..99b79a9c8fd
--- /dev/null
+++ b/datum/event/spider_terror.html
@@ -0,0 +1 @@
+/datum/event/spider_terror - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Terror spider costs are calculated independently from the event itself
Var Details
infestation_type
Specific type of terror spawn
Proc Details
event_resource_cost
Terror spider costs are calculated independently from the event itself
\ No newline at end of file
diff --git a/datum/event/swarmers.html b/datum/event/swarmers.html
new file mode 100644
index 00000000000..937001d9243
--- /dev/null
+++ b/datum/event/swarmers.html
@@ -0,0 +1 @@
+/datum/event/swarmers - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/event/tear.html b/datum/event/tear.html
new file mode 100644
index 00000000000..c67f5f1cc4a
--- /dev/null
+++ b/datum/event/tear.html
@@ -0,0 +1,4 @@
+/datum/event/tear - Space Station 13Space Station 13 - Modules - Types
tear
Dimensional tear event.
+
On triggering, nearby machines and lights flicker. After a few seconds,
+nearby machines and lights break. A /obj/effect/tear appears, spawning up
+to 10 random hell mobs including a guaranteed tear hellhound, then disappears.
\ No newline at end of file
diff --git a/datum/event/tourist_arrivals.html b/datum/event/tourist_arrivals.html
new file mode 100644
index 00000000000..9512cb882ac
--- /dev/null
+++ b/datum/event/tourist_arrivals.html
@@ -0,0 +1 @@
+/datum/event/tourist_arrivals - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/event_container.html b/datum/event_container.html
new file mode 100644
index 00000000000..fd9014c3466
--- /dev/null
+++ b/datum/event_container.html
@@ -0,0 +1 @@
+/datum/event_container - Space Station 13Space Station 13 - Modules - Types — Var Details
Records the initial amount of events in the available event list
Var Details
initial_event_count
Records the initial amount of events in the available event list
\ No newline at end of file
diff --git a/datum/event_meta.html b/datum/event_meta.html
new file mode 100644
index 00000000000..ab8b0aae78d
--- /dev/null
+++ b/datum/event_meta.html
@@ -0,0 +1 @@
+/datum/event_meta - Space Station 13Space Station 13 - Modules - Types — Var Details
A modifier applied to all event weights (role and base), respects min and max
Var Details
enabled
Whether or not the event is available for random selection at all.
first_run_time
How early this specific event can run
max_weight
The maximum weight that this event will have.
min_weight
The minimum weight that this event will have. Only used if non-zero.
one_shot
If true, then the event will not be re-added to the list of available events
skeleton
Event held by this meta event. Used to do things like calculate weight.
weight
The base weight of this event. A zero means it may never fire, but see get_weight()
weight_mod
A modifier applied to all event weights (role and base), respects min and max
\ No newline at end of file
diff --git a/datum/feed_channel.html b/datum/feed_channel.html
new file mode 100644
index 00000000000..23d87ecf46b
--- /dev/null
+++ b/datum/feed_channel.html
@@ -0,0 +1,20 @@
+/datum/feed_channel - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Adds a new story to the channel and network singleton.
+
Arguments:
+
+
M - The story to add.
+
can_modify
Returns whether the given user can edit or delete this channel.
+
Arguments:
+
+
user - The user
+
scanned_user - The user's identifying information on the newscaster
+
can_publish
Returns whether the given user can publish new stories to this channel.
+
Arguments:
+
+
user - The user
+
scanned_user - The user's identifying information on the newscaster
+
clear
Clears the channel's information.
+
Discards all owned stories.
get_announce_text
Returns the text to be said by newscasters when announcing new news from a channel.
+
Arguments:
+
+
title - Optional. The headline to announce along with the channel's name. Typically the newest story's title.
+
\ No newline at end of file
diff --git a/datum/feed_message.html b/datum/feed_message.html
new file mode 100644
index 00000000000..386994c6bf0
--- /dev/null
+++ b/datum/feed_message.html
@@ -0,0 +1,2 @@
+/datum/feed_message - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The author's ckey (admins are watching you post WGW in the newscaster)
body
The textual contents of the story.
censor_flags
Flags that dictate the story should be censored.
img
The story's icon.
publish_time
The world.time at which the story was published.
title
The title of the story.
view_count
The number of views the story has.
Proc Details
clear
Clears the story's information.
+
Does not delete it from the owning channel.
\ No newline at end of file
diff --git a/datum/feed_network.html b/datum/feed_network.html
new file mode 100644
index 00000000000..cb1cf790e97
--- /dev/null
+++ b/datum/feed_network.html
@@ -0,0 +1,13 @@
+/datum/feed_network - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Feed Network
Singleton that contains all informations related to newscasters (channels, stories).
\ No newline at end of file
diff --git a/datum/feedback_variable.html b/datum/feedback_variable.html
new file mode 100644
index 00000000000..3cab496e395
--- /dev/null
+++ b/datum/feedback_variable.html
@@ -0,0 +1,2 @@
+/datum/feedback_variable - Space Station 13Space Station 13 - Modules - Types
feedback_variable
Datum to hold feedback data, which gets logged at round end
+
Holds all the information being logged
\ No newline at end of file
diff --git a/datum/flagged_book.html b/datum/flagged_book.html
new file mode 100644
index 00000000000..84b8f596fa4
--- /dev/null
+++ b/datum/flagged_book.html
@@ -0,0 +1 @@
+/datum/flagged_book - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/food_processor_process/mob.html b/datum/food_processor_process/mob.html
new file mode 100644
index 00000000000..86ddee56b0b
--- /dev/null
+++ b/datum/food_processor_process/mob.html
@@ -0,0 +1 @@
+/datum/food_processor_process/mob - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/datum/game_mode.html b/datum/game_mode.html
new file mode 100644
index 00000000000..46648291950
--- /dev/null
+++ b/datum/game_mode.html
@@ -0,0 +1,11 @@
+/datum/game_mode - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
This var is solely to track gamemodes to track suicides/cryoing/etc and doesnt declare this a "free for all" gamemode. This is for data tracking purposes only.
Returns how many traitors should be added to the round
Var Details
abductees
A list which contains the minds of all abductees
abductor_teams
How many abductor teams do we have
abductors
A list which contains the minds of all abductors
actual_abductor_teams
A list which contains the all the abductor teams
adepts
A list of all minds that are wizard adepts
apprentices
A list of all minds that are wizard apprentices
changelings
A list of all minds which have the changeling antag datum
cult_team
The cult team datum
ert
A list of all the minds that have the ERT special role
greyshirts
A list of all the greyshirt minds
head_revolutionaries
A list of all the minds of head revolutionaries
heretics
A list of all minds which have the heretic antag datum
implanted
An associative list with mindslave minds as keys and their master's minds as values.
mindflayers
A list of all minds which have the mindflayer antag datum
ninjas
A list of all minds that are ninjas
pre_changelings
A list containing references to the minds of soon-to-be changelings. This is seperate to avoid duplicate entries in the changelings list.
pre_mindflayers
A list containing references to the minds of soon-to-be mindflayers.
pre_traitors
A list containing references to the minds of soon-to-be traitors. This is seperate to avoid duplicate entries in the traitors list.
pre_vampires
list of minds of soon to be vampires
rev_team
The revololution team datum
revolutionaries
A list of all the minds of revolutionaries
single_antag_positions
Each item in this list can only be rolled once on average.
species_to_mindflayer
Species that will become mindflayers if they're picked, instead of the regular antagonist
superheroes
A list of all the minds with the superhero special role
supervillains
A list of all the minds with the supervillain special role
syndicates
A list of all the nuclear operatives' minds
tdm_gamemode
This var is solely to track gamemodes to track suicides/cryoing/etc and doesnt declare this a "free for all" gamemode. This is for data tracking purposes only.
traitors
A list of all minds which have the traitor antag datum.
uplifted_primitives
An associative list between a species and all the minds that are uplifted primitive of that species.
uplifted_teams
An associative list between the species of the team and the team's datum.
vampire_enthralled
A list of all minds which are thralled by a vampire
vampires
A list of all minds which have the vampire antag datum
wizards
A list of all minds which have the wizard special role
zombie_infected
A list of all minds that are infected with the zombie virus, but aren't zombies yet
zombies
A list of all minds that are zombies
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.
fill_antag_slots
DEPRECATED!
get_alive_players_for_role
DEPRECATED!
+Gets all alive players for a specific role. Disables offstation roles by default
get_end_of_round_antagonist_statistics
Gets the value of all end of round stats through auto_declare and returns them
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
traitors_to_add
Returns how many traitors should be added to the round
\ No newline at end of file
diff --git a/datum/game_mode/changeling.html b/datum/game_mode/changeling.html
new file mode 100644
index 00000000000..fd8c0397f27
--- /dev/null
+++ b/datum/game_mode/changeling.html
@@ -0,0 +1 @@
+/datum/game_mode/changeling - Space Station 13Space Station 13 - Modules - Types — Var Details
The total number of changelings allowed to be picked.
Var Details
changeling_amount
The total number of changelings allowed to be picked.
\ No newline at end of file
diff --git a/datum/game_mode/dynamic.html b/datum/game_mode/dynamic.html
new file mode 100644
index 00000000000..371f0c52d1b
--- /dev/null
+++ b/datum/game_mode/dynamic.html
@@ -0,0 +1 @@
+/datum/game_mode/dynamic - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Calculates the dynamic budget based on the number of players in the round
Var Details
antag_budget
How much budget is left after roundstart antagonists roll
dynamic_log
Log for what happens in a dynamic round
implied_rulesets
Implied rulesets that are in play
min_latespawn_budget
Minimum amount of budget required to start considering latespawn antags. 0 disables latespawn antags.
rulesets
Non-implied rulesets in play
Proc Details
calculate_budget
Calculates the dynamic budget based on the number of players in the round
\ No newline at end of file
diff --git a/datum/game_mode/traitor.html b/datum/game_mode/traitor.html
new file mode 100644
index 00000000000..93c6012f140
--- /dev/null
+++ b/datum/game_mode/traitor.html
@@ -0,0 +1 @@
+/datum/game_mode/traitor - Space Station 13Space Station 13 - Modules - Types — Var Details
How much the amount of players get divided by to determine the number of traitors.
traitors_possible
Hard limit on traitors if scaling is turned off.
\ No newline at end of file
diff --git a/datum/game_mode/trifecta.html b/datum/game_mode/trifecta.html
new file mode 100644
index 00000000000..ea8e22ad6bf
--- /dev/null
+++ b/datum/game_mode/trifecta.html
@@ -0,0 +1 @@
+/datum/game_mode/trifecta - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/game_mode/vampire.html b/datum/game_mode/vampire.html
new file mode 100644
index 00000000000..a05a333ac43
--- /dev/null
+++ b/datum/game_mode/vampire.html
@@ -0,0 +1 @@
+/datum/game_mode/vampire - Space Station 13Space Station 13 - Modules - Types — Var Details
If this gamemode should spawn less vampires than a usual vampire round, as a percentage of how many you want relative to the regular amount
Var Details
vampire_penalty
If this gamemode should spawn less vampires than a usual vampire round, as a percentage of how many you want relative to the regular amount
\ No newline at end of file
diff --git a/datum/game_mode/wizard/raginmages.html b/datum/game_mode/wizard/raginmages.html
new file mode 100644
index 00000000000..c257fa16d43
--- /dev/null
+++ b/datum/game_mode/wizard/raginmages.html
@@ -0,0 +1 @@
+/datum/game_mode/wizard/raginmages - Space Station 13Space Station 13 - Modules - Types — Var Details
Tracks a one-time restock of all magivends once we get a second wizard
Var Details
have_we_populated_magivends
Tracks a one-time restock of all magivends once we get a second wizard
\ No newline at end of file
diff --git a/datum/gas_mixture.html b/datum/gas_mixture.html
new file mode 100644
index 00000000000..2891c18fd82
--- /dev/null
+++ b/datum/gas_mixture.html
@@ -0,0 +1,21 @@
+/datum/gas_mixture - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Takes the amount of the gas you want to PP as an argument
+So I don't have to do some hacky switches/defines/magic strings
+eg:
+Tox_PP = get_partial_pressure(gas_mixture.toxins)
+O2_PP = get_partial_pressure(gas_mixture.oxygen)
Performs temperature sharing calculations (via conduction) between two gas_mixtures assuming only 1 boundary length
+Returns: new temperature of the sharer
How much fuel this gas mixture burnt last reaction.
innate_heat_capacity
Heat capacity intrinsic to the container of this gas mixture.
synchronized
Is this mixture currently synchronized with MILLA? Always true for non-bound mixtures.
volume
The volume this gas mixture fills.
Proc Details
archive
Update archived versions of variables. Returns: TRUE in all cases
boolean_remove
Only removes the gas if we have more than the amount
copy_from_turf
Copies all gas info from the turf into the gas list along with temperature
+Returns: TRUE if we are mutable, FALSE otherwise
get_breath_partial_pressure
Takes the amount of the gas you want to PP as an argument
+So I don't have to do some hacky switches/defines/magic strings
+eg:
+Tox_PP = get_partial_pressure(gas_mixture.toxins)
+O2_PP = get_partial_pressure(gas_mixture.oxygen)
get_true_breath_pressure
inverse
heat_capacity
joules per kelvin
merge
Merges all air from giver into self. Deletes giver. Returns: TRUE if we are mutable, FALSE otherwise
react
Performs various reactions such as combustion or fusion (LOL)
+Returns: TRUE if any reaction took place; FALSE otherwise
remove
Proportionally removes amount of gas from the gas_mixture.
+Returns: gas_mixture with the gases removed
remove_ratio
Proportionally removes amount of gas from the gas_mixture.
+Returns: gas_mixture with the gases removed
return_pressure
Calculate pressure in kilopascals
return_volume
Calculate volume in liters
set_dirty
Marks this gas mixture as changed from MILLA. Does nothing on non-bound mixtures.
share
Performs air sharing calculations between two gas_mixtures assuming only 1 boundary length
+Returns: amount of gas exchanged (+ if sharer received)
temperature_share
Performs temperature sharing calculations (via conduction) between two gas_mixtures assuming only 1 boundary length
+Returns: new temperature of the sharer
thermal_energy
Calculate thermal energy in joules
total_moles
Calculate moles
\ No newline at end of file
diff --git a/datum/gear.html b/datum/gear.html
new file mode 100644
index 00000000000..ce74d059d21
--- /dev/null
+++ b/datum/gear.html
@@ -0,0 +1 @@
+/datum/gear - Space Station 13Space Station 13 - Modules - Types — Var Details
Description of the item listing. If left blank will default to the description of the pathed item.
display_name
Displayed name of the item listing.
donator_tier
Patreon donator tier needed to select this item listing.
gear_tweaks
List of datums which will alter the item after it has been spawned. (NYI)
main_typepath
Set on empty category datums to skip them being added to the list. (/datum/gear/accessory, /datum/gear/suit/coat/job, etc.)
path
Typepath of the item.
slot
Slot to equip the item to.
sort_category
Loadout category of the item listing.
subtype_selection_cost
Does selecting a second item with the same main_typepath cost loadout points.
tweakdesc
Can this item's description be customized?
tweakname
Can this item's name be customized?
\ No newline at end of file
diff --git a/datum/gear_tweak.html b/datum/gear_tweak.html
new file mode 100644
index 00000000000..4aff6388adf
--- /dev/null
+++ b/datum/gear_tweak.html
@@ -0,0 +1 @@
+/datum/gear_tweak - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/hallucination_manager.html b/datum/hallucination_manager.html
new file mode 100644
index 00000000000..195284f873b
--- /dev/null
+++ b/datum/hallucination_manager.html
@@ -0,0 +1 @@
+/datum/hallucination_manager - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
A list with any images that we made separately from our hallucinations
initial_hallucination
The first hallucination that we spawn. Also doubles as a reference to our hallucination
owner
Person on who this hallucination is
trigger_time
How fast do we need to start our first trigger
trigger_timer
Reference to the timer that will do the first trigger
Proc Details
get_spawn_location
Returns a turf on where to spawn a hallucination
on_spawn
The proc that runs when our hallucination is first spawned
on_trigger
Trigger. By default will delete the manager
\ No newline at end of file
diff --git a/datum/hallucination_manager/waves.html b/datum/hallucination_manager/waves.html
new file mode 100644
index 00000000000..033ab23c686
--- /dev/null
+++ b/datum/hallucination_manager/waves.html
@@ -0,0 +1 @@
+/datum/hallucination_manager/waves - Space Station 13Space Station 13 - Modules - Types — Var Details
How many pixels each wave will be off in the y direction
Var Details
amount_spawned
How many wave filters the hallucination spawns.
orientation
If the filter will be sideways or vertical
phase_offset
Phase of wave, in periods
x_offset
How many pixels each wave will be off in the y direction
y_offset
How many pixels each wave will be off in the y direction
\ No newline at end of file
diff --git a/datum/hallucination_manager/xeno_pounce.html b/datum/hallucination_manager/xeno_pounce.html
new file mode 100644
index 00000000000..552d4ca3e00
--- /dev/null
+++ b/datum/hallucination_manager/xeno_pounce.html
@@ -0,0 +1 @@
+/datum/hallucination_manager/xeno_pounce - Space Station 13Space Station 13 - Modules - Types — Var Details
Hallucination - Xeno Pounce
An imaginary alien hunter pounces towards the target.
\ No newline at end of file
diff --git a/datum/handle_wrapping.html b/datum/handle_wrapping.html
new file mode 100644
index 00000000000..a09b9df6c35
--- /dev/null
+++ b/datum/handle_wrapping.html
@@ -0,0 +1 @@
+/datum/handle_wrapping - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/heretic_knowledge.html b/datum/heretic_knowledge.html
new file mode 100644
index 00000000000..cab9cde9547
--- /dev/null
+++ b/datum/heretic_knowledge.html
@@ -0,0 +1,92 @@
+/datum/heretic_knowledge - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Heretic Knowledge
The datums that allow heretics to progress and learn new spells and rituals.
+
Heretic Knowledge datums are not singletons - they are instantiated as they
+are given to heretics, and deleted if the heretic antagonist is removed.
The priority of the knowledge. Higher priority knowledge appear higher in the ritual list.
+Number itself is completely arbitrary. Does not need to be set for non-ritual knowledge.
Assoc list of [typepaths we need] to [amount needed].
+If set, this knowledge allows the heretic to do a ritual on a transmutation rune with the components set.
+If one of the items in the list is a list, it's treated as 'any of these items will work'
In case we want to override the default UI icon getter and plug in our own icon instead.
+if research_tree_icon_path is not null, research_tree_icon_state must also be specified or things may break
The abstract parent type of the knowledge, used in determine mutual exclusivity in some cases
banned_atom_types
If set, required_atoms checks for these exact types and doesn't allow them to be ingredients.
cost
Cost of knowledge in knowledge points
desc
Description of the knowledge, shown to the heretic. Describes what it unlocks / does.
gain_text
What's shown to the heretic when the knowledge is aquired
is_starting_knowledge
If this is considered starting knowledge, TRUE if yes
mind_spell
A spell we need to add to the mind vs the mob.
name
Name of the knowledge, shown to the heretic.
priority
The priority of the knowledge. Higher priority knowledge appear higher in the ritual list.
+Number itself is completely arbitrary. Does not need to be set for non-ritual knowledge.
required_atoms
Assoc list of [typepaths we need] to [amount needed].
+If set, this knowledge allows the heretic to do a ritual on a transmutation rune with the components set.
+If one of the items in the list is a list, it's treated as 'any of these items will work'
research_tree_icon_path
In case we want to override the default UI icon getter and plug in our own icon instead.
+if research_tree_icon_path is not null, research_tree_icon_state must also be specified or things may break
result_atoms
Paired with above. If set, the resulting spawned atoms upon ritual completion.
Proc Details
can_be_invoked
Determines if a heretic can actually attempt to invoke the knowledge as a ritual.
+By default, we can only invoke knowledge with rituals associated.
+
Return TRUE to have the ritual show up in the rituals list, FALSE otherwise.
cleanup_atoms
Called after on_finished_recipe returns TRUE
+and a ritual was successfully completed.
+
Goes through and cleans up (deletes)
+all atoms in the selected_atoms list.
+
Remove atoms from the selected_atoms
+(either in this proc or in on_finished_recipe)
+to NOT have certain atoms deleted on cleanup.
+
Arguments
+
+
selected_atoms - a list of all atoms we intend on destroying.
+
on_finished_recipe
Called whenever the knowledge's associated ritual is completed successfully.
+
Creates atoms from types in result_atoms.
+Override this if you want something else to happen.
+This CAN sleep, such as for summoning rituals which poll for ghosts.
+
Arguments
+
+
user - the mob who did the ritual
+
selected_atoms - an list of atoms chosen as a part of this ritual.
+
our_turf - the turf the ritual's occuring on
+
+
Returns: TRUE, if the ritual should cleanup afterwards, or FALSE, to avoid calling cleanup after.
on_gain
Called when the knowledge is applied to a mob.
+This can be called multiple times per heretic,
+in the case of bodyswap shenanigans.
+
Arguments
+
+
user - the heretic which we're applying things to
+
our_heretic - The antag datum of who gained us. This should never be null.
+
on_lose
Called when the knowledge is removed from a mob,
+either due to a heretic being de-heretic'd or bodyswap memery.
+
Arguments
+
+
user - the heretic which we're removing things from
+
our_heretic - The antag datum of who is losing us. This should never be null.
+
on_research
+
+
Called when the knowledge is first researched.
+
+
+
This is only ever called once per heretic.
+
+
+
Arguments
+
+
+
+
user - The heretic who researched something
+
+
+
+
+
our_heretic - The antag datum of who researched us. This should never be null.
+
+
+
parse_required_item
Parses specific items into a more readble form.
+Can be overriden by knoweldge subtypes.
recipe_snowflake_check
Special check for rituals.
+Called before any of the required atoms are checked.
+
If you are adding a more complex summoning,
+or something that requires a special check
+that parses through all the atoms,
+you should override this.
+
Arguments
+
+
user - the mob doing the ritual
+
atoms - a list of all atoms being checked in the ritual.
+
selected_atoms - an empty list(!) instance passed in by the ritual. You can add atoms to it in this proc.
+
our_turf - the turf the ritual's occuring on
+
+
Returns: TRUE, if the ritual will continue, or FALSE, if the ritual is skipped / cancelled
summon_ritual_mob
Creates the ritual mob and grabs a ghost for it
+
+
user - the mob doing the summoning
+
our_turf - where the summon is happening
+
mob_to_summon - either a mob instance or a mob typepath
+
\ No newline at end of file
diff --git a/datum/heretic_knowledge/blade_dance.html b/datum/heretic_knowledge/blade_dance.html
new file mode 100644
index 00000000000..44257dfc957
--- /dev/null
+++ b/datum/heretic_knowledge/blade_dance.html
@@ -0,0 +1,3 @@
+/datum/heretic_knowledge/blade_dance - Space Station 13Space Station 13 - Modules - Types — Var Details
Whether the counter-attack is ready or not.
+Used instead of cooldowns, so we can give feedback when it's ready again
Var Details
riposte_ready
Whether the counter-attack is ready or not.
+Used instead of cooldowns, so we can give feedback when it's ready again
\ No newline at end of file
diff --git a/datum/heretic_knowledge/blade_upgrade.html b/datum/heretic_knowledge/blade_upgrade.html
new file mode 100644
index 00000000000..2bdc300acee
--- /dev/null
+++ b/datum/heretic_knowledge/blade_upgrade.html
@@ -0,0 +1,9 @@
+/datum/heretic_knowledge/blade_upgrade - Space Station 13Space Station 13 - Modules - Types — Proc Details
blade_upgrade
A knowledge subtype for heretic knowledge that
+upgrades their sickly blade, either on melee or range.
+
A heretic can only learn one /blade_upgrade type knowledge.
Apply any ranged effects from hitting someone with our blade.
\ No newline at end of file
diff --git a/datum/heretic_knowledge/blade_upgrade/blade.html b/datum/heretic_knowledge/blade_upgrade/blade.html
new file mode 100644
index 00000000000..30734d5d6ad
--- /dev/null
+++ b/datum/heretic_knowledge/blade_upgrade/blade.html
@@ -0,0 +1 @@
+/datum/heretic_knowledge/blade_upgrade/blade - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Tries to infuse our held blade with our mansus grasp
Var Details
last_weapon_force
How much force was the last weapon we offhanded with? If it's different, we need to re-calculate the decrement
offand_force_decrement
How much force do we apply to the offhand?
Proc Details
on_grasp_cast
Tries to infuse our held blade with our mansus grasp
\ No newline at end of file
diff --git a/datum/heretic_knowledge/blade_upgrade/cosmic.html b/datum/heretic_knowledge/blade_upgrade/cosmic.html
new file mode 100644
index 00000000000..aaed9a21034
--- /dev/null
+++ b/datum/heretic_knowledge/blade_upgrade/cosmic.html
@@ -0,0 +1 @@
+/datum/heretic_knowledge/blade_upgrade/cosmic - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
\ No newline at end of file
diff --git a/datum/heretic_knowledge/blade_upgrade/flesh.html b/datum/heretic_knowledge/blade_upgrade/flesh.html
new file mode 100644
index 00000000000..678d5dad8b1
--- /dev/null
+++ b/datum/heretic_knowledge/blade_upgrade/flesh.html
@@ -0,0 +1 @@
+/datum/heretic_knowledge/blade_upgrade/flesh - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/datum/heretic_knowledge/cold_snap.html b/datum/heretic_knowledge/cold_snap.html
new file mode 100644
index 00000000000..ea2598dc9db
--- /dev/null
+++ b/datum/heretic_knowledge/cold_snap.html
@@ -0,0 +1 @@
+/datum/heretic_knowledge/cold_snap - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
How many life cycles have we failed? After 3, remove the buff
gain_traits
Traits we apply to become immune to the environment
Proc Details
check_environment
Checks if our traits should be active
\ No newline at end of file
diff --git a/datum/heretic_knowledge/cosmic_grasp.html b/datum/heretic_knowledge/cosmic_grasp.html
new file mode 100644
index 00000000000..62adfe78593
--- /dev/null
+++ b/datum/heretic_knowledge/cosmic_grasp.html
@@ -0,0 +1 @@
+/datum/heretic_knowledge/cosmic_grasp - Space Station 13Space Station 13 - Modules - Types — Proc Details
Aplies the effect of the mansus grasp when it hits a target.
Proc Details
on_mansus_grasp
Aplies the effect of the mansus grasp when it hits a target.
\ No newline at end of file
diff --git a/datum/heretic_knowledge/destroy_knives.html b/datum/heretic_knowledge/destroy_knives.html
new file mode 100644
index 00000000000..0f661ad810a
--- /dev/null
+++ b/datum/heretic_knowledge/destroy_knives.html
@@ -0,0 +1,2 @@
+/datum/heretic_knowledge/destroy_knives - Space Station 13Space Station 13 - Modules - Types — Var Details
destroy_knives
Allows the heretic to break all of their knives in the world.
+This requires a knowledge point and makes them go on knife cooldown.
Holds our knife knowledge so we dont have to search for it every time.
Var Details
knife_knowledge
Holds our knife knowledge so we dont have to search for it every time.
\ No newline at end of file
diff --git a/datum/heretic_knowledge/duel_stance.html b/datum/heretic_knowledge/duel_stance.html
new file mode 100644
index 00000000000..90467c8acbe
--- /dev/null
+++ b/datum/heretic_knowledge/duel_stance.html
@@ -0,0 +1 @@
+/datum/heretic_knowledge/duel_stance - Space Station 13Space Station 13 - Modules - Types — Var Details
Whether we're currently in duelist stance, gaining certain buffs (low health)
Var Details
in_duelist_stance
Whether we're currently in duelist stance, gaining certain buffs (low health)
\ No newline at end of file
diff --git a/datum/heretic_knowledge/feast_of_owls.html b/datum/heretic_knowledge/feast_of_owls.html
new file mode 100644
index 00000000000..f0d34baf0e5
--- /dev/null
+++ b/datum/heretic_knowledge/feast_of_owls.html
@@ -0,0 +1 @@
+/datum/heretic_knowledge/feast_of_owls - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/heretic_knowledge/hunt_and_sacrifice.html b/datum/heretic_knowledge/hunt_and_sacrifice.html
new file mode 100644
index 00000000000..cf8422de7eb
--- /dev/null
+++ b/datum/heretic_knowledge/hunt_and_sacrifice.html
@@ -0,0 +1,40 @@
+/datum/heretic_knowledge/hunt_and_sacrifice - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
hunt_and_sacrifice
Allows the heretic to sacrifice living heart targets.
"Fuck you" proc that gets called if the chain is interrupted at some points.
+Disembowels the [sac_target] and brutilizes their body. Throws some gibs around for good measure.
Whether we've generated a heretic sacrifice z-level yet, from any heretic.
heretic_mind
A weakref to the mind of our heretic.
num_targets_to_generate
How many targets do we generate?
return_timers
An assoc list of [uif] to [timers] - a list of all the timers of people in the shadow realm currently
target_blacklist
Lazylist of minds that we won't pick as targets.
Proc Details
after_helgrasp_ends
This proc is called from [proc/after_target_wakes] after the helgrasp runs out in the [sac_target].)
+
It gives them a message letting them know it's getting easier and they're almost free.
after_return_dead_target
This proc is called from [proc/return_target] if the target dies in the shadow realm.)
+
After teleporting the target back to the station (dead),
+it spawns a special red broken illusion on their spot, for style.
after_return_live_target
This proc is called from [proc/return_target] if the [sac_target] survives the shadow realm.)
+
Gives the sacrifice target some after effects upon ariving back to reality.
after_target_sleeps
This proc is called from [proc/begin_sacrifice] after the [sac_target] falls asleep), shortly after the sacrifice occurs.
+
Teleports the [sac_target] to the heretic room, asleep.
+If it fails to teleport, they will be disemboweled and stop the chain.
+
Arguments
+
+
sac_target - the mob being sacrificed.
+
destination - the spot they're being teleported to.
+
after_target_wakes
This proc is called from [proc/after_target_sleeps] when the [sac_target] should be waking up.)
+
Begins the survival minigame, featuring the sacrifice targets.
+Gives them Helgrasp, throwing cursed hands towards them that they must dodge to survive.
+Also gives them a status effect, Unholy Determination, to help them in this endeavor.
+
Then applies some miscellaneous effects.
begin_sacrifice
This proc is called from [proc/sacrifice_process] after the heretic successfully sacrifices [sac_target].)
+
Sets off a chain that sends the person sacrificed to the shadow realm to dodge hands to fight for survival.
+
Arguments
+
+
sac_target - the mob being sacrificed.
+
curse_organs
Apply a sinister curse to some of the target's organs as an incentive to leave us alone
disembowel_target
"Fuck you" proc that gets called if the chain is interrupted at some points.
+Disembowels the [sac_target] and brutilizes their body. Throws some gibs around for good measure.
generate_heretic_z_level
Generate the sacrifice z-level.
obtain_targets
Obtain a list of targets for the user to hunt down and sacrifice.
+Tries to get four targets (minds) with living human currents.
+
Returns FALSE if no targets are found, TRUE if the targets list was populated.
on_target_death
If they die in the shadow realm, they lost. Send them back.
on_target_escape
If they somehow cheese the shadow realm by teleporting out, they are disemboweled and killed.
return_target
This proc is called from [proc/begin_sacrifice] if the target survived the shadow realm), or COMSIG_MOB_DEATH if they don't.
+
Teleports [sac_target] back to a random safe turf on the station (or observer spawn if it fails to find a safe turf).
+Also clears their status effects, unregisters any signals associated with the shadow realm, and sends a message
+to the heretic who did the sacrificed about whether they survived, and where they ended up.
+
Arguments
+
+
sac_target - the mob being sacrificed
+
heretic - the heretic who originally did the sacrifice.
+
sacrifice_process
Begin the process of sacrificing the target.
+
Arguments
+
+
user - the mob doing the sacrifice (a heretic)
+
selected_atoms - a list of all atoms chosen. Should be (at least) one human.
+
our_turf - the turf the sacrifice is occurring on
+
\ No newline at end of file
diff --git a/datum/heretic_knowledge/key_ring.html b/datum/heretic_knowledge/key_ring.html
new file mode 100644
index 00000000000..6f525065b0d
--- /dev/null
+++ b/datum/heretic_knowledge/key_ring.html
@@ -0,0 +1 @@
+/datum/heretic_knowledge/key_ring - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/heretic_knowledge/knowledge_ritual.html b/datum/heretic_knowledge/knowledge_ritual.html
new file mode 100644
index 00000000000..671d4010d7a
--- /dev/null
+++ b/datum/heretic_knowledge/knowledge_ritual.html
@@ -0,0 +1 @@
+/datum/heretic_knowledge/knowledge_ritual - Space Station 13Space Station 13 - Modules - Types — Var Details
knowledge_ritual
A subtype of knowledge that generates random ritual components.
\ No newline at end of file
diff --git a/datum/heretic_knowledge/limited_amount.html b/datum/heretic_knowledge/limited_amount.html
new file mode 100644
index 00000000000..a037cc431ef
--- /dev/null
+++ b/datum/heretic_knowledge/limited_amount.html
@@ -0,0 +1,3 @@
+/datum/heretic_knowledge/limited_amount - Space Station 13Space Station 13 - Modules - Types — Var Details
limited_amount
A knowledge subtype for knowledge that can only
+have a limited amount of its resulting atoms
+created at once.
The limit to how many items we can create at once.
Var Details
created_items
A list of weakrefs to all items we've created.
limit
The limit to how many items we can create at once.
\ No newline at end of file
diff --git a/datum/heretic_knowledge/limited_amount/flesh_ghoul.html b/datum/heretic_knowledge/limited_amount/flesh_ghoul.html
new file mode 100644
index 00000000000..42fdf212108
--- /dev/null
+++ b/datum/heretic_knowledge/limited_amount/flesh_ghoul.html
@@ -0,0 +1 @@
+/datum/heretic_knowledge/limited_amount/flesh_ghoul - Space Station 13Space Station 13 - Modules - Types — Proc Details
Callback for the ghoul status effect - Tracks all of our ghouls and applies effects
Proc Details
apply_to_ghoul
Callback for the ghoul status effect - Tracks all of our ghouls and applies effects
make_ghoul
Makes [victim] into a ghoul.
remove_from_ghoul
Callback for the ghoul status effect - Tracks all of our ghouls and applies effects
\ No newline at end of file
diff --git a/datum/heretic_knowledge/limited_amount/flesh_grasp.html b/datum/heretic_knowledge/limited_amount/flesh_grasp.html
new file mode 100644
index 00000000000..ccf5fe26358
--- /dev/null
+++ b/datum/heretic_knowledge/limited_amount/flesh_grasp.html
@@ -0,0 +1 @@
+/datum/heretic_knowledge/limited_amount/flesh_grasp - Space Station 13Space Station 13 - Modules - Types — Proc Details
Callback for the ghoul status effect - Tracking all of our ghouls
Proc Details
apply_to_ghoul
Callback for the ghoul status effect - Tracking all of our ghouls
make_ghoul
Makes [victim] into a ghoul.
remove_from_ghoul
Callback for the ghoul status effect - Tracking all of our ghouls
\ No newline at end of file
diff --git a/datum/heretic_knowledge/limited_amount/risen_corpse.html b/datum/heretic_knowledge/limited_amount/risen_corpse.html
new file mode 100644
index 00000000000..dbdeaff5502
--- /dev/null
+++ b/datum/heretic_knowledge/limited_amount/risen_corpse.html
@@ -0,0 +1 @@
+/datum/heretic_knowledge/limited_amount/risen_corpse - Space Station 13Space Station 13 - Modules - Types — Proc Details
Callback for the ghoul status effect - cleaning up effects after the ghoul status is removed.
Proc Details
apply_to_risen
Callback for the ghoul status effect - what effects are applied to the ghoul.
make_risen
Make [victim] into a shattered risen ghoul.
remove_from_risen
Callback for the ghoul status effect - cleaning up effects after the ghoul status is removed.
\ No newline at end of file
diff --git a/datum/heretic_knowledge/limited_amount/starting.html b/datum/heretic_knowledge/limited_amount/starting.html
new file mode 100644
index 00000000000..c98516e85d1
--- /dev/null
+++ b/datum/heretic_knowledge/limited_amount/starting.html
@@ -0,0 +1,4 @@
+/datum/heretic_knowledge/limited_amount/starting - Space Station 13Space Station 13 - Modules - Types
starting
A knowledge subtype for limited_amount knowledge
+used for base knowledge (the ones that make blades)
+
A heretic can only learn one /starting type knowledge,
+and their ascension depends on whichever they chose.
\ No newline at end of file
diff --git a/datum/heretic_knowledge/living_heart.html b/datum/heretic_knowledge/living_heart.html
new file mode 100644
index 00000000000..4f42aae8b2f
--- /dev/null
+++ b/datum/heretic_knowledge/living_heart.html
@@ -0,0 +1,3 @@
+/datum/heretic_knowledge/living_heart - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
living_heart
The Living Heart heretic knowledge.
+
Gives the heretic a living heart.
+Also includes a ritual to turn their heart into a living heart.
Checks if the passed heart is a valid heart to become a living heart
Var Details
required_organ_type
The typepath of the organ type required for our heart.
Proc Details
is_valid_heart
Checks if the passed heart is a valid heart to become a living heart
\ No newline at end of file
diff --git a/datum/heretic_knowledge/mark.html b/datum/heretic_knowledge/mark.html
new file mode 100644
index 00000000000..096cd2fccbb
--- /dev/null
+++ b/datum/heretic_knowledge/mark.html
@@ -0,0 +1,11 @@
+/datum/heretic_knowledge/mark - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
mark
A knowledge subtype for heretic knowledge
+that applies a mark on use.
+
A heretic can only learn one /mark type knowledge.
Creates the mark status effect on our target.
+This proc handles the instatiate and the application of the station effect,
+and returns the /datum/status_effect instance that was made.
The status effect typepath we apply on people on mansus grasp.
Proc Details
create_mark
Creates the mark status effect on our target.
+This proc handles the instatiate and the application of the station effect,
+and returns the /datum/status_effect instance that was made.
+
Can be overriden to set or pass in additional vars of the status effect.
Whenever we cast mansus grasp on someone, apply our mark.
trigger_mark
Handles triggering the mark on the target.
+
If there is no mark, returns FALSE. Returns TRUE if a mark was triggered.
\ No newline at end of file
diff --git a/datum/heretic_knowledge/spell.html b/datum/heretic_knowledge/spell.html
new file mode 100644
index 00000000000..111eed8ce12
--- /dev/null
+++ b/datum/heretic_knowledge/spell.html
@@ -0,0 +1 @@
+/datum/heretic_knowledge/spell - Space Station 13Space Station 13 - Modules - Types — Var Details
spell
A knowledge subtype that grants the heretic a certain spell.
\ No newline at end of file
diff --git a/datum/heretic_knowledge/summon.html b/datum/heretic_knowledge/summon.html
new file mode 100644
index 00000000000..f1e616cda81
--- /dev/null
+++ b/datum/heretic_knowledge/summon.html
@@ -0,0 +1 @@
+/datum/heretic_knowledge/summon - Space Station 13Space Station 13 - Modules - Types — Var Details
summon
A knowledge subtype lets the heretic summon a monster with the ritual.
Typepath of a mob to summon when we finish the recipe.
Var Details
mob_to_summon
Typepath of a mob to summon when we finish the recipe.
\ No newline at end of file
diff --git a/datum/heretic_knowledge/ultimate.html b/datum/heretic_knowledge/ultimate.html
new file mode 100644
index 00000000000..9cb4c753288
--- /dev/null
+++ b/datum/heretic_knowledge/ultimate.html
@@ -0,0 +1,5 @@
+/datum/heretic_knowledge/ultimate - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
ultimate
The special final tier of knowledges that unlocks ASCENSION.
The text of the ascension announcement.
+%NAME% is replaced with the heretic's real name,
+and %SPOOKY% is replaced with output from [generate_heretic_text]
Checks if the passed human is a valid sacrifice for our ritual.
Var Details
announcement_sound
The sound that's played for the ascension announcement.
announcement_text
The text of the ascension announcement.
+%NAME% is replaced with the heretic's real name,
+and %SPOOKY% is replaced with output from [generate_heretic_text]
Proc Details
is_valid_sacrifice
Checks if the passed human is a valid sacrifice for our ritual.
\ No newline at end of file
diff --git a/datum/heretic_knowledge/ultimate/ash_final.html b/datum/heretic_knowledge/ultimate/ash_final.html
new file mode 100644
index 00000000000..baf976cfc16
--- /dev/null
+++ b/datum/heretic_knowledge/ultimate/ash_final.html
@@ -0,0 +1 @@
+/datum/heretic_knowledge/ultimate/ash_final - Space Station 13Space Station 13 - Modules - Types — Var Details
A static list of all traits we apply on ascension.
Var Details
traits_to_apply
A static list of all traits we apply on ascension.
\ No newline at end of file
diff --git a/datum/heretic_knowledge/ultimate/rust_final.html b/datum/heretic_knowledge/ultimate/rust_final.html
new file mode 100644
index 00000000000..ad93b5335f7
--- /dev/null
+++ b/datum/heretic_knowledge/ultimate/rust_final.html
@@ -0,0 +1,3 @@
+/datum/heretic_knowledge/ultimate/rust_final - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Gives our heretic ([source]) buffs if they stand on rust.
\ No newline at end of file
diff --git a/datum/heretic_knowledge/ultimate/void_final.html b/datum/heretic_knowledge/ultimate/void_final.html
new file mode 100644
index 00000000000..beff365019c
--- /dev/null
+++ b/datum/heretic_knowledge/ultimate/void_final.html
@@ -0,0 +1,5 @@
+/datum/heretic_knowledge/ultimate/void_final - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Any non-heretics nearby the heretic ([source])
+are constantly silenced and battered by the storm.
+
Also starts storms in any area that doesn't have one.
\ No newline at end of file
diff --git a/datum/heretic_knowledge_tree_column.html b/datum/heretic_knowledge_tree_column.html
new file mode 100644
index 00000000000..6f8c8f342e5
--- /dev/null
+++ b/datum/heretic_knowledge_tree_column.html
@@ -0,0 +1 @@
+/datum/heretic_knowledge_tree_column - Space Station 13Space Station 13 - Modules - Types — Var Details
Used to determine if this is a side path or a main path
neighbour_type_left
IDs od neighbours (to left and right)
route
Route that symbolizes what path this is
tier1
Tier1 knowledge (or knowledges)
tier2
Tier2 knowledge (or knowledges)
tier3
Tier3 knowledge (or knowledges)
ui_bgr
UI background
\ No newline at end of file
diff --git a/datum/heretic_knowledge_tree_column/main.html b/datum/heretic_knowledge_tree_column/main.html
new file mode 100644
index 00000000000..77f02486c35
--- /dev/null
+++ b/datum/heretic_knowledge_tree_column/main.html
@@ -0,0 +1 @@
+/datum/heretic_knowledge_tree_column/main - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/holocall.html b/datum/holocall.html
new file mode 100644
index 00000000000..bcd10b99b9d
--- /dev/null
+++ b/datum/holocall.html
@@ -0,0 +1 @@
+/datum/holocall - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Creates a holocall made by holo_caller from calling_pad to callees
Var Details
call_start_time
The world.time at the time the holocall is created
calling_holopad
The calling holopad
connected_holopad
The receiving holopad (may be null)
dialed_holopads
All holopads currently being dialed. Once answered, this will be cleared with [connected_holopad].
eye
Camera eye, once connected
hangup
The hangup action handler, for handling the hangup button displayed in the top left corner of the screen
hologram
The user's hologram, once connected
user
The calling user
Proc Details
Answer
Answers a call made to a holopad H which cannot be the calling holopad. Pads not in the call are ignored
Check
Checks the validity of a holocall and qdels itself if it's not. Returns TRUE if valid, FALSE otherwise
ConnectionFailure
Forcefully disconnects a holopad H from a call. Pads not in the call are ignored.
Disconnect
Gracefully disconnects a holopad H from a call. Pads not in the call are ignored. Notifies participants of the disconnection
New
Creates a holocall made by holo_caller from calling_pad to callees
\ No newline at end of file
diff --git a/datum/http_request.html b/datum/http_request.html
new file mode 100644
index 00000000000..76ebe4db21b
--- /dev/null
+++ b/datum/http_request.html
@@ -0,0 +1,20 @@
+/datum/http_request - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
HTTP Request
Holder datum for ingame HTTP requests
+
Holds information regarding to methods used, URL, and response,
+as well as job IDs and progress tracking for async requests
Callback for executing after async requests. Will be called with an argument of /datum/http_response as first argument
error_code
Job error code, if any
headers
Request headers being sent
id
The ID of the request (Only set if it is an async request)
in_progress
Is the request in progress? (Only set if it is an async request)
method
HTTP method used
response_obj
The response for the request
url
URL that the request is being sent to
Proc Details
begin_async
Async execution starter
+
Tells the request to start executing inside its own thread inside RUSTG
+Preferred over blocking, but also requires SShttp to be active
+As such, you cannot use this for events which may happen at roundstart (EG: IPIntel, BYOND account tracking, etc)
into_response
Response deserializer
+
Takes a HTTP request object, and converts it into a /datum/http_response
+The entire thing is wrapped in try/catch to ensure it doesnt break on invalid requests
+Can be called on async and blocking requests
is_complete
Async completion checker
+
Checks if an async request has been complete
+Has safety checks built in to compensate if you call this on blocking requests,
+or async requests which have already finished
prepare
Preparation handler
+
Call this with relevant parameters to form the request you want to make
+
Arguments:
+
+
_method - HTTP Method to use, see code/__DEFINES/rust.dm for a full list
+
_url - The URL to send the request to
+
_body - The body of the request, if applicable
+
_headers - Associative list of HTTP headers to send, if applicab;e
+
\ No newline at end of file
diff --git a/datum/http_response.html b/datum/http_response.html
new file mode 100644
index 00000000000..147614dd4e3
--- /dev/null
+++ b/datum/http_response.html
@@ -0,0 +1,3 @@
+/datum/http_response - Space Station 13Space Station 13 - Modules - Types — Var Details
HTTP Response
Holder datum for HTTP responses
+
Created from calling [/datum/http_request/proc/into_response()]
+Contains vars about the result of the response
\ No newline at end of file
diff --git a/datum/hud.html b/datum/hud.html
new file mode 100644
index 00000000000..d1619908cb7
--- /dev/null
+++ b/datum/hud.html
@@ -0,0 +1,9 @@
+/datum/hud - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
This is a silly proc used in hud code code to determine what icon and icon state we should be using
+for hud elements (such as action buttons) that don't have their own icon and icon state set.
Ensures all of our buttons are properly within the bounds of our client's view, moves them if they're not
Var Details
cult_actions
action group for cult spell actions
floating_actions
A list of action buttons which aren't owned by any action group, and are just floating somewhere on the hud.
hotkey_ui_hidden
This is to hide the buttons that can be used via hotkeys. (hotkeybuttons list of buttons)
hotkeybuttons
the buttons that can be used via hotkeys
hud_shown
Used for the HUD toggle (F12)
hud_version
Current displayed version of the HUD
inv_slots
atom/movable/screen/inventory objects, ordered by their slot ID.
inventory_shown
Whether or not their toggleable inventory (generally their contents on the left) is expanded
listed_actions
action group for expanded actions, the normal action set
palette_actions
the groups of actions, such as palette (previously normal) actions
plane_master_controllers
Assoc list of controller groups, associated with key string group name with value of the plane master controller ref
screentip_text
UI for screentips that appear when you mouse over things
toggleable_inventory
the screen objects which can be hidden (your human items on the left)
Proc Details
build_action_groups
Generates and fills new action groups with our mob's current actions
generate_landings
Generates visual landings for all groups that the button is not a memeber of
get_action_buttons_icons
This is a silly proc used in hud code code to determine what icon and icon state we should be using
+for hud elements (such as action buttons) that don't have their own icon and icon state set.
+
It returns a list, which is pretty much just a struct of info
hide_action
Removes the passed in action from its current position on the screen
hide_landings
Clears all currently visible landings
show_hud
Shows this hud's hud to some mob
+
Arguments
+
+
version - denotes which style should be displayed. blank or 0 means "next version"
+
viewmob - what mob to show the hud to. Can be this hud's mob, can be another mob, can be null (will use this hud's mob if so)
+
view_audit_buttons
Ensures all of our buttons are properly within the bounds of our client's view, moves them if they're not
\ No newline at end of file
diff --git a/datum/idle_behavior/idle_monkey.html b/datum/idle_behavior/idle_monkey.html
new file mode 100644
index 00000000000..037fd37df40
--- /dev/null
+++ b/datum/idle_behavior/idle_monkey.html
@@ -0,0 +1 @@
+/datum/idle_behavior/idle_monkey - Space Station 13Space Station 13 - Modules - Types — Var Details
Emotes that will be played rarely during idle behavior.
Var Details
common_emotes
Emotes that will be played commonly during idle behavior.
rare_emotes
Emotes that will be played rarely during idle behavior.
\ No newline at end of file
diff --git a/datum/idle_behavior/idle_random_walk.html b/datum/idle_behavior/idle_random_walk.html
new file mode 100644
index 00000000000..bd8279c4b4c
--- /dev/null
+++ b/datum/idle_behavior/idle_random_walk.html
@@ -0,0 +1 @@
+/datum/idle_behavior/idle_random_walk - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/input_data.html b/datum/input_data.html
new file mode 100644
index 00000000000..60c96408b10
--- /dev/null
+++ b/datum/input_data.html
@@ -0,0 +1 @@
+/datum/input_data - Space Station 13Space Station 13 - Modules - Types — Var Details
Bitflags of the direction the client wishes to move. Updated instantaneously.
desired_move_dir_add
Bitflags of the buffered direction the client wishes to move. Reset on client/Move().
desired_move_dir_sub
Bitflags of the buffered direction the client wishes not to move. Reset on client/Move().
key_combos_held
Associative list of currently held key combos.
keys_held
Associative list of currently held keys. Format: keys_held[key], associated value is world.time where key was pressed.
move_lock
Whether the movement should be locked in place.
\ No newline at end of file
diff --git a/datum/instrument.html b/datum/instrument.html
new file mode 100644
index 00000000000..b52019491d3
--- /dev/null
+++ b/datum/instrument.html
@@ -0,0 +1,5 @@
+/datum/instrument - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Instrument Datums
Instrument datums hold the data for any given instrument, as well as data on how to play it and what bounds there are to playing it.
+
The datums themselves are kept in SSinstruments in a list by their unique ID. The reason it uses ID instead of typepath is to support the runtime creation of instruments.
+Since songs cache them while playing, there isn't realistic issues regarding performance from accessing.
Write here however many samples, follow this syntax: "%note num%"='%sample file%' eg. "27"='synthesizer/e2.ogg'. Key must never be lower than 0 and higher than 127
Volume multiplier. Synthesized instruments are quite loud and I don't like to cut off potential detail via editing. (someone correct me if this isn't a thing)
For synthesized instruments, this is how the instrument generates the "keys" that a /datum/song uses to play notes.
+Calculating them on the fly would be unperformant, so we do it during init and keep it all cached in a list.
Uniquely identifies this instrument so runtime changes are possible as opposed to paths. If this is unset, things will use path instead.
instrument_flags
See __DEFINES/flags/instruments.dm
legacy_instrument_ext
For legacy instruments, our file extension
legacy_instrument_path
For legacy instruments, the path to our notes
name
Name of the instrument
real_samples
Write here however many samples, follow this syntax: "%note num%"='%sample file%' eg. "27"='synthesizer/e2.ogg'. Key must never be lower than 0 and higher than 127
samples
assoc list key = /datum/instrument_key. do not fill this yourself!
songs_using
What songs are using us
volume_multiplier
Volume multiplier. Synthesized instruments are quite loud and I don't like to cut off potential detail via editing. (someone correct me if this isn't a thing)
Proc Details
Initialize
Initializes the instrument, calculating its samples if necessary.
calculate_samples
For synthesized instruments, this is how the instrument generates the "keys" that a /datum/song uses to play notes.
+Calculating them on the fly would be unperformant, so we do it during init and keep it all cached in a list.
is_ready
Checks if this instrument is ready to play.
\ No newline at end of file
diff --git a/datum/instrument_key.html b/datum/instrument_key.html
new file mode 100644
index 00000000000..ceb8f3a72ee
--- /dev/null
+++ b/datum/instrument_key.html
@@ -0,0 +1,2 @@
+/datum/instrument_key - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
instrument_key
Instrument key datums contain everything needed to know how to play a specific
+note of an instrument.*
Deviation up/down from the pivot point that uses its sample. Used to calculate frequency.
frequency
The frequency to play the sample to get our desired note.
key
The numerical key of what this is, from 1 to 127 on a standard piano keyboard.
sample
The actual sample file that will be loaded when playing.
Proc Details
calculate
Calculates and stores our deviation.
\ No newline at end of file
diff --git a/datum/ipintel.html b/datum/ipintel.html
new file mode 100644
index 00000000000..ad238867941
--- /dev/null
+++ b/datum/ipintel.html
@@ -0,0 +1 @@
+/datum/ipintel - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ipintel_manager.html b/datum/ipintel_manager.html
new file mode 100644
index 00000000000..1636606d8d9
--- /dev/null
+++ b/datum/ipintel_manager.html
@@ -0,0 +1,56 @@
+/datum/ipintel_manager - Space Station 13Space Station 13 - Modules - Types — Proc Details
Adds a ckey to the VPN whitelist. Asks the admin to also provide a link to their request.
+
Arguments:
+
+
target_ckey - The ckey to whitelist
+
vpn_whitelist_check
VPN whitelist checker
+
Checks if a ckey is whitelisted to be using a VPN against the DB
+
Arguments:
+
+
target_ckey - The ckey to check
+
vpn_whitelist_panel
VPN whitelist panel
+
Doesnt actually open a panel, this is just a verb to handle the rest of the whitelist operations
+
Arguments:
+
+
target_ckey - The ckey to add/remove
+
vpn_whitelist_remove
VPN whitelist remover
+
Removes a ckey from the VPN whitelist. Pretty simple.
+
Arguments:
+
+
target_ckey - The ckey to remove
+
\ No newline at end of file
diff --git a/datum/job.html b/datum/job.html
new file mode 100644
index 00000000000..b8e022fec40
--- /dev/null
+++ b/datum/job.html
@@ -0,0 +1 @@
+/datum/job - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Returns true if the character has amputated limbs when their selected job doesn't allow it
Var Details
access
Job access. A list of constants from access_defines.dm.
blacklisted_disabilities
Cannot pick this job if the character has these disabilities
department_account_access
Can this role access its department money account?
department_flag
Department(s) Bitflag, used for Databse entries - DO NOT JUST EDIT THESE
department_head
list of the names of departments heads (as strings)
description
A description to be shown when set to high priority
difficulty
How mechanically difficult this job is, shown on the job selection screen
flag
Job Bitflag, used for Database entries - DO NOT JUST EDIT THESE
has_bank_account
Does this job get a bank account?
important_information
Text which is shown to someone in BIG BOLG RED when they spawn. Use for critically important stuff that could make/break a round
job_banned_gamemode
Boolean detailing if this job has been banned because of a gamemode restriction i.e. The revolution has won, no more command
job_department_flags
Flags for identifying by department, because we need other shit that isnt for the database
job_departments
List of the department(s) this job is a part of
missing_limbs_allowed
If this job could have any amputated limbs
required_objectives
Job Objectives that crew with this job will have a roundstart
skeleton_access
Extra job access when the number of crew is below the skeleton crew threshold.
standard_paycheck
Standard paycheck amount for this job
Proc Details
barred_by_disability
Returns true if the character has a disability the selected job doesn't allow
barred_by_missing_limbs
Returns true if the character has amputated limbs when their selected job doesn't allow it
\ No newline at end of file
diff --git a/datum/job_ban.html b/datum/job_ban.html
new file mode 100644
index 00000000000..bae5baf2934
--- /dev/null
+++ b/datum/job_ban.html
@@ -0,0 +1 @@
+/datum/job_ban - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/job_ban_holder.html b/datum/job_ban_holder.html
new file mode 100644
index 00000000000..af3679a6c05
--- /dev/null
+++ b/datum/job_ban_holder.html
@@ -0,0 +1 @@
+/datum/job_ban_holder - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/job_candidate.html b/datum/job_candidate.html
new file mode 100644
index 00000000000..6e4a7b47e35
--- /dev/null
+++ b/datum/job_candidate.html
@@ -0,0 +1,24 @@
+/datum/job_candidate - Space Station 13Space Station 13 - Modules - Types — Var Details
job_candidate
A datum representing all the information needed to perform roundstart job
+selection, without actually needing clients. This allows for the creation
+of fake candidates, allowing testing of the role selection system independent
+of the number of actual players.
The character being considered for assignment. Is a default character
+save but can have player characters loaded into it via
+[/datum/job_candidate/proc/load_from_player].
What, if any, special/antag role has been assigned to the candidate
+ahead of job selection.
Var Details
account_age_in_days
The account age in days.
active_character
The character being considered for assignment. Is a default character
+save but can have player characters loaded into it via
+[/datum/job_candidate/proc/load_from_player].
The name of the assigned job, once one has been assigned.
be_special
The list of special roles the candidate has enabled.
exp
A query parameterized list of jobs to hours played.
failed_head_antag_roll_
Whether this candidate failed a head roll as an antag.
is_admin
Whether or not the player represented by the candidate is an admin.
is_guest_key
Whether or not the player represented by the candidate is logged in on a
+guest account.
jbh
The jobbans of the current player or simulated candidate.
latejoin
Whether or not the candidate is a late join candidate, as opposed to a
+roundstart one.
real_ckey
The player's ckey, if the candidate is representing a real player.
restricted_roles
The jobs that the candidate cannot play, usually populated as a result
+of the candidate being assigned a special/antag role.
return_to_lobby
Whether or not the player is being returned to the lobby due to a failed
+job selection.
special_role
What, if any, special/antag role has been assigned to the candidate
+ahead of job selection.
\ No newline at end of file
diff --git a/datum/job_objective.html b/datum/job_objective.html
new file mode 100644
index 00000000000..9ec9d90b958
--- /dev/null
+++ b/datum/job_objective.html
@@ -0,0 +1 @@
+/datum/job_objective - Space Station 13Space Station 13 - Modules - Types — Var Details
how many credits are awarded upon completion of job objective
description
short description of what the objective entails, should include how to complete the objective if not immediately clear
gives_payout
does this objective give out monetary rewards upon completion?
objective_name
Fluff name of the objective
owner
Who owns the objective
owner_account
Which money account this objective is tied to, makes life easier during payout (signficantly)
payout_given
Has the owner been rewarded yet?
\ No newline at end of file
diff --git a/datum/job_objective/scan_organs.html b/datum/job_objective/scan_organs.html
new file mode 100644
index 00000000000..cd7553cc9f9
--- /dev/null
+++ b/datum/job_objective/scan_organs.html
@@ -0,0 +1 @@
+/datum/job_objective/scan_organs - Space Station 13Space Station 13 - Modules - Types — Var Details
How many organs should be scanned to complete this goal
Var Details
amount_to_scan
How many organs should be scanned to complete this goal
\ No newline at end of file
diff --git a/datum/job_selector.html b/datum/job_selector.html
new file mode 100644
index 00000000000..c4b8264223a
--- /dev/null
+++ b/datum/job_selector.html
@@ -0,0 +1,9 @@
+/datum/job_selector - Space Station 13Space Station 13 - Modules - Types — Proc Details
This proc is called at the start of the level loop
+of assign_all_roles() and will cause head jobs to be
+checked before any other jobs of the same level.
This proc is called before the level loop of assign_all_roles() and will try
+to select a head, ignoring ALL non-head preferences for every level until it
+locates a head or runs out of levels to check
Convenience proc for handling a single latejoin player
Proc Details
assign_all_roles
Fills var "assigned_role" for all ready players.
check_command_positions
This proc is called at the start of the level loop
+of assign_all_roles() and will cause head jobs to be
+checked before any other jobs of the same level.
fill_head_position
This proc is called before the level loop of assign_all_roles() and will try
+to select a head, ignoring ALL non-head preferences for every level until it
+locates a head or runs out of levels to check
latejoin_assign
Convenience proc for handling a single latejoin player
\ No newline at end of file
diff --git a/datum/jps_node.html b/datum/jps_node.html
new file mode 100644
index 00000000000..b96f883d4c0
--- /dev/null
+++ b/datum/jps_node.html
@@ -0,0 +1 @@
+/datum/jps_node - Space Station 13Space Station 13 - Modules - Types — Var Details
jps_node
The JPS Node datum represents a turf that we find interesting enough to add to the open list and possibly search for new tiles from
How many steps it's taken to get here from the start (currently pulling double duty as steps taken & cost to get here, since all moves incl diagonals cost 1 rn)
The A* node weight (f_value = number_of_tiles + heuristic)
heuristic
The A* node heuristic (a rough estimate of how far we are from the goal)
jumps
How many steps it took to get here from the last node
node_goal
Nodes store the endgoal so they can process their heuristic without a reference to the pathfind datum
number_tiles
How many steps it's taken to get here from the start (currently pulling double duty as steps taken & cost to get here, since all moves incl diagonals cost 1 rn)
previous_node
The node we just came from
tile
The turf associated with this node
\ No newline at end of file
diff --git a/datum/keybinding.html b/datum/keybinding.html
new file mode 100644
index 00000000000..781c5e834ad
--- /dev/null
+++ b/datum/keybinding.html
@@ -0,0 +1,26 @@
+/datum/keybinding - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Called on keybind press to determine looping behaviour.
+If TRUE is returned, the client will be added to SSinput's processing loop. Use VERY sparingly.
Returns whether the keybinding can be pressed by the client's current mob.
+
Arguments:
+
+
C - The client.
+
M - The client's mob.
+
down
Called when the client presses the keybind.
+
Arguments:
+
+
C - The client.
+
should_start_looping
Called on keybind press to determine looping behaviour.
+If TRUE is returned, the client will be added to SSinput's processing loop. Use VERY sparingly.
+
Arguments:
+
+
C - The client.
+
should_stop_looping
Called on keybind release to determine looping behaviour.
+If TRUE is returned, the client will be removed from SSinput's processing loop.
+
Arguments:
+
+
C - The client.
+
up
Called when the client releases the keybind.
+
Arguments:
+
+
C - The client.
+
\ No newline at end of file
diff --git a/datum/keybinding/admin.html b/datum/keybinding/admin.html
new file mode 100644
index 00000000000..f7fa7504e9b
--- /dev/null
+++ b/datum/keybinding/admin.html
@@ -0,0 +1 @@
+/datum/keybinding/admin - Space Station 13Space Station 13 - Modules - Types — Var Details
The rights to use with [/proc/check_rights] if any
Var Details
rights
The rights to use with [/proc/check_rights] if any
\ No newline at end of file
diff --git a/datum/keybinding/carbon/intent.html b/datum/keybinding/carbon/intent.html
new file mode 100644
index 00000000000..973e9eaf00e
--- /dev/null
+++ b/datum/keybinding/carbon/intent.html
@@ -0,0 +1 @@
+/datum/keybinding/carbon/intent - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/keybinding/carbon/intent/hold.html b/datum/keybinding/carbon/intent/hold.html
new file mode 100644
index 00000000000..edcf5cbc0c4
--- /dev/null
+++ b/datum/keybinding/carbon/intent/hold.html
@@ -0,0 +1 @@
+/datum/keybinding/carbon/intent/hold - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/keybinding/client/communication.html b/datum/keybinding/client/communication.html
new file mode 100644
index 00000000000..2ca6be41512
--- /dev/null
+++ b/datum/keybinding/client/communication.html
@@ -0,0 +1 @@
+/datum/keybinding/client/communication - Space Station 13Space Station 13 - Modules - Types — Var Details
Used to store special rights if required by a keybind, such as R_ADMIN
Var Details
mute_category
Used to map muted categories to channels
required_rights
Used to store special rights if required by a keybind, such as R_ADMIN
\ No newline at end of file
diff --git a/datum/keybinding/mob/face_dir.html b/datum/keybinding/mob/face_dir.html
new file mode 100644
index 00000000000..ba8dd738d98
--- /dev/null
+++ b/datum/keybinding/mob/face_dir.html
@@ -0,0 +1 @@
+/datum/keybinding/mob/face_dir - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/keybinding/movement.html b/datum/keybinding/movement.html
new file mode 100644
index 00000000000..ef7f15ccd0b
--- /dev/null
+++ b/datum/keybinding/movement.html
@@ -0,0 +1 @@
+/datum/keybinding/movement - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/keybinding/robot/module.html b/datum/keybinding/robot/module.html
new file mode 100644
index 00000000000..46f3acb8b09
--- /dev/null
+++ b/datum/keybinding/robot/module.html
@@ -0,0 +1 @@
+/datum/keybinding/robot/module - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/language.html b/datum/language.html
new file mode 100644
index 00000000000..ef800881b87
--- /dev/null
+++ b/datum/language.html
@@ -0,0 +1 @@
+/datum/language - Space Station 13Space Station 13 - Modules - Types — Var Details
Do we want to override the word-join character for scrambled text? If null, defaults to " " or ". "
Var Details
join_override
Do we want to override the word-join character for scrambled text? If null, defaults to " " or ". "
\ No newline at end of file
diff --git a/datum/lavaland_theme.html b/datum/lavaland_theme.html
new file mode 100644
index 00000000000..4f456667688
--- /dev/null
+++ b/datum/lavaland_theme.html
@@ -0,0 +1,3 @@
+/datum/lavaland_theme - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
This proc should do all theme specific thing.
+Now it only generates rivers, but it can do all stuff you desire.
Var Details
name
Name of lavaland theme
planet_icon_state
Icon state of planet present on background of station Z-level
primary_turf_type
Typepath of turf the /turf/simulated/floor/lava/mapping_lava will be changed to on Late Initialization
primary_turf_type_icon
Icon for glass floors
Proc Details
setup
This proc should do all theme specific thing.
+Now it only generates rivers, but it can do all stuff you desire.
\ No newline at end of file
diff --git a/datum/library_catalog.html b/datum/library_catalog.html
new file mode 100644
index 00000000000..00f72275657
--- /dev/null
+++ b/datum/library_catalog.html
@@ -0,0 +1 @@
+/datum/library_catalog - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
External proc that Returns a report library_category datum that matches the provided cat_id
Var Details
books
List of all programmatic books, automatically generated upon New()
categories
List of all book categories, automatically generated upon New()
flagged_books
Lists of all reported books in the current round
report_types
List of all report categories, automatically generated upon New()
Proc Details
get_book_category_by_id
External proc that Returns a book library_category datum that matches the provided cat_id
get_programmatic_book_by_id
External proc that Returns a report programmaticbook datum that matches the provided bookid
get_report_category_by_id
External proc that Returns a report library_category datum that matches the provided cat_id
\ No newline at end of file
diff --git a/datum/light_source.html b/datum/light_source.html
new file mode 100644
index 00000000000..6991b4537a7
--- /dev/null
+++ b/datum/light_source.html
@@ -0,0 +1 @@
+/datum/light_source - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
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 queued 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 above.
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
remove_lum
This is the define used to calculate falloff.
\ No newline at end of file
diff --git a/datum/lighting_corner.html b/datum/lighting_corner.html
new file mode 100644
index 00000000000..5b53eee0fe6
--- /dev/null
+++ b/datum/lighting_corner.html
@@ -0,0 +1 @@
+/datum/lighting_corner - Space Station 13Space Station 13 - Modules - Types — Var Details
whether we are to be added to SSlighting's corners_queue list for an update
Var Details
affecting
Light sources affecting us.
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
\ No newline at end of file
diff --git a/datum/lighting_object.html b/datum/lighting_object.html
new file mode 100644
index 00000000000..4f4c2fbb452
--- /dev/null
+++ b/datum/lighting_object.html
@@ -0,0 +1 @@
+/datum/lighting_object - Space Station 13Space Station 13 - Modules - Types — Var Details
whether 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
\ No newline at end of file
diff --git a/datum/local_powernet.html b/datum/local_powernet.html
new file mode 100644
index 00000000000..1959385a825
--- /dev/null
+++ b/datum/local_powernet.html
@@ -0,0 +1,6 @@
+/datum/local_powernet - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
local_powernet
Manages all power related mechanics for a single /area
+Machines in areas will directly register to this datum in order to receive power
+
Machine/Turf/Item -> Local Powernet -> APC -> Terminal -> Wirenet
+
Non-machines cannot register to the local powernet and should instead listen for power change signals
Add active power usage to the given channel, returns FALSE is channel cannot be found or the channel does not have power to give
Var Details
active_consumption
The amount of total power consumed consumed in only this cycle
environment_consumption
The amount of power consumed by environment in this power cycle
environment_powered
Is the environment power channel on?
equipment_consumption
The amount of power consumed by equipment in this power cycle
equipment_powered
Is the equipment power channel on?
lighting_consumption
The amount of power consumed by lighting in this power cycle
lighting_powered
Is the lighting power channel on?
passive_environment_consumption
The amount of power consumed by environment in every power cycle
passive_equipment_consumption
The amount of power consumed by equipment in every power cycle
passive_lighting_consumption
The amount of power consumed by lighting in every power cycle
power_flags
Bit Flags indicating special behaviour on this powernet, always powered, never powered, etc
powernet_apc
The APC associated with this powernet
powernet_area
The area this local powernet is attached to
registered_machines
All machines registered to this local powernet, strictly typed to machines, everything else needs to register power change signals
Proc Details
adjust_static_power
Adjust static power for a specified channel, does not check to see if channel has power flowing into it
get_channel_usage
returns active + passive power of a channel, if the channel is not powered it returns 0 watts
get_total_usage
Returns the local powernets total power usage between all three of its channels, only includes usage on currently powered channels
handle_flicker
Handles flicker operations for apc processing, will flicker machines and lights in the powernet's area by random chance
has_power
checks to see if the given channel in this local powernet has power
power_change
power_change
+
Called when the area power status changes
+calls power change on all machines in the area, and sends the COMSIG_POWERNET_POWER_CHANGE signal.
register_machine
tethers a machine to this local powernet
set_power_channel
sets a power channel on or off and adjusts total power usage accordingly
unregister_machine
untethers a machine to this local powernet
use_active_power
Add active power usage to the given channel, returns FALSE is channel cannot be found or the channel does not have power to give
\ No newline at end of file
diff --git a/datum/log_viewer.html b/datum/log_viewer.html
new file mode 100644
index 00000000000..e3add49525d
--- /dev/null
+++ b/datum/log_viewer.html
@@ -0,0 +1,9 @@
+/datum/log_viewer - Space Station 13Space Station 13 - Modules - Types — Proc Details
Binary search like implementation to find the earliest log
+
Returns the index of the earliest log using the time_from value for the given list of logs.
+
It will return 0 if no log after time_from is found
+
get_latest_log_index
+
Binary search like implementation to find the latest log
+
Returns the index of the latest log using the time_to value (1 second is added to prevent rounding weirdness) for the given list of logs.
+
It will return 0 if no log before time_to + 10 is found
+
\ No newline at end of file
diff --git a/datum/looping_sound.html b/datum/looping_sound.html
new file mode 100644
index 00000000000..03bfc3249fe
--- /dev/null
+++ b/datum/looping_sound.html
@@ -0,0 +1 @@
+/datum/looping_sound - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/looping_sound/decreasing.html b/datum/looping_sound/decreasing.html
new file mode 100644
index 00000000000..55b2d250417
--- /dev/null
+++ b/datum/looping_sound/decreasing.html
@@ -0,0 +1 @@
+/datum/looping_sound/decreasing - Space Station 13Space Station 13 - Modules - Types — Var Details
decreasing
Looping sounds that decrease volume by a specified % each loop until it reaches a specified total % volume.
What volume level, as a % of original, to eventually decrease to
Var Details
decrease_by_amount
How much, as a % of original, to decrease the volume by each loop
decrease_to_amount
What volume level, as a % of original, to eventually decrease to
\ No newline at end of file
diff --git a/datum/map.html b/datum/map.html
new file mode 100644
index 00000000000..2e06ab730ae
--- /dev/null
+++ b/datum/map.html
@@ -0,0 +1,3 @@
+/datum/map - Space Station 13Space Station 13 - Modules - Types — Var Details
map
Map Datum
+
Datum which holds all of the information for maps ingame
+This is used for showing map information, as well as map loading
Sound to play at the start of the game, aka the welcoming sound
Var Details
fluff_name
Name of the map to be shown in the statpanel
map_path
Path to the map file
min_players_random
Minimum amount of players required for this map to be eligible in random map picks.
technical_name
Name to be used when using the map from a technical standpoint. Used in TGUI Nanomaps among other things.
voteable
Is this map voteable?
webmap_url
URL to the maps webmap
welcome_sound
Sound to play at the start of the game, aka the welcoming sound
\ No newline at end of file
diff --git a/datum/map_template.html b/datum/map_template.html
new file mode 100644
index 00000000000..037d9507580
--- /dev/null
+++ b/datum/map_template.html
@@ -0,0 +1 @@
+/datum/map_template - Space Station 13Space Station 13 - Modules - Types — Var Details
Do we exclude this from CI checks? If so, set this to the templates pathtype itself to avoid it getting passed down
Var Details
ci_exclude
Do we exclude this from CI checks? If so, set this to the templates pathtype itself to avoid it getting passed down
\ No newline at end of file
diff --git a/datum/map_template/ruin.html b/datum/map_template/ruin.html
new file mode 100644
index 00000000000..8fc3c618fd1
--- /dev/null
+++ b/datum/map_template/ruin.html
@@ -0,0 +1,5 @@
+/datum/map_template/ruin - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The cost of a ruin is the square root of the product of its dimensions.
+This encodes the size of the ruin relative to each other without the
+numbers getting ridiculous.
Var Details
megafauna_safe_range
Prevents megafauna spawning within a certain range of ruins.
never_spawn_on_the_same_level
If a ruin ID is in this list, this ruin will not spawn on the same level as that ruin.
Proc Details
get_cost
The cost of a ruin is the square root of the product of its dimensions.
+This encodes the size of the ruin relative to each other without the
+numbers getting ridiculous.
\ No newline at end of file
diff --git a/datum/martial_art.html b/datum/martial_art.html
new file mode 100644
index 00000000000..79dee2f01e3
--- /dev/null
+++ b/datum/martial_art.html
@@ -0,0 +1 @@
+/datum/martial_art - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Returns the martial art with the highest weight from all the ones someone knows.
Var Details
base
The permanent style.
can_horizontally_grab
Whether or not you can grab someone while horizontal with this Martial Art
can_parry
If the martial art allows parrying.
combo_timer
Stores the timer_id for the combo timeout timer
combos
What combos can the user do? List of combo types.
current_combos
What combos are currently (possibly) being performed.
deflection_chance
Chance to deflect projectiles while on throw mode.
has_explaination_verb
If the martial art has it's own explaination verb.
in_stance
If the user is preparing a martial arts stance.
no_baton
Set to TRUE to prevent users of this style from using stun batons (and stunprods)
no_baton_reason
Message displayed when someone uses a baton when its forbidden by a martial art
no_guns
Set to TRUE to prevent users of this style from using guns (sleeping carp, highlander). They can still pick them up, but not fire them.
no_guns_message
Message to tell the style user if they try and use a gun while no_guns = TRUE (DISHONORABRU!)
reroute_deflection
Can it reflect projectiles in a random direction?
weight
The priority of which martial art is picked from all the ones someone knows, the higher the number, the higher the priority.
Proc Details
get_highest_weight
Returns the martial art with the highest weight from all the ones someone knows.
\ No newline at end of file
diff --git a/datum/martial_art/muscle_implant.html b/datum/martial_art/muscle_implant.html
new file mode 100644
index 00000000000..6ec3d90610d
--- /dev/null
+++ b/datum/martial_art/muscle_implant.html
@@ -0,0 +1 @@
+/datum/martial_art/muscle_implant - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/martial_art/torque.html b/datum/martial_art/torque.html
new file mode 100644
index 00000000000..8f72f959609
--- /dev/null
+++ b/datum/martial_art/torque.html
@@ -0,0 +1 @@
+/datum/martial_art/torque - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/martial_combo.html b/datum/martial_combo.html
new file mode 100644
index 00000000000..a91403410ca
--- /dev/null
+++ b/datum/martial_combo.html
@@ -0,0 +1 @@
+/datum/martial_combo - Space Station 13Space Station 13 - Modules - Types — Var Details
How to do the combo. If null it'll auto generate it from the steps
combos_require_same_target
If you require to do the combo's on the same target
current_combo_target
Who is the target the combo is being executed on
current_step_index
What index to check
explaination_text
What does it do
name
Name used to explain the combo
steps
Which steps need to be performed
\ No newline at end of file
diff --git a/datum/milla_safe.html b/datum/milla_safe.html
new file mode 100644
index 00000000000..2ac4f520162
--- /dev/null
+++ b/datum/milla_safe.html
@@ -0,0 +1 @@
+/datum/milla_safe - Space Station 13Space Station 13 - Modules - Types — Proc Details
milla_safe
Create a subclass of this and implement on_run to manipulate tile air safely.
Used internally to check that we're running safely, but without breaking things worse if we aren't.
Proc Details
add_turf_air
Add air to a turf. Only use from on_run.
get_turf_air
Fetch the air for a turf. Only use from on_run.
invoke_async
Call this to make the subclass run when it's safe to do so. Args will be passed to on_run.
on_run
All subclasses should implement this.
private_unsafe_invoke
Do not call this yourself. This is what is called to run your code from a safe context.
set_turf_air
Completely replace the air for a turf. Only use from on_run.
soft_assert_safe
Used internally to check that we're running safely, but without breaking things worse if we aren't.
\ No newline at end of file
diff --git a/datum/milla_safe_must_sleep.html b/datum/milla_safe_must_sleep.html
new file mode 100644
index 00000000000..8d2d48c5d8e
--- /dev/null
+++ b/datum/milla_safe_must_sleep.html
@@ -0,0 +1 @@
+/datum/milla_safe_must_sleep - Space Station 13Space Station 13 - Modules - Types — Proc Details
milla_safe_must_sleep
Create a subclass of this and implement on_run to manipulate tile air safely. ONLY USE THIS VERSION IF YOU CAN'T AVOID SLEEPING; it will delay atmos ticks!
Used internally to check that we're running safely, but without breaking things worse if we aren't.
Proc Details
add_turf_air
Add air to a turf. Only use from on_run.
get_turf_air
Fetch the air for a turf. Only use from on_run.
invoke_async
Call this to make the subclass run when it's safe to do so. Args will be passed to on_run.
on_run
All subclasses should implement this.
private_unsafe_invoke
Do not call this yourself. This is what is called to run your code from a safe context.
set_turf_air
Completely replace the air for a turf. Only use from on_run.
soft_assert_safe
Used internally to check that we're running safely, but without breaking things worse if we aren't.
\ No newline at end of file
diff --git a/datum/mimic_form.html b/datum/mimic_form.html
new file mode 100644
index 00000000000..08fb4b4f8ab
--- /dev/null
+++ b/datum/mimic_form.html
@@ -0,0 +1 @@
+/datum/mimic_form - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/mind.html b/datum/mind.html
new file mode 100644
index 00000000000..d3f562e5ffb
--- /dev/null
+++ b/datum/mind.html
@@ -0,0 +1,16 @@
+/datum/mind - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Completely remove the given objective from the mind, and include antagdatums/teams if remove_from_everything is true
Var Details
antag_datums
A list of all the antagonist datums that the player is (does not include undatumized antags)
assigned_role
Assigned role is what job you're assigned to when you join the station.
destroyed_body_json
A serialized copy of this mind's body when it was destroyed, for admin respawn usage.
has_been_rev
Tracks if this mind has been a rev or not
job_datum
This is the the job datum you have
job_objectives
a list of objectives that a player with this job could complete for space credit rewards
original_mob_UID
The original mob's UID. Used for example to see if a silicon with antag status is actually malf. Or just an antag put in a borg
original_mob_name
The original mob's name. Used in Dchat messages
teams
A lazy list of all teams the player is part of but doesnt have an antag role for, (i.e. a custom admin team)
Proc Details
add_antag_datum
Create and/or add the datum_type_or_instance antag datum to the src mind.
+
Arguments:
+
+
antag_datum - an antag datum typepath or instance. If it's a typepath, it will create a new antag datum
+
datum/team/team - the antag team that the src mind should join, if any
+
add_mind_objective
Add an objective to the mind
get_all_objectives
Gets every objective this mind owns, including all of those from any antag datums and teams they have, and returns them as a list.
get_hijack_speed
This proc sets the hijack speed for a mob. If greater than zero, they can hijack. Outputs in seconds.
has_antag_datum
Returns an antag datum instance if the src mind has the specified datum_type. Returns null otherwise.
+
Arguments:
+
+
datum_type - an antag datum typepath
+
check_subtypes - TRUE if this proc will consider subtypes of datum_type as valid. FALSE if only the exact same type should be considered.
+
has_objectives
A quicker version of get_all_objectives() but only for seeing if they have any objectives at all
remove_all_antag_datums
Removes all antag datums from the src mind.
+
Use this over doing QDEL_LIST_CONTENTS(antag_datums).
remove_antag_datum
Remove the specified datum_type antag datum from the src mind.
+
Arguments:
+
+
datum_type - an antag datum typepath
+
remove_mind_objective
Completely remove the given objective from the mind, and include antagdatums/teams if remove_from_everything is true
\ No newline at end of file
diff --git a/datum/mindflayer_passive.html b/datum/mindflayer_passive.html
new file mode 100644
index 00000000000..d52a7ec1248
--- /dev/null
+++ b/datum/mindflayer_passive.html
@@ -0,0 +1 @@
+/datum/mindflayer_passive - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The base cost of an ability, used to calculate how much upgrades should cost.
category
If the passive is for a specific class, or FLAYER_CATEGORY_GENERAL if not
current_cost
How much it will cost to upgrade this passive.
flayer
The mindflayer datum we'll reference back to. Set in force_add_abillity
gain_text
The text shown to the player character when bought
level
The level of the passive, used for upgrading passives. Basic level is 1
owner
The mob who the passive affects, usually an IPC. Set in force_add_abillity
power_type
Uses a power type define, should be FLAYER_UNOBTAINABLE_POWER, FLAYER_PURCHASABLE_POWER, or FLAYER_INNATE_POWER
purchase_text
The text we want to show the player in the shop
should_process
Does this passive need to process
stage
If the passive only unlocks after the stages below it have been bought, for subclass passives
static_upgrade_increase
Do we increase the cost by a static amount? And by how much?
upgrade_info
A brief description of what the ability's upgrades do
upgrade_text
The text shown to the player character on upgrade
Proc Details
on_apply
This is where most passive's effects get applied
\ No newline at end of file
diff --git a/datum/mindflayer_passive/radio_jammer.html b/datum/mindflayer_passive/radio_jammer.html
new file mode 100644
index 00000000000..c56daeac7c4
--- /dev/null
+++ b/datum/mindflayer_passive/radio_jammer.html
@@ -0,0 +1 @@
+/datum/mindflayer_passive/radio_jammer - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/mindflayer_passive/torque_enhancer.html b/datum/mindflayer_passive/torque_enhancer.html
new file mode 100644
index 00000000000..3d38699fd47
--- /dev/null
+++ b/datum/mindflayer_passive/torque_enhancer.html
@@ -0,0 +1 @@
+/datum/mindflayer_passive/torque_enhancer - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/mindflayer_passive/ultimate_drain.html b/datum/mindflayer_passive/ultimate_drain.html
new file mode 100644
index 00000000000..fd33d46645e
--- /dev/null
+++ b/datum/mindflayer_passive/ultimate_drain.html
@@ -0,0 +1 @@
+/datum/mindflayer_passive/ultimate_drain - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/mod_link.html b/datum/mod_link.html
new file mode 100644
index 00000000000..91a15e36ff0
--- /dev/null
+++ b/datum/mod_link.html
@@ -0,0 +1 @@
+/datum/mod_link - Space Station 13Space Station 13 - Modules - Types — Var Details
mod_link
A MODlink datum, used to handle unique functions that will be used in the MODlink call.
A list of all overlays of the user, copied everytime they have an overlay change.
Var Details
can_call_callback
A callback that returns whether the MODlink can currently call.
delete_visual_callback
A callback that deletes the visuals of the MODlink.
frequency
The frequency of the MODlink. You can only call other MODlinks on the same frequency.
get_user_callback
A callback that returns the user of the MODlink.
get_visual_callback
A callback that receives the visuals of the other MODlink.
holder
The atom that holds the MODlink.
id
The unique ID of the MODlink.
link_call
A reference to the call between two MODlinks.
make_visual_callback
A callback that returns the visuals of the MODlink.
name
Generic name for multitool buffers.
visual
A reference to the visuals generated by the MODlink.
visual_overlays
A list of all overlays of the user, copied everytime they have an overlay change.
\ No newline at end of file
diff --git a/datum/mod_link_call.html b/datum/mod_link_call.html
new file mode 100644
index 00000000000..dde6341b176
--- /dev/null
+++ b/datum/mod_link_call.html
@@ -0,0 +1 @@
+/datum/mod_link_call - Space Station 13Space Station 13 - Modules - Types — Var Details
mod_link_call
A MODlink call datum, used to handle the call between two MODlinks.
\ No newline at end of file
diff --git a/datum/mod_theme.html b/datum/mod_theme.html
new file mode 100644
index 00000000000..9ac7ba8a509
--- /dev/null
+++ b/datum/mod_theme.html
@@ -0,0 +1 @@
+/datum/mod_theme - Space Station 13Space Station 13 - Modules - Types — Var Details
mod_theme
MODsuit theme, instanced once and then used by MODsuits to grab various statistics.
the actual armor object placed in a datum as I am tired and I just want this to work
atom_flags
Atom flags shared across the MOD parts.
charge_drain
How much battery power the MOD uses by just being on
complexity_max
How much modules can the MOD carry without malfunctioning.
default_skin
Default skin of the MOD.
desc
Description added to the MOD.
extended_desc
Extended description on examine_more
flag_2_flags
Flag_2 flags to apply to the modsuit parts.
inbuilt_modules
List of inbuilt modules. These are different from the pre-equipped suits, you should mainly use these for unremovable modules with 0 complexity.
max_heat_protection_temperature
Max heat protection shared across the MOD parts.
min_cold_protection_temperature
Max cold protection shared across the MOD parts.
name
Theme name for the MOD.
resistance_flags
Resistance flags shared across the MOD parts.
siemens_coefficient
Siemens shared across the MOD parts.
skin_modifiers
List of modifiers that we apply after applying new skin
skins
List of skins with their appropriate clothing flags.
slot_flags
The slot this mod theme fits on
slowdown_active
Slowdown of the MOD when active.
slowdown_inactive
Slowdown of the MOD when not active.
ui_theme
Theme used by the MOD TGUI.
\ No newline at end of file
diff --git a/datum/money_account.html b/datum/money_account.html
new file mode 100644
index 00000000000..8d5754e9026
--- /dev/null
+++ b/datum/money_account.html
@@ -0,0 +1 @@
+/datum/money_account - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
sets the credit balance to specified value, changing credit_balance should always be done through procs
Var Details
account_log
Tracking log of all actions on the account, for IC usage & can have entries deleted
account_name
Full name of the account, set at creation of the account
account_number
Unique Account Number Identifier for the account -Username
account_pin
4 digit pin password for accessing the money account -Password
account_type
Type of account this is
associated_nanobank_programs
The nanobank programs associated with this account, used for notifying crew members through PDA, this is a lazy list
credit_balance
How many space credits are in the account
database_holder
reference to parent account database, only used for GC
hidden_account_log
Tracking log of all actions on the account, used for admin logging and debugging
pay_check_bonuses
pay bonuses for the next pay period for this account, this is a lazy list
pay_check_deductions
pay deductions for the next pay period for this account, this is a lazy list
payday_amount
the amount this account receives every payday
security_level
Level of security on the money account
suspended
Bool - Is this account locked out from being used completely?
transfer_requests
The requests made to this money_account used for ATM and NanoBank credit transfers, this is a lazy list
Proc Details
deposit_credits
set proc for depositing money, changing credit_balance should always be done through procs
set_credits
sets the credit balance to specified value, changing credit_balance should always be done through procs
\ No newline at end of file
diff --git a/datum/money_account_database.html b/datum/money_account_database.html
new file mode 100644
index 00000000000..add198cd994
--- /dev/null
+++ b/datum/money_account_database.html
@@ -0,0 +1 @@
+/datum/money_account_database - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
takes in an account_numb and returns either an account if it locates one or null if it finds none
Var Details
database_logs
list of actions taken on the money account database, such as creating/deleting accounts
hidden_database_logs
Tracking log of all actions on the account databse, used for admin logging and debugging
online
Will the database permit actions on it? Useful for random events
user_accounts
list of money account datums for individual users
Proc Details
find_user_account
takes in an account_numb and returns either an account if it locates one or null if it finds none
\ No newline at end of file
diff --git a/datum/money_account_database/main_station.html b/datum/money_account_database/main_station.html
new file mode 100644
index 00000000000..173fe014f42
--- /dev/null
+++ b/datum/money_account_database/main_station.html
@@ -0,0 +1 @@
+/datum/money_account_database/main_station - Space Station 13Space Station 13 - Modules - Types — Var Details
list of money accounts for each department on station
Var Details
department_accounts
list of money accounts for each department on station
\ No newline at end of file
diff --git a/datum/move_loop.html b/datum/move_loop.html
new file mode 100644
index 00000000000..068668a2aa7
--- /dev/null
+++ b/datum/move_loop.html
@@ -0,0 +1,15 @@
+/datum/move_loop - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
move_loop
Template class of the movement datums, handles the timing portion of the loops
An extra reference we pass around
+It is on occasion useful to have a reference to some datum without storing it on the moving object
+Mostly comes up in high performance senarios where we care about things being singletons
+This feels horrible, but constantly making components seems worse
Exists as a helper so outside code can modify delay in a sane way
Var Details
controller
The subsystem we're processing on
delay
Delay between each move in deci-seconds
extra_info
An extra reference we pass around
+It is on occasion useful to have a reference to some datum without storing it on the moving object
+Mostly comes up in high performance senarios where we care about things being singletons
+This feels horrible, but constantly making components seems worse
flags
Bitfield of different things that affect how a loop operates, and other mechanics around it as well.
lifetime
Time till we stop processing in deci-seconds, defaults to forever
moving
The thing we're moving about
owner
The movement packet that owns us
priority
Defines how different move loops override each other. Higher numbers beat lower numbers
queued_time
The time we are CURRENTLY queued for processing
+Do not modify this directly
status
Status bitfield for what state the move loop is currently in
timer
The next time we should process
+Used primarially as a hint to be reasoned about by our [controller], and as the id of our bucket
Proc Details
compare_loops
check if this exact moveloop datum already exists (in terms of vars) so we can avoid creating a new one to overwrite the old duplicate
loop_started
Called when a loop is starting by a movement subsystem
loop_stopped
Called when a loop is stopped, doesn't stop the loop itself
move
Handles the actual move, overriden by children
+Returns FALSE if nothing happen, TRUE otherwise
pause_for
Pauses the move loop for some passed in period
+This functionally means shifting its timer up, and clearing it from its current bucket
pause_loop
Pause our loop untill restarted with resume_loop()
resume_loop
Resume our loop after being paused by pause_loop()
set_delay
Exists as a helper so outside code can modify delay in a sane way
\ No newline at end of file
diff --git a/datum/move_loop/has_target.html b/datum/move_loop/has_target.html
new file mode 100644
index 00000000000..5c621b94ddb
--- /dev/null
+++ b/datum/move_loop/has_target.html
@@ -0,0 +1 @@
+/datum/move_loop/has_target - Space Station 13Space Station 13 - Modules - Types — Var Details
The thing we're moving in relation to, either at or away from
Var Details
target
The thing we're moving in relation to, either at or away from
\ No newline at end of file
diff --git a/datum/move_loop/has_target/dist_bound.html b/datum/move_loop/has_target/dist_bound.html
new file mode 100644
index 00000000000..9f42187ac46
--- /dev/null
+++ b/datum/move_loop/has_target/dist_bound.html
@@ -0,0 +1 @@
+/datum/move_loop/has_target/dist_bound - Space Station 13Space Station 13 - Modules - Types — Proc Details
dist_bound
Base class of move_to and move_away, deals with the distance and target aspect of things
Returns FALSE if the movement should pause, TRUE otherwise
Proc Details
check_dist
Returns FALSE if the movement should pause, TRUE otherwise
\ No newline at end of file
diff --git a/datum/move_loop/has_target/jps.html b/datum/move_loop/has_target/jps.html
new file mode 100644
index 00000000000..6008d406038
--- /dev/null
+++ b/datum/move_loop/has_target/jps.html
@@ -0,0 +1 @@
+/datum/move_loop/has_target/jps - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
A list representing what access we have and what doors we can open.
avoid
A perticular turf to avoid
diagonal_handling
Whether we replace diagonal movements with cardinal movements or follow through with them
is_pathing
Bool used to determine if we're already making a path in JPS. this prevents us from re-pathing while we're already busy.
max_path_length
Max amount of steps to search
minimum_distance
Minimum distance to the target before path returns
movement_path
A list for the path we're currently following
on_finish_callbacks
Callbacks to invoke once we make a path
repath_cooldown
Cooldown for repathing, prevents spam
repath_delay
How often we're allowed to recalculate our path
simulated_only
Whether we consider turfs without atmos simulation (AKA do we want to ignore space)
skip_first
Should we skip the first step? This is the tile we're currently on, which breaks some things
Proc Details
on_finish_pathing
Called when a path has finished being created
recalculate_path
Tries to calculate a new path for this moveloop.
\ No newline at end of file
diff --git a/datum/move_loop/has_target/move_towards.html b/datum/move_loop/has_target/move_towards.html
new file mode 100644
index 00000000000..ce11bd8efe0
--- /dev/null
+++ b/datum/move_loop/has_target/move_towards.html
@@ -0,0 +1,5 @@
+/datum/move_loop/has_target/move_towards - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
move_towards
Used as a alternative to GLOB.move_manager.home_onto
Recalculates the angle we're moving at, so that we get a smooth movement line, rather than awkwardly bending from orthogonal to diagonal (or vice versa) at some point.
Var Details
home
Should we track our target, so we won't end up in the wrong place if it moves or if something knocks us off course?
x_speed
The speed at which we move along each axis, between -1 and 1
Proc Details
update_angle
Recalculates the angle we're moving at, so that we get a smooth movement line, rather than awkwardly bending from orthogonal to diagonal (or vice versa) at some point.
+
The way we set the angle is by adjusting the speed we move in each direction.
+We always move at full speed along the longer axis towards our target.
+For the other axis, we calculate the right speed to reach our target at the same time we did on the longer axis.
+The net result is that every time we move, we approach the target along the longer axis, but we only move along the shorter axis at regular intervals, creating as smooth a line as possible.
\ No newline at end of file
diff --git a/datum/move_loop/has_target/ventcrawl.html b/datum/move_loop/has_target/ventcrawl.html
new file mode 100644
index 00000000000..e41be7808f7
--- /dev/null
+++ b/datum/move_loop/has_target/ventcrawl.html
@@ -0,0 +1 @@
+/datum/move_loop/has_target/ventcrawl - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Bool used to determine if we're already making a path in JPS. this prevents us from re-pathing while we're already busy.
movement_path
A list for the path we're currently following
repath_cooldown
Cooldown for repathing, prevents spam
skip_first
Should we skip the first step? This is the tile we're currently on, which breaks some things
Proc Details
on_finish_pathing
Called when a path has finished being created
recalculate_path
Tries to calculate a new path for this moveloop.
\ No newline at end of file
diff --git a/datum/move_manager.html b/datum/move_manager.html
new file mode 100644
index 00000000000..93dafaf1b42
--- /dev/null
+++ b/datum/move_manager.html
@@ -0,0 +1,122 @@
+/datum/move_manager - Space Station 13Space Station 13 - Modules - Types — Proc Details
move_manager
Acts as a namespace for movement packet/type related procs
+
Exists to provide an in code implementation of movement looping
+Replaces things like walk() or walk_to(), among others
+
Because we're doing things in engine, we have a lot more control over how different operations are performed
+We also get more say in when things happen, so we can subject movements to the whims of the master controller
+Rather then using a fuck ton of cpu just moving mobs or meteors
+
The goal is to keep the loops themselves reasonably barebone, and implement more advanced behavior and control via the signals
+
This may be bypassed in cases where snowflakes are nessesary, or where performance is important. S not a hard and fast thing
+
Every atom can have a movement packet, which contains information and behavior about currently active loops, and queuing info
+Loops control how movement actually happens. So there's a "move in this direction" loop, a "move randomly" loop
+
You can find the logic for this control in this file
+
Specifics of how different loops operate can be found in the movement_types.dm file, alongside the add to loop helper procs that use them
Alternative to GLOB.move_manager.home_onto. Not reccomended, as it ends up putting a kink in the movement path if it's not directly along one of the 8 directions.
Used for getting to a vent in a connected pipeline when ventcrawling.
Proc Details
add_to_loop
Adds a movable thing to a movement subsystem. Returns TRUE if it all worked, FALSE if it failed somehow
freeze
Assigns a target to a move loop that immediately freezes for a set duration of time.
+
Returns TRUE if the loop sucessfully started, or FALSE if it failed
+
Arguments:
+moving - The atom we want to move
+halted_turf - The turf we want to freeze on. This should typically be the loc of moving.
+delay - How many deci-seconds to wait between fires. Defaults to the lowest value, 0.1
+timeout - Time in deci-seconds until the moveloop self expires. This should be considered extremely non-optional as it will completely stun out the movement loop forever if unset.
+subsystem - The movement subsystem to use. Defaults to SSmovement. Only one loop can exist for any one subsystem
+priority - Defines how different move loops override each other. Lower numbers beat higher numbers, equal defaults to what currently exists. Defaults to MOVEMENT_DEFAULT_PRIORITY
+flags - Set of bitflags that effect move loop behavior in some way. Check __DEFINES/movement_defines.dm
home_onto
Helper proc for homing onto something with move_towards
+
Returns TRUE if the loop sucessfully started, or FALSE if it failed
+
Arguments:
+moving - The atom we want to move
+chasing - The atom we want to move towards
+delay - How many deci-seconds to wait between fires. Defaults to the lowest value, 0.1
+home - Should we move towards the object at all times? Or launch towards them, but allow walls and such to take us off track. Defaults to FALSE
+timeout - Time in deci-seconds until the moveloop self expires. Defaults to INFINITY
+subsystem - The movement subsystem to use. Defaults to SSmovement. Only one loop can exist for any one subsystem
+priority - Defines how different move loops override each other. Lower numbers beat higher numbers, equal defaults to what currently exists. Defaults to MOVEMENT_DEFAULT_PRIORITY
+flags - Set of bitflags that effect move loop behavior in some way. Check __DEFINES/movement_defines.dm
jps_move
Used for following jps defined paths. The proc signature here's a bit long, I'm sorry
+
Returns TRUE if the loop sucessfully started, or FALSE if it failed
+
Arguments:
+moving - The atom we want to move
+chasing - The atom we want to move towards
+delay - How many deci-seconds to wait between fires. Defaults to the lowest value, 0.1
+repath_delay - How often we're allowed to recalculate our path
+max_path_length - The maximum number of steps we can take in a given path to search (default: 30, 0 = infinite)
+miminum_distance - Minimum distance to the target before path returns, could be used to get near a target, but not right to it - for an AI mob with a gun, for example
+access - A list representing what access we have and what doors we can open
+simulated_only - Whether we consider turfs without atmos simulation (AKA do we want to ignore space)
+avoid - If we want to avoid a specific turf, like if we're a mulebot who already got blocked by some turf
+skip_first - Whether or not to delete the first item in the path. This would be done because the first item is the starting tile, which can break things
+timeout - Time in deci-seconds until the moveloop self expires. Defaults to infinity
+subsystem - The movement subsystem to use. Defaults to SSmovement. Only one loop can exist for any one subsystem
+priority - Defines how different move loops override each other. Lower numbers beat higher numbers, equal defaults to what currently exists. Defaults to MOVEMENT_DEFAULT_PRIORITY
+flags - Set of bitflags that effect move loop behavior in some way. Check __DEFINES/movement_defines.dm
move
Replacement for walk()
+
Returns TRUE if the loop sucessfully started, or FALSE if it failed
+
Arguments:
+moving - The atom we want to move
+direction - The direction we want to move in
+delay - How many deci-seconds to wait between fires. Defaults to the lowest value, 0.1
+timeout - Time in deci-seconds until the moveloop self expires. Defaults to infinity
+subsystem - The movement subsystem to use. Defaults to SSmovement. Only one loop can exist for any one subsystem
+priority - Defines how different move loops override each other. Lower numbers beat higher numbers, equal defaults to what currently exists. Defaults to MOVEMENT_DEFAULT_PRIORITY
+flags - Set of bitflags that effect move loop behavior in some way. Check __DEFINES/movement_defines.dm
move_away
Wrapper around GLOB.move_manager.move_away()
+
Returns TRUE if the loop sucessfully started, or FALSE if it failed
+
Arguments:
+moving - The atom we want to move
+chasing - The atom we want to move towards
+max_dist - the furthest away from the target we're allowed to get
+delay - How many deci-seconds to wait between fires. Defaults to the lowest value, 0.1
+timeout - Time in deci-seconds until the moveloop self expires. Defaults to infinity
+subsystem - The movement subsystem to use. Defaults to SSmovement. Only one loop can exist for any one subsystem
+priority - Defines how different move loops override each other. Lower numbers beat higher numbers, equal defaults to what currently exists. Defaults to MOVEMENT_DEFAULT_PRIORITY
+flags - Set of bitflags that effect move loop behavior in some way. Check __DEFINES/movement_defines.dm
move_rand
Helper proc for the move_rand datum
+
Returns TRUE if the loop sucessfully started, or FALSE if it failed
+
Arguments:
+moving - The atom we want to move
+directions - A list of acceptable directions to try and move in. Defaults to GLOB.alldirs
+delay - How many deci-seconds to wait between fires. Defaults to the lowest value, 0.1
+timeout - Time in deci-seconds until the moveloop self expires. Defaults to infinity
+subsystem - The movement subsystem to use. Defaults to SSmovement. Only one loop can exist for any one subsystem
+priority - Defines how different move loops override each other. Lower numbers beat higher numbers, equal defaults to what currently exists. Defaults to MOVEMENT_DEFAULT_PRIORITY
+flags - Set of bitflags that effect move loop behavior in some way. Check __DEFINES/movement_defines.dm
move_to
Wrapper around walk_to()
+
Returns TRUE if the loop sucessfully started, or FALSE if it failed
+
Arguments:
+moving - The atom we want to move
+chasing - The atom we want to move towards
+min_dist - the closest we're allower to get to the target
+delay - How many deci-seconds to wait between fires. Defaults to the lowest value, 0.1
+timeout - Time in deci-seconds until the moveloop self expires. Defaults to infinity
+subsystem - The movement subsystem to use. Defaults to SSmovement. Only one loop can exist for any one subsystem
+priority - Defines how different move loops override each other. Lower numbers beat higher numbers, equal defaults to what currently exists. Defaults to MOVEMENT_DEFAULT_PRIORITY
+flags - Set of bitflags that effect move loop behavior in some way. Check __DEFINES/movement_defines.dm
move_to_rand
Wrapper around walk_rand(), doesn't actually result in a random walk, it's more like moving to random places in viewish
+
Returns TRUE if the loop sucessfully started, or FALSE if it failed
+
Arguments:
+moving - The atom we want to move
+delay - How many deci-seconds to wait between fires. Defaults to the lowest value, 0.1
+timeout - Time in deci-seconds until the moveloop self expires. Defaults to infinity
+subsystem - The movement subsystem to use. Defaults to SSmovement. Only one loop can exist for any one subsystem
+priority - Defines how different move loops override each other. Lower numbers beat higher numbers, equal defaults to what currently exists. Defaults to MOVEMENT_DEFAULT_PRIORITY
+flags - Set of bitflags that effect move loop behavior in some way. Check __DEFINES/movement_defines.dm
move_towards
Helper proc for the move_towards datum
+
Returns TRUE if the loop sucessfully started, or FALSE if it failed
+
Arguments:
+moving - The atom we want to move
+chasing - The atom we want to move towards
+delay - How many deci-seconds to wait between fires. Defaults to the lowest value, 0.1
+home - Should we move towards the object at all times? Or launch towards them, but allow walls and such to take us off track. Defaults to FALSE
+timeout - Time in deci-seconds until the moveloop self expires. Defaults to INFINITY
+subsystem - The movement subsystem to use. Defaults to SSmovement. Only one loop can exist for any one subsystem
+priority - Defines how different move loops override each other. Lower numbers beat higher numbers, equal defaults to what currently exists. Defaults to MOVEMENT_DEFAULT_PRIORITY
+flags - Set of bitflags that effect move loop behavior in some way. Check __DEFINES/movement_defines.dm
move_towards_legacy
Alternative to GLOB.move_manager.home_onto. Not reccomended, as it ends up putting a kink in the movement path if it's not directly along one of the 8 directions.
+
Returns TRUE if the loop sucessfully started, or FALSE if it failed
+
Arguments:
+moving - The atom we want to move
+chasing - The atom we want to move towards
+delay - How many deci-seconds to wait between fires. Defaults to the lowest value, 0.1
+timeout - Time in deci-seconds until the moveloop self expires. Defaults to infinity
+subsystem - The movement subsystem to use. Defaults to SSmovement. Only one loop can exist for any one subsystem
+priority - Defines how different move loops override each other. Lower numbers beat higher numbers, equal defaults to what currently exists. Defaults to MOVEMENT_DEFAULT_PRIORITY
+flags - Set of bitflags that effect move loop behavior in some way. Check __DEFINES/movement_defines.dm
processing_on
Returns the subsystem's loop if we're processing on it, null otherwise
stop_looping
Removes the atom from some movement subsystem. Defaults to SSmovement
ventcrawl
Used for getting to a vent in a connected pipeline when ventcrawling.
+
Returns TRUE if the loop sucessfully started, or FALSE if it failed
+
Arguments:
+moving - The atom we want to move
+chasing - The atom we want to move towards
+min_dist - the closest we're allower to get to the target
+delay - How many deci-seconds to wait between fires. Defaults to the lowest value, 0.1
+timeout - Time in deci-seconds until the moveloop self expires. Defaults to infinity
+subsystem - The movement subsystem to use. Defaults to SSmovement. Only one loop can exist for any one subsystem
+priority - Defines how different move loops override each other. Lower numbers beat higher numbers, equal defaults to what currently exists. Defaults to MOVEMENT_DEFAULT_PRIORITY
+flags - Set of bitflags that effect move loop behavior in some way. Check __DEFINES/movement_defines.dm
\ No newline at end of file
diff --git a/datum/movement_detector.html b/datum/movement_detector.html
new file mode 100644
index 00000000000..17c79a24981
--- /dev/null
+++ b/datum/movement_detector.html
@@ -0,0 +1,5 @@
+/datum/movement_detector - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
movement_detector
A datum to handle the busywork of registering signals to handle in depth tracking of a movable
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
Listener is whatever callback that will increase the tracking of the movable, usually on stepped.
Proc Details
fix_signal
Movement detectors don't work by default unless the item starts on a turf.
+Run this proc to fix that.
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
\ No newline at end of file
diff --git a/datum/movement_packet.html b/datum/movement_packet.html
new file mode 100644
index 00000000000..79fb80bf7bf
--- /dev/null
+++ b/datum/movement_packet.html
@@ -0,0 +1,7 @@
+/datum/movement_packet - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
movement_packet
A packet of information that describes the current state of a moving object
Flags passed from the move loop before it calls move() and unset right after.
+Allows for properties of a move loop to be easily checked by mechanics outside of it.
+Having this a bitfield rather than a type var means we don't get screwed over
+if the move loop gets deleted mid-move, FYI.
Tries to figure out the current favorite loop to run. More complex then just deciding between two different loops, assumes no running loop currently exists
Var Details
existing_loops
Assoc list of subsystems -> loop datum. Only one datum is allowed per subsystem
parent
Our parent atom
processing_move_loop_flags
Flags passed from the move loop before it calls move() and unset right after.
+Allows for properties of a move loop to be easily checked by mechanics outside of it.
+Having this a bitfield rather than a type var means we don't get screwed over
+if the move loop gets deleted mid-move, FYI.
running_loop
The move loop that's currently running, excluding those that ignore priority.
Proc Details
add_loop
Adds a loop to our parent. Returns the created loop if a success, null otherwise
contest_running_loop
Attempts to contest the current running move loop. Returns TRUE if the loop is active, FALSE otherwise
decide_on_running_loop
Tries to figure out the current favorite loop to run. More complex then just deciding between two different loops, assumes no running loop currently exists
\ No newline at end of file
diff --git a/datum/mutation.html b/datum/mutation.html
new file mode 100644
index 00000000000..02dbd5c1d52
--- /dev/null
+++ b/datum/mutation.html
@@ -0,0 +1 @@
+/datum/mutation - Space Station 13Space Station 13 - Modules - Types — Var Details
Chance of the gene to cause adverse effects when active
name
Display name
traits_to_add
Trait to give, if any
\ No newline at end of file
diff --git a/datum/nttc_configuration.html b/datum/nttc_configuration.html
new file mode 100644
index 00000000000..de3791d5ac4
--- /dev/null
+++ b/datum/nttc_configuration.html
@@ -0,0 +1 @@
+/datum/nttc_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
Associative list of all jobs and their department color classes
cc_jobs
List of CentComm jobs
ert_jobs
List of ERT jobs
heads
List of Command jobs
tsf_jobs
List of SolGov Marine jobs
\ No newline at end of file
diff --git a/datum/object_window_info.html b/datum/object_window_info.html
new file mode 100644
index 00000000000..0189d6a74a6
--- /dev/null
+++ b/datum/object_window_info.html
@@ -0,0 +1,9 @@
+/datum/object_window_info - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
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
Clears 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
max_index
The maximum index currently sent to the client.
min_index
The minimum index currently sent to the client.
parent
Our owner client
pending_turf_refresh
Debounce flag for immediate refreshes.
tracked_turf
Turf we are currently listening to for content changes.
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
\ No newline at end of file
diff --git a/datum/objective.html b/datum/objective.html
new file mode 100644
index 00000000000..8761a2126f9
--- /dev/null
+++ b/datum/objective.html
@@ -0,0 +1,12 @@
+/datum/objective - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Proper name of the objective. Not player facing, only shown to admins when adding objectives.
+Leave as null (or override to null) if you don't want admins to see that objective as a viable one to add (such as the mindslave objective).
Owner of the objective.
+Note that it's fine to set this directly, but when needing to check completion of the objective or otherwise check conditions on the owner of the objective,
+always use get_owners(), and check against ALL the owners. get_owners() accounts for objectives that may be team based and therefore have multiple owners.
This is for objectives that have reason to update their text, such as target changes.
Var Details
completed
If the objective has been completed.
delayed_objective_text
What is the text we show when our objective is delayed?
explanation_text
What the owner is supposed to do to complete the objective.
flags_target
Contains the flags needed to meet the conditions of a valid target, such as mindshielded or syndicate agent.
martyr_compatible
If the objective is compatible with martyr objective, i.e. if you can still do it while dead.
name
Proper name of the objective. Not player facing, only shown to admins when adding objectives.
+Leave as null (or override to null) if you don't want admins to see that objective as a viable one to add (such as the mindslave objective).
needs_pair
If the objective needs another person with a paired objective
needs_target
If the objective should have find_target() called for it.
owner
Owner of the objective.
+Note that it's fine to set this directly, but when needing to check completion of the objective or otherwise check conditions on the owner of the objective,
+always use get_owners(), and check against ALL the owners. get_owners() accounts for objectives that may be team based and therefore have multiple owners.
steal_list
If set, steal targets will be pulled from this list
target
The target of the objective.
target_amount
If they are focused on a particular number. Steal objectives have their own counter.
target_department
The department that'll be targeted by this objective. If set, fills target_jobs with jobs from that department.
target_jobs
List of jobs that the objective will target if possible, any crew if not.
team
The team the objective belongs to, if any.
Proc Details
establish_signals
This is for objectives that need to register signals, so place them in here.
find_assassination_objectives_for_target
Helper proc to find assassinate/assassinateonce objectives targeting the same mind as this objective.
+Returns a list of assassination objectives.
find_protect_objectives_for_target
Helper proc to find protect objectives targeting the same mind as this objective.
+Returns a list of protect objectives.
get_owners
Get all owners of the objective, including ones from the objective's team, if it has one.
+
Use this over directly referencing owner in most cases.
on_target_cryo
Called when the objective's target goes to cryo.
update_explanation_text
This is for objectives that have reason to update their text, such as target changes.
\ No newline at end of file
diff --git a/datum/objective/contract.html b/datum/objective/contract.html
new file mode 100644
index 00000000000..86d139724e8
--- /dev/null
+++ b/datum/objective/contract.html
@@ -0,0 +1,22 @@
+/datum/objective/contract - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Associated lazy list of areas the contractor can pick from and extract the kidnapee there.
+Structure: EXTRACTION_DIFFICULTY_(EASY|MEDIUM|HARD) => /area
Static whitelist of area names that can be used as an extraction zone, structured by difficulty.
+An area's difficulty should be measured in how crowded it generally is, how out of the way it is and so on.
+Outdoor or invalid areas are filtered out.
+Structure: EXTRACTION_DIFFICULTY_(EASY|MEDIUM|HARD) => list()
Assigns a randomly selected zone to the contract's selectable zone at the given difficulty.
Var Details
candidate_zones
Associated lazy list of areas the contractor can pick from and extract the kidnapee there.
+Structure: EXTRACTION_DIFFICULTY_(EASY|MEDIUM|HARD) => /area
chosen_difficulty
The contract's difficulty. Determines the reward on completion.
extraction_zone
The designated area where the kidnapee must be extracted to complete the objective.
forbidden_jobs
Jobs that cannot be the kidnapping target.
name_fixer
Name fixer regex because area names have rogue characters sometimes.
Static whitelist of area names that can be used as an extraction zone, structured by difficulty.
+An area's difficulty should be measured in how crowded it generally is, how out of the way it is and so on.
+Outdoor or invalid areas are filtered out.
+Structure: EXTRACTION_DIFFICULTY_(EASY|MEDIUM|HARD) => list()
Assigns a randomly selected zone to the contract's selectable zone at the given difficulty.
+
Arguments:
+
+
difficulty - The difficulty to assign.
+
\ No newline at end of file
diff --git a/datum/objective/escape/escape_with_identity.html b/datum/objective/escape/escape_with_identity.html
new file mode 100644
index 00000000000..6c3f1dcbfea
--- /dev/null
+++ b/datum/objective/escape/escape_with_identity.html
@@ -0,0 +1 @@
+/datum/objective/escape/escape_with_identity - Space Station 13Space Station 13 - Modules - Types — Var Details
Stored because the target's [mob/var/real_name] can change over the course of the round.
Var Details
has_assassinate_objective
If the objective has an assassinate objective tied to it.
target_real_name
Stored because the target's [mob/var/real_name] can change over the course of the round.
\ No newline at end of file
diff --git a/datum/objective/experiment.html b/datum/objective/experiment.html
new file mode 100644
index 00000000000..fe44bcaf749
--- /dev/null
+++ b/datum/objective/experiment.html
@@ -0,0 +1 @@
+/datum/objective/experiment - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/objective/heretic_research.html b/datum/objective/heretic_research.html
new file mode 100644
index 00000000000..493b5781fae
--- /dev/null
+++ b/datum/objective/heretic_research.html
@@ -0,0 +1 @@
+/datum/objective/heretic_research - Space Station 13Space Station 13 - Modules - Types — Var Details
heretic_research
Heretic's research objective. "Research" is heretic knowledge nodes (You start with some).
The length of a main path. Calculated once in New().
Var Details
main_path_length
The length of a main path. Calculated once in New().
\ No newline at end of file
diff --git a/datum/objective/heretic_summon.html b/datum/objective/heretic_summon.html
new file mode 100644
index 00000000000..f938d394657
--- /dev/null
+++ b/datum/objective/heretic_summon.html
@@ -0,0 +1 @@
+/datum/objective/heretic_summon - Space Station 13Space Station 13 - Modules - Types — Var Details
The total number of summons the objective owner has done
Var Details
num_summoned
The total number of summons the objective owner has done
\ No newline at end of file
diff --git a/datum/objective/ninja.html b/datum/objective/ninja.html
new file mode 100644
index 00000000000..5def469deea
--- /dev/null
+++ b/datum/objective/ninja.html
@@ -0,0 +1 @@
+/datum/objective/ninja - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/objective/ninja/capture.html b/datum/objective/ninja/capture.html
new file mode 100644
index 00000000000..39990aefadb
--- /dev/null
+++ b/datum/objective/ninja/capture.html
@@ -0,0 +1 @@
+/datum/objective/ninja/capture - Space Station 13Space Station 13 - Modules - Types — Var Details
Prisoner jail timer handle. On completion, returns the prisoner back to station.
temp_objs
Temporary objects that are available to the kidnapee during their time in jail. These are deleted when the victim is returned.
victim_belongings
The kidnapee's belongings. Set upon capture.
\ No newline at end of file
diff --git a/datum/objective/protect.html b/datum/objective/protect.html
new file mode 100644
index 00000000000..961e04ccf85
--- /dev/null
+++ b/datum/objective/protect.html
@@ -0,0 +1 @@
+/datum/objective/protect - Space Station 13Space Station 13 - Modules - Types — Var Details
Timer for fallback target assignment (randomized between 5-10 minutes)
Var Details
fallback_timer_id
Timer for fallback target assignment (randomized between 5-10 minutes)
\ No newline at end of file
diff --git a/datum/objective/pulse_demon/drain.html b/datum/objective/pulse_demon/drain.html
new file mode 100644
index 00000000000..e29b4de220e
--- /dev/null
+++ b/datum/objective/pulse_demon/drain.html
@@ -0,0 +1 @@
+/datum/objective/pulse_demon/drain - Space Station 13Space Station 13 - Modules - Types — Var Details
Amount of power we need to drain, ranges from 500 KW to 5 MW
Var Details
amount
Amount of power we need to drain, ranges from 500 KW to 5 MW
\ No newline at end of file
diff --git a/datum/objective/pulse_demon/infest.html b/datum/objective/pulse_demon/infest.html
new file mode 100644
index 00000000000..b38359e59d2
--- /dev/null
+++ b/datum/objective/pulse_demon/infest.html
@@ -0,0 +1 @@
+/datum/objective/pulse_demon/infest - Space Station 13Space Station 13 - Modules - Types — Var Details
Amount of APCs we need to hijack, can be 15, 20, or 25
Var Details
amount
Amount of APCs we need to hijack, can be 15, 20, or 25
\ No newline at end of file
diff --git a/datum/objective/steal.html b/datum/objective/steal.html
new file mode 100644
index 00000000000..3e084a41e63
--- /dev/null
+++ b/datum/objective/steal.html
@@ -0,0 +1 @@
+/datum/objective/steal - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/datum/objective/uplifted/build_nest_in_area.html b/datum/objective/uplifted/build_nest_in_area.html
new file mode 100644
index 00000000000..841ec296abd
--- /dev/null
+++ b/datum/objective/uplifted/build_nest_in_area.html
@@ -0,0 +1 @@
+/datum/objective/uplifted/build_nest_in_area - Space Station 13Space Station 13 - Modules - Types — Var Details
The area in which the nest must be built to complete the objective.
Var Details
target_area
The area in which the nest must be built to complete the objective.
\ No newline at end of file
diff --git a/datum/objective/uplifted/obtain.html b/datum/objective/uplifted/obtain.html
new file mode 100644
index 00000000000..d61a010d3c5
--- /dev/null
+++ b/datum/objective/uplifted/obtain.html
@@ -0,0 +1 @@
+/datum/objective/uplifted/obtain - Space Station 13Space Station 13 - Modules - Types — Var Details
The typepath of the item which must be possessed to complete the objective.
Var Details
allowed_targets
The possible typepaths that can be selected as a target.
target_type
The typepath of the item which must be possessed to complete the objective.
\ No newline at end of file
diff --git a/datum/objective_holder.html b/datum/objective_holder.html
new file mode 100644
index 00000000000..66f6440acbe
--- /dev/null
+++ b/datum/objective_holder.html
@@ -0,0 +1,10 @@
+/datum/objective_holder - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
objective_holder
An objective holder for minds, antag datums, and teams.
A callback invoked when a new objective is added. This is required because sometimes objectives are added directly without going through objective_owner. Not currently used.
A callback invoked when a new objective is added. This is required because sometimes objectives are removed directly without going through objective_owner (EX: replace_objective(), clear()). Not currently used.
Sets the callbacks, not on new because that can be irreliable for subtypes.
Var Details
assigned_targets
A list of strings which contain targets of the antagonist's objectives. Used to prevent duplicate objectives.
objective_owner
Who do we belong to [mind, antagonist, team]
objectives
Our list of current objectives
on_add_callback
A callback invoked when a new objective is added. This is required because sometimes objectives are added directly without going through objective_owner. Not currently used.
on_remove_callback
A callback invoked when a new objective is added. This is required because sometimes objectives are removed directly without going through objective_owner (EX: replace_objective(), clear()). Not currently used.
_explanation_text - Optional, will assign this text to the objective
+
target_override - A target override, will prevent finding a target
+
add_to_list - Do we add the new objective to our list? Or will it be handled elsewhere (like replace_objective). Should not be set to false outside of this file.
+
clear
Clear all objectives of a certain type
+
+
checktype - The type to check, if null, remoe all objectives.
+
get_holder_owner
Returns objective_owner
get_objectives
Get all of the objectives we own
get_targets
Get all of our targets
handle_objective
Handles the searching of targets for objectives that need it.
has_objectives
Do we have any objectives
remove_objective
Remove an objective and deletes it. You should never need to transfer an objective.
replace_objective
Replace old_objective with new_objective
set_callbacks
Sets the callbacks, not on new because that can be irreliable for subtypes.
\ No newline at end of file
diff --git a/datum/ore.html b/datum/ore.html
new file mode 100644
index 00000000000..7cefca5aa7a
--- /dev/null
+++ b/datum/ore.html
@@ -0,0 +1,5 @@
+/datum/ore - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
\ No newline at end of file
diff --git a/datum/ore/gibtonite.html b/datum/ore/gibtonite.html
new file mode 100644
index 00000000000..cd41bd15e66
--- /dev/null
+++ b/datum/ore/gibtonite.html
@@ -0,0 +1,9 @@
+/datum/ore/gibtonite - Space Station 13Space Station 13 - Modules - Types — Var Details
Whether an admin log should be generated for this gibtonite's detonation.
+Typically enabled if the detonation doesn't occur on the station z-level.
+Note that this is only for explosions caused while the gibtonite is still
+unmined, in contrast to [/obj/item/gibtonite/proc/GibtoniteReaction].
The overlay used for when the gibtonite is in its detonation countdown mode.
detonate_start_time
The world.time that the detonate countdown started at.
detonate_time
Amount of time from mining before gibtonite explodes.
explosion_callback
The callback for the explosion that occurs if the gibtonite is not
+defused in time.
notify_admins
Whether an admin log should be generated for this gibtonite's detonation.
+Typically enabled if the detonation doesn't occur on the station z-level.
+Note that this is only for explosions caused while the gibtonite is still
+unmined, in contrast to [/obj/item/gibtonite/proc/GibtoniteReaction].
remaining_time
The amount of time remaining if the gibtonite was stabilized before explosion, in half-seconds.
\ No newline at end of file
diff --git a/datum/organ.html b/datum/organ.html
new file mode 100644
index 00000000000..7d031b11445
--- /dev/null
+++ b/datum/organ.html
@@ -0,0 +1 @@
+/datum/organ - Space Station 13Space Station 13 - Modules - Types — Proc Details
Only called when the organ is robotic AND is not emp proof. Return true to override default functions
Proc Details
on_insert
Called when the linked organ is inserted.
on_remove
Called when the linked organ is removed.
on_replace
Called when another organ is removed, and this organ datum takes its place in the organ_owner.
on_successful_emp
Only called when the organ is robotic AND is not emp proof. Return true to override default functions
\ No newline at end of file
diff --git a/datum/organ/lungs.html b/datum/organ/lungs.html
new file mode 100644
index 00000000000..2b45e8f8866
--- /dev/null
+++ b/datum/organ/lungs.html
@@ -0,0 +1 @@
+/datum/organ/lungs - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/datum/outfit.html b/datum/outfit.html
new file mode 100644
index 00000000000..45eee0eac33
--- /dev/null
+++ b/datum/outfit.html
@@ -0,0 +1 @@
+/datum/outfit - Space Station 13Space Station 13 - Modules - Types — Var Details
Should the toggle helmet proc be called on the helmet during equip
Var Details
toggle_helmet
Should the toggle helmet proc be called on the helmet during equip
\ No newline at end of file
diff --git a/datum/outfit/job.html b/datum/outfit/job.html
new file mode 100644
index 00000000000..ee9c8d30efb
--- /dev/null
+++ b/datum/outfit/job.html
@@ -0,0 +1 @@
+/datum/outfit/job - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/datum/pai_save.html b/datum/pai_save.html
new file mode 100644
index 00000000000..1c6e212341a
--- /dev/null
+++ b/datum/pai_save.html
@@ -0,0 +1 @@
+/datum/pai_save - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/pai_software.html b/datum/pai_software.html
new file mode 100644
index 00000000000..f14260d3e79
--- /dev/null
+++ b/datum/pai_software.html
@@ -0,0 +1,33 @@
+/datum/pai_software - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
pAI Software
Datum module for pAI software
+
Very similar to the PDA app datum, this determines what UI sub-template to use,
+as well as the RAM cost, and if it is toggle software (not a UI app)
Name for the software. This is used as the button text when buying or opening/toggling the software
pai_holder
pAI which holds this software
ram_cost
RAM cost; pAIs start with 100 RAM, spending it on programs
template_file
Template for the TGUI file
toggle_software
Whether this software is a toggle or not
ui_icon
Icon for inside the UI
Proc Details
New
New handler
+
Ensures that the pai_holder var is set to the pAI itself
+Arguments:
+
+
user - The pAI that this softawre is held by
+
get_app_data
Handler for the app's UI data
+
This returns the list of the current app's data for the UI
+This will then be injected as a variable on the TGUI data called "app_data"
+
Arguments:
+
+
user - The pAI that is using this app
+
get_holding_mob
Helper proc so that pAIs can get the mob holding them
+
This needs to exist because pAIs have many different locs
+(Held card, mob itself, in pocket, etc)
+
Arguments:
+
+
inform - Boolean, should we inform the pAI if they fail to find a carrier
+
is_active
Helper for checking if a toggle is enabled or not
+
Returns TRUE if the toggle software is active, FALSE if not
+
Its like this instead of a simple is_toggled var because some toggles override eachother and this is easier
+
Arguments:
+
+
user - The pAI that is using this app
+
toggle
Handler for toggling toggle apps on and off
+
This is invoked whenever you toggle a toggleable function
+Put your toggleable work in here
+
Arguments:
+
+
user - The pAI that is using this toggle
+
ui_act
ui_act sanity check helper
+
Basically checks the existing href exploit stuff, as well as making sure the user using the UI is the pAI itself
\ No newline at end of file
diff --git a/datum/pai_software/atmosphere_sensor.html b/datum/pai_software/atmosphere_sensor.html
new file mode 100644
index 00000000000..c48f6668a4c
--- /dev/null
+++ b/datum/pai_software/atmosphere_sensor.html
@@ -0,0 +1 @@
+/datum/pai_software/atmosphere_sensor - Space Station 13Space Station 13 - Modules - Types — Var Details
Integrated PDA atmos scan module to reduce duplicated code
Var Details
scanner
Integrated PDA atmos scan module to reduce duplicated code
\ No newline at end of file
diff --git a/datum/pai_software/door_jack.html b/datum/pai_software/door_jack.html
new file mode 100644
index 00000000000..998fd9c18cf
--- /dev/null
+++ b/datum/pai_software/door_jack.html
@@ -0,0 +1,4 @@
+/datum/pai_software/door_jack - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Self-contained proc for cleaning up failed hack attempts
hackloop
Door jack hack loop
+
Self-contained proc for handling the hacking of a door.
+Invoked asyncly, but will only allow one instance at a time
\ No newline at end of file
diff --git a/datum/pai_software/med_records.html b/datum/pai_software/med_records.html
new file mode 100644
index 00000000000..613422abab8
--- /dev/null
+++ b/datum/pai_software/med_records.html
@@ -0,0 +1 @@
+/datum/pai_software/med_records - Space Station 13Space Station 13 - Modules - Types — Var Details
Integrated medical records module to reduce duplicated code
Var Details
integrated_records
Integrated medical records module to reduce duplicated code
\ No newline at end of file
diff --git a/datum/pai_software/sec_records.html b/datum/pai_software/sec_records.html
new file mode 100644
index 00000000000..e5e5a16ac60
--- /dev/null
+++ b/datum/pai_software/sec_records.html
@@ -0,0 +1 @@
+/datum/pai_software/sec_records - Space Station 13Space Station 13 - Modules - Types — Var Details
Integrated security records module to reduce duplicated code
Var Details
integrated_records
Integrated security records module to reduce duplicated code
\ No newline at end of file
diff --git a/datum/painter.html b/datum/painter.html
new file mode 100644
index 00000000000..58fae3a9116
--- /dev/null
+++ b/datum/painter.html
@@ -0,0 +1,4 @@
+/datum/painter - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Painter Datum
Contains variables for updating holder, as well as procs for choosing a colour and painting an atom.
+
The parent_painter argument is REQUIRED when spawning this in order to link the datum to an /obj/item/painter.
Icon and Item state of the holder when using this module.
paint_setting
The current colour or icon state setting.
Proc Details
paint_atom
Contains code to apply the paint_setting variable onto the target atom.
+
Called by afterattack() on the holder object.
pick_color
Contains code to choose a new colour or icon state for the paint_setting variable.
+
Called by attack_self() on the holder object.
\ No newline at end of file
diff --git a/datum/painter/decal.html b/datum/painter/decal.html
new file mode 100644
index 00000000000..f76f5d349ff
--- /dev/null
+++ b/datum/painter/decal.html
@@ -0,0 +1 @@
+/datum/painter/decal - Space Station 13Space Station 13 - Modules - Types — Var Details
When removal_mode is TRUE the decal painter will remove decals instead
Var Details
decal_icon
icon that contains the decal sprites
lookup_cache_decals
List of typepaths of turf decals exposed by the painter.
removal_mode
When removal_mode is TRUE the decal painter will remove decals instead
\ No newline at end of file
diff --git a/datum/path_map.html b/datum/path_map.html
new file mode 100644
index 00000000000..382ae199375
--- /dev/null
+++ b/datum/path_map.html
@@ -0,0 +1,24 @@
+/datum/path_map - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
path_map
Datum that describes the shortest path between a source turf and any turfs within a distance
Expands this pathmap to cover a new range, assuming the arg is greater then the current range
+Returns true if this succeeded or was not required, false otherwise
Gets a list of turfs reachable by this path_map from the distance first to the distance second, both inclusive
+first > second or first < second are both respected, and the return order will reflect the arg order
+We return a list of turf -> distance, or null if we error
Var Details
avoid
Were we avoiding a turf? If so, which one?
building
Are we currently being built
creation_time
The tick we were completed on, in case you want to hold onto this for a bit
distances
List of distances from the starting turf, each index lines up with the next_closest list
expanding
Are we currently being expanded?
next_closest
Assoc list of turf -> the turf one step closer on the path
+Arranged in discovery order, so the last turf here will be the furthest from the start
pass_info
The pass info datum used to create us
pass_space
Were we allowed to path over space?
start
Our starting turf, the location this map feeds into
Proc Details
compare_against
Returns true if the passed in pass_map's pass logic matches ours
+False otherwise
compare_against_args
Returns true if the passed in pass_info and start/pass_space/avoid match ours
+False otherwise
copy_from
Copies the passed in path_map into this datum
+Saves some headache with updating refs if we want to modify a path_map
expand
Expands this pathmap to cover a new range, assuming the arg is greater then the current range
+Returns true if this succeeded or was not required, false otherwise
generate_path
Takes a turf to use as the other end, returns the path between the source node and it
+
skip_first - If we should drop the first step in the path. Used to avoid stepping where we already are
+min_target_dist - How many, if any, turfs off the end of the path should we drop?
+reverse - If true, "reverses" the path generated. You'd want to use this for generating a path to the source node itself
get_path_from
Takes a turf to start from, returns a path to the source turf of this datum
+
skip_first - If we should drop the first step in the path. Used to avoid stepping where we already are
+min_target_dist - How many, if any, turfs off the end of the path should we drop?
get_path_to
Takes a turf to path to, returns the shortest path to it at the time of this datum's creation
+
skip_first - If we should drop the first step in the path. Used to avoid stepping where we already are
+min_target_dist - How many, if any, turfs off the end of the path should we drop?
settings_to_path
Returns a new /datum/pathfind/sssp based off our settings
+Will have an invalid source mob, no max distance, and no ending callback
turfs_in_range
Gets a list of turfs reachable by this path_map from the distance first to the distance second, both inclusive
+first > second or first < second are both respected, and the return order will reflect the arg order
+We return a list of turf -> distance, or null if we error
\ No newline at end of file
diff --git a/datum/pathfind.html b/datum/pathfind.html
new file mode 100644
index 00000000000..79e610a616b
--- /dev/null
+++ b/datum/pathfind.html
@@ -0,0 +1,9 @@
+/datum/pathfind - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
pathfind
The datum used to handle the JPS pathfinding, completely self-contained
search_step() is the workhorse of pathfinding. It'll do the searching logic, and will slowly build up a path
+returns TRUE if everything is stable, FALSE if the pathfinding logic has failed, and we need to abort
"starts" off the pathfinding, by storing the values this datum will need to work later on
+returns FALSE if it fails to setup properly, TRUE otherwise
Var Details
avoid
A specific turf we're avoiding, like if a mulebot is being blocked by someone t-posing in a doorway we're trying to get through
max_distance
Limits how far we can search before giving up on a path
on_finish
The callbacks to invoke when we're done working, passing in the completed product
+Invoked in order
pass_info
Datum that holds the canpass info of this pathing attempt. This is what CanPathfindPass sees
simulated_only
Space is big and empty, if this is TRUE then we ignore pathing through unsimulated tiles
start
The turf we started at
Proc Details
early_exit
early_exit() is called when something goes wrong in processing, and we need to halt the pathfinding NOW
finished
Cleanup pass for the pathfinder. This tidies up the path, and fufills the pathfind's obligations
hand_back
Call to return a value to whoever spawned this pathfinding work
+Will fail if it's already been called
search_step
search_step() is the workhorse of pathfinding. It'll do the searching logic, and will slowly build up a path
+returns TRUE if everything is stable, FALSE if the pathfinding logic has failed, and we need to abort
start
"starts" off the pathfinding, by storing the values this datum will need to work later on
+returns FALSE if it fails to setup properly, TRUE otherwise
\ No newline at end of file
diff --git a/datum/pathfind/jps.html b/datum/pathfind/jps.html
new file mode 100644
index 00000000000..75cccc5033f
--- /dev/null
+++ b/datum/pathfind/jps.html
@@ -0,0 +1,19 @@
+/datum/pathfind/jps - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Called when we've hit the goal with the node that represents the last tile, then sets the path var to that path so it can be returned by [datum/pathfind/proc/search]
Var Details
diagonal_handling
Defines how we handle diagonal moves. See __DEFINES/path.dm
end
The turf we're trying to path to (note that this won't track a moving target)
found_turfs
An assoc list that serves as the closed list. Key is the turf, points to true if we've seen it before
mintargetdist
How far away we have to get to the end target before we can call it quits
open
The open list/stack we pop nodes out from (TODO: make this a normal list and macro-ize the heap operations to reduce proc overhead)
path
The list we compile at the end if successful to pass back
requester
The movable we are pathing
skip_first
If we should delete the first step in the path or not. Used often because it is just the starting tile
Proc Details
diag_scan_spec
For performing diagonal scans from a given starting turf.
+
Unlike lateral scans, these only are called from the main search loop, so we don't need to worry about returning anything,
+though we do need to handle the return values of our lateral subscans of course.
+
Arguments:
+
+
original_turf: What turf did we start this scan at?
+
heading: What direction are we going in? Obviously, should be diagonal
+
parent_node: We should always have a parent node for diagonals
+
lateral_scan_spec
For performing lateral scans from a given starting turf.
+
These scans are called from both the main search loop, as well as subscans for diagonal scans, and they treat finding interesting turfs slightly differently.
+If we're doing a normal lateral scan, we already have a parent node supplied, so we just create the new node and immediately insert it into the heap, ezpz.
+If we're part of a subscan, we still need for the diagonal scan to generate a parent node, so we return a node datum with just the turf and let the diag scan
+proc handle transferring the values and inserting them into the heap.
+
Arguments:
+
+
original_turf: What turf did we start this scan at?
+
heading: What direction are we going in? Obviously, should be cardinal
+
parent_node: Only given for normal lateral scans, if we don't have one, we're a diagonal subscan.
+
unwind_path
Called when we've hit the goal with the node that represents the last tile, then sets the path var to that path so it can be returned by [datum/pathfind/proc/search]
\ No newline at end of file
diff --git a/datum/pathfind/sssp.html b/datum/pathfind/sssp.html
new file mode 100644
index 00000000000..279de45741a
--- /dev/null
+++ b/datum/pathfind/sssp.html
@@ -0,0 +1,2 @@
+/datum/pathfind/sssp - Space Station 13Space Station 13 - Modules - Types — Var Details
sssp
Single source shortest path
+Generates a flow map of a reachable turf -> the turf next closest to the map's center
Ever expanding list of turfs to visit/visited, associated with the turf that's next closest to them
Var Details
working_distances
List of distances, each entry mirrors an entry in the working_queue
working_index
Our current position in the working queue
working_queue
Ever expanding list of turfs to visit/visited, associated with the turf that's next closest to them
\ No newline at end of file
diff --git a/datum/pathfind/ventcrawl.html b/datum/pathfind/ventcrawl.html
new file mode 100644
index 00000000000..67fd80f4b23
--- /dev/null
+++ b/datum/pathfind/ventcrawl.html
@@ -0,0 +1 @@
+/datum/pathfind/ventcrawl - Space Station 13Space Station 13 - Modules - Types — Var Details
ventcrawl
Basic A-star implementation (I think), for pathfinding through vents.
If we should delete the first step in the path or not. Used often because it is just the starting point
Var Details
closed_set
An assoc list that serves as the closed list. Key is the turf, points to true if we've seen it before
end
The vent we are trying to pathfind to
open
The open list/stack we pop nodes out from (TODO: make this a normal list and macro-ize the heap operations to reduce proc overhead)
path
The list we compile at the end if successful to pass back
requester
The movable we are pathing
skip_first
If we should delete the first step in the path or not. Used often because it is just the starting point
\ No newline at end of file
diff --git a/datum/pathfinding_mover.html b/datum/pathfinding_mover.html
new file mode 100644
index 00000000000..676c86c53ea
--- /dev/null
+++ b/datum/pathfinding_mover.html
@@ -0,0 +1 @@
+/datum/pathfinding_mover - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
pathfinding_mover
A generalized datum for pathfinding, and moving to a target.
Start moving towards our target, returns false if the path does not lead to the target
Var Details
consider_movement_delay
Do we consider movement delay? Disable for non-mobs
last_movement_delay
Requires consider_movement_delay = TRUE, saves the last movement delay to prevent diagonal weirdness
max_tries
max amount of tries before resetting path to null
move_speed
How many 2-tick delays per move (5 = 1 second)
move_ticks
A counter for move_speed via modulo
on_set_path_null
Callback invoked on failure
on_success
Callback invoked on success
owner
Can be a simplemob bot, a drone, or even a pathfinding modsuit module (currently only implemented for drones)
owner_move_delay
The delay called as part of Move()
path
List of turfs through which a mod 'steps' to reach the waypoint
target
The target turf we are after
tries
How many times have we tried to move?
Proc Details
generalized_step
Take our next step in our pathfinding algorithm
process
Using fast process, see if we should take the next step yet
start
Start moving towards our target, returns false if the path does not lead to the target
\ No newline at end of file
diff --git a/datum/persistent_client.html b/datum/persistent_client.html
new file mode 100644
index 00000000000..22ee5732a0d
--- /dev/null
+++ b/datum/persistent_client.html
@@ -0,0 +1 @@
+/datum/persistent_client - Space Station 13Space Station 13 - Modules - Types — Var Details
All of the minds this client has been associated with.
pm_tracker
Holds admin/mentor PM history.
skip_antag
The Global Antag Candidacy setting from the new player menu.
time_died_as_mouse
Used to prevent rapid mouse spamming.
\ No newline at end of file
diff --git a/datum/pet_command.html b/datum/pet_command.html
new file mode 100644
index 00000000000..97a1ce1d72e
--- /dev/null
+++ b/datum/pet_command.html
@@ -0,0 +1,8 @@
+/datum/pet_command - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Pet Command
Set some AI blackboard commands in response to receiving instructions
+This is abstract and should be extended for actual behaviour
Execute an AI action on the provided controller, what we should actually do when this command is active.
+This should basically always be called from a planning subtree which passes its own controller.
+Return SUBTREE_RETURN_FINISH_PLANNING to pass that instruction on to the controller, or don't if you don't want that.
Returns true if we find any of our spoken commands in the text.
+if check_verbosity is true, skip the match if there spoken_text is way longer than the match
Stop the automute from triggering for commands (unless the spoken text is suspiciously longer than the command)
Var Details
command_desc
Description to display in radial menu
command_feedback
Shown above the mob's head when it hears you
command_name
Unique name used for radial selection, should not be shared with other commands on one mob
command_regex
The regex for finding our commands in speech
hidden
If true, command will not appear in radial menu and can only be accessed through speech
parent_uid
UID of who follows this command
pointed_reaction
our pointed reaction we play
requires_pointing
does this pet command need a point to activate?
sense_radius
How close a mob needs to be to a target to respond to a command
speech_commands
Speech strings to listen out for
targeting_strategy_key
Blackboard key for targeting strategy, this is likely going to need it
Proc Details
add_new_friend
Register a new guy we want to listen to
execute_action
Execute an AI action on the provided controller, what we should actually do when this command is active.
+This should basically always be called from a planning subtree which passes its own controller.
+Return SUBTREE_RETURN_FINISH_PLANNING to pass that instruction on to the controller, or don't if you don't want that.
find_command_in_text
Returns true if we find any of our spoken commands in the text.
+if check_verbosity is true, skip the match if there spoken_text is way longer than the match
look_for_target
Target the pointed atom for actions
on_target_set
Target the pointed atom for actions
remove_friend
Stop listening to a guy
respond_to_command
Respond to something that one of our friends has asked us to do
set_command_active
Activate the command, extend to add visible messages and the like
set_command_target
Store the target for the AI blackboard
try_activate_command
Apply a command state if conditions are right, return command if successful
waive_automute
Stop the automute from triggering for commands (unless the spoken text is suspiciously longer than the command)
\ No newline at end of file
diff --git a/datum/pet_command/attack.html b/datum/pet_command/attack.html
new file mode 100644
index 00000000000..67fdf65317e
--- /dev/null
+++ b/datum/pet_command/attack.html
@@ -0,0 +1 @@
+/datum/pet_command/attack - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Pet Command: Attack
Tells a pet to chase and bite the next thing you point at
Balloon alert to display if providing an invalid target
Proc Details
refuse_target
Display feedback about not targeting something
\ No newline at end of file
diff --git a/datum/pet_command/follow.html b/datum/pet_command/follow.html
new file mode 100644
index 00000000000..1fa5530f7c6
--- /dev/null
+++ b/datum/pet_command/follow.html
@@ -0,0 +1 @@
+/datum/pet_command/follow - Space Station 13Space Station 13 - Modules - Types — Var Details
Pet Command: Follow
Tells a pet to follow you until you tell it to do something else
should we activate immediately if we're doing nothing else and gain a friend?
follow_behavior
the behavior we use to follow
\ No newline at end of file
diff --git a/datum/pet_command/minebot_ability.html b/datum/pet_command/minebot_ability.html
new file mode 100644
index 00000000000..c661e87b051
--- /dev/null
+++ b/datum/pet_command/minebot_ability.html
@@ -0,0 +1 @@
+/datum/pet_command/minebot_ability - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/pet_command/move.html b/datum/pet_command/move.html
new file mode 100644
index 00000000000..de938074340
--- /dev/null
+++ b/datum/pet_command/move.html
@@ -0,0 +1 @@
+/datum/pet_command/move - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/pet_command/protect_owner.html b/datum/pet_command/protect_owner.html
new file mode 100644
index 00000000000..18c078d2075
--- /dev/null
+++ b/datum/pet_command/protect_owner.html
@@ -0,0 +1 @@
+/datum/pet_command/protect_owner - Space Station 13Space Station 13 - Modules - Types — Var Details
Message cooldown to prevent too many people from telling you not to commit suicide
Var Details
friendly_fire_message_cooldown
Message cooldown to prevent spamming apologies
protect_behavior
The behavior we will use when he is attacked
protect_range
The range our owner needs to be in for us to protect him
self_harm_message_cooldown
Message cooldown to prevent too many people from telling you not to commit suicide
\ No newline at end of file
diff --git a/datum/pet_command/untargeted_ability.html b/datum/pet_command/untargeted_ability.html
new file mode 100644
index 00000000000..7f3645a56ec
--- /dev/null
+++ b/datum/pet_command/untargeted_ability.html
@@ -0,0 +1 @@
+/datum/pet_command/untargeted_ability - Space Station 13Space Station 13 - Modules - Types — Var Details
Pet Command: Use ability
Use an an ability that does not require any targets
\ No newline at end of file
diff --git a/datum/physiology.html b/datum/physiology.html
new file mode 100644
index 00000000000..8f0d4e991d3
--- /dev/null
+++ b/datum/physiology.html
@@ -0,0 +1 @@
+/datum/physiology - Space Station 13Space Station 13 - Modules - Types — Var Details
physiology datum
Datum that stores several modifiers in a way that isn't cleared by changing species
% of burn damage taken from cold (stacks with burn_mod)
damage_resistance
%damage reduction from all sources
heat_mod
% of burn damage taken from heat (stacks with burn_mod)
hunger_mod
% of hunger rate taken per tick.
melee_bonus
Bonus damage added to melee attacks. NOTE: this is additive rather than multiplicative, trying to multiply this will break things.
oxy_mod
% of oxygen damage taken from all sources
pressure_mod
% of brute damage taken from low or high pressure (stacks with brute_mod)
siemens_coeff
resistance to shocks
stamina_mod
% of stamina damage taken from all sources
stun_mod
% stun modifier
tox_mod
% of toxin damage taken from all sources
\ No newline at end of file
diff --git a/datum/pipeline.html b/datum/pipeline.html
new file mode 100644
index 00000000000..857cec10b52
--- /dev/null
+++ b/datum/pipeline.html
@@ -0,0 +1 @@
+/datum/pipeline - Space Station 13Space Station 13 - Modules - Types — Proc Details
Gets all pipelines connected to this with valves, including src.
Proc Details
get_connected_pipelines
Gets all pipelines connected to this with valves, including src.
\ No newline at end of file
diff --git a/datum/pipes/transit.html b/datum/pipes/transit.html
new file mode 100644
index 00000000000..f89ebd1b317
--- /dev/null
+++ b/datum/pipes/transit.html
@@ -0,0 +1 @@
+/datum/pipes/transit - Space Station 13Space Station 13 - Modules - Types — Var Details
The type of the object that results from dispensing this datum from the RPD.
Var Details
construction_type
The type of the object that results from dispensing this datum from the RPD.
\ No newline at end of file
diff --git a/datum/plant_gene.html b/datum/plant_gene.html
new file mode 100644
index 00000000000..e6ef467dbaf
--- /dev/null
+++ b/datum/plant_gene.html
@@ -0,0 +1 @@
+/datum/plant_gene - Space Station 13Space Station 13 - Modules - Types — Var Details
Used to determine if the trait should be logged when the holder is used
Var Details
dangerous
Used to determine if the trait should be logged when the holder is used
\ No newline at end of file
diff --git a/datum/playingcard.html b/datum/playingcard.html
new file mode 100644
index 00000000000..84a61df6402
--- /dev/null
+++ b/datum/playingcard.html
@@ -0,0 +1 @@
+/datum/playingcard - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/point_precise.html b/datum/point_precise.html
new file mode 100644
index 00000000000..a2dfc99c491
--- /dev/null
+++ b/datum/point_precise.html
@@ -0,0 +1 @@
+/datum/point_precise - Space Station 13Space Station 13 - Modules - Types — Proc Details
point_precise
A precise point on the map in absolute pixel locations based on world.icon_size. Pixels are FROM THE EDGE OF THE MAP!
First argument can also be a /datum/position or /atom.
Proc Details
New
First argument can also be a /datum/position or /atom.
\ No newline at end of file
diff --git a/datum/point_precise/vector.html b/datum/point_precise/vector.html
new file mode 100644
index 00000000000..3da3ede52e0
--- /dev/null
+++ b/datum/point_precise/vector.html
@@ -0,0 +1 @@
+/datum/point_precise/vector - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Same effect as initiliaze_location, but without setting the starting_x/y/z
Var Details
mpx
Calculated x movement amounts to prevent having to do trig every step.
mpy
Calculated y movement amounts to prevent having to do trig every step.
speed
Pixels per iteration
Proc Details
set_angle
Calculations use "byond angle" where north is 0 instead of 90, and south is 180 instead of 270.
set_location
Same effect as initiliaze_location, but without setting the starting_x/y/z
\ No newline at end of file
diff --git a/datum/preference_toggle.html b/datum/preference_toggle.html
new file mode 100644
index 00000000000..2e50bec5388
--- /dev/null
+++ b/datum/preference_toggle.html
@@ -0,0 +1 @@
+/datum/preference_toggle - Space Station 13Space Station 13 - Modules - Types — Var Details
Rights required to be able to use this pref option
Var Details
blackbox_message
Message for the blackbox, legacy verbs so we can't just use the name
description
Description of what the pref setting does
disable_message
Message to display when this toggle is disabled
enable_message
Message to display when this toggle is enabled
name
Name of the preference toggle. Don't set this if you don't want it to appear in game
preftoggle_bitflag
Bitflag this datum will set to
preftoggle_category
Category of the toggle
preftoggle_toggle
What toggles to set this to?
rights_required
Rights required to be able to use this pref option
\ No newline at end of file
diff --git a/datum/preferences.html b/datum/preferences.html
new file mode 100644
index 00000000000..ed06bd31356
--- /dev/null
+++ b/datum/preferences.html
@@ -0,0 +1,27 @@
+/datum/preferences - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Changes a channel's volume then queues it for DB save.
Var Details
_2fa_status
2FA status
active_character
The current active character
admin_sound_ckey_ignore
List of admin ckeys this player wont hear sounds from
character_saves
List of all character saves we have. This is indexed based on the slot number
characters_loaded
Have we loaded characters already?
clientfps
This value will be converted by BYOND, don't set already converted values there, otherwise it will set client's fps 1 step higher than it should've
colourblind_mode
Colourblind mode
fuid
Forum userid
ghost_darkness_level
How dark things are if client is a ghost, 0-255
glowlevel
Glow level for the lighting. Takes values from GLOW_HIGH to GLOW_DISABLE.
keybindings
Active keybinds (currently useable by the mob/client)
keybindings_overrides
Keybinding overrides ("name" => ["key"...])
map_vote_pref_json
Map preferences for the first past the post system
screentip_color
Color of screentips at top of screen
screentip_mode
Screentip Mode, in pixels. 8 is small, 15 is mega big, 0 is off.
server_region
Player's region override for routing optimisation
successful_load
Did we load successfully?
viewrange
View range preference for this client
volume_mixer
Volume mixer, indexed by channel as TEXT (numerical indexes will not work). Volume goes from 0 to 100.
volume_mixer_saving
The volume mixer save timer handle. Used to debounce the DB call to save, to avoid spamming.
Proc Details
build_loadout
Rebuilds the loadout_gear list of the [active_character], and returns the total end cost.
+
Caches and cuts the existing [/datum/character_save/var/loadout_gear] list and remakes it, checking the subtype_selection_cost and overall cost validity of each item.
new_item - A new /datum/gear item to be added to the loadout_gear list.
+
deserialize_volume_mixer
Returns a volume mixer list from text, usually from the DB.
+
Failure to deserialize will return the current value.
+
Arguments
+
+
vmt - The volume mixer list to deserialize.
+
get_channel_volume
Returns a volume multiplier for the given channel, from 0 to 1 (default).
+
Arguments:
+
+
channel - The channel whose volume to get.
+
save_volume_mixer
Saves [/datum/preferences/proc/volume_mixer] for the current client.
serialize_volume_mixer
Returns a DB-friendly version of a volume mixer list.
+
Arguments
+
+
vm - The volume mixer list to serialize.
+
set_channel_volume
Changes a channel's volume then queues it for DB save.
+
Arguments:
+
+
channel - The channel whose volume to change.
+
volume - The new volume, clamped between 0 and 100.
+
debounce_save - Whether to debounce the save call to prevent spamming of DB calls.
+
\ No newline at end of file
diff --git a/datum/program_picker.html b/datum/program_picker.html
new file mode 100644
index 00000000000..195acae3f3d
--- /dev/null
+++ b/datum/program_picker.html
@@ -0,0 +1 @@
+/datum/program_picker - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/proximity_monitor.html b/datum/proximity_monitor.html
new file mode 100644
index 00000000000..7e6fc1baf54
--- /dev/null
+++ b/datum/proximity_monitor.html
@@ -0,0 +1 @@
+/datum/proximity_monitor - Space Station 13Space Station 13 - Modules - Types — Var Details
The signals of the connect range component, needed to monitor the turfs in range.
Var Details
current_range
The range of the proximity monitor. Things moving wihin it will trigger HasProximity calls.
hasprox_receiver
The atom that will receive HasProximity calls.
host
The atom we are tracking
ignore_if_not_on_turf
If we don't check turfs in range if the host's loc isn't a turf
loc_connections
The signals of the connect range component, needed to monitor the turfs in range.
\ No newline at end of file
diff --git a/datum/proximity_monitor/advanced.html b/datum/proximity_monitor/advanced.html
new file mode 100644
index 00000000000..356ac2aba65
--- /dev/null
+++ b/datum/proximity_monitor/advanced.html
@@ -0,0 +1,16 @@
+/datum/proximity_monitor/advanced - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
advanced
Movable and easily code-modified fields! Allows for custom AOE effects that affect movement
+and anything inside of them, and can do custom turf effects!
+Supports automatic recalculation/reset on movement.
+
"What do I gain from using advanced over standard prox monitors?"
+
+
You can set different effects on edge vs field entrance
+
You can set effects when the proximity monitor starts and stops tracking a turf
If TRUE, edge turfs will be included as "in the field" for effects
+Can be used in certain situations where you may have effects that trigger only at the edge,
+while also wanting the field effect to trigger at edge turfs as well
Called when a turf in the field of the monitor is linked
Var Details
edge_is_a_field
If TRUE, edge turfs will be included as "in the field" for effects
+Can be used in certain situations where you may have effects that trigger only at the edge,
+while also wanting the field effect to trigger at edge turfs as well
edge_turfs
All turfs on the very last tile of the proximity monitor's radius
field_turfs
All turfs on the inside of the proximity monitor - range - 1 turfs
Proc Details
cleanup_edge_turf
Called when a turf in the edge of the monitor is unlinked
+Do NOT call this manually, requires management of the edge_turfs list
cleanup_effects
A holder proc for cleaning up various effects.
cleanup_field_turf
Called when a turf in the field of the monitor is unlinked
+Do NOT call this manually, requires management of the field_turfs list
setup_edge_turf
Called when a turf in the edge of the monitor is linked
setup_field_turf
Called when a turf in the field of the monitor is linked
\ No newline at end of file
diff --git a/datum/proximity_monitor/advanced/ai_target_tracking.html b/datum/proximity_monitor/advanced/ai_target_tracking.html
new file mode 100644
index 00000000000..f39e4fcfbad
--- /dev/null
+++ b/datum/proximity_monitor/advanced/ai_target_tracking.html
@@ -0,0 +1,3 @@
+/datum/proximity_monitor/advanced/ai_target_tracking - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
If we've built our field yet
+Prevents wasted work on the first build (since the behavior did it)
hiding_location_key
The hiding location key we're using
owning_behavior
The ai behavior who owns us
target_key
The target key we're trying to fill
targeting_strategy_key
The targeting strategy KEY we're using
Proc Details
check_new_args
Ensure our args and locals are up to date
controller_deleted
React to controller planning
controller_think
React to controller planning
pawn_changed
React to the pawn goin byebye
\ No newline at end of file
diff --git a/datum/qdel_item.html b/datum/qdel_item.html
new file mode 100644
index 00000000000..d7bda115b26
--- /dev/null
+++ b/datum/qdel_item.html
@@ -0,0 +1 @@
+/datum/qdel_item - Space Station 13Space Station 13 - Modules - Types — Var Details
Average amount of references that the hard deleted item holds when hard deleted
Var Details
reference_average
Average amount of references that the hard deleted item holds when hard deleted
\ No newline at end of file
diff --git a/datum/quirk.html b/datum/quirk.html
new file mode 100644
index 00000000000..a81147090ae
--- /dev/null
+++ b/datum/quirk.html
@@ -0,0 +1 @@
+/datum/quirk - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
For any behavior that needs to happen before a quirk is destroyed
Var Details
blacklisted
If having this bars you from rolling sec/command
cost
A positive or negative number, good quirks should be 1 to 4, bad quirks should be -1 to -4
desc
The (somewhat) IC explanation of what this quirk does, to be shown in the TGUI menu.
item_slot
If there's an item to give, what slot should it be equipped to roundstart?
item_to_give
If this quirk lets the mob spawn with an item
mob_to_spawn
If the quirk should spawn a mob with the player.
name
Name of the quirk. It's important that the basetypes don't have a name, and that any quirks you want people to see to have one.
organ_slot_to_remove
What organ should be removed (if any). Must be the string name of the organ as found in the has_organ var from the species datum.
organ_to_give
The path of the organ the quirk should give.
owner
The mob that this quirk gets applied to.
processes
If this quirk needs to do something every life cycle
species_flags
If IPCs and/or organic people can use it
trait_to_apply
If this quirk applies a trait, what trait should be applied.
Proc Details
remove_quirk_effects
For any behavior that needs to happen before a quirk is destroyed
\ No newline at end of file
diff --git a/datum/radiation_wave.html b/datum/radiation_wave.html
new file mode 100644
index 00000000000..adab109c67b
--- /dev/null
+++ b/datum/radiation_wave.html
@@ -0,0 +1 @@
+/datum/radiation_wave - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Calls rad act on each relevant atom in the turf and returns the resulting weight for that tile after reduction by insulation
Var Details
__dirs
The directions to the side of the wave, stored for easy looping
emission_type
The type of particle emitted
intensity
The strength at the origin. Multiplied by the weight of a tile to determine the strength of radiation there.
master_turf
The top left corner of the wave, from which we begin iteration on a step
move_dir
The direction of movement
source
The thing that spawned this radiation wave
steps
How far we've moved
weight_sum
Sum of all weights
weights
Weights of the current tiles in the step going clockwise from the top left corner. Starts as one tile with a weight of 1
Proc Details
process
Deals with wave propagation. Radiation waves always expand in a 90 degree cone
radiate
Calls rad act on each relevant atom in the turf and returns the resulting weight for that tile after reduction by insulation
\ No newline at end of file
diff --git a/datum/rcd_act.html b/datum/rcd_act.html
new file mode 100644
index 00000000000..67cf7a49642
--- /dev/null
+++ b/datum/rcd_act.html
@@ -0,0 +1 @@
+/datum/rcd_act - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Attempt the action. This should not need to be overridden.
Var Details
cost
How much compressed matter this action costs.
delay
How long this action takes.
end_effect_type
The effect (if any) to create when the action completes.
mode
The mode the RCD must be in.
start_effect_type
The effect (if any) to create when the action starts.
start_message
The message (if any) to send the user when the action starts.
Proc Details
act
Perform the act. You should usually override this.
can_act
Test to see if the act is possible. You should usually override this.
try_act
Attempt the action. This should not need to be overridden.
\ No newline at end of file
diff --git a/datum/reagent.html b/datum/reagent.html
new file mode 100644
index 00000000000..c821f486cf5
--- /dev/null
+++ b/datum/reagent.html
@@ -0,0 +1,6 @@
+/datum/reagent - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
If this variable is true, chemicals will continue to process in mobs when overdosed.
burn_color
If we burn in a fire, what color do we have?
burn_duration
How long would a fire burn using this reagent? Currently only used for chemical flamethrowers
burn_temperature
At what temperature does this reagent burn? Currently only used for chemical flamethrowers
color
The color of the agent outside of containers.
fire_stack_applications
How many firestacks will the reagent apply when it is burning? Currently only used for chemical flamethrowers
holder
A reference to the holder the chemical is 'in'.
max_kidney_damage
How much damage can this reagent do when you have no kidneys?
Proc Details
reaction_mob
React with a mob.
+
The method var can be either REAGENT_TOUCH or REAGENT_INGEST. Some
+reagents transfer on touch, others don't; dependent on if they penetrate the
+skin or not. You'll want to put stuff like acid-facemelting in here. Should
+only ever be called, directly, on living mobs.
reaction_obj
React with an object.
reaction_radiation
By default do nothing
reaction_temperature
By default do nothing
reaction_turf
React with a turf.
+
You'll want to put stuff like extra slippery floors for lube or something in here.
\ No newline at end of file
diff --git a/datum/reagent/aranesp.html b/datum/reagent/aranesp.html
new file mode 100644
index 00000000000..2c652b20a72
--- /dev/null
+++ b/datum/reagent/aranesp.html
@@ -0,0 +1 @@
+/datum/reagent/aranesp - Space Station 13Space Station 13 - Modules - Types — Var Details
how much do we edit the stun and stamina mods? lower is more resistance
Var Details
tenacity
how much do we edit the stun and stamina mods? lower is more resistance
\ No newline at end of file
diff --git a/datum/reagent/blood.html b/datum/reagent/blood.html
new file mode 100644
index 00000000000..181e6011e73
--- /dev/null
+++ b/datum/reagent/blood.html
@@ -0,0 +1 @@
+/datum/reagent/blood - Space Station 13Space Station 13 - Modules - Types — Proc Details
If irradiated by beta radiation and there are advanced viruses in the blood become a sample of viral genetic data
Proc Details
reaction_radiation
If irradiated by beta radiation and there are advanced viruses in the blood become a sample of viral genetic data
\ No newline at end of file
diff --git a/datum/reagent/consumable/ethanol/mezcal.html b/datum/reagent/consumable/ethanol/mezcal.html
new file mode 100644
index 00000000000..afd648dfe14
--- /dev/null
+++ b/datum/reagent/consumable/ethanol/mezcal.html
@@ -0,0 +1 @@
+/datum/reagent/consumable/ethanol/mezcal - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/reagent/consumable/ethanol/sontse.html b/datum/reagent/consumable/ethanol/sontse.html
new file mode 100644
index 00000000000..894bc252cff
--- /dev/null
+++ b/datum/reagent/consumable/ethanol/sontse.html
@@ -0,0 +1 @@
+/datum/reagent/consumable/ethanol/sontse - Space Station 13Space Station 13 - Modules - Types — Var Details
Exists purely because of changelings. I hate them.
Var Details
activated
Exists purely because of changelings. I hate them.
\ No newline at end of file
diff --git a/datum/reagent/helgrasp.html b/datum/reagent/helgrasp.html
new file mode 100644
index 00000000000..41ec1a2f83b
--- /dev/null
+++ b/datum/reagent/helgrasp.html
@@ -0,0 +1 @@
+/datum/reagent/helgrasp - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/reagent/mephedrone.html b/datum/reagent/mephedrone.html
new file mode 100644
index 00000000000..28e1c21041f
--- /dev/null
+++ b/datum/reagent/mephedrone.html
@@ -0,0 +1 @@
+/datum/reagent/mephedrone - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
So. If a person changes up their hud settings (Changing their ui theme), the visual effects for this reagent will break, and they will be able to see easily. This 3 part proc waits for the plane controlers to be setup, and over 2 other procs, rengages the visuals
Leaves an afterimage behind the mob when they move
Var Details
changeling_chemical_tracker
Keeps track of how many chemicals we are delaying the changeling by.
Proc Details
dodge_bullets
Tries to dodge incoming bullets if we aren't disabled for any reasons
no_hud_cheese
So. If a person changes up their hud settings (Changing their ui theme), the visual effects for this reagent will break, and they will be able to see easily. This 3 part proc waits for the plane controlers to be setup, and over 2 other procs, rengages the visuals
no_hud_cheese_2
This part of the anticheese sets up the basic visual effects normally setup when the reagent gets into your system.
no_hud_cheese_3
This part sets up the OD visual effects.
on_movement
Leaves an afterimage behind the mob when they move
\ No newline at end of file
diff --git a/datum/reagent/methamphetamine.html b/datum/reagent/methamphetamine.html
new file mode 100644
index 00000000000..d1315e42e62
--- /dev/null
+++ b/datum/reagent/methamphetamine.html
@@ -0,0 +1 @@
+/datum/reagent/methamphetamine - Space Station 13Space Station 13 - Modules - Types — Var Details
modifier to the stun time of the mob taking the drug
Var Details
tenacity
modifier to the stun time of the mob taking the drug
\ No newline at end of file
diff --git a/datum/reagent/oil.html b/datum/reagent/oil.html
new file mode 100644
index 00000000000..a36d5247e70
--- /dev/null
+++ b/datum/reagent/oil.html
@@ -0,0 +1 @@
+/datum/reagent/oil - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/reagent/virus_genes.html b/datum/reagent/virus_genes.html
new file mode 100644
index 00000000000..11a854e388d
--- /dev/null
+++ b/datum/reagent/virus_genes.html
@@ -0,0 +1 @@
+/datum/reagent/virus_genes - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/datum/reagents.html b/datum/reagents.html
new file mode 100644
index 00000000000..a4e8e4f5a64
--- /dev/null
+++ b/datum/reagents.html
@@ -0,0 +1,42 @@
+/datum/reagents - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Reagents Holder
The holder is the datum that holds a list of all reagents
+currently in the object.
+
By default, all atom have an empty reagents var. If you want to use
+an object for the chemistry system you'll need to add something like this in
+its new proc:
+
// Create a new datum, 100 is the maximum_volume of the new holder datum.
+var/datum/reagents/R = new/datum/reagents(100)
+reagents = R // Assign the new datum to the objects reagents var
+R.my_atom = src // set the holders my_atom to src so that we know where we are.
+
+
This can also be done by calling a convenience proc e.g.
+/atom/proc/create_reagents(max_volume)
Same as /datum/reagents/proc/trans_to but only for a specific reagent in
+the reagent list. If the specified amount is greater than what is available,
+it will use the amount of the reagent that is available. If no reagent
+exists, returns null.
Update the total volume of the holder (the volume of all reagents added together).
Var Details
maximum_volume
This is the maximum volume of the holder.
my_atom
This is the atom the holder is 'in'. Useful if you need to find the location. (i.e. for explosions)
reagent_list
All contained reagents. More specifically, references to the reagent datums.
total_volume
The total volume of all reagents in this holder.
Proc Details
add_reagent
Attempts to add X of the matching reagent to the holder.
+
You won't use this much. Mostly in new procs for pre-filled objects.
clear_reagents
Remove all reagents from the holder.
del_reagent
Completely remove the reagent with the matching ID.
get_master_reagent_id
Get the id of the reagent there is the most of in this holder
get_reagent_amount
Returns the amount of the matching reagent inside the holder.
+
Returns FALSE if the reagent is missing.
handle_reactions
Check all recipes and, on a match, uses them.
+
It will also call the recipe's on_reaction proc (for explosions or w/e).
+Currently, this proc is automatically called by /datum/reagents/proc/trans_to.
+Modified from the original to preserve reagent data across reactions
+(originally for xenoarchaeology).
has_reagent
Return whether the holder contains the reagent.
+
If you pass it an amount it will additionally check if the amount is matched.
isolate_reagent
Remove all reagents but the specified one.
metabolize
Called by /mob/living/proc/Life. You shouldn't have to use this one directly.
overdose_list
Returns a list of all the chemical IDs in the reagent holder that are overdosing.
reaction
Calls the appropriate reaction procs of the reagents.
+
I.e. if A is an object, it will call the reagent's reaction_obj
+proc. The method var is used for reaction on mobs. It simply tells
+us if the mob TOUCHed the reagent or if it INGESTed the reagent.
+
Since the volume can be checked in a reagents proc, you might want to
+use the volume_modifier var to modifiy the passed value without actually
+changing the volume of the reagents.
+
If you're not sure if you need to use this the answer is very most likely 'No'.
+
You'll want to use this proc whenever an atom first comes in contact
+with the reagents of a holder. (in the 'splash' part of a beaker i.e.)
remove_any
Removes reagents from the holder until the passed amount is matched.
+
It'll try to remove some of ALL reagents contained.
remove_reagent
The exact opposite of the add_reagent proc.
+
Modified from original to return the reagent's data, in order to preserve
+reagent data across reactions (originally for xenoarchaeology).
trans_id_to
Same as /datum/reagents/proc/trans_to but only for a specific reagent in
+the reagent list. If the specified amount is greater than what is available,
+it will use the amount of the reagent that is available. If no reagent
+exists, returns null.
trans_to
Equally transfer the contents of the holder to another objects holder.
+
You need to pass it the object (not the holder) you want to transfer to and
+the amount you want to transfer. Its return value is the actual amount
+transfered (if one of the objects is full/empty).
+
If preserve_data = FALSE, the reagents data will be lost. Useful if you use
+data for some strange stuff and don't want it to be transferred.
update_total
Update the total volume of the holder (the volume of all reagents added together).
\ No newline at end of file
diff --git a/datum/reagents_editor.html b/datum/reagents_editor.html
new file mode 100644
index 00000000000..bde631f645c
--- /dev/null
+++ b/datum/reagents_editor.html
@@ -0,0 +1 @@
+/datum/reagents_editor - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/reality_smash_tracker.html b/datum/reality_smash_tracker.html
new file mode 100644
index 00000000000..9b9ec7d2d4d
--- /dev/null
+++ b/datum/reality_smash_tracker.html
@@ -0,0 +1,13 @@
+/datum/reality_smash_tracker - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
reality_smash_tracker
#Reality smash tracker
+
A global singleton data that tracks all the heretic
+influences ("reality smashes") that we've created,
+and all of the heretics (minds) that can see them.
+
Handles ensuring all minds can see influences, generating
+new influences for new heretic minds, and allowing heretics
+to see new influences that are created.
Removes a mind from the list of people that can see the reality smashes
Var Details
num_drained
The total number of influences that have been drained, for tracking.
smashes
List of tracked influences (reality smashes)
tracked_heretics
List of minds with the ability to see influences
Proc Details
add_tracked_mind
Adds a mind to the list of people that can see the reality smashes
+
Use this whenever you want to add someone to the list
generate_new_influences
Generates a set amount of reality smashes
+based on the number of already existing smashes
+and the number of minds we're tracking.
remove_tracked_mind
Removes a mind from the list of people that can see the reality smashes
+
Use this whenever you want to remove someone from the list
\ No newline at end of file
diff --git a/datum/recipe.html b/datum/recipe.html
new file mode 100644
index 00000000000..35c47dcca1a
--- /dev/null
+++ b/datum/recipe.html
@@ -0,0 +1,17 @@
+/datum/recipe - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Similarly to the function above, this checks for items, except instead of being passed a reagent holder, we're passed
+[type_path] = amount as num.
+Returns INGREDIENT_CHECK_EXACT if we have the precise amount thats requested.
+Returns INGREDIENT_CHECK_FAILURE if we do not have enough.
+Returns INGREDIENT_CHECK_SURPLUS if we have MORE than requested.
Similarly to the function above, this checks for reagents, except instead of being passed a reagent holder, we're passed
+[reagent_id] = amount as num.
+Returns INGREDIENT_CHECK_EXACT if we have the precise amount thats requested.
+Returns INGREDIENT_CHECK_FAILURE if we do not have enough.
+Returns INGREDIENT_CHECK_SURPLUS if we have MORE than requested.
Var Details
duplicate
Whether or not an upgraded kitchen machine will create more products using the same amount of ingredients
Proc Details
check_items_assoc_list
Similarly to the function above, this checks for items, except instead of being passed a reagent holder, we're passed
+[type_path] = amount as num.
+Returns INGREDIENT_CHECK_EXACT if we have the precise amount thats requested.
+Returns INGREDIENT_CHECK_FAILURE if we do not have enough.
+Returns INGREDIENT_CHECK_SURPLUS if we have MORE than requested.
check_reagents_assoc_list
Similarly to the function above, this checks for reagents, except instead of being passed a reagent holder, we're passed
+[reagent_id] = amount as num.
+Returns INGREDIENT_CHECK_EXACT if we have the precise amount thats requested.
+Returns INGREDIENT_CHECK_FAILURE if we do not have enough.
+Returns INGREDIENT_CHECK_SURPLUS if we have MORE than requested.
\ No newline at end of file
diff --git a/datum/redis_callback.html b/datum/redis_callback.html
new file mode 100644
index 00000000000..5a1f220f01b
--- /dev/null
+++ b/datum/redis_callback.html
@@ -0,0 +1,10 @@
+/datum/redis_callback - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Redis callback
Callback datum for subscribed redis channel handling
+
This datum is used for easily assigning callbacks for SSredis to use
+when a message is receievd on a channel. Define a channel on the channel
+var and SSredis will automatically register subtypes of /datum/redis_callback
This callback is ran when a message is received on the assigned channel.
+Make sure you override it on subtypes or it wont work.
+
Arguments:
+
+
message - The message received on the redis channel
+
\ No newline at end of file
diff --git a/datum/redis_message.html b/datum/redis_message.html
new file mode 100644
index 00000000000..1b1a296287e
--- /dev/null
+++ b/datum/redis_message.html
@@ -0,0 +1,4 @@
+/datum/redis_message - Space Station 13Space Station 13 - Modules - Types — Var Details
Redis message
Holder datum for redis messages
+
This datum is used for caching messages that SSredis tries to
+publish before it has connected. It is not used for any subscribed
+channel handling.
\ No newline at end of file
diff --git a/datum/regional_powernet.html b/datum/regional_powernet.html
new file mode 100644
index 00000000000..59c33152105
--- /dev/null
+++ b/datum/regional_powernet.html
@@ -0,0 +1 @@
+/datum/regional_powernet - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
remove a power machine from the current powernet, if the powernet is then empty, delete it
Var Details
available_power
the current available power in the powernet (Watts)
cables
A list of All cables & junctions in this powernet
excess_power
excess power on the powernet (typically avail-load) (Watts)
nodes
All Power Machines that are connected to this powernet
number
The Powernet Unique ID Number
power_demand
the current load on the powernet, increased by each machine at processing (Watts)
queued_power_demand
load applied to powernet between power ticks. (Watts)
queued_power_production
what available power was gathered last tick, then becomes... (Watts)
smoothed_available_power
the available power as it appears on the power console (gradually updated) (Watts)
smoothed_demand
the load as it appears on the power console (gradually updated)
Proc Details
add_cable
add a cable to the current powernet
add_machine
add a power machine to the current powernet
calculate_power_balance
Returns the non-clamped difference between available power on the net and the demanded power, i.g. consumption vs. supply
calculate_surplus
Returns the clamped difference between available power on the net and the demanded power, i.g. the surplus power available
remove_cable
remove a cable from the current powernet, if the powernet is empty after, delete it
remove_machine
remove a power machine from the current powernet, if the powernet is then empty, delete it
\ No newline at end of file
diff --git a/datum/rep_purchase.html b/datum/rep_purchase.html
new file mode 100644
index 00000000000..bff1050b0ff
--- /dev/null
+++ b/datum/rep_purchase.html
@@ -0,0 +1,14 @@
+/datum/rep_purchase - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Rep Purchase
Describes something that can be purchased with Contractor Rep.
How many times the purchase can be made.
+-1 means infinite stock.
Proc Details
buy
Attempts to perform the purchase.
+
Returns TRUE or FALSE depending on whether the purchase succeeded.
+
Arguments:
+
+
hub - The contractor hub.
+
user - The user who is making the purchase.
+
on_buy
Called when the purchase was made successfully.
+
Arguments:
+
+
hub - The contractor hub.
+
user - The user who made the purchase.
+
\ No newline at end of file
diff --git a/datum/rep_purchase/blackout.html b/datum/rep_purchase/blackout.html
new file mode 100644
index 00000000000..f4690041db6
--- /dev/null
+++ b/datum/rep_purchase/blackout.html
@@ -0,0 +1 @@
+/datum/rep_purchase/blackout - Space Station 13Space Station 13 - Modules - Types — Var Details
How long a contractor must wait before calling another blackout, in deciseconds.
next_blackout
Static cooldown variable for blackouts.
\ No newline at end of file
diff --git a/datum/rep_purchase/item.html b/datum/rep_purchase/item.html
new file mode 100644
index 00000000000..f8bc6cc7400
--- /dev/null
+++ b/datum/rep_purchase/item.html
@@ -0,0 +1 @@
+/datum/rep_purchase/item - Space Station 13Space Station 13 - Modules - Types — Var Details
Rep Purchase - Item
Describes an item that can be purchased with Contractor Rep.
The typepath of the item to instantiate and give to the buyer on purchase.
Var Details
item_type
The typepath of the item to instantiate and give to the buyer on purchase.
\ No newline at end of file
diff --git a/datum/research.html b/datum/research.html
new file mode 100644
index 00000000000..d81f21a5560
--- /dev/null
+++ b/datum/research.html
@@ -0,0 +1,4 @@
+/datum/research - Space Station 13Space Station 13 - Modules - Types — Var Details
research
Master Types
+
+
Includes all the helper procs and basic tech processing.
+Holder for all the existing, archived, and known tech. Individual to each network controller.
Used during the rnd sync system, to ensure that blacklists are reverted, then cleared.
Var Details
blacklisted_designs
List of designs that have been blacklisted by the server controller
known_designs
List of available designs
known_tech
List of locally known tech.
possible_designs
List of all designs
unblacklisted_designs
Used during the rnd sync system, to ensure that blacklists are reverted, then cleared.
\ No newline at end of file
diff --git a/datum/response_team.html b/datum/response_team.html
new file mode 100644
index 00000000000..814b33b164f
--- /dev/null
+++ b/datum/response_team.html
@@ -0,0 +1 @@
+/datum/response_team - Space Station 13Space Station 13 - Modules - Types — Var Details
Whether the ERT announcement should be hidden from the station
Var Details
silent
Whether the ERT announcement should be hidden from the station
\ No newline at end of file
diff --git a/datum/resumable_cost_counter.html b/datum/resumable_cost_counter.html
new file mode 100644
index 00000000000..bd03ee2d429
--- /dev/null
+++ b/datum/resumable_cost_counter.html
@@ -0,0 +1 @@
+/datum/resumable_cost_counter - Space Station 13Space Station 13 - Modules - Types — Proc Details
resumable_cost_counter
A cost counter for resumable, repeating processes.
Updates the counter based on the time spent making progress and whether we finished the task.
to_string
Gets a display string for this cost counter.
\ No newline at end of file
diff --git a/datum/river_spawner.html b/datum/river_spawner.html
new file mode 100644
index 00000000000..40989c62b22
--- /dev/null
+++ b/datum/river_spawner.html
@@ -0,0 +1,11 @@
+/datum/river_spawner - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
river_spawner
A straightforward system for making "rivers", paths made up of a specific
+turf type that are generated in a random path on a z-level.
handles changing the lava turfs, and if it should delay it and place warnings
Var Details
collected_turfs
To hold all the found turfs to convert to the lava type
ignore_bridges
Do we ignore building any bridges?
river_turf_type
The base type that makes up the river.
shoreline_turf_type
The turf used when a spread of the tile stops.
spread_prob
The initial probability that a river tile will spread to adjacent tiles.
spread_prob_loss
The amount reduced from spread_prob on every spread iteration to cause falloff.
target_z
The z-level to generate the river on. There is theoretically nothing stopping
+this from being used across z-levels, but we're keeping things simple.
warning
Does the lava generate a warning beforehand
whitelist_area_type
The area that the spawner is allowed to spread or detour to.
whitelist_turf_type
The type that the spawner is allowed to spread or detour to.
Proc Details
convert_turf
actually convert the turf
generate
Generate a river between the bounds specified by (min_x, min_y) and
+(max_x, max_y).
+
nodes is the number of unique points in those bounds the river will
+connect to. Note that nodes says little about the resultant size of the
+river due to its ability to detour far away from the direct path between them.
+set ignore_bridges TRUE to not spawn any new bridges, and set warning to TRUE to
+allow for the new generations to have a telegraphed icon first
handle_change
handles changing the lava turfs, and if it should delay it and place warnings
\ No newline at end of file
diff --git a/datum/rnd_backup.html b/datum/rnd_backup.html
new file mode 100644
index 00000000000..56035f32771
--- /dev/null
+++ b/datum/rnd_backup.html
@@ -0,0 +1 @@
+/datum/rnd_backup - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/robot_component.html b/datum/robot_component.html
new file mode 100644
index 00000000000..8a536ea2aa3
--- /dev/null
+++ b/datum/robot_component.html
@@ -0,0 +1 @@
+/datum/robot_component - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
There tends to be some desync between slowdown and damage when being healed up slowly like through self-repair or upgraded rechargers.
Var Details
current_slowdown_factor
How much a component is contributing to slowdown, set on New to be equal to min_slowdown_factor
max_slowdown_factor
The max amount of slowness a component can contribute, set on New to be 1% of the max damage
min_slowdown_factor
The minimum amount of speed modification a component can contribute. Currently just 0 for all.
Proc Details
rounding_error_check
There tends to be some desync between slowdown and damage when being healed up slowly like through self-repair or upgraded rechargers.
\ No newline at end of file
diff --git a/datum/robot_storage.html b/datum/robot_storage.html
new file mode 100644
index 00000000000..01ce44be6e7
--- /dev/null
+++ b/datum/robot_storage.html
@@ -0,0 +1,17 @@
+/datum/robot_storage - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
robot_storage
# The robot_energy_storage datum
+
+
Used to handle robot stack items, such as metal, wood, nanopaste, etc.
+
To make things simple, the default `cost` of using 1 item from a borg stack, is 1.
+So then for example, when we have a `max_energy` of 50, the borg can use 50 of that item before it runs out.
+
+The `recharge_rate` will be affected by the charge rate of a borg recharger, depending on the level of parts. By default it is 1.
+This amount will be given every 2 seconds. So at round start, rechargers will give 1 energy back every 2 seconds, to each stack the borg has.
+
Called whenever the cyborg uses one of its stacks. Subtract the amount used from this datum's amount variable.
Var Details
amount
Current amount of materials.
max_amount
The max amount of materials the stack can hold at once.
name
The name of the storage.
statpanel_name
The name that will be displayed in the status panel.
Proc Details
add_charge
Called whenever the cyborg is recharging and gains charge on its stack, or when clicking on other same-type stacks in the world.
+
Arguments:
+
+
addition - the number to add to the energy var.
+
use_charge
Called whenever the cyborg uses one of its stacks. Subtract the amount used from this datum's amount variable.
+
Arguments:
+
+
reduction - the number to subtract from the amount var.
+
\ No newline at end of file
diff --git a/datum/robot_storage/energy.html b/datum/robot_storage/energy.html
new file mode 100644
index 00000000000..c83867af22d
--- /dev/null
+++ b/datum/robot_storage/energy.html
@@ -0,0 +1 @@
+/datum/robot_storage/energy - Space Station 13Space Station 13 - Modules - Types — Var Details
The amount of energy the stack will regain while charging.
Var Details
recharge_rate
The amount of energy the stack will regain while charging.
\ No newline at end of file
diff --git a/datum/robot_storage/material.html b/datum/robot_storage/material.html
new file mode 100644
index 00000000000..245b7a7e500
--- /dev/null
+++ b/datum/robot_storage/material.html
@@ -0,0 +1 @@
+/datum/robot_storage/material - Space Station 13Space Station 13 - Modules - Types — Var Details
material
This datum is an alternative to the energy storages, instead being recharged in different ways
Does this get added to the autorefill from the ORM
stack
What stacktype do we originally have
\ No newline at end of file
diff --git a/datum/ruleset.html b/datum/ruleset.html
new file mode 100644
index 00000000000..a4f7495714e
--- /dev/null
+++ b/datum/ruleset.html
@@ -0,0 +1 @@
+/datum/ruleset - Space Station 13Space Station 13 - Modules - Types — Var Details
ruleset
These are gamemode rulesets for the dynamic gamemode type. They determine what antagonists spawn during a round.
Applies the mind roll to assigned_role, preventing them from rolling a normal job. Good for wizards and nuclear operatives.
banned_jobs
These roles 100% cannot be this antagonist
banned_mutual_rulesets
Rulesets that cannot be rolled while this ruleset is active. Used to prevent traitors from rolling while theres cultists, etc.
banned_species
A blacklist of species names that cannot play this antagonist
banned_species_only
If true, the species blacklist is now a species whitelist
implied_ruleset_type
A ruleset to be added when this ruleset is selected by the gamemode
latespawn_time
If non-zero, how long from the start of the game should this role enable latespawns?
latespawns_enabled
Should this ruleset roll latespawns?
name
What this ruleset is called
pre_antags
All of the minds that we will make into our antagonist type
protected_jobs
These roles can't be antagonists because mindshielding or are command staff (this can be disabled via config)
ruleset_cost
The cost to roll this ruleset
ruleset_weight
The weight to roll this ruleset
\ No newline at end of file
diff --git a/datum/ruleset/implied.html b/datum/ruleset/implied.html
new file mode 100644
index 00000000000..8fed5fb1a06
--- /dev/null
+++ b/datum/ruleset/implied.html
@@ -0,0 +1 @@
+/datum/ruleset/implied - Space Station 13Space Station 13 - Modules - Types — Var Details
Set this to true if this implied ruleset was activated
Var Details
target_signal
This signal is registered on whatever (multiple) rulesets implied us. This will call on_implied.
was_triggered
Set this to true if this implied ruleset was activated
\ No newline at end of file
diff --git a/datum/ruleset/team.html b/datum/ruleset/team.html
new file mode 100644
index 00000000000..93dcf5d31ba
--- /dev/null
+++ b/datum/ruleset/team.html
@@ -0,0 +1 @@
+/datum/ruleset/team - Space Station 13Space Station 13 - Modules - Types — Var Details
Whether there should only be one of this kind of team. This could be used for blood-brothers if false.
Var Details
individual_cost
How much does each person on the team cost?
minimum_team_size
Minimum team size
team_size
How many players on a team.
team_type
Team datum to create.
unique_team
Whether there should only be one of this kind of team. This could be used for blood-brothers if false.
\ No newline at end of file
diff --git a/datum/scoreboard.html b/datum/scoreboard.html
new file mode 100644
index 00000000000..f51161b08cd
--- /dev/null
+++ b/datum/scoreboard.html
@@ -0,0 +1 @@
+/datum/scoreboard - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
A function to determine the cash plus the account balance of the wealthiest escapee
Var Details
all_arrested
Did the crew catch all of the antags alive?
crewscore
Overall combined score for the whole round.
damaged_health
How damaged was the most injured person on the shuttle?
damaged_job
What was the job of the most injured person on the shuttle?
damaged_key
What was the ckey of the most injured person on the shuttle?
damaged_name
What was the name of the most injured person on the shuttle?
dead_ai
If the AI is dead, big points penalty.
disc_secure
Is the NAD safe and secure?
mess_bonus
If there are no messes on the station anywhere, huge bonus.
nuked
Was the station blown into little bits?
nuked_penalty
Points penalty for being blown to little bits.
power_bonus
If all APCs on the station are running optimally, big bonus.
richest_cash
How much money did the richest person on the shuttle have?
richest_job
What was the job of the richest person on the shuttle?
richest_key
What was the ckey of the richest person on the shuttle?
richest_name
What was the name of the richest person on the shuttle?
score_arrested
How many antagonists are alive in the brig? (Nuke ops & Revolution)
score_clown_abuse
How many times was the clown punched, struck, or otherwise maligned?
score_dead_command
How many command members died? (Revolution)
score_dead_crew
How many people /didn't/ get out alive?
score_disease
How many rampant, uncured diseases are on board the station?
score_escapees
How many people got out alive?
score_events_endured
How many random events did the station survive?
score_food_eaten
How much noms were had by the crew?
score_gigajoules_exported
How many GigaJoules of power did we export?
score_greentext
Were the antagonists successful?
score_meals
How many meals were made?
score_mess
How much blood, puke, stains etc went uncleaned?
score_ops_killed
How many operatives were killed? (Nuke ops & Revolution)
score_ore_mined
How much ore has been mined on the mining z level?
score_power_loss
How many APCs have poor charge?
score_research_done
How much research was done by science?
score_things_harvested
How many harvests have hydroponics done?
score_things_shipped
How many useful items have cargo shipped out?
Proc Details
get_score_container_worth
A recursive function to properly determine the cash on the wealthiest escapee
get_score_person_worth
A function to determine the cash plus the account balance of the wealthiest escapee
\ No newline at end of file
diff --git a/datum/secondary_goal_progress/random_smithed_item.html b/datum/secondary_goal_progress/random_smithed_item.html
new file mode 100644
index 00000000000..6dfbe606dda
--- /dev/null
+++ b/datum/secondary_goal_progress/random_smithed_item.html
@@ -0,0 +1 @@
+/datum/secondary_goal_progress/random_smithed_item - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/security_level.html b/datum/security_level.html
new file mode 100644
index 00000000000..7ced3d54e91
--- /dev/null
+++ b/datum/security_level.html
@@ -0,0 +1,3 @@
+/datum/security_level - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
security_level
Security levels
+
These are used by the security level subsystem. Each one of these represents a security level that a player can set.
Should contain actions that must be completed before actual security level set
Var Details
ai_announcement_sound
The AI announcement sound about code change, that will be played after main sound
color
Color of security level
elevating_to_announcement_text
Our announcement when elevating to this level
elevating_to_announcement_title
Our announcement title when elevating to this level
elevating_to_sound
The sound that we will play when elevated to this security level
lowering_to_announcement_text
Our announcement when lowering to this level
lowering_to_announcement_title
Our announcement title when lowering to this level
lowering_to_sound
The sound that we will play when lowered to this security level
name
The name of this security level.
number_level
The numerical level of this security level, see defines for more information.
set_delay
The delay, after which the security level will be set
status_display_data
The status display data that will be posted to all status displays on security level set
status_display_mode
The status display that will be posted to all status displays on security level set
Proc Details
pre_change
Should contain actions that must be completed before actual security level set
\ No newline at end of file
diff --git a/datum/security_level/blue.html b/datum/security_level/blue.html
new file mode 100644
index 00000000000..f01c3de201f
--- /dev/null
+++ b/datum/security_level/blue.html
@@ -0,0 +1,2 @@
+/datum/security_level/blue - Space Station 13Space Station 13 - Modules - Types
blue
BLUE
+
Caution advised
\ No newline at end of file
diff --git a/datum/security_level/delta.html b/datum/security_level/delta.html
new file mode 100644
index 00000000000..c8efed10609
--- /dev/null
+++ b/datum/security_level/delta.html
@@ -0,0 +1,2 @@
+/datum/security_level/delta - Space Station 13Space Station 13 - Modules - Types
delta
DELTA
+
Station self-destruiction mechanism has been engaged
\ No newline at end of file
diff --git a/datum/security_level/epsilon.html b/datum/security_level/epsilon.html
new file mode 100644
index 00000000000..986acaa1e57
--- /dev/null
+++ b/datum/security_level/epsilon.html
@@ -0,0 +1,2 @@
+/datum/security_level/epsilon - Space Station 13Space Station 13 - Modules - Types
epsilon
Epsilon
+
Station is not longer under the Central Command and to be destroyed by Death Squad (Or maybe not)
\ No newline at end of file
diff --git a/datum/security_level/gamma.html b/datum/security_level/gamma.html
new file mode 100644
index 00000000000..d35b9461e6d
--- /dev/null
+++ b/datum/security_level/gamma.html
@@ -0,0 +1,2 @@
+/datum/security_level/gamma - Space Station 13Space Station 13 - Modules - Types
gamma
Gamma
+
Station major hostile threats
\ No newline at end of file
diff --git a/datum/security_level/green.html b/datum/security_level/green.html
new file mode 100644
index 00000000000..fa424b02eef
--- /dev/null
+++ b/datum/security_level/green.html
@@ -0,0 +1,2 @@
+/datum/security_level/green - Space Station 13Space Station 13 - Modules - Types
green
GREEN
+
No threats
\ No newline at end of file
diff --git a/datum/security_level/red.html b/datum/security_level/red.html
new file mode 100644
index 00000000000..2b0d0c9f61f
--- /dev/null
+++ b/datum/security_level/red.html
@@ -0,0 +1,2 @@
+/datum/security_level/red - Space Station 13Space Station 13 - Modules - Types
red
RED
+
Hostile threats
\ No newline at end of file
diff --git a/datum/server_command.html b/datum/server_command.html
new file mode 100644
index 00000000000..aab091c1c6e
--- /dev/null
+++ b/datum/server_command.html
@@ -0,0 +1,4 @@
+/datum/server_command - Space Station 13Space Station 13 - Modules - Types — Var Details
Server Command
Datum to handle both sending and receiving of server commands
+
This datum is an extension of the redis callback and is designed for tighter integration with the BYOND servers.
+This list is registered and managed by SSintancing, not SSredis.
+NOTE: These commands are "fire and forget". If you need specific data from each server, use world/Topic still
Does the sending server want to ignore this command? This is almost always yes unless you are doing testing stuff
source
The source BYOND server for this message
\ No newline at end of file
diff --git a/datum/server_configuration.html b/datum/server_configuration.html
new file mode 100644
index 00000000000..a277903eede
--- /dev/null
+++ b/datum/server_configuration.html
@@ -0,0 +1 @@
+/datum/server_configuration - Space Station 13Space Station 13 - Modules - Types — Var Details
server_configuration
Represents a base configuration datum. Has everything else bundled into it
Holder for the lighting effects configuration datum
logging
Holder for the logging configuration datum
mc
Holder for the MC configuration datum
metrics
Holder for the metrics configuration datum
movement
Holder for the movement configuration datum
overflow
Holder for the overflow configuration datum
raw_data
Raw data. Stored here to avoid passing data between procs constantly
redis
Holder for the redis configuration datum
ruins
Holder for the ruins configuration datum
system
Holder for the system configuration datum
tgui
Holder for the tgui configuration datum
url
Holder for the URL configuration datum
vote
Holder for the voting configuration datum
\ No newline at end of file
diff --git a/datum/shuttle_loan_situation.html b/datum/shuttle_loan_situation.html
new file mode 100644
index 00000000000..f13cc17ca6e
--- /dev/null
+++ b/datum/shuttle_loan_situation.html
@@ -0,0 +1 @@
+/datum/shuttle_loan_situation - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
shuttle_loan_situation
One of the potential shuttle loans you might receive.
Spawns paths added to spawn_list, and passes empty shuttle turfs so you can spawn more complicated things like dead bodies.
Var Details
announcement_text
What they said about it.
bonus_points
Supply points earned for taking the deal.
logging_desc
Small description of the loan for easier log reading.
sender
Who sent the shuttle
Proc Details
spawn_items
Spawns paths added to spawn_list, and passes empty shuttle turfs so you can spawn more complicated things like dead bodies.
\ No newline at end of file
diff --git a/datum/smith_material.html b/datum/smith_material.html
new file mode 100644
index 00000000000..d42280d7b84
--- /dev/null
+++ b/datum/smith_material.html
@@ -0,0 +1 @@
+/datum/smith_material - Space Station 13Space Station 13 - Modules - Types — Var Details
How much larger does a bit with this material make it?
throw_force_mult
Throw force multiplier
tool_failure_mult
Tool precision multiplier
tool_productivity_mult
Tool productivity mult
tool_speed_mult
Tool speed multiplier
\ No newline at end of file
diff --git a/datum/smith_material/uranium.html b/datum/smith_material/uranium.html
new file mode 100644
index 00000000000..813e48b8366
--- /dev/null
+++ b/datum/smith_material/uranium.html
@@ -0,0 +1 @@
+/datum/smith_material/uranium - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/smith_quality.html b/datum/smith_quality.html
new file mode 100644
index 00000000000..ae21d408532
--- /dev/null
+++ b/datum/smith_quality.html
@@ -0,0 +1 @@
+/datum/smith_quality - Space Station 13Space Station 13 - Modules - Types — Var Details
How much extra work is needed to produce this quality?
Var Details
material_mult
How many more materials does this quality require?
secondary_goal_candidate
Is this quality valid for secondary goals?
secondary_goal_difficulty
How much is this secondary goal worth?
stat_mult
How much does this quality improve stats?
work_mult
How much extra work is needed to produce this quality?
\ No newline at end of file
diff --git a/datum/song.html b/datum/song.html
new file mode 100644
index 00000000000..5a27e503606
--- /dev/null
+++ b/datum/song.html
@@ -0,0 +1,28 @@
+/datum/song - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Song datum
These are the actual backend behind instruments.
+They attach to an atom and provide the editor + playback functionality.
Playing variables
+Build by compile_chords()
+Must be rebuilt on instrument switch.
+Compilation happens when we start playing and is cleared after we finish playing.
+Format: list of chord lists, with chordlists having (key1, key2, key3, tempodiv)
Compiles our lines into "chords" with filenames for legacy playback. This makes there have to be a bit of lag at the beginning of the song, but repeats will not have to parse it again, and overall playback won't be impacted by as much lag.
Compiles our lines into "chords" with numbers. This makes there have to be a bit of lag at the beginning of the song, but repeats will not have to parse it again, and overall playback won't be impacted by as much lag.
Updates our cached linear/exponential falloff stuff, saving calculations down the line.
Var Details
allowed_instrument_ids
What instruments our built in picker can use. The picker won't show unless this is longer than one.
cached_exponential_dropoff
Do not directly set, use update_sustain()
cached_legacy_dir
Cached legacy dir for legacy instruments
cached_legacy_ext
Cached legacy ext for legacy instruments
cached_linear_dropoff
/////// DO NOT DIRECTLY SET THESE!
+Do not directly set, use update_sustain()
cached_samples
Cached list of samples, referenced directly from the instrument for synthesized instruments
channels_idle
List of channels that aren't being used, as text. This is to prevent unnecessary freeing and reallocations from SSsounds/SSinstruments.
channels_playing
Channel as text = current volume percentage but it's 0 to 100 instead of 0 to 1.
compiled_chords
Playing variables
+Build by compile_chords()
+Must be rebuilt on instrument switch.
+Compilation happens when we start playing and is cleared after we finish playing.
+Format: list of chord lists, with chordlists having (key1, key2, key3, tempodiv)
current_chord
Current chord we're on.
debug_mode
If this is enabled, some things won't be strictly cleared when they usually are (liked compiled_chords on play stop)
delay_by
Amount of delay to wait before playing the next chord
editing
Are we currently editing?
elapsed_delay
Current section of a long chord we're on, so we don't need to make a billion chords, one for every unit ticklag.
full_sustain_held_note
Should we not decay our last played note?
hearing_mobs
The list of mobs that can hear us
help
Is the help screen open?
instrument_range
How far we can be heard
last_channel_played
Last channel to play. text.
last_hearcheck
Last world.time we checked for who can hear us
legacy
Are we operating in legacy mode (so if the instrument is a legacy instrument)
lines
Our song lines
max_repeats
Maximum times we can repeat
max_sound_channels
Max sound channels to occupy
max_volume
Max volume
min_volume
Min volume - This is so someone doesn't decide it's funny to set it to 0 and play invisible songs.
name
Name of the song
note_shift
////////// !!FUN!! - Only works in synthesized mode! /////////////////
+Note numbers to shift.
octave_min
DO NOT TOUCH THESE
parent
The atom we're attached to/playing from
playing
Are we currently playing?
repeat
Repeats left
sustain_dropoff_volume
When a note is considered dead if it is below this in volume
sustain_exponential_dropoff
Exponential sustain dropoff rate per decisecond
sustain_linear_duration
Total duration of linear sustain for 100 volume note to get to SUSTAIN_DROPOFF
sustain_mode
The kind of sustain we're using
tempo
delay between notes in deciseconds
user_playing
Person playing us
using_instrument
///////// Cached instrument variables /////////////
+Instrument we are currently using
using_sound_channels
Current channels, so we can save a length() call.
volume
Our volume
Proc Details
compile_chords
Compiles chords.
compile_legacy
Compiles our lines into "chords" with filenames for legacy playback. This makes there have to be a bit of lag at the beginning of the song, but repeats will not have to parse it again, and overall playback won't be impacted by as much lag.
compile_synthesized
Compiles our lines into "chords" with numbers. This makes there have to be a bit of lag at the beginning of the song, but repeats will not have to parse it again, and overall playback won't be impacted by as much lag.
do_hearcheck
Checks and stores which mobs can hear us. Terminates sounds for mobs that leave our range.
get_bpm
Gets our beats per minute based on our tempo.
parse_song
Parses a song the user has input into lines and stores them.
play_chord
Plays a chord.
playkey_legacy
Proc to play a legacy note. Just plays the sound to hearing mobs (and does hearcheck if necessary), no fancy channel/sustain/management.
+
Arguments:
+
+
note - number from 1-7 for A-G
+
acc - either "b", "n", or "#"
+
oct - 1-8 (or 9 for C)
+
playkey_synth
Plays a specific numerical key from our instrument to anyone who can hear us.
+Does a hearing check if enough time has passed.
pop_channel
Pops a channel we have reserved so we don't have to release and re-request them from SSsounds every time we play a note. This is faster.
process_decay
Decays our channels and updates their volumes to mobs who can hear us.
+
Arguments:
+
+
wait_ds - the deciseconds we should decay by. This is to compensate for any lag, as otherwise songs would get pretty nasty during high time dilation.
+
process_song
Processes our song.
sanitize_tempo
Sanitizes tempo to a value that makes sense and fits the current world.tick_lag.
set_bpm
Sets our tempo from a beats-per-minute, sanitizing it to a valid number first.
set_dropoff_volume
Setter for setting how low the volume has to get before a note is considered "dead" and dropped
set_exponential_drop_rate
Setter for setting exponential falloff factor.
set_instrument
Sets our instrument, caching anything necessary for faster accessing. Accepts an ID, typepath, or instantiated instrument datum.
set_linear_falloff_duration
Setter for setting linear falloff duration.
set_volume
Setter for setting output volume.
should_stop_playing
Checks if we should halt playback.
start_playing
Attempts to start playing our song.
stop_playing
Stops playing, terminating all sounds if in synthesized mode. Clears hearing_mobs.
tempodiv_to_delay
Converts a tempodiv to ticks to elapse before playing the next chord, taking into account our tempo.
terminate_all_sounds
Stops all sounds we are "responsible" for. Only works in synthesized mode.
terminate_sound_mob
Stops all sounds we are responsible for in a given person. Only works in synthesized mode.
update_sustain
Updates our cached linear/exponential falloff stuff, saving calculations down the line.
\ No newline at end of file
diff --git a/datum/sort_instance.html b/datum/sort_instance.html
new file mode 100644
index 00000000000..79598094977
--- /dev/null
+++ b/datum/sort_instance.html
@@ -0,0 +1,13 @@
+/datum/sort_instance - Space Station 13Space Station 13 - Modules - Types — Proc Details
Like gallopLeft, except that if the range contains an element equal to
+key, gallopRight returns the index after the rightmost equal element.
Proc Details
gallopRight
Like gallopLeft, except that if the range contains an element equal to
+key, gallopRight returns the index after the rightmost equal element.
+
Returns the int k, 0 <= k <= n such that a[b + k - 1] <= key < a[b + k].
+
Arguments:
+
+
key: the key whose insertion point to search for
+
a: the array in which to search
+
base: the index of the first element in the range
+
len: the length of the range; must be > 0
+
hint: the index at which to begin the search, 0 <= hint < n. The closer hint is to the result, the faster this method will run.
+
c: the comparator used to order the range, and to search
+
\ No newline at end of file
diff --git a/datum/space_level.html b/datum/space_level.html
new file mode 100644
index 00000000000..fe8f7c61a6c
--- /dev/null
+++ b/datum/space_level.html
@@ -0,0 +1 @@
+/datum/space_level - Space Station 13Space Station 13 - Modules - Types — Var Details
This is a list of ruins on the space_level. Used to prevent certain ruins from spawning on the same level as other ruins.
Var Details
our_ruin_list
This is a list of ruins on the space_level. Used to prevent certain ruins from spawning on the same level as other ruins.
\ No newline at end of file
diff --git a/datum/spatial_grid_cell.html b/datum/spatial_grid_cell.html
new file mode 100644
index 00000000000..eb006802d82
--- /dev/null
+++ b/datum/spatial_grid_cell.html
@@ -0,0 +1,3 @@
+/datum/spatial_grid_cell - Space Station 13Space Station 13 - Modules - Types — Var Details
Spatial Grid Cell
used by /datum/controller/subsystem/spatial_grid to cover every z level so that the coordinates of every turf in the world corresponds to one of these in
+the subsystems list of grid cells by z level. each one of these contains content lists holding all atoms meeting a certain criteria that is in our borders.
+these datums shouldnt have significant behavior, they should just hold data. the lists are filled and emptied by the subsystem.
our x index in the list of cells. this is our index inside of our row list
cell_y
our y index in the list of cells. this is the index of our row list inside of our z level grid
cell_z
which z level we belong to, corresponding to the index of our gridmap in SSspatial_grid.grids_by_z_level
client_contents
every client possessed mob inside this cell
hearing_contents
every hearing sensitive movable inside this cell
\ No newline at end of file
diff --git a/datum/spawn_pool.html b/datum/spawn_pool.html
new file mode 100644
index 00000000000..414100c4992
--- /dev/null
+++ b/datum/spawn_pool.html
@@ -0,0 +1,9 @@
+/datum/spawn_pool - Space Station 13Space Station 13 - Modules - Types — Var Details
spawn_pool
Keeps track of the available points for a given pool, as well as any
+spawners that need to keep track globally of the number of any specific item
+that they spawn.
A key-value list of spawners with TRUE unique_picks to a shared copy of their
+loot pool. When items from one of these spawners are spawned, it is removed
+from the shared loot pool so it never spawns again.
Var Details
available_points
The number of points left for the spawner to use. Starts at its initial value.
guaranteed_spawners
A list of spawners whose guaranteed is TRUE. These spawners will
+always spawn, and always before anything else,
known_spawners
A list of all spawners registered to this pool.
unique_spawners
A key-value list of spawners with TRUE unique_picks to a shared copy of their
+loot pool. When items from one of these spawners are spawned, it is removed
+from the shared loot pool so it never spawns again.
\ No newline at end of file
diff --git a/datum/spawner_pixel_placer.html b/datum/spawner_pixel_placer.html
new file mode 100644
index 00000000000..7cbb6526375
--- /dev/null
+++ b/datum/spawner_pixel_placer.html
@@ -0,0 +1,4 @@
+/datum/spawner_pixel_placer - Space Station 13Space Station 13 - Modules - Types — Var Details
spawner_pixel_placer
For use when arranging items on a tile with a staggered visual
+appearance. Initially for use with /obj/effect/spawner/randoms.
The items we've added so far. Used to perform one
+last visual arrangement in z-order once complete.
max_pixel_offset
Maximum offset distance from the center of a tile.
offsets
For tracking if we're staggering from the top left or bottom right.
pixel_offsets
The pixel x/y divider offsets between items.
\ No newline at end of file
diff --git a/datum/species.html b/datum/species.html
new file mode 100644
index 00000000000..ae85b233565
--- /dev/null
+++ b/datum/species.html
@@ -0,0 +1,9 @@
+/datum/species - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Article to use when referring to an individual of the species, if pronunciation is different from expected.
+Because it's unathi's turn to be special snowflakes.
Prototype for additional behaviour when a specific species is ground by a compressor.
Var Details
armor
Additional armour value for the species.
article_override
Article to use when referring to an individual of the species, if pronunciation is different from expected.
+Because it's unathi's turn to be special snowflakes.
default_bodyacc
Name of default body accessory if any.
has_organ
Determines the organs that the species spawns with and which required-organ checks are conducted.
inherent_biotypes
bitfield of biotypes the mob belongs to.
inherent_traits
Generic traits tied to having the species.
max_age
Maximum age this species can have
meat_type
Type of meat produced in the gibber/meating. Distinct from butcher_results.
min_age
Minimum age this species can have
name
Species name
name_plural
Pluralized name (since "[name]s" is not always valid)
optional_body_accessory
Whether the presence of a body accessory on this species is optional or not.
plushie_type
What plushie the species will turn into if turned into a plushie.
skinned_type
Type of skin produced when butchered.
special_step_sounds
Sounds to override barefeet walking
spines
like wings but spines
tail
Name of tail image in species effects icon file.
wing
like tail but wings
Proc Details
can_be_legion_infested
Is this species able to be legion infested?
create_organs
Handles creation of mob organs.
+
Arguments:
+
+
H: The human to create organs inside of
+
bodyparts_to_omit: Any bodyparts in this list (and organs within them) should not be added.
+
transfer_contents: Whether or not to transfer the contents of the old organs to the new ones
+
do_compressor_grind
Prototype for additional behaviour when a specific species is ground by a compressor.
\ No newline at end of file
diff --git a/datum/species/human.html b/datum/species/human.html
new file mode 100644
index 00000000000..90072c35825
--- /dev/null
+++ b/datum/species/human.html
@@ -0,0 +1 @@
+/datum/species/human - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/species/skeleton.html b/datum/species/skeleton.html
new file mode 100644
index 00000000000..daf5a060d9a
--- /dev/null
+++ b/datum/species/skeleton.html
@@ -0,0 +1 @@
+/datum/species/skeleton - Space Station 13Space Station 13 - Modules - Types — Var Details
skeleton
The OG skellybones, quite OP. As of this comment, only available through ash-drake loot (2023-03-07)
How much brute and burn does milk heal per handle_reagents()
Var Details
milk_fracture_repair_probability
How likely (in %) are we to heal a fracture?
milk_heal_amount
How much brute and burn does milk heal per handle_reagents()
\ No newline at end of file
diff --git a/datum/spell.html b/datum/spell.html
new file mode 100644
index 00000000000..9dc90479c82
--- /dev/null
+++ b/datum/spell.html
@@ -0,0 +1,50 @@
+/datum/spell - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
This determines what type of antimagic is needed to block the spell.
+(MAGIC_RESISTANCE, MAGIC_RESISTANCE_MIND, MAGIC_RESISTANCE_HOLY)
+If SPELL_REQUIRES_NO_ANTIMAGIC is set in Spell requirements,
+The spell cannot be cast if the caster has any of the antimagic flags set.
Creates and returns the spells cooldown handler, defaults to the standard recharge handler.
+Override this if you wish to use a different method of cooldown
Creates and returns the handler datum for this spell type.
+Override this if you want a custom spell handler.
+Should return a value of type /datum/spell_handler or NONE
This proc is ran when a mind is transfered to a new mob. Tells it if the action should be transfered on return true, and tells it not to remove it on false
Will write additional logs if create_custom_logs is TRUE and the caster has a ckey. Override this
Var Details
antimagic_flags
This determines what type of antimagic is needed to block the spell.
+(MAGIC_RESISTANCE, MAGIC_RESISTANCE_MIND, MAGIC_RESISTANCE_HOLY)
+If SPELL_REQUIRES_NO_ANTIMAGIC is set in Spell requirements,
+The spell cannot be cast if the caster has any of the antimagic flags set.
base_cooldown
recharge time in deciseconds
cooldown_handler
handles a given spells cooldowns. tracks the time until its off cooldown,
create_attack_logs
does this spell generate attack logs?
create_custom_logs
If this spell creates custom logs using the write_custom_logs() proc. Will ignore create_attack_logs
custom_handler
Which spell_handler is used in addition to the normal spells behaviour, can be null. Set this in create_new_handler if needed
holy_area_cancast
Whether or not the spell functions in a holy place
is_a_heretic_spell
Is it a heretic spell? Used by heretics.
selection_activated_message
The message displayed when a click based spell gets activated
selection_deactivated_message
The message displayed when a click based spell gets deactivated
smoke_type
Determines if the spell has smoke, and if so what effect the smoke has. See spell defines.
spell_handlers
List with the handler datums per spell type. Key = src.type, value = the handler datum created by create_new_handler()
spell_requirements
Flag for certain states that the spell requires the user be in to cast.
targeting
Which targeting system is used. Set this in create_new_targeting
targeting_datums
List with the targeting datums per spell type. Key = src.type, value = the targeting datum created by create_new_targeting()
Proc Details
cast
The proc where the actual spell gets cast.
+
Arguments:
+
+
targets - The targets being targeted by the spell
+
user - The caster of the spell
+
choose_targets
Will try to choose targets using the targeting variable and perform the spell if it can
+Do not override this! Override create_new_targeting instead
+
Arguments:
+
+
user - The caster of the spell
+
create_new_cooldown
Creates and returns the spells cooldown handler, defaults to the standard recharge handler.
+Override this if you wish to use a different method of cooldown
create_new_handler
Creates and returns the handler datum for this spell type.
+Override this if you want a custom spell handler.
+Should return a value of type /datum/spell_handler or NONE
create_new_targeting
Creates and returns the targeting datum for this spell type. Override this!
+Should return a value of type /datum/spell_targeting
on_mind_transfer
This proc is ran when a mind is transfered to a new mob. Tells it if the action should be transfered on return true, and tells it not to remove it on false
on_purchase_upgrade
Lets the spell have a special effect applied to it when upgraded. By default, does nothing.
perform
Handles all the code for performing a spell once the targets are known
+
Arguments:
+
+
targets - The list of targets the spell is being cast on. Will not be empty or null
+
user - The caster of the spell
+
should_remove_click_intercept
Called in try_perform before removing the click interceptor. useful to override if you have a spell that requires more than 1 click
spend_spell_cost
Will spend the cost of using this spell once. Will update the action button's icon if there is any
+
Arguments:
+
+
user - Who used this spell?
+
try_perform
Will try and perform the spell using the given targets and user. Will spend one charge of the spell
+
Arguments:
+
+
targets - The targets the spell is being performed on
+
user - The caster of the spell
+
valid_target
Allows for spell specific target validation. Will be used by the spell_targeting datums
+
Arguments:
+
+
target - Who is being considered
+
user - Who is the user of this spell
+
write_custom_logs
Will write additional logs if create_custom_logs is TRUE and the caster has a ckey. Override this
+
Arguments:
+
+
targets - The targets being targeted by the spell
+
user - The user of the spell
+
\ No newline at end of file
diff --git a/datum/spell/ai_spell.html b/datum/spell/ai_spell.html
new file mode 100644
index 00000000000..aa3d778445e
--- /dev/null
+++ b/datum/spell/ai_spell.html
@@ -0,0 +1 @@
+/datum/spell/ai_spell - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/spell/ai_spell/ranged/core_tilt.html b/datum/spell/ai_spell/ranged/core_tilt.html
new file mode 100644
index 00000000000..e4542e47653
--- /dev/null
+++ b/datum/spell/ai_spell/ranged/core_tilt.html
@@ -0,0 +1 @@
+/datum/spell/ai_spell/ranged/core_tilt - Space Station 13Space Station 13 - Modules - Types — Var Details
How long does it take for the ability to cool down, on top of [roll_over_time]?
roll_over_time
How long does it take us to roll?
\ No newline at end of file
diff --git a/datum/spell/ai_spell/ranged/holosign_displayer.html b/datum/spell/ai_spell/ranged/holosign_displayer.html
new file mode 100644
index 00000000000..1fcf28a53d1
--- /dev/null
+++ b/datum/spell/ai_spell/ranged/holosign_displayer.html
@@ -0,0 +1 @@
+/datum/spell/ai_spell/ranged/holosign_displayer - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/spell/alien_spell.html b/datum/spell/alien_spell.html
new file mode 100644
index 00000000000..c995538bf31
--- /dev/null
+++ b/datum/spell/alien_spell.html
@@ -0,0 +1 @@
+/datum/spell/alien_spell - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Every single alien spell uses a "spell name + plasmacost" format
Var Details
create_custom_logs
Every alien spell creates only logs, no attack messages on someone placing weeds, but you DO get attack messages on neurotoxin and corrosive acid
plasma_cost
How much plasma it costs to use this
Proc Details
New
Every single alien spell uses a "spell name + plasmacost" format
\ No newline at end of file
diff --git a/datum/spell/aoe.html b/datum/spell/aoe.html
new file mode 100644
index 00000000000..50f1006cdf1
--- /dev/null
+++ b/datum/spell/aoe.html
@@ -0,0 +1 @@
+/datum/spell/aoe - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/spell/aoe/conjure/cosmic_expansion.html b/datum/spell/aoe/conjure/cosmic_expansion.html
new file mode 100644
index 00000000000..4ca5829c4b1
--- /dev/null
+++ b/datum/spell/aoe/conjure/cosmic_expansion.html
@@ -0,0 +1 @@
+/datum/spell/aoe/conjure/cosmic_expansion - Space Station 13Space Station 13 - Modules - Types — Var Details
The range at which people will get marked with a star mark.
Var Details
ascended
If the heretic is ascended or not
expansion_effect
Effect for when the spell triggers
star_mark_range
The range at which people will get marked with a star mark.
\ No newline at end of file
diff --git a/datum/spell/aoe/flicker_lights.html b/datum/spell/aoe/flicker_lights.html
new file mode 100644
index 00000000000..a71329aca36
--- /dev/null
+++ b/datum/spell/aoe/flicker_lights.html
@@ -0,0 +1 @@
+/datum/spell/aoe/flicker_lights - Space Station 13Space Station 13 - Modules - Types — Var Details
Is this ability granted from a xenobiology organ? Causes user to spark.
Var Details
from_organ
Is this ability granted from a xenobiology organ? Causes user to spark.
\ No newline at end of file
diff --git a/datum/spell/aoe/moon_ringleader.html b/datum/spell/aoe/moon_ringleader.html
new file mode 100644
index 00000000000..b096b40ee27
--- /dev/null
+++ b/datum/spell/aoe/moon_ringleader.html
@@ -0,0 +1 @@
+/datum/spell/aoe/moon_ringleader - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/spell/aoe/revenant.html b/datum/spell/aoe/revenant.html
new file mode 100644
index 00000000000..33f70c9e022
--- /dev/null
+++ b/datum/spell/aoe/revenant.html
@@ -0,0 +1 @@
+/datum/spell/aoe/revenant - Space Station 13Space Station 13 - Modules - Types — Var Details
If it's locked and needs to be unlocked before use
reveal
How long it reveals the revenant in deciseconds
stun
How long it stuns the revenant in deciseconds
unlock_amount
How much essence it costs to unlock
\ No newline at end of file
diff --git a/datum/spell/aoe/revenant/haunt_object.html b/datum/spell/aoe/revenant/haunt_object.html
new file mode 100644
index 00000000000..4fe023af213
--- /dev/null
+++ b/datum/spell/aoe/revenant/haunt_object.html
@@ -0,0 +1 @@
+/datum/spell/aoe/revenant/haunt_object - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
haunt_object
Makes objects be haunted and then throws them at conscious people to do damage, spooky!
Stop all attack timers cast by the previous spell use
Var Details
attack_timers
A list of all attack timers started by this spell being cast
max_targets
The maximum number of objects to haunt
Proc Details
make_spooky
Handles making an object haunted and setting it up to attack
stop_timers
Stop all attack timers cast by the previous spell use
\ No newline at end of file
diff --git a/datum/spell/aoe/void_pull.html b/datum/spell/aoe/void_pull.html
new file mode 100644
index 00000000000..76cf957205f
--- /dev/null
+++ b/datum/spell/aoe/void_pull.html
@@ -0,0 +1 @@
+/datum/spell/aoe/void_pull - Space Station 13Space Station 13 - Modules - Types — Var Details
The radius of the stun applied to nearby people on cast
Var Details
damage_radius
The radius of the actual damage circle done before cast
stun_radius
The radius of the stun applied to nearby people on cast
\ No newline at end of file
diff --git a/datum/spell/bloodcrawl/mirror_walk.html b/datum/spell/bloodcrawl/mirror_walk.html
new file mode 100644
index 00000000000..0b07f7e8a85
--- /dev/null
+++ b/datum/spell/bloodcrawl/mirror_walk.html
@@ -0,0 +1,7 @@
+/datum/spell/bloodcrawl/mirror_walk - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Goes through all nearby atoms in sight of the
+passed caster and determines if they are "reflective"
+for the purpose of us being able to utilize it to enter or exit.
Var Details
special_reflective_surfaces
Static typecache of types that are counted as reflective.
Proc Details
is_reflection_nearby
Goes through all nearby atoms in sight of the
+passed caster and determines if they are "reflective"
+for the purpose of us being able to utilize it to enter or exit.
+
Returns an object reference to a "reflective" object in view if one was found,
+or null if no object was found that was determined to be "reflective".
\ No newline at end of file
diff --git a/datum/spell/bloodcrawl/space_crawl.html b/datum/spell/bloodcrawl/space_crawl.html
new file mode 100644
index 00000000000..76753e259f3
--- /dev/null
+++ b/datum/spell/bloodcrawl/space_crawl.html
@@ -0,0 +1,2 @@
+/datum/spell/bloodcrawl/space_crawl - Space Station 13Space Station 13 - Modules - Types
space_crawl
Space Crawl
+
Lets the caster enter and exit tiles of space or misc turfs.
\ No newline at end of file
diff --git a/datum/spell/charge_up.html b/datum/spell/charge_up.html
new file mode 100644
index 00000000000..aaf4f028f04
--- /dev/null
+++ b/datum/spell/charge_up.html
@@ -0,0 +1 @@
+/datum/spell/charge_up - Space Station 13Space Station 13 - Modules - Types — Var Details
charge_up
A click-based spell template which starts charging up once you click the action button/verb. Click again on something to activate the actual spell
The text shown when you successfully stop charging
Var Details
charge_sound
The sound charging up your power will make. Be sure to include a channel when creating the sound
charge_up_overlay
The overlay used to show that you are charging. Create this in the New of the spell
max_charge_time
How long you can charge for
start_charging_text
The text shown when you start charging
stop_charging_fail_text
The text shown when you are over the charge limit and thus can't stop.
stop_charging_text
The text shown when you successfully stop charging
\ No newline at end of file
diff --git a/datum/spell/charge_up/bounce.html b/datum/spell/charge_up/bounce.html
new file mode 100644
index 00000000000..bd36eaf28d9
--- /dev/null
+++ b/datum/spell/charge_up/bounce.html
@@ -0,0 +1,16 @@
+/datum/spell/charge_up/bounce - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
bounce
A spell template that adds bounces to the charge_up spell template. The spell will bounce between targets once released.
+Don't override cast and instead override apply_bounce_effect and the other procs
The proc called when a bounce hits a target. Override this to add an effect
+The user itself is never hit
+
Arguments:
+
+
origin - Where the bounce came from
+
target - The mob that got hit
+
energy - How much energy the bounce has
+
user - The caster of the spell
+
create_beam
Called when a bounce travels from one mob to another
+
Arguments:
+
+
origin - Where the bounce came from
+
target - The mob that got hit
+
get_bounce_amount
How much bounces should there be in total?
get_bounce_energy
How much energy should each bounce have?
\ No newline at end of file
diff --git a/datum/spell/charge_up/bounce/fire_blast.html b/datum/spell/charge_up/bounce/fire_blast.html
new file mode 100644
index 00000000000..889e20ce167
--- /dev/null
+++ b/datum/spell/charge_up/bounce/fire_blast.html
@@ -0,0 +1,5 @@
+/datum/spell/charge_up/bounce/fire_blast - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Pick a carbon mob in a radius around us that we can reach.
+Mobs on fire will have priority and be targeted over others.
+Returns null or a carbon mob.
Var Details
bounce_time
How long the beam visual lasts, also used to determine time between jumps
Proc Details
continue_beam
Timer callback to continue the chain, calling send_fire_bream recursively.
get_target
Pick a carbon mob in a radius around us that we can reach.
+Mobs on fire will have priority and be targeted over others.
+Returns null or a carbon mob.
\ No newline at end of file
diff --git a/datum/spell/cone/staggered.html b/datum/spell/cone/staggered.html
new file mode 100644
index 00000000000..a80274cd90f
--- /dev/null
+++ b/datum/spell/cone/staggered.html
@@ -0,0 +1 @@
+/datum/spell/cone/staggered - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/spell/cone/staggered/cone_of_cold.html b/datum/spell/cone/staggered/cone_of_cold.html
new file mode 100644
index 00000000000..5921bc7b904
--- /dev/null
+++ b/datum/spell/cone/staggered/cone_of_cold.html
@@ -0,0 +1,11 @@
+/datum/spell/cone/staggered/cone_of_cold - Space Station 13Space Station 13 - Modules - Types — Var Details
How long do mobs remain frozen for?
+0 seconds means no status effect is applied, INFINITY means infinite duration (or default duration of the status effect)
How long do turfs remain slippery / frozen for?
+0 seconds means the turf is unaffected, INFINITY means it's made perma-wet
Var Details
frozen_status_effect_path
What status effect do we apply when affecting mobs?
+null means no status effect is applied
on_freeze_brute_damage
How much brute do we apply on freeze?
on_freeze_burn_damage
How much burn do we apply on freeze?
turf_freeze_type
What flags do we pass to MakeSlippery when affecting turfs?
+null / NONE / TURF_DRY means the turf is unaffected
unfreeze_mob_duration
How long do mobs remain frozen for?
+0 seconds means no status effect is applied, INFINITY means infinite duration (or default duration of the status effect)
unfreeze_object_duration
How long do objects remain frozen for?
+0 seconds mean no objects are frozen, INFINITY means infinite duration freeze
unfreeze_turf_duration
How long do turfs remain slippery / frozen for?
+0 seconds means the turf is unaffected, INFINITY means it's made perma-wet
\ No newline at end of file
diff --git a/datum/spell/cosmic_rune.html b/datum/spell/cosmic_rune.html
new file mode 100644
index 00000000000..a2ce0cbaf03
--- /dev/null
+++ b/datum/spell/cosmic_rune.html
@@ -0,0 +1 @@
+/datum/spell/cosmic_rune - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Returns a weak reference to a new rune, linked to an existing rune if provided
Var Details
first_rune
Storage for the first rune.
rune_remove_effect
Rune removal effect.
second_rune
Storage for the second rune.
Proc Details
make_new_rune
Returns a weak reference to a new rune, linked to an existing rune if provided
\ No newline at end of file
diff --git a/datum/spell/fire_cascade.html b/datum/spell/fire_cascade.html
new file mode 100644
index 00000000000..d0053a3069d
--- /dev/null
+++ b/datum/spell/fire_cascade.html
@@ -0,0 +1 @@
+/datum/spell/fire_cascade - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
fire_cascade
Creates one, large, expanding ring of fire around the caster, which does not follow them.
Spreads a huge wave of fire in a radius around us, staggered between levels
Var Details
flame_radius
The radius the flames will go around the caster.
Proc Details
fire_cascade
Spreads a huge wave of fire in a radius around us, staggered between levels
\ No newline at end of file
diff --git a/datum/spell/fire_sworn.html b/datum/spell/fire_sworn.html
new file mode 100644
index 00000000000..af11754ed64
--- /dev/null
+++ b/datum/spell/fire_sworn.html
@@ -0,0 +1 @@
+/datum/spell/fire_sworn - Space Station 13Space Station 13 - Modules - Types — Var Details
fire_sworn
Creates a constant Ring of Fire around the caster for a set duration of time, which follows them.
\ No newline at end of file
diff --git a/datum/spell/fireball.html b/datum/spell/fireball.html
new file mode 100644
index 00000000000..061d2082f5b
--- /dev/null
+++ b/datum/spell/fireball.html
@@ -0,0 +1 @@
+/datum/spell/fireball - Space Station 13Space Station 13 - Modules - Types — Var Details
How many projectiles we can fire per cast. Not all at once, per click, kinda like charges. Unlike charges, it doesn't share cooldown
Var Details
cares_about_turf
Do we care if we are on a turf?
current_amount
How many projectiles we have yet to fire, based on projectile_amount
projectile_amount
How many projectiles we can fire per cast. Not all at once, per click, kinda like charges. Unlike charges, it doesn't share cooldown
\ No newline at end of file
diff --git a/datum/spell/fireball/furious_steel.html b/datum/spell/fireball/furious_steel.html
new file mode 100644
index 00000000000..8552692307f
--- /dev/null
+++ b/datum/spell/fireball/furious_steel.html
@@ -0,0 +1 @@
+/datum/spell/fireball/furious_steel - Space Station 13Space Station 13 - Modules - Types — Var Details
Effect of the projectile that surrounds us while the spell is active
Var Details
blade_effect
A ref to the status effect surrounding our heretic on activation.
projectile_effect
Effect of the projectile that surrounds us while the spell is active
\ No newline at end of file
diff --git a/datum/spell/flayer.html b/datum/spell/flayer.html
new file mode 100644
index 00000000000..128d218cdf3
--- /dev/null
+++ b/datum/spell/flayer.html
@@ -0,0 +1 @@
+/datum/spell/flayer - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
This is a proc that is called when the ability is purchased and first added to the flayer
Var Details
base_cost
The initial cost of purchasing the spell.
category
The class that this spell is for or FLAYER_CATEGORY_GENERAL to make it unrelated to a specific tree
checks_nullification
If the spell checks for a nullification implant/effect, set to FALSE to make it castable despite nullification
current_cost
The current price to upgrade the spell
flayer
A reference to the owner mindflayer's antag datum.
level
What level is our spell currently at
max_level
Max level of our spell
power_type
Determines whether the power is always given to the mind flayer or if it must be purchased.
stage
The current stage that we are on for our powers. Currently only hides powers of a higher stage.
static_upgrade_increase
Should this spell's cost increase by a static amount every purchase? 0 means it will stay the base cost for every upgrade.
upgrade_info
A brief description of what the spell's upgrades do
Proc Details
on_apply
This is the proc that handles spell upgrades, override this to have upgrades change duration/strength etc
spell_purchased
This is a proc that is called when the ability is purchased and first added to the flayer
\ No newline at end of file
diff --git a/datum/spell/flayer/computer_recall.html b/datum/spell/flayer/computer_recall.html
new file mode 100644
index 00000000000..131b887c7a0
--- /dev/null
+++ b/datum/spell/flayer/computer_recall.html
@@ -0,0 +1 @@
+/datum/spell/flayer/computer_recall - Space Station 13Space Station 13 - Modules - Types — Var Details
The typecache of things we are allowed to teleport to and from
marked_computer
The console we currently have a mark on
\ No newline at end of file
diff --git a/datum/spell/flayer/self/quicksilver_form.html b/datum/spell/flayer/self/quicksilver_form.html
new file mode 100644
index 00000000000..7186cd10ddd
--- /dev/null
+++ b/datum/spell/flayer/self/quicksilver_form.html
@@ -0,0 +1 @@
+/datum/spell/flayer/self/quicksilver_form - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/spell/flayer/self/rejuv.html b/datum/spell/flayer/self/rejuv.html
new file mode 100644
index 00000000000..77d7b8b1c40
--- /dev/null
+++ b/datum/spell/flayer/self/rejuv.html
@@ -0,0 +1 @@
+/datum/spell/flayer/self/rejuv - Space Station 13Space Station 13 - Modules - Types — Var Details
Any extra healing per second we get from upgrading this spell
Var Details
extra_healing
Any extra healing per second we get from upgrading this spell
\ No newline at end of file
diff --git a/datum/spell/flayer/self/weapon.html b/datum/spell/flayer/self/weapon.html
new file mode 100644
index 00000000000..b91f6e82085
--- /dev/null
+++ b/datum/spell/flayer/self/weapon.html
@@ -0,0 +1 @@
+/datum/spell/flayer/self/weapon - Space Station 13Space Station 13 - Modules - Types — Var Details
Reference to the weapon itself, set on create_new_weapon
weapon_type
Typepath of the weapon
\ No newline at end of file
diff --git a/datum/spell/flayer/surveillance_monitor.html b/datum/spell/flayer/surveillance_monitor.html
new file mode 100644
index 00000000000..792bf4ccad7
--- /dev/null
+++ b/datum/spell/flayer/surveillance_monitor.html
@@ -0,0 +1 @@
+/datum/spell/flayer/surveillance_monitor - Space Station 13Space Station 13 - Modules - Types — Var Details
surveillance_monitor
Hack computer cameras to use them as a secret camera network
List of references to the bugs inside the computers that we hacked
internal_camera
An internal camera bug
maximum_hacked_computers
How many computers can we have hacked at most?
\ No newline at end of file
diff --git a/datum/spell/flayer/techno_wall.html b/datum/spell/flayer/techno_wall.html
new file mode 100644
index 00000000000..a6c10996335
--- /dev/null
+++ b/datum/spell/flayer/techno_wall.html
@@ -0,0 +1 @@
+/datum/spell/flayer/techno_wall - Space Station 13Space Station 13 - Modules - Types — Var Details
Starting turf for the wall. Should be nulled after each cast or the cancelling of a cast
Var Details
max_walls
How big can we make our wall
start_turf
Starting turf for the wall. Should be nulled after each cast or the cancelling of a cast
\ No newline at end of file
diff --git a/datum/spell/hackerman_deck.html b/datum/spell/hackerman_deck.html
new file mode 100644
index 00000000000..9254a5a29d9
--- /dev/null
+++ b/datum/spell/hackerman_deck.html
@@ -0,0 +1 @@
+/datum/spell/hackerman_deck - Space Station 13Space Station 13 - Modules - Types — Var Details
How many times have we successfully hacked in the last minute? Increases burn damage by 3 for each value above 0.
Var Details
recent_hacking
How many times have we successfully hacked in the last minute? Increases burn damage by 3 for each value above 0.
\ No newline at end of file
diff --git a/datum/spell/mimic.html b/datum/spell/mimic.html
new file mode 100644
index 00000000000..90c9ec743f6
--- /dev/null
+++ b/datum/spell/mimic.html
@@ -0,0 +1 @@
+/datum/spell/mimic - Space Station 13Space Station 13 - Modules - Types — Var Details
Which index will be overriden next when the user wants to remember another form
perfect_disguise
If a message is shown when somebody examines the user from close range
selected_form
Which form is currently selected
\ No newline at end of file
diff --git a/datum/spell/morph_spell.html b/datum/spell/morph_spell.html
new file mode 100644
index 00000000000..91ed7477de6
--- /dev/null
+++ b/datum/spell/morph_spell.html
@@ -0,0 +1 @@
+/datum/spell/morph_spell - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/spell/pointed/ash_beams.html b/datum/spell/pointed/ash_beams.html
new file mode 100644
index 00000000000..3b0ed60b523
--- /dev/null
+++ b/datum/spell/pointed/ash_beams.html
@@ -0,0 +1 @@
+/datum/spell/pointed/ash_beams - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/spell/pointed/cleave.html b/datum/spell/pointed/cleave.html
new file mode 100644
index 00000000000..37be74234c8
--- /dev/null
+++ b/datum/spell/pointed/cleave.html
@@ -0,0 +1 @@
+/datum/spell/pointed/cleave - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/spell/pointed/rust_construction.html b/datum/spell/pointed/rust_construction.html
new file mode 100644
index 00000000000..8d04a3d1431
--- /dev/null
+++ b/datum/spell/pointed/rust_construction.html
@@ -0,0 +1 @@
+/datum/spell/pointed/rust_construction - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/spell/pointed/void_phase.html b/datum/spell/pointed/void_phase.html
new file mode 100644
index 00000000000..9b8c7fe934b
--- /dev/null
+++ b/datum/spell/pointed/void_phase.html
@@ -0,0 +1 @@
+/datum/spell/pointed/void_phase - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Does the AOE effect of the blinka t the passed turf
Var Details
damage_radius
The radius of damage around the void bubble
min_cast_range
The minimum range to cast the phase.
Proc Details
cause_aoe
Does the AOE effect of the blinka t the passed turf
\ No newline at end of file
diff --git a/datum/spell/projectile.html b/datum/spell/projectile.html
new file mode 100644
index 00000000000..84284f07f19
--- /dev/null
+++ b/datum/spell/projectile.html
@@ -0,0 +1 @@
+/datum/spell/projectile - Space Station 13Space Station 13 - Modules - Types — Var Details
The projectile we spawn. Make sure to override this
Var Details
proj_type
The projectile we spawn. Make sure to override this
\ No newline at end of file
diff --git a/datum/spell/shadow_cloak.html b/datum/spell/shadow_cloak.html
new file mode 100644
index 00000000000..0f05d704bc3
--- /dev/null
+++ b/datum/spell/shadow_cloak.html
@@ -0,0 +1 @@
+/datum/spell/shadow_cloak - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Signal proc for [SIGNAL_REMOVETRAIT] via TRAIT_ALLOW_HERETIC_CASTING, losing our focus midcast will throw us out.
Var Details
active_cloak
The cloak currently active
uncloak_time
How long before we automatically uncloak?
Proc Details
on_early_cloak_loss
Signal proc for COMSIG_PARENT_QDELETING, if our cloak is deleted early, impart negative effects
on_focus_lost
Signal proc for [SIGNAL_REMOVETRAIT] via TRAIT_ALLOW_HERETIC_CASTING, losing our focus midcast will throw us out.
\ No newline at end of file
diff --git a/datum/spell/shapeshift/shed_human_form.html b/datum/spell/shapeshift/shed_human_form.html
new file mode 100644
index 00000000000..4b41129bb94
--- /dev/null
+++ b/datum/spell/shapeshift/shed_human_form.html
@@ -0,0 +1 @@
+/datum/spell/shapeshift/shed_human_form - Space Station 13Space Station 13 - Modules - Types — Var Details
The radius around us that we cause brain damage to.
segment_length
The length of our new wormy when we shed.
\ No newline at end of file
diff --git a/datum/spell/spacetime_dist.html b/datum/spell/spacetime_dist.html
new file mode 100644
index 00000000000..740ffe4b711
--- /dev/null
+++ b/datum/spell/spacetime_dist.html
@@ -0,0 +1 @@
+/datum/spell/spacetime_dist - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Callback which cleans up our effects list after the duration expires.
Var Details
duration
The duration of the scramble
effects
A lazylist of all scramble effects this spell has created.
ready
Whether we're ready to cast again yet or not. In the event someone lowers their cooldown with charge.
scramble_radius
The radius of the scramble around the caster. Increased by 3 * spell_level
Proc Details
clean_turfs
Callback which cleans up our effects list after the duration expires.
\ No newline at end of file
diff --git a/datum/spell/summonitem.html b/datum/spell/summonitem.html
new file mode 100644
index 00000000000..7804022bc56
--- /dev/null
+++ b/datum/spell/summonitem.html
@@ -0,0 +1 @@
+/datum/spell/summonitem - Space Station 13Space Station 13 - Modules - Types — Var Details
List of objects which will result in the spell stopping with the recursion search
Var Details
blacklisted_summons
List of objects which will result in the spell stopping with the recursion search
\ No newline at end of file
diff --git a/datum/spell/touch.html b/datum/spell/touch.html
new file mode 100644
index 00000000000..97ce8772117
--- /dev/null
+++ b/datum/spell/touch.html
@@ -0,0 +1 @@
+/datum/spell/touch - Space Station 13Space Station 13 - Modules - Types — Var Details
Has this spell been boosted by a heretic ascending?
Var Details
ascended
Has this spell been boosted by a heretic ascending?
\ No newline at end of file
diff --git a/datum/spell/touch/alien_spell.html b/datum/spell/touch/alien_spell.html
new file mode 100644
index 00000000000..1defe6ce85c
--- /dev/null
+++ b/datum/spell/touch/alien_spell.html
@@ -0,0 +1 @@
+/datum/spell/touch/alien_spell - Space Station 13Space Station 13 - Modules - Types — Var Details
Extremely fast cooldown, only present so the cooldown system doesn't explode
create_custom_logs
Every alien spell creates only logs, no attack messages on someone placing weeds, but you DO get attack messages on neurotoxin and corrosive acid
on_remove_message
We want a special on remove message, so we got this variable to do so
plasma_cost
How much plasma it costs to use this
\ No newline at end of file
diff --git a/datum/spell/touch/star_touch.html b/datum/spell/touch/star_touch.html
new file mode 100644
index 00000000000..9c64b6b2843
--- /dev/null
+++ b/datum/spell/touch/star_touch.html
@@ -0,0 +1 @@
+/datum/spell/touch/star_touch - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/spell/turf_teleport.html b/datum/spell/turf_teleport.html
new file mode 100644
index 00000000000..ecf6e721e20
--- /dev/null
+++ b/datum/spell/turf_teleport.html
@@ -0,0 +1 @@
+/datum/spell/turf_teleport - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/spell/vampire.html b/datum/spell/vampire.html
new file mode 100644
index 00000000000..d3550d61dc5
--- /dev/null
+++ b/datum/spell/vampire.html
@@ -0,0 +1 @@
+/datum/spell/vampire - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/spell/vampire/arena.html b/datum/spell/vampire/arena.html
new file mode 100644
index 00000000000..496f4c0505b
--- /dev/null
+++ b/datum/spell/vampire/arena.html
@@ -0,0 +1 @@
+/datum/spell/vampire/arena - Space Station 13Space Station 13 - Modules - Types — Var Details
Holds a reference to the timer until either the spell runs out or we recast it
Var Details
all_temp_walls
Holds a reference to all arena walls so we can qdel them easily with dispel()
timer
Holds a reference to the timer until either the spell runs out or we recast it
\ No newline at end of file
diff --git a/datum/spell/vampire/soul_anchor.html b/datum/spell/vampire/soul_anchor.html
new file mode 100644
index 00000000000..f16b96adcf9
--- /dev/null
+++ b/datum/spell/vampire/soul_anchor.html
@@ -0,0 +1 @@
+/datum/spell/vampire/soul_anchor - Space Station 13Space Station 13 - Modules - Types — Var Details
Holds a reference to the timer until the caster fake recalls
Var Details
making_anchor
Are we making an anchor?
timer
Holds a reference to the timer until the caster fake recalls
\ No newline at end of file
diff --git a/datum/spell_cooldown.html b/datum/spell_cooldown.html
new file mode 100644
index 00000000000..e45767dda19
--- /dev/null
+++ b/datum/spell_cooldown.html
@@ -0,0 +1 @@
+/datum/spell_cooldown - Space Station 13Space Station 13 - Modules - Types — Var Details
the amount of time that must pass before a spell can be used again
recharge_time
the world.time the spell will be available again
spell_parent
holds a ref to the spell
starts_off_cooldown
does it start off cooldown?
\ No newline at end of file
diff --git a/datum/spell_cooldown/charges.html b/datum/spell_cooldown/charges.html
new file mode 100644
index 00000000000..46980d6e2b3
--- /dev/null
+++ b/datum/spell_cooldown/charges.html
@@ -0,0 +1 @@
+/datum/spell_cooldown/charges - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/spell_handler/alien.html b/datum/spell_handler/alien.html
new file mode 100644
index 00000000000..079a9a7fd7a
--- /dev/null
+++ b/datum/spell_handler/alien.html
@@ -0,0 +1 @@
+/datum/spell_handler/alien - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/spell_handler/flayer.html b/datum/spell_handler/flayer.html
new file mode 100644
index 00000000000..ecda10ea271
--- /dev/null
+++ b/datum/spell_handler/flayer.html
@@ -0,0 +1 @@
+/datum/spell_handler/flayer - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/spell_handler/morph.html b/datum/spell_handler/morph.html
new file mode 100644
index 00000000000..1690d37c717
--- /dev/null
+++ b/datum/spell_handler/morph.html
@@ -0,0 +1 @@
+/datum/spell_handler/morph - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/spell_handler/vampire.html b/datum/spell_handler/vampire.html
new file mode 100644
index 00000000000..89c964bf46e
--- /dev/null
+++ b/datum/spell_handler/vampire.html
@@ -0,0 +1 @@
+/datum/spell_handler/vampire - Space Station 13Space Station 13 - Modules - Types — Var Details
If the blood cost should be handled by this handler. Or if the spell will handle it itself
Var Details
deduct_blood_on_cast
If the blood cost should be handled by this handler. Or if the spell will handle it itself
\ No newline at end of file
diff --git a/datum/spell_targeting.html b/datum/spell_targeting.html
new file mode 100644
index 00000000000..73218fe2533
--- /dev/null
+++ b/datum/spell_targeting.html
@@ -0,0 +1,32 @@
+/datum/spell_targeting - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
spell_targeting
The base class for the targeting systems spells use.
Checks whether or not the given target is valid. Calls spell.valid_target as well
Var Details
allowed_type
Which type the targets have to be
include_user
If it includes user. Not always used in all spell_targeting objects
max_targets
How many targets are allowed. INFINITY is used to target unlimited targets
range
The range of the spell; outer radius for aoe spells
selection_type
Can be SPELL_SELECTION_RANGE or SPELL_SELECTION_VIEW
try_auto_target
Whether or not the spell will try to auto target first before setting up the intercept click
use_intercept_click
Whether or not the targeting is done by intercepting a click or not
use_obstacle_check
If the spell should do an obstacle check from the user to the target. Windows, for example, will block the spell if this is true.
use_turf_of_user
Whether or not the spell should use the turf of the user as starting point
Proc Details
InterceptClickOn
Called when the parent spell intercepts the click
+
Arguments:
+
+
user - Who clicks with the spell targeting active?
+
params - Additional parameters from the click
+
A - Atom the user clicked on
+
spell - The spell being cast
+
attempt_auto_target
Will attempt to auto target the spell. Only works with 1 target currently
choose_targets
Called when choosing the targets for the parent spell
+
Arguments:
+
+
user - the one who casts the spell
+
spell - The spell being cast
+
params - Params given by the intercept click. Only available if use_intercept_click is TRUE
+
clicked_atom - The atom clicked on. Only available if use_intercept_click is TRUE
+
obstacle_check
Checks if the path from the source to the target is free.
+Mobs won't block the path. But any dense object (other than tables) will.
+
Arguments:
+
+
source - Where is the spell effect coming from?
+
target - Where is the spell effect going?
+
valid_target
Checks whether or not the given target is valid. Calls spell.valid_target as well
+
Arguments:
+
+
target - The one who is being considered as a target
+
user - Who is casting the spell
+
spell - The spell being cast
+
check_if_in_range - If a view/range check has to be done to see if the target is valid
+
\ No newline at end of file
diff --git a/datum/spell_targeting/aoe.html b/datum/spell_targeting/aoe.html
new file mode 100644
index 00000000000..aff6ae599a2
--- /dev/null
+++ b/datum/spell_targeting/aoe.html
@@ -0,0 +1 @@
+/datum/spell_targeting/aoe - Space Station 13Space Station 13 - Modules - Types — Var Details
aoe
An area of effect based spell targeting system. Will return all targets in the given range
The radius of turfs not being affected. -1 is inactive
Var Details
inner_radius
The radius of turfs not being affected. -1 is inactive
\ No newline at end of file
diff --git a/datum/spell_targeting/click.html b/datum/spell_targeting/click.html
new file mode 100644
index 00000000000..283368d7018
--- /dev/null
+++ b/datum/spell_targeting/click.html
@@ -0,0 +1 @@
+/datum/spell_targeting/click - Space Station 13Space Station 13 - Modules - Types — Var Details
click
A click based spell targeting system. The clicked atom will be used to determine who/what to target
How big the radius around the clicked atom is to find clicked_atom suitable target. -1 is only the selected atom is considered
Var Details
click_radius
How big the radius around the clicked atom is to find clicked_atom suitable target. -1 is only the selected atom is considered
\ No newline at end of file
diff --git a/datum/spell_targeting/cone.html b/datum/spell_targeting/cone.html
new file mode 100644
index 00000000000..1b01fdbbfe1
--- /dev/null
+++ b/datum/spell_targeting/cone.html
@@ -0,0 +1,4 @@
+/datum/spell_targeting/cone - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Adjusts the width of the cone at the passed level.
+This is never called on the first level of the cone (level 1 is always 1 width)
Var Details
cone_levels
This controls how many levels the cone has. Increase this value to make a bigger cone.
respect_density
This value determines if the cone penetrates walls.
Proc Details
calculate_cone_shape
Adjusts the width of the cone at the passed level.
+This is never called on the first level of the cone (level 1 is always 1 width)
+
Return a number - the TOTAL width of the cone at the passed level.
\ No newline at end of file
diff --git a/datum/spell_targeting/spiral.html b/datum/spell_targeting/spiral.html
new file mode 100644
index 00000000000..3e6dd849246
--- /dev/null
+++ b/datum/spell_targeting/spiral.html
@@ -0,0 +1,3 @@
+/datum/spell_targeting/spiral - Space Station 13Space Station 13 - Modules - Types
spiral
Gets a list of turfs around the center atom to scramble.
+
Returns an assoc list of turf to turf. These pairs are what turfs are
+swapped between one another when the cast is done.
\ No newline at end of file
diff --git a/datum/spell_targeting/targeted.html b/datum/spell_targeting/targeted.html
new file mode 100644
index 00000000000..afff658e5fd
--- /dev/null
+++ b/datum/spell_targeting/targeted.html
@@ -0,0 +1 @@
+/datum/spell_targeting/targeted - Space Station 13Space Station 13 - Modules - Types — Var Details
targeted
A spell targeting system which is able to select 1 to many targets in range/view of the caster. Has a random mode, distance from user based mode or a user input mode.
Who to target when too many targets are found. Only matters when max_targets = 1
Var Details
can_hit_target_more_than_once
Only important if max_targets > 1, affects if the spell can be cast multiple times at one person from one cast
random_target
Chooses random viable target instead of asking the caster
target_priority
Who to target when too many targets are found. Only matters when max_targets = 1
\ No newline at end of file
diff --git a/datum/sprite_accessory/hair/dave.html b/datum/sprite_accessory/hair/dave.html
new file mode 100644
index 00000000000..63ce9ca850f
--- /dev/null
+++ b/datum/sprite_accessory/hair/dave.html
@@ -0,0 +1,2 @@
+/datum/sprite_accessory/hair/dave - Space Station 13Space Station 13 - Modules - Types
dave
END VG HAIRSTYLES//
+
START POLARIS HAIRSTYLES
\ No newline at end of file
diff --git a/datum/sprite_accessory/hair/eighties_ponytail.html b/datum/sprite_accessory/hair/eighties_ponytail.html
new file mode 100644
index 00000000000..907c586850b
--- /dev/null
+++ b/datum/sprite_accessory/hair/eighties_ponytail.html
@@ -0,0 +1,2 @@
+/datum/sprite_accessory/hair/eighties_ponytail - Space Station 13Space Station 13 - Modules - Types
eighties_ponytail
//END POLARIS HAIRSTYLES///
+
Ume hairstyles
\ No newline at end of file
diff --git a/datum/stack_recipe.html b/datum/stack_recipe.html
new file mode 100644
index 00000000000..a79caa4abe1
--- /dev/null
+++ b/datum/stack_recipe.html
@@ -0,0 +1 @@
+/datum/stack_recipe - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Creates the atom defined by the recipe. Should always return the object it creates or FALSE. This proc assumes that the construction is already possible; for checking whether a recipe can be built before construction, use try_build()
What should be done after the object is built? obj/item/stack/result might not actually be a stack, but this proc needs access to merge() to work, which is on obj/item/stack, so declare it as obj/item/stack anyways.
Returns TRUE if the recipe can be built, otherwise returns FALSE. This proc is only meant as a series of tests to check if construction is possible; the actual creation of the resulting atom should be handled in do_build()
Var Details
cult_structure
Resulting atom is a cult structure
max_res_amount
Maximum amount of atoms made
on_floor
Requires a floor underneath to make
on_floor_or_lattice
Requires a floor OR lattice underneath to make
one_per_turf
Only one resulting atom is allowed per turf
req_amount
Required stack amount to make
res_amount
Amount of atoms made
result_image
Generated base64 image. Used only if result has color
result_type
Resulting typepath of crafted atom
time
Time to make
title
Visible title of recipe
window_checks
Requires a valid window location to make
Proc Details
do_build
Creates the atom defined by the recipe. Should always return the object it creates or FALSE. This proc assumes that the construction is already possible; for checking whether a recipe can be built before construction, use try_build()
post_build
What should be done after the object is built? obj/item/stack/result might not actually be a stack, but this proc needs access to merge() to work, which is on obj/item/stack, so declare it as obj/item/stack anyways.
try_build
Returns TRUE if the recipe can be built, otherwise returns FALSE. This proc is only meant as a series of tests to check if construction is possible; the actual creation of the resulting atom should be handled in do_build()
\ No newline at end of file
diff --git a/datum/station_department.html b/datum/station_department.html
new file mode 100644
index 00000000000..b69c7d68996
--- /dev/null
+++ b/datum/station_department.html
@@ -0,0 +1 @@
+/datum/station_department - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
checks to see if the crew members has the right access or is whitelisted on the department account
Var Details
account_access
The access need to get into this department account, this is a one req access list, used especialy for supply computer
account_base_pay
The amount this department will be payed every payday at a minimum (unless deducted otherwise)
account_starting_balance
The amount this departments will get endowed with a roundstart in their money account
auto_approval_cap
If there is auto approval, is it capped?
crate_auto_approve
Will this department's account auto approve crates?
department_account
The money account tied to this department
department_name
name of department, used to determine department money account names as well
department_roles
A list of occupation names in this department
head_of_staff
The occupation name of the person in charge of this department officially
Proc Details
has_account_access
checks to see if the crew members has the right access or is whitelisted on the department account
\ No newline at end of file
diff --git a/datum/station_goal/secondary.html b/datum/station_goal/secondary.html
new file mode 100644
index 00000000000..85966bc1c0d
--- /dev/null
+++ b/datum/station_goal/secondary.html
@@ -0,0 +1 @@
+/datum/station_goal/secondary - Space Station 13Space Station 13 - Modules - Types — Var Details
The goal weight of a secondary goal type defines how many copies of it are in the grab bag that new secondary goals are pulled from. When the bag is empty, it gets refilled with the same number of each secondary goal type. Max 10.
Var Details
admin_desc
Admin-only shor description of the goal.
department
Assigned department. Should match the values used for requests consoles.
personal_account
The money account of the person who requested the goal.
progress
Progress type of this goal.
progress_type
Type path of the progress tracker used.
requester_name
The person who requested the goal.
should_send_crate
Should we (still) send a personal crate on the next shipment?
tracker
Tracker that manages the goal progress, permanent and temporary.
weight
The goal weight of a secondary goal type defines how many copies of it are in the grab bag that new secondary goals are pulled from. When the bag is empty, it gets refilled with the same number of each secondary goal type. Max 10.
\ No newline at end of file
diff --git a/datum/station_goal/secondary/medicine_of_type.html b/datum/station_goal/secondary/medicine_of_type.html
new file mode 100644
index 00000000000..1e7c631addf
--- /dev/null
+++ b/datum/station_goal/secondary/medicine_of_type.html
@@ -0,0 +1 @@
+/datum/station_goal/secondary/medicine_of_type - Space Station 13Space Station 13 - Modules - Types — Var Details
Medicine that will count 1:1 towards the goal amount.
Var Details
adequate_meds
Medicine that will count 2:1 towards the goal amount.
preferred_meds
Medicine that will count 1:1 towards the goal amount.
\ No newline at end of file
diff --git a/datum/station_goal/secondary/random_smithed_item.html b/datum/station_goal/secondary/random_smithed_item.html
new file mode 100644
index 00000000000..95c2f330ea7
--- /dev/null
+++ b/datum/station_goal/secondary/random_smithed_item.html
@@ -0,0 +1 @@
+/datum/station_goal/secondary/random_smithed_item - Space Station 13Space Station 13 - Modules - Types — Var Details
What do you get for accomplishing this goal (in credits)
Var Details
material
What should the material type be?
quality
What quality should the product be?
reward
What do you get for accomplishing this goal (in credits)
\ No newline at end of file
diff --git a/datum/station_goal/secondary/variety_food.html b/datum/station_goal/secondary/variety_food.html
new file mode 100644
index 00000000000..d14f27afced
--- /dev/null
+++ b/datum/station_goal/secondary/variety_food.html
@@ -0,0 +1 @@
+/datum/station_goal/secondary/variety_food - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/station_state.html b/datum/station_state.html
new file mode 100644
index 00000000000..b6f6c7b6dfa
--- /dev/null
+++ b/datum/station_state.html
@@ -0,0 +1 @@
+/datum/station_state - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/station_trait.html b/datum/station_trait.html
new file mode 100644
index 00000000000..0b8c08b3b09
--- /dev/null
+++ b/datum/station_trait.html
@@ -0,0 +1 @@
+/datum/station_trait - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
station_trait
Base class of station traits. These are used to influence rounds in one way or the other by influencing the levers of the station.
Will attempt to revert the station trait, used by admins.
Var Details
blacklist
What traits are incompatible with this one?
can_revert
Whether or not this trait can be reverted by an admin
dynamic_threat_id
The ID that we look for in dynamic.json. Not synced with 'name' because I can already see this go wrong
force
Whether this trait is always enabled; generally used for debugging
name
Name of the trait
report_message
What message to show in the centcom report?
show_in_report
Does this trait show in the centcom report?
trait_flags
Extra flags for station traits such as it being abstract, planetary or space only
trait_processes
Whether or not this trait uses process()
trait_to_give
What code-trait does this station trait give? gives none if null
trait_type
The type of this trait. Used to classify how this trait influences the station
weight
Chance relative to other traits of its type to be picked
Proc Details
get_report
type of info the centcom report has on this trait, if any.
on_round_start
Proc ran when round starts. Use this for roundstart effects.
revert
Will attempt to revert the station trait, used by admins.
\ No newline at end of file
diff --git a/datum/station_trait/cybernetic_revolution.html b/datum/station_trait/cybernetic_revolution.html
new file mode 100644
index 00000000000..1b9262e39d8
--- /dev/null
+++ b/datum/station_trait/cybernetic_revolution.html
@@ -0,0 +1 @@
+/datum/station_trait/cybernetic_revolution - Space Station 13Space Station 13 - Modules - Types — Var Details
List of all job types with the cybernetics they should receive.
Var Details
job_to_cybernetic
List of all job types with the cybernetics they should receive.
\ No newline at end of file
diff --git a/datum/station_trait/random_event_weight_modifier.html b/datum/station_trait/random_event_weight_modifier.html
new file mode 100644
index 00000000000..5625bfa5392
--- /dev/null
+++ b/datum/station_trait/random_event_weight_modifier.html
@@ -0,0 +1 @@
+/datum/station_trait/random_event_weight_modifier - Space Station 13Space Station 13 - Modules - Types — Var Details
Multiplier applied to the weight of the event. may want to apply to scaling as well
Var Details
disable_is_one_shot
Do we want to turn off is one shot?
event_names
The names of the event we modify.
event_severity
The severity of the event we modify.
weight_multiplier
Multiplier applied to the weight of the event. may want to apply to scaling as well
\ No newline at end of file
diff --git a/datum/status_effect.html b/datum/status_effect.html
new file mode 100644
index 00000000000..ad6daae2151
--- /dev/null
+++ b/datum/status_effect.html
@@ -0,0 +1 @@
+/datum/status_effect - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Updates the status effect alert's maptext (if possible)
Var Details
id
A unique ID that is used to see if there is already a status effect of the same type on something. Also used for screen alerts
show_duration
Do we show the duration of the status effect on the alert
Proc Details
before_remove
Called before being removed; returning FALSE will cancel removal
update_shown_duration
Updates the status effect alert's maptext (if possible)
\ No newline at end of file
diff --git a/datum/status_effect/blooddrunk.html b/datum/status_effect/blooddrunk.html
new file mode 100644
index 00000000000..c398f819ea0
--- /dev/null
+++ b/datum/status_effect/blooddrunk.html
@@ -0,0 +1 @@
+/datum/status_effect/blooddrunk - Space Station 13Space Station 13 - Modules - Types — Var Details
If this is the chariot subtype, which grants pacifism while the effect is active.
Var Details
chariot
If this is the chariot subtype, which grants pacifism while the effect is active.
\ No newline at end of file
diff --git a/datum/status_effect/bubblegum_curse.html b/datum/status_effect/bubblegum_curse.html
new file mode 100644
index 00000000000..ae56c38b9ea
--- /dev/null
+++ b/datum/status_effect/bubblegum_curse.html
@@ -0,0 +1 @@
+/datum/status_effect/bubblegum_curse - Space Station 13Space Station 13 - Modules - Types — Var Details
Are we starting the process to check if the person has still gotten out of range of bubble / crossed zlvls.
damage
The damage the status effect does per tick.
\ No newline at end of file
diff --git a/datum/status_effect/cloudstruck.html b/datum/status_effect/cloudstruck.html
new file mode 100644
index 00000000000..f3675cc85c7
--- /dev/null
+++ b/datum/status_effect/cloudstruck.html
@@ -0,0 +1 @@
+/datum/status_effect/cloudstruck - Space Station 13Space Station 13 - Modules - Types — Var Details
This overlay is applied to the owner for the duration of the effect.
Var Details
mob_overlay
This overlay is applied to the owner for the duration of the effect.
\ No newline at end of file
diff --git a/datum/status_effect/cosmic_beam.html b/datum/status_effect/cosmic_beam.html
new file mode 100644
index 00000000000..6cd216da1fa
--- /dev/null
+++ b/datum/status_effect/cosmic_beam.html
@@ -0,0 +1,5 @@
+/datum/status_effect/cosmic_beam - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Proc that is only called when the beam fails due to something, so not when manually ended.
+manual disconnection = lose_target, so it can silently end
+automatic disconnection = beam_died, so we can give a warning message first
Used for starting the beam when a target has been acquired
Var Details
active
Wether the beam is active or not
check_delay
The delay of when the beam gets checked
current_beam
The storage for the beam
current_target
Stores the current beam target
last_check
Checks the time of the last check
max_range
The maximum range of the beam
Proc Details
beam_died
Proc that is only called when the beam fails due to something, so not when manually ended.
+manual disconnection = lose_target, so it can silently end
+automatic disconnection = beam_died, so we can give a warning message first
lose_target
Proc that always is called when we want to end the beam and makes sure things are cleaned up, see beam_died()
on_beam_hit
What to add when the beam connects to a target
on_beam_release
What to remove when the beam disconnects from a target
on_beam_tick
What to process when the beam is connected to a target
start_beam
Used for starting the beam when a target has been acquired
\ No newline at end of file
diff --git a/datum/status_effect/cursed.html b/datum/status_effect/cursed.html
new file mode 100644
index 00000000000..82791881b48
--- /dev/null
+++ b/datum/status_effect/cursed.html
@@ -0,0 +1,2 @@
+/datum/status_effect/cursed - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
cursed
Status effect that gives the target miscellanous debuffs while throwing a status alert and causing them to smoke from the damage they're incurring.
+Purposebuilt for cursed slot machines.
Handles the debuffs of this status effect and incrementing the number of curses we have.
Var Details
branded_hand
The hand we are branded to.
curse_count
The amount of times we have been "applied" to the target.
damage_chance
Raw probability we have to deal damage this tick.
max_curse_count
The max number of curses a target can incur with this status effect.
monologuing
Are we currently in the process of sending a monologue?
Proc Details
check_curses
Checks the number of curses we have and returns information back to the slot machine. max_curse_amount is set by the slot machine itself.
clear_curses
Cleans ourselves up and removes our curses. Meant to be done in a "positive" way, when the curse is broken. Directly use qdel otherwise.
handle_after_effects
Makes a nice lorey message about the curse level we're at. I think it's nice
on_death
If our owner dies without getting gibbed, we gib them, because fuck you baltamore
on_stat_changed
If our owner's stat changes, rapidly surge the damage chance.
update_curse_count
Handles the debuffs of this status effect and incrementing the number of curses we have.
\ No newline at end of file
diff --git a/datum/status_effect/eldritch.html b/datum/status_effect/eldritch.html
new file mode 100644
index 00000000000..234a6aac917
--- /dev/null
+++ b/datum/status_effect/eldritch.html
@@ -0,0 +1 @@
+/datum/status_effect/eldritch - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
\ No newline at end of file
diff --git a/datum/status_effect/eldritch/ash.html b/datum/status_effect/eldritch/ash.html
new file mode 100644
index 00000000000..d6787c90c07
--- /dev/null
+++ b/datum/status_effect/eldritch/ash.html
@@ -0,0 +1 @@
+/datum/status_effect/eldritch/ash - Space Station 13Space Station 13 - Modules - Types — Var Details
Dictates how much stamina and burn damage the mark will cause on trigger.
Var Details
repetitions
Dictates how much stamina and burn damage the mark will cause on trigger.
\ No newline at end of file
diff --git a/datum/status_effect/eldritch/blade.html b/datum/status_effect/eldritch/blade.html
new file mode 100644
index 00000000000..d14a9b5e495
--- /dev/null
+++ b/datum/status_effect/eldritch/blade.html
@@ -0,0 +1 @@
+/datum/status_effect/eldritch/blade - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Signal proc for [COMSIG_MOVABLE_TELEPORTED] that blocks any teleports from our locked area.
Var Details
locked_to
If set, the owner of the status effect will not be able to leave this area.
Proc Details
is_escaping_locked_area
Checks if the movement from moving_from to going_to leaves our [var/locked_to] area. Returns TRUE if so.
on_move
Signal proc for COMSIG_MOVABLE_MOVED that blocks any movement out of our locked area
on_teleport
Signal proc for [COMSIG_MOVABLE_TELEPORTED] that blocks any teleports from our locked area.
\ No newline at end of file
diff --git a/datum/status_effect/eldritch/cosmic.html b/datum/status_effect/eldritch/cosmic.html
new file mode 100644
index 00000000000..84eab470954
--- /dev/null
+++ b/datum/status_effect/eldritch/cosmic.html
@@ -0,0 +1 @@
+/datum/status_effect/eldritch/cosmic - Space Station 13Space Station 13 - Modules - Types — Var Details
For storing the location when the mark got applied.
teleport_effect
Effect when triggering mark.
\ No newline at end of file
diff --git a/datum/status_effect/eldritch/moon.html b/datum/status_effect/eldritch/moon.html
new file mode 100644
index 00000000000..9e0c212dcf1
--- /dev/null
+++ b/datum/status_effect/eldritch/moon.html
@@ -0,0 +1 @@
+/datum/status_effect/eldritch/moon - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Checks for damage so the heretic can't just attack them with another weapon whilst they are unable to fight back
Var Details
damage_sustained
Used for checking if the pacifism effect should end early
Proc Details
on_damaged
Checks for damage so the heretic can't just attack them with another weapon whilst they are unable to fight back
\ No newline at end of file
diff --git a/datum/status_effect/fake_virus.html b/datum/status_effect/fake_virus.html
new file mode 100644
index 00000000000..bf8d892ab6c
--- /dev/null
+++ b/datum/status_effect/fake_virus.html
@@ -0,0 +1 @@
+/datum/status_effect/fake_virus - Space Station 13Space Station 13 - Modules - Types — Var Details
So you dont get the most intense messages immediately
Var Details
current_fake_disease
Which disease we are going to fake?
fake_emote
Fake virus emotes with three stages
fake_msg
Fake virus messages by with three stages
msg_stage
So you dont get the most intense messages immediately
\ No newline at end of file
diff --git a/datum/status_effect/fire_blasted.html b/datum/status_effect/fire_blasted.html
new file mode 100644
index 00000000000..09ad7e8e6d0
--- /dev/null
+++ b/datum/status_effect/fire_blasted.html
@@ -0,0 +1,2 @@
+/datum/status_effect/fire_blasted - Space Station 13Space Station 13 - Modules - Types — Var Details
fire_blasted
Status effect applied when someone's hit by the fire blast.
+
Applies an overlay, then causes a damage over time (or heal over time)
How much fire / stam to do per tick (stamina damage is doubled this)
Var Details
animate_duration
How long does the animation of the appearance last? If 0 or negative, we make no overlay
mob_overlay
This overlay is applied to the owner for the duration of the effect.
tick_damage
How much fire / stam to do per tick (stamina damage is doubled this)
\ No newline at end of file
diff --git a/datum/status_effect/fire_ring.html b/datum/status_effect/fire_ring.html
new file mode 100644
index 00000000000..9e013f02543
--- /dev/null
+++ b/datum/status_effect/fire_ring.html
@@ -0,0 +1 @@
+/datum/status_effect/fire_ring - Space Station 13Space Station 13 - Modules - Types — Var Details
fire_ring
Simple status effect for adding a ring of fire around a mob.
\ No newline at end of file
diff --git a/datum/status_effect/fleshmend.html b/datum/status_effect/fleshmend.html
new file mode 100644
index 00000000000..348650022e9
--- /dev/null
+++ b/datum/status_effect/fleshmend.html
@@ -0,0 +1 @@
+/datum/status_effect/fleshmend - Space Station 13Space Station 13 - Modules - Types — Var Details
This diminishes the healing of fleshmend the higher it is.
Var Details
active_instances
a list of integers, one for each remaining instance of fleshmend.
freezing
This diminishes the healing of fleshmend if the user is cold when it is activated
tolerance
This diminishes the healing of fleshmend the higher it is.
\ No newline at end of file
diff --git a/datum/status_effect/ghoul.html b/datum/status_effect/ghoul.html
new file mode 100644
index 00000000000..99b05b448fc
--- /dev/null
+++ b/datum/status_effect/ghoul.html
@@ -0,0 +1 @@
+/datum/status_effect/ghoul - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Removes the ghoul effects from our owner and returns them to normal.
Var Details
master_mind
Reference to the master of the ghoul's mind
new_max_health
The new max health value set for the ghoul, if supplied
on_lost_callback
An optional callback invoked when a goul is unghouled (on_removed)
on_made_callback
An optional callback invoked when a ghoul is made (on_apply)
stamina_mod_applied
What, if any, stamina modifier we applied to the ghoul mob
Proc Details
remove_ghoul_status
Removes the ghoul effects from our owner and returns them to normal.
\ No newline at end of file
diff --git a/datum/status_effect/grouped.html b/datum/status_effect/grouped.html
new file mode 100644
index 00000000000..7d89d16b033
--- /dev/null
+++ b/datum/status_effect/grouped.html
@@ -0,0 +1 @@
+/datum/status_effect/grouped - Space Station 13Space Station 13 - Modules - Types — Var Details
grouped
Status effect from multiple sources, when all sources are removed, so is the effect
Adds itself to sources and destroys itself if one exists already, there are never multiple
Var Details
status_type
Adds itself to sources and destroys itself if one exists already, there are never multiple
\ No newline at end of file
diff --git a/datum/status_effect/heretic_curse.html b/datum/status_effect/heretic_curse.html
new file mode 100644
index 00000000000..3b947ee4351
--- /dev/null
+++ b/datum/status_effect/heretic_curse.html
@@ -0,0 +1 @@
+/datum/status_effect/heretic_curse - Space Station 13Space Station 13 - Modules - Types — Var Details
heretic_curse
A curse given to people to disencourage them from retaliating against someone who sacrificed them
\ No newline at end of file
diff --git a/datum/status_effect/high_five.html b/datum/status_effect/high_five.html
new file mode 100644
index 00000000000..72a74b0abf4
--- /dev/null
+++ b/datum/status_effect/high_five.html
@@ -0,0 +1 @@
+/datum/status_effect/high_five - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Message displayed when wizards perform this together
item_path
Item to be shown in the pop-up balloon.
request
Message displayed when this status effect is applied.
sound_effect
Sound effect played when this emote is completed.
success
Message displayed when normal people perform this together
Proc Details
wiz_cleanup
So we don't leave folks with god-mode
\ No newline at end of file
diff --git a/datum/status_effect/high_five/rps.html b/datum/status_effect/high_five/rps.html
new file mode 100644
index 00000000000..f9af34b70ab
--- /dev/null
+++ b/datum/status_effect/high_five/rps.html
@@ -0,0 +1 @@
+/datum/status_effect/high_five/rps - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/status_effect/hippocratic_oath.html b/datum/status_effect/hippocratic_oath.html
new file mode 100644
index 00000000000..5afc571f61a
--- /dev/null
+++ b/datum/status_effect/hippocratic_oath.html
@@ -0,0 +1 @@
+/datum/status_effect/hippocratic_oath - Space Station 13Space Station 13 - Modules - Types — Var Details
Max heal points for the rod to spend on healing people
Var Details
heal_points
How many points the rod has to heal with, maxes at 50, or whatever heal_points_max is set to.
max_heal_points
Max heal points for the rod to spend on healing people
\ No newline at end of file
diff --git a/datum/status_effect/his_grace.html b/datum/status_effect/his_grace.html
new file mode 100644
index 00000000000..5a81e1dddab
--- /dev/null
+++ b/datum/status_effect/his_grace.html
@@ -0,0 +1 @@
+/datum/status_effect/his_grace - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/status_effect/ice_block_talisman.html b/datum/status_effect/ice_block_talisman.html
new file mode 100644
index 00000000000..10c2266816c
--- /dev/null
+++ b/datum/status_effect/ice_block_talisman.html
@@ -0,0 +1 @@
+/datum/status_effect/ice_block_talisman - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Stored icon overlay for the hit mob, removed when effect is removed
Proc Details
owner_moved
Blocks movement from the status effect owner
\ No newline at end of file
diff --git a/datum/status_effect/incapacitating/sleeping.html b/datum/status_effect/incapacitating/sleeping.html
new file mode 100644
index 00000000000..e5c5a7aa945
--- /dev/null
+++ b/datum/status_effect/incapacitating/sleeping.html
@@ -0,0 +1,3 @@
+/datum/status_effect/incapacitating/sleeping - Space Station 13Space Station 13 - Modules - Types — Var Details
Whether we decided to take a nap on our own.
+As opposed to being hard knocked out with N2O or similar.
Var Details
voluntary
Whether we decided to take a nap on our own.
+As opposed to being hard knocked out with N2O or similar.
\ No newline at end of file
diff --git a/datum/status_effect/incapacitating/stun/goliath_tentacled.html b/datum/status_effect/incapacitating/stun/goliath_tentacled.html
new file mode 100644
index 00000000000..4b56a4aeb1d
--- /dev/null
+++ b/datum/status_effect/incapacitating/stun/goliath_tentacled.html
@@ -0,0 +1 @@
+/datum/status_effect/incapacitating/stun/goliath_tentacled - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
goliath_tentacled
Goliath tentacle stun with special removal conditions
\ No newline at end of file
diff --git a/datum/status_effect/limited_bonus.html b/datum/status_effect/limited_bonus.html
new file mode 100644
index 00000000000..196fa132269
--- /dev/null
+++ b/datum/status_effect/limited_bonus.html
@@ -0,0 +1,2 @@
+/datum/status_effect/limited_bonus - Space Station 13Space Station 13 - Modules - Types — Var Details
limited_bonus
A status effect that can have a certain amount of "bonus" duration added, which extends the duration every tick,
+although there is a maximum amount of bonus time that can be active at any given time.
\ No newline at end of file
diff --git a/datum/status_effect/lwap_scope.html b/datum/status_effect/lwap_scope.html
new file mode 100644
index 00000000000..eba5cd684ac
--- /dev/null
+++ b/datum/status_effect/lwap_scope.html
@@ -0,0 +1 @@
+/datum/status_effect/lwap_scope - Space Station 13Space Station 13 - Modules - Types — Var Details
The number of people the gun has locked on to. Caps at 10 for sanity.
Var Details
locks
The number of people the gun has locked on to. Caps at 10 for sanity.
\ No newline at end of file
diff --git a/datum/status_effect/moon_converted.html b/datum/status_effect/moon_converted.html
new file mode 100644
index 00000000000..bc4793fb154
--- /dev/null
+++ b/datum/status_effect/moon_converted.html
@@ -0,0 +1 @@
+/datum/status_effect/moon_converted - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/status_effect/overclock.html b/datum/status_effect/overclock.html
new file mode 100644
index 00000000000..40d84234931
--- /dev/null
+++ b/datum/status_effect/overclock.html
@@ -0,0 +1 @@
+/datum/status_effect/overclock - Space Station 13Space Station 13 - Modules - Types — Var Details
How many stacks until we start heating up even more?
heat_per_tick
How much do we heat up per tick?
stacks
How many ticks has the ability been turned on?
\ No newline at end of file
diff --git a/datum/status_effect/protective_blades.html b/datum/status_effect/protective_blades.html
new file mode 100644
index 00000000000..be130a900cf
--- /dev/null
+++ b/datum/status_effect/protective_blades.html
@@ -0,0 +1,4 @@
+/datum/status_effect/protective_blades - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
protective_blades
Summons multiple foating knives around the owner.
+Each knife will block an attack straight up.
Remove deleted blades from our blades list properly.
Var Details
blade_orbit_radius
The radius of the blade's orbit.
blade_type
What blade type to create
blades
A list of blade effects orbiting / protecting our owner
delete_on_blades_gone
If TRUE, we self-delete our status effect after all the blades are deleted.
max_num_blades
The number of blades we summon up to.
time_between_initial_blades
The time between spawning blades.
Proc Details
create_blade
Creates a floating blade, adds it to our blade list, and makes it orbit our owner.
on_shield_reaction
Signal proc for [COMSIG_LIVING_CHECK_BLOCK].
+If we have a blade in our list, consume it and block the incoming attack (shield it)
remove_blade
Remove deleted blades from our blades list properly.
\ No newline at end of file
diff --git a/datum/status_effect/protective_blades/recharging.html b/datum/status_effect/protective_blades/recharging.html
new file mode 100644
index 00000000000..6bc5fe6589e
--- /dev/null
+++ b/datum/status_effect/protective_blades/recharging.html
@@ -0,0 +1,2 @@
+/datum/status_effect/protective_blades/recharging - Space Station 13Space Station 13 - Modules - Types — Var Details
recharging
A subtype that doesn't self-delete / disappear when all blades are gone
+It instead regenerates over time back to the max after blades are consumed
The amount of time it takes for a blade to recharge
Var Details
blade_recharge_time
The amount of time it takes for a blade to recharge
\ No newline at end of file
diff --git a/datum/status_effect/quicksilver_form.html b/datum/status_effect/quicksilver_form.html
new file mode 100644
index 00000000000..14b6710ec5e
--- /dev/null
+++ b/datum/status_effect/quicksilver_form.html
@@ -0,0 +1 @@
+/datum/status_effect/quicksilver_form - Space Station 13Space Station 13 - Modules - Types — Var Details
Temporary storage of the owner's flags to restore them properly after the ability is over
Var Details
should_deflect
Do we also reflect projectiles
temporary_flag_storage
Temporary storage of the owner's flags to restore them properly after the ability is over
\ No newline at end of file
diff --git a/datum/status_effect/realignment.html b/datum/status_effect/realignment.html
new file mode 100644
index 00000000000..3dfe18351b1
--- /dev/null
+++ b/datum/status_effect/realignment.html
@@ -0,0 +1 @@
+/datum/status_effect/realignment - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/status_effect/shadow_cloak.html b/datum/status_effect/shadow_cloak.html
new file mode 100644
index 00000000000..04a830c8945
--- /dev/null
+++ b/datum/status_effect/shadow_cloak.html
@@ -0,0 +1,2 @@
+/datum/status_effect/shadow_cloak - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
shadow_cloak
Shadow cloak effect. Conceals the owner in a cloud of purple smoke, making them unidentifiable.
+Also comes with some other buffs and debuffs - faster movespeed, slower actionspeed, etc.
\ No newline at end of file
diff --git a/datum/status_effect/shadow_mend.html b/datum/status_effect/shadow_mend.html
new file mode 100644
index 00000000000..e085cdd7605
--- /dev/null
+++ b/datum/status_effect/shadow_mend.html
@@ -0,0 +1 @@
+/datum/status_effect/shadow_mend - Space Station 13Space Station 13 - Modules - Types — Var Details
If this is true, the status effect will try to apply the debuff to others, rather than the user
Var Details
devil
If this is true, the status effect will try to apply the debuff to others, rather than the user
\ No newline at end of file
diff --git a/datum/status_effect/speedlegs.html b/datum/status_effect/speedlegs.html
new file mode 100644
index 00000000000..e7512c60fcd
--- /dev/null
+++ b/datum/status_effect/speedlegs.html
@@ -0,0 +1 @@
+/datum/status_effect/speedlegs - Space Station 13Space Station 13 - Modules - Types — Var Details
A reference to the changeling's changeling antag datum.
Var Details
cling
A reference to the changeling's changeling antag datum.
\ No newline at end of file
diff --git a/datum/status_effect/star_mark.html b/datum/status_effect/star_mark.html
new file mode 100644
index 00000000000..030bf183e41
--- /dev/null
+++ b/datum/status_effect/star_mark.html
@@ -0,0 +1 @@
+/datum/status_effect/star_mark - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
\ No newline at end of file
diff --git a/datum/status_effect/temporal_slash.html b/datum/status_effect/temporal_slash.html
new file mode 100644
index 00000000000..0c967edbc49
--- /dev/null
+++ b/datum/status_effect/temporal_slash.html
@@ -0,0 +1 @@
+/datum/status_effect/temporal_slash - Space Station 13Space Station 13 - Modules - Types — Var Details
How many times the user has been cut. Each cut adds a damage value below
damage_per_cut
How much damage the blade will do each slice
\ No newline at end of file
diff --git a/datum/status_effect/temporal_slash_finisher.html b/datum/status_effect/temporal_slash_finisher.html
new file mode 100644
index 00000000000..e285ea37972
--- /dev/null
+++ b/datum/status_effect/temporal_slash_finisher.html
@@ -0,0 +1 @@
+/datum/status_effect/temporal_slash_finisher - Space Station 13Space Station 13 - Modules - Types — Var Details
Have we done enough damage to trigger the finisher?
Var Details
cuts
How many times the user has been cut. Each cut adds a damage value below
damage_per_cut
How much damage the blade will do each slice
finishing_cuts
Have we done enough damage to trigger the finisher?
\ No newline at end of file
diff --git a/datum/status_effect/transient.html b/datum/status_effect/transient.html
new file mode 100644
index 00000000000..6d54c3145b3
--- /dev/null
+++ b/datum/status_effect/transient.html
@@ -0,0 +1,2 @@
+/datum/status_effect/transient - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Transient Status Effect (basetype)
A status effect that works off a (possibly decimal) counter before expiring, rather than a specified world.time.
+This allows for a more precise tweaking of status durations at runtime (e.g. paralysis).
Returns how much strength should be adjusted per tick.
Var Details
strength
How much strength left before expiring? time in deciseconds.
Proc Details
calc_decay
Returns how much strength should be adjusted per tick.
\ No newline at end of file
diff --git a/datum/status_effect/transient/disgust.html b/datum/status_effect/transient/disgust.html
new file mode 100644
index 00000000000..c1556893ca2
--- /dev/null
+++ b/datum/status_effect/transient/disgust.html
@@ -0,0 +1 @@
+/datum/status_effect/transient/disgust - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/status_effect/transient/drunkenness.html b/datum/status_effect/transient/drunkenness.html
new file mode 100644
index 00000000000..519167f6f30
--- /dev/null
+++ b/datum/status_effect/transient/drunkenness.html
@@ -0,0 +1,2 @@
+/datum/status_effect/transient/drunkenness - Space Station 13Space Station 13 - Modules - Types — Var Details
Drukenness
Causes a myriad of status effects and other afflictions the stronger it is.
+Decays at a rate of 1 per second if no alcohol remains inside.
\ No newline at end of file
diff --git a/datum/status_effect/transient/hallucination.html b/datum/status_effect/transient/hallucination.html
new file mode 100644
index 00000000000..a48669c4283
--- /dev/null
+++ b/datum/status_effect/transient/hallucination.html
@@ -0,0 +1,5 @@
+/datum/status_effect/transient/hallucination - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/datum/status_effect/unholy_determination.html b/datum/status_effect/unholy_determination.html
new file mode 100644
index 00000000000..ea740701e47
--- /dev/null
+++ b/datum/status_effect/unholy_determination.html
@@ -0,0 +1 @@
+/datum/status_effect/unholy_determination - Space Station 13Space Station 13 - Modules - Types — Var Details
unholy_determination
The buff given to people within the shadow realm to assist them in surviving.
\ No newline at end of file
diff --git a/datum/status_effect/void_chill.html b/datum/status_effect/void_chill.html
new file mode 100644
index 00000000000..de8cda4acca
--- /dev/null
+++ b/datum/status_effect/void_chill.html
@@ -0,0 +1,5 @@
+/datum/status_effect/void_chill - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Updates the overlay that gets applied on our victim
Var Details
stack_limit
Maximum of stacks that we could possibly get
stacks
Current amount of stacks we have
stacks_overlay
icon for the overlay
Proc Details
set_stacks
Setter and adjuster procs for stacks
+
Arguments:
+
+
new_stacks
+
update_movespeed
Updates the movespeed of owner based on the amount of stacks of the debuff
update_stacks_overlay
Updates the overlay that gets applied on our victim
\ No newline at end of file
diff --git a/datum/status_effect/void_prison.html b/datum/status_effect/void_prison.html
new file mode 100644
index 00000000000..8b663906f22
--- /dev/null
+++ b/datum/status_effect/void_prison.html
@@ -0,0 +1 @@
+/datum/status_effect/void_prison - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The overlay that gets applied to whoever has this status active
Proc Details
clear_overlay
Makes sure to clear the ref in case the voidball ever suddenly disappears
enter_prison
Freezes our prisoner in place
\ No newline at end of file
diff --git a/datum/strip_menu.html b/datum/strip_menu.html
new file mode 100644
index 00000000000..11cf37ce54a
--- /dev/null
+++ b/datum/strip_menu.html
@@ -0,0 +1 @@
+/datum/strip_menu - Space Station 13Space Station 13 - Modules - Types — Var Details
Associated list of "[icon][icon_state]" = base64 representation of icon. Used for PERFORMANCE.
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
\ No newline at end of file
diff --git a/datum/strippable_item.html b/datum/strippable_item.html
new file mode 100644
index 00000000000..e4eb8211a6d
--- /dev/null
+++ b/datum/strippable_item.html
@@ -0,0 +1,25 @@
+/datum/strippable_item - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
strippable_item
A representation of an item that can be stripped down
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.
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.
Var Details
key
The STRIPPABLE_ITEM_* key
Proc Details
alternate_action
Performs an alternative action on this strippable_item.
+has_alternate_action needs to be TRUE.
+Returns FALSE if blocked by signal, TRUE otherwise.
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_actions
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_body_action
Actions that can happen to that body part, regardless if there is an item or not. As long as it is not obscured
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.
in_thief_mode
Returns whether the user is in "thief mode" where stripping/equipping is silent and stealing from pockets moves stuff to your hands
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.
\ No newline at end of file
diff --git a/datum/strippable_item/hand.html b/datum/strippable_item/hand.html
new file mode 100644
index 00000000000..a087bbb9eff
--- /dev/null
+++ b/datum/strippable_item/hand.html
@@ -0,0 +1 @@
+/datum/strippable_item/hand - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/strippable_item/mob_item_slot.html b/datum/strippable_item/mob_item_slot.html
new file mode 100644
index 00000000000..d5b35a893bb
--- /dev/null
+++ b/datum/strippable_item/mob_item_slot.html
@@ -0,0 +1 @@
+/datum/strippable_item/mob_item_slot - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
\ No newline at end of file
diff --git a/datum/strippable_item/mob_item_slot/pocket.html b/datum/strippable_item/mob_item_slot/pocket.html
new file mode 100644
index 00000000000..c5e7bf17094
--- /dev/null
+++ b/datum/strippable_item/mob_item_slot/pocket.html
@@ -0,0 +1 @@
+/datum/strippable_item/mob_item_slot/pocket - Space Station 13Space Station 13 - Modules - Types — Var Details
Which pocket we're referencing. Used for visible text.
Var Details
pocket_side
Which pocket we're referencing. Used for visible text.
\ No newline at end of file
diff --git a/datum/supply_order.html b/datum/supply_order.html
new file mode 100644
index 00000000000..d97b9d9169b
--- /dev/null
+++ b/datum/supply_order.html
@@ -0,0 +1 @@
+/datum/supply_order - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Set the account that made the request and make sure the request is deleted when the account is deleted
Var Details
comment
Reason/purpose for order given by orderer
object
The supply pack this order is for
ordered_by_department
The station department datum of the person's department who ordered the supply order
orderedby
The person who ordered the supply order
orderedbyRank
The occupation/assignment of the person who ordered the supply order
orderedbyaccount
The account tied to this order, important for personal orders
ordernum
The orders ID number
requires_cargo_approval
does this order need to be approve by carg?
requires_head_approval
does this order need to be approve by the department head?
Proc Details
clear_request
Clear the request from the request list so it's not permanently stuck in the console
set_account
Set the account that made the request and make sure the request is deleted when the account is deleted
\ No newline at end of file
diff --git a/datum/supply_packs.html b/datum/supply_packs.html
new file mode 100644
index 00000000000..b1e68eb2a06
--- /dev/null
+++ b/datum/supply_packs.html
@@ -0,0 +1,3 @@
+/datum/supply_packs - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
If this variable is filled, this grants the user a special TGUI confirmation prompt about ordering this shuttle, before they can place the order. Similar to bag of holding.
Called right when an order for this pack is confirmed.
Var Details
access
If the container is lockable, the access to require for it.
amount
The number of crates that get generated by this pack.
announce_beacons
Particular beacons that we'll notify the relevant department when we reach
are_you_sure_you_want_to_be_banned
If this variable is filled, this grants the user a special TGUI confirmation prompt about ordering this shuttle, before they can place the order. Similar to bag of holding.
cmag_hidden
If TRUE, this pack is only visible on a cmagged supply console.
containername
The name to give the container itself.
containertype
The type of container that the contents will arrive in.
contains
OBJ: What is inside the crate
contains_special
STRING: What is inside the crate
contraband
If TRUE, this pack is only visible on a hacked supply console.
cost
The cost of this pack.
department_restrictions
Determines which departments do not need QM approval to order this supply pack
group
The pack group this should appear in.
hidden
If TRUE, this pack is only visible on an emagged supply console.
manifest
The manifest contents for this order.
name
The name of this supply pack.
order_type
Path of the type of order that should be generated from this order
singleton
If true, this pack can only be ordered in units of 1.
singleton_group_id
Identifier indicating the specific "set" of singletons that this belongs to.
+Only one item in this set can be in the shopping cart at once.
special
A special pack that should not appear unless certain circumstances are fulfilled (event, station goals, admin packs)
special_enabled
If this pack is special, whether it should be visible or not.
ui_manifest
List of names for being done in TGUI
Proc Details
can_order
Define a special condition as to whether or not this crate can currently be ordered.
create_order
Create a supply order for this pack.
on_order_confirm
Called right when an order for this pack is confirmed.
\ No newline at end of file
diff --git a/datum/supply_packs/abstract/shuttle.html b/datum/supply_packs/abstract/shuttle.html
new file mode 100644
index 00000000000..2635bb76c5e
--- /dev/null
+++ b/datum/supply_packs/abstract/shuttle.html
@@ -0,0 +1,3 @@
+/datum/supply_packs/abstract/shuttle - Space Station 13Space Station 13 - Modules - Types — Var Details
shuttle
A "supply pack" that allows for purchasing a custom shuttle.
The shuttle that this pack corresponds to ordering.
+If given on init, will fill out the pack automagically.
Var Details
speed_factor
The base speed multiplier to apply to the shuttle. 2 means it arrives twice as fast.
template
The shuttle that this pack corresponds to ordering.
+If given on init, will fill out the pack automagically.
\ No newline at end of file
diff --git a/datum/surgery.html b/datum/surgery.html
new file mode 100644
index 00000000000..ad34e4a4ea1
--- /dev/null
+++ b/datum/surgery.html
@@ -0,0 +1,16 @@
+/datum/surgery - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Body part the surgery is currently being performed on. Useful for checking to see if the organ desired is still in the body after the surgery has begun.
Try to perform the next step in the current operation.
+This gets called in the attack chain, and as such returning FALSE in here means that the target
+will be hit with whatever's in your hand.
Var Details
abstract
Whether or not this should be a selectable surgery at all
can_cancel
Whether this surgery can be stopped after the first step with a cautery
cancel_on_organ_change
Whether this surgery should be cancelled when an organ change happens. (removed if requires bodypart, or added if doesn't require bodypart)
desc
Description of the surgery
germ_prevention_quality
How likely it should be for the surgery to cause infection: 0-1
ignore_clothes
Whether you need to remove clothes to perform the surgery
location
Location of the surgery
lying_required
Does the victim (patient) need to be lying down?
name
Name of the surgery
organ_to_manipulate
Body part the surgery is currently being performed on. Useful for checking to see if the organ desired is still in the body after the surgery has begun.
possible_locs
Body locations this surgery can be performed on
replaced_by
Don't show this surgery if this type exists. Set to /datum/surgery if you want to hide a "base" surgery.
requires_bodypart
Surgery is only available if the target bodypart is present (or if it's missing)
requires_organic_bodypart
Whether we can perform the surgery on a robotic limb
requires_real_bodypart
Some surgeries might work on limbs that don't really exist (like chainsaw arms or flashlight eyes)
self_operable
Can the surgery be performed on yourself?
speed_modifier
Surgery step speed modifier
step_in_progress
If we're currently performing a step
step_number
How far along we are in a surgery being performed.
steps
Surgical steps that go into performing this procedure
target
Target of the surgery
target_mobtypes
Mobs on which this can be performed
Proc Details
New
Create a new surgery.
+
Arguments:
+
+
surgery_target - The atom the target is being performed on.
+
surgery_location - The body zone that the surgery is being performed on.
+
surgery_bodypart - The body part that the surgery is being performed on.
+
can_start
Whether or not we can start this surgery.
+If this returns FALSE, this surgery won't show up in the list.
get_surgery_next_step
Get the next step in the current surgery, or null if we're on the last one.
get_surgery_step
Get the current surgery step we're on
handle_organ_state_change
Handle an organ's insertion or removal mid-surgery.
+If cancel_on_organ_change is true, then this will cancel the surgery in certain cases.
is_organ_compatible
Get whether the target organ is compatible with the current surgery.
next_step
Try to perform the next step in the current operation.
+This gets called in the attack chain, and as such returning FALSE in here means that the target
+will be hit with whatever's in your hand.
+
The return is passed to the attack chain, so return TRUE to stop any sort of afterattack.
\ No newline at end of file
diff --git a/datum/surgery/heal.html b/datum/surgery/heal.html
new file mode 100644
index 00000000000..66008a656da
--- /dev/null
+++ b/datum/surgery/heal.html
@@ -0,0 +1 @@
+/datum/surgery/heal - Space Station 13Space Station 13 - Modules - Types — Var Details
A subtype of /datum/surgery_step/heal that this will invoke.
Var Details
healing_step_type
A subtype of /datum/surgery_step/heal that this will invoke.
\ No newline at end of file
diff --git a/datum/surgery_step.html b/datum/surgery_step.html
new file mode 100644
index 00000000000..e4e5e1c604f
--- /dev/null
+++ b/datum/surgery_step.html
@@ -0,0 +1,66 @@
+/datum/surgery_step - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Type path of tools that can be used to complete this step. Format is path = probability of success.
+If the tool has a specific surgery tooltype, you can use that as a key as well.
The current type of implement from allowed_tools in use. This has to be stored, as the typepath of the tool might not match the list type (such as if we're using tool behavior)
Is this step repeatable by using the same tool again after it's finished?
+Make sure it isn't the last step, or it's used in a cancellable surgery. Otherwise, you might get stuck in a loop!
Finish a surgery step, performing anything that runs on the tail-end of a successful surgery.
+This runs if the surgery step passes the probability check, and therefore is a success.
Play out the failure state of a surgery step.
+This runs if the surgery step fails the probability check, the right chems weren't present, or if the user deliberately failed the surgery.
Initiate and really perform the surgery itself.
+This includes the main do-after and the checking of probabilities for successful surgeries.
+If try_to_fail is TRUE, then this surgery will be deliberately failed out of.
Whether or not the tool being used is usable for the surgery.
+Checks both the tool itself as well as any tool behaviors defined in allowed_tools.
+Arguments:
Try to perform an operation on a user.
+Arguments:
Var Details
accept_any_item
Does the surgery step accept any item? If true, ignores implements. Compatible with accept_hand.
accept_hand
does the surgery step require an open hand? If true, ignores implements. Compatible with accept_any_item.
allowed_tools
Type path of tools that can be used to complete this step. Format is path = probability of success.
+If the tool has a specific surgery tooltype, you can use that as a key as well.
blood_level
How much blood this step can get on surgeon. See SURGERY_BLOODSPREAD_* defines
can_infect
Whether this surgery step can cause an infection.
chems_needed
List of chems needed in the mob to complete the step. Even on success, this step will have no effect if the required chems aren't in the mob.
failure_sound
Sound played if the step fails. Single value only
implement_type
The current type of implement from allowed_tools in use. This has to be stored, as the typepath of the tool might not match the list type (such as if we're using tool behavior)
preop_sound
Sound played when the step is started. Lists or single value can be used for this var as well as tool defines
repeatable
Is this step repeatable by using the same tool again after it's finished?
+Make sure it isn't the last step, or it's used in a cancellable surgery. Otherwise, you might get stuck in a loop!
require_all_chems
Do we require any of the needed chems, or all of them?
silicons_ignore_prob
Whether silicons ignore any probabilities (and are therefore "perfect" surgeons)
success_sound
Sound played if the step succeeded. Single value only
time
duration of the step
times_repeated
How many times this step has been automatically repeated.
Proc Details
can_repeat
Determines whether or not this surgery step can repeat if its end/fail steps returned SURGERY_STEP_RETRY.
+
Arguments:
+
+
user - mob performing the surgery
+
target - mob the surgery is being performed on
+
target_zone - body zone of the surgery
+
tool - tool used for the surgery
+
surgery - the operation this surgery step is a part of
+
+
If this returns TRUE, the step will automatically retry. If not, the user will have to manually start the step again.
chem_check
Check that the target contains the chems we expect them to.
deal_pain
Try to inflict pain during a surgery, a surgeon's dream come true.
+This will wake up the user if they're voluntarily sleeping.
+
Returns the success rate that the user's amount of pain would deal, while also handling extra pain behavior.
end_step
Finish a surgery step, performing anything that runs on the tail-end of a successful surgery.
+This runs if the surgery step passes the probability check, and therefore is a success.
+
Should return SURGERY_STEP_CONTINUE to advance the surgery, though may return SURGERY_STEP_INCOMPLETE to keep the surgery step from advancing.
fail_step
Play out the failure state of a surgery step.
+This runs if the surgery step fails the probability check, the right chems weren't present, or if the user deliberately failed the surgery.
+
Should return SURGERY_STEP_INCOMPLETE to prevent the surgery step from advancing, though may return SURGERY_STEP_CONTINUE to advance to the next step regardless.
get_step_information
Get the action that will be performed during this surgery step, in context of the surgery it is a part of.
+
Arguments:
+
+
surgery - The main surgery this is being invoked by.
+
with_tools - Whether to include the tool necessary for the step at the end of the step information.
+
initiate
Initiate and really perform the surgery itself.
+This includes the main do-after and the checking of probabilities for successful surgeries.
+If try_to_fail is TRUE, then this surgery will be deliberately failed out of.
+
Returns TRUE if the surgery should proceed to the next step, or FALSE otherwise.
is_valid_tool
Whether or not the tool being used is usable for the surgery.
+Checks both the tool itself as well as any tool behaviors defined in allowed_tools.
+Arguments:
+
+
user - User handling the tool.
+
tool - The tool (or item) being used in this surgery step.
+Returns TRUE if the tool can be used, or FALSE otherwise
+
slowdown_immune
Check for mobs that would be immune to surgery slowdowns/speedups.
spread_germs_by_incision
Spread germs directly from a tool.
+
+
E - An external organ being operated on.
+
tool - The tool performing the operation.
+
spread_germs_to_organ
Spread some nasty germs to an organ.
+
+
target_organ - The organ to try spreading germs to.
+
user - The user who's manipulating the organ.
+
tool - The tool the user is using to mess with the organ.
+
tool_check
Get whether the tool should be usable in its current state. Useful for checks to see if a welder is on, for example.
+
Arguments:
+
+
user - The user using the tool.
+
tool - The tool in use.
+
try_op
Try to perform an operation on a user.
+Arguments:
+
+
user - The user performing the surgery.
+
target - The user on whom the surgery is being performed.
+
target_zone - the zone the user is targeting for the surgery.
+
tool - The object that the user is using to perform the surgery (optional)
+
surgery - The surgery being performed.
+Returns TRUE if the step was a success, or FALSE if the step can't be performed for some reason.
+
\ No newline at end of file
diff --git a/datum/surgery_step/generic/dissect.html b/datum/surgery_step/generic/dissect.html
new file mode 100644
index 00000000000..c0b49e42248
--- /dev/null
+++ b/datum/surgery_step/generic/dissect.html
@@ -0,0 +1 @@
+/datum/surgery_step/generic/dissect - Space Station 13Space Station 13 - Modules - Types — Proc Details
Decides the quality of the new organ based off tool efficiency and tool bit mods
Proc Details
pick_quality
Decides the quality of the new organ based off tool efficiency and tool bit mods
\ No newline at end of file
diff --git a/datum/surgery_step/heal.html b/datum/surgery_step/heal.html
new file mode 100644
index 00000000000..cb40149805e
--- /dev/null
+++ b/datum/surgery_step/heal.html
@@ -0,0 +1 @@
+/datum/surgery_step/heal - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Get a message indicating how the surgery is going.
Var Details
brute_damage_healed
Amount of brute damage to treat per op.
brute_damage_healmod
Multiplier based on the amount of brute damage that the patient has, increasing the efficiency at higher levels of damage.
burn_damage_healed
Amount of burn damage to treat per op.
burn_damage_healmod
Multiplier based on the amount of burn damage that the patient has.
Proc Details
get_progress
Get a message indicating how the surgery is going.
\ No newline at end of file
diff --git a/datum/surgery_step/heal/burn.html b/datum/surgery_step/heal/burn.html
new file mode 100644
index 00000000000..549f346db05
--- /dev/null
+++ b/datum/surgery_step/heal/burn.html
@@ -0,0 +1 @@
+/datum/surgery_step/heal/burn - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/datum/surgery_step/internal.html b/datum/surgery_step/internal.html
new file mode 100644
index 00000000000..4d35deb26a8
--- /dev/null
+++ b/datum/surgery_step/internal.html
@@ -0,0 +1,2 @@
+/datum/surgery_step/internal - Space Station 13Space Station 13 - Modules - Types — Proc Details
Get an internal list of organs for a zone (or an external organ).
Proc Details
get_organ_list
Get an internal list of organs for a zone (or an external organ).
+
Helper function since we end up calling this a ton to work with carbons
\ No newline at end of file
diff --git a/datum/surgery_step/proxy.html b/datum/surgery_step/proxy.html
new file mode 100644
index 00000000000..987f989172b
--- /dev/null
+++ b/datum/surgery_step/proxy.html
@@ -0,0 +1,30 @@
+/datum/surgery_step/proxy - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
proxy
Here's the special sauce: a surgery step that can pretend to be a few different surgery steps.
+These proxy steps will, depending on the tool that's used, either continue to the next surgery step, or temporarily spin off a new surgery
+by adding new steps to the current surgery.
These tools are just...special cases.
+If we're using one of these tools and there's a tool conflict with the original surgery,
+just ignore any branches and continue with the original surgery.
Test the next step, but don't fully commit to it unless it completes successfully.
+If the next step doesn't fully complete (such as being interrupted or failing), we'll insert ourselves again to bring us back
+to the "base" state.
+If it does, we'll add the subsequent steps to the surgery and continue down the expected branch. If you complete the surgery step, it
+means you've committed to what comes next.
+Part of the motivation behind this is that I don't want to mutate a surgery retroactively. We can insert, but we shouldn't be changing anything
+behind us.
Var Details
branches
Optional surgery TYPES that we can branch out to
+Note that these must not share any starting tools.
branches_init
Initialized versions of types specified in branches.
+Don't fill this yourself, instead fill branches with surgery TYPES.
insert_self_after
Whether or not we should add ourselves as a step after we run a branch. This doesn't apply to failures, those will always add ourselves after.
overriding_tools
These tools are just...special cases.
+If we're using one of these tools and there's a tool conflict with the original surgery,
+just ignore any branches and continue with the original surgery.
Proc Details
try_next_step
Test the next step, but don't fully commit to it unless it completes successfully.
+If the next step doesn't fully complete (such as being interrupted or failing), we'll insert ourselves again to bring us back
+to the "base" state.
+If it does, we'll add the subsequent steps to the surgery and continue down the expected branch. If you complete the surgery step, it
+means you've committed to what comes next.
+Part of the motivation behind this is that I don't want to mutate a surgery retroactively. We can insert, but we shouldn't be changing anything
+behind us.
+
Arguments:
+
+
next_surgery_steps - the steps for the branching surgery to add to the current surgery. If there's no branching surgery (or this would continue the main surgery) ignore this.
+
override_adding_self - If true, then on a successful surgery, regardless of the value of insert_self_after, we won't add ourselves in as another step.
+
readd_step_on_fail - If true, when we fail a step we'll add the failed step again after the proxy surgery. This is necessary for main surgeries.
+(for other arguments, see try_op())
+
\ No newline at end of file
diff --git a/datum/surgery_step/proxy/open_organ/extra.html b/datum/surgery_step/proxy/open_organ/extra.html
new file mode 100644
index 00000000000..1de4d8ba639
--- /dev/null
+++ b/datum/surgery_step/proxy/open_organ/extra.html
@@ -0,0 +1 @@
+/datum/surgery_step/proxy/open_organ/extra - Space Station 13Space Station 13 - Modules - Types — Var Details
extra
Surgeries for tending brute and burn damage without needing to expend items.
\ No newline at end of file
diff --git a/datum/symptom.html b/datum/symptom.html
new file mode 100644
index 00000000000..0c9f154f1a3
--- /dev/null
+++ b/datum/symptom.html
@@ -0,0 +1 @@
+/datum/symptom - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
How likely the symptom is to activate each process cycle
chem_treatments
Asoc list of treatment reagents to multiplier and timer. Multiplier multiplies the frequency and strength of the symptom
id
The hash tag for our diseases, we will add it up with our other symptoms to get a unique id! ID MUST BE UNIQUE!!!
level
The type level of the symptom. Higher is harder to generate.
phys_treatments
Asoc list of physical treatments to multiplier and timer. Multiplier multiplies the frequency and strength of the symptom
purge_amount
Amount of treatment reagents the symptom will consume
severity
The severity level of the symptom. Higher is more dangerous.
Proc Details
Activate
Checks the conditions for symptom activation
check_chem_treatment
Default behaviour for treatment chems. Mitigate the symptom for a while after being consumed.
check_phys_treatment
Default behaviour for physical treatments. Mitigate the symptoms while effects remain
check_treatment
Checks all forms of treatment and
post_treatment
Actions that are taken after the treatment check like reverting or lessening effects.
symptom_act
Applies the symptom effects
\ No newline at end of file
diff --git a/datum/syndicate_contract.html b/datum/syndicate_contract.html
new file mode 100644
index 00000000000..3c1c641f460
--- /dev/null
+++ b/datum/syndicate_contract.html
@@ -0,0 +1,54 @@
+/datum/syndicate_contract - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Syndicate Contract
Describes a contract that can be completed by a Contractor.
Amount of telecrystals the contract will receive upon completion, depending on the chosen difficulty.
+Structure: EXTRACTION_DIFFICULTY_(EASY|MEDIUM|HARD) => number
Prisoner jail timer handle. On completion, returns the prisoner back to station.
reward_credits
Amount of credits the contractor will receive upon completion.
reward_tc
Amount of telecrystals the contract will receive upon completion, depending on the chosen difficulty.
+Structure: EXTRACTION_DIFFICULTY_(EASY|MEDIUM|HARD) => number
status
Current contract status.
target_name
Name of the target to display on the UI.
target_photo
The target's photo to display on the UI.
temp_objs
Temporary objects that are available to the kidnapee during their time in jail. These are deleted when the victim is returned.
victim_belongings
The kidnapee's belongings. Set upon extraction by the contractor.
Proc Details
clean_up
Cleans up the contract.
complete
Marks the contract as completed and gives the rewards to the contractor.
+
Arguments:
+
+
target_dead - Whether the target was extracted dead.
+
deadline_reached
Called when the extraction window closes.
default_damage
Default damage if no injury is possible.
+
Arguments:
+
+
M - The target mob.
+
fail
Marks the contract as failed and stops it.
+
Arguments:
+
+
difficulty - The visual reason as to why the contract failed.
+
generate
Fills the contract with valid data to be used.
handle_target_experience
Handles the target's experience from extraction.
+
Arguments:
+
+
M - The target mob.
+
P - The extraction portal.
+
handle_target_return
Handles the target's return to station.
+
Arguments:
+
+
M - The target mob.
+
initiate
Begins the contract if possible.
+
Arguments:
+
+
M - The contractor.
+
difficulty - The chosen difficulty level.
+
injure_target
Handles the target's injury/interrogation at the Syndicate Jail.
+
Arguments:
+
+
M - The target mob.
+
invalidate
Marks the contract as invalid and effectively cancels it for later use.
notify_completion
Notifies the uplink's holder that a contract has been completed.
+
Arguments:
+
+
tc - How many telecrystals they have received.
+
creds - How many credits they have received.
+
target_dead - Whether the target was extracted dead.
+
open_extraction_portal
Opens the extraction portal.
+
Arguments:
+
+
U - The uplink.
+
M - The contractor.
+
F - The flare.
+
start_extraction_process
Initiates the extraction process if conditions are met.
+
Arguments:
+
+
M - The contractor.
+
target_received
Called when a contract target has been extracted through the portal.
+
Arguments:
+
+
M - The target mob.
+
P - The extraction portal.
+
\ No newline at end of file
diff --git a/datum/targeting_strategy.html b/datum/targeting_strategy.html
new file mode 100644
index 00000000000..0913e5d6266
--- /dev/null
+++ b/datum/targeting_strategy.html
@@ -0,0 +1,3 @@
+/datum/targeting_strategy - Space Station 13Space Station 13 - Modules - Types — Proc Details
targeting_strategy
Datum for basic mobs to define what they can attack.
+Global, just like ai_behaviors.
+Meant to be subtyped into different kinds of targeting strategies.
Returns something the target might be hiding inside of.
Proc Details
can_attack
Returns true or false depending on if the target can be attacked by the mob.
find_hidden_mobs
Returns something the target might be hiding inside of.
\ No newline at end of file
diff --git a/datum/targeting_strategy/basic.html b/datum/targeting_strategy/basic.html
new file mode 100644
index 00000000000..6f6be802155
--- /dev/null
+++ b/datum/targeting_strategy/basic.html
@@ -0,0 +1 @@
+/datum/targeting_strategy/basic - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Blackboard key for the maximum aggro range of the mob
check_factions_exactly
When we do our basic faction check, do we look for exact faction matches?
ignore_sight
Whether we care for seeing the target or not
minimum_stat_key
Blackboard key containing the minimum stat of a living mob to target
target_wounded_key
If this blackboard key is TRUE, makes us only target wounded mobs
Proc Details
faction_check
Returns true if the mob and target share factions
\ No newline at end of file
diff --git a/datum/targeting_strategy/basic/malf_drone.html b/datum/targeting_strategy/basic/malf_drone.html
new file mode 100644
index 00000000000..8ec4de14491
--- /dev/null
+++ b/datum/targeting_strategy/basic/malf_drone.html
@@ -0,0 +1 @@
+/datum/targeting_strategy/basic/malf_drone - Space Station 13Space Station 13 - Modules - Types — Proc Details
Returns false if we're on passive mode. If we get attacked, we swap out of passive mode.
Proc Details
can_attack
Returns false if we're on passive mode. If we get attacked, we swap out of passive mode.
\ No newline at end of file
diff --git a/datum/targeting_strategy/basic/not_friends.html b/datum/targeting_strategy/basic/not_friends.html
new file mode 100644
index 00000000000..67f4e9e7405
--- /dev/null
+++ b/datum/targeting_strategy/basic/not_friends.html
@@ -0,0 +1 @@
+/datum/targeting_strategy/basic/not_friends - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
not_friends
Don't target an atom in our friends list (or turfs), anything else is fair game
Returns true or false depending on if the target can be attacked by the mob
faction_check
friends dont care about factions
\ No newline at end of file
diff --git a/datum/targeting_strategy/basic/of_size.html b/datum/targeting_strategy/basic/of_size.html
new file mode 100644
index 00000000000..c3be727ffa0
--- /dev/null
+++ b/datum/targeting_strategy/basic/of_size.html
@@ -0,0 +1 @@
+/datum/targeting_strategy/basic/of_size - Space Station 13Space Station 13 - Modules - Types — Var Details
of_size
Subtype which searches for mobs of a size relative to ours
If true, we will return mobs which are the same size as us.
Var Details
find_smaller
If true, we will return mobs which are smaller than us. If false, larger.
inclusive
If true, we will return mobs which are the same size as us.
\ No newline at end of file
diff --git a/datum/targeting_strategy/lightgeist.html b/datum/targeting_strategy/lightgeist.html
new file mode 100644
index 00000000000..3e691eb9dc2
--- /dev/null
+++ b/datum/targeting_strategy/lightgeist.html
@@ -0,0 +1 @@
+/datum/targeting_strategy/lightgeist - Space Station 13Space Station 13 - Modules - Types — Var Details
lightgeist
Attack only mobs who have damage that we can heal, I think this is specific enough not to be a generic type
Types of mobs we can heal, not in a blackboard key because there is no point changing this at runtime because the component will already exist
Var Details
heal_biotypes
Types of mobs we can heal, not in a blackboard key because there is no point changing this at runtime because the component will already exist
\ No newline at end of file
diff --git a/datum/tarot.html b/datum/tarot.html
new file mode 100644
index 00000000000..8aba0c23eb5
--- /dev/null
+++ b/datum/tarot.html
@@ -0,0 +1 @@
+/datum/tarot - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/tcomms_message.html b/datum/tcomms_message.html
new file mode 100644
index 00000000000..71d7ece38be
--- /dev/null
+++ b/datum/tcomms_message.html
@@ -0,0 +1,5 @@
+/datum/tcomms_message - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Telecommunications Message
Datum which holds all the data for a message being sent
+
This used to be a single associative list with just keys and values
+It had no typepath or presence checking, and was absolutely awful to work with
+This fixes that
Did the signal come from a device that requires tcomms to function
pass
Should this signal be re-broadcasted (Can be modified by NTTC, defaults to TRUE)
pre_modify_name
sender_name before modify_message modifies it, because it introduces html tags.
radio
The radio it was sent from
reject
Is this signal meant to be rejected
sender
Who sent it
sender_job
What job are they
sender_name
Who sent the message
sender_rank
What rank are they (this is used for formatting)
signal_type
The signal type (See defines/radio.dm)
source_level
Source Z-level
verbage
Verbage used
vmask
Was it sent with a voice changer
vname
Voice name if the person doesnt have a name (diona, alien, etc)
zlevels
List of all channels this can be sent or received on
Proc Details
Destroy
Destructor for the TCM datum.
+
This needs to happen like this so that things dont keep references held in place
\ No newline at end of file
diff --git a/datum/team.html b/datum/team.html
new file mode 100644
index 00000000000..c8218c6b035
--- /dev/null
+++ b/datum/team.html
@@ -0,0 +1,15 @@
+/datum/team - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Antagonist Team
Datum used by team antagonists to track it's members and objectives the team needs to complete.
Returns an associated list of priority objectives for admins to add to the team, this is like
+Must return in the form objective name = objective_path.
Overridable logic for handling how the adding of objectives works works
+Can return an objective datum, or a boolean.
+Returns a boolean if its already added to the team objectives in a custom way
An internal proc to allow teams to handle custom parts of adding a member.
+This should ONLY be called by add_member() to ensure proper order of operations.
A list of objectives which all team members share.
Proc Details
add_member
Adds new_member to this team.
+
This is an interface proc, to prevent handle_removing_member from being called multiple times.
+It is better if this is only called from add_antag_datum(), but it is not required.
add_team_objective
Adds a team objective to each member's matching antag datum.
admin_add_member
Adds a new member to this team from a list of players in the round.
admin_add_objective
Allows admins to add a team objective.
+Minimize overriding this proc please.
admin_announce_objectives
Allows admins to announce objectives to all team members.
admin_communicate
Allows admins to send a message to all members of this team.
admin_remove_member
Allows admins to remove a team member.
admin_remove_objective
Allows admins to remove a team objective.
admin_rename_team
Allows admins to rename the team.
get_admin_commands
A list of team-specific admin commands for this team. Should be in the form of "command" = CALLBACK(x, PROC_REF(some_proc)).
get_admin_priority_objectives
Returns an associated list of priority objectives for admins to add to the team, this is like
+Must return in the form objective name = objective_path.
get_antag_datum_from_member
Return an antag datum from a member which is linked with this team.
get_target_excludes
Special overrides for teams for target exclusion from objectives.
handle_adding_admin_objective
Overridable logic for handling how the adding of objectives works works
+Can return an objective datum, or a boolean.
+Returns a boolean if its already added to the team objectives in a custom way
handle_adding_member
An internal proc to allow teams to handle custom parts of adding a member.
+This should ONLY be called by add_member() to ensure proper order of operations.
handle_removing_member
An internal proc for teams to remove a member.
on_round_end
Displays the roundend stats for teams
remove_member
Removes member from this team.
+This is an interface proc, to prevent handle_removing_member from being called multiple times.
remove_team_objective
Remove a team objective from each member's matching antag datum.
\ No newline at end of file
diff --git a/datum/team/cult.html b/datum/team/cult.html
new file mode 100644
index 00000000000..c75d813fb36
--- /dev/null
+++ b/datum/team/cult.html
@@ -0,0 +1,13 @@
+/datum/team/cult - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
This is a magic fuckin proc that takes a proc_ref, and calls it on all the human cultists.
+Created so that we don't make 1000 timers, and I'm too lazy to make a proc for all of these.
+Used in callbacks for some magic bullshit.
Returns the current number of cultists and constructs.
Var Details
ascend_number
How many crew need to be converted to ascend
ascend_percent
Used for the CentComm announcement at ascension
cult_ascendant
Does the cult have halos
cult_risen
Does the cult have glowing eyes
cult_status
Variable used for tracking the progress of the cult's sacrifices & god summonings
is_in_transition
Boolean that prevents all_members_timer from being called multiple times
mirror_shields_active
Are cultist mirror shields active yet?
obj_summon
God summon objective added when ready_to_summon() is called
recount_timer
Timer until we do a recount of cultist members
rise_number
How many crew need to be converted to rise
unlocked_heretic_items
List that keeps track of which items have been unlocked after a heretic was sacked.
Proc Details
all_members_timer
This is a magic fuckin proc that takes a proc_ref, and calls it on all the human cultists.
+Created so that we don't make 1000 timers, and I'm too lazy to make a proc for all of these.
+Used in callbacks for some magic bullshit.
cult_body_transfer
Makes sure that the signal stays on the correct body when a cultist changes bodies
cult_threshold_check
Decides at the start of the round how many conversions are needed to rise/ascend.
+
The number is decided by (Percentage * (Players - Cultists)), so for example at 110 players it would be 11 conversions for rise. (0.1 * (110 - 4))
+These values change based on population because 20 cultists are MUCH more powerful if there's only 50 players, compared to 120.
Return the current sacrifice objective datum, if any
get_admin_commands
ADMIN STUFF DOWN YONDER
get_cultists
Returns the current number of cultists and constructs.
+
Returns the number of cultists and constructs in the format list(number of Cultists, number of Constructs), or as one combined number.
+
+
separate - Should the number be returned as a list with two separate values (Humans and Constructs) or as one number.
+
\ No newline at end of file
diff --git a/datum/team/revolution.html b/datum/team/revolution.html
new file mode 100644
index 00000000000..ac0e29fd48c
--- /dev/null
+++ b/datum/team/revolution.html
@@ -0,0 +1,48 @@
+/datum/team/revolution - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/datum/team/uplifted_primitive.html b/datum/team/uplifted_primitive.html
new file mode 100644
index 00000000000..074d7f5bd5d
--- /dev/null
+++ b/datum/team/uplifted_primitive.html
@@ -0,0 +1 @@
+/datum/team/uplifted_primitive - Space Station 13Space Station 13 - Modules - Types — Var Details
uplifted_primitive
An team containing all uplifted primitives of a given species.
The number of spawns that should always poll ghosts for nests of this team.
has_added_team_objective
Whether or not the team objective has been added yet.
potential_objectives
All potential objectives which can be added as the team objective.
team_hud
The antag hud specific to this team, only shown to other members of the team.
team_species
The species this team represents.
\ No newline at end of file
diff --git a/datum/tech.html b/datum/tech.html
new file mode 100644
index 00000000000..83b40112743
--- /dev/null
+++ b/datum/tech.html
@@ -0,0 +1,4 @@
+/datum/tech - Space Station 13Space Station 13 - Modules - Types — Var Details
tech
Technology Datums
+
+
Includes all the various technoliges and what they make.
+Datum of individual technologies.
Name of the FontAwesome icon to represent the tech
Var Details
ui_icon
Name of the FontAwesome icon to represent the tech
\ No newline at end of file
diff --git a/datum/tgs_chat_channel.html b/datum/tgs_chat_channel.html
new file mode 100644
index 00000000000..b85a4619892
--- /dev/null
+++ b/datum/tgs_chat_channel.html
@@ -0,0 +1 @@
+/datum/tgs_chat_channel - Space Station 13Space Station 13 - Modules - Types — Var Details
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.
\ No newline at end of file
diff --git a/datum/tgs_chat_command.html b/datum/tgs_chat_command.html
new file mode 100644
index 00000000000..241e42e4b8d
--- /dev/null
+++ b/datum/tgs_chat_command.html
@@ -0,0 +1,3 @@
+/datum/tgs_chat_command - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
sender - The /datum/tgs_chat_user who issued the command.
+params - The trimmed string following the command `/datum/tgs_chat_command/var/name].
\ No newline at end of file
diff --git a/datum/tgs_chat_embed/footer.html b/datum/tgs_chat_embed/footer.html
new file mode 100644
index 00000000000..9acbb6f3f6f
--- /dev/null
+++ b/datum/tgs_chat_embed/footer.html
@@ -0,0 +1 @@
+/datum/tgs_chat_embed/footer - Space Station 13Space Station 13 - Modules - Types — Var Details
footer
See https://discord.com/developers/docs/resources/channel#embed-object-embed-footer-structure for details.
\ No newline at end of file
diff --git a/datum/tgs_chat_embed/media.html b/datum/tgs_chat_embed/media.html
new file mode 100644
index 00000000000..1f9e3642f79
--- /dev/null
+++ b/datum/tgs_chat_embed/media.html
@@ -0,0 +1 @@
+/datum/tgs_chat_embed/media - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/tgs_chat_embed/structure.html b/datum/tgs_chat_embed/structure.html
new file mode 100644
index 00000000000..ad36ec64d0b
--- /dev/null
+++ b/datum/tgs_chat_embed/structure.html
@@ -0,0 +1 @@
+/datum/tgs_chat_embed/structure - Space Station 13Space Station 13 - Modules - Types — Var Details
structure
User definable chat embed. Currently mirrors Discord chat embeds. See https://discord.com/developers/docs/resources/channel#embed-object-embed-structure for details.
See https://discord.com/developers/docs/resources/channel#embed-object-embed-image-structure for details.
Var Details
colour
Colour must be #AARRGGBB or #RRGGBB hex string.
image
See https://discord.com/developers/docs/resources/channel#embed-object-embed-image-structure for details.
thumbnail
See https://discord.com/developers/docs/resources/channel#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/channel#embed-object-embed-image-structure for details.
\ No newline at end of file
diff --git a/datum/tgs_chat_user.html b/datum/tgs_chat_user.html
new file mode 100644
index 00000000000..fbf49911b15
--- /dev/null
+++ b/datum/tgs_chat_user.html
@@ -0,0 +1 @@
+/datum/tgs_chat_user - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/tgs_event_handler.html b/datum/tgs_event_handler.html
new file mode 100644
index 00000000000..d92378bcd41
--- /dev/null
+++ b/datum/tgs_event_handler.html
@@ -0,0 +1,2 @@
+/datum/tgs_event_handler - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
event_code - One of the TGS_EVENT_ defines. Extra parameters will be documented in each.
\ No newline at end of file
diff --git a/datum/tgs_message_content.html b/datum/tgs_message_content.html
new file mode 100644
index 00000000000..c9284f5091c
--- /dev/null
+++ b/datum/tgs_message_content.html
@@ -0,0 +1 @@
+/datum/tgs_message_content - Space Station 13Space Station 13 - Modules - Types — Var Details
The tring content of the message. Must be provided in New().
Var Details
embed
The /datum/tgs_chat_embed to embed in the message. Not supported on all chat providers.
text
The tring content of the message. Must be provided in New().
\ No newline at end of file
diff --git a/datum/tgs_revision_information.html b/datum/tgs_revision_information.html
new file mode 100644
index 00000000000..38263fe552a
--- /dev/null
+++ b/datum/tgs_revision_information.html
@@ -0,0 +1 @@
+/datum/tgs_revision_information - Space Station 13Space Station 13 - Modules - Types — Var Details
ISO 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.
\ No newline at end of file
diff --git a/datum/tgs_revision_information/test_merge.html b/datum/tgs_revision_information/test_merge.html
new file mode 100644
index 00000000000..1235ae99887
--- /dev/null
+++ b/datum/tgs_revision_information/test_merge.html
@@ -0,0 +1 @@
+/datum/tgs_revision_information/test_merge - Space Station 13Space Station 13 - Modules - Types — Var Details
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.
\ No newline at end of file
diff --git a/datum/tgs_version.html b/datum/tgs_version.html
new file mode 100644
index 00000000000..bec38154163
--- /dev/null
+++ b/datum/tgs_version.html
@@ -0,0 +1 @@
+/datum/tgs_version - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/tgui.html b/datum/tgui.html
new file mode 100644
index 00000000000..f6e34f0cc1e
--- /dev/null
+++ b/datum/tgui.html
@@ -0,0 +1,32 @@
+/datum/tgui - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
tgui
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
Topic state used to determine status/interactability.
status
The status/visibility of the UI.
title
The title of te 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_message
private
+
Callback for handling incoming tgui messages.
open
public
+
Open this UI (and initialize it with data).
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
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_state
public
+
Replace current ui.state with a new one.
+
required state datum/ui_state/state Next state
\ No newline at end of file
diff --git a/datum/tgui_alert.html b/datum/tgui_alert.html
new file mode 100644
index 00000000000..a69ba710508
--- /dev/null
+++ b/datum/tgui_alert.html
@@ -0,0 +1,4 @@
+/datum/tgui_alert - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
tgui_alert
Datum used for instantiating and using a TGUI-controlled modal that prompts the user with
+a message and has buttons for responses.
Waits for a user's response to the tgui_alert'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_alert was closed by the user.
deletion_timer
The attached timer that handles this objects timeout deletion
message
The textual body of the TGUI window
start_time
The time at which the tgui_alert 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_alert, 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_alert's prompt before returning. Returns early if
+the window was closed by the user.
\ No newline at end of file
diff --git a/datum/tgui_bug_report_form.html b/datum/tgui_bug_report_form.html
new file mode 100644
index 00000000000..57c6d1d299a
--- /dev/null
+++ b/datum/tgui_bug_report_form.html
@@ -0,0 +1 @@
+/datum/tgui_bug_report_form - Space Station 13Space Station 13 - Modules - Types — Var Details
client of the admin/dev who is accessing the report, we don't want multiple people unknowingly making changes at the same time.
awaiting_approval
value to determine if the bug report is submitted and awaiting admin/dev approval, used for state purposes in tgui.
bug_report_data
contains all the body text for the bug report.
file_time
time the report was filed
handled
Whether the report has been handled
initial_key
ckey of the author
initial_user_uid
client of the bug report author, needed to create the ticket
row_index
Index of the report in the db
selected_confirm
for garbage collection purposes.
\ No newline at end of file
diff --git a/datum/tgui_input_color.html b/datum/tgui_input_color.html
new file mode 100644
index 00000000000..033168f1e40
--- /dev/null
+++ b/datum/tgui_input_color.html
@@ -0,0 +1,4 @@
+/datum/tgui_input_color - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
tgui_input_color
tgui_input_color
+
Datum used for instantiating and using a TGUI-controlled color picker.
Waits for a user's response to the tgui_input_color'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
choice
The color the user selected, null if no selection has been made
closed
Boolean field describing if the tgui_input_color was closed by the user.
default
The default choice, used if there is an existing value
deletion_timer
The attached timer that handles this objects timeout deletion
message
The message to show the user
start_time
The time at which the tgui_input_color 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_input_color, 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_input_color's prompt before returning. Returns early if
+the window was closed by the user.
\ No newline at end of file
diff --git a/datum/tgui_input_keycombo.html b/datum/tgui_input_keycombo.html
new file mode 100644
index 00000000000..fc0ea5b8dde
--- /dev/null
+++ b/datum/tgui_input_keycombo.html
@@ -0,0 +1,4 @@
+/datum/tgui_input_keycombo - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
tgui_input_keycombo
Datum used for instantiating and using a TGUI-controlled key input that prompts the user with
+a message and listens for key presses.
Waits for a user's response to the tgui_input_keycombo'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.
deletion_timer
The attached timer that handles this objects timeout deletion
entry
The entry that the user has return_typed in.
message
The prompt's body, if any, of the TGUI window.
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
wait
Waits for a user's response to the tgui_input_keycombo's prompt before returning. Returns early if
+the window was closed by the user.
\ No newline at end of file
diff --git a/datum/tgui_input_number.html b/datum/tgui_input_number.html
new file mode 100644
index 00000000000..d47746a9e21
--- /dev/null
+++ b/datum/tgui_input_number.html
@@ -0,0 +1,4 @@
+/datum/tgui_input_number - Space Station 13Space Station 13 - 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.
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.
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.
deletion_timer
The attached timer that handles this objects timeout deletion
entry
The entry that the user has return_typed in.
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.
round_value
Whether the submitted number is rounded down into an integer.
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
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.
\ No newline at end of file
diff --git a/datum/tgui_input_text.html b/datum/tgui_input_text.html
new file mode 100644
index 00000000000..c18bf6c14e0
--- /dev/null
+++ b/datum/tgui_input_text.html
@@ -0,0 +1,11 @@
+/datum/tgui_input_text - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
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.
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.
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.
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.
deletion_timer
The attached timer that handles this objects timeout deletion
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
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.
\ No newline at end of file
diff --git a/datum/tgui_list_input.html b/datum/tgui_list_input.html
new file mode 100644
index 00000000000..775e063cad1
--- /dev/null
+++ b/datum/tgui_list_input.html
@@ -0,0 +1,4 @@
+/datum/tgui_list_input - Space Station 13Space Station 13 - 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
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.
Var Details
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
deletion_timer
The attached timer that handles this objects timeout deletion
invalid
Whether the tgui list input is invalid or not (i.e. due to all list entries being null)
items
The list of items (responses) provided on the TGUI window
items_map
Buttons (strings specifically) mapped to the actual value (e.g. a mob or a verb)
message
The textual body of the TGUI window
modal_type
The TGUI modal to use for this popup
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
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.
\ No newline at end of file
diff --git a/datum/tgui_panel.html b/datum/tgui_panel.html
new file mode 100644
index 00000000000..7b201d456bd
--- /dev/null
+++ b/datum/tgui_panel.html
@@ -0,0 +1,22 @@
+/datum/tgui_panel - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
tgui_panel
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
+
tgui_panel datum
+Hosts tgchat and other nice features.
Each client notifies on protected playback, so this prevents spamming admins.
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:
+
+
pitch: the playback rate
+
start: the start time of the sound
+
end: when the musics stops playing
+
+
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.
\ No newline at end of file
diff --git a/datum/tgui_say.html b/datum/tgui_say.html
new file mode 100644
index 00000000000..08ba3a80de6
--- /dev/null
+++ b/datum/tgui_say.html
@@ -0,0 +1,34 @@
+/datum/tgui_say - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
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.
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.
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).
Callback 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
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.
close
Closes the window serverside. Closes any open chat bubbles
+regardless of preference.
delegate_speech
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
handle_entry
Handles text entry and forced speech.
+
Arguments:
+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).
+
Arguments:
+payload - A list containing the channel the window was opened in.
start_thinking
Sets the mob as "thinking" - with indicator
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.
\ No newline at end of file
diff --git a/datum/tgui_window.html b/datum/tgui_window.html
new file mode 100644
index 00000000000..71dfff3c6ea
--- /dev/null
+++ b/datum/tgui_window.html
@@ -0,0 +1,46 @@
+/datum/tgui_window - Space Station 13Space Station 13 - Modules - Types — Proc Details
tgui_window
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
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.
\ No newline at end of file
diff --git a/datum/theft_objective.html b/datum/theft_objective.html
new file mode 100644
index 00000000000..5993e9ca349
--- /dev/null
+++ b/datum/theft_objective.html
@@ -0,0 +1 @@
+/datum/theft_objective - Space Station 13Space Station 13 - Modules - Types — Var Details
Do we have a special item we give to somewhen when they get this objective?
Var Details
extra_information
Any extra information about the objective
job_possession
If a steal objective has forbidden jobs, and the forbidden jobs would not be in the possession of this item, set this to false
objective_name_overide
Do we overide naming to not say steal at the front?
special_equipment
Do we have a special item we give to somewhen when they get this objective?
\ No newline at end of file
diff --git a/datum/thrownthing.html b/datum/thrownthing.html
new file mode 100644
index 00000000000..722c484aeca
--- /dev/null
+++ b/datum/thrownthing.html
@@ -0,0 +1 @@
+/datum/thrownthing - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Will thrownthing datum actually block movement? this might be FALSE with some circumstances even if var/should_block_movement is TRUE. This variable change automatically during the throw
When this variable is false, non dense mobs will be hit by a thrown item. useful for things that you dont want to be cheesed by crawling, EG. gravitational anomalies
Defines the datum behavior on the thrownthing's qdeletion event.
Var Details
block_movement
Will thrownthing datum actually block movement? this might be FALSE with some circumstances even if var/should_block_movement is TRUE. This variable change automatically during the throw
callback
If a thrown thing has a callback, it can be invoked here within thrownthing.
delayed_time
How long an object has been paused for, to be added to the travel time.
diagonal_error
How many tiles that need to be moved in order to travel to the target.
diagonals_first
A variable that helps in describing objects thrown at an angle, if it should be moved diagonally first or last.
dist_travelled
Tracks how far a thrownthing has traveled mid-throw for the purposes of maxrange
dist_x
Distance to travel in the X axis/direction.
dist_y
Distance to travel in the y axis/direction.
dodgeable
When this variable is false, non dense mobs will be hit by a thrown item. useful for things that you dont want to be cheesed by crawling, EG. gravitational anomalies
dx
The Horizontal direction we're traveling (EAST or WEST)
dy
The VERTICAL direction we're traveling (NORTH or SOUTH)
force
The movement force provided to a given object in transit. More info on these in move_force.dm
init_dir
The initial direction of the thrower of the thrownthing for building the trajectory of the throw.
initial_target_uid
UID of the original intended target of the throw, to prevent hardDels
last_move
The last world.time value stored when the thrownthing was moving.
maxrange
The maximum number of turfs that the thrownthing will travel to reach it's target.
paused
Mainly exists for things that would freeze a thrown object in place, like a timestop'd tile. Or a Tractor Beam.
pure_diagonal
Set to TRUE if the throw is exclusively diagonal (45 Degree angle throws for example)
should_block_movement
Can a thrown mob move themselves to stop the throw?
speed
Turfs to travel per tick
start_time
The start_time obtained via world.time for the purposes of tiles moved/tick.
starting_turf
The turf that we were thrown from.
target_turf
The turf that the target was on, if it's not a turf itself.
target_zone
If the target happens to be a carbon and that carbon has a body zone aimed at, this is carried on here.
thrower_uid
If a mob is the one who has thrown the object, then its UID is stored here. This can be null and must be null checked before trying to use it.
thrownthing
Thrown atom this datum is attached to
Proc Details
get_thrower
Returns the mob thrower, or null
on_thrownthing_qdel
Defines the datum behavior on the thrownthing's qdeletion event.
\ No newline at end of file
diff --git a/datum/ticket.html b/datum/ticket.html
new file mode 100644
index 00000000000..83f191b50d7
--- /dev/null
+++ b/datum/ticket.html
@@ -0,0 +1 @@
+/datum/ticket - Space Station 13Space Station 13 - Modules - Types — Var Details
The first raw response. Used for ticket conversions
ingame_time_opened
Ingame time the ticket was opened
lastResponseTime
When the staff last responded.
lastStaffResponse
Last staff member who responded.
locationSent
The location the player was when they sent the ticket.
mobControlled
The mob the player was controlling when they sent the ticket.
real_time_opened
Real time the ticket was opened.
staffAssigned
Staff member who has assigned themselves to this ticket.
staff_ckey
Staff member ckey who took it
staff_take_time
The time the staff member took the ticket
ticketCooldown
Cooldown before allowing the user to open another ticket.
ticketNum
Ticket number.
ticketState
State of the ticket, open, closed, resolved etc.
ticket_converted
Has the ticket been converted to another type? (Mhelp to Ahelp, etc.)
ticket_responses
Content of the staff help.
timeUntilStale
When the ticket goes stale.
title
The initial message from the user.
\ No newline at end of file
diff --git a/datum/ticket_response.html b/datum/ticket_response.html
new file mode 100644
index 00000000000..ff77570c5ff
--- /dev/null
+++ b/datum/ticket_response.html
@@ -0,0 +1 @@
+/datum/ticket_response - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/tilt_crit.html b/datum/tilt_crit.html
new file mode 100644
index 00000000000..6b637d4ba89
--- /dev/null
+++ b/datum/tilt_crit.html
@@ -0,0 +1,9 @@
+/datum/tilt_crit - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Perform the tip crit effect on a victim.
+Arguments:
Var Details
fall_towards_mob
If we should be thrown against the mob or not.
harmless
If it'll deal damage or not
name
Name of a crit. Only crits with a name will be options.
valid_typecache
Typecache of valid types
valid_types_whitelist
List of types which we should be valid for
Proc Details
is_valid
Return whether or not the crit selected is valid.
tip_crit_effect
Perform the tip crit effect on a victim.
+Arguments:
+
+
machine - The machine that was tipped over
+
user - The unfortunate victim upon whom it was tipped over
+
incoming_damage - The amount of damage that was already being dealt to the victim
+Returns: The "crit rebate", or the amount of damage to subtract from the original amount of damage dealt, to soften the blow.
+
\ No newline at end of file
diff --git a/datum/timedevent.html b/datum/timedevent.html
new file mode 100644
index 00000000000..ab18b704cb9
--- /dev/null
+++ b/datum/timedevent.html
@@ -0,0 +1,9 @@
+/datum/timedevent - Space Station 13Space Station 13 - 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
Returns 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
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.
getTimerInfo
Returns debug information about timer
getcallingtype
Returns a string of the type of the callback for this timer
\ No newline at end of file
diff --git a/datum/traders.html b/datum/traders.html
new file mode 100644
index 00000000000..6d665ed1efb
--- /dev/null
+++ b/datum/traders.html
@@ -0,0 +1 @@
+/datum/traders - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/transaction.html b/datum/transaction.html
new file mode 100644
index 00000000000..477bcbe75cd
--- /dev/null
+++ b/datum/transaction.html
@@ -0,0 +1 @@
+/datum/transaction - Space Station 13Space Station 13 - Modules - Types — Var Details
the account this log is attached to, used for money db level logging
amount
If money is utilized/changed during this transaction, how much
is_deposit
Whether or not this added or money from the account
purpose
What this transaction is doing
time
when the transaction occurred
transactor
Who performed the action
\ No newline at end of file
diff --git a/datum/transfer_request.html b/datum/transfer_request.html
new file mode 100644
index 00000000000..1e4b0293bbb
--- /dev/null
+++ b/datum/transfer_request.html
@@ -0,0 +1 @@
+/datum/transfer_request - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/turf_reservation.html b/datum/turf_reservation.html
new file mode 100644
index 00000000000..52406ed2331
--- /dev/null
+++ b/datum/turf_reservation.html
@@ -0,0 +1,7 @@
+/datum/turf_reservation - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The z-level traits required by the turf reservation. Modify only if
+you are absolutely certain pre-existing reservation types do not support
+your use-case, as an entirely new z-level will be reserved if this list
+of traits is unique.
Actually generates the cordon around the reservation, and marking the cordon turfs as reserved
Var Details
bottom_left_turf
Bottom left turf of the reservation
cordon_turfs
Turfs around the reservation for cordoning
height
The height of the reservation
pre_cordon_turfs
Area of turfs next to the cordon to fill with pre_cordon_area's
required_traits
The z-level traits required by the turf reservation. Modify only if
+you are absolutely certain pre-existing reservation types do not support
+your use-case, as an entirely new z-level will be reserved if this list
+of traits is unique.
reserved_turfs
All turfs that we've reserved
top_right_turf
Top right turf of the reservation
turf_type
The turf type the reservation is initially made with
width
The width of the reservation
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
generate_cordon
Actually generates the cordon around the reservation, and marking the cordon turfs as reserved
\ No newline at end of file
diff --git a/datum/ui_modal.html b/datum/ui_modal.html
new file mode 100644
index 00000000000..0325293234c
--- /dev/null
+++ b/datum/ui_modal.html
@@ -0,0 +1,9 @@
+/datum/ui_modal - Space Station 13Space Station 13 - Modules - Types — Proc Details
ui_modal
Modal datum (contains base information for a modal)
Creates a list that describes a modal visually to be passed to JS
Proc Details
on_answer
Called when a modal receives an answer
+
Arguments:
+
+
answer - The answer, a nullable text
+
preprocess_answer
Called when it's time to pre-process the answer before using it
+
Arguments:
+
+
answer - The answer, a nullable text
+
to_data
Creates a list that describes a modal visually to be passed to JS
\ No newline at end of file
diff --git a/datum/ui_modal/input/bento.html b/datum/ui_modal/input/bento.html
new file mode 100644
index 00000000000..20cfd22a573
--- /dev/null
+++ b/datum/ui_modal/input/bento.html
@@ -0,0 +1,2 @@
+/datum/ui_modal/input/bento - Space Station 13Space Station 13 - Modules - Types
bento
Bento modal - Similar to choice, it displays the choices in a grid of images
+
The returned answer is the index of the choice.
\ No newline at end of file
diff --git a/datum/ui_module/colour_matrix_tester.html b/datum/ui_module/colour_matrix_tester.html
new file mode 100644
index 00000000000..07ebe7ab245
--- /dev/null
+++ b/datum/ui_module/colour_matrix_tester.html
@@ -0,0 +1 @@
+/datum/ui_module/colour_matrix_tester - Space Station 13Space Station 13 - Modules - Types — Var Details
The datum we are modifying. This will almost always be an atom, but clients have colours too
Var Details
target_datum
The datum we are modifying. This will almost always be an atom, but clients have colours too
\ No newline at end of file
diff --git a/datum/ui_module/crew_monitor.html b/datum/ui_module/crew_monitor.html
new file mode 100644
index 00000000000..13ed8cd464c
--- /dev/null
+++ b/datum/ui_module/crew_monitor.html
@@ -0,0 +1,5 @@
+/datum/ui_module/crew_monitor - Space Station 13Space Station 13 - Modules - Types — Var Details
A list of displayed names. Displayed names were intentionally chosen over ckeys,
+refs, or uids, because exposing any of the aforementioned to the client could allow
+an exploit to detect changelings on sensors.
A list of displayed names. Displayed names were intentionally chosen over ckeys,
+refs, or uids, because exposing any of the aforementioned to the client could allow
+an exploit to detect changelings on sensors.
ignore_sensors
If true, we'll see everyone, regardless of their suit sensors.
offset_x
The X offset of the UI map
offset_y
The Y offset of the UI map
tab_index
The ID of the currently opened UI tab
zoom
The zoom level of the UI map view
\ No newline at end of file
diff --git a/datum/ui_module/emojipedia.html b/datum/ui_module/emojipedia.html
new file mode 100644
index 00000000000..9e0ad558401
--- /dev/null
+++ b/datum/ui_module/emojipedia.html
@@ -0,0 +1 @@
+/datum/ui_module/emojipedia - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/ui_module/ert_manager.html b/datum/ui_module/ert_manager.html
new file mode 100644
index 00000000000..e43b4d0c22d
--- /dev/null
+++ b/datum/ui_module/ert_manager.html
@@ -0,0 +1 @@
+/datum/ui_module/ert_manager - Space Station 13Space Station 13 - Modules - Types — Var Details
The below is a toggle for if sec cyborgs are enabled or not
Var Details
cyborg_security
The below is a toggle for if sec cyborgs are enabled or not
\ No newline at end of file
diff --git a/datum/ui_module/ghost_hud_panel.html b/datum/ui_module/ghost_hud_panel.html
new file mode 100644
index 00000000000..93674327be2
--- /dev/null
+++ b/datum/ui_module/ghost_hud_panel.html
@@ -0,0 +1 @@
+/datum/ui_module/ghost_hud_panel - Space Station 13Space Station 13 - Modules - Types — Var Details
Ghost HUD panel
Allows ghosts to view a TGUI window which contains toggles for all HUD types available to them.
Associative list to get the appropriate hud type based on the string passed from TGUI.
Var Details
hud_type_lookup
Associative list to get the appropriate hud type based on the string passed from TGUI.
\ No newline at end of file
diff --git a/datum/ui_module/library_manager.html b/datum/ui_module/library_manager.html
new file mode 100644
index 00000000000..7495a71f7de
--- /dev/null
+++ b/datum/ui_module/library_manager.html
@@ -0,0 +1 @@
+/datum/ui_module/library_manager - Space Station 13Space Station 13 - Modules - Types — Var Details
browserui helper variable for turning pages in book
Var Details
cached_books
Where we will store our cachedbook datums
page_state
TGUI page we are currently on
reports
list of assoc lists detailing each invidual reports, can contain multiple reports for same book
selected_ckey
Ckey's books we are viewing
view_book
information for the book we are opening in browserui
view_book_page
browserui helper variable for turning pages in book
\ No newline at end of file
diff --git a/datum/ui_module/robot_self_diagnosis.html b/datum/ui_module/robot_self_diagnosis.html
new file mode 100644
index 00000000000..ff733337dd4
--- /dev/null
+++ b/datum/ui_module/robot_self_diagnosis.html
@@ -0,0 +1 @@
+/datum/ui_module/robot_self_diagnosis - Space Station 13Space Station 13 - Modules - Types — Var Details
The robot who can use this UI to diagnose themselves.
Var Details
owner
The robot who can use this UI to diagnose themselves.
\ No newline at end of file
diff --git a/datum/ui_state.html b/datum/ui_state.html
new file mode 100644
index 00000000000..472b00ba049
--- /dev/null
+++ b/datum/ui_state.html
@@ -0,0 +1,6 @@
+/datum/ui_state - Space Station 13Space Station 13 - Modules - Types — Proc Details
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.
\ No newline at end of file
diff --git a/datum/uplink_item.html b/datum/uplink_item.html
new file mode 100644
index 00000000000..6bbd75ab36d
--- /dev/null
+++ b/datum/uplink_item.html
@@ -0,0 +1 @@
+/datum/uplink_item - Space Station 13Space Station 13 - Modules - Types — Var Details
Our special little snowflakes that have to be spawned in a different way than normal, like a surplus crate spawning a crate or contractor kits
Var Details
abstract
Is what we're spawning abstract?
can_discount
Can this be sold at a discount?
category
What category is the item listed under
cost
How many TC does this cost?
desc
Description of the item in the uplink
excludefrom
Empty list does nothing. Place the name of uplink type you don't want this item to be available in here.
hijack_only
Can this item be purchased only during hijackings or nukings? Hijack-only items are by default unable to be on sale.
item
What is spawned when we purchase this?
job
Is this job locked?
limited_stock
Can you only buy so many? -1 allows for infinite purchases
name
Name of the item in the uplink
reference
Used for discounts. Any unique string will do.
refund_amount
specified refund amount in case there needs to be a TC penalty for refunds.
refund_path
Alternative path for refunds, in case the item purchased isn't what is actually refunded (ie: holoparasites).
refundable
Can you refund this in the uplink?
species
This makes an item on the uplink only show up to the specified species
surplus
Chance of being included in the surplus crate (when pick() selects it)
uplinktypes
Empty list means it is in all the uplink types. Otherwise place the uplink type here.
uses_special_spawn
Our special little snowflakes that have to be spawned in a different way than normal, like a surplus crate spawning a crate or contractor kits
\ No newline at end of file
diff --git a/datum/uplink_item/species_restricted/prescan.html b/datum/uplink_item/species_restricted/prescan.html
new file mode 100644
index 00000000000..b14d9ac8983
--- /dev/null
+++ b/datum/uplink_item/species_restricted/prescan.html
@@ -0,0 +1 @@
+/datum/uplink_item/species_restricted/prescan - Space Station 13Space Station 13 - Modules - Types — Var Details
A fresh start, but a start with nothing. Hard to use as well
Var Details
species
A fresh start, but a start with nothing. Hard to use as well
\ No newline at end of file
diff --git a/datum/user_verb.html b/datum/user_verb.html
new file mode 100644
index 00000000000..125b129f093
--- /dev/null
+++ b/datum/user_verb.html
@@ -0,0 +1,3 @@
+/datum/user_verb - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
user_verb
This is the user verb datum. It is used to store the verb's information and handle the verb's functionality.
+All of this is setup for you, and you should not be defining this manually.
+That means you reader.
\ No newline at end of file
diff --git a/datum/user_verb/timer_log.html b/datum/user_verb/timer_log.html
new file mode 100644
index 00000000000..1fe200302d7
--- /dev/null
+++ b/datum/user_verb/timer_log.html
@@ -0,0 +1,2 @@
+/datum/user_verb/timer_log - Space Station 13Space Station 13 - Modules - Types
timer_log
Opens a log of timers
+
In-round ability to view what has created a timer, and how many times a timer for that path has been created
\ No newline at end of file
diff --git a/datum/user_verb/uid_log.html b/datum/user_verb/uid_log.html
new file mode 100644
index 00000000000..50073237de0
--- /dev/null
+++ b/datum/user_verb/uid_log.html
@@ -0,0 +1,2 @@
+/datum/user_verb/uid_log - Space Station 13Space Station 13 - Modules - Types
uid_log
Opens a log of UIDs
+
In-round ability to view what has created a UID, and how many times a UID for that path has been declared
\ No newline at end of file
diff --git a/datum/vampire_subclass.html b/datum/vampire_subclass.html
new file mode 100644
index 00000000000..57832e9d841
--- /dev/null
+++ b/datum/vampire_subclass.html
@@ -0,0 +1 @@
+/datum/vampire_subclass - Space Station 13Space Station 13 - Modules - Types — Var Details
If true, lets the vampire have access to their full power abilities without meeting the blood requirement, or needing a certain number of drained humans.
If true, lets the vampire have access to their full power abilities without meeting the blood requirement, or needing a certain number of drained humans.
fully_powered_abilities
A list of the powers a vampire unlocks when it reaches full power.
improved_rejuv_healing
Whether or not a vampire heals more based on damage taken.
name
The subclass' name. Used for blackbox logging.
standard_powers
A list of powers that a vampire unlocks. The value of the list entry is equal to the blood total required for the vampire to unlock it.
thrall_cap
maximun number of thralls a vampire may have at a time. incremented as they grow stronger, up to a cap at full power.
unique_objectives
The subclass' potential unique objectives.
\ No newline at end of file
diff --git a/datum/ventcrawl_node.html b/datum/ventcrawl_node.html
new file mode 100644
index 00000000000..bd7e12b5068
--- /dev/null
+++ b/datum/ventcrawl_node.html
@@ -0,0 +1 @@
+/datum/ventcrawl_node - Space Station 13Space Station 13 - Modules - Types — Var Details
The A* node weight (f_value = number_of_tiles + heuristic)
number_tiles
How many steps it's taken to get here from the start
previous_node
The node we just came from
\ No newline at end of file
diff --git a/datum/virology_goal.html b/datum/virology_goal.html
new file mode 100644
index 00000000000..f983c53d322
--- /dev/null
+++ b/datum/virology_goal.html
@@ -0,0 +1 @@
+/datum/virology_goal - Space Station 13Space Station 13 - Modules - Types — Var Details
The amount of units of the required virus that must be delivered for the completion of this goal
Var Details
delivered_amount
The amount of units currently already delivered
delivery_goal
The amount of units of the required virus that must be delivered for the completion of this goal
\ No newline at end of file
diff --git a/datum/voice_of_god_command.html b/datum/voice_of_god_command.html
new file mode 100644
index 00000000000..b1a36f6589b
--- /dev/null
+++ b/datum/voice_of_god_command.html
@@ -0,0 +1 @@
+/datum/voice_of_god_command - Space Station 13Space Station 13 - Modules - Types — Var Details
voice_of_god_command
Voice of god command datums that are used in [/proc/voice_of_god()]
cooldown variable which is normally returned to [proc/voice_of_god] and used as its return value.
is_regex
Is the trigger supposed to be a regex? If so, convert it to such on New()
trigger
a text string or regex that triggers the command.
\ No newline at end of file
diff --git a/datum/voice_of_god_command/emote.html b/datum/voice_of_god_command/emote.html
new file mode 100644
index 00000000000..d647b19b6f2
--- /dev/null
+++ b/datum/voice_of_god_command/emote.html
@@ -0,0 +1 @@
+/datum/voice_of_god_command/emote - Space Station 13Space Station 13 - Modules - Types — Var Details
emote
Supertype of all those commands that make people emote and nothing else. Fuck copypasta.
\ No newline at end of file
diff --git a/datum/vote.html b/datum/vote.html
new file mode 100644
index 00000000000..b70f7db401b
--- /dev/null
+++ b/datum/vote.html
@@ -0,0 +1 @@
+/datum/vote - Space Station 13Space Station 13 - Modules - Types — Var Details
Vote result type. This determines how a winner is picked
vote_type_text
Vote type text, for showing in UIs and stuff
\ No newline at end of file
diff --git a/datum/weather.html b/datum/weather.html
new file mode 100644
index 00000000000..6361799451b
--- /dev/null
+++ b/datum/weather.html
@@ -0,0 +1 @@
+/datum/weather - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/datum/weather/ash_storm.html b/datum/weather/ash_storm.html
new file mode 100644
index 00000000000..87a506e880c
--- /dev/null
+++ b/datum/weather/ash_storm.html
@@ -0,0 +1 @@
+/datum/weather/ash_storm - Space Station 13Space Station 13 - Modules - Types — Var Details
Amount of thermal protection we need to be protected from this storm
Var Details
burn_damage
Amount of burn damage we receive if we aren't immune
thermal_protection_threshold
Amount of thermal protection we need to be protected from this storm
\ No newline at end of file
diff --git a/datum/weather/solar_flare.html b/datum/weather/solar_flare.html
new file mode 100644
index 00000000000..f609c8487e5
--- /dev/null
+++ b/datum/weather/solar_flare.html
@@ -0,0 +1 @@
+/datum/weather/solar_flare - Space Station 13Space Station 13 - Modules - Types — Var Details
Areas which are "semi-protected". Mobs inside these areas take reduced burn damage from the solar flare.
Var Details
semi_protected_areas
Areas which are "semi-protected". Mobs inside these areas take reduced burn damage from the solar flare.
\ No newline at end of file
diff --git a/datum/wires.html b/datum/wires.html
new file mode 100644
index 00000000000..24ded5f40a8
--- /dev/null
+++ b/datum/wires.html
@@ -0,0 +1,97 @@
+/datum/wires - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The display name for the TGUI window. For example, given the var is "APC"...
+When the TGUI window is opened, "wires" will be appended to it's title, and it would become "APC wires".
Get the name of the wire passed in.
+If wires can't be read, may either return something scrambled or nothing at all.
+A null return here means that there should be no name displayed at all.
Users will be interacting with our holder object and not the wire datum directly, therefore we need to return the holder.
Var Details
assemblies
An associative list of signalers attached to the wires. The wire color is the key, and the signaler object reference is the value.
colors
An associative list with the wire color as the key, and the wire define as the value.
cut_wires
A list of all cut wires. The same values that can go into wires will get added and removed from this list.
dictionary_key
Key that enables wire assignments to be common across different holders. If null, will use the holder_type as a key.
holder
The atom the wires belong too. For example: an airlock.
holder_type
The holder type; used to make sure that the holder is the correct type.
labelled
TRUE if the wires are labelled for every user
proper_name
The display name for the TGUI window. For example, given the var is "APC"...
+When the TGUI window is opened, "wires" will be appended to it's title, and it would become "APC wires".
randomize
TRUE if the wires will be different every time a new wire datum is created.
wire_count
The total number of wires that our holder atom has.
wires
A list of all wires. For a list of valid wires defines that can go here, see code/__DEFINES/wires.dm
Proc Details
Interact
Proc called when the user attempts to interact with wires UI.
+
Checks if the user exists, is a mob, the wires are attached to something (holder) and makes sure interactable(user) returns TRUE.
+If all the checks succeed, open the TGUI interface for the user.
+
Arugments:
+
+
user - the mob trying to interact with the wires.
+
add_duds
Adds in dud wires, which do nothing when cut/pulsed.
+
Arguments:
+
+
duds - the amount of dud wires to generate.
+
attach_assembly
Proc called when a mob tries to attach a signaler to a wire.
+
Makes sure that S is actually a signaler and that something is not already attached to the wire.
+Adds the signaler to the assemblies list as a value, with the color as a the key.
+
Arguments:
+
+
color - the wire color.
+
S - the signaler that a mob is trying to attach.
+
cut
Cut or mend a wire. Calls on_cut().
+
Arugments:
+
+
wire - a wire define, NOT a color. For example WIRE_ELECTRIFY.
+
cut_all
Cuts all wires.
cut_color
Cut the wire which corresponds with the passed in color.
+
Arugments:
+
+
color - a wire color.
+
cut_random
Cuts a random wire.
cut_random_uncut_wire
Cuts a random uncut wire.
detach_assembly
Proc called when a mob tries to detach a signaler from a wire.
+
First checks if there is a signaler on the wire. If so, removes the signaler, and clears it from assemblies list.
+
Arguments:
+
+
color - the wire color.
+
emp_pulse
Use this proc if you want wires to be pulsed on EMP
get_attached
Gets the signaler attached to the given wire color, if there is one.
+
Arguments:
+
+
color - the wire color.
+
get_status
Base proc, intended to be overwritten. Put wire information you'll see at the botton of the TGUI window here, such as "The red light is blinking".
get_wire
Gets the wire associated with the color passed in.
+
Arugments:
+
+
color - a wire color.
+
get_wire_name
Get the name of the wire passed in.
+If wires can't be read, may either return something scrambled or nothing at all.
+A null return here means that there should be no name displayed at all.
+
Arguments:
+
+
wire - a wire define.
+
interactable
Base proc, intended to be overriden. Wire datum specific checks you want to run before the TGUI is shown to the user should go here.
is_all_cut
Determines if all of the wires are cut. Returns TRUE they're all cut, FALSE otherwise.
is_attached
Checks if the given wire has a signaler on it.
+
Arguments:
+
+
color - the wire color.
+
is_color_cut
Determines if the wire associated with the passed in color, is cut or not. Returns TRUE if it's cut, FALSE otherwise.
+
Arugments:
+
+
wire - a wire color.
+
is_cut
Determines if the passed in wire is cut or not. Returns TRUE if it's cut, FALSE otherwise.
+
Arugments:
+
+
wire - a wire define, NOT a color. For example WIRE_ELECTRIFY.
+
is_dud
Determines if the passed in wire is a dud or not. Returns TRUE if the wire is a dud, FALSE otherwise.
+
Arugments:
+
+
wire - a wire define, NOT a color. For example WIRE_ELECTRIFY.
+
is_dud_color
Returns TRUE if the wire that corresponds to the passed in color is a dud. FALSE otherwise.
+
Arugments:
+
+
color - a wire color.
+
on_cut
Proc called when any wire is cut.
+
Base proc, intended to be overriden.
+Place an behavior you want to happen when certain wires are cut, into this proc.
+
Arugments:
+
+
wire - a wire define, NOT color. For example 'WIRE_ELECTRIFY'.
+
mend - TRUE if we're mending the wire. FALSE if we're cutting.
+
on_pulse
Proc called when any wire is pulsed.
+
Base proc, intended to be overriden.
+Place behavior you want to happen when certain wires are pulsed, into this proc.
+
Arugments:
+
+
wire - a wire define, NOT color. For example 'WIRE_ELECTRIFY'.
+
pulse
Pulses the given wire. Calls on_pulse().
+
Arugments:
+
+
wire - a wire define, NOT a color. For example WIRE_ELECTRIFY.
+
pulse_assembly
Proc called when an attached signaler receives a signal.
+
Searches through the assemblies list for the wire that the signaler is attached to. Pulses the wire when it's found.
+
Arugments:
+
+
S - the attached signaler receiving the signal.
+
pulse_color
Pulses the wire associated with the given color.
+
Arugments:
+
+
wire - a wire color.
+
randomize
Randomly generates a new set of wires. and corresponding colors from the given pool. Assigns the information as an associative list, to colors.
+
In the colors list, the name of the color is the key, and the wire is the value.
+For example: colors["red"] = WIRE_ELECTRIFY. This will look like list("red" = WIRE_ELECTRIFY) internally.
repair
Repairs all cut wires.
shuffle_wires
Clears the colors list, and randomizes it to a new set of color-to-wire relations.
ui_host
Users will be interacting with our holder object and not the wire datum directly, therefore we need to return the holder.
\ No newline at end of file
diff --git a/datum/world_topic_handler.html b/datum/world_topic_handler.html
new file mode 100644
index 00000000000..66fe9556384
--- /dev/null
+++ b/datum/world_topic_handler.html
@@ -0,0 +1,13 @@
+/datum/world_topic_handler - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Set this to TRUE if the topic handler needs an authorised comms key
topic_key
Key which invokes this topic
Proc Details
execute
Actually executes the user's topic
+
Override this to do your work in subtypes of this topic
+
Arguments:
+
+
input - The list of topic data, sent from [/world/proc/Topic]
+
key_valid - Has the user entered the correct auth key
+
invoke
Invokes the world/Topic handler
+
This includes sanity checking for if the key is required, as well as other sanity checks
+DO NOT OVERRIDE
+Arguments:
+
+
input - The list of topic data, sent from [/world/proc/Topic]
+
\ No newline at end of file
diff --git a/datum/world_topic_spam_prevention_handler.html b/datum/world_topic_spam_prevention_handler.html
new file mode 100644
index 00000000000..273a80ea2b3
--- /dev/null
+++ b/datum/world_topic_spam_prevention_handler.html
@@ -0,0 +1,3 @@
+/datum/world_topic_spam_prevention_handler - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Amount of strikes. [WORLD_TOPIC_STRIKES_THRESHOLD] strikes is a lockout of [WORLD_TOPIC_LOCKOUT_TIME]
unlock_time
Unlock time
Proc Details
check_lockout
Lockout handler
+
Updates strikes and timers of the most recent client to topic the server
+including any relevant detail
\ No newline at end of file
diff --git a/datum/wound.html b/datum/wound.html
new file mode 100644
index 00000000000..26215761242
--- /dev/null
+++ b/datum/wound.html
@@ -0,0 +1 @@
+/datum/wound - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The cure wounds proc. Just deletes the wound by default, but can be used to apply additional effects upon cure
do_effect
A proc that will do an effect from the wound
\ No newline at end of file
diff --git a/datum/wound/cirrhosis.html b/datum/wound/cirrhosis.html
new file mode 100644
index 00000000000..4587fe57c20
--- /dev/null
+++ b/datum/wound/cirrhosis.html
@@ -0,0 +1 @@
+/datum/wound/cirrhosis - Space Station 13Space Station 13 - Modules - Types — Var Details
Cirrhosis has two "gamefied" stages, mild and severe
Var Details
stage
Cirrhosis has two "gamefied" stages, mild and severe
\ No newline at end of file
diff --git a/datum/xenobiology_surgery_container.html b/datum/xenobiology_surgery_container.html
new file mode 100644
index 00000000000..ee32bf81c7d
--- /dev/null
+++ b/datum/xenobiology_surgery_container.html
@@ -0,0 +1 @@
+/datum/xenobiology_surgery_container - Space Station 13Space Station 13 - Modules - Types — Var Details
Contains the results for any specialized organs this creature should have
Var Details
custom_organ_states
Does this organ have custom icon states it should be choosing from
dissection_failure_text
Contains specialty text for dissection step failures
dissection_success_text
Contains specialty text for dissection success steps
dissection_text
Contains specialty text for each dissection step.
dissection_tool_step
Contains the list for which paths are needed at each dissection step.
xeno_generic_organs
Holds the list of all generic non-specific organs
xeno_specialized_organs
Contains the results for any specialized organs this creature should have
\ No newline at end of file
diff --git a/datum/zlev_manager.html b/datum/zlev_manager.html
new file mode 100644
index 00000000000..86d17eaa807
--- /dev/null
+++ b/datum/zlev_manager.html
@@ -0,0 +1 @@
+/datum/zlev_manager - Space Station 13Space Station 13 - Modules - Types — Proc Details
SSverb_manager, a subsystem that runs every tick and runs through its entire queue without yielding like SSinput.
+this exists because of how the byond tick works and where user inputted verbs are put within it.
queue a callback for the given verb/verblike proc and any given arguments to the specified verb subsystem, so that they process in the next tick.
+intended to only work with verbs or verblike procs called directly from client input, use as part of TRY_QUEUE_VERB() and co.
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.
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.
takes an input_key, as text, and the list of keys already used, outputting a replacement key in the format of "[input_key] ([number_of_duplicates])" if it finds a duplicate
+use this for lists of things that might have the same name, like mobs or objects, that you plan on giving to a player as input
Produces a mutable appearance glued to the EMISSIVE_PLANE dyed to be the EMISSIVE_COLOR. Order of application matters: Default generated blockers are overlays, and will block its own emissive underlays. If you want an object to be both a blocker, and have their own emissive, it has to be an overlay instead. Grayscale lightmasks are visible in the BYOND right-click and Examine pane, unless they're covered up by another overlay.
Given a list, return a copy where values without defined weights are given weight 1.
+For example, fill_with_ones(list(A, B=2, C)) = list(A=1, B=2, C=1)
+Useful for weighted random choices (loot tables, syllables in languages, etc.)
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
Returns a list of movable atoms that are hearing sensitive in view_radius and line of sight to source
+the majority of the work is passed off to the spatial grid if view_radius > 0
+because view() isnt a raycasting algorithm, this does not hold symmetry to it. something in view might not be hearable with this.
+if you want that use get_hearers_in_view() - however thats significantly more expensive
The exact same as get_hearers_in_view, but not limited by visibility. Does no filtering for traits, line of sight, or any other such criteria.
+Filtering is intended to be done by whatever calls this function.
returns every hearaing movable in view to the turf of source not taking into account lighting
+useful when you need to maintain always being able to hear something if a sound is emitted from it and you can see it (and youre in range).
+otherwise this is just a more expensive version of get_hearers_in_LOS().
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 ""
This is the proc you use whenever you want to have pathfinding more complex than "try stepping towards the thing".
+If no path was found, returns an empty list, which is important for bots like medibots who expect an empty list rather than nothing.
+It will yield until a path is returned, using magic
A special GetAllContents that doesn't search past things with rad insulation
+Components which return COMPONENT_BLOCK_RADIATION prevent further searching into that object's contents. The object itself will get returned still.
+The ignore list makes those objects never return at all
POTENTIALLY cheaper version of get_path_to
+This proc generates a path map for the end atom's turf, which allows us to cheaply do pathing operations "at" it
+Generation is significantly SLOWER then get_path_to, but if many things are/might be pathing at something then it is much faster
+Runs the risk of returning an suboptimal or INVALID PATH if the delay between map creation and use is too long
Converts an icon to base64. Operates by putting the icon in the iconCache savefile,
+exporting it as text, and then parsing the base64 from that.
+(This relies on byond automatically storing icons in savefiles as base64)
Sends a message to the staff able to see admin tickets
+Arguments:
+msg - The message being send
+important - If the message is important. If TRUE it will ignore the CHAT_NO_TICKETLOGS preferences,
+send a sound and flash the window. Defaults to FALSE
Sends a message to the staff able to see mentor tickets
+Arguments:
+msg - The message being send
+important - If the message is important. If TRUE it will ignore the CHAT_NO_TICKETLOGS preferences,
+send a sound and flash the window. Defaults to FALSE
Takes a list in the form (x_offset, y_offset)
+And converts it to a screen loc string
+Accepts an optional view string/size to force the screen_loc around, so it can't go out of scope
Uses funny pass by reference bullshit to take the output created by pathfinding, and insert it into a return list
+We'll be able to use this return list to tell a sleeping proc to continue execution
This filter proc makes a visual effect where the object is split into fragments, with vertical lines cut out of them. It will appear as 2 seperate things are made of the one object that was cut out
Picks multiple unique elements from the suplied list.
+If the given list has a length less than the amount given then it will return a list with an equal amount
Similar to show_radial_menu, but choices is a list of atoms, for which icons will be automatically generated.
+Supports multiple items of the same name, 2 soaps will become soap (1) and soap (2) to the user.
+Otherwise, has the exact same arguments as show_radial_menu
Takes a screen loc string in the format
+"+-left-offset:+-pixel,+-bottom-offset:+-pixel"
+Where the :pixel is optional, and returns
+A list in the format (x_offset, y_offset)
+We require context to get info out of screen locs that contain relative info, so NORTH, SOUTH, etc
Circumvents the message queue and sends the message to the recipient (target) as soon as possible.
+trailing_newline, confidential, and handle_whitespace currently have no effect, please fix this in the future or remove the arguments to lower cache!
Behaves like the orange() proc, but only looks in the outer range of the function (The "peel" of the orange).
+This is useful for things like checking if a mob is in a certain range, but not within a smaller range.
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
SSai_behaviors
The subsystem used to tick /datum/ai_behavior instances.
+Handling the individual actions an AI can take like punching someone in the fucking NUTS
SSai_controllers
The subsystem used to tick /datum/ai_controllers instances. Handling the re-checking of plans.
SSai_movement
The subsystem used to tick /datum/ai_movement instances. Handling the movement of individual AI instances
SSambience
The subsystem used to play ambience to users every now and then, makes them real excited.
SSchat
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
SScleanup
Cleanup Subsystem
+
For now, all it does is periodically clean the supplied global lists of any null values they may contain.
+
Why is this important?
+
Sometimes, these lists can gain nulls due to errors.
+For example, when a dead player trasitions from the dead_mob_list to the alive_mob_list, a null value may get stuck in the dead mob list.
+This can cause issues when other code tries to do things with the values in the list, but are instead met with null values.
+These problems are incredibly hard to track down and fix, so this subsystem is a solution to that.
SSearly_assets
Initializes any assets that need to be loaded ASAP.
SSpathfinder
Queues and manages JPS pathfinding steps
SSpersistent_data
Persistent Data Subsystem
+
Provides a centralised handler for persistent data reading and writing.
+The subsystem does not do any actual spawning itself, as this focuses on objects and mobs
+Should anything that is turf persistence related added in, that can be chucked into this SS
+Its quite a simple subsystem. For now, anyways.
SSspatial_grid
Spatial Grid
+
a gamewide grid of spatial_grid_cell datums, each "covering" SPATIAL_GRID_CELLSIZE ^ 2 turfs.
+each spatial_grid_cell datum stores information about what is inside its covered area, so that searches through that area dont have to literally search
+through all turfs themselves to know what is within it since view() calls are expensive, and so is iterating through stuff you dont want.
+this allows you to only go through lists of what you want very cheaply.
+
you can also register to objects entering and leaving a spatial cell, this allows you to do things like stay idle until a player enters, so you wont
+have to use expensive view() calls or iteratite over the global list of players and call get_dist() on every one. which is fineish for a few things, but is
+k * n operations for k objects iterating through n players.
+
currently this system is only designed for searching for relatively uncommon things, small subsets of /atom/movable.
+dont add stupid shit to the cells please, keep the information that the cells store to things that need to be searched for often
+
The system currently implements two different "classes" of spatial type
The second pattern is more paired down, and supports more wide use.
+Rather then the object and anything the object is in being sensitive, it's limited to just the object itself
+Currently only SPATIAL_GRID_CONTENTS_TYPE_ATMOS uses this pattern. This is because it's far more common, and so worth optimizing
SStgui
tgui subsystem
+
Contains all tgui state and subsystem code.
+
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
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.
SSunplanned_controllers
Handles making mobs perform lightweight "idle" behaviors such as wandering around when they have nothing planned
SSverb_manager
SSverb_manager, a subsystem that runs every tick and runs through its entire queue without yielding like SSinput.
+this exists because of how the byond tick works and where user inputted verbs are put within it.
+
see TICK_ORDER.md for more info on how the byond tick is structured.
+
The way the MC allots its time is via TICK_LIMIT_RUNNING, it simply subtracts the cost of SendMaps (MAPTICK_LAST_INTERNAL_TICK_USAGE)
+plus TICK_BYOND_RESERVE from the tick and uses up to that amount of time (minus the percentage of the tick used by the time it executes subsystems)
+on subsystems running cool things like atmospherics or Life or SSInput or whatever.
+
Without this subsystem, verbs are likely to cause overtime if the MC uses all of the time it has alloted for itself in the tick, and SendMaps
+uses as much as its expected to, and an expensive verb ends up executing that tick. This is because the MC is completely blind to the cost of
+verbs, it can't account for it at all. The only chance for verbs to not cause overtime in a tick where the MC used as much of the tick
+as it alloted itself and where SendMaps costed as much as it was expected to is if the verb(s) take less than TICK_BYOND_RESERVE percent of
+the tick, which isnt much. Not to mention if SendMaps takes more than 30% of the tick and the MC forces itself to take at least 70% of the
+normal tick duration which causes ticks to naturally overrun even in the absence of verbs.
+
With this subsystem, the MC can account for the cost of verbs and thus stop major overruns of ticks. This means that the most important subsystems
+like SSinput can start at the same time they were supposed to, leading to a smoother experience for the player since ticks arent riddled with
+minor hangs over and over again.
SSvis_overlays
SSvis_overlays
+
This subsystem handles visual overlays for objects in the game world.
+
It manages the creation, caching, and removal of visual overlays, allowing for dynamic visual effects
+associated with various atoms. Overlays can be reused if they are not unique, and they are automatically
+cleaned up if they go unused for a specified duration.
Proc Details
GetBestWeapon
Returns either the best weapon from the given choices or null if held weapons are better
HTTPGet
HTTP Get (Powered by rustlibs)
+
This proc should be used as a replacement for /world/proc/Export due to an underlying issue with it.
+See: https://www.byond.com/forum/post/2772166
+The one thing you will need to be aware of is that this no longer wraps the response inside a "file", so anything that relies on a file2text() unwrap will need tweaking.
+RUST HTTP also has better support for HTTPS as well as weird quirks with modern webservers.
+Returns an assoc list that follows the standard /world/proc/Export format (https://secure.byond.com/docs/ref/index.html#/world/proc/Export), with the above exception
+
Arguments:
+
+
url - URL to GET
+
IsEdible
returns if something can be consumed, drink or food
path - The path of the API call. DO NOT USE A LEADING SLASH
+
body - The request body, if applicable
+
RoundDiagBar
Diagnostic HUDs!
_queue_verb
queue a callback for the given verb/verblike proc and any given arguments to the specified verb subsystem, so that they process in the next tick.
+intended to only work with verbs or verblike procs called directly from client input, use as part of TRY_QUEUE_VERB() and co.
+
returns TRUE if the queuing was successful, FALSE otherwise.
add_attack_logs
Creates attack (old and new) logs for the user and defense logs for the target.
+Will message admins depending on the custom_level, user and target.
+
custom_level will determine the log level set. Unless the target is SSD and there is a user doing it
+If custom_level is not set then the log level will be determined using the user and the target.
+
+
Arguments:
+
user - The thing doing it. Can be null
+
target - The target of the attack
+
what_done - What has happened
+
custom_level - The log level override
+
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:
+
+
target - Who the verb is being added to, client or mob typepath
+
verb - typepath to a verb, or a list of verbs, supports lists of lists
+
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:
+
+
callback the callback to call on timer finish
+
wait deciseconds to run the timer for
+
flags flags for this timer, see: code__DEFINES\subsystems.dm
+
announce_merge_conflict_marker
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.
assoc_to_keys
Turns an associative list into a flat list of keys
atmos_scan
Outputs a message to the user describing the target's gasmixes.
+Used in chat-based gas scans.
avoid_assoc_duplicate_keys
takes an input_key, as text, and the list of keys already used, outputting a replacement key in the format of "[input_key] ([number_of_duplicates])" if it finds a duplicate
+use this for lists of things that might have the same name, like mobs or objects, that you plan on giving to a player as input
bang
Creates a flashing effect that blinds and deafens mobs within range
+
Arguments:
+
+
T - The turf to flash
+
A - The flashing atom
+
range - The range in tiles of the flash
+
flash - Whether to flash (blind)
+
bang - Whether to bang (deafen)
+
border_diamond_range_turfs
Returns the list of turfs around the outside of a center based on RANGE_TURFS()
broadcast_message
Message Broadcast Proc
+
This big fat disaster is responsible for sending the message out to all headsets and radios on the station
+It is absolutely disgusting, but used to take about 20 arguments before I slimmed it down to just one
+Arguments:
+
+
tcm - The tcomms message datum
+
byondapi_stack_trace
Exists by default in 516, but needs to be defined for 515 or byondapi-rs doesn't like it.
calculate_projectile_angle_and_pixel_offsets
Calculates the pixel offsets and angle that a projectile should be launched at.
+
Arguments:
+
+
source: The thing that the projectile is being shot from.
+
target: (Optional) The thing that the projectile is being shot at.
+
+
If this is not provided the source atom must be a mob with a client.
+
+
+
modifiers: A list of click parameters used to modify the shot angle.
+
callback_add_trait
Proc wrapper of add_trait. You should only use this for callback. Otherwise, use the macro.
callback_remove_trait
Proc wrapper of remove_trait. You should only use this for callback. Otherwise, use the macro.
check_active_security_force
+
checks the security force on station and returns a list of numbers, of the form:
+
total, active, dead, antag
+
where active is defined as conscious (STAT = 0) and not an antag
+
check_behind
Checks to see if atom/source is behind atom/target
circle_range
Returns all atoms present in a circle around the center
circle_range_turfs
Returns a list of turfs around a center based on RANGE_TURFS()
circle_view
Returns all atoms present in a circle around the center but uses view() instead of range() (Currently not used)
circle_view_turfs
Returns a list of turfs around a center based on view()
client2rankcolour
Proc to generate a "rank colour" from a client
+
This takes the client and looks at various factors in order, such as patreon status, staff rank, and more
+Arguments:
+
+
C - The client were looking up
+
cmp_heretic_knowledge
Orders heretic knowledge by priority
collect_nested_mobs
Recursively loops through the contents of this atom looking for mobs, optionally requiring them to have a client.
compare_list
compare two lists, returns TRUE if they are the same
condense_water
condenses water on a tile at the specified coordinates
contaminate_adjacent
Contaminate things that share our immediate location(periodic)
contaminate_target
Contaminate the contents of a target(single instance)
costly_icon2asset
Costlier version of icon2asset() that uses getFlatIcon() to account for overlays, underlays, etc. Use with extreme moderation, ESPECIALLY on mobs.
cover_flags2body_zones
Turns a Body_parts_covered bitfield into a list of organ/limb names.
create_shrapnel
Creates an explosion of shrapnel at a turf.
+
+
/turf/epicenter - where the explosion occurs
+
shrapnel_number - the amount of shrapnel to create
+
/obj/projectile/shrapnel_type - the type of shrapnel bullets to shoot
+
chance_to_hit_same_turf - the probability to hit someone on the same turf, doubled for someone lying down
+
create_strippable_list
Creates an assoc list of keys to /datum/strippable_item
cryo_ssd
Teleport an SSD human inside a cryopod, or a robot to a robot storage unit, but do not despawn them.
cut_relative_direction
Takes a screen_loc string and cut out any directions like NORTH or SOUTH
delete_all_SS_and_recreate_master
Delete all existing SS to basically start over
deltimer
Delete a timer
+
Arguments:
+
+
id a timerid or a /datum/timedevent
+
diagonally_blocked
check if 2 diagonal turfs are blocked by dense objects
do_teleport
Will teleport the given atom to the given destination using the other parameters
+
Arguments:
+
+
atom_to_teleport - Atom to teleport
+
destination - Where to teleport the atom to
+
variance_range - With what precision to do the teleport. 0 means on target. Higher means that many turfs around it
+
force_teleport - Whether to use forceMove instead of Move to move the atom to the destination
+
effect_in - The effect started at the starting turf. If set to NONE then no effect is used
+
effect_out - The effect started at the destination turf. If set to NONE then no effect is used
+
sound_in - The sound played at the starting turf
+
sound_out - The sound played at the destination turf
+
bypass_area_flag - Whether is_teleport_allowed is skipped or not
+
safe_turf_pick - Whether the chosen random turf from the variance is prefered to be a safe turf or not
+
do_effect - Whether to play the effect or not
+
emissive_appearance
Produces a mutable appearance glued to the EMISSIVE_PLANE dyed to be the EMISSIVE_COLOR. Order of application matters: Default generated blockers are overlays, and will block its own emissive underlays. If you want an object to be both a blocker, and have their own emissive, it has to be an overlay instead. Grayscale lightmasks are visible in the BYOND right-click and Examine pane, unless they're covered up by another overlay.
Will cause an EMP on the given epicenter.
+This proc can sleep depending on the affected objects. So assume it sleeps!
+
epicenter - The center of the EMP. Can be an atom, as long as the given atom is on a turf (in)directly
+heavy_range - The max distance from the epicenter where objects will be get heavy EMPed
+light_range - The max distance from the epicenter where objects will get light EMPed
+log - Whether or not this action should be logged or not. Will use the cause if provided
+cause - The cause of the EMP. Used for the logging
fill_with_ones
Given a list, return a copy where values without defined weights are given weight 1.
+For example, fill_with_ones(list(A, B=2, C)) = list(A=1, B=2, C=1)
+Useful for weighted random choices (loot tables, syllables in languages, etc.)
finish_unequip_mob
A utility function for /datum/strippable_items to finish unequipping an item from a mob.
fire_curse_hand
Torment the target with a frightening hand
fire_flash_log
Flashfire is a proc used to log fire causing chemical reactions.
+
Call this whenever you have a chemical reaction that makes fire flashes.
+Arguments:
+
+
holder: the beaker that the reagent is in
+
name: name of the reagent / reaction
+
first_name
Find the first name of a mob from a passed string with regex
flatten_list
Flattens a keyed list into a list of its contents
force_cryo
Immeditely teleport a human or robot to cryo and then despawn them.
format_si_suffix
Formats num with an SI prefix.
+
Returns a string formatted with a multiple of num and an SI prefix corresponding to an exponent of 10.
+Only considers exponents that are multiples of 3 (deca, deci, hecto, and centi are not included).
+A unit is not included in the string, the prefix is placed after the number with no spacing added anywhere.
+Listing of prefixes: https://en.wikipedia.org/wiki/Metric_prefix#List_of_SI_prefixes
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_bitfields
Turns /datum/bitfield subtypes into a list for use in debugging
get_active_player_count
Get active players who are playing in the round
get_adjacent_areas
Returns a list of all areas that are adjacent to the center atom's area, clear the list of nulls at the end.
get_adjacent_turfs
Returns a list of all turfs that are adjacent to the center atom's turf, clear the list of nulls at the end.
get_admin_objective_targets
Allows admins to safely pick from SSticker.minds for objectives
+
+
caller_mob, mob to ask for results
+
blacklist, optional list of targets that are not available
+
default_target, the target to show in the list as default
+
get_all_linked_levels_zpos
Proc to get a list of all the linked-together Z-Levels
+
Returns a list of zlevel numbers which can be accessed from travelling space naturally
get_allowed_instrument_ids
Get all non admin_only instruments as a list of text ids.
get_angle_raw
Angle between two arbitrary points and horizontal line same as [/proc/get_angle]
get_antag_type_strings_list
A proc that return an array of capitalized strings containing name of the antag types they are
+
Arguments:
+
+
M - the mob you're checking
+
get_antag_type_truncated_plaintext_string
A proc that return a string containing all the singled out antags . Empty string if not antag
+
Usually, you'd return a FALSE, but since this is consumed by javascript you're in
+for a world of hurt if you pass a byond FALSE which get converted into a fucking string anyway and pass for TRUE in check. Fuck.
+It always append "(May be other antag)"
+Arguments:
+
+
M - the mob you're checking
+
get_atoms_of_type
Returns a list of atoms in a location of a given type. Can be refined to look for pixel-shift.
+
Arguments:
+
+
loc - The atom to look in.
+
type - The type to look for.
+
check_shift - If true, will exclude atoms whose pixel_x/pixel_y do not match shift_x/shift_y.
+
shift_x - If check_shift is true, atoms whose pixel_x is different to this will be excluded.
+
shift_y - If check_shift is true, atoms whose pixel_y is different to this will be excluded.
+
get_bbox_of_atoms
Get a bounding box of a list of atoms.
+
Arguments:
+
+
atoms - List of atoms. Can accept output of view() and range() procs.
+
+
Returns: list(x1, y1, x2, y2)
get_channel_name
Returns the clean name of an audio channel.
+
Arguments:
+
+
channel - The channel number.
+
get_departments_from_job
matches a string job name to their department(s) and returns it as a list
get_dist_euclidean
Returns the distance between two atoms
get_dummy_savefile
Gets a dummy savefile for usage in icon generation.
+Savefiles generated from this proc will be empty.
get_edge_target_turf
Returns the turf located at the map edge in the specified direction relative to target_atom used for mass driver
get_hear
Like view but bypasses luminosity check
get_hearers_in_LOS
Returns a list of movable atoms that are hearing sensitive in view_radius and line of sight to source
+the majority of the work is passed off to the spatial grid if view_radius > 0
+because view() isnt a raycasting algorithm, this does not hold symmetry to it. something in view might not be hearable with this.
+if you want that use get_hearers_in_view() - however thats significantly more expensive
+
+
view_radius - what radius search circle we are using, worse performance as this increases but not as much as it used to
+
source - object at the center of our search area. everything in get_turf(source) is guaranteed to be part of the search area
+
get_hearers_in_range
The exact same as get_hearers_in_view, but not limited by visibility. Does no filtering for traits, line of sight, or any other such criteria.
+Filtering is intended to be done by whatever calls this function.
+
This function exists to allow for mobs to hear speech without line of sight, if such a thing is needed.
+
+
radius - what radius search circle we are using, worse performance as this increases
+
source - object at the center of our search area. everything in get_turf(source) is guaranteed to be part of the search area
+
contents_type - the type of contents we want to be looking for. defaults to hearing sensitive
+
get_hearers_in_view
returns every hearaing movable in view to the turf of source not taking into account lighting
+useful when you need to maintain always being able to hear something if a sound is emitted from it and you can see it (and youre in range).
+otherwise this is just a more expensive version of get_hearers_in_LOS().
+
+
view_radius - what radius search circle we are using, worse performance as this increases
+
source - object at the center of our search area. everything in get_turf(source) is guaranteed to be part of the search area
+
contents_type - the type of contents we want to be looking for. defaults to hearing sensitive
+
get_icon_dimensions
Returns a list containing the width and height of an icon file
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 starting_atom to ending_atom.
This proc returns every player with a client who is not a ghost or a new_player
get_living_players_count
Get living players who are playing in the round (no ghosts)
get_nested_locs
Returns a list of all locations (except the area) the movable is within.
get_obj_screen_xy
Gets the location of an object on a client's screen. Thanks to Kaioken on BYOND forums.
get_path_to
This is the proc you use whenever you want to have pathfinding more complex than "try stepping towards the thing".
+If no path was found, returns an empty list, which is important for bots like medibots who expect an empty list rather than nothing.
+It will yield until a path is returned, using magic
+
Arguments:
+
+
path_caller: The movable atom that's trying to find the path
+
end: What we're trying to path to. It doesn't matter if this is a turf or some other atom, we're gonna just path to the turf it's on anyway
+
max_distance: The maximum number of steps we can take in a given path to search (default: 30, 0 = infinite)
+
mintargetdistance: Minimum distance to the target before path returns, could be used to get near a target, but not right to it - for an AI mob with a gun, for example.
+
access: A list representing what access we have and what doors we can open.
+
simulated_only: Whether we consider tur fs without atmos simulation (AKA do we want to ignore space)
+
exclude: If we want to avoid a specific turf, like if we're a mulebot who already got blocked by some turf
+
skip_first: Whether or not to delete the first item in the path. This would be done because the first item is the starting tile, which can break movement for some creatures.
+
diagonal_handling: defines how we handle diagonal moves. see __DEFINES/path.dm
+
get_rad_contents
A special GetAllContents that doesn't search past things with rad insulation
+Components which return COMPONENT_BLOCK_RADIATION prevent further searching into that object's contents. The object itself will get returned still.
+The ignore list makes those objects never return at all
get_ranged_target_turf
+
returns turf relative to A in given direction at set range
+// result is bounded to map size
+// note range is non-pythagorean
+// used for disposal system
+
get_ranged_target_turf_direct
Get ranged target turf, but with direct targets as opposed to directions
+
Starts at atom starting_atom and gets the exact angle between starting_atom and target
+Moves from starting_atom with that angle, Range amount of times, until it stops, bound to map size
+Arguments:
+
+
starting_atom - Initial Firer / Position
+
target - Target to aim towards
+
range - Distance of returned target turf from starting_atom
+
offset - Angle offset, 180 input would make the returned target turf be in the opposite direction
+
get_safe_random_station_turf_equal_weight
Returns a random department of areas to pass into get_safe_random_station_turf() for more equal spawning.
get_safe_species
Returns a list of names of non-blacklisted or hazardous species.
get_swarm_path_to
POTENTIALLY cheaper version of get_path_to
+This proc generates a path map for the end atom's turf, which allows us to cheaply do pathing operations "at" it
+Generation is significantly SLOWER then get_path_to, but if many things are/might be pathing at something then it is much faster
+Runs the risk of returning an suboptimal or INVALID PATH if the delay between map creation and use is too long
+
If no path was found, returns an empty list, which is important for bots like medibots who expect an empty list rather than nothing.
+It will yield until a path is returned, using magic
+
Arguments:
+
+
path_caller: The movable atom that's trying to find the path
+
end: What we're trying to path to. It doesn't matter if this is a turf or some other atom, we're gonna just path to the turf it's on anyway
+
max_distance: The maximum number of steps we can take in a given path to search (default: 30, 0 = infinite)
+
mintargetdistance: Minimum distance to the target before path returns, could be used to get near a target, but not right to it - for an AI mob with a gun, for example.
+
age: How old a path map can be before we'll avoid reusing it. Use the defines found in code/__DEFINES/path_defines.dm, values larger then MAP_REUSE_SLOWEST will be discarded
+
access: A list representing what access we have and what doors we can open.
+
simulated_only: Whether we consider tur fs without atmos simulation (AKA do we want to ignore space)
+
exclude: If we want to avoid a specific turf, like if we're a mulebot who already got blocked by some turf
+
skip_first: Whether or not to delete the first item in the path. This would be done because the first item is the starting tile, which can break movement for some creatures.
+
get_total_resources
Returns the net resources available for event rolling
get_unrestricted_random_reagent_id
Returns a random reagent ID, with real non blacklisted balance boosting action!
get_valid_screen_location
Returns a valid location to place a screen object without overflowing the viewport
+
+
target: The target location as a purely number based screen_loc string "+-left-offset:+-pixel,+-bottom-offset:+-pixel"
+
target_offset: The amount we want to offset the target location by. We explictly don't care about direction here, we will try all 4
+
view: The view variable of the client we're doing this for. We use this to get the size of the screen
+
+
Returns a screen loc representing the valid location
get_valid_vent_spawns
Returns a list of vents that can be used as a potential spawn if they meet the criteria set by the arguments
+
Will not include parent-less vents to the returned list.
+Arguments:
+
+
unwelded_only - Whether the list should only include vents that are unwelded
+
exclude_mobs_nearby - Whether to exclude vents that are near living mobs
+
min_network_size - The minimum length (non-inclusive) of the vent's parent network. A smaller number means vents in small networks (Security, Virology) will appear in the list
+
goonchem_vortex
Throws or pulls objects to/from a chem reaction
+
Scales the amount of objects thrown with the volume, unless ignore_volume is TRUE
+
Arguments:
+
+
T - The turf to use as the throw from/to point
+
pull - Do we want to pull objects towards T (TRUE) or push them away from it (FALSE)
+
volume - The volume of reagents. Used to scale the effect is ignore_volume = FALSE
+
ignore_volume - Do we want to ignore the volume of reagents and just throw regardless
+
hit_zone_to_clothes_zone
Convert the impact zone of a projectile to a clothing zone we can do a contamination check on
icon2asset
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:
+
+
thing - either a /icon object, or an object that has an appearance (atom, image, mutable_appearance).
+
target - either a reference to or a list of references to /client's or mobs with clients
+
icon_state - string to force a particular icon_state for the icon to be used
+
dir - dir number to force a particular direction for the icon to be used
+
frame - what frame of the icon_state's animation for the icon being used
+
moving - whether or not to use a moving state for the given icon
+
sourceonly - if TRUE, only generate the asset and send back the asset url, instead of tags that display the icon to players
+
extra_classes - string of extra css classes to use when returning the icon string
+
icon2base64
Converts an icon to base64. Operates by putting the icon in the iconCache savefile,
+exporting it as text, and then parsing the base64 from that.
+(This relies on byond automatically storing icons in savefiles as base64)
icon_exists
Checks if the given iconstate exists in the given file, caching the result. Setting no_sprite to TRUE will print a stack trace ONCE.
init_reagent_list
Initialises all of /datum/reagent into a list indexed by reagent id.
initialize_starting_knowledge
Returns a list of all heretic knowledge TYPEPATHS
+that have route set to PATH_START.
is_bad_connection
Connection checker
+
Checks the connection frequency against the intended frequency for the message
+NOTE: I barely know what on earth this does, but it works and it scares me
+Arguments:
+
+
old_freq - Frequency of the connection
+
new_freq - Frequency of the message
+
is_color_dark
Given a color in the format of "#RRGGBB", will return if the color is dark.
is_special_character
ADMIN HELPER PROCS
+A proc that return whether the mob is a "Special Character" aka Antagonist
+
Arguments:
+
+
M - the mob you're checking
+
is_type_in_UID_list
If the list L contains a datum UID who's type matches D's type, returns the UID of that datum in the list. Otherwise returns null.
is_valid_dmi_file
given a text string, returns whether it is a valid dmi icons folder path
last_name
Find the last name of a mob from a passed string with regex
list_clear_nulls
Removes any null entries from the list
+Returns TRUE if the list had nulls, FALSE otherwise
lists_equal_unordered
Checks to make sure that the lists have the exact same contents, ignores the order of the contents.
locateUID
Locates a datum based off of the UID
+
Replacement for locate() which takes a UID instead of a ref
+Returns the datum, if found
makeDatumRefLists
Initial Building
make_associative
A proc for turning a list into an associative list.
+
A simple proc for turning all things in a list into an associative list, instead
+Each item in the list will have an associative value of TRUE
+
Arguments:
+
+
flat_list - the list that it passes to make associative
+
md5asfile
Save file as an external file then md5 it.
+Used because md5ing files stored in the rsc sometimes gives incorrect md5 results.
md5filepath
Returns the md5 of a file at a given path.
message_adminTicket
Sends a message to the staff able to see admin tickets
+Arguments:
+msg - The message being send
+important - If the message is important. If TRUE it will ignore the CHAT_NO_TICKETLOGS preferences,
+send a sound and flash the window. Defaults to FALSE
message_mentorTicket
Sends a message to the staff able to see mentor tickets
+Arguments:
+msg - The message being send
+important - If the message is important. If TRUE it will ignore the CHAT_NO_TICKETLOGS preferences,
+send a sound and flash the window. Defaults to FALSE
message_roles
Sends a message to all players with a role and the specified permissions
message_to_html
Message-related procs
+
Message format (/list):
+
+
type - Message type, must be one of defines in code/__DEFINES/chat.dm
+
text - Plain message text
+
html - HTML message text
+
Optional metadata, can be any key/value pair.
+
+
Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
offset_to_screen_loc
Takes a list in the form (x_offset, y_offset)
+And converts it to a screen loc string
+Accepts an optional view string/size to force the screen_loc around, so it can't go out of scope
parse_caught_click_modifiers
Returns a turf based on text inputs, original turf and viewing client
path_map_passalong
We generate a path for the passed in callbacks, and then pipe it over
pathfinding_finished
Uses funny pass by reference bullshit to take the output created by pathfinding, and insert it into a return list
+We'll be able to use this return list to tell a sleeping proc to continue execution
phase_filter
This filter proc makes a visual effect where the object is split into fragments, with vertical lines cut out of them. It will appear as 2 seperate things are made of the one object that was cut out
pick_multiple_unique
Picks multiple unique elements from the suplied list.
+If the given list has a length less than the amount given then it will return a list with an equal amount
+
Arguments:
+
+
listfrom - The list where to pick from
+
amount - The amount of elements it tries to pick.
+
pick_unique_lawset
returns a random non starting / kill crew lawset if the station has a unique ai lawset
pick_weight_recursive
Like pick_weight, but allowing for nested lists.
+
For example, given the following list:
+list(A = 1, list(B = 1, C = 1))
+A would have a 50% chance of being picked,
+and list(B, C) would have a 50% chance of being picked.
+If list(B, C) was picked, B and C would then each have a 50% chance of being picked.
+So the final probabilities would be 50% for A, 25% for B, and 25% for C.
+
Weights should be integers. Entries without weights are assigned weight 1 (so unweighted lists can be used as well)
pickweight
Picks an element based on its weight.
+L - The input list
+
example: list("a" = 1, "b" = 2) will pick "b" 2/3s of the time
pickweight_fraction
Picks an element based on its weight. Weight can be any real number
+L - The input list
+
example: list("a" = 0.33, "b" = 0.67) will have a 67% chance to pick "b"
propagate_network
remove the old powernet and replace it with a new one throughout the network.
radial_menu_helper
Similar to show_radial_menu, but choices is a list of atoms, for which icons will be automatically generated.
+Supports multiple items of the same name, 2 soaps will become soap (1) and soap (2) to the user.
+Otherwise, has the exact same arguments as show_radial_menu
random_body_accessory
Returns a random body accessory for a given species name. Can be null based on is_optional argument.
+
Arguments:
+
+
species - The name of the species to filter valid body accessories.
+
is_optional - Whether no body accessory (null) is an option.
+
random_skin_tone
Randomises skin tone, specifically for each species that has a skin tone. Otherwise keeps a default of 1
ranked_rights2text
Converts the full permissions details of a DB-ranked admin to a HTML-colored string
read_bug_report_table
Populates a list using the bug reports db table and returns it
read_bug_report_titles
Create a list of ids, authors and titles of bug reports awaiting approval
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
remove_clunky_diagonals
Processes a path (list of turfs), removes any diagonal moves that would lead to a weird bump
+
path - The path to process down
+pass_info - Holds all the info about what this path attempt can go through
+simulated_only - If we are not allowed to pass space turfs
+avoid - A turf to be avoided
remove_diagonals
Processes a path (list of turfs), removes any diagonal moves
+
path - The path to process down
+pass_info - Holds all the info about what this path attempt can go through
+simulated_only - If we are not allowed to pass space turfs
+avoid - A turf to be avoided
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:
+
+
target - Who the verb is being removed from, client or mob typepath
+
verb - typepath to a verb, or a list of verbs, supports lists of lists
+
rights2text
Converts a rights bitfield into a string
round_health
rounds value to limited symbols after the period for organ damage and other values
runechat_emote
Send an emote to runechat for all (listening) users in the vicinity.
+
+
user - The user of the emote.
+
text - The text of the emote.
+
rustlibs_create_toast
(Windows only) Triggers a desktop notification with the specified title and body
rustlibs_dbp_generate
This proc generates a grid of perlin-like noise
+
Returns a single string that goes row by row, with values of 1 representing an turned on cell, and a value of 0 representing a turned off cell.
+
Arguments:
+
+
seed: seed for the function
+
accuracy: how close this is to the original perlin noise, as accuracy approaches infinity, the noise becomes more and more perlin-like
+
stamp_size: Size of a singular stamp used by the algorithm, think of this as the same stuff as frequency in perlin noise
+
world_size: size of the returned grid.
+
lower_range: lower bound of values selected for. (inclusive)
+
upper_range: upper bound of values selected for. (exclusive)
+
safe_get_ckey
Safe ckey getter
+
Should be used whenever broadcasting public information about a mob,
+as this proc will make a best effort to hide the users ckey if they request it.
+It will first check the mob for a client, then use the mobs last ckey as a directory lookup.
+If a client cant be found to check preferences on, it will just show as DC'd.
+This proc should only be used for public facing stuff, not administration related things.
+
Arguments:
+
+
M - Mob to get a safe ckey of
+
sanitize_for_ic
sanitize() with a pre-set list of characters to remove from IC speech.
screen_loc_to_offset
Takes a screen loc string in the format
+"+-left-offset:+-pixel,+-bottom-offset:+-pixel"
+Where the :pixel is optional, and returns
+A list in the format (x_offset, y_offset)
+We require context to get info out of screen locs that contain relative info, so NORTH, SOUTH, etc
seconds_to_clock
Take a value in seconds and makes it display like a clock. Hours are stripped. (mm:ss)
seconds_to_full_clock
Take a value in seconds and makes it display like a clock (h:mm:ss)
seedify
Convert a grown object into seeds.
setup_mod_themes
Global proc that sets up all MOD themes as singletons in a list and returns it.
shake_camera
Shake the camera of the person viewing the mob SO REAL!
show_blurb
Shows a ticker reading out the given text on a client's screen.
+
Arguments:
+
+
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 (<b>, <i>, <u> 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 - colour of the text.
+
blurb_key - a key used for specific blurb types so they are not shown
+repeatedly.
+
ignore_key - used to skip key checks.
+
text_limit - limit in characters of the message.
+
slice_off_turfs
Returns a slice of a list of turfs, defined by the ones that are inside the inner/outer angle's bounds
start_unequip_mob
A utility function for /datum/strippable_items to start unequipping an item from a mob.
start_watch
Returns "watch handle" (really just a timestamp :V)
stop_watch
Returns number of seconds elapsed.
+@param wh number The "Watch Handle" from start_watch(). (timestamp)
string_list
Caches lists with non-numeric stringify-able values (text or typepath).
strip_html_tags
Strips HTML tags (and only tags) from the input.
+The result may still include HTML entities, like ' for '
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.
+
tgui_input_checkbox_list
Creates a TGUI input list window and returns the user's response in a ranked order.
+
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 input box, shown on the top of the TGUI window.
+
items - The options that can be chosen by the user, each string is assigned a button on the UI.
+
default - If an option is already preselected on the UI. Current values, etc.
+
timeout - The timeout of the input box, after which the menu will close and qdel itself. Set to zero for no timeout.
+
tgui_input_color
Creates a TGUI color picker window and returns the user's response.
+
This proc should be used to create a color picker that the caller will wait for a response from.
+Arguments:
+
+
user - The user to show the picker to.
+
title - The of the picker modal, shown on the top of the TGUI window.
+
timeout - The timeout of the picker, after which the modal will close and qdel itself. Set to zero for no timeout.
+
autofocus - The bool that controls if this picker should grab window focus.
+
tgui_input_keycombo
Creates a TGUI window with a key input. Returns the user's response as a full key with modifiers, eg ShiftK.
+
This proc should be used to create windows for key entry that the caller will wait for a response from.
+If tgui fancy chat is turned off: Will return a normal input.
+
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) key, shown as a placeholder.
+
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 input box, shown on the top of the TGUI window.
+
items - The options that can be chosen by the user, each string is assigned a button on the UI.
+
default - If an option is already preselected on the UI. Current values, etc.
+
timeout - The timeout of the input box, after which the menu will close and qdel itself. Set to zero for no timeout.
+
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.
+
round_value - whether the inputted number is rounded down into an integer.
+
tgui_input_ranked_list
Creates a TGUI ranked input list window and returns the user's response in a ranked order.
+
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 input box, shown on the top of the TGUI window.
+
items - The options that can be chosen by the user, each string is assigned a button on the UI.
+
default - If an option is already preselected on the UI. Current values, etc.
+
timeout - The timeout of the input box, after which the menu will close and qdel itself. Set to zero for no timeout.
+
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.
+
tint_color
Returns a purely random tint for specific color
to_chat
Sends the message to the recipient (target).
+
Recommended way to write to_chat calls:
+
to_chat(client, "You have found <strong>[object]</strong>", MESSAGE_TYPE_INFO,
+
+
Always remember to close spans!
+
Arguments:
+
+
target: Refers to the target of the to_chat message. Valid targets include clients, mobs, and the static world controller
+
html: The Message to be sent to the TARGET. Converted to a string if not already one in this function
+
type: The chat tab that this message will be sent to, a list of all valid types can be found in chat.dm
+
text: Unused
+
avoid_highlighting: Unused
+
+
trailing_newline, confidential, and handle_whitespace currently have no effect, please fix this in the future or remove the arguments to lower cache!
to_chat_immediate
Circumvents the message queue and sends the message to the recipient (target) as soon as possible.
+trailing_newline, confidential, and handle_whitespace currently have no effect, please fix this in the future or remove the arguments to lower cache!
trim_length
Returns a string that does not exceed max_length characters in size
turf_peel
Behaves like the orange() proc, but only looks in the outer range of the function (The "peel" of the orange).
+This is useful for things like checking if a mob is in a certain range, but not within a smaller range.
+
@params outer_range - The outer range of the cicle to pull from.
+@params inner_range - The inner range of the circle to NOT pull from.
+@params center - The center of the circle to pull from, can be an atom (we'll apply get_turf() to it within circle_x_turfs procs.)
+@params view_based - If TRUE, we'll use circle_view_turfs instead of circle_range_turfs procs.
type_list_to_counted_assoc_list
This proc takes a list of types, and returns them in the format below.
+[type] = amount of type in list.
+Useful for recipes.
view_to_pixels
Takes a string or num view, and converts it to pixel width/height in a list(pixel_width, pixel_height)
wiki_link
Creates a hyperlink for a specified wiki article.
\ No newline at end of file
diff --git a/icon.html b/icon.html
new file mode 100644
index 00000000000..65586229786
--- /dev/null
+++ b/icon.html
@@ -0,0 +1 @@
+/icon - Space Station 13Space Station 13 - Modules - Types — Proc Details
Swaps an entire palette, for convenience, given two same-length lists of rgb or rgba colors
Proc Details
swap_palette
Swaps an entire palette, for convenience, given two same-length lists of rgb or rgba colors
\ No newline at end of file
diff --git a/index.html b/index.html
new file mode 100644
index 00000000000..560d5e97747
--- /dev/null
+++ b/index.html
@@ -0,0 +1,284 @@
+Index - Space Station 13
+
+Space Station 13 - Modules - Types
void_chill - Contains the "Void Chill" status effect. Harmful debuff which freezes and slows down non-heretics
+Cannot affect silicons (How are you gonna freeze a robot?)
Understanding Powernets - Much like any other massive numbers system in SS13, the power (or powernet) system is complex and confusing to work with, only being trumped in complexity by atmospherics/LINDA. This README serves as a powernets 101 guide and breaks down how the system works.
emissive_blocker - Internal atom that copies an appearance on to the blocker plane
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.
unholy_determination - Screen alert for the below status effect.
succumb - Gives the player the option to succumb while in critical condition
Take Item alert - Alert which appears for a user when another player is attempting to offer them an item.
+The user can click the alert to accept, or simply do nothing to not take the item.
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.
center - Centered fullscreen atoms
+These are used to center a widescreen image so it scales properly across screen sizes, not suitable for screen images that eminate from the edge of the screen
stretch - Stretch version is suitable for images that stick to screen edges, as they scale with user screen size
+For centrally located screen objects, use /atom/movable/screen/fullscreen/center
cursor_catcher - An effect which tracks the cursor's location on the screen
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".
capricious_retaliate - Add or remove people to our retaliation shitlist just on an arbitrary whim
cling_spider_follow - Attempt to follow the owner
conjure_skulls - Nyeh heh heh!
cover_minimum_distance - instead of taking a single step, we cover the entire distance
drop_item - Drops items in hands, very important for future behaviors that require the pawn to grab stuff
find_and_set - Finds an item near themselves, sets a blackboard key as it. Very useful for AIs that need to use machines or something.
+If you want to do something more complicated than find a single atom, change the search_tactic() proc
+cool tip: search_tactic() can set lists
edible - Variant of find and set that also requires the item to be edible. checks hands too
in_list - Variant of find and set that takes a list of things to find.
pawn_must_hold_item - Variant of find and set that fails if the living pawn doesn't hold something
target_from_retaliate_list - Picks a target from a provided list of atoms who have been pissing you off
+You will probably need /datum/element/ai_retaliate to take advantage of this unless you're populating the blackboard yourself
nearest - As above but targets have been filtered from the 'retaliate' blackboard list
Targeted Mob Ability - Attempts to use a mob's cooldown ability on a target
Try Mob Ability and clear target - Attempts to use a mob's cooldown ability on a target and releases the target when the action completes
Try Mob Ability and plan execute - Attempts to use a mob's cooldown ability on a target and then move the target into a special target blackboard datum
+Doesn't need another subtype to clear BB_BASIC_MOB_EXECUTION_TARGET because it will be the target key for the normal action
min_range - Attempts to move into the provided range and then use a mob's cooldown ability on a target
tipped_reaction - Type of tipped reaction that is akin to puppy dog eyes.
Travel Towards - Moves towards the atom in the passed blackboard key.
+Planning continues during this action so it can be interrupted by higher priority actions.
Travel Towards Atom - Travel towards an atom you pass directly from the controller rather than a blackboard key.
+You might need to do this to avoid repeating some checks in both a controller and an action.
use_in_hand - Use in hand the currently held item
use_mob_ability/shapeshift - Selects a random shapeshift ability before shifting
use_on_object - Use the currently held item, or unarmed, on a weakref to an object in the world
wrap_target - Move to an unwrapped item and wrap it
ai_controller - AI controllers are a datumized form of AI that simulates the input a player
+would otherwise give to a atom. What this means is that these datums have
+ways of interacting with a specific atom and control it. They posses a
+"blackboard" with the information the AI knows and has, and will plan actions
+it will try to perform through multiple modular subtrees with behaviors.
basic_controller
big_legion - Big Legion
blob_spore - As blob zombie but will prioritise attacking corpses to zombify them
blobbernaut - Extremely simple AI, this isn't a very smart boy
+Only notable quirk is that it uses JPS movement, simple avoidance would fail to realise it can path through blobs
crab - Crabs don't do much, but they want to live. They will flee when attacked, but will opportunistically melee attack people who do
diona_nymph - Diona nymphs want to eat plant matter to get to evolution stage, but won't evolve or sample blood on their own. They flee when attacked.
giant_spider - Attacks people it can see, spins webs if it can't see anything to attack.
retaliate - Used by Araneus, who only attacks those who attack first. He is house-trained and will not web up the HoS office.
goat - Goats are normally content to sorta hang around and crunch any plant in sight, but they will go ape on someone who attacks them.
hivelord - Keep away and launch skulls at every opportunity
legion - With evil speech
hivelord_brood - Chase and attack whatever we are targeting
advanced_legion - Same as hivelords, but go after corpses too
incursion - Prowls around when not attacking people
mouse - The mouse AI controller
raw_prophet - Walk and attack people, blind them when we can
rust_walker - Converts unconverted terrain, sprays pocket sand around
simple
clown - Fight back if attacked
retaliate - Fight back if attacked
simple_ability - Use an ability on target on cooldown
simple_ability_melee - Use an ability on target on cooldown, then try to punch them
simple_ability_ranged - Use an ability on target on cooldown, then try to shoot them
simple_ability_retaliate - Use an ability to retaliate on cooldown
simple_capricious - Get pissed at random people for no reason. Most often seen with goats.
simple_fearful - Runs away from anyone it sees
simple_hostile_obstacles - Find a target, walk at target, attack intervening obstacles
prowler - Prowls around when not attacking people
ventcrawler - Will ventcrawl around until it finds a target to attack.
simple_ranged - Find a target, keep distance
simple_ranged_retaliate - Retaliate at range, keep distance
simple_skirmisher - Find a target, walk towards it AND shoot it
prowler - Wanders around until it finds something it can walk towards and shoot
simple_skittish - Runs away when attacked
snake - Snakes are primarily concerned with getting those tasty, tasty mice, but aren't afraid to strike back at those who attack them
stalker - Changes shape and lies in wait when it has no target, uses EMP and attacks once it does
swarmer - Attacks people it can see, disintegrates things based on priority.
lesser - Attacks people it can see, disintegrates things based on priority. More aggressive.
ai_movement - This datum is an abstract class that can be overriden for different types of movement.
basic_avoidance - Uses Byond's basic obstacle avoidance movement
backstep - Move immediately and don't update our facing
complete_stop - Come to a complete stop for a set amount of time.
jps - This movement datum represents smart-pathing
ai_planning_subtree - A subtree is attached to a controller and is occasionally called by
+/ai_controller/select_behaviors(). This mainly exists to act as a way to
+subtype and modify select_behaviors() without needing to subtype the AI
+controller itself.
attack_obstacle_in_path - If there's something between us and our target then we need to queue a behaviour to make it not be there
find_and_hunt_target - Tells the AI to find a certain target nearby to hunt.
+If a target has been found, we will start to move towards it, and eventually attack it.
clean - Find and clean things
corpses - Find and attack corpses
ash_whelp - Find other tasty dragons
human - Find and attack specifically human corpses
drink_water - subtree to go around drinking water
graze - subtree to go around grazing
hunt_ores/minebot - store ores in our body
mark_territory - subtree to mark trees as territories
find_food - Similar to finding a target but looks for food types in the blackboard.
find_unwebbed_turf - Search for a nearby location to put webs on
find_unwrapped_target - Search for a nearby location to put webs on
flee_target - Try to escape from your current target, without performing any other actions.
from_flee_key - Try to escape from your current target, without performing any other actions.
+Reads from some fleeing-specific targeting keys rather than the current mob target.
legion - Don't run away from friendlies
mouse - Don't look for anything to run away from if you are distracted by being adjacent to cheese
Pet Planning - Perform behaviour based on what pet commands you have received. This is delegated to the pet command datum.
+When a command is set, we blackboard a key to our currently active command.
+The blackboard also has a weak reference to every command datum available to us.
+We use the key to figure out which datum to run, then ask it to figure out how to execute its action.
play_with_friends - subtree to go around playing with other deers
target_retaliate - Sets the BB target to a mob which you can see and who has recently attacked you
to_flee - Places a mob which you can see and who has recently attacked you into some 'run away from this' AI keys
+Can use a different targeting strategy than you use to select attack targets
+Not required if fleeing is the only target behaviour or uses the same target datum
use_mob_ability - Simple behaviours which simply try to use an ability whenever it is available.
+For something which wants a target try targeted_mob_ability.
rust_walker - Use if we're not stood on rust right now
icon_states - Generates assets based on iconstates of a single icon
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)
cachedbook - Datum used to cache the SQL DB books locally in order to achieve a performance gain.
callback/verb_callback - like normal callbacks but they also record their creation time for measurement purposes
camerachunk - A 16x16 grid of the map with a list of turfs that can be seen, are visible and are dimmed.
+Allows camera eyes to stream these chunks and know what they can and cannot see.
Click intercept datum - Datum which is intended to be stored by a client's click_intercept variable.
+Used to override normal clicking behavior when clicking on an object.
+While active, a mob's ClickOn proc will redirect to the InterceptClickOn() proc instead.
Give click intercept - While a mob has this intercept, left clicking on a carbon mob will attempt to offer their currently held item to that mob.
Cogbar - Represents that the user is busy doing something.
color_matrix - A color matrix allows us to set the color of an atom in a list form, thus allowing us to change color in more flexible ways. For example, we can set the brightness and contrast of the bloom and exposure of lamps
action_item_overlay - Apply to an action to allow it to take an item
+and apply it as an overlay of the action button
aggro_emote - A component for ai-controlled atoms which plays a sound if they switch to a living target which they can attack
ai_retaliate_advanced - Attached to a mob with an AI controller, passes things which have damaged it to a blackboard.
+The AI controller is responsible for doing anything with that information.
+Differs from the element as it passes new entries through a callback.
ai_target_timer - Increments a blackboard key while the attached mob is engaged with a particular target, does nothing else on its own
anti_magic - This provides different types of magic resistance on an object
aura_healing - Applies healing to those in the area.
+Will provide them with an alert while they're in range, as well as
+give them a healing particle.
+Can be applied to those only with a trait conditionally.
boomerang - If an object is given the boomerang component, it should be thrown back to the thrower after either hitting it's target, or landing on the thrown tile.
+Thrown objects should be thrown back to the original thrower with this component, a number of tiles defined by boomerang_throw_range.
boss_music - Attaches to a hostile simplemob and plays that music while they have a target.
codeword_hearing - Component that allows for highlighting of words or phrases in chat based on regular expressions.
connect_containers - This component behaves similar to connect_loc_behalf, but it's nested and hooks a signal onto all MOVABLES containing this atom.
connect_loc_behalf - This component behaves similar to connect_loc, hooking into a signal on a tracked object's turf
+It has the ability to react to that signal on behalf of a separate listener however
+This has great use, primarily for components, but it carries with it some overhead
+So we do it separately as it needs to hold state which is very likely to lead to bugs if it remains as an element.
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 seperate listener, which makes this quite powerful
connect_range - This component behaves similar to connect_loc_behalf but for all turfs in range, hooking into a signal on each of them.
+Just like connect_loc_behalf, It can react to that signal on behalf of a seperate listener.
+Good for components, though it carries some overhead. Can't be an element as that may lead to bugs.
construct_held_body - A component for tracking and manipulating bodies held inside constructs/shades
+Will drop the body/brain when the parent dies or is deleted.
corpse_description - Mapping component which adds examine text to a corpse that is removed on revival (in case for some reason someone revives your space ruin mob)
+For immersive environmental story telling
damage_aura - Applies a status effect and deals damage to people in the area.
+Will deal more damage the more people are present.
direct_explosive_trap - Responds to certain signals and 'explodes' on the person using the item.
drift - Component that handles drifting
+Manages a movement loop that actually does the legwork of moving someone
+Alongside dealing with the post movement input blocking required to make things look nice
goal - A verson of the label component specific to labelling goal items.
largetransparency - Makes large icons partially see through if high priority atoms are behind them.
leash - Keeps the parent within the distance of its owner as naturally as possible,
+but teleporting if necessary.
Living Heart Component - Applied to a heart to turn it into a heretic's 'living heart'.
+The living heart is what they use to track people they need to sacrifice.
multitile - Lets multitile objects have dense walls around them based on the coordinate map
Obeys Commands Component - Manages a list of pet command datums, allowing you to boss it around
+Creates a radial menu of pet commands when this creature is alt-clicked, if it has any
ranged_attacks - Configurable ranged attack for basic mobs.
Regenerator component - A mob with this component will regenerate its health over time, as long as it has not received damage
+in the last X seconds. Taking any damage will reset this cooldown.
riding - This is the riding component, which is applied to a movable atom by the ridable element when a mob is successfully buckled to said movable.
Surgery Initiator - Allows an item to start (or prematurely stop) a surgical operation.
tameable - This component lets you make specific mobs tameable by feeding them
tilted - A component that should be attached to things that have been tilted over, and can be righted.
+This can optionally block normal attack_hand interactions
tippable - Tippable component. For making mobs able to be tipped, like cows and medibots.
meathunk - A specialized add-item step for specific meat subtypes
supermatter_sliver - A step that allows either direct adding of a supermatter sliver
+(if you have somehow manage to hold one), or
+from tongs if those are used and contain a sliver in them.
add_produce - A cooking step that involves using grown foods.
recipe_tracker - A recipe tracker is an abstract representation of the progress that a
+cooking container has made towards any of its possible recipe outcomes.
step_attempt - A single attempt to perform a step in a recipe.
+These are created in a recipe tracker and not kept around.
+This exists only to make the bookkeeping around recipe tracking easier.
cooking_surface - Cooking surfaces are representations of the available "slots" on a cooking machine
+that can hold a cooking container.
dynamic_airlock_linker - A manager that is used on mapload to generate airlock chambers based on the
+usage of /obj/effect/map_effect/dynamic_airlock helpers. These helpers
+make up the "zone" of an airlock chamber, as well as indicate which airlocks
+are exterior or interior, what access should be applied to the doors and
+controls, And what buttons, vents, and airlock controllers should be linked
+together. This is performed on Initialize of one of the related helpers.
+Once done, all the other helpers are deleted to prevent it happening again
+for that zone.
element - A holder for simple behaviour that can be attached to many different types
ai_flee_while_injured - Attached to a mob with an AI controller, simply sets a flag on whether or not to run away based on current health values.
ai_retaliate - Attached to a mob with an AI controller, passes things which have damaged it to a blackboard.
+The AI controller is responsible for doing anything with that information.
atmos_requirements - Bespoke element that deals damage to the attached mob when the atmos requirements aren't satisfied
body_temperature - Bespoke element that deals damage to the attached mob when the ambient temperature is unsuitable.
bombable_turf - Apply this to a turf (usually a wall) and it will be destroyed instantly by any explosion.
+Most walls can already be destroyed by explosions so this is largely for usually indestructible ones.
+For applying it in a map editor, use /obj/effect/mapping_helpers/bombable_wall
butchers_humans - An element for items that butcher human corpses into meat when attacked on
+harm intent.
clothing_adjustment - An element for making visual modifications to items when worn externally by
+a carbon mob. This could range to anything from changing its pixel offsets
+to its color or size.
connect_loc - This element hooks a signal onto the loc the current object is on.
+When the object moves, it will unhook the signal and rehook it to the new object.
corrupted_organ - Component applying shared behaviour by cursed organs granted when sacrificed by a heretic
+Mostly just does something spooky when it is removed
heretic_focus - Heretic focus element, simple element for making an item a heretic focus,
+allowing heretics to cast advanced spells (examine message included).
hostile_machine - AIs will attack this as a potential target if they see it
leeching_walk - Buffs and heals the target while standing on rust.
light_blocking - Attached to movable atoms with opacity. Listens to them move and updates their old and new turf loc's opacity accordingly
noticable_organ - noticable organ element; which makes organs have a special description added to the person with the organ, if certain body zones aren't covered.
Pet bonus element! - Bespoke element that plays a fun message, and sends a heart out when you pet this animal.
relay_attackers - This element registers to a shitload of signals which can signify "someone attacked me".
+If anyone does it sends a single "someone attacked me" signal containing details about who done it.
+This prevents other components and elements from having to register to the same list of a million signals, should be more maintainable in one place.
ridable - This element is used to indicate that a movable atom can be mounted by mobs in order to ride it. The movable is considered mounted when a mob is buckled to it,
+at which point a riding component is created on the movable, and that component handles the actual riding behavior.
rust - Adding this element to an atom will have it automatically render an overlay.
heretic - For rust applied by heretics (if that ever happens) / revenants
shatters_when_thrown - When attached to something, will make that thing shatter into shards on throw impact or z level falling
shelf_positioning - Shelf positioning allows for custom positioning on shelves for individual items.
sideways_movement - A simple element that forces the mob to face a perpendicular direction when moving, like crabs.
codex_cicatrix - Codex Cicatrixi is available at the start:
+This allows heretics to choose if they want to rush all the influences and take them stealthily, or
+Construct a codex and take what's left with more points.
+Another downside to having the book is strip searches, which means that it's not just a free nab, at least until you get exposed - and when you do, you'll probably need the faster drawing speed.
+Overall, it's a tradeoff between speed and stealth or power.
plant_weeds - Alien projectile
+Try to avoid friendly fire, and has a 3 second delay.
rust - Moves a lot if healthy and on rust (to find more tiles to rust) or unhealthy and not on rust (to find healing rust)
+Still moving in random directions though we're not really seeking it out
Bio-chip Fluff Datum - Bio-chip fluff is just lore about the bio-chip that is accessed through the implantpad, you must attach
+one of these datums to the implant_data var on a bio-chip for it to show it up.
Instrument Datums - Instrument datums hold the data for any given instrument, as well as data on how to play it and what bounds there are to playing it.
instrument_key - Instrument key datums contain everything needed to know how to play a specific
+note of an instrument.*
job_candidate - A datum representing all the information needed to perform roundstart job
+selection, without actually needing clients. This allows for the creation
+of fake candidates, allowing testing of the role selection system independent
+of the number of actual players.
local_powernet - Manages all power related mechanics for a single /area
+Machines in areas will directly register to this datum in order to receive power
middle_click_override/Callback invoker middle click override datum - Middle click override which accepts a callback as an arugment in the New() proc.
+When the living mob that has this datum middle-clicks or alt-clicks on something, the callback will be invoked.
milla_safe - Create a subclass of this and implement on_run to manipulate tile air safely.
milla_safe_must_sleep - Create a subclass of this and implement on_run to manipulate tile air safely. ONLY USE THIS VERSION IF YOU CAN'T AVOID SLEEPING; it will delay atmos ticks!
move_loop - Template class of the movement datums, handles the timing portion of the loops
freeze - As close as you can get to a "do-nothing" move loop, the pure intention of this is to absolutely resist all and any automated movement until the move loop times out.
move_rand - This isn't actually the same as walk_rand
+Because walk_rand is really more like walk_to_rand
+It appears to pick a spot outside of range, and move towards it, then pick a new spot, etc.
+I can't actually replicate this on our side, because of how bad our pathfinding is, and cause I'm not totally sure I know what it's doing.
+I can just implement a random-walk though
move_to_rand - Wrapper around step_rand
move_manager - Acts as a namespace for movement packet/type related procs
movement_detector - A datum to handle the busywork of registering signals to handle in depth tracking of a movable
movement_packet - A packet of information that describes the current state of a moving object
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
advanced - Movable and easily code-modified fields! Allows for custom AOE effects that affect movement
+and anything inside of them, and can do custom turf effects!
+Supports automatic recalculation/reset on movement.
microwave/brain_disposal_method - This recipe exists solely so that placing a brain in a microwave destroys it
+for the purpose of round-removing antag assassination targets. Because an
+effect can never be inserted into a microwave by hand, one hopes, the recipe
+itself cannot be completed. However, it accepts a brain as an ingredient, so
+microwaves can take that as input.
Redis callback - Callback datum for subscribed redis channel handling
aggressive_spread - very OP, but im out of other ideas currently
explosive - OH SHIT IT CAN CHAINREACT RUN!!!
Spatial Grid Cell - used by /datum/controller/subsystem/spatial_grid to cover every z level so that the coordinates of every turf in the world corresponds to one of these in
+the subsystems list of grid cells by z level. each one of these contains content lists holding all atoms meeting a certain criteria that is in our borders.
+these datums shouldnt have significant behavior, they should just hold data. the lists are filled and emptied by the subsystem.
spawn_pool - Keeps track of the available points for a given pool, as well as any
+spawners that need to keep track globally of the number of any specific item
+that they spawn.
spawn_pool_manager - The singleton which keeps track of all spawn pools.
+All known /datum/spawn_pool subtypes are registered
+to it and are processed in SSlate_mapping.
diona/pod - Same name and everything; we want the same limitations on them; we just want their regeneration to kick in at all times and them to have special factions
charge_up - A click-based spell template which starts charging up once you click the action button/verb. Click again on something to activate the actual spell
bounce - A spell template that adds bounces to the charge_up spell template. The spell will bounce between targets once released.
+Don't override cast and instead override apply_bounce_effect and the other procs
augment_menu - The shop for purchasing and upgrading abilities, from here on the rest of the file is just handling shopping. Specific powers are in the powers subfolder.
overclock - A toggle ability that makes you speedy and attack faster while heating up, level one cast is guaranteed to hurt a bit.
override_key - After a 7 second channel time you can emag a borg
spell_handler - The base class for the handler systems spells use.
+Subtypes of this class can be added to spells to modify their behaviour and change their can_cast.
+Thus allowing for a more modular behaviour system. For example a vampire spell that jaunts can just add the vampire spell_handler to the jaunt spell
spell_targeting - The base class for the targeting systems spells use.
alive_mob_list - Will find targets in the GLOB.alive_mob_list. The result will be in a random order
aoe - An area of effect based spell targeting system. Will return all targets in the given range
click - A click based spell targeting system. The clicked atom will be used to determine who/what to target
clicked_atom - A simple spell targeting system. Will return the clicked atom as a target. Only works for 1 target max and is basically a dumbed down /datum/spell_targeting/click
matter_eater - A spell targeting system especially made for the matter eater gene
reachable_turfs - A spell targeting system which will return nearby turfs which are reachable from the users location. Will pad the targets with the user's location if needed
remoteview - A spell targeting system which will return one user picked target from all alive mobs who have the remoteview block but do not have the psyresist block active.
self - A spell targeting system which will return the caster as target
spiral - Gets a list of turfs around the center atom to scramble.
targeted - A spell targeting system which is able to select 1 to many targets in range/view of the caster. Has a random mode, distance from user based mode or a user input mode.
telepathic - A spell targeting system which will allow the user to select a target from nearby living mobs. The name will be "Unknown entity" if the user can not see them
sprite_accessory
body_markings
head
tajara
muzzle_alt_taj - Companion marking for Tajaran Belly 2.
patchy_taj - Companion marking for Tajaran Patches.
points_taj - Companion marking for Tajaran Points.
unathi
banded_una - Companion marking for Unathi Banded.
points_una - Companion marking for Unathi Points.
sharp/snout_narrow_una_sharp - Companion marking for Unathi Narrow Belly.
snout_narrow_una - Companion marking for Unathi Narrow Belly.
vulpkanin
muzzle_ears_vulp - Companion marking for Vulpkanin Belly Alt..
muzzle_vulp - Companion marking for Vulpkanin Belly Alt..
points_fade_vulp - Companion marking for Vulpkanin Points Fade.
points_sharp_vulp - Companion marking for Vulpkanin Points Sharp.
tail
shared/short_tip - Species-ambiguous, generic short tail.
tajara/taj_wingler_stripes - Tiger stripes.
tattoo - Tattoos applied post-round startup with tattoo guns in item_defines.dm
tiger_body - Yep, this is repeated. To be fixed later
crusher_damage - tracks the damage dealt to this mob by kinetic crushers
cultghost - is a cult ghost and can't use manifest runes, can see ghosts and dies if too far from summoner
cursed - Status effect that gives the target miscellanous debuffs while throwing a status alert and causing them to smoke from the damage they're incurring.
+Purposebuilt for cursed slot machines.
stun/goliath_tentacled - Goliath tentacle stun with special removal conditions
limited_bonus - A status effect that can have a certain amount of "bonus" duration added, which extends the duration every tick,
+although there is a maximum amount of bonus time that can be active at any given time.
moon_converted - Used by moon heretics to make people mad
Offering Item status effect - Status effect given to mobs after they've offered an item to another player using the Give Item action (/datum/click_intercept/give).
protective_blades - Summons multiple foating knives around the owner.
+Each knife will block an attack straight up.
recharging - A subtype that doesn't self-delete / disappear when all blades are gone
+It instead regenerates over time back to the max after blades are consumed
shadow_cloak - Shadow cloak effect. Conceals the owner in a cloud of purple smoke, making them unidentifiable.
+Also comes with some other buffs and debuffs - faster movespeed, slower actionspeed, etc.
Transient Status Effect (basetype) - A status effect that works off a (possibly decimal) counter before expiring, rather than a specified world.time.
+This allows for a more precise tweaking of status durations at runtime (e.g. paralysis).
Confusion - Prevents moving straight, sometimes changing movement direction at random.
+Decays at a rate of 1 per second.
Dizziness - Slightly offsets the client's screen randomly every tick.
+Decays at a rate of 1 per second, or 5 when resting.
Drowsiness - Slows down and causes eye blur, with a 5% chance of falling asleep for a short time.
+Decays at a rate of 1 per second, or 5 when resting.
Drukenness - Causes a myriad of status effects and other afflictions the stronger it is.
+Decays at a rate of 1 per second if no alcohol remains inside.
abstract - Abstract supply packs that don't contain any goods, but instead represent purchases that cargo can make.
+A supply pack that does not contain physical objects, but instead fires some sort of callback when ordered.
admin_notify - A sample supply pack that notifies admins when it is purchased, but provides no items.
donations - Simple supply pack for easy admin modification
shuttle - A "supply pack" that allows for purchasing a custom shuttle.
emergency - Section header - use these to set default supply group and crate type for sections
engineering/tools - the most robust crate
misc
boxing - For non log spamming cargo brawls!
formalwear - This is a very classy crate.
janitor - Janitor Supplies
paper - Paper Work
polo - For space polo! Or horsehead Quiditch
randomised/ingredients - its a bit hacky...
servicecostume - Costumes
teamcolors - For team sports like space polo
organic
cow - livestock
hydroponics - /// hippy gear
+-- Skie
security
armory - Armory stuff
ballistic - Weapons: Specialist
epistol - costs 3/5ths of the normal e-guns for 3/4ths the total ammo, making it cheaper to arm more people, but less convient for any one person
mindshield - Implants & etc
riothelmets - Armor: Specialist
baton - Weapons: Basic
helmets - Armor: Basic
lowinquisitor - Has a bunch of neat equipment for Skulk Officers, do note only Skkulakin can use these items
officerpack - Starter pack for an officer. Contains everything in a locker but backpack (officer already start with one). Convenient way to equip new officer on highpop.
intermediate - A partial surgery that consists of a few steps that may be found in the middle of another operation.
+An existing surgery can yield to an intermediate surgery for a few steps by way of a proxy surgery_step.
proxy - Here's the special sauce: a surgery step that can pretend to be a few different surgery steps.
+These proxy steps will, depending on the tool that's used, either continue to the next surgery step, or temporarily spin off a new surgery
+by adding new steps to the current surgery.
ib - Mend IB without healing bones
manipulate_organs - The surgery step to trigger this whole situation
open_organ - Proxy surgery step to allow healing bleeding, bones, and burns.
+Should be added into surgeries just after the first three standard steps.
extra - Surgeries for tending brute and burn damage without needing to expend items.
Syndicate Contract - Describes a contract that can be completed by a Contractor.
targeting_strategy - Datum for basic mobs to define what they can attack.
+Global, just like ai_behaviors.
+Meant to be subtyped into different kinds of targeting strategies.
not_friends - Don't target an atom in our friends list (or turfs), anything else is fair game
allow_items - Subtype that allows us to target items while deftly avoiding attacking our allies. Be careful when it comes to targeting items as an AI could get trapped targeting something it can't destroy.
of_size - Subtype which searches for mobs of a size relative to ours
lightgeist - Attack only mobs who have damage that we can heal, I think this is specific enough not to be a generic type
field - See https://discord.com/developers/docs/resources/channel#embed-object-embed-field-structure for details. Must have name and value set in New().
footer - See https://discord.com/developers/docs/resources/channel#embed-object-embed-footer-structure for details.
media - Common datum for similar discord embed medias.
provider - See https://discord.com/developers/docs/resources/channel#embed-object-embed-provider-structure for details.
author - See https://discord.com/developers/docs/resources/channel#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/channel#embed-object-embed-structure for details.
tgui_input_keycombo - Datum used for instantiating and using a TGUI-controlled key input that prompts the user with
+a message and listens for key presses.
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.
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
tgui_list_input/ranked - Datum used for allowing a user to sort a TGUI-controlled list input that prompts the user with
+a message and shows a list of rankable options
tgui_list_input/ranked - Datum used for allowing a user to sort a TGUI-controlled list input that prompts the user with
+a message and shows a list of rankable options
tgui_panel - Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
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 - Copyright (c) 2020 Aleksej Komarov
+SPDX-License-Identifier: MIT
bio_chips/uplink - Nukies get Nuclear Uplink Bio-chip instead
device_tools/thermal_drill - Nukies get Diamond Tipped Thermal Safe Drill instead
special - This uplink catagory is for uplink items avalible by special circumstances. Think station traits, or if some event rolling in a round gave traitors special items, or an objective.
stealthy_weapons/combat_minus - Nukies get combat gloves plus instead
user_verb - This is the user verb datum. It is used to store the verb's information and handle the verb's functionality.
+All of this is setup for you, and you should not be defining this manually.
+That means you reader.
admin_observe - Allow an admin to observe someone.
+mentors are allowed to use this verb while living, but with some stipulations:
+if they attempt to do anything that would stop their orbit, they will immediately be returned to their body.
admin_pm_by_key_panel - Shows a list of clients we could send PMs to, then forwards our choice to cmd_admin_pm.
admin_pm_panel - Shows a list of clients we could send PMs to, then forwards our choice to cmd_admin_pm.
admin_pm_target - Allows right clicking mobs to send an admin PM to their client.
+Forwards the selected mob's client to cmd_admin_pm.
ccbdb_lookup_ckey - Just a simple verb so admins can do manual lookups
check_player_exp - Allows admins to determine who the newer players are.
get_server_logs - Allows download of past server logs saved within the data/logs/ folder.
get_server_logs_by_round_id - Allows download of past server logs saved within the data/logs/ folder by specifying a specific round ID.
respawn_character - If a guy was gibbed and you want to revive him, this is a good way to do so.
+Works kind of like entering the game with a new character. Character
+receives a new mind if they didn't have one. Traitors and the like can also
+be revived with the previous role mostly intact.
voice_of_god_command - Voice of god command datums that are used in [/proc/voice_of_god()]
attract - This command throws the listeners at the user.
bleed - This command makes carbon listeners bleed from a random body part.
brute - This command applies 15 points of brute damage to the listeners. There's subtle theological irony in this being more powerful than healing.
burn - This command sets the listeners ablaze.
emote - Supertype of all those commands that make people emote and nothing else. Fuck copypasta.
getup - This command forces the listeners to get the fuck up, resetting all stuns.
hallucinate - This command makes the listeners see others as corgis, carps, skellies etcetera etcetera.
heal - This command heals the listeners for 10 points of total damage.
honk - This command plays a bikehorn sound after 2 seconds and a half have passed, and also slips listeners if the user is a clown.
jump - This command forces the listener to do the jump emote 3/4 of the times or reply "HOW HIGH?!!".
knock_knock - This command forces the listeners to say "Who's there?".
move - This command forces the listeners to take step in a direction chosen by the user, otherwise a random cardinal one.
multispin - This command spins the listeners 1800° degrees clockwise.
repulse - This command throws the listeners away from the user.
run - This command forces the listeners to switch to run intent.
say_my_name - This command forces the listeners to say the user's name
silence - This command silences the listeners. Thrice as effective is the user is a mime or curator.
sit - This command forces each listener to buckle to a chair found on the same tile.
stand - This command forces each listener to unbuckle from whatever they are buckled to.
state_laws - This command forces silicon listeners to state all their laws.
throw_catch - This command turns the listeners' throw mode on.
wake_up - This command wakes up the listeners.
walk - This command forces the listeners to switch to walk intent.
who_are_you - This command forces the listeners to say their true name (so masks and hoods won't help).
+Basic and simple mobs who are forced to state their name and don't have one already will... reveal their actual one!
camera/eye - Camera eyes are remote-control mobs that can move and see throughout the global cameranet.
+They're used in AI eyes, holograms, advanced camera consoles, abductor consoles, shuttle consoles,
+and xenobiology consoles. When created, the user with which they are initialized will be granted control,
+and their movements will be relayed to the camera eye instead. When destroyed, the user's control of the
+camera eye will be released; if they were previously remote controlling another object (such as another
+camera eye) then they will be put back in control of that object; otherwise they will return to their body.
Basic Mob - Basic mobs are a modern replacement for the simple_animal/"simple mob"
+system. Rather than deep type trees with overrides for AI, basic mobs rely
+on their AI controllers for the majority of their behavior.
Goliath Broodmother - A stronger, faster variation of the goliath. Has the ability to spawn baby goliaths, which it can later detonate at will.
+When it's health is below half, tendrils will spawn randomly around it. When it is below a quarter of health, this effect is doubled.
+It's attacks are as follows:
Herald - A slow-moving projectile user with a few tricks up it's sleeve. Less unga-bunga than Colossus, with more cleverness in it's fighting style.
+As it's health gets lower, the amount of projectiles fired per-attack increases.
+It's attacks are as follows:
Legionnaire - A towering skeleton, embodying the power of Legion.
+As it's health gets lower, the head does more damage.
+It's attacks are as follows:
Pandora - A box with a similar design to the Hierophant which trades large, single attacks for more frequent smaller ones.
+As it's health gets lower, the time between it's attacks decrease.
+It's attacks are as follows:
The abstract object - This is an object that is intended to able to be placed, but that is completely invisible.
+The object should be immune to all forms of damage, or things that can delete it, such as the singularity, or explosions.
chasm_storage - An abstract object which is basically just a bag that the chasm puts people inside
particle_holder - These effects can be added to anything to hold particles, which is useful because Byond only allows a single particle per atom
Hallucination - Base object for hallucinations. Contains basic behaviour to display an icon only to the target.
Hallucination - Abduction - Sends an abductor agent after the target. On knockdown, spawns an abductor scientist next to the target. Nothing else happens.
Hallucination - Assault - An imaginary attacker spawns close to the target and attacks them to stamcrit.
Hallucination - Fake Grenade Flashbang - A random grenade is thrown near the target from offscreen.
+The target will get flashbanged on 'detonation' if too close.
Hallucination - Fake Grenade Spawner - A random grenade is thrown near the target from offscreen.
+A space carp will spawn on the grenade upon 'detonation'.
Hallucination - Fake Health - Visually changes the target's health status to something it shouldn't be.
Hallucination - Fake Item - Displays a random fake item around the target. If it's on the floor and they try to pick it up, they will trip and fall.
Hallucination - Loose Energy Ball - A progressive hallucination that begins with intermittent explosions, before displaying an energy ball that shocks the target.
no_delete - Subtype that doesn't delete itself.
+Mostly used for hallucination managers because they delete the hallucinations when required
map_effect/dynamic_airlock - A mapping helper that defines the zone of a dynamically arranged airlock
+chamber. This can be used as an alternative to
+/obj/effect/spawner/airlocks.
door - A helper used to indicate what doors are connected to an airlock zone. Comes
+in interior and exterior variants as subtypes.
dynamic_bridge - A spawner for dynamic bridges, largely with hardcoded expectations to be
+operating on Lavaland.
grouped_spawner - Can be used to group spawners together so you ensure a certain amount of things are spawned but can be spawned on multiple locations.
disabler/cyborg - seperate balancing for cyborg, again
emitter/cyborg/proto - needed a slightly weaker ranged option to give to Safety Overriden borgs. The fire rate is about the same as an emitter if you put it on the ground.
laser/cyborg - to balance cyborg energy cost seperately
Standard Book - Game Object which stores pages of text usually written by players, has other editable information such as the book's
+title, author, summary, and categories. Has other values that are generated when books are acquired through the library
+computer.
MANUALS (BOOKS) - These are "programmatic books," that is books that are hard-coded into the game. Just for the sake of maintainability, keep
+information subject to change (as in likely to change SOON) out of the non-wiki manuals as they require PRs to change
+and it is not an author's responsbility to update manuals if they change a mechanic/recipe/feature referenced in one of them
+Don't worry about adding them to the library, as long as they're one of these types it is automatically added.
Wiki Page Based Book Manuals - These are programmatic books that source its pages / "content" straight from the wiki
+That means that this content can ONLY be changed by editing the wiki
+Space Law and SOP Manuals can only be edited by Wiki Admins
adaptive - Purchased by Syndicate agents, these cutouts are indistinguishable from normal cutouts but aren't discolored when their appearance is changed
anticcw_armor_booster - ///////////////////////// ARMOR BOOSTER MODULES //////////////////////////////////////////////////////////
+what is that noise? A BAWWW from TK mutants.
mod - MODsuits, trade-off between armor and utility
armor
mod_theme_administrative - considering this should not be used, it's getting just DS armor, not infinity in everything.
mod_theme_responsory - This has no slowdown active, and no variation between levels. I am ASSUMING this will be gamma only.
construction/plating
advanced - This may be a bad idea. I think this is an interesting idea. And you still need robotics to build it, and traders can charge as much for it as they want. Also with ones like the CE modsuit, it is the flagship mod. That means it is sold a lot.
rescue - I want to add a way to get the rarer modsuit types, that is limited. A low chance for traders to have plating for it seems interesting
research - Don't think people will want the RD one though, it is as slow as shit. Anyway, here it is. Surely this will not end poorly.
safeguard - Continued from above, none of these are steal objectives, and only the CE or RD one comes pre-installed with modules. You are getting the protection / speed / looks of these hardsuits, but no special modules.
inquisitory - Diffrent look, as well as magic proof. It's perfect for inqusitors. Or if you want to give your ERT a fancy look. At this time, the other ones are unused, and frankly I don't like the idea of antimagic gamma.
vortex_shotgun - Vortex arm mounted shotgun. Fucks up reality in front of it, very power draining. Compeating with the vortex arm and stealth armor after all
anti_magic - Magic Nullifier - Protects you from magic.
armor_booster - Armor Booster - Grants your suit more armor and speed in exchange for EVA protection. Also acts as a welding screen.
saltshaker - Seperate from above since it's a small shaker rather then
cooking - Cooking containers are used in ovens, fryers and so on, to hold multiple
+ingredients for a recipe. They interact with the cooking process, and link
+up with the cooking code dynamically. Originally sourced from the Aurora,
+heavily retooled to actually work with PCWJ Holder for a portion of an
+incomplete meal, allows a cook to temporarily offload recipes to work on
+things factory-style, eliminating the need for 20 plates to get things done
+fast.
drinks - Drinks.
bottle - Alchohol bottles! -Agouri
molotov - MOLOTOV
orangejuice - JUICES AND STUFF
coffee - Drinks
shaker - drinkingglass and shaker
trophy - Drinks. END
bronze_cup/toolbox_win - 2023 toolbox tournament 3rd place went to paradise station.
dark_reprise - Revives anyone nearby, but turns them into shadowpeople and renders them uncloneable, so the crystal is your only hope of getting up again if you go down.
emitter - Generates a projectile when interacted with
helpers - Lets ghost spawn as helpful creatures that can only heal people slightly. Incredibly fragile and they can't converse with humans
possessor - Allows you to bodyjack small animals, then exit them at your leisure, but you can only do this once per activation. Because they blow up. Also, if the bodyjacked animal dies, SO DO YOU.
theme_warp - Warps the area you're in to look like a new one
security - The root type of all camera consoles. When used, these open a UI that has a left-hand sidebar
+displaying a list of active cameras in the console's assigned camera network. The bulk of the window
+on the right hand side displays a camera feed of the selected camera. This feed will attempt to refresh
+every time process() is called by SSobj as long as there are active watchers, living or dead.
hatch/syndicate/command/trapped - This door is used in the malf AI telecomms ruin. This door starts early access, and will try to crush someone to death who enters it's turf like how an AI door crushes.
spawner - Special case so spawners with doors autorotate, otherwise identicle
economy - Base machine type for machinery that needs to interact with users spending Space Cash or credit from Money Accounts
+has helper procs to automate account authentification and handling transactions.
cigarette/beach - Used in the lavaland_biodome_beach.dmm ruin. As the ultimate in smokable vending, it sells the widest range in the grestest quantity.
exterior - Exterior lights use the powernet of the wall they're installed on,
+not the tile they're placed on. This allows them to be in a different
+area than the area that powers them, making it possible to have a light
+"outside" a structure that shares its power state.
Small light fixture - The smaller light bulb fixture
food/chef - The Chefs smartfridge. This smartfridge will spawn with a random condiment, then 3 stacks of 3 plants (or fish meat) to give chef some extra starting variety, or new ideas on what to cook!
Food and Drink Cart - Variant of the Smart Fridge that holds food and drinks in a mobile form
Refrigerated Medicine Storage - Medical variant of the Smart Fridge.
Secure Fridge - Secure variant of the Smart Fridge.
+Can be emagged and EMP'd to short the lock.
Smart Chemical Storage - Secure, Chemistry variant of the Smart Fridge.
Smart Chemical Storage (Preloaded) - A Smart Chemical Storage but with some items already in.
Prisoner Belongings Closet - Cannot be opened. Contains the belongings of all kidnapped targets.
+Any item added inside stops processing and starts again when removed.
quartermaster/lavaland - used in mining outpost
statue - this type path is a crime, ponies what the fuck
jungle/no_creep - This vairant shows up under normal turfs so fits in the regular 32x32 sprite
no_creep - This vairant shows up under normal turfs so fits in the regular 32x32 sprite
indestructible/boss - you put stone tiles on this and use it as a base
lava - Lava turf, burns things that are on it.
+Currently a subtype of floor so that footsteps work on it.
+Perhaps we could move it down to /turf/simulated/lava someday, as I dont think footsteps over lava are very important.
lava_land_surface - Surface. The surface is warm, but survivable without a suit. Internals are required. The floors break to chasms, which drop you into the underground.
false_asteroid - Used in situations like the anomalous crystal where we want
+floors that look and act like asteroid floors but aren't.
+This doesn't allow you to dig sand out of it but whatever.
\ No newline at end of file
diff --git a/matrix.html b/matrix.html
new file mode 100644
index 00000000000..fcebd38857d
--- /dev/null
+++ b/matrix.html
@@ -0,0 +1,5 @@
+/matrix - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/mob.html b/mob.html
new file mode 100644
index 00000000000..541dc806e89
--- /dev/null
+++ b/mob.html
@@ -0,0 +1,190 @@
+/mob - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The current client inhabiting this mob. Managed by login/logout
+This exists so we can do cleanup in logout for occasions where a client was transfere rather then destroyed
+We need to do this because the mob on logout never actually has a reference to client
+We also need to clear this var/do other cleanup in client/Destroy, since that happens before logout
Forces the mob to contract a virus. If the mob can have viruses. Ignores clothing and other protection
+Returns TRUE if it succeeds. False if it doesn't
Cleanup proc that's called when a mob loses a client, either through client destroy or logout
+Logout happens post client del, so we can't just copypaste this there. This keeps things clean and consistent
Propogates ourselves through our nested contents, similar to other important_recursive_contents procs
+Main difference is that client contents need to possibly duplicate recursive contents for the clients mob AND its eye
Finds a target near a mob that is viable for pushing off when moving.
+Takes the intended movement direction as input, alongside if the context is checking if we're allowed to continue drifting
Returns an assoc list which contains the mobs in range and their "visible" name.
+Mobs out of view but in range will be listed as unknown. Else they will have their visible name
Takes in an associated list (key /datum/action typepaths, value is the AI
+blackboard key) and handles granting the action and adding it to the mob's
+AI controller blackboard. This is only useful in instances where you don't
+want to store the reference to the action on a variable on the mob. You can
+set the value to null if you don't want to add it to the blackboard (like in
+player controlled instances). Is also safe with null AI controllers. Assumes
+that the action will be initialized and held in the mob itself, which is
+typically standard.
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:
Signal proc for COMSIG_MOB_GRANTED_ACTION - If we're viewing another mob's action buttons,
+we need to update with any newly added buttons granted to the mob.
possibly delayed verb that finishes the pointing process starting in [/mob/verb/pointed()].
+either called immediately or in the tick after pointed() was called, as per the [DEFAULT_QUEUE_OR_CALL_VERB()] macro
Proc to create or update an alert. Returns the alert if the alert is new or updated, 0 if it was thrown already.
+Each mob may only have one alert per category.
Get a list of all emote keys usable by the current mob.
Var Details
active_mutations
List of the active mutation types
alerts
lazy list. contains /atom/movable/screen/alert only, On /mob so clientless mobs will throw alerts properly
audio_emote_cd_status
Cooldown on audio effects from emotes.
audio_emote_unintentional_cd_status
Cooldown on audio effects from unintentional emotes.
blood_state
Weirdly named, effects how blood transfers onto objects
bloody_feet
Assoc list for tracking how "bloody" a mobs feet are, used for creating bloody foot/shoeprints on turfs when moving
bloody_hands
Makes items bloody if you touch them
buckled
movable atoms buckled to this mob
canon_client
The current client inhabiting this mob. Managed by login/logout
+This exists so we can do cleanup in logout for occasions where a client was transfere rather then destroyed
+We need to do this because the mob on logout never actually has a reference to client
+We also need to clear this var/do other cleanup in client/Destroy, since that happens before logout
click_interceptor
Allows a datum to intercept all click calls this mob is the source of.
+This is not necessarily an instance of /datum/click_intercept.
do_afters
For storing what do_after's something has, key = string, value = amount of interactions of that type happening.
emote_cooldown_override
Override for cooldowns on non-audio emotes. Should be a number in deciseconds.
emotes_used
Tracks last uses of emotes for cooldown purposes
feet_blood_DNA
Basically a lazy list, copies the DNA of blood you step in
feet_blood_color
affects the blood color of your feet, color taken from the blood you step in
gunshot_residue
gunshot residue for det work. holds the caliber of any BALLISTIC weapon fired by this mob without gloves.
hand
True for left hand active, otherwise for right hand active
health_hud_override
Overrides the health HUD element state if set.
hud_type
The type of HUD that this mob uses. Not to
hud_used
The instantiated version of the mob's hud.
input_focus
The datum receiving keyboard input. parent mob by default.
last_movement_dir
The direction they last moved
last_typed
Last thing we typed in to the typing indicator, probably does not need to exist
last_typed_time
Last time we typed something in to the typing popup
memory
other mobs we wont move when we're grab pulled. Not empty only when being grab pulled
next_click
This is mainly modified by click code, to modify click delays elsewhere, use next_move and changeNext_move(), Controls the click delay. Changed with
next_click_adjust
Unused
next_click_modifier
Unused
next_move_adjust
Unused, used to adjust our next move on a linar skill world.time + (how_many_deciseconds + Next move adjust) = Next move
next_move_modifier
Value to multiply action delays by, actually used world.time + (how_many_deciseconds * Next move Adjust) = Next move
observers
List of observers currently observing us.
open_uis
Tracks the open UIs that a mob has, used in TGUI for various things, such as updating UIs
runechat_msg_location
A soft reference to the location where this mob's runechat message will appear. Uses UID().
s_active
Active storage container
screens
Used for some screen objects
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)
speaks_ooc
Does this mob speak OOC?
+Controls whether they can say some symbols.
stat
Is this mob alive, unconscious or dead?
suiciding
Is our mob currently suiciding? Used for suicide code along with many different revival checks
tgui_open_uis
global
+
Tracks open UIs for a user.
thinking
Affects if you have a thinking indicator
typing
Affects if you have a typing indicator
wear_mask
The currently worn mask
zone_selected
The zone this mob is currently targeting
Proc Details
AddDisease
Directly adds a disease to a mob.
ForceContractDisease
Forces the mob to contract a virus. If the mob can have viruses. Ignores clothing and other protection
+Returns TRUE if it succeeds. False if it doesn't
+
Arguments:
+
+
D - the disease the mob will try to contract
+
respect_carrier - if set to TRUE will not ignore the disease carrier flag
+
notify_ghosts - will notify ghosts of infection if set to TRUE
+
HasDisease
Returns whether or not the mob has the disease
Process_Spacemove
Handles mob/living movement in space (or no gravity)
+
Called by /client/Move()
+
return TRUE for movement or FALSE for none
add_quirk_to_save
Mob Procs, mostly for many mob/new_player in the lobby screen
adjust_disgust
Adjust the disgust level of a mob
adjust_nutrition
Adjust the nutrition of a mob
become_mouse
Returns true if the player successfully becomes a mouse
become_uncliented
Cleanup proc that's called when a mob loses a client, either through client destroy or logout
+Logout happens post client del, so we can't just copypaste this there. This keeps things clean and consistent
broadcast_examine
Tells nearby mobs about our examination.
buckle_mob
Buckle to another mob
+
You can buckle on mobs if you're next to them since most are dense
+
Turns you to face the other mob too
can_block_magic
Checks to see if the mob can block magic
+
args:
+
+
casted_magic_flags (optional) A bitfield with the types of magic resistance being checked (see flags at: /datum/component/anti_magic)
+
charge_cost (optional) The cost of charge to block a spell that will be subtracted from the protection used
+
can_buckle
can the mob be buckled to something by default?
can_cast_magic
Checks to see if the mob can cast normal magic spells.
+
args:
+
+
magic_flags (optional) A bitfield with the type of magic being cast (see flags at: /datum/component/anti_magic)
+
can_contract_disease
Checks if a mob can contract the disease
can_resist
Can this mob resist (default FALSE)
can_unbuckle
can the mob be unbuckled from something by default?
can_use_audio_emote
Helper proc to determine if a mob can use emotes that make sound or not.
can_use_clickbinds
Can this mob use keybinded click actions? (Altclick, Ctrlclick, ect)
clear_important_client_contents
Clears the clients channel of this mob
compressor_grind
Grinds a mob in the turbine
create_chat_message
Creates a message overlay at a defined location for a given speaker
+
Arguments:
+
+
speaker - The atom who is saying this message
+
raw_message - The text content of the message
+
italics - Vacuum and other things
+
size - Size of the message
+
symbol - The symbol type of the message
+
custom_emote
Perform a custom emote.
+
+
m_type: Type of message to send.
+
message: Content of the message. If none is provided, the user will be prompted to choose the input.
+
intentional: Whether or not the user intendeded to perform the emote.
+
drop_item_to_ground
Unequip target and drop it at our current location.
+
Returns FALSE if the unequip failed, and target if it succeeded. Returns
+FALSE if there is no target to drop. If the caller cares about handling the
+resultant dropped object, they are responsible for ensuring that the thing
+actually exists. This is to ensure that the return value is meaningful and that
+a nonexistant item being unequipped and returning null is not interpreted as
+a failure.
+
However, if you don't care about the return value, feel free to pass in possibly
+nonexistant objects, such as when dropping anything in a slot for a spell/virus
+that replaces existing clothing.
emote
Send an emote.
+
+
emote_key: Key of the emote being triggered
+
m_type: Type of the emote, like EMOTE_AUDIBLE. If this is not null, the default type of the emote will be overridden.
+
message: Custom parameter for the emote. This should be used if you want to pass something like a target programmatically.
+
intentional: Whether or not the emote was deliberately triggered by the mob. If true, it's forced, which skips some checks when calling the emote.
+
force_silence: If true, unusable/nonexistent emotes will not notify the user.
+
enable_client_mobs_in_contents
Propogates ourselves through our nested contents, similar to other important_recursive_contents procs
+Main difference is that client contents need to possibly duplicate recursive contents for the clients mob AND its eye
flash_screen_color
Flash up a color as an overlay on a player's screen, then fade back to normal.
+
Arguments:
+
+
flash_color - The color to overlay on the screen.
+
flash_time - The time it takes for the color to fade back to normal.
+
get_empty_held_indexes
Returns a number corresponding to an open hand, or null if no open hands.
get_mob_buckling_height
returns the height in pixel the mob should have when buckled to another mob.
get_random_valid_zone
[/proc/ran_zone] but only returns bodyzones that the mob actually has.
+
+
+
blacklisted_parts allows you to specify zones that will not be chosen.
+e.g.: list(BODY_ZONE_CHEST, BODY_ZONE_R_LEG). Blacklisting
+BODY_ZONE_CHEST is really risky since it's the only bodypart guaranteed
+to always exist. Only do that if you're certain they have limbs, otherwise
+we'll crash!
+
+
+
[/proc/ran_zone] has a base prob(80) to return the base_zone (or if null,
+BODY_ZONE_CHEST) vs something in our generated list of limbs. This
+probability is overriden when either blacklisted_parts contains
+BODY_ZONE_CHEST and we aren't passed a base_zone (since the default
+fallback for ran_zone would be the chest in that scenario), or if
+even_weights is enabled. You can also manually adjust this probability by
+altering base_probability.
+
+
+
even_weights - ran_zone has a 40% chance (after the prob(80) mentioned
+above) of picking a limb, vs the torso & head which have an additional 10%
+chance. Setting even_weights to TRUE will make it just a straight up pick()
+between all possible bodyparts.
+
+
get_spacemove_backup
Finds a target near a mob that is viable for pushing off when moving.
+Takes the intended movement direction as input, alongside if the context is checking if we're allowed to continue drifting
get_telepathic_targets
Returns an assoc list which contains the mobs in range and their "visible" name.
+Mobs out of view but in range will be listed as unknown. Else they will have their visible name
ghost_can_reenter
Checks if a mob's ghost can reenter their body or not. Used to check for DNR or AntagHUD.
+
Returns FALSE if there is a ghost, and it can't reenter the body. Returns TRUE otherwise.
grant_actions_by_list
Takes in an associated list (key /datum/action typepaths, value is the AI
+blackboard key) and handles granting the action and adding it to the mob's
+AI controller blackboard. This is only useful in instances where you don't
+want to store the reference to the action on a variable on the mob. You can
+set the value to null if you don't want to add it to the blackboard (like in
+player controlled instances). Is also safe with null AI controllers. Assumes
+that the action will be initialized and held in the mob itself, which is
+typically standard.
held_items
Returns a list of items being held
hide_other_mob_action_buttons
Hide another mob's action buttons from this mob
+
Used for observers viewing another mob's screen
is_holding
Check if an item is in one of our hands
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.
on_block_magic_effects
Called whenever a magic effect with a charge cost is blocked and we haven't recently blocked magic.
on_observing_action_granted
Signal proc for COMSIG_MOB_GRANTED_ACTION - If we're viewing another mob's action buttons,
+we need to update with any newly added buttons granted to the mob.
on_observing_action_removed
Signal proc for COMSIG_MOB_REMOVED_ACTION - If we're viewing another mob's action buttons,
+we need to update with any removed buttons from the mob.
pointed
Point at an atom
+
mob verbs are faster than object verbs. See
+this byond forum post
+for why this isn't atom/verb/pointed()
+
note: ghosts can point, this is intended
+
visible_message will handle invisibility properly
+
overridden here and in /mob/dead/observer for different point span classes and sanity checks
post_buckle_mob
Call back post buckle to a mob to offset your visual height
post_unbuckle_mob
Call back post unbuckle from a mob, (reset your visual height here)
remove_quirk_from_save
Returns true if a quirk was removed, false otherwise
run_mode
proc version to finish /mob/verb/mode() execution. used in case the proc needs to be queued for the tick after its first called
run_pointed
possibly delayed verb that finishes the pointing process starting in [/mob/verb/pointed()].
+either called immediately or in the tick after pointed() was called, as per the [DEFAULT_QUEUE_OR_CALL_VERB()] macro
run_quick_equip
proc extender of [/mob/verb/quick_equip] used to make the verb queuable if the server is overloaded
say_understands
Checks if the mob can understand the other speaker
+
If it return FALSE, then the message will have some letters replaced with stars from the heard message
set_invisible
Proc to PROPERLY set mob invisibility, huds gotta get set too!
set_nutrition
Force set the mob nutrition
set_thinking_indicator
Toggles the floating thought bubble above a players head.
+
Arguments:
+
+
state - Should a thought bubble be shown or hidden
+
set_typing_indicator
Toggles the floating chat bubble above a players head.
+
Arguments:
+
+
state - Should a chat bubble be shown or hidden
+
me - Is the bubble being caused by the 'me' emote command
+
shared_ui_interaction
public
+
Standard interaction/sanity checks. Different mob types may have overrides.
+
return UI_state The state of the UI.
show_other_mob_action_buttons
Show (most) of the another mob's action buttons to this mob
+
Used for observers viewing another mob's screen
show_rads
Show an overlay of radiation levels on radioactive objects.
shuttleRotate
Turf rotate procs
+
Mob rotate procs
special_get_hands_check
Specal proc for special mobs that use "hands" in weird ways
start_audio_emote_cooldown
Start the cooldown for an emote that plays audio.
+
Arguments:
+
+
intentional - Whether or not the user deliberately triggered this emote.
+
cooldown - The amount of time that should be waited before any other audio emote can fire.
+
tamed
Called after the atom is 'tamed' for type-specific operations, Usually called by the tameable component but also other things.
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.
+Each mob may only have one alert per category.
+
Arguments:
+
+
category - a text string corresponding to what type of alert it is
+
type - 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"
+
obj/new_master - optional argument. Sets the alert's icon state to "template" in the ui_style icons with the master as an overlay. Clicks are forwarded to master
+
no_anim - whether the alert should play a small sliding animation when created on the player's screen
+
icon_override - makes it so the alert is not replaced until cleared by a clear_alert with clear_override, and it's used for hallucinations.
+
list/alert_args - a list of arguments to pass to the alert when creating it
+
transfer_item_to
Unequip target and relocate it to destination.
+
Returns FALSE if the transfer failed for any reason, and TRUE if it succeeded.
unequip
Unequip target without relocating it.
+
Returns FALSE if the transfer failed for any reason, and TRUE if it succeeded.
+
A destination cannot be specified; you must either forceMove or qdel it.
+If you intend to qdel it immediately, it is not necessary to call this;
+[/obj/item/proc/Destroy] will perform the necessary unequipping.
destination: The location the object should be unequipped to, if applicable.
+
force: Override NODROP for things like wizarditis and admin undress.
+
silent: Whether the unequip should play a sound.
+
drop_inventory: Whether items in the dropped item's slots (such as uniform pockets) should be dropped.
+
no_move: Whether we should attempt to move the item to destination or expect the caller to.
+
update_runechat_msg_location
Updates the mob's runechat maptext display location.
+
By default, we set this to the src mob's UID().
usable_emote_keys
Get a list of all emote keys usable by the current mob.
+
+
intentional_use: Whether or not to check based on if the action was intentional.
+
\ No newline at end of file
diff --git a/mob/camera/eye.html b/mob/camera/eye.html
new file mode 100644
index 00000000000..bcbea466c00
--- /dev/null
+++ b/mob/camera/eye.html
@@ -0,0 +1,8 @@
+/mob/camera/eye - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
eye
Camera eyes are remote-control mobs that can move and see throughout the global cameranet.
+They're used in AI eyes, holograms, advanced camera consoles, abductor consoles, shuttle consoles,
+and xenobiology consoles. When created, the user with which they are initialized will be granted control,
+and their movements will be relayed to the camera eye instead. When destroyed, the user's control of the
+camera eye will be released; if they were previously remote controlling another object (such as another
+camera eye) then they will be put back in control of that object; otherwise they will return to their body.
Validates that there is an active cameranet. If strict is 0, does nothing.
+Returns 1 if there is an active cameranet. Warns the user and returns 0 if there is not.
Var Details
acceleration
Toggles camera acceleration on or off.
acceleration_rate
The amount that sprint is increased per move
ai_detector_visible
Toggles whether this eye is detectable by AI Detectors.
cooldown
The absolute time that sprint will reset to its initial value
cooldown_rate
The time after which sprint should be reset to its initial state, if no movements are made
max_sprint
The maximum sprint value - this caps acceleration
networks
The list of cameranets that this camera eye can see and access.
origin
The object that created the eye.
relay_speech
If true, speech near the camera eye will be relayed to its controller.
sprint
Keeps track of acceleration - movement rate is 1 + round(sprint / sprint_threshold)
sprint_threshold
The minimum sprint needed to increase base velocity
static_visibility_range
Sets the camera eye visibility range; does not expand viewport, only affects cameranet obscuring
user
The user controlling the eye.
user_image
The in-memory image of the camera eye's icon.
user_previous_remote_control
The thing that the user was previously remote controlling before this eye.
visible_camera_chunks
The list of camera chunks currently visible to the camera eye.
visible_icon
Toggles whether the eye's icon should be visible to its user.
Proc Details
Move
Disables independent movement by camera eyes; camera eyes must be controlled by relaymove.
first_active_camera
Returns the turf of the first active camera in the global cameranet.
get_viewer_client
Returns the user's client, if it exists; otherwise returns null.
give_control
Forces this eye's current user to release control, renames this eye, and grants new_user control of this eye.
hear_say
If relay_speech is truthy, allows the camera eye's user to hear speech spoken at the eye's location.
refresh_visible_icon
Refreshes user_image in the user's client.images.
relaymove
Called when the user controlling this eye attempts to move; uses camera acceleration settings.
release_chunks
Remove this eye from all chunks containing it.
release_control
Calls remove_images, changes the user's remote control from this camera eye to user_previous_remote_control.
remove_images
Removes obscured chunk images and user_images from the user's client.images.
rename_camera
Renames the camera eye (only visible in observer Orbit menu)
set_loc
Sets the camera eye's location to T, updates global cameranet visibility, and refreshes user_images.
update_visibility
Updates what the global cameranet can see with respect to this eye and its user's client.
validate_active_cameranet
Validates that there is an active cameranet. If strict is 0, does nothing.
+Returns 1 if there is an active cameranet. Warns the user and returns 0 if there is not.
\ No newline at end of file
diff --git a/mob/camera/eye/abductor.html b/mob/camera/eye/abductor.html
new file mode 100644
index 00000000000..ae646268585
--- /dev/null
+++ b/mob/camera/eye/abductor.html
@@ -0,0 +1 @@
+/mob/camera/eye/abductor - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/mob/camera/eye/ai.html b/mob/camera/eye/ai.html
new file mode 100644
index 00000000000..16ac7c33b37
--- /dev/null
+++ b/mob/camera/eye/ai.html
@@ -0,0 +1,5 @@
+/mob/camera/eye/ai - Space Station 13Space Station 13 - Modules - Types — Proc Details
Ensures that the user's perspective is on this eye (instead of, for example, a mech or hologram eye) and
+updates parallax
Proc Details
hear_say
Relays speech near the AI eye to the AI if the AI has surveillance, either from a malf module or a station trait
relaymove
Cancels the camera's follow target if tracking has stopped, and lights up nearby lights if the AI has
+"Toggle Camera Lights" enabled
set_loc
Ensures that the user's perspective is on this eye (instead of, for example, a mech or hologram eye) and
+updates parallax
\ No newline at end of file
diff --git a/mob/camera/eye/hologram.html b/mob/camera/eye/hologram.html
new file mode 100644
index 00000000000..3c0022b9426
--- /dev/null
+++ b/mob/camera/eye/hologram.html
@@ -0,0 +1,3 @@
+/mob/camera/eye/hologram - Space Station 13Space Station 13 - Modules - Types — Proc Details
Hologram movement copies the delays and diagonal delays of regular mob movement
+for crew, and for AI unless fast holograms are enabled
set_loc
Moves the associated hologram, and the previously controlled object (probably an AI eye), to the new location.
validate_active_cameranet
Requires the cameranet to be validated.
\ No newline at end of file
diff --git a/mob/camera/eye/shuttle_docker.html b/mob/camera/eye/shuttle_docker.html
new file mode 100644
index 00000000000..7097456cbd5
--- /dev/null
+++ b/mob/camera/eye/shuttle_docker.html
@@ -0,0 +1 @@
+/mob/camera/eye/shuttle_docker - Space Station 13Space Station 13 - Modules - Types — Proc Details
Prevents the shuttle docker eye from updating global cameranet chunks. Shuttle dockers don't use station cameras.
Proc Details
set_loc
Prevents moving the camera eye into the station, and updates the current location's landing spot validity.
update_visibility
Prevents the shuttle docker eye from updating global cameranet chunks. Shuttle dockers don't use station cameras.
\ No newline at end of file
diff --git a/mob/camera/eye/xenobio.html b/mob/camera/eye/xenobio.html
new file mode 100644
index 00000000000..ade675dd8a8
--- /dev/null
+++ b/mob/camera/eye/xenobio.html
@@ -0,0 +1 @@
+/mob/camera/eye/xenobio - Space Station 13Space Station 13 - Modules - Types — Proc Details
Prevents the camera eye from going outside of the xenobiology area
Proc Details
set_loc
Prevents the camera eye from going outside of the xenobiology area
\ No newline at end of file
diff --git a/mob/dead/observer.html b/mob/dead/observer.html
new file mode 100644
index 00000000000..fcab9903333
--- /dev/null
+++ b/mob/dead/observer.html
@@ -0,0 +1,10 @@
+/mob/dead/observer - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Check if a player has antag-hudded, and if so, if they can rejoin.
+Returns TRUE if the player can rejoin, and FALSE if the player is ineligible to rejoin.
+If allow_roundstart_observers is FALSE (TRUE by default), then any observers who were able to ahud due to joining roundstart will be excluded as well.
Defines from __DEFINES/hud.dm go here based on which huds the ghost has activated.
ghost_flags
Ghost flags. Being set on Initialize
ghost_orbit
Shape we orbit in. Other values are unused currently..
mob_observed
UID of the mob which we are currently observing
Proc Details
check_ahud_rejoin_eligibility
Check if a player has antag-hudded, and if so, if they can rejoin.
+Returns TRUE if the player can rejoin, and FALSE if the player is ineligible to rejoin.
+If allow_roundstart_observers is FALSE (TRUE by default), then any observers who were able to ahud due to joining roundstart will be excluded as well.
cleanup_observe
Clean up observing
toggle_all_huds_off
Toggles off all HUDs for the ghost player.
toggle_all_huds_on
Toggles on all HUDs for the ghost player.
+
Enables antag HUD only if the ghost belongs to an admin.
+
Arguments:
+
+
user - A reference to the ghost's old mob. This argument is required since src does not have a client at this point.
+
\ No newline at end of file
diff --git a/mob/living.html b/mob/living.html
new file mode 100644
index 00000000000..26f266f6055
--- /dev/null
+++ b/mob/living.html
@@ -0,0 +1,72 @@
+/mob/living - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
This variable is the chance for a mob to automatically dodge a bullet. Useful for admins, and applied to some mobs by default, such as the malfunctioning drone mobs.
Tries to dodge incoming bullets if we aren't disabled for any reasons. Advised to overide with advanced effects, this is as basic example admins can apply.
Heals up the mob up to [heal_to] of the main damage types.
+EX: If heal_to is 50, and they have 150 brute damage, they will heal 100 brute (up to 50 brute damage)
Legacy method for simplemobs to handle turning off their AI.
+Unrelated to and unused for AI controllers, which handle their
+AI cooperation with signals.
Used for keeping track of previous sleeping value with admin freeze.
advanced_bullet_dodge_chance
This variable is the chance for a mob to automatically dodge a bullet. Useful for admins, and applied to some mobs by default, such as the malfunctioning drone mobs.
big_voice
Does this mob talk with a BIG VOICE. 0 off, 1 single use, 2 multi-use
buckling
movable atom we are buckled to
butcher_time
How long does it take to harvest a mob?
can_hide
Can this mob hide?
contains_xeno_organ
Does this creature contain a xeno organ we can harvest?
deathmessage
The action emote which is displayed after the mob's name upon death.
extra_message_range
If a creature gets to be super special and have extra range on their chat messages
flags_2
Flag to enable these making trees semi-transparent if behind them
forced_look
This can either be a numerical direction or a soft object reference (UID). It makes the mob always face towards the selected thing.
frozen
Used for preventing attacks on admin-frozen mobs.
gib_nullifies_icon
Sets our icon to null when gib() is used
healable
Healable by medical stacks?
holder_type
the type of holder that will be created when a mob gets scooped up
ignore_generic_organs
The toggle for if this creature should ignore the rolls for generic organs upon dissection
incorporeal_move
Allows mobs to move through dense areas without restriction. For instance, in space or out of holder objects.
initial_traits
List of traits that should be applied on Initialize
last_taste_text
Stores a var of the last tast message we got. used so we don't spam people messages while they eat
last_taste_time
Stores a var of the last world time we tasted something. used so we don't spam people messages while they eat
last_words
Famous last words -- if succumbing, what the user's last words were
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.
pass_door_while_hidden
Allows a mob to pass unbolted doors while hidden
resting
if a mob is choosing to lay down
stamina_regen_block_modifier
A multiplier for the ammount of time it takes for someone to regenerate stamina damage.
surgery_container
Points to what specialized dissection information a mob gets.
Proc Details
AdjustConfused
Sets confusion to current amount + given, clamped between lower and higher bounds.
+
Arguments:
+
+
amount - Amount to add. Can be negative to reduce duration.
+
bound_lower - Minimum bound to set at least to. Defaults to 0.
+
bound_upper - Maximum bound to set up to. Defaults to 5 minutes.
+
AdjustDizzy
Sets dizziness to current amount + given, clamped between lower and higher bounds.
+
Arguments:
+
+
amount - Amount to add. Can be negative to reduce duration.
+
bound_lower - Minimum bound to set at least to. Defaults to 0.
+
bound_upper - Maximum bound to set up to. Defaults to 5 minutes.
+
AdjustDrowsy
Sets drowsiness to current amount + given, clamped between lower and higher bounds.
+
Arguments:
+
+
amount - Amount to add. Can be negative to reduce duration.
+
bound_lower - Minimum bound to set at least to. Defaults to 0.
+
bound_upper - Maximum bound to set up to. Defaults to 5 minutes.
+
AdjustDrunk
Sets drunkenness to current amount + given, clamped between lower and higher bounds.
+
Arguments:
+
+
amount - Amount to add. Can be negative to reduce duration.
+
bound_lower - Minimum bound to set at least to. Defaults to 0.
+
bound_upper - Maximum bound to set up to. Defaults to 5 minutes.
Tries to dodge incoming bullets if we aren't disabled for any reasons. Advised to overide with advanced effects, this is as basic example admins can apply.
apply_status_effect
Applies a given status effect to this mob, returning the effect if it was successful or null otherwise
befriend
Proc for giving a mob a new 'friend', generally used for AI control and
+targeting. Returns false if already friends or null if qdeleted.
can_be_revived
Checks if we are actually able to ressuscitate this mob.
+(We don't want to revive then to have them instantly die again)
can_remote_apc_interface
Can a mob interact with the apc remotely like a pulse demon, cyborg, or AI?
can_run_surgery
Check to see if a surgical operation proposed on ourselves is valid or not. We are the target of the surgery
clear_forced_look
Clears the mob's direction lock if enabled.
+
Arguments:
+
+
quiet - Whether to display a chat message.
+
do_rust_heretic_act
wrapper proc that passes our mob's rust_strength to the target we are rusting
electrocute_act
As the name suggests, this should be called to apply electric shocks.
Returns armor value of our mob.
+As u can see, mobs have no armor by default so we override this proc on mob subtypes if we add them any armor
grant_guardian_actions
Grants all existing /datum/action/guardian type actions to the src mob.
+
Called whenever the host gains their gauardian.
handle_environment
Handle temperature/pressure differences between body and environment
handle_fire
Burns a mob and slowly puts the fires out. Returns TRUE if the mob is on fire
has_status_effect
Returns the effect if the mob calling the proc owns the given status effect, or null otherwise
has_status_effect_list
Returns a list of effects with matching IDs that the mod owns; use for effects there can be multiple of
has_status_effect_type
Returns the effect if the mob calling the proc owns the given status effect, but checks by type.
heal_and_revive
Heals up the mob up to [heal_to] of the main damage types.
+EX: If heal_to is 50, and they have 150 brute damage, they will heal 100 brute (up to 50 brute damage)
+
If the target is dead, also revives them and heals their organs / restores blood.
+If we have a [revive_message], play a visible message if the revive was successful.
+
Arguments
+
+
heal_to - the health threshold to heal the mob up to for each of the main damage types.
+
revive_message - if provided, a visible message to show on a successful revive.
+
+
Returns TRUE if the mob is alive afterwards, or FALSE if they're still dead (revive failed).
lazarus_revive
Proc called when TARGETED by a lazarus injector
on_fakedeath_trait_gain
Called when [TRAIT_FAKEDEATH] is added to the mob.
on_fakedeath_trait_loss
Called when [TRAIT_FAKEDEATH] is removed from the mob.
Gaining or losing [TRAIT_UNKNOWN] updates our name and our sechud
register_init_signals
Called on [/mob/living/proc/Initialize], for the mob to register to relevant signals.
remove_guardian_actions
Removes all /datum/action/guardian type actions from the src mob.
+
Called whenever the host loses their guardian.
remove_status_effect
Removes all of a given status effect from this mob, returning TRUE if at least one was removed
run_armor_check
Returns final, affected by armor_penetration_flat and armor_penetration_percentage, armor value of specific armor type
+
+
def_zone - What part is getting hit, if not set will check armor of entire body
+
armor_type - What type of armor is used. MELEE, BULLET, MAGIC etc.
+
absorb_text - Text displayed when your armor makes you immune (armor is INFINITY)
+
soften_text - Text displayed when 0 < armor < INFINITY. So armor protected us from some damage
+
penetrated_text - Text displayed when armor penetration decreases non 0 armor to 0. So it's completely penetrated
+
armor_penetration_percentage - % of armor value that is penetrated. Does nothing if armor <= 0. Happens before flat AP
+
armor_penetration_flat - armor value that is penetrated. Does nothing if armor <= 0. Occurs after percentage AP
+
run_resist
proc extender of [/mob/living/verb/resist] meant to make the process queable if the server is overloaded when the verb is called
sentience_act
Legacy method for simplemobs to handle turning off their AI.
+Unrelated to and unused for AI controllers, which handle their
+AI cooperation with signals.
set_forced_look
Sets the mob's direction lock towards a given atom.
+
Arguments:
+
+
a - The atom to face towards.
+
track - If TRUE, updates our direction relative to the atom when moving.
+
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.
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.
transfer_blood_to
MARK: BLOOD TRANSFERS
unbuckle
Unbuckle the mob from whatever it is buckled to.
\ No newline at end of file
diff --git a/mob/living/basic.html b/mob/living/basic.html
new file mode 100644
index 00000000000..fe6390253a1
--- /dev/null
+++ b/mob/living/basic.html
@@ -0,0 +1,21 @@
+/mob/living/basic - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Basic Mob
Basic mobs are a modern replacement for the simple_animal/"simple mob"
+system. Rather than deep type trees with overrides for AI, basic mobs rely
+on their AI controllers for the majority of their behavior.
+
It is also intended that as little implementation as possible be part of the
+basic mob definition directly; rather, as much behavior as possible should
+be delegated to components and elements, such as
+/datum/element/atmos_requirements for handling reacting to atmosphere, and
+/datum/element/body_temperature for handling changes in body temperature.
+
Migrating simple mobs to basic mobs is an incremental effort; and refactors
+should be considered before making large changes to existing simple mob
+code.
What is heard by mobs who cannot understand this one when speaking.
+This doesn't feel like it belongs here but say code and language code
+is a mess to untangle so maybe it can move somewhere later.
Return whether or not ghosts can take over this mob via "Respawn as NPC"
Var Details
armor_penetration_flat
Flat armour reduction, occurs after percentage armour penetration.
armor_penetration_percentage
Percentage armour reduction, happens before flat armour reduction.
atmos_requirements
Leaving something at 0 means it's off - has no maximum.
attack_sound
Sound played when the critter attacks.
attack_verb_continuous
Basic mob's own attacks verbs,
+Attacking verb in present continuous tense.
attack_verb_simple
Attacking verb in present simple tense.
attacked_sound
Sound played when the critter is attacked.
can_be_on_fire
Can this mob ignite?
casing_type
What casing type is the projectile?
damage_coeff
1 for full damage, 0 for none, -1 for 1:1 heal from that source.
death_message
The message displayed on death
death_sound
The sound played on death
environment_smash
What can this mob break?
fire_damage
How much fire damage does a mob take?
force_threshold
Minimum force required to deal any damage
friendly_verb_continuous
Attacking, but without damage, verb in present continuous tense.
friendly_verb_simple
Attacking, but without damage, verb in present simple tense.
gold_core_spawnable
If the mob can be spawned with a gold slime core. HOSTILE_SPAWN are spawned with plasma, FRIENDLY_SPAWN are spawned with blood
harm_intent_damage
The amount of damage done to the mob when hand-attacked on harm intent.
icon_dead
Icon when the animal is dead.
icon_gib
We only try to show a gibbing animation if this exists.
icon_living
Icon to use when the animal is alive.
icon_resting
Icon when the animal is resting
is_ranged
Does this type do range attacks?
loot
Loot this mob drops on death.
master_commander
Holding var for determining who own/controls a sentient simple animal (for sentience potions).
maximum_survivable_temperature
Maximal body temperature without receiving damage
melee_attack_cooldown_max
Upper bound for melee attack cooldown
melee_attack_cooldown_min
Lower bound for melee attack cooldown
melee_damage_lower
Lower bound of damage done by unarmed melee attacks.
melee_damage_type
Damage type of a simple mob's melee attack, should it do damage.
melee_damage_upper
Upper bound of damage done by unarmed melee attacks.
minimum_survivable_temperature
Minimal body temperature without receiving damage
nest
Compatibility with mob spawners
obj_damage
How much damage this simple animal does to objects, if any
projectile_sound
What sound does it make when firing?
projectile_type
What projectile do we shoot?
ranged_burst_count
How many shots in a burst?
ranged_burst_interval
How fast do we fire between shots in a burst?
ranged_cooldown
Time between bursts
response_disarm_continuous
Disarm-intent verb in present continuous tense.
response_disarm_simple
Disarm-intent verb in present simple tense.
response_harm_continuous
Harm-intent verb in present continuous tense.
response_harm_simple
Harm-intent verb in present simple tense.
response_help_continuous
When someone interacts with the simple animal.
+Help-intent verb in present continuous tense.
response_help_simple
Help-intent verb in present simple tense.
sentience_type
Sentience type, for slime potions
speed
Higher speed is slower, negative speed is faster
step_type
Footsteps
unintelligble_phrases
What is heard by mobs who cannot understand this one when speaking.
+This doesn't feel like it belongs here but say code and language code
+is a mess to untangle so maybe it can move somewhere later.
unsuitable_atmos_damage
This damage is taken when atmos doesn't fit all the requirements above.
+Set to 0 to avoid adding the atmos_requirements element.
unsuitable_cold_damage
This damage is taken when the body temp is too cold. Set both this and unsuitable_heat_damage to 0 to avoid adding the body_temp_sensitive element.
unsuitable_heat_damage
This damage is taken when the body temp is too hot. Set both this and unsuitable_cold_damage to 0 to avoid adding the body_temp_sensitive element.
Proc Details
valid_respawn_target_for
Return whether or not ghosts can take over this mob via "Respawn as NPC"
\ No newline at end of file
diff --git a/mob/living/basic/alien.html b/mob/living/basic/alien.html
new file mode 100644
index 00000000000..df29e4189cd
--- /dev/null
+++ b/mob/living/basic/alien.html
@@ -0,0 +1 @@
+/mob/living/basic/alien - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/alien/maid.html b/mob/living/basic/alien/maid.html
new file mode 100644
index 00000000000..c459a7cb478
--- /dev/null
+++ b/mob/living/basic/alien/maid.html
@@ -0,0 +1 @@
+/mob/living/basic/alien/maid - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
\ No newline at end of file
diff --git a/mob/living/basic/bee.html b/mob/living/basic/bee.html
new file mode 100644
index 00000000000..50a3ed754c7
--- /dev/null
+++ b/mob/living/basic/bee.html
@@ -0,0 +1 @@
+/mob/living/basic/bee - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/butterfly.html b/mob/living/basic/butterfly.html
new file mode 100644
index 00000000000..df182ac2a58
--- /dev/null
+++ b/mob/living/basic/butterfly.html
@@ -0,0 +1 @@
+/mob/living/basic/butterfly - Space Station 13Space Station 13 - Modules - Types — Proc Details
Made so severe anxiety does not overload the SSmob while keeping it's effect
Proc Details
decompose
Made so severe anxiety does not overload the SSmob while keeping it's effect
\ No newline at end of file
diff --git a/mob/living/basic/chick.html b/mob/living/basic/chick.html
new file mode 100644
index 00000000000..3f061eb50bb
--- /dev/null
+++ b/mob/living/basic/chick.html
@@ -0,0 +1 @@
+/mob/living/basic/chick - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/chicken.html b/mob/living/basic/chicken.html
new file mode 100644
index 00000000000..cde8caff86a
--- /dev/null
+++ b/mob/living/basic/chicken.html
@@ -0,0 +1 @@
+/mob/living/basic/chicken - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/cockroach.html b/mob/living/basic/cockroach.html
new file mode 100644
index 00000000000..bf2c1a8cf7a
--- /dev/null
+++ b/mob/living/basic/cockroach.html
@@ -0,0 +1 @@
+/mob/living/basic/cockroach - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/cow.html b/mob/living/basic/cow.html
new file mode 100644
index 00000000000..382ffd63963
--- /dev/null
+++ b/mob/living/basic/cow.html
@@ -0,0 +1 @@
+/mob/living/basic/cow - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/deer.html b/mob/living/basic/deer.html
new file mode 100644
index 00000000000..bc59f5e2329
--- /dev/null
+++ b/mob/living/basic/deer.html
@@ -0,0 +1 @@
+/mob/living/basic/deer - Space Station 13Space Station 13 - Modules - Types — Var Details
Things that will scare us into being stationary. Vehicles are scary to deers because they might have headlights.
Var Details
stationary_scary_things
Things that will scare us into being stationary. Vehicles are scary to deers because they might have headlights.
\ No newline at end of file
diff --git a/mob/living/basic/demon/pulse_demon.html b/mob/living/basic/demon/pulse_demon.html
new file mode 100644
index 00000000000..1624d71dbf9
--- /dev/null
+++ b/mob/living/basic/demon/pulse_demon.html
@@ -0,0 +1 @@
+/mob/living/basic/demon/pulse_demon - Space Station 13Space Station 13 - Modules - Types — Var Details
Current quantity of energy the demon currently holds (Joules), spent while purchasing, upgrading or using spells or upgrades. Use adjust_charge to modify this.
Does the pulse demon attempt to use internal power to bypass shock immunity
Var Details
apc_being_hijacked
Reference to the APC currently being hijacked.
apc_images
Images of APCs currently being shown on the client.
apcs_remaining
Current APC amount for use as upgrade currency
bot_movedelay
Delay tracker for movement inside bots.
cable_images
Images of cables currently being shown on the client.
can_exit_cable
Controls whether the demon can move outside of cables. Toggled by a spell.
charge
Current quantity of energy the demon currently holds (Joules), spent while purchasing, upgrading or using spells or upgrades. Use adjust_charge to modify this.
charge_drained
Book keeping for objective win conditions (Joules).
controlling_area
Area being controlled, should be maintained as long as the demon does not move outside a container (APC, object, robot, bot).
current_bot
Inhabited bot, only maintained while inside the bot.
current_cable
Inhabited cable, only maintained while on top of the cable.
current_power
Inhabited power source, maintained while inside, or while inside its area if it is an APC.
current_robot
Inhabited cyborg, only maintained while inside the cyborg.
current_weapon
Inhabited item, only items which can be used in rechargers can be hijacked. Only maintained while inside the item.
do_drain
Controls whether the demon will drain power from sources. Toggled by a spell.
emp_debounce
Tracking to prevent multiple EMPs in the same tick from instakilling a demon.
glow_color
The color of light the demon emits. The range of the light is proportional to energy stored.
health_loss_rate
Amount of health lost per Life tick when the power requirement was not met.
health_regen_rate
Amount of health regenerated per Life tick when the power requirement was met.
hijack_time
The time it takes to hijack APCs and cyborgs.
hijacked_apcs
List of all previously hijacked APCs.
hijacked_robots
A cyborg that has already been hijacked can be re-entered instantly.
hurt_sounds
List of sounds that is picked from when the demon dies or is EMP'd.
inside_cable_speed
Speed used while moving inside cables.
max_drain_rate
Maximum value for power_drain_rate based on upgrades. (Watts)
maxcharge
Maximum quantity of energy the demon can hold at once (Joules).
outside_cable_speed
Speed used while moving outside cables. Can be upgraded.
power_drain_rate
Amount of power (Watts) to drain from power sources every Life tick.
power_per_regen
Amount of power (Watts) required to regenerate health.
regen_lock
Lock health regeneration while this is not 0, decreases by 1 every Life tick.
speech_sounds
List of sounds that is picked from when the demon speaks.
strong_shocks
Does the pulse demon attempt to use internal power to bypass shock immunity
\ No newline at end of file
diff --git a/mob/living/basic/demon/shadow.html b/mob/living/basic/demon/shadow.html
new file mode 100644
index 00000000000..c0848e53527
--- /dev/null
+++ b/mob/living/basic/demon/shadow.html
@@ -0,0 +1 @@
+/mob/living/basic/demon/shadow - Space Station 13Space Station 13 - Modules - Types — Var Details
Used for fault tolerance. If you set it manually, it may fuck up shooting_grapple var.
Var Details
block_shadow_crawl
Should only be TRUE if we're shooting the Shadow Grapple right now. If its TRUE, the demon wont be able to shadow crawl.
last_block_shadow_crawl
Used for fault tolerance. If you set it manually, it may fuck up shooting_grapple var.
\ No newline at end of file
diff --git a/mob/living/basic/diona_nymph.html b/mob/living/basic/diona_nymph.html
new file mode 100644
index 00000000000..24b977cb341
--- /dev/null
+++ b/mob/living/basic/diona_nymph.html
@@ -0,0 +1 @@
+/mob/living/basic/diona_nymph - Space Station 13Space Station 13 - Modules - Types — Var Details
Amount of blood donors needed for understand language
edibles
List of stuff (mice) that we want to eat
evolve_donors
Amount of blood donors needed to evolve
nutrition_need
Amount of nutrition needed before evolving
\ No newline at end of file
diff --git a/mob/living/basic/giant_spider.html b/mob/living/basic/giant_spider.html
new file mode 100644
index 00000000000..54404bce73d
--- /dev/null
+++ b/mob/living/basic/giant_spider.html
@@ -0,0 +1 @@
+/mob/living/basic/giant_spider - Space Station 13Space Station 13 - Modules - Types — Var Details
How much venom is injected per bite into the poor victim
Var Details
innate_actions
Actions to grant on Initialize
venom_per_bite
How much venom is injected per bite into the poor victim
\ No newline at end of file
diff --git a/mob/living/basic/giant_spider/hunter/infestation_spider.html b/mob/living/basic/giant_spider/hunter/infestation_spider.html
new file mode 100644
index 00000000000..059b47702e9
--- /dev/null
+++ b/mob/living/basic/giant_spider/hunter/infestation_spider.html
@@ -0,0 +1 @@
+/mob/living/basic/giant_spider/hunter/infestation_spider - Space Station 13Space Station 13 - Modules - Types — Var Details
infestation_spider
Child of giant_spider because this should do everything the spider does and more
To check and gib the spider when dead, then remove only one of the counter for the changeling owner
owner_UID
References to the owner changeling
\ No newline at end of file
diff --git a/mob/living/basic/giant_spider/nurse.html b/mob/living/basic/giant_spider/nurse.html
new file mode 100644
index 00000000000..5ff4e82b0e4
--- /dev/null
+++ b/mob/living/basic/giant_spider/nurse.html
@@ -0,0 +1 @@
+/mob/living/basic/giant_spider/nurse - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/goat.html b/mob/living/basic/goat.html
new file mode 100644
index 00000000000..d318477ff63
--- /dev/null
+++ b/mob/living/basic/goat.html
@@ -0,0 +1 @@
+/mob/living/basic/goat - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/gorilla.html b/mob/living/basic/gorilla.html
new file mode 100644
index 00000000000..6a3a43926c2
--- /dev/null
+++ b/mob/living/basic/gorilla.html
@@ -0,0 +1 @@
+/mob/living/basic/gorilla - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Returns null when the target is not an unconscious carbon mob; a list of limbs (possibly empty) otherwise.
Var Details
carriable_cache
Typecache of all the types we can pick up and carry
crate_limit
The max number of crates we can carry
crates_in_hand
A lazylist of all crates we are carrying
dismember_chance
Chance to dismember while unconcious
is_bipedal
Is the gorilla stood up or not?
stamina_damage
Amount of stamina lost on a successful hit
throw_onhit
Chance of doing the throw or stamina damage, along with the flat damage amount
Proc Details
drop_all_crates
Drops all the crates in our crate list.
drop_random_crate
Drops one random crates from our crate list.
get_target_bodyparts
Returns null when the target is not an unconscious carbon mob; a list of limbs (possibly empty) otherwise.
\ No newline at end of file
diff --git a/mob/living/basic/gorilla/cargo_domestic.html b/mob/living/basic/gorilla/cargo_domestic.html
new file mode 100644
index 00000000000..c543c1ed33b
--- /dev/null
+++ b/mob/living/basic/gorilla/cargo_domestic.html
@@ -0,0 +1 @@
+/mob/living/basic/gorilla/cargo_domestic - Space Station 13Space Station 13 - Modules - Types — Var Details
The ID card that the gorilla is currently wearing.
Var Details
access_card
The ID card that the gorilla is currently wearing.
\ No newline at end of file
diff --git a/mob/living/basic/hellhound.html b/mob/living/basic/hellhound.html
new file mode 100644
index 00000000000..66097b145de
--- /dev/null
+++ b/mob/living/basic/hellhound.html
@@ -0,0 +1 @@
+/mob/living/basic/hellhound - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/heretic_summon.html b/mob/living/basic/heretic_summon.html
new file mode 100644
index 00000000000..1cf23322777
--- /dev/null
+++ b/mob/living/basic/heretic_summon.html
@@ -0,0 +1 @@
+/mob/living/basic/heretic_summon - Space Station 13Space Station 13 - Modules - Types — Var Details
Innate spells that are added when a beast is created.
Var Details
actions_to_add
Innate spells that are added when a beast is created.
\ No newline at end of file
diff --git a/mob/living/basic/heretic_summon/armsy.html b/mob/living/basic/heretic_summon/armsy.html
new file mode 100644
index 00000000000..cb25d8c5836
--- /dev/null
+++ b/mob/living/basic/heretic_summon/armsy.html
@@ -0,0 +1 @@
+/mob/living/basic/heretic_summon/armsy - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
armsy
The "Terror of the Night" / Armsy, a large worm made of multiple bodyparts that occupies multiple tiles
Updates the next mob in the chain to move to our last location. Fixes the chain if somehow broken.
Var Details
allow_pulling
Allow / disallow pulling
backsy
Previous segment in the chain
current_stacks
Currently eaten arms
follow
Does this follow other pieces?
front
Next segment in the chain
oldloc
Your old location
stacks_to_grow
How many arms do we have to eat to expand?
Proc Details
contract_next_chain_into_single_tile
Updates every body in the chain to force move onto a single tile.
update_chain_links
Updates the next mob in the chain to move to our last location. Fixes the chain if somehow broken.
\ No newline at end of file
diff --git a/mob/living/basic/heretic_summon/fire_shark.html b/mob/living/basic/heretic_summon/fire_shark.html
new file mode 100644
index 00000000000..a9af1e7d264
--- /dev/null
+++ b/mob/living/basic/heretic_summon/fire_shark.html
@@ -0,0 +1 @@
+/mob/living/basic/heretic_summon/fire_shark - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/heretic_summon/maid_in_the_mirror.html b/mob/living/basic/heretic_summon/maid_in_the_mirror.html
new file mode 100644
index 00000000000..d313cb390e6
--- /dev/null
+++ b/mob/living/basic/heretic_summon/maid_in_the_mirror.html
@@ -0,0 +1 @@
+/mob/living/basic/heretic_summon/maid_in_the_mirror - Space Station 13Space Station 13 - Modules - Types — Var Details
The cooldown after being examined that the same mob cannot trigger it again
recent_examiner_refs
A list of uids to people who recently examined us
weak_on_examine
Whether we take damage when we're examined
\ No newline at end of file
diff --git a/mob/living/basic/heretic_summon/raw_prophet.html b/mob/living/basic/heretic_summon/raw_prophet.html
new file mode 100644
index 00000000000..1bb2362bce8
--- /dev/null
+++ b/mob/living/basic/heretic_summon/raw_prophet.html
@@ -0,0 +1 @@
+/mob/living/basic/heretic_summon/raw_prophet - Space Station 13Space Station 13 - Modules - Types — Var Details
The UID to the last target we smacked. Hitting targets consecutively does more damage.
Var Details
last_target
The UID to the last target we smacked. Hitting targets consecutively does more damage.
\ No newline at end of file
diff --git a/mob/living/basic/heretic_summon/star_gazer.html b/mob/living/basic/heretic_summon/star_gazer.html
new file mode 100644
index 00000000000..04e3677a8f7
--- /dev/null
+++ b/mob/living/basic/heretic_summon/star_gazer.html
@@ -0,0 +1 @@
+/mob/living/basic/heretic_summon/star_gazer - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/hivebot/tele.html b/mob/living/basic/hivebot/tele.html
new file mode 100644
index 00000000000..8b1af05c9f2
--- /dev/null
+++ b/mob/living/basic/hivebot/tele.html
@@ -0,0 +1 @@
+/mob/living/basic/hivebot/tele - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/hostile_mech.html b/mob/living/basic/hostile_mech.html
new file mode 100644
index 00000000000..b9af0f7f0ac
--- /dev/null
+++ b/mob/living/basic/hostile_mech.html
@@ -0,0 +1 @@
+/mob/living/basic/hostile_mech - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
\ No newline at end of file
diff --git a/mob/living/basic/isopod.html b/mob/living/basic/isopod.html
new file mode 100644
index 00000000000..9714b931160
--- /dev/null
+++ b/mob/living/basic/isopod.html
@@ -0,0 +1 @@
+/mob/living/basic/isopod - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/lizard.html b/mob/living/basic/lizard.html
new file mode 100644
index 00000000000..dab2ac48b96
--- /dev/null
+++ b/mob/living/basic/lizard.html
@@ -0,0 +1 @@
+/mob/living/basic/lizard - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/malf_drone.html b/mob/living/basic/malf_drone.html
new file mode 100644
index 00000000000..05631ea14fb
--- /dev/null
+++ b/mob/living/basic/malf_drone.html
@@ -0,0 +1 @@
+/mob/living/basic/malf_drone - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
We overide the basic effect, as malfunctioning drones are in space, and use jets to dodge. Also lets us do cool effects.
Var Details
passive
Is the drone passive?
Proc Details
advanced_bullet_dodge
We overide the basic effect, as malfunctioning drones are in space, and use jets to dodge. Also lets us do cool effects.
\ No newline at end of file
diff --git a/mob/living/basic/megafauna.html b/mob/living/basic/megafauna.html
new file mode 100644
index 00000000000..c46447842e4
--- /dev/null
+++ b/mob/living/basic/megafauna.html
@@ -0,0 +1 @@
+/mob/living/basic/megafauna - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
This proc is called by the HRD-MDE grenade to enrage the megafauna. This should increase the megafaunas attack speed if possible, give it new moves, or disable weak moves. This should be reverseable, and reverses on zlvl change.
If the megafauna has a pool of random loot items to pick from, override this proc to have it be set on initialization
Var Details
crusher_loot
The loot the mob should drop if killed with a crusher
difficulty_ore_modifier
How much ore should killing this give
elimination
Is the mob truly dead?
enraged
Has someone enabled hard mode?
enraged_loot
Path of the hardmode loot disk, if applicable.
innate_actions
Actions to grant on Initialize
internal_gps
The mob's internal GPS, if it has one
medal_type
The type of medal it drops if on hard mode
score_type
The type of boss for the medal it drops
true_spawn
If this is a megafauna that should grant achievements, or have a gps signal
Proc Details
calc_ore_reward
Handling the ore part of the mega reward, the higher the difficulty_ore_modifier the more ore will spawn
enrage
This proc is called by the HRD-MDE grenade to enrage the megafauna. This should increase the megafaunas attack speed if possible, give it new moves, or disable weak moves. This should be reverseable, and reverses on zlvl change.
generate_random_loot
If the megafauna has a pool of random loot items to pick from, override this proc to have it be set on initialization
\ No newline at end of file
diff --git a/mob/living/basic/megafauna/bluespace_horror.html b/mob/living/basic/megafauna/bluespace_horror.html
new file mode 100644
index 00000000000..7ea38598f1e
--- /dev/null
+++ b/mob/living/basic/megafauna/bluespace_horror.html
@@ -0,0 +1 @@
+/mob/living/basic/megafauna/bluespace_horror - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
WHen hitting a mob five times, does something random
shoot_projectile
Proc used for various powers and spells
\ No newline at end of file
diff --git a/mob/living/basic/megafauna/kidan_princess.html b/mob/living/basic/megafauna/kidan_princess.html
new file mode 100644
index 00000000000..8ea6e8035f7
--- /dev/null
+++ b/mob/living/basic/megafauna/kidan_princess.html
@@ -0,0 +1 @@
+/mob/living/basic/megafauna/kidan_princess - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/megafauna/space_whale.html b/mob/living/basic/megafauna/space_whale.html
new file mode 100644
index 00000000000..99f8f90b19b
--- /dev/null
+++ b/mob/living/basic/megafauna/space_whale.html
@@ -0,0 +1 @@
+/mob/living/basic/megafauna/space_whale - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/megafauna/vox_armalis.html b/mob/living/basic/megafauna/vox_armalis.html
new file mode 100644
index 00000000000..ae98b586954
--- /dev/null
+++ b/mob/living/basic/megafauna/vox_armalis.html
@@ -0,0 +1 @@
+/mob/living/basic/megafauna/vox_armalis - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/mimic.html b/mob/living/basic/mimic.html
new file mode 100644
index 00000000000..707959ad491
--- /dev/null
+++ b/mob/living/basic/mimic.html
@@ -0,0 +1 @@
+/mob/living/basic/mimic - Space Station 13Space Station 13 - Modules - Types — Var Details
Used for if the mob should be affected by EMPs or ions
Var Details
is_electronic
Used for if the mob should be affected by EMPs or ions
\ No newline at end of file
diff --git a/mob/living/basic/mimic/copy.html b/mob/living/basic/mimic/copy.html
new file mode 100644
index 00000000000..9cc89dedfbb
--- /dev/null
+++ b/mob/living/basic/mimic/copy.html
@@ -0,0 +1 @@
+/mob/living/basic/mimic/copy - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/mimic/copy/ranged.html b/mob/living/basic/mimic/copy/ranged.html
new file mode 100644
index 00000000000..5a51000a7bd
--- /dev/null
+++ b/mob/living/basic/mimic/copy/ranged.html
@@ -0,0 +1 @@
+/mob/living/basic/mimic/copy/ranged - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/mimic/copy/vendor.html b/mob/living/basic/mimic/copy/vendor.html
new file mode 100644
index 00000000000..194255a207c
--- /dev/null
+++ b/mob/living/basic/mimic/copy/vendor.html
@@ -0,0 +1 @@
+/mob/living/basic/mimic/copy/vendor - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/mimic/crate.html b/mob/living/basic/mimic/crate.html
new file mode 100644
index 00000000000..1eaa0cb35b1
--- /dev/null
+++ b/mob/living/basic/mimic/crate.html
@@ -0,0 +1 @@
+/mob/living/basic/mimic/crate - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/mining.html b/mob/living/basic/mining.html
new file mode 100644
index 00000000000..e7dcd1586f4
--- /dev/null
+++ b/mob/living/basic/mining.html
@@ -0,0 +1 @@
+/mob/living/basic/mining - Space Station 13Space Station 13 - Modules - Types — Var Details
What is the chance the mob drops it if all their health was taken by crusher attacks
crusher_loot
Special loot drops for crushers
has_laser_resist
If we want the mob to have 66% resist from burn damage projectiles
icon_aggro
Alternate icon for mobs that are angry
throw_blocked_message
Message to output if throwing damage is absorbed
\ No newline at end of file
diff --git a/mob/living/basic/mining/ash_whelp.html b/mob/living/basic/mining/ash_whelp.html
new file mode 100644
index 00000000000..587ffa04091
--- /dev/null
+++ b/mob/living/basic/mining/ash_whelp.html
@@ -0,0 +1 @@
+/mob/living/basic/mining/ash_whelp - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
\ No newline at end of file
diff --git a/mob/living/basic/mining/goldgrub.html b/mob/living/basic/mining/goldgrub.html
new file mode 100644
index 00000000000..9dc55221fcb
--- /dev/null
+++ b/mob/living/basic/mining/goldgrub.html
@@ -0,0 +1 @@
+/mob/living/basic/mining/goldgrub - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/mining/goliath.html b/mob/living/basic/mining/goliath.html
new file mode 100644
index 00000000000..4e1557d15ea
--- /dev/null
+++ b/mob/living/basic/mining/goliath.html
@@ -0,0 +1 @@
+/mob/living/basic/mining/goliath - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
goliath
A slow but strong beast that tries to stun using its tentacles.
When we use an ability, activate some kind of visual tell
Var Details
ability_animation_cooldown
Slight cooldown to prevent double-dipping if we use both abilities at once
goliath_foods
Things we want to eat off the floor (or a plate, we're not picky)
tentacle_warning_state
Icon state to use when tentacles are available
tentacles
Our base tentacles ability
Proc Details
tentacles_ready
Called slightly before tentacles ability comes off cooldown, as a warning
used_ability
When we use an ability, activate some kind of visual tell
\ No newline at end of file
diff --git a/mob/living/basic/mining/goliath/ancient.html b/mob/living/basic/mining/goliath/ancient.html
new file mode 100644
index 00000000000..f167c825cdf
--- /dev/null
+++ b/mob/living/basic/mining/goliath/ancient.html
@@ -0,0 +1 @@
+/mob/living/basic/mining/goliath/ancient - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Store nearby turfs in our list so we can pop them out later
Var Details
retarget_turfs_cooldown
Don't re-check nearby turfs for this long
tentacle_target_turfs
List of places we might spawn a tentacle, if we're alive
Proc Details
cache_nearby_turfs
Store nearby turfs in our list so we can pop them out later
\ No newline at end of file
diff --git a/mob/living/basic/mining/gutlunch.html b/mob/living/basic/mining/gutlunch.html
new file mode 100644
index 00000000000..577d8c41290
--- /dev/null
+++ b/mob/living/basic/mining/gutlunch.html
@@ -0,0 +1 @@
+/mob/living/basic/mining/gutlunch - Space Station 13Space Station 13 - Modules - Types — Var Details
gutlunch
Gutlunches, passive mods that devour blood and gibs
\ No newline at end of file
diff --git a/mob/living/basic/mining/hivelordbrood.html b/mob/living/basic/mining/hivelordbrood.html
new file mode 100644
index 00000000000..025e543558e
--- /dev/null
+++ b/mob/living/basic/mining/hivelordbrood.html
@@ -0,0 +1 @@
+/mob/living/basic/mining/hivelordbrood - Space Station 13Space Station 13 - Modules - Types — Var Details
Are we an advanced legion skull used in hardmode legion? Ignore the attack rules.
Var Details
advanced_legion
Are we an advanced legion skull used in hardmode legion? Ignore the attack rules.
\ No newline at end of file
diff --git a/mob/living/basic/mining_drone.html b/mob/living/basic/mining_drone.html
new file mode 100644
index 00000000000..03a049d1c68
--- /dev/null
+++ b/mob/living/basic/mining_drone.html
@@ -0,0 +1 @@
+/mob/living/basic/mining_drone - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/mouse.html b/mob/living/basic/mouse.html
new file mode 100644
index 00000000000..3ceef39ecac
--- /dev/null
+++ b/mob/living/basic/mouse.html
@@ -0,0 +1 @@
+/mob/living/basic/mouse - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Biting into a cable will cause a mouse to get shocked and die if applicable. Or do nothing if they're lucky.
Var Details
cable_zap_prob
Probability that, if we successfully bite a shocked cable, that we will die to it.
food_types
Food types that mice eat
Proc Details
on_entered
Signal proc for COMSIG_ATOM_ENTERED. Sends a lil' squeak to chat when someone walks over us.
tamed
Called when a mouse is hand-fed some cheese, it will stop being afraid of humans
try_bite_cable
Biting into a cable will cause a mouse to get shocked and die if applicable. Or do nothing if they're lucky.
\ No newline at end of file
diff --git a/mob/living/basic/netherworld/blankbody.html b/mob/living/basic/netherworld/blankbody.html
new file mode 100644
index 00000000000..1f0ed2c5058
--- /dev/null
+++ b/mob/living/basic/netherworld/blankbody.html
@@ -0,0 +1 @@
+/mob/living/basic/netherworld/blankbody - Space Station 13Space Station 13 - Modules - Types — Var Details
The body/brain of the player turned into a blank, if the blank was turned
is_original_mob
The held body's player is in control of the blank
\ No newline at end of file
diff --git a/mob/living/basic/netherworld/migo.html b/mob/living/basic/netherworld/migo.html
new file mode 100644
index 00000000000..6f2edfcc0f2
--- /dev/null
+++ b/mob/living/basic/netherworld/migo.html
@@ -0,0 +1 @@
+/mob/living/basic/netherworld/migo - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Makes the migo more likely to dodge around the more damaged it is
Var Details
dodge_prob
Will the migo dodge?
Proc Details
update_dodge_chance
Makes the migo more likely to dodge around the more damaged it is
\ No newline at end of file
diff --git a/mob/living/basic/nian_caterpillar.html b/mob/living/basic/nian_caterpillar.html
new file mode 100644
index 00000000000..1bfd3cda74a
--- /dev/null
+++ b/mob/living/basic/nian_caterpillar.html
@@ -0,0 +1 @@
+/mob/living/basic/nian_caterpillar - Space Station 13Space Station 13 - Modules - Types — Var Details
The amount of nutrition the nian caterpillar needs to evolve, default is 500.
Var Details
edibles
List of stuff that we want to eat
nutrition_need
The amount of nutrition the nian caterpillar needs to evolve, default is 500.
\ No newline at end of file
diff --git a/mob/living/basic/possessed_object.html b/mob/living/basic/possessed_object.html
new file mode 100644
index 00000000000..6647cb4ec32
--- /dev/null
+++ b/mob/living/basic/possessed_object.html
@@ -0,0 +1 @@
+/mob/living/basic/possessed_object - Space Station 13Space Station 13 - Modules - Types — Var Details
The probability % of us escaping if stuffed into a bag/toolbox/etc
possessed_item
What is the actual item we are "possessing"
revenant_possessed
Is this item possessed by a revenant?
\ No newline at end of file
diff --git a/mob/living/basic/revenant.html b/mob/living/basic/revenant.html
new file mode 100644
index 00000000000..756ac2f6d6d
--- /dev/null
+++ b/mob/living/basic/revenant.html
@@ -0,0 +1 @@
+/mob/living/basic/revenant - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
contains a list of UIDs of mobs who have been drained. cannot drain the same mob twice.
draining
If the revenant is draining someone.
dying
Are we currently dying? extra check against becomming incorporeal
essence
The resource of revenants. Max health is equal to three times this amount
essence_accumulated
How much essence the revenant has stolen
essence_drained
How much essence the revenant has drained.
essence_regen_amount
How much essence regenerates
essence_regen_cap
The regeneration cap of essence (go figure); regenerates every Life() tick up to this amount.
essence_regenerating
If the revenant regenerates essence or not; 1 for yes, 0 for no
icon_drain
The revant's icon while draining mobs
icon_idle
The revenant's idle icon
icon_reveal
The revenant's revealed icon
icon_stun
The revenant's stunned icon
inhibited
If the revenant's abilities are blocked by a chaplain's power.
perfectsouls
How many perfect, regen-cap increasing souls the revenant has.
revealed
If the revenant can take damage from normal sources.
unreveal_time
How long the revenant is revealed for, is about 2 seconds times this var.
unstun_time
How long the revenant is stunned for, is about 2 seconds times this var.
Proc Details
ClickOn
Harvest
\ No newline at end of file
diff --git a/mob/living/basic/skeleton/incursion/reanimator.html b/mob/living/basic/skeleton/incursion/reanimator.html
new file mode 100644
index 00000000000..bb952fb040e
--- /dev/null
+++ b/mob/living/basic/skeleton/incursion/reanimator.html
@@ -0,0 +1 @@
+/mob/living/basic/skeleton/incursion/reanimator - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/snake.html b/mob/living/basic/snake.html
new file mode 100644
index 00000000000..4fef757a392
--- /dev/null
+++ b/mob/living/basic/snake.html
@@ -0,0 +1 @@
+/mob/living/basic/snake - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/spiderbot.html b/mob/living/basic/spiderbot.html
new file mode 100644
index 00000000000..633c3a3423c
--- /dev/null
+++ b/mob/living/basic/spiderbot.html
@@ -0,0 +1 @@
+/mob/living/basic/spiderbot - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/spiderling.html b/mob/living/basic/spiderling.html
new file mode 100644
index 00000000000..c58922dc825
--- /dev/null
+++ b/mob/living/basic/spiderling.html
@@ -0,0 +1 @@
+/mob/living/basic/spiderling - Space Station 13Space Station 13 - Modules - Types — Var Details
The mob the spiderling will grow into. null is giant spiders.
player_spiders
Is the spider supposed to be player controlled?
selecting_player
Are we selecting a player?
\ No newline at end of file
diff --git a/mob/living/basic/swarmer.html b/mob/living/basic/swarmer.html
new file mode 100644
index 00000000000..696c364f751
--- /dev/null
+++ b/mob/living/basic/swarmer.html
@@ -0,0 +1 @@
+/mob/living/basic/swarmer - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/basic/swarmer/lesser.html b/mob/living/basic/swarmer/lesser.html
new file mode 100644
index 00000000000..d1339fe2700
--- /dev/null
+++ b/mob/living/basic/swarmer/lesser.html
@@ -0,0 +1 @@
+/mob/living/basic/swarmer/lesser - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/carbon.html b/mob/living/carbon.html
new file mode 100644
index 00000000000..8cc6426a9f0
--- /dev/null
+++ b/mob/living/carbon.html
@@ -0,0 +1,43 @@
+/mob/living/carbon - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Removes a carbon's handcuffs, dropping them to the ground. Calls update_handcuffed(). Unbuckles if handcuffs were necessary for the buckle (pipe buckling, etc.)
Used to track how long CO2 has been in our system, too long and we pass out and die.
dreaming
How many dream messages we have left to send
handcuffed
Whether or not the mob is handcuffed, restraints/handcuffs/ required for var/cuffed_state
head
The object stored on the head of the mob. Strangly not on the Human level
internal_organ_datums
An associated list of strings that associate it with the organ datum, e.g. [ORGAN_DATUM_HEART] = /datum/organ/heart
last_pain_message
Stores the last pain message we got. used to prevent chatspam from pain
legcuffed
Same as handcuffs but for legs. Bear traps use this.
life_tick
The amount of life ticks that have processed on this mob.
next_pain_time
Stores the last time we sent a pain message. used to prevent chatspam from pain
nightmare
How many nightmare messages we have left to send
pose
Active emote/pose. Similar to flavor text
pulse
Current pulse of this mob. Updated by handle_pulse on life
wear_suit
The object stored on the exosuit slot of the mob. Strangly not on the Human level
wetlevel
Tracks how wet the mob is. Only used for examining the mob
Proc Details
can_breathe_helmet
Returns TRUE if an air tank compatible helmet is equipped.
can_breathe_internals
Returns TRUE if an air tank compatible mask or breathing tube is equipped.
can_breathe_mask
Returns TRUE if an air tank compatible mask is equipped.
can_breathe_tube
Returns TRUE if a breathing tube is equipped.
can_feel_pain
Whether or not a mob can feel pain.
+
Returns TRUE if the mob can feel pain, FALSE otherwise
clear_handcuffs
Removes a carbon's handcuffs, dropping them to the ground. Calls update_handcuffed(). Unbuckles if handcuffs were necessary for the buckle (pipe buckling, etc.)
+
Arguments:
+
+
show_message - if TRUE, will display a visible message when restraints are removed. FALSE by default.
+
+
Returns:
+
+
TRUE if handcuffs existed and were successfully removed, FALSE otherwise
+
clear_legcuffs
Removes a carbon's legcuffs, dropping them to the ground. Calls update_inv_legcuffed().
+
Arguments:
+
+
show_message - if TRUE, will display a visible message when restraints are removed. FALSE by default.
+
+
Returns:
+
+
TRUE if legcuffs existed and were successfully removed, FALSE otherwise
+
clear_restraints
Clears a carbon mob's handcuffs and legcuffs, dropping them to the ground.
+
Arguments:
+
+
show_message - if TRUE, will display a visible message when restraints are removed. FALSE by default.
+
+
Returns:
+
+
TRUE if handcuffs or legcuffs were removed, FALSE otherwise
+
dream
DREAMS
electrocute_act
Adds to the parent by also adding functionality to propagate shocks through pulling and doing some fluff effects.
examine_damage_flavor
Add specific damage flavor here.
examine_extra_damage_flavor
Add any extra info which should be within the "damage" block, the big warning span.
examine_extra_general_flavor
Add some last information in before HUDs get put through.
examine_handle_individual_limb
Special handlers for processing limbs go here, based on limb names in examine_visible_clothing.
examine_start_damage_block
Add whatever you want to start the damage block with here.
examine_visible_clothing
Get the message parts, in order, for a proper examine.
+Message parts should be as follows:
+
+
Pronoun/intro for how they've got it on them
+
The item itself
+
Preposition for where it is
+
the location it's in
+
+
Arguments represent whether to skip a certain slot when handling the message.
examine_what_am_i
Identify what this mob in particular is.
get_covered_body_zones
Returns a list of all body_zones covered by clothing
has_virus
Whether a virus worthy displaying on the HUD is present.
is_in_crit
Medical HUD! Basic mode needs suit sensors on.
+Whether the carbon mob is currently in crit.
pat_out
Handles patting out a fire on someone.
+
Removes 0.5 fire stacks per pat, with a 30% chance of the user burning their hand if they don't have adequate heat resistance.
+Arguments:
+
+
src - The mob doing the patting
+
target - The mob who is currently on fire
+
secondary_shock
Called after electrocute_act to apply secondary effects
\ No newline at end of file
diff --git a/mob/living/carbon/alien.html b/mob/living/carbon/alien.html
new file mode 100644
index 00000000000..bccada86dbc
--- /dev/null
+++ b/mob/living/carbon/alien.html
@@ -0,0 +1,3 @@
+/mob/living/carbon/alien - Space Station 13Space Station 13 - Modules - Types — Proc Details
returns the list of type paths of the organs that we need to insert into
+this particular xeno upon its creation
Proc Details
get_caste_organs
returns the list of type paths of the organs that we need to insert into
+this particular xeno upon its creation
\ No newline at end of file
diff --git a/mob/living/carbon/alien/humanoid/hunter.html b/mob/living/carbon/alien/humanoid/hunter.html
new file mode 100644
index 00000000000..a77c1b15a63
--- /dev/null
+++ b/mob/living/carbon/alien/humanoid/hunter.html
@@ -0,0 +1 @@
+/mob/living/carbon/alien/humanoid/hunter - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/carbon/human.html b/mob/living/carbon/human.html
new file mode 100644
index 00000000000..291469a2291
--- /dev/null
+++ b/mob/living/carbon/human.html
@@ -0,0 +1,45 @@
+/mob/living/carbon/human - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
This proc calculates armor value for humans.
+If null is passed for def_zone, then this will return something appropriate for all zones (e.g. area effect damage)
tintcheck()
+Checks eye covering items for visually impairing tinting, such as welding masks
+Checked in life.dm. 0 & 1 = no impairment, 2 = welding mask overlay, 3 = You can see jack, but you can't see shit.
Lazylist of sources to track what our alpha should be, alpha is set to the minimum. Use the set_alpha_tracking and get_alpha helpers.
body_type
The body type associated with the body
bodyparts_by_name
map organ names to organs
height
Players' height (more fluff)
ipc_masquerade_status
Cache whether or not an IPC appears human during examine to avoid needless recalculation
physique
Players physique (even MORE fluff)
previous_damage_appearance
Stores what the body last looked like. Prevents updating the body when we don't need to
quirks
List of quirk datums attached to the mob
receiving_cpr_from
UID of the person who is giving this mob CPR.
skittish_cooldown
The cooldown for jumping into a closet or crate
spines
Same as wing but with back spines
tail
Name of tail image in species effects icon file.
wing
Same as tail but wing
Proc Details
Robotize
For transforming humans into robots (cyborgs).
+
Arguments:
+
+
cell_type: A type path of the cell the new borg should receive.
+
connect_to_default_AI: TRUE if you want /robot/New() to handle connecting the borg to the AI with the least borgs.
+
AI: A reference to the AI we want to connect to.
+
Togglewings
Used to toggle whether wings are open or not
__getarmor_bodypart
This is an internal proc, returns the armor value for a particular bodypart /obj/item/organ/external.
+Use getarmor() instead
add_comment
Helper function to add a "comment" to a data record. Used for medical or security records.
bananatouched_harmless
Like bananatouched, but intended to be used for funny one-off scenarios which aren't meant to permanently cripple someone's round.
change_skin_tone
Tone must be between -185 and 220. commonly used in 1 to 220, see random_skin_tone() for species-specific values
check_eye_prot
check_eye_prot()
+Returns a number between -1 to 2
check_for_missing_organs
A proc that checks for any missing organs and gives you damage for not having them
check_obscured_slots
Gets the obscured ITEM_SLOTs on a human
+
Returns:
+
+
A bitfield containing the ITEM_SLOTS bitflags that are obscured.
+
compressor_grind
Default behavior when getting ground up in a compressor
contaminate_atom
Tries to contaminate a human
electrocute_act
Calculates the siemens coeff based on clothing and species, can also restart hearts.
get_alpha
Gets the target alpha of the human
+
optional_source - use this to get the alpha of an exact source. This is unsafe, only use if you 100% know it will be in the list. For the best safety, only call this as get_alpha(src)
get_cpr_timer_adjustment
Get the amount of time that this round of CPR should add to the death timer
getarmor
This proc calculates armor value for humans.
+If null is passed for def_zone, then this will return something appropriate for all zones (e.g. area effect damage)
handle_fire
FIRE CODE
is_bodypart_covered_by_clothing
Checks if a body part is covered by clothing
is_inside_mob
Checks if an item is inside the body of the mob
mind_checks
Handles any adjustments to the mob after a mind transfer.
rad_contaminate_zone
Returns a list. The first element is whether we penetrated all clothing for the zone, the rest are the clothes that got contaminated
regrow_external_limb_if_missing
Regrows a given external limb if it is missing. Does not add internal organs back in.
+Returns whether or not it regrew the limb
+
Arguments:
+
+
limb_name - The name of the limb being added. "l_arm" for example
+
sec_hud_set_ID
Security HUDs! Basic mode shows only the job.
set_alpha_tracking
Helper for tracking alpha, use this to set an alpha source
+
alpha_num - num between 0 and 255 that represents the alpha from source
+source - a datum that is the cause of the alpha source. This will be turned into a key via UID.
+update_alpha - boolean if alpha should be updated with this proc. Set this to false if you plan to animate the alpha after this call.
set_species
Change a mob's species.
+
Arguments:
+
+
new_species - The user's new species.
+
use_default_color - If true, use the species' default color for the new mob.
+
delay_icon_update - If true, UpdateAppearance() won't be called in this proc.
+
skip_same_check - If true, don't bail out early if we would be changing to our current species and run through everything anyway.
+
retain_damage - If true, damage on the mob will be re-applied post-transform. Otherwise, the mob will have its organs healed.
+
transformation - If true, don't apply new species traits to the mob. A false value should be used when creating a new mob instead of transforming into a new species.
+
keep_missing_bodyparts - If true, any bodyparts (legs, head, etc.) that were missing on the mob before species change will be missing post-change as well.
+
setup_dna
Sets up DNA and species.
+
Arguments:
+
+
new_species - The new species to assign.
+
setup_other
Sets up other variables and components that may be needed for gameplay.
sop_legal
Gives the imaginary legal sop booklet verb
space_law
Gives the imaginary space law booklet verb
tintcheck
tintcheck()
+Checks eye covering items for visually impairing tinting, such as welding masks
+Checked in life.dm. 0 & 1 = no impairment, 2 = welding mask overlay, 3 = You can see jack, but you can't see shit.
update_hair
Generates overlays for the hair layer.
\ No newline at end of file
diff --git a/mob/living/carbon/human/monkey/magic.html b/mob/living/carbon/human/monkey/magic.html
new file mode 100644
index 00000000000..3c31f57ed16
--- /dev/null
+++ b/mob/living/carbon/human/monkey/magic.html
@@ -0,0 +1 @@
+/mob/living/carbon/human/monkey/magic - Space Station 13Space Station 13 - Modules - Types — Var Details
Stores the timer ID of the timer that happens in Life() to prevent multiple of the same timer happening.
Var Details
return_timer
Stores the timer ID of the timer that happens in Life() to prevent multiple of the same timer happening.
\ No newline at end of file
diff --git a/mob/living/silicon.html b/mob/living/silicon.html
new file mode 100644
index 00000000000..f7c785e1f51
--- /dev/null
+++ b/mob/living/silicon.html
@@ -0,0 +1,12 @@
+/mob/living/silicon - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The delay used when toggling door bolts or electrification
is_centered
For cyborgs with wide "heads", when false causes the hat icon to be stretched.
Proc Details
can_hear
EAR DAMAGE
place_on_head
Attempts to put an item on a silicon's head.
+
Arguments:
+
+
item_to_add - The item we're attempting to place on a silicon.
+
user - Mob trying to put a hat on a silicon.
+Returns boolean reflecting if a hat was succesfully placed on the silicon.
+
remove_from_head
Attempts to remove any hats a silicon is wearing.
+
Arguments:
+
+
user - Mob trying to remove a silicon's hat.
+Returns boolean reflecting if a hat was successfully removed from the silicon.
+
run_armor
returns the damage value of the attack after processing the silicons's various armor protections
subsystem_atmos_control
Atmos Control
subsystem_crew_monitor
Crew Monitor
subsystem_law_manager
Law Manager
subsystem_power_monitor
Power Monitor
\ No newline at end of file
diff --git a/mob/living/silicon/ai.html b/mob/living/silicon/ai.html
new file mode 100644
index 00000000000..cdccaa4d4f1
--- /dev/null
+++ b/mob/living/silicon/ai.html
@@ -0,0 +1 @@
+/mob/living/silicon/ai - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Removes all malfunction-related /datum/action's from the target AI.
Var Details
adapter_efficiency
How effective is the adapter?
ai_announcement_string_menu
The cached AI annoucement help menu.
allow_teleporter
If true, this AI core can use the teleporter.
announce_arrivals
If our AI doesn't want to be the arrivals announcer, this gets set to FALSE.
bluespace_miner
Has the AI unlocked a bluespace miner?
bluespace_miner_rate
Credit payout rate
cracked_camera
Set to true if the AI cracks it's camera by using the malf ability
enhanced_tracking
Do we have the enhanced tracker?
enhanced_tracking_delay
The current delay on enhanced tracking
in_storage
Is the AI in storage?
last_research_time
When did we last research something?
nanite_regen
Base rate of nanite regen
next_payout
Time until next payout
purchased_modules
List of modules the AI has purchased malf upgrades for.
research_level
How potent is the research subsystem?
research_subsystem
Has the AI unlocked a research subsystem?
research_time
How long does it take to unlock the next research?
tracked_mob
Who are we tracking with the enhanced tracker?
tracker_alert_cooldown
Is the interval active
tracking_alert_interval
Interval between camera pings to prevent spammed alerts
turrets_upgraded
Whether or not the AI has upgraded their turrets
universal_adapter
Whether or not the AI has unlocked universal adapter
Proc Details
remove_malf_abilities
Removes all malfunction-related /datum/action's from the target AI.
\ No newline at end of file
diff --git a/mob/living/silicon/pai.html b/mob/living/silicon/pai.html
new file mode 100644
index 00000000000..3f7d826eb21
--- /dev/null
+++ b/mob/living/silicon/pai.html
@@ -0,0 +1 @@
+/mob/living/silicon/pai - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/silicon/robot.html b/mob/living/silicon/robot.html
new file mode 100644
index 00000000000..8abb832607c
--- /dev/null
+++ b/mob/living/silicon/robot.html
@@ -0,0 +1,30 @@
+/mob/living/silicon/robot - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
If set to TRUE, the robot can see the types and precice quantities of reagents in transparent containers, the % amount of different reagents in opaque containers, and can identify different blood types.
Sets the offset for a cyborg's hats based on their module icon.
+Borgs are grouped by similar sprites (Eg. all the Noble borgs are all the same sprite but recoloured.)
Take the borg's upgrades and spill them on the floor
Var Details
all_active_items
The list of up to 3 items the borg can have "equipped". The contents will either be CYBORG_EMPTY_MODULE for nothing, or the item selected
allow_rename
Can a robot rename itself with the Namepick verb?
allow_resprite
Can a robot change it's looks after the module is initialized? Used by syndicate combat borgs.
being_charged
Is the robot already being charged by a roboticist?
braintype
Determines if the robot is referred to as an "Android", "Robot", or "Cyborg" based on the type of brain inside.
brute_mod
Incoming brute damage is multiplied by this number.
burn_mod
Incoming burn damage is multiplied by this number.
can_lock_cover
If set to TRUE, a robot can re-lock its own cover.
components
Components are basically robot organs.
custom_panel_names
Robot skins with non-default sprites for an open service panel.
damage_protection
All incoming damage has this number subtracted from it.
done_resprite
Has the robot done its one allowed resprite?
ear_protection
Is the robot protected from the audio component of flashbangs? Prevents inflicting confusion.
emagged
Has the robot been emagged?
emp_protection
Is the robot immune to EMPs?
externally_powered
If the cyborg is in a charger, or otherwise receiving power from an outside source.
eye_protection
Is the robot protected from the visual portion of flashbangs and flashes?
floorbuffer
Does the robot clean dirt under it when it moves onto a tile?
grouped_eye_names
Robot skins with recoloured variants available on multiple modules. They all reuse a single eye sprite.
has_advanced_reagent_vision
If set to TRUE, the robot can see the types and precice quantities of reagents in transparent containers, the % amount of different reagents in opaque containers, and can identify different blood types.
has_camera
Determines if a robot acts as a mobile security camera that can be observed through security consoles or by an AI.
ident
Used when generating the number in default robot names.
ionpulse
Does the robot have ion thrusters installed?
ionpulse_on
Are the robot's ion thrusters activated?
is_emaggable
Can the robot be emagged?
lamp_intensity
Luminosity of the headlamp. 0 is off. Higher settings than the minimum require power. Increments in steps of 2.
lamp_max
Maximum brightness of a robot's headlamp. Set as a var for easy adjusting.
lamp_recharging
Flag for if the headlamp is on cooldown after being forcibly disabled (e.g. by a shadow deamon).
last_camera_update
When the camera moved signal was sent last. Avoid overdoing it.
lawupdate
Determines if the robot tries to sync its laws to a connected AI.
lockcharge
Used when locking down a robot to preserve cell charge.
locked
Is the robot's cover locked?
low_power_mode
Has the robot's power cell run out of charge?
mail_destination
Integer used to determine self-mailing location, used only by drones and saboteur robots.
mmi
Used for deconstruction to remember what the robot was constructed out of.
modtype
What specialisation the robot has.
module
A reference to the type of cyborg it is, i.e. Engineering, Security, Medical etc.
modules_break
If set to TRUE, the robot's 3 module slots will progressively become unusable as they take damage.
opened
Is the robot's maintenance panel open?
pdahide
If set to TRUE, the robot will be hidden on the PDA messenger list.
rebooting
If the cyborg is rebooting from stamcrit
req_access
Used for robot access checks.
req_one_access
Determines the ID access needed to unlock the robot's cover.
robot_suit
Used for deconstruction to remember what the robot was constructed out of.
scrambledcodes
If set to TRUE, a robot will not be visible on the robotics control console.
selected_item
The item the borg currently has selected, or null if nothing is selected
slowdown_cap
What the cyborg's maximum slowdown penalty is, if it has one.
speed
Speed modifier. Positive numbers reduce speed, negative numbers increase it.
sprites_with_variants
Robot icons that have multiple subvarants.
tracking_entities
The number of known entities currently accessing the internal camera.
variable_custom_panels
Robot skins with different sprites for open panels for each module.
weapons_unlock
Setting to TRUE unlocks a borg's Safety Override modules.
Proc Details
activated
Returns true if O is in the cyborg's hotbar, false otherwise
deactivate_all
Deactivate all the screen objects, removing the green background from all of them
disable_random_component
Disables a random component for the duration, or until manually turned back on.
get_armour
Returns the armour component for a borg, or false if its missing or broken
get_cell_component
Returns the power cell component for a borg, or false if its missing or broken
get_module_sprites
Returns an associative list of possible borg sprites based on the selected_module.
+
Key: Sprite name | Value: Sprite icon
+
Arguments:
+
+
selected_module - The chosen cyborg module to get the sprites for.
+
get_module_types
Returns a list of choosable module types, associated with the module icon for the radial menu.
+
Key: Module name | Value: Module 'icon'
+
By default this returns the Engineering, Janitor, Medical, Mining, and Service modules.
+If there are any [/mob/living/silicon/robot/var/force_modules] set, then they are returned instead.
+If the MMI has a xenomorph brain in it ([/obj/item/mmi/var/alien]), then only the "Hunter" and standard modules is returned.
get_sprite_variants
Returns an associative list of unique borg sprite variations based on get_module_sprites.
+
Key: Sprite name | Value: Sprite icon
+
Arguments:
+
+
selected_module - The chosen cyborg module to get the sprites for.
+
selected_sprite - The plaintext name of the icon_state as seen by the player in the radial menu.
+
initialize_module
Sets up the module items and sprites for the cyborg module chosen in pick_module().
+
Arguments:
+
+
selected_module - The name of the module chosen by the player in the previous procs.
+
selected_sprite - The name of the sprite chosen by the player in the previous procs.
+
module_sprites - The list of sprites possible for the given module. Used to transfer the icon and icon_state variables to the player.
+
observer_screen_update
Updates the observers's screens with cyborg itemss.
+Arguments
+
+
item_module - the item being added or removed from the screen
+
add - whether or not the item is being added, or removed.
+
on_drop_hotkey_press
Used in robot.dm when the user presses "Q" by default.
robot_module_hat_offset
Sets the offset for a cyborg's hats based on their module icon.
+Borgs are grouped by similar sprites (Eg. all the Noble borgs are all the same sprite but recoloured.)
set_mail_tag
Set Mail Tag
spill_upgrades
Take the borg's upgrades and spill them on the floor
\ No newline at end of file
diff --git a/mob/living/silicon/robot/destroyer.html b/mob/living/silicon/robot/destroyer.html
new file mode 100644
index 00000000000..608a9a17435
--- /dev/null
+++ b/mob/living/silicon/robot/destroyer.html
@@ -0,0 +1 @@
+/mob/living/silicon/robot/destroyer - Space Station 13Space Station 13 - Modules - Types — Proc Details
Handles transitioning between standing normally, and being a roly-poly.
Proc Details
update_rolling_icon
Handles transitioning between standing normally, and being a roly-poly.
\ No newline at end of file
diff --git a/mob/living/silicon/robot/drone.html b/mob/living/silicon/robot/drone.html
new file mode 100644
index 00000000000..74a71e3393b
--- /dev/null
+++ b/mob/living/silicon/robot/drone.html
@@ -0,0 +1 @@
+/mob/living/silicon/robot/drone - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/simple_animal.html b/mob/living/simple_animal.html
new file mode 100644
index 00000000000..93e440759c5
--- /dev/null
+++ b/mob/living/simple_animal.html
@@ -0,0 +1 @@
+/mob/living/simple_animal - Space Station 13Space Station 13 - Modules - Types — Var Details
The Status of our AI, can be set to AI_ON (On, usual processing), AI_IDLE (Will not process, but will return to AI_ON if an enemy comes near), AI_OFF (Off, Not processing ever)
Atmos effect - Yes, you can make creatures that require plasma or co2 to survive. N2O is a trace gas and handled separately, hence why it isn't here. It'd be hard to add it. Hard and me don't mix (Yes, yes make all the dick jokes you want with that.) - Errorage
The Status of our AI, can be set to AI_ON (On, usual processing), AI_IDLE (Will not process, but will return to AI_ON if an enemy comes near), AI_OFF (Off, Not processing ever)
admin_prev_health
Health of the mob before being admin-frozen, restored afterwards
animal_species
Sorry, no spider+corgi buttbabies.
armor_penetration_flat
Flat armour reduction, occurs after percentage armour penetration.
armor_penetration_percentage
Percentage armour reduction, happens before flat armour reduction.
atmos_requirements
Atmos effect - Yes, you can make creatures that require plasma or co2 to survive. N2O is a trace gas and handled separately, hence why it isn't here. It'd be hard to add it. Hard and me don't mix (Yes, yes make all the dick jokes you want with that.) - Errorage
can_be_on_fire
If the mob can catch fire
can_crawl
Can this simple mob crawl or not? If FALSE, it won't get immobilized by crawling
can_have_ai
Once we have become sentient, we can never go back
childtype
Hot simple_animal baby making vars
cold_damage_per_tick
Same as heat_damage_per_tick, only if the bodytemperature it's lower than minbodytemp
damage_coeff
1 for full damage , 0 for none , -1 for 1:1 heal from that source
death_sound
The sound played on death
del_on_death
Causes mob to be deleted on death, useful for mobs that spawn lootable corpses
emote_hear
Hearable emotes
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
environment_smash
Set to 1 to allow breaking of crates,lockers,racks,tables; 2 for walls; 3 for Rwalls
fire_damage
Damage the mob will take if it is on fire
flip_on_death
Flip the sprite upside down on death. Mostly here for things lacking custom dead sprites.
footstep_type
What kind of footstep this mob should have. Null if it shouldn't have any.
force_threshold
Minimum force required to deal any damage
friendly
If the mob does no damage with it's attack
gold_core_spawnable
If the mob can be spawned with a gold slime core. HOSTILE_SPAWN are spawned with plasma, FRIENDLY_SPAWN are spawned with blood
heat_damage_per_tick
Amount of damage applied if animal's body temperature is higher than maxbodytemp
icon_gib
We only try to show a gibbing animation if this exists.
loot
List of things spawned at mob's loc when it dies
master_commander
Holding var for determining who own/controls a sentient simple animal (for sentience potions).
melee_damage_lower
LETTING SIMPLE ANIMALS ATTACK? WHAT COULD GO WRONG. Defaults to zero so Ian can still be cuddly
melee_damage_type
Damage type of a simple mob's melee attack, should it do damage.
my_z
I don't want to confuse this with client registered_z
obj_damage
How much damage this simple animal does to objects, if any
sentience_type
Sentience type, for slime potions
shouldwakeup
Convenience var for forcibly waking up an idling AI on next check.
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 TRUE this stops the animal from moving when someone is pulling it.
unique_pet
If the mob can be renamed
unsuitable_atmos_damage
This damage is taken when atmos doesn't fit all the requirements above
wander
Does the mob wander around when idle?
\ No newline at end of file
diff --git a/mob/living/simple_animal/bot.html b/mob/living/simple_animal/bot.html
new file mode 100644
index 00000000000..096180e5a4d
--- /dev/null
+++ b/mob/living/simple_animal/bot.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/bot - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Setter for mode, so it's all tracable to one place.
Var Details
Radio
The bot's radio, for speaking to people.
access_card
The ID card that the bot "holds"
ai_waypoint
The end point of a bot's path, or the target location.
auto_patrol
Set to make bot automatically patrol
awaiting_beacon
Count of pticks awaiting a beacon response
base_speed
The speed at which the bot moves, or the number of times it moves per process() tick.
blockcount
Number of times retried a blocked path
bot_name
storing bot_name prior to pai and restoring it. MULEBOT uses this for suffix system
bot_purpose
Bot Purpose under Show Laws
bot_type
Type of bot, one of the *_BOT defines.
calling_ai
Links a bot to the AI calling it.
data_hud_type
The type of data HUD the bot uses. Diagnostic by default.
declare_message
What the bot will display to the HUD user.
destination
Destination description tag
frustration
Used by some bots for tracking failures to reach their target.
hacked
Used to differentiate between being hacked by silicons and emagged by humans.
hijacked
Is currently hijacked by a pulse demon?
ignore_job
List of jobs claimed by bot
ignore_list
List of unreachable targets for an ignore-list enabled bot to ignore.
ignore_list_cleanup_cd
Cooldown for when to cleanup the ignore list.
ignore_list_cleanup_timer
This ticks up every automated action, at 300 we clean the ignore list
last_target_location
Storing last chased target known location
lost_target
Will be true if we lost target we were chasing
mode
Standardizes the vars that indicate the bot is busy with its function.
model
The type of bot it is.
nearest_beacon
The nearest beacon's tag
nearest_beacon_loc
The nearest beacon's location
new_destination
Pending new destination (waiting for beacon response)
next_destination
The next destination in the patrol route
open
Maint panel
path
List of turfs through which a bot 'steps' to reach the waypoint
patrol_target
This is turf to navigate to (location of beacon)
radio_channel
The bot's default radio channel
radio_config
Which channels can the bot listen to
remote_disabled
If enabled, the AI cannot Remotely control a bot. It can still control it through cameras.
req_access
List of access values you can have to access the bot. Consider this as req_one_access
summon_target
The turf of a user summoning a bot.
text_dehack
Text shown when resetting a bots hacked status to normal.
text_dehack_fail
Shown when a silicon tries to reset a bot emagged with the emag item, which cannot be reset.
text_hack
Custom text returned to a silicon upon hacking a bot.
tries
Number of times the bot tried and failed to move.
Proc Details
add_to_ignore
Add an atom to our list of ignored objects.
clear_ignore_list
Wipe the ignore list.
remove_ignored_atom
Remove an atom from the ignore list.
set_mode
Setter for mode, so it's all tracable to one place.
\ No newline at end of file
diff --git a/mob/living/simple_animal/bot/floorbot.html b/mob/living/simple_animal/bot/floorbot.html
new file mode 100644
index 00000000000..286b3c1557e
--- /dev/null
+++ b/mob/living/simple_animal/bot/floorbot.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/bot/floorbot - Space Station 13Space Station 13 - Modules - Types — Var Details
Prevents the Floorbot nagging more than once per refill.
process_type
Determines what to do when process_scan() receives a target. See process_scan() for details.
replace_tiles
Add tiles to existing floor
\ No newline at end of file
diff --git a/mob/living/simple_animal/bot/medbot.html b/mob/living/simple_animal/bot/medbot.html
new file mode 100644
index 00000000000..aeba9d54fc0
--- /dev/null
+++ b/mob/living/simple_animal/bot/medbot.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/bot/medbot - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Given a proper medbot phrase key, say the line with any replacements, and play its sound.
Var Details
all_phrases
The above lists joined into one, for one-place lookups
previous_patient
UID of the previous patient. Used to avoid running selection checks on them if we failed to heal them.
Proc Details
medbot_phrase
Given a proper medbot phrase key, say the line with any replacements, and play its sound.
\ No newline at end of file
diff --git a/mob/living/simple_animal/bot/mulebot.html b/mob/living/simple_animal/bot/mulebot.html
new file mode 100644
index 00000000000..0510c8a4308
--- /dev/null
+++ b/mob/living/simple_animal/bot/mulebot.html
@@ -0,0 +1,7 @@
+/mob/living/simple_animal/bot/mulebot - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The maximum amount of tiles the MULE can search via SSpathfinder before giving up.
+Stored as a variable to allow VVing if there's any weirdness.
next_move_time
world.time of next move
step_delay
Delay in deciseconds between each step
Proc Details
show_controls
MARK: UI Section
unload
Drops any load or passengers the bot is carrying
+
Arguments:
+
+
dirn - Optional direction to unload, if zero unload at bot's location
+
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile.html b/mob/living/simple_animal/hostile.html
new file mode 100644
index 00000000000..ff4328c9a26
--- /dev/null
+++ b/mob/living/simple_animal/hostile.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/hostile - Space Station 13Space Station 13 - Modules - Types — Proc Details
Shortcut proc to allow initiating combat slightly faster than waiting for normal processing.
death
END HOSTILE MOB TARGETTING AND AGGRESSION
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile/asteroid/elite/broodmother.html b/mob/living/simple_animal/hostile/asteroid/elite/broodmother.html
new file mode 100644
index 00000000000..293c8d05a55
--- /dev/null
+++ b/mob/living/simple_animal/hostile/asteroid/elite/broodmother.html
@@ -0,0 +1,10 @@
+/mob/living/simple_animal/hostile/asteroid/elite/broodmother - Space Station 13Space Station 13 - Modules - Types
Goliath Broodmother
A stronger, faster variation of the goliath. Has the ability to spawn baby goliaths, which it can later detonate at will.
+When it's health is below half, tendrils will spawn randomly around it. When it is below a quarter of health, this effect is doubled.
+It's attacks are as follows:
+
+
Spawns a 3x3/plus shape of tentacles on the target location
+
Spawns 2 baby goliaths on its tile, up to a max of 8. Children blow up when they die.
+
The broodmother lets out a noise, and is able to move faster for 6.5 seconds.
+
Summons your children around you.
+The broodmother is a fight revolving around stage control, as the activator has to manage the baby goliaths and the broodmother herself, along with all the tendrils.
+
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile/asteroid/elite/herald.html b/mob/living/simple_animal/hostile/asteroid/elite/herald.html
new file mode 100644
index 00000000000..2e16b0deda7
--- /dev/null
+++ b/mob/living/simple_animal/hostile/asteroid/elite/herald.html
@@ -0,0 +1,10 @@
+/mob/living/simple_animal/hostile/asteroid/elite/herald - Space Station 13Space Station 13 - Modules - Types
Herald
A slow-moving projectile user with a few tricks up it's sleeve. Less unga-bunga than Colossus, with more cleverness in it's fighting style.
+As it's health gets lower, the amount of projectiles fired per-attack increases.
+It's attacks are as follows:
+
+
Fires three projectiles in a given direction.
+
Fires a spread in every cardinal and diagonal direction at once, then does it again after a bit.
+
Shoots a single, golden bolt. Wherever it lands, the herald will be teleported to the location.
+
Spawns a mirror which reflects projectiles directly at the target.
+Herald is a more concentrated variation of the Colossus fight, having less projectiles overall, but more focused attacks.
+
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile/asteroid/elite/legionnaire.html b/mob/living/simple_animal/hostile/asteroid/elite/legionnaire.html
new file mode 100644
index 00000000000..55c406aa9dd
--- /dev/null
+++ b/mob/living/simple_animal/hostile/asteroid/elite/legionnaire.html
@@ -0,0 +1,10 @@
+/mob/living/simple_animal/hostile/asteroid/elite/legionnaire - Space Station 13Space Station 13 - Modules - Types — Var Details
Legionnaire
A towering skeleton, embodying the power of Legion.
+As it's health gets lower, the head does more damage.
+It's attacks are as follows:
+
+
Charges at the target after a telegraph, throwing them across the arena should it connect.
+
Legionnaire's head detaches, attacking as it's own entity. Has abilities of it's own later into the fight. Once dead, regenerates after a brief period. If the skill is used while the head is off, it will be killed.
+
Leaves a pile of bones at your location. Upon using this skill again, you'll swap locations with the bone pile.
+
Spews a cloud of smoke from it's maw, wherever said maw is.
+A unique fight incorporating the head mechanic of legion into a whole new beast. Combatants will need to make sure the tag-team of head and body don't lure them into a deadly trap.
Whether or not the legionnaire is currently charging, used to deny movement input if he is
Var Details
charging
Whether or not the legionnaire is currently charging, used to deny movement input if he is
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile/asteroid/elite/pandora.html b/mob/living/simple_animal/hostile/asteroid/elite/pandora.html
new file mode 100644
index 00000000000..4fbc83dbeb3
--- /dev/null
+++ b/mob/living/simple_animal/hostile/asteroid/elite/pandora.html
@@ -0,0 +1,10 @@
+/mob/living/simple_animal/hostile/asteroid/elite/pandora - Space Station 13Space Station 13 - Modules - Types
Pandora
A box with a similar design to the Hierophant which trades large, single attacks for more frequent smaller ones.
+As it's health gets lower, the time between it's attacks decrease.
+It's attacks are as follows:
+
+
Fires hierophant blasts in a straight line. Can only fire in a straight line in 8 directions, being the diagonals and cardinals.
+
Creates a box of hierophant blasts around the target. If they try to run away to avoid it, they'll very likely get hit.
+
Teleports the pandora from one location to another, almost identical to Hierophant.
+
Spawns a 7x7 AOE at the location of choice, spreading out from the center.
+Pandora's fight mirrors Hierophant's closely, but has stark differences in attack effects. Instead of long-winded dodge times and long cooldowns, Pandora constantly attacks the opponent, but leaves itself open for attack.
+
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile/construct.html b/mob/living/simple_animal/hostile/construct.html
new file mode 100644
index 00000000000..c0b8f9944ab
--- /dev/null
+++ b/mob/living/simple_animal/hostile/construct.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/hostile/construct - Space Station 13Space Station 13 - Modules - Types — Var Details
Message to send to the construct when they are created, containing information about their role.
Var Details
held_body
The body/brain of the player inside this construct, transferred over from the soulstone.
holy
Is this a holy/purified construct?
playstyle_string
Message to send to the construct when they are created, containing information about their role.
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile/construct/armoured.html b/mob/living/simple_animal/hostile/construct/armoured.html
new file mode 100644
index 00000000000..660e8386797
--- /dev/null
+++ b/mob/living/simple_animal/hostile/construct/armoured.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/hostile/construct/armoured - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile/guardian.html b/mob/living/simple_animal/hostile/guardian.html
new file mode 100644
index 00000000000..b840ff9708d
--- /dev/null
+++ b/mob/living/simple_animal/hostile/guardian.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/hostile/guardian - Space Station 13Space Station 13 - Modules - Types — Var Details
If true, it will not make a message on host when hit, or make an effect when deploying or recalling
Var Details
stealthy_deploying
If true, it will not make a message on host when hit, or make an effect when deploying or recalling
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile/guardian/gaseous.html b/mob/living/simple_animal/hostile/guardian/gaseous.html
new file mode 100644
index 00000000000..e190f63e98d
--- /dev/null
+++ b/mob/living/simple_animal/hostile/guardian/gaseous.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/hostile/guardian/gaseous - Space Station 13Space Station 13 - Modules - Types — Var Details
Possible gases to expel, with how many moles they create.
Var Details
linda_flags
Linda flag for the expelled gas because we need to use special flags for it that are not readable in game well.
moles_of_gas
Moles of gas being expelled.
possible_gases
Possible gases to expel, with how many moles they create.
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile/guardian/protector.html b/mob/living/simple_animal/hostile/guardian/protector.html
new file mode 100644
index 00000000000..3e4f0ea595a
--- /dev/null
+++ b/mob/living/simple_animal/hostile/guardian/protector.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/hostile/guardian/protector - Space Station 13Space Station 13 - Modules - Types — Var Details
The shields the guardian has, and brings with it as it moves
Var Details
connected_shields
The shields the guardian has, and brings with it as it moves
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile/megafauna.html b/mob/living/simple_animal/hostile/megafauna.html
new file mode 100644
index 00000000000..b958a23a7b3
--- /dev/null
+++ b/mob/living/simple_animal/hostile/megafauna.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/hostile/megafauna - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
This proc is called by the HRD-MDE grenade to enrage the megafauna. This should increase the megafaunas attack speed if possible, give it new moves, or disable weak moves. This should be reverseable, and reverses on zlvl change.
Handling the ore part of the mega reward, the higher the difficulty_ore_modifier the more ore will spawn
Var Details
difficulty_ore_modifier
How much ore should killing this give
enraged
Has someone enabled hard mode?
enraged_loot
Path of the hardmode loot disk, if applicable.
Proc Details
enrage
This proc is called by the HRD-MDE grenade to enrage the megafauna. This should increase the megafaunas attack speed if possible, give it new moves, or disable weak moves. This should be reverseable, and reverses on zlvl change.
generate_random_loot
If the megafauna has a pool of random loot items to pick from, override this proc to have it be set on initialization
spawn_ore_reward
Handling the ore part of the mega reward, the higher the difficulty_ore_modifier the more ore will spawn
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile/megafauna/ancient_robot.html b/mob/living/simple_animal/hostile/megafauna/ancient_robot.html
new file mode 100644
index 00000000000..831b0532a98
--- /dev/null
+++ b/mob/living/simple_animal/hostile/megafauna/ancient_robot.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/hostile/megafauna/ancient_robot - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile/megafauna/bubblegum.html b/mob/living/simple_animal/hostile/megafauna/bubblegum.html
new file mode 100644
index 00000000000..3a25adce88c
--- /dev/null
+++ b/mob/living/simple_animal/hostile/megafauna/bubblegum.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/hostile/megafauna/bubblegum - Space Station 13Space Station 13 - Modules - Types — Var Details
Does it have a portal to the funny second life arena created?
Var Details
enraged_healing
Enraged healing recived
second_life
Is it on its enraged exclusive second life?
second_life_portal
Does it have a portal to the funny second life arena created?
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile/megafauna/colossus.html b/mob/living/simple_animal/hostile/megafauna/colossus.html
new file mode 100644
index 00000000000..199c63d56d0
--- /dev/null
+++ b/mob/living/simple_animal/hostile/megafauna/colossus.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/hostile/megafauna/colossus - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile/megafauna/fleshling.html b/mob/living/simple_animal/hostile/megafauna/fleshling.html
new file mode 100644
index 00000000000..1fba3dcbb7d
--- /dev/null
+++ b/mob/living/simple_animal/hostile/megafauna/fleshling.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/hostile/megafauna/fleshling - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile/megafauna/hierophant.html b/mob/living/simple_animal/hostile/megafauna/hierophant.html
new file mode 100644
index 00000000000..9f6fea5c975
--- /dev/null
+++ b/mob/living/simple_animal/hostile/megafauna/hierophant.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/hostile/megafauna/hierophant - Space Station 13Space Station 13 - Modules - Types — Var Details
If the hiero has changed colour, stop the rays animation.
Var Details
colour_shifting
If the hiero has changed colour, stop the rays animation.
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile/morph.html b/mob/living/simple_animal/hostile/morph.html
new file mode 100644
index 00000000000..1824213834d
--- /dev/null
+++ b/mob/living/simple_animal/hostile/morph.html
@@ -0,0 +1,3 @@
+/mob/living/simple_animal/hostile/morph - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Adds the given amount of food to the gathered food and updates the actions.
+Does not include a check to see if it goes below 0 or not
Var Details
ambush_damage
How much damage a successful ambush attack does
ambush_prepared
If the morph is ready to perform an ambush
ambush_spell
The ambush action used by the morph
ambush_weaken
How much weaken a successful ambush attack applies
gathered_food
How much the morph has gathered in terms of food. Used to reproduce and such
mimic_spell
The spell the morph uses to morph
morphed
If the morph is disguised or not
pass_airlock_spell
The spell the morph uses to pass through airlocks
Proc Details
add_food
Adds the given amount of food to the gathered food and updates the actions.
+Does not include a check to see if it goes below 0 or not
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile/poison/terror_spider.html b/mob/living/simple_animal/hostile/poison/terror_spider.html
new file mode 100644
index 00000000000..4be1ae28343
--- /dev/null
+++ b/mob/living/simple_animal/hostile/poison/terror_spider.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/hostile/poison/terror_spider - Space Station 13Space Station 13 - Modules - Types — Var Details
Does this terror speak loudly on the terror hivemind?
Var Details
loudspeaker
Does this terror speak loudly on the terror hivemind?
\ No newline at end of file
diff --git a/mob/living/simple_animal/hostile/spaceinfected/gateopener.html b/mob/living/simple_animal/hostile/spaceinfected/gateopener.html
new file mode 100644
index 00000000000..818e4fc9c13
--- /dev/null
+++ b/mob/living/simple_animal/hostile/spaceinfected/gateopener.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/hostile/spaceinfected/gateopener - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/simple_animal/parrot.html b/mob/living/simple_animal/parrot.html
new file mode 100644
index 00000000000..8894fad47a3
--- /dev/null
+++ b/mob/living/simple_animal/parrot.html
@@ -0,0 +1,5 @@
+/mob/living/simple_animal/parrot - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/mob/living/simple_animal/pet/cat/cak.html b/mob/living/simple_animal/pet/cat/cak.html
new file mode 100644
index 00000000000..be6478d67a0
--- /dev/null
+++ b/mob/living/simple_animal/pet/cat/cak.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/pet/cat/cak - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/mob/living/simple_animal/pet/dog/corgi.html b/mob/living/simple_animal/pet/dog/corgi.html
new file mode 100644
index 00000000000..fd51bae7042
--- /dev/null
+++ b/mob/living/simple_animal/pet/dog/corgi.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/pet/dog/corgi - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Deadchat plays command that picks a new hat for Ian.
Var Details
inventory_back
Currently worn item on the back slot
inventory_head
Currently worn item on the head slot
Proc Details
drop_hat
Deadchat plays command that drops the current hat off Ian.
find_new_hat
Deadchat plays command that picks a new hat for Ian.
\ No newline at end of file
diff --git a/mob/living/simple_animal/slime.html b/mob/living/simple_animal/slime.html
new file mode 100644
index 00000000000..f0e41a9ffbe
--- /dev/null
+++ b/mob/living/simple_animal/slime.html
@@ -0,0 +1 @@
+/mob/living/simple_animal/slime - Space Station 13Space Station 13 - Modules - Types — Var Details
If a slime has been hit with a freeze gun, or wrestled/attacked off a human, they become disciplined and don't attack anymore for a while
SStun
Stun variable
Tempstun
Temporary temperature stuns
colour
TIME FOR SUBSPECIES
effectmod
CORE-CROSSING CODE
\ No newline at end of file
diff --git a/mob/new_player.html b/mob/new_player.html
new file mode 100644
index 00000000000..e5fe2f8d77a
--- /dev/null
+++ b/mob/new_player.html
@@ -0,0 +1 @@
+/mob/new_player - Space Station 13Space Station 13 - Modules - Types — Var Details
Has this player chosen to respawn as a new character?
Var Details
chose_respawn
Has this player chosen to respawn as a new character?
\ No newline at end of file
diff --git a/mob/oranges_ear.html b/mob/oranges_ear.html
new file mode 100644
index 00000000000..11eab4ff351
--- /dev/null
+++ b/mob/oranges_ear.html
@@ -0,0 +1,35 @@
+/mob/oranges_ear - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
oranges_ear
+
Oranges Ear
+
+
turns out view() spends a significant portion of its processing time generating lists of contents of viewable turfs which includes EVERYTHING on it visible
+
+
+
and the turf itself. there is an optimization to view() which makes it only iterate through either /obj or /mob contents, as well as normal list typechecking filters
+
+
+
a fuckton of these are generated as part of its SS's init and stored in a list, when requested for a list of movables returned by the spatial grid or by some
+
+
+
superset of the final output that must be narrowed down by view(), one of these gets put on every turf that contains the movables that need filtering
+
+
+
and each is given references to the movables they represent. that way you can do for(var/mob/oranges_ear/ear in view(...)) and check what they reference
+
+
+
as opposed to for(var/atom/movable/target in view(...)) and checking if they have the properties you want which leads to much larger lists generated by view()
+
+
+
and also leads to iterating through more movables to filter them.
+
+
+
TLDR: iterating through just mobs is much faster than all movables when iterating through view() on average, this system leverages that to boost speed
+
+
+
enough to offset the cost of allocating the mobs
+
+
+
named because the idea was first made by oranges and i didnt know what else to call it (note that this system was originally made for get_hearers_in_view())
references to everything "on" the turf we are assigned to, that we care about. populated in assign() and cleared in unassign().
+movables iside of other movables count as being "on" if they have get_turf(them) == our turf. intentionally not a lazylist
references to everything "on" the turf we are assigned to, that we care about. populated in assign() and cleared in unassign().
+movables iside of other movables count as being "on" if they have get_turf(them) == our turf. intentionally not a lazylist
Proc Details
unassign
clean this oranges_ear up for future use
\ No newline at end of file
diff --git a/obj.html b/obj.html
new file mode 100644
index 00000000000..dfdd3f93ce6
--- /dev/null
+++ b/obj.html
@@ -0,0 +1,58 @@
+/obj - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
This proc handles safely removing occupant mobs from the object if they must be teleported out (due to being SSD/AFK, by admin teleport, etc) or transformed.
Only tesla coils, vehicles, and grounding rods currently call this because mobs are already targeted over all other objects, but this might be useful for more things later.
Var Details
acid_level
How much acid is on this object?
being_shocked
Is this object currently being zapped by lightning?
can_be_hit
Can this object be attacked in melee?
custom_fire_overlay
If provided, a custom overlay representing being the object being on fire.
damage_deflection
Damage under this value will be completely ignored.
damtype
What type of damage does this object deal?
emagged
Is this object emagged?
force
How much damage this object does in melee.
force_blueprints
Forces the object to be on the blueprints, regardless of when it was created.
in_use
If we have a user using us, this will become TRUE. We will check if the user has stopped using us, and thus stop updating and LAGGING EVERYTHING!
integrity_failure
Health threshold below which the object will break. Defaults to 0 for no special broken behavior.
max_integrity
Maximum health of the object, and default value of obj_integrity.
obj_integrity
Health of the object. If unspecified, defaults to max_integrity.
on_blueprints
Are we visible on the station blueprints at roundstart?
origin_tech
Used by R&D to determine what research bonuses it grants.
req_access
A list of accesses as defined by code/__DEFINES/access_defines.dm. All accesses are required when checking.
req_one_access
A list of accesses as defined by code/__DEFINES/access_defines.dm. At least one access is required when checking.
resistance_flags
Flags that make this object harder to destroy, e.g. [ACID_PROOF], [FIRE_PROOF], [INDESTRUCTIBLE].
sharp
Can this object cut?
species_exception
A list of otherwise restricted /datum/species type paths that are permitted to wear this item.
speed_process
Should this object speed process? Greatly increases the frequency of process events (5 times more frequent).
suicidal_hands
Does this object require you to hold it to commit suicide with it?
Proc Details
GetExplosionBlock
returns how much the object blocks an explosion. Used by subtypes.
acid_act
the obj's reaction when touched by acid
acid_melt
called when the obj is destroyed by acid.
acid_processing
the proc called by the acid subsystem to process the acid that's on the obj
bitmask_smooth
Object override to prevent unanchored objects from smoothing
burn
called when the obj is destroyed by fire
calculate_oneshot_damage
returns the amount of damage required to destroy this object in a single hit.
default_unfasten_wrench
Handles (un)anchoring. Returns TRUE if successful, otherwise returns FALSE.
default_welder_repair
Returns TRUE if the object was successfully repaired. Fully repairs an object (setting BROKEN to FALSE), default repair time = 40.
extinguish
Called when the obj is no longer on fire.
fire_act
FIRE
force_eject_occupant
This proc handles safely removing occupant mobs from the object if they must be teleported out (due to being SSD/AFK, by admin teleport, etc) or transformed.
gender_reveal
Creates an animation of the item slowly lifting up from the floor with a colored outline, then slowly drifting back down.
+Arguments:
+
+
outline_color: Default is between pink and light blue, is the color of the outline filter.
+
ray_color: Null by default. If not set, just copies outline. Used for the ray filter.
+
anim_time: Total time of the animation. Split into two different calls.
+
do_float: Lets you disable the sprite floating up and down.
+
do_layer: Lets you disable the layering increase.
+
hulk_damage
Called to get the damage that hulks will deal to the obj.
modify_max_integrity
changes max_integrity while retaining current health percentage, returns TRUE if the obj got broken.
obj_destruction
what happens when the obj's integrity reaches zero.
play_attack_sound
the sound played when the obj is damaged.
remove_gender_reveal_fx
Removes the non-animate effects from above proc
run_obj_armor
returns the damage value of the attack after processing the obj's various armor protections
set_sharpness
Set whether the item should be sharp or not
suicide_act
Override this to enable special self-termination interactions on an object when using the suicide command.
ui_login_act
Call this from a proc that is called in ui_act() to process login actions
+
Arguments:
+
+
action - The called action
+
params - The params to the action
+
ui_login_attackby
Convenience function to perform login actions when
+the source object is hit by specific items.
+
Arguments:
+
+
O - The object
+
user - The user
+
ui_login_data
Appends login state data.
+
Arguments:
+
+
data - The data list to be returned
+
user - The user calling ui_data()
+
state - The current login state
+
ui_login_eject
Attempts to eject the inserted ID.
+
Arguments:
+
+
state - The current login state
+
ui_login_get
Returns (or creates) the login state for the source object.
+
Arguments:
+
+
state - The current login state
+
ui_login_insert
Attempts to insert an object as an ID.
+
Arguments:
+
+
O - The object to try inserting
+
state - The current login state
+
ui_login_login
Attempts to log in with the given login type.
+
Arguments:
+
+
login_type - The login type: LOGIN_TYPE_NORMAL (checks for inserted ID), LOGIN_TYPE_AI, LOGIN_TYPE_ROBOT and LOGIN_TYPE_ADMIN
+
state - The current login state
+
ui_login_logout
Attempts to log out.
+
Arguments:
+
+
state - The current login state
+
ui_login_on_login
Called on successful login.
+
Arguments:
+
+
state - The current login state
+
ui_login_on_logout
Called on successful logout.
+
Arguments:
+
+
state - The current login state
+
zap_act
Called when the obj is hit by a tesla bolt.
zap_buckle_check
Only tesla coils, vehicles, and grounding rods currently call this because mobs are already targeted over all other objects, but this might be useful for more things later.
\ No newline at end of file
diff --git a/obj/airlock_filler_object.html b/obj/airlock_filler_object.html
new file mode 100644
index 00000000000..e123ce3b8bf
--- /dev/null
+++ b/obj/airlock_filler_object.html
@@ -0,0 +1 @@
+/obj/airlock_filler_object - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Multi-tile airlocks pair with a filler panel, if one goes so does the other.
Var Details
filled_airlock
The door/airlock this fluff panel is attached to
Proc Details
CanPass
They only block our visuals, not movement
pair_airlock
Multi-tile airlocks pair with a filler panel, if one goes so does the other.
\ No newline at end of file
diff --git a/obj/docking_port.html b/obj/docking_port.html
new file mode 100644
index 00000000000..0521611544c
--- /dev/null
+++ b/obj/docking_port.html
@@ -0,0 +1 @@
+/obj/docking_port - Space Station 13Space Station 13 - Modules - Types — Var Details
Position relative to covered area, parallel to direction.
dir
This should point away from the docking port door, i.e. towards the ship.
dwidth
Position relative to covered area, perpendicular to direction.
height
Size of covered area, parallel to direction.
width
Size of covered area, perpendicular to direction.
\ No newline at end of file
diff --git a/obj/docking_port/mobile.html b/obj/docking_port/mobile.html
new file mode 100644
index 00000000000..5069469fbab
--- /dev/null
+++ b/obj/docking_port/mobile.html
@@ -0,0 +1 @@
+/obj/docking_port/mobile - Space Station 13Space Station 13 - Modules - Types — Var Details
Is this a shuttle that completely destroys whatever dares to get in it's way?
lockeddown
If this variable is true, shuttle is on lockdown, and other requests can not be processed
port_direction
relative direction of the docking port from the front of the shuttle. NORTH is towards front, EAST would be starboard side, WEST port, etc.
preferred_direction
The direction the shuttle prefers to travel in, ie what direction the animation will cause it to appear to be traveling in
shuttle_speed_factor
The speed factor for this shuttle. Higher means faster.
uses_lockdown
Does this shuttle use the lockdown system?
\ No newline at end of file
diff --git a/obj/docking_port/mobile/emergency.html b/obj/docking_port/mobile/emergency.html
new file mode 100644
index 00000000000..1bc94115ac5
--- /dev/null
+++ b/obj/docking_port/mobile/emergency.html
@@ -0,0 +1 @@
+/obj/docking_port/mobile/emergency - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/docking_port/stationary/transit.html b/obj/docking_port/stationary/transit.html
new file mode 100644
index 00000000000..0fa3b5fbd2b
--- /dev/null
+++ b/obj/docking_port/stationary/transit.html
@@ -0,0 +1 @@
+/obj/docking_port/stationary/transit - Space Station 13Space Station 13 - Modules - Types — Var Details
The turf reservation returned by the transit area request
Var Details
assigned_area
The area created during the transit area reservation
owner
The mobile port that owns this transit port
reserved_area
The turf reservation returned by the transit area request
\ No newline at end of file
diff --git a/obj/effect/abstract/chasm_storage.html b/obj/effect/abstract/chasm_storage.html
new file mode 100644
index 00000000000..9fec8f42005
--- /dev/null
+++ b/obj/effect/abstract/chasm_storage.html
@@ -0,0 +1,7 @@
+/obj/effect/abstract/chasm_storage - Space Station 13Space Station 13 - Modules - Types — Proc Details
chasm_storage
An abstract object which is basically just a bag that the chasm puts people inside
Called if something comes back to life inside the pit. Expected sources are badmins and changelings.
+Ethereals should take enough damage to be smashed and not revive.
+Arguments
+escapee - Lucky guy who just came back to life at the bottom of a hole.
Proc Details
on_revive
Called if something comes back to life inside the pit. Expected sources are badmins and changelings.
+Ethereals should take enough damage to be smashed and not revive.
+Arguments
+escapee - Lucky guy who just came back to life at the bottom of a hole.
\ No newline at end of file
diff --git a/obj/effect/abstract/particle_holder.html b/obj/effect/abstract/particle_holder.html
new file mode 100644
index 00000000000..d8afa10bbab
--- /dev/null
+++ b/obj/effect/abstract/particle_holder.html
@@ -0,0 +1,5 @@
+/obj/effect/abstract/particle_holder - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
particle_holder
These effects can be added to anything to hold particles, which is useful because Byond only allows a single particle per atom
logic proc for particle holders, aka where they move.
+subtypes of particle holders can override this for particles that should always be turf level or do special things when repositioning.
+this base subtype has some logic for items, as the loc of items becomes mobs very often hiding the particles
Var Details
holding_parent
The mob that is holding our item
last_attached_location_type
typepath of the last location we're in, if it's different when moved then we need to update vis contents
parent
The main item we're attached to at the moment, particle holders hold particles for something
Proc Details
on_move
signal called when parent is moved
on_qdel
signal called when parent is deleted
update_visual_contents
logic proc for particle holders, aka where they move.
+subtypes of particle holders can override this for particles that should always be turf level or do special things when repositioning.
+this base subtype has some logic for items, as the loc of items becomes mobs very often hiding the particles
\ No newline at end of file
diff --git a/obj/effect/abstract/voidball.html b/obj/effect/abstract/voidball.html
new file mode 100644
index 00000000000..dedcaddaf98
--- /dev/null
+++ b/obj/effect/abstract/voidball.html
@@ -0,0 +1 @@
+/obj/effect/abstract/voidball - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/effect/accelerated_particle.html b/obj/effect/accelerated_particle.html
new file mode 100644
index 00000000000..43e129c9d9f
--- /dev/null
+++ b/obj/effect/accelerated_particle.html
@@ -0,0 +1 @@
+/obj/effect/accelerated_particle - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/effect/anomalous_particulate.html b/obj/effect/anomalous_particulate.html
new file mode 100644
index 00000000000..585b59abb79
--- /dev/null
+++ b/obj/effect/anomalous_particulate.html
@@ -0,0 +1,4 @@
+/obj/effect/anomalous_particulate - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Begin to drain the influence, setting being_drained,
+registering an examine signal, and beginning a do_after.
Var Details
being_drained
Whether we're currently being drained or not.
Proc Details
after_drain
Handle the effects of the drain.
drain_influence
Begin to drain the influence, setting being_drained,
+registering an examine signal, and beginning a do_after.
+
If successful, the influence is drained and deleted.
\ No newline at end of file
diff --git a/obj/effect/anomaly.html b/obj/effect/anomaly.html
new file mode 100644
index 00000000000..c1403d60c09
--- /dev/null
+++ b/obj/effect/anomaly.html
@@ -0,0 +1 @@
+/obj/effect/anomaly - Space Station 13Space Station 13 - Modules - Types — Var Details
Used by the canister grenades to modify functions.
drops_core
Do we drop a core when we're neutralized?
lifespan
Time in deciseconds before the anomaly triggers
\ No newline at end of file
diff --git a/obj/effect/anomaly/bhole.html b/obj/effect/anomaly/bhole.html
new file mode 100644
index 00000000000..a3f1a32ab2e
--- /dev/null
+++ b/obj/effect/anomaly/bhole.html
@@ -0,0 +1 @@
+/obj/effect/anomaly/bhole - Space Station 13Space Station 13 - Modules - Types — Var Details
The timer that will give us an extra proccall of ripping the floors up
Var Details
timer
The timer that will give us an extra proccall of ripping the floors up
\ No newline at end of file
diff --git a/obj/effect/anomaly/bluespace.html b/obj/effect/anomaly/bluespace.html
new file mode 100644
index 00000000000..e854a8d9f79
--- /dev/null
+++ b/obj/effect/anomaly/bluespace.html
@@ -0,0 +1 @@
+/obj/effect/anomaly/bluespace - Space Station 13Space Station 13 - Modules - Types — Var Details
Do we have a smaller mob and object grab range, and 4 seconds of mercy?
Var Details
fully_active
Used by supermatter anomalies. If fully active, behaves like normal. Otherwise, will not teleport people, to keep them being telefragged into the SM
mass_teleporting
Do we teleport everything around us to a beacon when despawning?
mob_range
What is the range we will grab mobs to teleport from
other_range
What is the range we will grab objects to teleport from
supermatter_spawned
Do we have a smaller mob and object grab range, and 4 seconds of mercy?
\ No newline at end of file
diff --git a/obj/effect/cosmic_rune.html b/obj/effect/cosmic_rune.html
new file mode 100644
index 00000000000..7537d65370a
--- /dev/null
+++ b/obj/effect/cosmic_rune.html
@@ -0,0 +1 @@
+/obj/effect/cosmic_rune - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
cosmic_rune
A rune that allows you to teleport to the location of a linked rune.
Used for unlinking the other rune if this rune gets destroyed
Var Details
linked_rune
The other rune this rune is linked with
rune_effect
Effect for when someone teleports
Proc Details
fail_invoke
For if someone failed to invoke the rune
invoke
For invoking the rune
link_rune
For linking a new rune
unlink_rune
Used for unlinking the other rune if this rune gets destroyed
\ No newline at end of file
diff --git a/obj/effect/countdown.html b/obj/effect/countdown.html
new file mode 100644
index 00000000000..527047b697b
--- /dev/null
+++ b/obj/effect/countdown.html
@@ -0,0 +1 @@
+/obj/effect/countdown - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/effect/cross_action/spacetime_dist.html b/obj/effect/cross_action/spacetime_dist.html
new file mode 100644
index 00000000000..daf4e831033
--- /dev/null
+++ b/obj/effect/cross_action/spacetime_dist.html
@@ -0,0 +1 @@
+/obj/effect/cross_action/spacetime_dist - Space Station 13Space Station 13 - Modules - Types — Var Details
Used to prevent an infinite loop in the space tiime continuum
linked_dist
A flags which save people from being thrown about
\ No newline at end of file
diff --git a/obj/effect/decal/cleanable.html b/obj/effect/decal/cleanable.html
new file mode 100644
index 00000000000..2d8c2f3d98a
--- /dev/null
+++ b/obj/effect/decal/cleanable.html
@@ -0,0 +1,5 @@
+/obj/effect/decal/cleanable - Space Station 13Space Station 13 - Modules - Types — Var Details
prevents Ambient Occlusion effects around it ; Set to GAME_PLANE in Initialize() if on a wall
+for blood n vomit in zero G --- IN GRAVITY=TRUE; NO GRAVITY=FALSE
when Initialized() its icon_state will be chosen from this list
Var Details
bloodiness
0-100, amount of blood in this decal, used for making footprints and affecting the alpha of bloody footprints
cleanable_amount
How much yuck there is this decal, usually from 0-5.
+Used to calculate drying times, blood writing uses, and similar things.
gravity_check
prevents Ambient Occlusion effects around it ; Set to GAME_PLANE in Initialize() if on a wall
+for blood n vomit in zero G --- IN GRAVITY=TRUE; NO GRAVITY=FALSE
mergeable_decal
when another of the same type is made on the same tile will they merge --- YES=TRUE; NO=FLASE
random_icon_states
when Initialized() its icon_state will be chosen from this list
\ No newline at end of file
diff --git a/obj/effect/decal/cleanable/tar.html b/obj/effect/decal/cleanable/tar.html
new file mode 100644
index 00000000000..ae5b1646e3b
--- /dev/null
+++ b/obj/effect/decal/cleanable/tar.html
@@ -0,0 +1 @@
+/obj/effect/decal/cleanable/tar - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/fire.html b/obj/effect/fire.html
new file mode 100644
index 00000000000..2d4cc7d85cc
--- /dev/null
+++ b/obj/effect/fire.html
@@ -0,0 +1 @@
+/obj/effect/fire - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/floating_blade.html b/obj/effect/floating_blade.html
new file mode 100644
index 00000000000..1a11526fc5e
--- /dev/null
+++ b/obj/effect/floating_blade.html
@@ -0,0 +1 @@
+/obj/effect/floating_blade - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/forcefield/cosmic_field.html b/obj/effect/forcefield/cosmic_field.html
new file mode 100644
index 00000000000..cfb8aaabbfa
--- /dev/null
+++ b/obj/effect/forcefield/cosmic_field.html
@@ -0,0 +1 @@
+/obj/effect/forcefield/cosmic_field - Space Station 13Space Station 13 - Modules - Types — Var Details
Flags for what antimagic can just ignore our forcefields
Var Details
antimagic_flags
Flags for what antimagic can just ignore our forcefields
\ No newline at end of file
diff --git a/obj/effect/forcefield/wizard.html b/obj/effect/forcefield/wizard.html
new file mode 100644
index 00000000000..afaec95e5eb
--- /dev/null
+++ b/obj/effect/forcefield/wizard.html
@@ -0,0 +1 @@
+/obj/effect/forcefield/wizard - Space Station 13Space Station 13 - Modules - Types — Var Details
Flags for what antimagic can just ignore our forcefields
Var Details
antimagic_flags
Flags for what antimagic can just ignore our forcefields
\ No newline at end of file
diff --git a/obj/effect/gibspawner.html b/obj/effect/gibspawner.html
new file mode 100644
index 00000000000..a1942c4df30
--- /dev/null
+++ b/obj/effect/gibspawner.html
@@ -0,0 +1,12 @@
+/obj/effect/gibspawner - Space Station 13Space Station 13 - Modules - Types — Proc Details
mob_dna - The /datum/dna which is being transferred onto the gib.
+
spawn_gibs
Spawns the gibs (and sparks if applicable) from the gib spawner.
+
Arguments:
+
+
location - The position to spawn the gibs on.
+
mob_dna - The /datum/dna controlling the blood DNA and colour of the gibs.
+
\ No newline at end of file
diff --git a/obj/effect/guardianshield.html b/obj/effect/guardianshield.html
new file mode 100644
index 00000000000..525d3a4af75
--- /dev/null
+++ b/obj/effect/guardianshield.html
@@ -0,0 +1 @@
+/obj/effect/guardianshield - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/hallucination.html b/obj/effect/hallucination.html
new file mode 100644
index 00000000000..12524341196
--- /dev/null
+++ b/obj/effect/hallucination.html
@@ -0,0 +1,23 @@
+/obj/effect/hallucination - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Hallucination
Base object for hallucinations. Contains basic behaviour to display an icon only to the target.
Duration in deciseconds. Can also be a list with the form [lower bound, upper bound] for a random duration.
hallucination_color
Hallucination color
hallucination_icon
Hallucination icon.
hallucination_icon_state
Hallucination icon state.
hallucination_layer
Hallucination layer.
hallucination_override
Hallucination override.
hallucination_plane
Hallucination plane.
images
Lazy list of images created as part of the hallucination. Cleared on destruction.
should_delete
Should this hallucination delete itself
target
The mob that sees this hallucination.
Proc Details
add_icon
Adds an image to the hallucination. Cleared on destruction.
+
Arguments:
+
+
I - The image to add.
+
clear_icon
Clears an image from the hallucination.
+
Arguments:
+
+
I - The image to clear.
+
clear_icon_in
Clears an image from the hallucination after a delay.
+
Arguments:
+
+
I - The image to clear.
+
delay - Delay in deciseconds.
+
clear_icons
Clears all images from the hallucination.
play_sound_in
Plays a sound to the target only.
+
Arguments:
+
+
time - Deciseconds before the sound plays.
+
source - The turf to play the sound from. Optional.
+
snd - The sound file to play.
+
volume - The sound volume.
+
vary - Whether to randomize the sound's pitch.
+
frequency - The sound's pitch.
+
\ No newline at end of file
diff --git a/obj/effect/hallucination/abduction.html b/obj/effect/hallucination/abduction.html
new file mode 100644
index 00000000000..ab275e53800
--- /dev/null
+++ b/obj/effect/hallucination/abduction.html
@@ -0,0 +1,5 @@
+/obj/effect/hallucination/abduction - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Hallucination - Abduction
Sends an abductor agent after the target. On knockdown, spawns an abductor scientist next to the target. Nothing else happens.
Called when the fake abductor scientist should spawn.
Var Details
agent
The abductor agent hallucination.
scientist
The abductor scientist image handle.
Proc Details
do_spawn_scientist
Timer called to actually spawn the scientist.
+
Arguments:
+
+
T - Where to spawn the scientist.
+
spawn_scientist
Called when the fake abductor scientist should spawn.
\ No newline at end of file
diff --git a/obj/effect/hallucination/assault.html b/obj/effect/hallucination/assault.html
new file mode 100644
index 00000000000..266cc8557aa
--- /dev/null
+++ b/obj/effect/hallucination/assault.html
@@ -0,0 +1 @@
+/obj/effect/hallucination/assault - Space Station 13Space Station 13 - Modules - Types — Var Details
Hallucination - Assault
An imaginary attacker spawns close to the target and attacks them to stamcrit.
\ No newline at end of file
diff --git a/obj/effect/hallucination/audio.html b/obj/effect/hallucination/audio.html
new file mode 100644
index 00000000000..c2dcb47d0dc
--- /dev/null
+++ b/obj/effect/hallucination/audio.html
@@ -0,0 +1 @@
+/obj/effect/hallucination/audio - Space Station 13Space Station 13 - Modules - Types — Var Details
Associative list of sounds that may be played. Value corresponds to the volume.
Var Details
sounds
Associative list of sounds that may be played. Value corresponds to the volume.
\ No newline at end of file
diff --git a/obj/effect/hallucination/blob.html b/obj/effect/hallucination/blob.html
new file mode 100644
index 00000000000..ae9b5529612
--- /dev/null
+++ b/obj/effect/hallucination/blob.html
@@ -0,0 +1,5 @@
+/obj/effect/hallucination/blob - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Called regularly in a timer to process the blob expanding.
Var Details
chaser_blob_head
The image for the chaser zombie's blob head
conclude_delay
The amount of time in deciseconds the hallucination should continue after final expansion.
expand_delay
The delay at which the blob expands in deciseconds. Shouldn't be too low to prevent lag.
expand_queue
List of turfs that need expanding from.
expand_timer
Expand timer handle.
player_zombie
The self delusion blob zombie hallucination, triggers on knockdown.
processed
Associative list of turfs that have already been processed.
target_blob_head
The image for the player zombie's blob head
zombie
The blob zombie hallucination.
Proc Details
create_blob
Creates a fake blob overlay on the given turf.
+
Arguments:
+
+
T - The turf to create a fake blob overlay on.
+
expand
Called regularly in a timer to process the blob expanding.
\ No newline at end of file
diff --git a/obj/effect/hallucination/bolts.html b/obj/effect/hallucination/bolts.html
new file mode 100644
index 00000000000..41631cf5538
--- /dev/null
+++ b/obj/effect/hallucination/bolts.html
@@ -0,0 +1,10 @@
+/obj/effect/hallucination/bolts - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Hallucination - Bolts
Visually bolts a random number of airlocks around the target.
Called in a timer to fake unbolt the given airlock.
Var Details
bolt_amount
The maximum amount of airlocks to fake bolt.
bolt_duration
The duration of fake bolt in deciseconds.
bolted
Lazy list of fake bolted airlocks. Key is airlock, value is bolt overlay.
Proc Details
do_bolt
Called in a timer to fake bolt the given airlock.
+
Arguments:
+
+
A - The airlock to fake bolt.
+
do_unbolt
Called in a timer to fake unbolt the given airlock.
+
Arguments:
+
+
A - The airlock to fake unbolt.
+
bolt_overlay - The bolt overlay image currently displayed on A.
+
\ No newline at end of file
diff --git a/obj/effect/hallucination/chaser.html b/obj/effect/hallucination/chaser.html
new file mode 100644
index 00000000000..e9c929bf5aa
--- /dev/null
+++ b/obj/effect/hallucination/chaser.html
@@ -0,0 +1 @@
+/obj/effect/hallucination/chaser - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Called every Think when we are close enough to the target.
Var Details
think_interval
Interval between two thinks in deciseconds. Shouldn't be too low to prevent lag.
think_timer
Think timer handle.
Proc Details
chase
Called every Think when we are not close enough to the target.
think
Called at regular intervals to determine what to do.
within_range
Called every Think when we are close enough to the target.
\ No newline at end of file
diff --git a/obj/effect/hallucination/chaser/attacker.html b/obj/effect/hallucination/chaser/attacker.html
new file mode 100644
index 00000000000..abbae009b55
--- /dev/null
+++ b/obj/effect/hallucination/chaser/attacker.html
@@ -0,0 +1,5 @@
+/obj/effect/hallucination/chaser/attacker - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Hallucination - Attacker
A generic hallucination based on the Chaser that attacks if close enough.
Called when one of our attacks put the target in stamina crit.
Var Details
attack_chance
Chance to attack per Think spent in range.
damage
Stamina damage to heal on hit.
should_attack_weakened
Whether to attack if the target is knocked down.
Proc Details
attack_effects
Called to handle the visual and audio effects of an attack.
attacker_attack
Called every Think when we are attacking the target.
+
Arguments:
+
+
was_weakened - Whether the target was already knocked down prior to this attack.
+
on_knockdown
Called when one of our attacks put the target in stamina crit.
\ No newline at end of file
diff --git a/obj/effect/hallucination/chaser/attacker/abductor.html b/obj/effect/hallucination/chaser/attacker/abductor.html
new file mode 100644
index 00000000000..452a70612cf
--- /dev/null
+++ b/obj/effect/hallucination/chaser/attacker/abductor.html
@@ -0,0 +1 @@
+/obj/effect/hallucination/chaser/attacker/abductor - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/hallucination/chaser/attacker/assaulter.html b/obj/effect/hallucination/chaser/attacker/assaulter.html
new file mode 100644
index 00000000000..277f8e28a43
--- /dev/null
+++ b/obj/effect/hallucination/chaser/attacker/assaulter.html
@@ -0,0 +1 @@
+/obj/effect/hallucination/chaser/attacker/assaulter - Space Station 13Space Station 13 - Modules - Types — Var Details
The attack sound to play. Can be a file or text (passed to [/proc/get_sfx]).
attack_verb
The attack verb to display.
\ No newline at end of file
diff --git a/obj/effect/hallucination/chaser/attacker/blob_zombie.html b/obj/effect/hallucination/chaser/attacker/blob_zombie.html
new file mode 100644
index 00000000000..0c6ba5764e0
--- /dev/null
+++ b/obj/effect/hallucination/chaser/attacker/blob_zombie.html
@@ -0,0 +1 @@
+/obj/effect/hallucination/chaser/attacker/blob_zombie - Space Station 13Space Station 13 - Modules - Types — Var Details
Whether or not the target has been zombified already.
owning_hallucination
The hallucination that spawned us.
\ No newline at end of file
diff --git a/obj/effect/hallucination/chasms.html b/obj/effect/hallucination/chasms.html
new file mode 100644
index 00000000000..334a470346e
--- /dev/null
+++ b/obj/effect/hallucination/chasms.html
@@ -0,0 +1 @@
+/obj/effect/hallucination/chasms - Space Station 13Space Station 13 - Modules - Types — Var Details
Hallucination - Chasms
Displays fake chasms around the target that if crossed, cause them to trip.
\ No newline at end of file
diff --git a/obj/effect/hallucination/delusion.html b/obj/effect/hallucination/delusion.html
new file mode 100644
index 00000000000..f3ef88662b6
--- /dev/null
+++ b/obj/effect/hallucination/delusion.html
@@ -0,0 +1 @@
+/obj/effect/hallucination/delusion - Space Station 13Space Station 13 - Modules - Types — Proc Details
Hallucination - Delusion
Changes the appearance of all humans around the target.
Returns the image to use as override to the target's appearance.
Proc Details
get_image
Returns the image to use as override to the target's appearance.
\ No newline at end of file
diff --git a/obj/effect/hallucination/fake_alert.html b/obj/effect/hallucination/fake_alert.html
new file mode 100644
index 00000000000..0178cd83243
--- /dev/null
+++ b/obj/effect/hallucination/fake_alert.html
@@ -0,0 +1 @@
+/obj/effect/hallucination/fake_alert - Space Station 13Space Station 13 - Modules - Types — Var Details
Alert severities. Only needed for some alerts such as temperature or pressure. Key is alert category, value is severity.
Var Details
alert_category
The alert category that was affected(arc) as part of this hallucination.
alerts
The possible alerts to be displayed. Key is alert type, value is alert category.
severities
Alert severities. Only needed for some alerts such as temperature or pressure. Key is alert category, value is severity.
\ No newline at end of file
diff --git a/obj/effect/hallucination/fake_danger.html b/obj/effect/hallucination/fake_danger.html
new file mode 100644
index 00000000000..67e12b8adf7
--- /dev/null
+++ b/obj/effect/hallucination/fake_danger.html
@@ -0,0 +1 @@
+/obj/effect/hallucination/fake_danger - Space Station 13Space Station 13 - Modules - Types — Var Details
Hallucination - Fake Danger
Sends a random danger message to the target's chat.
\ No newline at end of file
diff --git a/obj/effect/hallucination/fake_grenade.html b/obj/effect/hallucination/fake_grenade.html
new file mode 100644
index 00000000000..773764bc61f
--- /dev/null
+++ b/obj/effect/hallucination/fake_grenade.html
@@ -0,0 +1 @@
+/obj/effect/hallucination/fake_grenade - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Hallucination - Fake Grenade
A random grenade is thrown near the target from offscreen.
Additional effects that occur after the grenade hallucination disappears to mimic the grenade detonating
Var Details
grenade_turf
The turf the grenade will land on, and that sounds will play from
grenade_type
A list of potential grenades to pick from, one is picked at random to copy
Proc Details
ending_effect
Additional effects that occur after the grenade hallucination disappears to mimic the grenade detonating
\ No newline at end of file
diff --git a/obj/effect/hallucination/fake_item.html b/obj/effect/hallucination/fake_item.html
new file mode 100644
index 00000000000..e84c9ab5e48
--- /dev/null
+++ b/obj/effect/hallucination/fake_item.html
@@ -0,0 +1 @@
+/obj/effect/hallucination/fake_item - Space Station 13Space Station 13 - Modules - Types — Var Details
Hallucination - Fake Item
Displays a random fake item around the target. If it's on the floor and they try to pick it up, they will trip and fall.
\ No newline at end of file
diff --git a/obj/effect/hallucination/fake_weapon.html b/obj/effect/hallucination/fake_weapon.html
new file mode 100644
index 00000000000..b55c35a595b
--- /dev/null
+++ b/obj/effect/hallucination/fake_weapon.html
@@ -0,0 +1 @@
+/obj/effect/hallucination/fake_weapon - Space Station 13Space Station 13 - Modules - Types — Var Details
Hallucination - Fake Weapon
Displays a random fake weapon wielded by a human around the target.
The default LEFT-HAND icon file for weapons. Static.
right_hand_icons
Static list of RIGHT-HAND counterpart for any LEFT-HAND icon files used above.
weapons
Static list of weapons this hallucination can be. Key is icon state, value is LEFT-HAND icon file.
wielder
The mob wielding the fake weapon.
\ No newline at end of file
diff --git a/obj/effect/hallucination/husks.html b/obj/effect/hallucination/husks.html
new file mode 100644
index 00000000000..7fb423c6301
--- /dev/null
+++ b/obj/effect/hallucination/husks.html
@@ -0,0 +1 @@
+/obj/effect/hallucination/husks - Space Station 13Space Station 13 - Modules - Types — Var Details
The husk number variation, both negative and positive.
Var Details
num_base
The base number of husks to create.
variation
The husk number variation, both negative and positive.
\ No newline at end of file
diff --git a/obj/effect/hallucination/loose_energy_ball.html b/obj/effect/hallucination/loose_energy_ball.html
new file mode 100644
index 00000000000..de1ff4c0610
--- /dev/null
+++ b/obj/effect/hallucination/loose_energy_ball.html
@@ -0,0 +1,7 @@
+/obj/effect/hallucination/loose_energy_ball - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Hallucination - Loose Energy Ball
A progressive hallucination that begins with intermittent explosions, before displaying an energy ball that shocks the target.
Called during phase 3 to approach the energy ball towards the target.
Var Details
length_phase_1
Length of phase 1 in deciseconds.
length_phase_2
Length of phase 2 in deciseconds.
length_phase_3
Length of phase 3 in deciseconds.
Proc Details
phase_1
First phase of the hallucination: intermittent, far-away explosion sounds.
phase_2
Second phase of the hallucination: closer explosions and zap sounds from a random direction.
phase_3
Third and final phase of the hallucination: an energy ball that approaches the target before shocking it.
phase_3_inner
Called during phase 3 to approach the energy ball towards the target.
+
Arguments:
+
+
ball - The energy ball image.
+
distance - The remaining distance.
+
step - The current step.
+
\ No newline at end of file
diff --git a/obj/effect/hallucination/no_delete/xeno_pouncer.html b/obj/effect/hallucination/no_delete/xeno_pouncer.html
new file mode 100644
index 00000000000..9bb1658fd0e
--- /dev/null
+++ b/obj/effect/hallucination/no_delete/xeno_pouncer.html
@@ -0,0 +1,5 @@
+/obj/effect/hallucination/no_delete/xeno_pouncer - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/effect/hallucination/plasma_flood.html b/obj/effect/hallucination/plasma_flood.html
new file mode 100644
index 00000000000..75f3933250c
--- /dev/null
+++ b/obj/effect/hallucination/plasma_flood.html
@@ -0,0 +1,5 @@
+/obj/effect/hallucination/plasma_flood - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Called regularly in a timer to process the plasma flooding.
Var Details
expand_delay
The delay at which the plasma flood expands in deciseconds. Shouldn't be too low to prevent lag.
expand_queue
List of turfs that need expanding from.
expand_timer
Expand timer handle.
processed
Associative list of turfs that have already been processed.
Proc Details
create_plasma
Creates a fake plasma overlay on the given turf.
+
Arguments:
+
+
T - The turf to create a fake plasma overlay on.
+
expand
Called regularly in a timer to process the plasma flooding.
\ No newline at end of file
diff --git a/obj/effect/hallucination/self_delusion.html b/obj/effect/hallucination/self_delusion.html
new file mode 100644
index 00000000000..f63c16ebed9
--- /dev/null
+++ b/obj/effect/hallucination/self_delusion.html
@@ -0,0 +1 @@
+/obj/effect/hallucination/self_delusion - Space Station 13Space Station 13 - Modules - Types — Proc Details
Hallucination - Self Delusion
Changes the target's appearance to something else temporarily.
Returns the image to use as override to the target's appearance.
Proc Details
get_image
Returns the image to use as override to the target's appearance.
\ No newline at end of file
diff --git a/obj/effect/hallucination/speech.html b/obj/effect/hallucination/speech.html
new file mode 100644
index 00000000000..4b97e4bf6f6
--- /dev/null
+++ b/obj/effect/hallucination/speech.html
@@ -0,0 +1 @@
+/obj/effect/hallucination/speech - Space Station 13Space Station 13 - Modules - Types — Var Details
Hallucination - Speech
Causes the target to hear a fake message from a random mob around them.
\ No newline at end of file
diff --git a/obj/effect/hallucination/trait_applier.html b/obj/effect/hallucination/trait_applier.html
new file mode 100644
index 00000000000..1e3d0ee591f
--- /dev/null
+++ b/obj/effect/hallucination/trait_applier.html
@@ -0,0 +1 @@
+/obj/effect/hallucination/trait_applier - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/hallucination/tripper.html b/obj/effect/hallucination/tripper.html
new file mode 100644
index 00000000000..c60fb130c54
--- /dev/null
+++ b/obj/effect/hallucination/tripper.html
@@ -0,0 +1 @@
+/obj/effect/hallucination/tripper - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Hallucination - Tripper
A generic hallucination that causes the target to trip if they cross it.
Called when the target crosses this hallucination.
Var Details
stun
Stun to add when crossed.
trip_chance
Chance to trip when crossing.
weaken
Weaken to add when crossed.
Proc Details
on_crossed
Called when the target crosses this hallucination.
\ No newline at end of file
diff --git a/obj/effect/heretic_influence.html b/obj/effect/heretic_influence.html
new file mode 100644
index 00000000000..f2606de53d5
--- /dev/null
+++ b/obj/effect/heretic_influence.html
@@ -0,0 +1,4 @@
+/obj/effect/heretic_influence - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Begin to drain the influence, setting being_drained,
+registering an examine signal, and beginning a do_after.
+
If successful, the influence is drained and deleted.
generate_name
Generates a random name for the influence.
\ No newline at end of file
diff --git a/obj/effect/heretic_rune.html b/obj/effect/heretic_rune.html
new file mode 100644
index 00000000000..1ece1de7187
--- /dev/null
+++ b/obj/effect/heretic_rune.html
@@ -0,0 +1,9 @@
+/obj/effect/heretic_rune - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
heretic_rune
The heretic's rune, which they use to complete transmutation rituals.
Attempt to begin a ritual, giving them an input list to chose from.
+Also ensures is_in_use is enabled and disabled before and after.
Var Details
greyscale_colours
What is the colour of the runes visual effects?
is_in_use
Used mainly for summoning ritual to prevent spamming the rune to create millions of monsters.
Proc Details
do_ritual
Attempt to invoke a ritual from the past list of knowledges.
+
Arguments
+
+
user - the heretic / the person who invoked the rune
+
knowledge_list - a non-assoc list of heretic_knowledge datums.
+
+
returns TRUE if any rituals passed succeeded, FALSE if they all failed.
try_rituals
Attempt to begin a ritual, giving them an input list to chose from.
+Also ensures is_in_use is enabled and disabled before and after.
\ No newline at end of file
diff --git a/obj/effect/hotspot.html b/obj/effect/hotspot.html
new file mode 100644
index 00000000000..4c7f6e998ea
--- /dev/null
+++ b/obj/effect/hotspot.html
@@ -0,0 +1 @@
+/obj/effect/hotspot - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/immovablerod.html b/obj/effect/immovablerod.html
new file mode 100644
index 00000000000..5334f32cfd0
--- /dev/null
+++ b/obj/effect/immovablerod.html
@@ -0,0 +1,5 @@
+/obj/effect/immovablerod - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Rods should usually not change their orientation, as they're immovable. But if it's a wizard spell, or if an admin spawns one, we should probably let it re-orient to follow its movement.
Rod will walk towards edge turf in the specified direction.
Var Details
fixed_dir
Rods should usually not change their orientation, as they're immovable. But if it's a wizard spell, or if an admin spawns one, we should probably let it re-orient to follow its movement.
wall_damage_max_fraction
The maximum amount of damage dealt to walls, relative to their max HP. Values over 1 are useful for adjusting the probability of destroying the wall.
wall_damage_min_fraction
The minimum amount of damage dealt to walls, relative to their max HP.
Proc Details
walk_in_direction
Rod will walk towards edge turf in the specified direction.
+
Arguments:
+
+
direction - The direction to walk the rod towards: NORTH, SOUTH, EAST, WEST.
+
\ No newline at end of file
diff --git a/obj/effect/immovablerod/nuclear_rod.html b/obj/effect/immovablerod/nuclear_rod.html
new file mode 100644
index 00000000000..7e52aa13d7f
--- /dev/null
+++ b/obj/effect/immovablerod/nuclear_rod.html
@@ -0,0 +1 @@
+/obj/effect/immovablerod/nuclear_rod - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/effect/immovablerod/smite.html b/obj/effect/immovablerod/smite.html
new file mode 100644
index 00000000000..1a92f9fb7a0
--- /dev/null
+++ b/obj/effect/immovablerod/smite.html
@@ -0,0 +1 @@
+/obj/effect/immovablerod/smite - Space Station 13Space Station 13 - Modules - Types — Var Details
The target that we're gonna aim for between start and end
Var Details
exit
The target that we're gonna aim for between start and end
\ No newline at end of file
diff --git a/obj/effect/landmark/heretic.html b/obj/effect/landmark/heretic.html
new file mode 100644
index 00000000000..fe839f711fa
--- /dev/null
+++ b/obj/effect/landmark/heretic.html
@@ -0,0 +1 @@
+/obj/effect/landmark/heretic - Space Station 13Space Station 13 - Modules - Types — Var Details
heretic
Lardmarks meant to designate where heretic sacrifices are sent.
\ No newline at end of file
diff --git a/obj/effect/landmark/mob_spawner.html b/obj/effect/landmark/mob_spawner.html
new file mode 100644
index 00000000000..9c807270b9d
--- /dev/null
+++ b/obj/effect/landmark/mob_spawner.html
@@ -0,0 +1 @@
+/obj/effect/landmark/mob_spawner - Space Station 13Space Station 13 - Modules - Types — Var Details
mob_spawner
Mob spawners, spawns a mob and deletes the landmark
\ No newline at end of file
diff --git a/obj/effect/landmark/river_waypoint.html b/obj/effect/landmark/river_waypoint.html
new file mode 100644
index 00000000000..1d08c5d5a1b
--- /dev/null
+++ b/obj/effect/landmark/river_waypoint.html
@@ -0,0 +1 @@
+/obj/effect/landmark/river_waypoint - Space Station 13Space Station 13 - Modules - Types — Var Details
Whether the turf of this landmark has already been linked to others during river generation.
Var Details
connected
Whether the turf of this landmark has already been linked to others during river generation.
\ No newline at end of file
diff --git a/obj/effect/lock_portal.html b/obj/effect/lock_portal.html
new file mode 100644
index 00000000000..74f5b4f4167
--- /dev/null
+++ b/obj/effect/lock_portal.html
@@ -0,0 +1 @@
+/obj/effect/lock_portal - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Teleports the teleportee, to a random airlock if the teleportee isnt a heretic, or the other portal if they are one
Var Details
destination
The knock portal we teleport to
inverted
if true the heretic is teleported to a random airlock, nonheretics are sent to the target
our_airlock
The airlock we are linked to, we delete if it is destroyed
Proc Details
async_opendoor
Asynchronous proc to unbolt, then open the passed door
delete_on_door_delete
Deletes us and our destination portal if our_airlock is destroyed
find_random_airlock
Returns a random airlock on the same Z level as our portal, that isnt our airlock
on_entered
Signal handler for when our location is entered, calls teleport on the victim, if their old_loc didnt contain a portal already (to prevent loops)
teleport
Teleports the teleportee, to a random airlock if the teleportee isnt a heretic, or the other portal if they are one
\ No newline at end of file
diff --git a/obj/effect/map_effect/dynamic_airlock.html b/obj/effect/map_effect/dynamic_airlock.html
new file mode 100644
index 00000000000..7aa93aed763
--- /dev/null
+++ b/obj/effect/map_effect/dynamic_airlock.html
@@ -0,0 +1,10 @@
+/obj/effect/map_effect/dynamic_airlock - Space Station 13Space Station 13 - Modules - Types — Proc Details
dynamic_airlock
A mapping helper that defines the zone of a dynamically arranged airlock
+chamber. This can be used as an alternative to
+/obj/effect/spawner/airlocks.
+
The disadvantage compared to airlock spawners is that all related buttons,
+airlock controllers, doors, vent pumps and piping must be manually mapped
+in. The advantages are that chambers of any arbitrary size and shape can be
+created, and that maps using these helpers instead of the airlock spawners
+can have the RandomOrientation mapmanip applied to them with confidence that
+the airlock chambers will be properly constructed, no matter what the
+orientation of the map is.
Look around us in a 1 tile range and aggregate all the adjacent helpers.
Proc Details
collect_neighbor_helpers
Look around us in a 1 tile range and aggregate all the adjacent helpers.
\ No newline at end of file
diff --git a/obj/effect/mapping_helpers/airlock/c_foam.html b/obj/effect/mapping_helpers/airlock/c_foam.html
new file mode 100644
index 00000000000..35dda1e3221
--- /dev/null
+++ b/obj/effect/mapping_helpers/airlock/c_foam.html
@@ -0,0 +1 @@
+/obj/effect/mapping_helpers/airlock/c_foam - Space Station 13Space Station 13 - Modules - Types — Var Details
How many times will this helper foam the door? The max level is 5.
Var Details
foam_level
How many times will this helper foam the door? The max level is 5.
\ No newline at end of file
diff --git a/obj/effect/mazegen/generator.html b/obj/effect/mazegen/generator.html
new file mode 100644
index 00000000000..684a1b014ac
--- /dev/null
+++ b/obj/effect/mazegen/generator.html
@@ -0,0 +1 @@
+/obj/effect/mazegen/generator - Space Station 13Space Station 13 - Modules - Types — Var Details
List of all helper modules being used in this maze
loot_modules
List of all loot modules being used in this maze
mheight
Maze height
mwidth
Maze width
potential_loot_spots
Potential loot spots
turf_list
List of turfs to iterate in total
working_stack
"Stack" structure to be used while iterating
\ No newline at end of file
diff --git a/obj/effect/mazegen/generator/blockwise.html b/obj/effect/mazegen/generator/blockwise.html
new file mode 100644
index 00000000000..e397de80a82
--- /dev/null
+++ b/obj/effect/mazegen/generator/blockwise.html
@@ -0,0 +1 @@
+/obj/effect/mazegen/generator/blockwise - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/mazegen/module_helper.html b/obj/effect/mazegen/module_helper.html
new file mode 100644
index 00000000000..ccdc727b8bb
--- /dev/null
+++ b/obj/effect/mazegen/module_helper.html
@@ -0,0 +1,7 @@
+/obj/effect/mazegen/module_helper - Space Station 13Space Station 13 - Modules - Types — Proc Details
This exists as an overridable method so you can do custom helper logic.
+An example of this is removing all windows on a tile.
+
Arguments:
+
+
blockwise - This will be TRUE if the maze this is running on is a blockwise maze
+
\ No newline at end of file
diff --git a/obj/effect/mazegen/module_loot.html b/obj/effect/mazegen/module_loot.html
new file mode 100644
index 00000000000..a675662f689
--- /dev/null
+++ b/obj/effect/mazegen/module_loot.html
@@ -0,0 +1,7 @@
+/obj/effect/mazegen/module_loot - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Probability for this to spawn in a dead end at all. 0-100%. I dont recommend using values higher than 10
Proc Details
spawn_loot
Loot spawner proc
+
This exists as an overridable method so you can do more than just spawn objects.
+An example of this is spawning a specific mob based on a condition.
+
Arguments:
+
+
T - The turf loot will be spawned on
+
\ No newline at end of file
diff --git a/obj/effect/meteor/fake.html b/obj/effect/meteor/fake.html
new file mode 100644
index 00000000000..3f871e40fde
--- /dev/null
+++ b/obj/effect/meteor/fake.html
@@ -0,0 +1 @@
+/obj/effect/meteor/fake - Space Station 13Space Station 13 - Modules - Types — Var Details
Did we crash into something? Used to avoid falsely reporting success when qdeleted.
goal
The station goal that is simulating this meteor.
\ No newline at end of file
diff --git a/obj/effect/mob_spawn.html b/obj/effect/mob_spawn.html
new file mode 100644
index 00000000000..79d1fe7129b
--- /dev/null
+++ b/obj/effect/mob_spawn.html
@@ -0,0 +1 @@
+/obj/effect/mob_spawn - Space Station 13Space Station 13 - Modules - Types — Var Details
How many times can we spawn from it. Set to -1 for infinite.
Var Details
death
Kill the mob
death_cooldown
How long you have to wait after dying before using it again. People that join as observers are not included.
description
Intended as OOC info about the role
disease
Do they start with a pre-spawned disease?
faction
List of additional factions for our mob
flavour_text
Flavour/fluff about the role, optional.
important_info
Important info such as rules that apply to you, etc. Optional.
instant
Fires on New
mob_color
Change the mob's color
mob_name
Overrides name given to our mob
offstation_role
If set to true, the role of the user's mind will be set to offstation
permanent
If true, the spawner will not disappear upon running out of uses.
restrict_ahud
If late-observers with ahud are prevented from using it.
restrict_antagban
If antagbanned people are prevented from using it, only false for the ghost bar spawner.
restrict_respawnability
If people without respawnability are prevented from using it.
role_name
Who do we gonna play for
roundstart
Fires on initialize
uses
How many times can we spawn from it. Set to -1 for infinite.
\ No newline at end of file
diff --git a/obj/effect/mob_spawn/corpse.html b/obj/effect/mob_spawn/corpse.html
new file mode 100644
index 00000000000..d35b54428b1
--- /dev/null
+++ b/obj/effect/mob_spawn/corpse.html
@@ -0,0 +1 @@
+/obj/effect/mob_spawn/corpse - Space Station 13Space Station 13 - Modules - Types — Var Details
corpse
these mob spawn subtypes trigger immediately (New or Initialize) and are not player controlled... since they're dead, you know?
optionally different text to display if the target is a clown
Var Details
corpse_description
what environmental storytelling script should this corpse have
naive_corpse_description
optionally different text to display if the target is a clown
\ No newline at end of file
diff --git a/obj/effect/mob_spawn/human.html b/obj/effect/mob_spawn/human.html
new file mode 100644
index 00000000000..64815cbae72
--- /dev/null
+++ b/obj/effect/mob_spawn/human.html
@@ -0,0 +1 @@
+/obj/effect/mob_spawn/human - Space Station 13Space Station 13 - Modules - Types — Var Details
If set, should be a value between -185 and 220. Go to random_skin_tone() for species-specific numbers' range you'd like to use
Var Details
allow_gender_pick
Allows ghost to select a gender on mob creation
allow_species_pick
Allows ghost to select a species on mob creation
dna_scrambled
Should we fully dna-scramble these humans?
id_access
This is for access. See access.dm for which jobs give what access. Use "Captain" if you want it to be all access.
id_access_list
Allows you to manually add access to an ID card.
id_job
Such as "Clown" or "Chef." This just determines what the ID reads as, not their access
mob_gender
Gender of our mob. Default will randomise between male and female
mob_species
Species of our mob. Default is human
outfit
If this is a path, it will be instanced in Initialize()
pickable_genders
List of available genders to be picked by ghost
pickable_species
List of available species to be picked by ghost
skin_tone
If set, should be a value between -185 and 220. Go to random_skin_tone() for species-specific numbers' range you'd like to use
\ No newline at end of file
diff --git a/obj/effect/mob_spawn/human/alive/golem.html b/obj/effect/mob_spawn/human/alive/golem.html
new file mode 100644
index 00000000000..94040b1da54
--- /dev/null
+++ b/obj/effect/mob_spawn/human/alive/golem.html
@@ -0,0 +1 @@
+/obj/effect/mob_spawn/human/alive/golem - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/overlay/vis.html b/obj/effect/overlay/vis.html
new file mode 100644
index 00000000000..d573cca857e
--- /dev/null
+++ b/obj/effect/overlay/vis.html
@@ -0,0 +1 @@
+/obj/effect/overlay/vis - Space Station 13Space Station 13 - Modules - Types — Var Details
When detected to be unused it gets set to world.time, after a while it gets removed
Var Details
cache_expiration
overlays which go unused for this amount of time get cleaned up
unused
When detected to be unused it gets set to world.time, after a while it gets removed
\ No newline at end of file
diff --git a/obj/effect/particle_effect/foam.html b/obj/effect/particle_effect/foam.html
new file mode 100644
index 00000000000..80c685f23b7
--- /dev/null
+++ b/obj/effect/particle_effect/foam.html
@@ -0,0 +1 @@
+/obj/effect/particle_effect/foam - Space Station 13Space Station 13 - Modules - Types — Var Details
How long it takes this to initially start spreading after being dispersed
Var Details
max_amount_on_spread
Maximum amount of reagents gained by spreading onto a foamed tile
max_reagent_filling
We will never fill a mob with more than this many units of a given reagent
react_mode
Whether it reacts on or after dispersion (or both)
solidify_time
How long it takes this, once it's spread, to stop spreading and disperse its chems
spread_amount
How many times this one bit of foam can spread around itself
spread_at_range
Whether or not to spread at a range when spreading
spread_time
How long it takes this to initially start spreading after being dispersed
\ No newline at end of file
diff --git a/obj/effect/particle_effect/foam/metal.html b/obj/effect/particle_effect/foam/metal.html
new file mode 100644
index 00000000000..b9943b71c4c
--- /dev/null
+++ b/obj/effect/particle_effect/foam/metal.html
@@ -0,0 +1 @@
+/obj/effect/particle_effect/foam/metal - Space Station 13Space Station 13 - Modules - Types — Var Details
Represents the icon state that we'll become when we solidify
Var Details
metal_kind
Represents the icon state that we'll become when we solidify
\ No newline at end of file
diff --git a/obj/effect/portal.html b/obj/effect/portal.html
new file mode 100644
index 00000000000..7fe4813489e
--- /dev/null
+++ b/obj/effect/portal.html
@@ -0,0 +1 @@
+/obj/effect/portal - Space Station 13Space Station 13 - Modules - Types — Var Details
How close to the portal you will teleport. FALSE = on the portal, TRUE = adjacent
Var Details
create_sparks
Whether or not portal use will cause sparks
creation_mob_ckey
The ckey of the mob which was responsible for the creation of the portal. For example, the mob who used a wormhole jaunter.
creation_obj_data
The UID and name of the object that created this portal. For example, a wormhole jaunter.
effect_cooldown
The time after which the effects should play again. Too many effects can lag the server
precision
How close to the portal you will teleport. FALSE = on the portal, TRUE = adjacent
\ No newline at end of file
diff --git a/obj/effect/portal/advanced/contractor.html b/obj/effect/portal/advanced/contractor.html
new file mode 100644
index 00000000000..56ee776280e
--- /dev/null
+++ b/obj/effect/portal/advanced/contractor.html
@@ -0,0 +1 @@
+/obj/effect/portal/advanced/contractor - Space Station 13Space Station 13 - Modules - Types — Var Details
Contractor Extraction Portal
Used to extract contract targets and send them to the Syndicate jail for a few minutes.
The mind of the kidnapping target. Prevents non-targets from taking the portal.
Var Details
contract
The contract associated with this portal.
contractor_mind
The mind of the contractor. Used to tell them they shouldn't be taking the portal.
target_mind
The mind of the kidnapping target. Prevents non-targets from taking the portal.
\ No newline at end of file
diff --git a/obj/effect/portal/advanced/exfiltration.html b/obj/effect/portal/advanced/exfiltration.html
new file mode 100644
index 00000000000..49719c79afe
--- /dev/null
+++ b/obj/effect/portal/advanced/exfiltration.html
@@ -0,0 +1 @@
+/obj/effect/portal/advanced/exfiltration - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/portal/hand_tele.html b/obj/effect/portal/hand_tele.html
new file mode 100644
index 00000000000..5343a137f84
--- /dev/null
+++ b/obj/effect/portal/hand_tele.html
@@ -0,0 +1 @@
+/obj/effect/portal/hand_tele - Space Station 13Space Station 13 - Modules - Types — Var Details
After you touch the portal, it will be unstable with high bad teleport chance, this variable contains time when it will be fine again
Var Details
inactive
If this is TRUE, you will not be able to teleport with that portal
unstable_time
After you touch the portal, it will be unstable with high bad teleport chance, this variable contains time when it will be fine again
\ No newline at end of file
diff --git a/obj/effect/rune.html b/obj/effect/rune.html
new file mode 100644
index 00000000000..92c0b0d5c3d
--- /dev/null
+++ b/obj/effect/rune.html
@@ -0,0 +1,7 @@
+/obj/effect/rune - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Spawns the phase in/out effects for a cult teleport.
Var Details
allow_excess_invokers
If nearby cultists will also chant when invoked
construct_invoke
If constructs can invoke it
cultist_desc
Description that cultists see
cultist_name
Name that cultists see
desc
Description that non-cultists see
invocation
What is said by cultists when the rune is invoked
invoke_damage
How much damage cultists take when invoking it (This includes constructs)
keyword
The actual keyword for the rune
name
Name non-cultists see
req_cultists
The amount of cultists required around the rune to invoke it. If only 1, any cultist can invoke it.
req_keyword
If the rune requires a keyword (e.g. Teleport runes)
rune_blood_color
The color of the rune. (Based on species blood color)
rune_in_use
Used for some runes, this is for when you want a rune to not be usable when in use.
scribe_damage
How much damage you take from drawing the rune
scribe_delay
How long the rune takes to create (Currently only different for the Nar'Sie rune)
Proc Details
teleport_effect
Spawns the phase in/out effects for a cult teleport.
+
Arguments:
+
+
user - Mob to teleport
+
location - Location to teleport from
+
target - Location to teleport to
+
\ No newline at end of file
diff --git a/obj/effect/rune/blood_boil.html b/obj/effect/rune/blood_boil.html
new file mode 100644
index 00000000000..19d50045efe
--- /dev/null
+++ b/obj/effect/rune/blood_boil.html
@@ -0,0 +1,4 @@
+/obj/effect/rune/blood_boil - Space Station 13Space Station 13 - Modules - Types
Blood Boil Rune
When invoked deals up to 30 burn damage to nearby non-cultists and sets them on fire.
+
On activation the rune charges for six seconds, changing colour, glowing, and giving out a warning to all nearby mobs.
+After the charging period the rune burns any non-cultists in view and sets them on fire. After another short wait it does the same again with slightly higher damage.
+If the cultists channeling the rune move away or are stunned at any point, the rune is deleted. So it can be countered pretty easily with flashbangs.
\ No newline at end of file
diff --git a/obj/effect/rune/wall.html b/obj/effect/rune/wall.html
new file mode 100644
index 00000000000..85b42600670
--- /dev/null
+++ b/obj/effect/rune/wall.html
@@ -0,0 +1 @@
+/obj/effect/rune/wall - Space Station 13Space Station 13 - Modules - Types — Var Details
The barrier summoned by the rune when invoked. Tracked as a variable to prevent refreshing the barrier's integrity. shieldgen.dm
Var Details
B
The barrier summoned by the rune when invoked. Tracked as a variable to prevent refreshing the barrier's integrity. shieldgen.dm
\ No newline at end of file
diff --git a/obj/effect/simon_says.html b/obj/effect/simon_says.html
new file mode 100644
index 00000000000..fcf7f828537
--- /dev/null
+++ b/obj/effect/simon_says.html
@@ -0,0 +1 @@
+/obj/effect/simon_says - Space Station 13Space Station 13 - Modules - Types — Var Details
current index in the sequence we check our pressed button against
pads
List of connected pads(normally generated on init)
playing_until
The time at which we should finish playing the sequence
pressed_buttons
Buttons pressed by the player so far
rhythm
The chosen rhythm to play
rhythms
List of all rhythms to choose from, made from lists of time from the start in deciseconds
sequence
The sequence we generated
\ No newline at end of file
diff --git a/obj/effect/simon_says_pad.html b/obj/effect/simon_says_pad.html
new file mode 100644
index 00000000000..13d568e07e6
--- /dev/null
+++ b/obj/effect/simon_says_pad.html
@@ -0,0 +1 @@
+/obj/effect/simon_says_pad - Space Station 13Space Station 13 - Modules - Types — Var Details
ID used for comparing what we pressed against the sequence
last_played
Time the pad was last played
owner
The simon says minigame we are a part of
sound
Sound we make when playing
\ No newline at end of file
diff --git a/obj/effect/spawner.html b/obj/effect/spawner.html
new file mode 100644
index 00000000000..2240d6c234b
--- /dev/null
+++ b/obj/effect/spawner.html
@@ -0,0 +1,2 @@
+/obj/effect/spawner - Space Station 13Space Station 13 - Modules - Types — Proc Details
Used when we want to pass vars from a spawner to a spawned object
Proc Details
synchronize_variables
Used when we want to pass vars from a spawner to a spawned object
+
a - The spawned object we want to pass a var to
\ No newline at end of file
diff --git a/obj/effect/spawner/airlock.html b/obj/effect/spawner/airlock.html
new file mode 100644
index 00000000000..946eb67a830
--- /dev/null
+++ b/obj/effect/spawner/airlock.html
@@ -0,0 +1 @@
+/obj/effect/spawner/airlock - Space Station 13Space Station 13 - Modules - Types — Proc Details
Stick the controller on the wall, this will ONLY be unsuitable if airlocks are on both the south and west turfs.
Proc Details
make_controller
Stick the controller on the wall, this will ONLY be unsuitable if airlocks are on both the south and west turfs.
\ No newline at end of file
diff --git a/obj/effect/spawner/dynamic_bridge.html b/obj/effect/spawner/dynamic_bridge.html
new file mode 100644
index 00000000000..775d2ccb14a
--- /dev/null
+++ b/obj/effect/spawner/dynamic_bridge.html
@@ -0,0 +1,26 @@
+/obj/effect/spawner/dynamic_bridge - Space Station 13Space Station 13 - Modules - Types — Proc Details
dynamic_bridge
A spawner for dynamic bridges, largely with hardcoded expectations to be
+operating on Lavaland.
+
It does this by starting at its spawn point, placed by a
+/datum/river_spawner during generation, and walking in each direction
+"forwards" and "backwards" until it reaches the maximum possible length of
+the bridge, or a tile that doesn't appear to be a valid "passage"
+(essentially a tile that doesn't have lava on both sides and thus wouldn't
+look good or make an effective bridge). If it manages to do this and find two
+tiles that work as the start and end of the bridge, it places the paths,
+pillars, and "cleans up" the tiles contiguous to its entrance and exit turfs,
+removing any lava if present.
+
It attempts this first in the vertical direction, and then the horizontal. So
+"fowards" and "backwards" can mean NORTH/SOUTH or EAST/WEST depending on the
+direction it's attempting.
+
There are several bridge "themes" implemented in make_walkway() and
+make_pillar(), and more can be added if desired.
Returns whether the passed in turf is a valid "landing". A valid landing is
+a tile that hasn't been reserved by another bridge, and has a non-lava tile
+leading directly to it.
Returns whether the passed in turf is a valid "passage". A valid passage is
+a lava tile that has lava on both sides of it. Invalid passage tiles do not
+look good as bridge walkways and defeat the purpose of there is floor right
+next to it.
Proc Details
cleanup_edge
Make a tile safe for player passage, for use at the bridge entrance and exits
out_of_bounds
Checks if we are going out of bounds. Returns TRUE if we are close (less than or equal to 2 turfs) to a border
valid_landing
Returns whether the passed in turf is a valid "landing". A valid landing is
+a tile that hasn't been reserved by another bridge, and has a non-lava tile
+leading directly to it.
valid_passage
Returns whether the passed in turf is a valid "passage". A valid passage is
+a lava tile that has lava on both sides of it. Invalid passage tiles do not
+look good as bridge walkways and defeat the purpose of there is floor right
+next to it.
\ No newline at end of file
diff --git a/obj/effect/spawner/grouped_spawner.html b/obj/effect/spawner/grouped_spawner.html
new file mode 100644
index 00000000000..110f719d7f3
--- /dev/null
+++ b/obj/effect/spawner/grouped_spawner.html
@@ -0,0 +1,9 @@
+/obj/effect/spawner/grouped_spawner - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
grouped_spawner
Can be used to group spawners together so you ensure a certain amount of things are spawned but can be spawned on multiple locations.
+
How to use:
+Either place the base grouped_spawner in the map and define the group_id to
+determine which spawners belong to one another.
+Or make a child instance of the grouped_spawner and define the values there.
+
When using the base version be sure to define both total_amount and max_per_spawner on
+at least one of the spawners of the group.
+A mismatch between instances of the same group between these values will lead to a runtime.
+So either leave it empty for the rest or have the rest have the same values
The id of the group this spawner belongs to. If left empty it'll use the type as id. Define this for map instances if you want to link different spawners up or want to use the base version.
Saves the spawn values. Will only pick the first defined version of this group_id
Var Details
chosen_spawners
Which spawners are chosen to spawn the objects
group_id
The id of the group this spawner belongs to. If left empty it'll use the type as id. Define this for map instances if you want to link different spawners up or want to use the base version.
max_per_spawner
How many will spawn maximum per spawner. Set this in the map edit tool or in a child instance to set it for all the other instances.
max_per_spawner_for_spawners
The list which holds the max_per_spawner values for each spawner group
path_to_spawn
Which path will be used to spawn.
spawner_groups
The assoc list of grouped spawners. Key = group_id, value = list of spawners with that key
total_amount
How many will spawn. Set this in the map edit tool or in a child instance to set it for all the other instances.
total_amount_for_spawners
The list which holds the total_amount values for each spawner group
Proc Details
get_spawn_values
Sets the spawn values to the values of the first defined instance of this group_id
save_spawn_values
Saves the spawn values. Will only pick the first defined version of this group_id
\ No newline at end of file
diff --git a/obj/effect/spawner/random.html b/obj/effect/spawner/random.html
new file mode 100644
index 00000000000..75c01c56240
--- /dev/null
+++ b/obj/effect/spawner/random.html
@@ -0,0 +1,7 @@
+/obj/effect/spawner/random - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Makes the actual item related to our spawner. If record_spawn is TRUE,
+this is when the items spawned are recorded to blackbox (except for /obj/effects).
If the spawner has any loot defined, randomly picks some and spawns it. Does not cleanup the spawner.
Var Details
loot
Stops persistent lootdrop spawns from being shoved into lockers
+A list of possible items to spawn e.g. list(/obj/item, /obj/structure, /obj/effect)
loot_subtype_path
The subtypes (this excludes the provided path) to combine with the loot list
loot_type_path
The subtypes AND type to combine with the loot list
pixel_placer
The placer for loot when spawn_loot_split is enabled
record_spawn
Whether blackbox should record when the spawner spawns.
spawn_all_loot
Whether the spawner should spawn all the loot in the list
spawn_inside
Where do we want to spawn an item (closet, safe etc.)
spawn_loot_chance
The chance for the spawner to create loot (ignores spawn_loot_count)
spawn_loot_count
How many items will be spawned
spawn_loot_double
If the same item can be spawned twice
spawn_loot_split
Whether the items should be staggered visually on their location.
spawn_loot_split_pixel_offsets
The pixel x/y divider offsets for spawn_loot_split (spaced 2 pixels apart by default)
spawn_random_angle
Whether the spawned items should be rotated randomly.
spawn_random_offset
Whether the items should have a random pixel_x/y offset (maximum offset distance is ± spawn_random_offset_max_pixels for x/y)
spawn_random_offset_max_pixels
Maximum offset distance for random pixel offsets.
spawn_scatter_radius
Determines how big of a range (in tiles) we should scatter things in.
Proc Details
get_spawn_locations
If the spawner has a spawn_scatter_radius set, this creates a list of nearby turfs available that are in view and have an unblocked line to them.
make_item
Makes the actual item related to our spawner. If record_spawn is TRUE,
+this is when the items spawned are recorded to blackbox (except for /obj/effects).
+
spawn_loc - where are we spawning it?
+type_path_to_make - what are we spawning?
spawn_loot
If the spawner has any loot defined, randomly picks some and spawns it. Does not cleanup the spawner.
\ No newline at end of file
diff --git a/obj/effect/spawner/random/plushies/explosive.html b/obj/effect/spawner/random/plushies/explosive.html
new file mode 100644
index 00000000000..a370521742f
--- /dev/null
+++ b/obj/effect/spawner/random/plushies/explosive.html
@@ -0,0 +1 @@
+/obj/effect/spawner/random/plushies/explosive - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/spawner/random/pool.html b/obj/effect/spawner/random/pool.html
new file mode 100644
index 00000000000..f27b52ee3ff
--- /dev/null
+++ b/obj/effect/spawner/random/pool.html
@@ -0,0 +1,9 @@
+/obj/effect/spawner/random/pool - Space Station 13Space Station 13 - Modules - Types — Var Details
How much this spawner will subtract from the available budget if it
+spawns. A value of -1 (i.e., not setting the value on a subtype)
+does not attempt to subtract from the budget. This is useful for
+spawners which themselves spawn other spawners.
Whether non-spawner items should be removed from the shared loot pool
+after spawning.
Var Details
guaranteed
Guaranteed spawners will always proc, and always proc first.
point_value
How much this spawner will subtract from the available budget if it
+spawns. A value of -1 (i.e., not setting the value on a subtype)
+does not attempt to subtract from the budget. This is useful for
+spawners which themselves spawn other spawners.
spawn_pool
The type of the spawn pool.
unique_picks
Whether non-spawner items should be removed from the shared loot pool
+after spawning.
\ No newline at end of file
diff --git a/obj/effect/spawner/random/smithed_item.html b/obj/effect/spawner/random/smithed_item.html
new file mode 100644
index 00000000000..275bf914de4
--- /dev/null
+++ b/obj/effect/spawner/random/smithed_item.html
@@ -0,0 +1 @@
+/obj/effect/spawner/random/smithed_item - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/spawner/themed_mess.html b/obj/effect/spawner/themed_mess.html
new file mode 100644
index 00000000000..065c1a633df
--- /dev/null
+++ b/obj/effect/spawner/themed_mess.html
@@ -0,0 +1,5 @@
+/obj/effect/spawner/themed_mess - Space Station 13Space Station 13 - Modules - Types — Var Details
The number of tiles to spread to. Each new chosen tile receives this
+value decremented by one, ensuring the maximum size of the mess is limited
+by the original spawner's value.
Var Details
remaining_tiles
The number of tiles to spread to. Each new chosen tile receives this
+value decremented by one, ensuring the maximum size of the mess is limited
+by the original spawner's value.
\ No newline at end of file
diff --git a/obj/effect/spawner/window/reinforced/polarized.html b/obj/effect/spawner/window/reinforced/polarized.html
new file mode 100644
index 00000000000..64af27e3e19
--- /dev/null
+++ b/obj/effect/spawner/window/reinforced/polarized.html
@@ -0,0 +1 @@
+/obj/effect/spawner/window/reinforced/polarized - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/swarmer_portal.html b/obj/effect/swarmer_portal.html
new file mode 100644
index 00000000000..5118564c149
--- /dev/null
+++ b/obj/effect/swarmer_portal.html
@@ -0,0 +1 @@
+/obj/effect/swarmer_portal - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/tear.html b/obj/effect/tear.html
new file mode 100644
index 00000000000..77ced3bd487
--- /dev/null
+++ b/obj/effect/tear.html
@@ -0,0 +1 @@
+/obj/effect/tear - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/temp_visual/circle_wave.html b/obj/effect/temp_visual/circle_wave.html
new file mode 100644
index 00000000000..0f7848201a7
--- /dev/null
+++ b/obj/effect/temp_visual/circle_wave.html
@@ -0,0 +1 @@
+/obj/effect/temp_visual/circle_wave - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/temp_visual/decoy/mephedrone_afterimage.html b/obj/effect/temp_visual/decoy/mephedrone_afterimage.html
new file mode 100644
index 00000000000..0095eeef269
--- /dev/null
+++ b/obj/effect/temp_visual/decoy/mephedrone_afterimage.html
@@ -0,0 +1 @@
+/obj/effect/temp_visual/decoy/mephedrone_afterimage - Space Station 13Space Station 13 - Modules - Types — Var Details
The color matrix it should be by the time it despawns
matrix_start
The color matrix it should be at spawn
\ No newline at end of file
diff --git a/obj/effect/temp_visual/drawing_heretic_rune.html b/obj/effect/temp_visual/drawing_heretic_rune.html
new file mode 100644
index 00000000000..3d88ab738e2
--- /dev/null
+++ b/obj/effect/temp_visual/drawing_heretic_rune.html
@@ -0,0 +1 @@
+/obj/effect/temp_visual/drawing_heretic_rune - Space Station 13Space Station 13 - Modules - Types — Var Details
We only set this state after setting the colour, otherwise the animation doesn't colour correctly
blend_state
What the blend state is
\ No newline at end of file
diff --git a/obj/effect/temp_visual/exfiltration.html b/obj/effect/temp_visual/exfiltration.html
new file mode 100644
index 00000000000..fb10aa41080
--- /dev/null
+++ b/obj/effect/temp_visual/exfiltration.html
@@ -0,0 +1 @@
+/obj/effect/temp_visual/exfiltration - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/temp_visual/explosion.html b/obj/effect/temp_visual/explosion.html
new file mode 100644
index 00000000000..ebb56f699c9
--- /dev/null
+++ b/obj/effect/temp_visual/explosion.html
@@ -0,0 +1 @@
+/obj/effect/temp_visual/explosion - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
\ No newline at end of file
diff --git a/obj/effect/temp_visual/goliath_flick.html b/obj/effect/temp_visual/goliath_flick.html
new file mode 100644
index 00000000000..2bc91225566
--- /dev/null
+++ b/obj/effect/temp_visual/goliath_flick.html
@@ -0,0 +1 @@
+/obj/effect/temp_visual/goliath_flick - Space Station 13Space Station 13 - Modules - Types — Var Details
how long will it take for the tendril to enter "retract" phase
Var Details
time_to_return
how long will it take for the tendril to enter "retract" phase
\ No newline at end of file
diff --git a/obj/effect/temp_visual/ninja_bomb.html b/obj/effect/temp_visual/ninja_bomb.html
new file mode 100644
index 00000000000..cf343cbfe69
--- /dev/null
+++ b/obj/effect/temp_visual/ninja_bomb.html
@@ -0,0 +1 @@
+/obj/effect/temp_visual/ninja_bomb - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/temp_visual/resonance.html b/obj/effect/temp_visual/resonance.html
new file mode 100644
index 00000000000..c6c64acc819
--- /dev/null
+++ b/obj/effect/temp_visual/resonance.html
@@ -0,0 +1 @@
+/obj/effect/temp_visual/resonance - Space Station 13Space Station 13 - Modules - Types — Var Details
whether the field is rupturing currently or not (to prevent recursion)
Var Details
adding_failure
the number that is added to the failure_prob. Will default to 50
creator
the parent creator (user) of this field
damage_multiplier
the modifier to resonance_damage; affected by the quick_burst_mod from the resonator
failure_prob
the probability that the field will not be able to spread
parent_resonator
the parent resonator of this field
resonance_damage
the amount of damage living beings will take whilst inside the field during its burst
rupturing
whether the field is rupturing currently or not (to prevent recursion)
\ No newline at end of file
diff --git a/obj/effect/temp_visual/single_user.html b/obj/effect/temp_visual/single_user.html
new file mode 100644
index 00000000000..8bbc7f1149c
--- /dev/null
+++ b/obj/effect/temp_visual/single_user.html
@@ -0,0 +1 @@
+/obj/effect/temp_visual/single_user - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
single_user
A visual effect that will be shown only to a particular user for a period of time.
The UID of the person who the image is being displayed to
Proc Details
add_mind
Add the image to the user's screen
remove_mind
Remove the image from the user's screen
\ No newline at end of file
diff --git a/obj/effect/temp_visual/sonar_ping.html b/obj/effect/temp_visual/sonar_ping.html
new file mode 100644
index 00000000000..f2f3bcc0026
--- /dev/null
+++ b/obj/effect/temp_visual/sonar_ping.html
@@ -0,0 +1 @@
+/obj/effect/temp_visual/sonar_ping - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The icon state applied to the image created for this ping.
source_UID
The person in the modsuit at the moment, really just used to remove this from their screen
Proc Details
add_mind
Add the image to the modsuit wearer's screen
remove_mind
Remove the image from the modsuit wearer's screen
\ No newline at end of file
diff --git a/obj/effect/temp_visual/temporal_slash.html b/obj/effect/temp_visual/temporal_slash.html
new file mode 100644
index 00000000000..efa36986869
--- /dev/null
+++ b/obj/effect/temp_visual/temporal_slash.html
@@ -0,0 +1 @@
+/obj/effect/temp_visual/temporal_slash - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/transmission_beam.html b/obj/effect/transmission_beam.html
new file mode 100644
index 00000000000..b9c6def3aeb
--- /dev/null
+++ b/obj/effect/transmission_beam.html
@@ -0,0 +1 @@
+/obj/effect/transmission_beam - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Explosions aren't supposed to make holes in a beam.
Var Details
host
Used to deal with atoms stepping on us while firing
Proc Details
ex_act
Explosions aren't supposed to make holes in a beam.
\ No newline at end of file
diff --git a/obj/effect/visible_anomalous_particulate.html b/obj/effect/visible_anomalous_particulate.html
new file mode 100644
index 00000000000..9929e39dfd9
--- /dev/null
+++ b/obj/effect/visible_anomalous_particulate.html
@@ -0,0 +1 @@
+/obj/effect/visible_anomalous_particulate - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/effect/watcher_orbiter.html b/obj/effect/watcher_orbiter.html
new file mode 100644
index 00000000000..c897d07fa1d
--- /dev/null
+++ b/obj/effect/watcher_orbiter.html
@@ -0,0 +1 @@
+/obj/effect/watcher_orbiter - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
How much faster do we shoot when avenging our parent?
parent
Who are we following?
projectile_sound
Sound to make when we shoot
projectile_type
Type of projectile we fire
shot_cooldown
Time taken between shots
target_faction
Types of mobs to attack
tracker
Datum which keeps us hanging out with our parent
Proc Details
follow
Set ourselves up to track and orbit around a guy
on_parent_deleted
Called if the guy we're tracking is deleted somehow
on_parent_died
We must guard this corpse
on_parent_moved
Follow our parent
on_parent_revived
Exit hyperactive mode
orbit_animation
Do our orbiting animation
shoot_at
Take a shot
\ No newline at end of file
diff --git a/obj/item.html b/obj/item.html
new file mode 100644
index 00000000000..085efbcae29
--- /dev/null
+++ b/obj/item.html
@@ -0,0 +1,97 @@
+/obj/item - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Since any item can now be a piece of clothing, this has to be put here so all items share it.
+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.
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 heat_protection flags
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 cold_protection flags
Updates an item's appearance to mimic the appearance of another item in the dye_registry's dictionary
+what types of items (beanie, jumpsuit, shoes, etc) src is dyed into depends on the dye_key unless an
+overidden dye_key is specified. For example if our dye_key is DYE_REGISTRY_UNDER and we specify to dye to
+DYE_RED, our item's appearance would then mimic /obj/item/clothing/under/color/red; see [code/_globalvars/lists/dye_registry.dm] for this dictionary
Called when a mob tries to use the item as a tool.
+Handles most checks.
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
For what suits can store. IE. secuirty vest holding stunbatons, disablers, cuffs.
armor_penetration_flat
Flat armour reduction, occurs after percentage armour penetration.
armor_penetration_percentage
Percentage armour reduction, happens before flat armour reduction.
attached_bits
List of attached tool bits
attack_effect_override
Allows you to override the attack animation with an attack effect
attack_verb
Used in attackby() to say how something was attacked "[x] has been [z.attack_verb] by [y] with [z]"
bit_efficiency_mod
Efficiency modifier for tools that use energy or fuel
bit_failure_rate
Failure rate of using this tool. Without a bit, defaults to 0 for no failure chance
bit_productivity_mod
Productivity modifier for tools
body_parts_covered
What bodyflags does this item cover? See setup.dm for appropriate bit 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
discrete
used in item_attack.dm to make an item not show an attack message to viewers
dog_fashion
What can/cant be worn, and where is valid to be worn by ian/E-N(and corgies), most of the time changing the name and emotes of the pet.
drop_sound
Sound uses when dropping the item, or when its thrown.
dyeable
If this item is put into a washing machine to be dyed, can objects of this type be dyed into a different color/icon?
dyeing_key
The associated key to the dye registry GLOB list, used to transform/color this piece of clothing through dyeing
embed_chance
So items can have custom embedd values because customisation is king
embedded_fall_chance
The chances of the item falling out of the limb
embedded_fall_pain_multiplier
The coefficient of multiplication for the damage this item does when falling out of a limb (this * w_class)
embedded_ignore_throwspeed_threshold
How fast something has to be going to embed
embedded_impact_pain_multiplier
The coefficient of multiplication for the damage this item does when first embedded (this * w_class)
embedded_pain_chance
The cances of the item dealing damage to the limb
embedded_pain_multiplier
The coefficient of multiplication for the damage this item does while embedded (this * w_class)
embedded_unsafe_removal_pain_multiplier
The coefficient of multiplication for the damage removing this without surgery causes (this * w_class)
embedded_unsafe_removal_time
A time in ticks, multiplied by the w_class.
equip_sound
Sound used when equipping the item into a valid slot
flags_cover
For flags that define what areas an item cover
flags_inv
Since any item can now be a piece of clothing, this has to be put here so all items share it.
+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.
gas_transfer_coefficient
For leaking gas from turf to mask and vice-versa.
heat_protection
Flags which determine which body parts are protected from heat. Use the HEAD, UPPER_TORSO, LOWER_TORSO, etc. flags. See setup.dm
hidden_uplink
All items can have an uplink hidden inside, just remember to add the triggers.
hit_reaction_chance
Used to give a reaction chance on hit that is not a block. If less than 0, will remove the block message, allowing overides.
hitsound
Sound played when you hit something with the item
in_inventory
Is this item equipped into an inventory slot or hand of a mob?
in_storage
Is this item inside a storage object?
inhand_icon_state
Icon state for mob inhand overlays, if null the icon_state value will be used
inhand_x_dimension
Dimension X of the lefthand_file and righthand_file var
+eg: 32x32 sprite, 64x64 sprite, etc.
inhand_y_dimension
Dimension Y of the lefthand_file and righthand_file var
+eg: 32x32 sprite, 64x64 sprite, etc.
lefthand_file
Icon file for left hand inhand overlays
materials
What materials the item yields when broken down. Some methods will not recover everything (autolathes only recover metal and glass, for example).
max_bits
Maximum number of bits
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 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 cold_protection flags
mob_throw_hit_sound
Used when yate into a mob
move_resist
Set in the Initialise depending on the item size. Unless it's overriden by a specific item
needs_permit
Used by security bots to determine if this item is safe for public use.
outline_filter
Holder var for the item outline filter, null when no outline filter on the item.
pass_flags
Determines what it can pass over/through. IE. 'PASSTABLE' will allow it to pass over tables
permeability_coefficient
for chemicals/diseases
pickup_sound
Sound uses when picking the item up (into your hands)
prefered_slot_flags
If set, this determines which slots are considered when using quick equip
put_on_delay
How long it takes to put an item onto somebody. IE. clothing
reach
In tiles, how far this weapon can reach; 1 for adjacent, which is default
righthand_file
Icon file for right inhand overlays
siemens_coefficient
for electrical admittance/conductance (electrocution checks and shit)
slot_flags
This is used to determine on which slots an item can fit.
slowdown
How much clothing is slowing you down. Negative values speeds you up.
sprite_sheets
Species-specific sprites, concept stolen from Paradise//vg/.
Sends COMSIG_AFTER_ATTACK and COMSIG_AFTER_ATTACKED_BY, handling no responses.
+New uses of this proc are prohibited! attack() calls on mobs and objects handle sending these signals.
+
Arguments:
+
+
atom/target - The thing that was hit
+
mob/user - The mob doing the hitting
+
proximity_flag - is 1 if this afterattack was called on something adjacent, in your square, or on your person.
+
click_parameters - is the params string from byond [/atom/proc/Click] code, see that documentation.
+
attack
Called when we are used by user to attack the living target.
+
Returns TRUE if the rest of the attack chain should be cancelled. This may occur if the attack failed for some reason.
+Returns FALSE if the attack was "successful" or "handled" in some way, and the rest of the attack chain should still fire.
attack_obj
The equivalent of the standard version of /obj/item/proc/attack but for non mob targets.
attack_obj__legacy__attackchain
Called when user attacks us with object O.
+
Handles COMSIG_ATTACK_OBJ returning [COMPONENT_NO_ATTACK_OBJ].
+Returns FALSE if the attack isn't valid.
Called when user has us in the active hand, and has clicked on us.
+
Handles COMSIG_ACTIVATE_SELF returning [COMPONENT_NO_INTERACT].
+Returns TRUE if a listener has requested the attack chain be cancelled.
+
New uses of this proc are prohibited! Use /obj/item/proc/activate_self.
+If you are modifiying an existing implementation of this proc, it is expected that you replace it with the proper alternative!
can_enter_storage
Called to check if this item can be put into a storage item.
+
Return FALSE if src can't be inserted, and TRUE if it can.
+Arguments:
Changes the speech verb when wearing this item if a value is returned
cigarette_lighter_act
Handles the bulk of cigarette lighting interactions. You must call light() to actually light the cigarette.
+
Returns: the target's cigarette (or the cigarette itself if attacked directly) if all checks are passed.
+If the cigarette is already lit, or is a fancy smokable being lit by anything other than a zippo or match, will return FALSE.
+Otherwise it will return null.
+Arguments:
+
+
user - The mob trying to light the cigarette.
+
target - The mob with the cigarette.
+
direct_attackby_item - Used if the cigarette item is clicked on directly with a lighter instead of a mob wearing a cigarette.
+
customised_abstract_text
This proc is used to add text for items with ABSTRACT flag after default examine text.
cyborg_recharge
Called on cyborg items that need special charging behavior. Override as needed for specific items.
dropped
Called when a mob drops an item.
dye_item
Updates an item's appearance to mimic the appearance of another item in the dye_registry's dictionary
+what types of items (beanie, jumpsuit, shoes, etc) src is dyed into depends on the dye_key unless an
+overidden dye_key is specified. For example if our dye_key is DYE_REGISTRY_UNDER and we specify to dye to
+DYE_RED, our item's appearance would then mimic /obj/item/clothing/under/color/red; see [code/_globalvars/lists/dye_registry.dm] for this dictionary
+
once everything is updated, the target type path that we dyed the item into is returned
+
Arguments:
+
+
dye_color: the DYE_COLOR specifies which dye color we look up to copy apearances from in the dye_registry; cannot be null
+
dye_key_override: this overrides the items dyeing_key which allows you to force the proc to use a specific lookup key for the dye_registry; this can be null
+
get_job_name
Used in secHUD icon generation
get_part_rating
Returns a numeric value for sorting items used as parts in machines, so they can be replaced by the B/RPED
interact_with_atom
Called when this item is being used to interact with an atom,
+IE, a mob is clicking on an atom with this item.
+
Return an ITEM_INTERACT_ flag in the event the interaction was handled, to cancel further interaction code.
+Return NONE to allow default interaction / tool handling.
is_equipped
returns TRUE if the item is equipped by a mob, 0 otherwise.
is_robot_module
Checks whether this item is a module of the robot it is located in.
melee_attack_chain
This is the proc that handles the order of an item_attack.
+
The order of procs called is:
+
+
/atom/proc/base_item_interaction on the target. If it returns ITEM_INTERACT_COMPLETE, the chain will be stopped.
+If it returns ITEM_INTERACT_SKIP_TO_AFTER_ATTACK, all attack chain steps except after-attack will be skipped.
Called when this item is being used to interact with an atom from a distance,
+IE, a mob is clicking on an atom with this item and is not adjacent.
+
Does NOT include Telekinesis users, they are considered adjacent generally
+(so long as this item is adjacent to the atom).
+
Return an ITEM_INTERACT_ flag in the event the interaction was handled, to cancel further interaction code.
refill
Generic refill proc. Transfers something (e.g. fuel, charge) from an atom to our tool. returns TRUE if it was successful, FALSE otherwise
remove_bit
Used to remove a bit through a signal
use
Generic use proc. Depending on the item, it uses up fuel, charges, sheets, etc. Returns TRUE on success, FALSE on failure.
use_tool
Called when a mob tries to use the item as a tool.
+Handles most checks.
\ No newline at end of file
diff --git a/obj/item/ai_module.html b/obj/item/ai_module.html
new file mode 100644
index 00000000000..f5906cb4c1c
--- /dev/null
+++ b/obj/item/ai_module.html
@@ -0,0 +1 @@
+/obj/item/ai_module - Space Station 13Space Station 13 - Modules - Types — Proc Details
what this module should do if it is mapload spawning on a unique AI station trait round.
Proc Details
handle_unique_ai
what this module should do if it is mapload spawning on a unique AI station trait round.
\ No newline at end of file
diff --git a/obj/item/airlock_electronics.html b/obj/item/airlock_electronics.html
new file mode 100644
index 00000000000..dda1fc5e275
--- /dev/null
+++ b/obj/item/airlock_electronics.html
@@ -0,0 +1 @@
+/obj/item/airlock_electronics - Space Station 13Space Station 13 - Modules - Types — Var Details
Which direction has unrestricted access to the airlock (e.g. medbay doors from the inside)
Var Details
door_accesses_list
An associative list containing all station accesses. Includes their name and access number.
is_installed
Is this electronic installed in a door?
max_brain_damage
Maximum brain damage a mob can have until it can't use the electronics
one_access
Is the door access using req_one_access (TRUE) or req_access (FALSE)
selected_accesses
List of accesses currently set
unres_access_from
Which direction has unrestricted access to the airlock (e.g. medbay doors from the inside)
\ No newline at end of file
diff --git a/obj/item/ammo_box/magazine/wt550m9.html b/obj/item/ammo_box/magazine/wt550m9.html
new file mode 100644
index 00000000000..e81d01dfb22
--- /dev/null
+++ b/obj/item/ammo_box/magazine/wt550m9.html
@@ -0,0 +1 @@
+/obj/item/ammo_box/magazine/wt550m9 - Space Station 13Space Station 13 - Modules - Types — Var Details
There are two reloading processes ongoing so cancel them
Var Details
being_loaded
A var to check if the mag is being loaded
double_loaded
There are two reloading processes ongoing so cancel them
\ No newline at end of file
diff --git a/obj/item/ammo_casing.html b/obj/item/ammo_casing.html
new file mode 100644
index 00000000000..3bb2b32097f
--- /dev/null
+++ b/obj/item/ammo_casing.html
@@ -0,0 +1 @@
+/obj/item/ammo_casing - Space Station 13Space Station 13 - Modules - Types — Var Details
What color the flash has. If null then the flash won't cause lighting
muzzle_flash_effect
What type of muzzle flash effect will be shown. If null then no effect and flash of light will be shown
muzzle_flash_range
What range the muzzle flash has
muzzle_flash_strength
How strong the flash is
\ No newline at end of file
diff --git a/obj/item/ammo_casing/energy.html b/obj/item/ammo_casing/energy.html
new file mode 100644
index 00000000000..af87d541aa2
--- /dev/null
+++ b/obj/item/ammo_casing/energy.html
@@ -0,0 +1 @@
+/obj/item/ammo_casing/energy - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/ammo_casing/energy/arc_revolver.html b/obj/item/ammo_casing/energy/arc_revolver.html
new file mode 100644
index 00000000000..e51fa8927b7
--- /dev/null
+++ b/obj/item/ammo_casing/energy/arc_revolver.html
@@ -0,0 +1 @@
+/obj/item/ammo_casing/energy/arc_revolver - Space Station 13Space Station 13 - Modules - Types — Var Details
This number is randomly generated when the arc revolver is made. This ensures the beams only link to beams from the gun, one lower or higher than the number on the boosted object.
Var Details
random_link_number
This number is randomly generated when the arc revolver is made. This ensures the beams only link to beams from the gun, one lower or higher than the number on the boosted object.
\ No newline at end of file
diff --git a/obj/item/ammo_casing/lionhunter.html b/obj/item/ammo_casing/lionhunter.html
new file mode 100644
index 00000000000..29bdb57e9ea
--- /dev/null
+++ b/obj/item/ammo_casing/lionhunter.html
@@ -0,0 +1 @@
+/obj/item/ammo_casing/lionhunter - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Callback for the do_after within the check_fire proc to see if something will prevent us from firing while aiming
Var Details
currently_aiming
Whether we're currently aiming this casing at something
min_distance
The minimum distance required to gain a damage bonus from aiming
seconds_per_distance
How many seconds it takes to aim per tile of distance between the target
Proc Details
check_fire
Checks if we can successfully fire our projectile.
check_fire_callback
Callback for the do_after within the check_fire proc to see if something will prevent us from firing while aiming
\ No newline at end of file
diff --git a/obj/item/ammo_casing/magic/grapple_ammo.html b/obj/item/ammo_casing/magic/grapple_ammo.html
new file mode 100644
index 00000000000..41421a11616
--- /dev/null
+++ b/obj/item/ammo_casing/magic/grapple_ammo.html
@@ -0,0 +1 @@
+/obj/item/ammo_casing/magic/grapple_ammo - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/analyzer.html b/obj/item/analyzer.html
new file mode 100644
index 00000000000..b15db88ae4d
--- /dev/null
+++ b/obj/item/analyzer.html
@@ -0,0 +1 @@
+/obj/item/analyzer - Space Station 13Space Station 13 - Modules - Types — Var Details
FALSE: Sum gas mixes then present. TRUE: Present each mix individually
Var Details
show_detailed
FALSE: Sum gas mixes then present. TRUE: Present each mix individually
\ No newline at end of file
diff --git a/obj/item/areaeditor.html b/obj/item/areaeditor.html
new file mode 100644
index 00000000000..56e94821357
--- /dev/null
+++ b/obj/item/areaeditor.html
@@ -0,0 +1 @@
+/obj/item/areaeditor - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/assembly.html b/obj/item/assembly.html
new file mode 100644
index 00000000000..cd6a49f726a
--- /dev/null
+++ b/obj/item/assembly.html
@@ -0,0 +1,2 @@
+/obj/item/assembly - Space Station 13Space Station 13 - Modules - Types — Proc Details
on_attach: Called when attached to a holder, wiring datum, or other special assembly
+
Will also be called if the assembly holder is attached to a plasma (internals) tank or welding fuel (dispenser) tank.
on_detach
on_detach: Called when removed from an assembly holder or wiring datum
process_cooldown
Called to constantly step down the countdown/cooldown
pulse
Called when this device attempts to act on another device, var/radio determines if it was sent via radio or direct
pulsed
Called when another assembly acts on this one, var/radio will determine where it came from for wire calcs
toggle_secure
Happens when the assembly is (un)secured
\ No newline at end of file
diff --git a/obj/item/assembly/health.html b/obj/item/assembly/health.html
new file mode 100644
index 00000000000..34ebe0044b3
--- /dev/null
+++ b/obj/item/assembly/health.html
@@ -0,0 +1 @@
+/obj/item/assembly/health - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/assembly/prox_sensor.html b/obj/item/assembly/prox_sensor.html
new file mode 100644
index 00000000000..6802d8a6d80
--- /dev/null
+++ b/obj/item/assembly/prox_sensor.html
@@ -0,0 +1 @@
+/obj/item/assembly/prox_sensor - Space Station 13Space Station 13 - Modules - Types — Var Details
Proximity monitor associated with this atom, needed for it to work.
Var Details
proximity_monitor
Proximity monitor associated with this atom, needed for it to work.
\ No newline at end of file
diff --git a/obj/item/assembly/signaler.html b/obj/item/assembly/signaler.html
new file mode 100644
index 00000000000..7a3d707cf73
--- /dev/null
+++ b/obj/item/assembly/signaler.html
@@ -0,0 +1 @@
+/obj/item/assembly/signaler - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Called from activate(), actually invokes the signal on other signallers in the world
Var Details
code
Signal code
frequency
Signal freqency itself
receiving
Are we set to receieve a signal?
Proc Details
signal
Called from activate(), actually invokes the signal on other signallers in the world
\ No newline at end of file
diff --git a/obj/item/barcodescanner.html b/obj/item/barcodescanner.html
new file mode 100644
index 00000000000..df2cf6564b1
--- /dev/null
+++ b/obj/item/barcodescanner.html
@@ -0,0 +1 @@
+/obj/item/barcodescanner - Space Station 13Space Station 13 - Modules - Types — Var Details
Associated Library Computer, needed to perform actions
Var Details
computer
Associated Library Computer, needed to perform actions
\ No newline at end of file
diff --git a/obj/item/barsign_electronics.html b/obj/item/barsign_electronics.html
new file mode 100644
index 00000000000..138e80f44ad
--- /dev/null
+++ b/obj/item/barsign_electronics.html
@@ -0,0 +1 @@
+/obj/item/barsign_electronics - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/batterer.html b/obj/item/batterer.html
new file mode 100644
index 00000000000..6b89aad903b
--- /dev/null
+++ b/obj/item/batterer.html
@@ -0,0 +1 @@
+/obj/item/batterer - Space Station 13Space Station 13 - Modules - Types — Var Details
How many SSobj ticks have passed (Roughly 2 seconds of in game time), used to see when to recharge a use on this item
times_used
How many times the mind batter has been used
\ No newline at end of file
diff --git a/obj/item/beach_ball.html b/obj/item/beach_ball.html
new file mode 100644
index 00000000000..fec54d0f475
--- /dev/null
+++ b/obj/item/beach_ball.html
@@ -0,0 +1 @@
+/obj/item/beach_ball - Space Station 13Space Station 13 - Modules - Types — Var Details
Whether attack_self will move ("dribble") it to the other hand
Var Details
dribbleable
Whether attack_self will move ("dribble") it to the other hand
\ No newline at end of file
diff --git a/obj/item/bio_chip.html b/obj/item/bio_chip.html
new file mode 100644
index 00000000000..fbce74a2e7c
--- /dev/null
+++ b/obj/item/bio_chip.html
@@ -0,0 +1,25 @@
+/obj/item/bio_chip - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Implants
Code for implants that can be inserted into a person and have some sort of passive or triggered action.
Whether multiple implants of this same type can be inserted into someone.
has_triggered_on_death
Whether this implant has already triggered on death or not, to prevent it firing multiple times.
imp_in
Who the implant is inside of.
implant_data
the implant_fluff datum attached to this implant, purely cosmetic "lore" information
implant_state
which implant overlay should be used for implant cases. This should point to a state in bio_chips.dmi
implanted
Whether the implant is implanted. Null if it's never been inserted, TRUE if it's currently inside someone, or FALSE if it's been removed.
trigger_causes
What type of action will trigger this emote. Bitfield of IMPLANT_EMOTE_* defines.
trigger_emotes
List of emote keys that activate this implant when used.
uses
Amount of times that the implant can be triggered by the user. If the implant can't be used, it can't be inserted.
Proc Details
can_implant
Check that we can actually implant this before implanting it
+
+
source - The person being implanted
+
user - The person doing the implanting
+
+
Returns
+TRUE - I could care less, implant it, maybe don't. I don't care.
+FALSE - Don't implant!
implant
Try to implant ourselves into a mob.
+
+
source - The person the implant is being administered to.
+
user - The person who is doing the implanting.
+
+
Returns
+1 if the implant injects successfully
+-1 if the implant fails to inject
+0 if there's no room for the implant.
removed
Clean up when an implant is removed.
+
+
source - the user who the implant was removed from.
+
set_trigger
Set the emote that will trigger the implant.
+
+
user - User who is trying to associate the implant to themselves.
+
emote_key - Key of the emote that should trigger the implant.
+
on_implant - Whether this proc is being called during the implantation of the implant.
+
silent - If true, the user won't get any to_chat messages if an implantation fails.
+
\ No newline at end of file
diff --git a/obj/item/bio_chip/death_alarm.html b/obj/item/bio_chip/death_alarm.html
new file mode 100644
index 00000000000..563f9b8f153
--- /dev/null
+++ b/obj/item/bio_chip/death_alarm.html
@@ -0,0 +1 @@
+/obj/item/bio_chip/death_alarm - Space Station 13Space Station 13 - Modules - Types — Var Details
Tracking to prevent multiple EMPs in the same tick from flooding radio.
Var Details
emp_spam_lock
Tracking to prevent multiple EMPs in the same tick from flooding radio.
\ No newline at end of file
diff --git a/obj/item/bio_chip/explosive.html b/obj/item/bio_chip/explosive.html
new file mode 100644
index 00000000000..adeb386aa2d
--- /dev/null
+++ b/obj/item/bio_chip/explosive.html
@@ -0,0 +1 @@
+/obj/item/bio_chip/explosive - Space Station 13Space Station 13 - Modules - Types — Proc Details
Gib the implantee and delete their destructible contents.
Proc Details
self_destruct
Gib the implantee and delete their destructible contents.
\ No newline at end of file
diff --git a/obj/item/bio_chip/mod.html b/obj/item/bio_chip/mod.html
new file mode 100644
index 00000000000..04396392ad0
--- /dev/null
+++ b/obj/item/bio_chip/mod.html
@@ -0,0 +1 @@
+/obj/item/bio_chip/mod - Space Station 13Space Station 13 - Modules - Types — Var Details
List of turfs through which a mod 'steps' to reach the waypoint
target
The target turf we are after
tries
How many times have we tried to move?
\ No newline at end of file
diff --git a/obj/item/bio_chip/traitor.html b/obj/item/bio_chip/traitor.html
new file mode 100644
index 00000000000..a462e521cbd
--- /dev/null
+++ b/obj/item/bio_chip/traitor.html
@@ -0,0 +1 @@
+/obj/item/bio_chip/traitor - Space Station 13Space Station 13 - Modules - Types — Var Details
The UID of the mindslave's mind. Stored to solve GC race conditions and ensure we can remove their mindslave status even when they're deleted or gibbed.
Var Details
mindslave_UID
The UID of the mindslave's mind. Stored to solve GC race conditions and ensure we can remove their mindslave status even when they're deleted or gibbed.
\ No newline at end of file
diff --git a/obj/item/blank_tarot_card.html b/obj/item/blank_tarot_card.html
new file mode 100644
index 00000000000..034b292f934
--- /dev/null
+++ b/obj/item/blank_tarot_card.html
@@ -0,0 +1 @@
+/obj/item/blank_tarot_card - Space Station 13Space Station 13 - Modules - Types — Var Details
If a person can choose what the card produces. No cost if they can choose.
Var Details
let_people_choose
If a person can choose what the card produces. No cost if they can choose.
\ No newline at end of file
diff --git a/obj/item/book.html b/obj/item/book.html
new file mode 100644
index 00000000000..881e20fd82c
--- /dev/null
+++ b/obj/item/book.html
@@ -0,0 +1,14 @@
+/obj/item/book - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Standard Book
Game Object which stores pages of text usually written by players, has other editable information such as the book's
+title, author, summary, and categories. Has other values that are generated when books are acquired through the library
+computer.
+
Like other User Interfaces that heavily rely on player input, using newer tools such as TGUI presents sanitization issues
+so books will remain using BrowserUI until further notice.
The background color of the book, useful for themed programmatic books, must be in #FFFFFF hex color format
book_height
Book UI Popup Height
book_width
Book UI Popup Width
brain_damage_cooldown
Cooldown for brain damage loss when reading
carved
Indicates whether or not a books pages have been carved out
categories
Book Categories - used for differentiating types of books, set by players upon upload, viewable upon examining book
copyright
Prevents book from being uploaded - For all printed books
current_page
What page is the book currently opened to? Page 0 - Intro Page | Page 1-5 - Content Pages
imaginary
Is this item imaginary and not able to interact with anything else?
libraryid
Book's id within the library system, unique to each book object, should not be declared manually
pages
Content Pages of the books, this variable is a list of strings containting the HTML + Text of each page
protected
Prevents book contents from being edited
rating
Book Rating - Assigned by library computer based on how many/how players have rated this book
store
Item that is stored inside the book
summary
Short summary of the contents of the book, can be changed by pen or PC
title
Title & Real name of the book
Proc Details
can_read
Internal Checker Proc
+
Gives free pass to observers to read, ensures that all other mobs attempting to read book are A) literated and
+B) are within range to actually read the book.
clear_stored_item
needed for proper GC'ing
edit_book
Edit Book Proc
+
This is where a lot of the magic happens, upon interacting with the book with a pen, this proc will open up options
+for the player to edit the book. Most importantly, this is where we account for player stupidity and maliciousness
+any input must strip/reject bad text and HTML from user input, additionally we account for players trying to screw
+with the Database. This will also limit the max characters players can upload at one time to prevent spamming.
read_book
Read Book Proc
+
Checks if players is able to read book and that book is readable before calling the neccesary procs to open up UI
show_content
Show Content Proc
+
Builds the browserUI html to show to the player then open up the User interface. It first build the header navigation
+buttons and then builds the rest of the UI based on what page the player is turned to.
\ No newline at end of file
diff --git a/obj/item/book/granter.html b/obj/item/book/granter.html
new file mode 100644
index 00000000000..c075290c9f6
--- /dev/null
+++ b/obj/item/book/granter.html
@@ -0,0 +1,2 @@
+/obj/item/book/granter - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
granter
Books that teach things.
+
(Intrinsic actions like bar flinging, spells like fireball or smoke, or martial arts)
The actual "turning over of the page" flavor bit that happens while someone is reading the granter.
Var Details
book_sounds
The sounds played as the user's reading the book.
pages_to_mastery
Controls how long a mob must keep the book in his hand to actually successfully learn
reading
Sanity, whether it's currently being read
reading_time
The time it takes to read the book
remarks
Flavor messages displayed to mobs reading the granter
uses
The amount of uses on the granter.
Proc Details
can_learn
Checks if the user can learn whatever this granter... grants
on_reading_finished
Called when the reading is completely finished. This is where the actual granting should happen.
on_reading_start
Called when the user starts to read the granter.
on_reading_stopped
Called when the reading is interrupted without finishing.
recoil
Effects that occur whenever the book is read when it has no uses left.
turn_page
The actual "turning over of the page" flavor bit that happens while someone is reading the granter.
\ No newline at end of file
diff --git a/obj/item/book/granter/action.html b/obj/item/book/granter/action.html
new file mode 100644
index 00000000000..09e0e028d18
--- /dev/null
+++ b/obj/item/book/granter/action.html
@@ -0,0 +1 @@
+/obj/item/book/granter/action - Space Station 13Space Station 13 - Modules - Types — Var Details
The name of the action, formatted in a more text-friendly way.
granted_action
The typepath of action that is given
\ No newline at end of file
diff --git a/obj/item/book/granter/crafting_recipe.html b/obj/item/book/granter/crafting_recipe.html
new file mode 100644
index 00000000000..b1d256ba2e0
--- /dev/null
+++ b/obj/item/book/granter/crafting_recipe.html
@@ -0,0 +1 @@
+/obj/item/book/granter/crafting_recipe - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/book/granter/spell.html b/obj/item/book/granter/spell.html
new file mode 100644
index 00000000000..b6d9672de7d
--- /dev/null
+++ b/obj/item/book/granter/spell.html
@@ -0,0 +1 @@
+/obj/item/book/granter/spell - Space Station 13Space Station 13 - Modules - Types — Var Details
The name of the spell, formatted in a more text-friendly way
Var Details
granted_spell
The typepath of spell that is given
spell_name
The name of the spell, formatted in a more text-friendly way
\ No newline at end of file
diff --git a/obj/item/book/manual.html b/obj/item/book/manual.html
new file mode 100644
index 00000000000..79fdd8cf6d4
--- /dev/null
+++ b/obj/item/book/manual.html
@@ -0,0 +1,14 @@
+/obj/item/book/manual - Space Station 13Space Station 13 - Modules - Types
MANUALS (BOOKS)
These are "programmatic books," that is books that are hard-coded into the game. Just for the sake of maintainability, keep
+information subject to change (as in likely to change SOON) out of the non-wiki manuals as they require PRs to change
+and it is not an author's responsbility to update manuals if they change a mechanic/recipe/feature referenced in one of them
+Don't worry about adding them to the library, as long as they're one of these types it is automatically added.
+
Longer Guides should really be a '/obj/item/book/manual/wiki' type book and be tethered to a wiki page, this is because wiki pages
+outside of SOP & Space Law can be very easily changed and do not require going through the Pull Request process. The benefits of
+these are that they can be illustrated, filled with tables, and changed without affecting the codebase.
+
However, contributors should avoid making every book/page tethered to a wiki page for a few reasons:
+
+
many players who are likely just starting out would benefit from only getting a little bit of info to get started (think 5-10 bar recipes)
+
Wiki pages are purposefully dry and to the point, manuals benefit from having flavor/personality to them to make them interesting to read ICly
+
One can just open the damn wiki instead of reading a crusty-ass manual
+-Sirryan2002
+
\ No newline at end of file
diff --git a/obj/item/book/manual/wiki.html b/obj/item/book/manual/wiki.html
new file mode 100644
index 00000000000..05f9f763f47
--- /dev/null
+++ b/obj/item/book/manual/wiki.html
@@ -0,0 +1,5 @@
+/obj/item/book/manual/wiki - Space Station 13Space Station 13 - Modules - Types — Var Details
Wiki Page Based Book Manuals
These are programmatic books that source its pages / "content" straight from the wiki
+That means that this content can ONLY be changed by editing the wiki
+Space Law and SOP Manuals can only be edited by Wiki Admins
+
These are automated well enough that as long as the link to the wiki is set correctly in the config and the article name is correct
+these will display (mostly) CSS stripped wiki pages in them.
The Article title of the wiki page being opened in the
Var Details
wiki_article_title
The Article title of the wiki page being opened in the
\ No newline at end of file
diff --git a/obj/item/borg/upgrade.html b/obj/item/borg/upgrade.html
new file mode 100644
index 00000000000..10da711bd46
--- /dev/null
+++ b/obj/item/borg/upgrade.html
@@ -0,0 +1,17 @@
+/obj/item/borg/upgrade - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
A list of items, and their replacements that this upgrade should replace on installation, in the format of item_type_to_replace = replacement_item_type.
Checks if the upgrade is able to be applied to the cyborg, before actually applying it.
Var Details
allow_duplicate
Allow the same upgrade to be installed multiple times, FALSE by default
delete_after_install
Delete the module after installing it. For deleting upgrades that might be installed multiple times, like the rename/reset upgrades.
items_to_add
A list of items to add, rather than replace
items_to_replace
A list of items, and their replacements that this upgrade should replace on installation, in the format of item_type_to_replace = replacement_item_type.
module_type
The type of module this upgrade is compatible with: Engineering, Medical, etc.
require_module
Whether or not the cyborg needs to have a chosen module before they can receive this upgrade.
special_rechargables
A list of replacement items will need to be placed into a cyborg module's special_rechargable list after this upgrade is installed.
Proc Details
action
Called when someone clicks on a borg with an upgrade in their hand.
+
Arguments:
+
+
R - the cyborg that was clicked on with an upgrade.
+
after_install
Executes code after the module has been installed and the cyborg has been modified in some way.
+
Arguments:
+
+
R - the cyborg that we've applied the upgrade to.
+
do_install
Executes code that will modify the cyborg or its module.
+
Arguments:
+
+
R - the cyborg we're applying the upgrade to.
+
pre_install_checks
Checks if the upgrade is able to be applied to the cyborg, before actually applying it.
+
Arguments:
+
+
R - the cyborg that was clicked on with an upgrade.
+
\ No newline at end of file
diff --git a/obj/item/borg/upgrade/floorbuffer.html b/obj/item/borg/upgrade/floorbuffer.html
new file mode 100644
index 00000000000..1955a5d6953
--- /dev/null
+++ b/obj/item/borg/upgrade/floorbuffer.html
@@ -0,0 +1 @@
+/obj/item/borg/upgrade/floorbuffer - Space Station 13Space Station 13 - Modules - Types — Var Details
How much speed the cyborg loses while the buffer is active
Var Details
buffer_speed
How much speed the cyborg loses while the buffer is active
\ No newline at end of file
diff --git a/obj/item/camera.html b/obj/item/camera.html
new file mode 100644
index 00000000000..51f3a692cf5
--- /dev/null
+++ b/obj/item/camera.html
@@ -0,0 +1 @@
+/obj/item/camera - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Sorts atoms firstly by plane, then by layer on each plane
Var Details
flashing_light
Should camera light up the scene
see_cult
Cult portals and unconcealed runes have a minor form of invisibility
Proc Details
handle_haunt
hauntings, like hallucinations but more spooky
sort_atoms
Sorts atoms firstly by plane, then by layer on each plane
\ No newline at end of file
diff --git a/obj/item/camera_bug.html b/obj/item/camera_bug.html
new file mode 100644
index 00000000000..67688fd8fbf
--- /dev/null
+++ b/obj/item/camera_bug.html
@@ -0,0 +1 @@
+/obj/item/camera_bug - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/candle.html b/obj/item/candle.html
new file mode 100644
index 00000000000..e54f46f3102
--- /dev/null
+++ b/obj/item/candle.html
@@ -0,0 +1 @@
+/obj/item/candle - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/card/id.html b/obj/item/card/id.html
new file mode 100644
index 00000000000..78808fc8728
--- /dev/null
+++ b/obj/item/card/id.html
@@ -0,0 +1 @@
+/obj/item/card/id - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/card/id/heretic.html b/obj/item/card/id/heretic.html
new file mode 100644
index 00000000000..fdd6d5dab14
--- /dev/null
+++ b/obj/item/card/id/heretic.html
@@ -0,0 +1 @@
+/obj/item/card/id/heretic - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
heretic
An ID card capable of shapeshifting to other IDs given by the Key Keepers Burden knowledge
are our created portals inverted? (heretics get sent to a random airlock, crew get sent to the target)
link
The first door we are linking in the pair, so we can create a portal pair
portal_one
The first portal in the portal pair, so we can clear it later
portal_two
The second portal in the portal pair, so we can clear it later
Proc Details
clear_portal_refs
Clears portal references
clear_portals
Deletes and nulls our portal pair
make_portal
Creates a portal pair at door1 and door2, displays a balloon alert to user
shapeshift
Changes our appearance to the passed ID card
\ No newline at end of file
diff --git a/obj/item/card/id/prisoner.html b/obj/item/card/id/prisoner.html
new file mode 100644
index 00000000000..afd37effafe
--- /dev/null
+++ b/obj/item/card/id/prisoner.html
@@ -0,0 +1 @@
+/obj/item/card/id/prisoner - Space Station 13Space Station 13 - Modules - Types — Var Details
How many mining points you need to be released from the labour camp.
Var Details
goal
How many mining points you need to be released from the labour camp.
\ No newline at end of file
diff --git a/obj/item/card/id/syndicate.html b/obj/item/card/id/syndicate.html
new file mode 100644
index 00000000000..5c291c5eec0
--- /dev/null
+++ b/obj/item/card/id/syndicate.html
@@ -0,0 +1 @@
+/obj/item/card/id/syndicate - Space Station 13Space Station 13 - Modules - Types — Var Details
Editing is prohibited if registered_human reference is missing
Var Details
hud_icon
The HUD icon that should be displayed on a mob that is wearing the agent ID
initial_access
List of access types the agent ID should start off with
registered_human
Editing is prohibited if registered_human reference is missing
\ No newline at end of file
diff --git a/obj/item/cardboard_cutout.html b/obj/item/cardboard_cutout.html
new file mode 100644
index 00000000000..a2d2557c6d0
--- /dev/null
+++ b/obj/item/cardboard_cutout.html
@@ -0,0 +1 @@
+/obj/item/cardboard_cutout - Space Station 13Space Station 13 - Modules - Types — Var Details
If the cutout is pushed over and has to be righted
Var Details
deceptive
If the cutout actually appears as what it portray and not a discolored version
pushed_over
If the cutout is pushed over and has to be righted
\ No newline at end of file
diff --git a/obj/item/cardhand.html b/obj/item/cardhand.html
new file mode 100644
index 00000000000..fe4d74e9afe
--- /dev/null
+++ b/obj/item/cardhand.html
@@ -0,0 +1,3 @@
+/obj/item/cardhand - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Update our card values based on those set on a deck
Var Details
cards
All of the cards in the deck.
concealed
If true, the cards will be face down.
direction
Tracked direction, which is used when updating the hand's appearance instead of messing with the local dir
parent_deck_id
The ID of the base deck that we belong to.
Proc Details
MouseDrop
Dragging a card to your hand will let you draw from it without picking it up.
add_cardhand_to_self
Merge the target cardhand into the current cardhand
remove_card
Draw a card from a card hand.
+If a picked card isn't given,
select_card_radial
Open a radial menu to select a single card from a hand.
split
Create a new card-hand from a list of cards in the other hand.
update_values_from_cards
Update our own card values to reflect that of some source hand
update_values_from_deck
Update our card values based on those set on a deck
\ No newline at end of file
diff --git a/obj/item/cardpack.html b/obj/item/cardpack.html
new file mode 100644
index 00000000000..57ac1315beb
--- /dev/null
+++ b/obj/item/cardpack.html
@@ -0,0 +1 @@
+/obj/item/cardpack - Space Station 13Space Station 13 - Modules - Types — Var Details
The guaranteed rarity table, acts about the same as the rarity table.
guaranteed_count
The amount of cards to draw from the guarenteed rarity table
rarity_table
The rarity table
series
The card series to look through
\ No newline at end of file
diff --git a/obj/item/cartridge.html b/obj/item/cartridge.html
new file mode 100644
index 00000000000..c30e19b06c4
--- /dev/null
+++ b/obj/item/cartridge.html
@@ -0,0 +1 @@
+/obj/item/cartridge - Space Station 13Space Station 13 - Modules - Types — Var Details
Integrated signaler for captain, science & generic signaler cartridge
Var Details
integ_signaler
Integrated signaler for captain, science & generic signaler cartridge
\ No newline at end of file
diff --git a/obj/item/chair.html b/obj/item/chair.html
new file mode 100644
index 00000000000..7454cc768d4
--- /dev/null
+++ b/obj/item/chair.html
@@ -0,0 +1 @@
+/obj/item/chair - Space Station 13Space Station 13 - Modules - Types — Var Details
the flat amount of damage the shield user takes per non-perfect parry
Var Details
break_chance
Likelihood of smashing the chair.
force_unwielded
force applied with one hand.
force_wielded
force applied with two hands.
origin_type
Used for when placing a chair back down.
parryable_attack_types
the attack types that are considered for parrying
stamina_coefficient
stamina_coefficient * damage * time_since_time_parried = stamina damage taken per non perfect parry
stamina_constant
the flat amount of damage the shield user takes per non-perfect parry
\ No newline at end of file
diff --git a/obj/item/chemical_canister.html b/obj/item/chemical_canister.html
new file mode 100644
index 00000000000..75d7734f297
--- /dev/null
+++ b/obj/item/chemical_canister.html
@@ -0,0 +1 @@
+/obj/item/chemical_canister - Space Station 13Space Station 13 - Modules - Types — Var Details
How many units of the reagent do we need to have it's effects kick in?
Var Details
accepted_chemicals
Which reagent IDs do we accept
ammo
How much ammo do we have? Empty at 0.
chem_burn_duration
The burn duration of our currently stored chemical
chem_burn_temp
The burn temperature of our currently stored chemical
chem_color
What color will our fire burn
current_reagent_id
The currently stored reagent ID
current_reagent_name
What chemical do we have? This will be the chemical ID, so a string
fire_applications
How many firestacks will our reagent apply
first_time_silent
Are we silent on the first change of reagents?
has_filled_reagent
Do we have a locked in reagent type?
required_volume
How many units of the reagent do we need to have it's effects kick in?
\ No newline at end of file
diff --git a/obj/item/chemical_flamethrower.html b/obj/item/chemical_flamethrower.html
new file mode 100644
index 00000000000..81bf8482cd9
--- /dev/null
+++ b/obj/item/chemical_flamethrower.html
@@ -0,0 +1 @@
+/obj/item/chemical_flamethrower - Space Station 13Space Station 13 - Modules - Types — Var Details
The burn duration of our currently stored chemical in the canister
canister_burn_temp
The burn temperature of our currently stored chemical in the canister
canister_fire_applications
How many firestacks will our reagent apply
canister_fire_color
Does our chemical have any special color?
canisters
All our loaded canisters in a list
max_canisters
How many canisters fit in our flamethrower?
should_start_with_canisters
Is this a type of flamethrower that starts loaded?
syndicate
Is this a syndicate flamethrower
\ No newline at end of file
diff --git a/obj/item/circuitboard.html b/obj/item/circuitboard.html
new file mode 100644
index 00000000000..9353223d83b
--- /dev/null
+++ b/obj/item/circuitboard.html
@@ -0,0 +1 @@
+/obj/item/circuitboard - Space Station 13Space Station 13 - Modules - Types — Var Details
Use this instead of name. Formats as: circuit board ([board_name])
name
Use board_name instead of this.
\ No newline at end of file
diff --git a/obj/item/circuitboard/random_tech_level.html b/obj/item/circuitboard/random_tech_level.html
new file mode 100644
index 00000000000..fe1e8af7ddd
--- /dev/null
+++ b/obj/item/circuitboard/random_tech_level.html
@@ -0,0 +1 @@
+/obj/item/circuitboard/random_tech_level - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/clothing.html b/obj/item/clothing.html
new file mode 100644
index 00000000000..3f83df0c9c1
--- /dev/null
+++ b/obj/item/clothing.html
@@ -0,0 +1 @@
+/obj/item/clothing - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Used for any clothing interactions when the user is on fire. (e.g. Cigarettes getting lit.)
Var Details
blockTracking
Do we block AI tracking?
can_leave_fibers
Detective Work, used for allowing a given atom to leave its fibers on stuff. Allowed by default
gunshot_residue
Detective Work, firing a ballistic weapon will add a signature to this var
icon_monitor
If set to a sprite path, replaces the sprite for monitor heads
scan_reagents
Can the wearer see reagents inside transparent containers while it's equipped?
scan_reagents_advanced
Can the wearer see reagents inside any container and identify blood types while it's equipped?
species_restricted
Only these species can wear this kit.
Proc Details
catch_fire
Used for any clothing interactions when the user is on fire. (e.g. Cigarettes getting lit.)
\ No newline at end of file
diff --git a/obj/item/clothing/accessory.html b/obj/item/clothing/accessory.html
new file mode 100644
index 00000000000..113f02a7363
--- /dev/null
+++ b/obj/item/clothing/accessory.html
@@ -0,0 +1 @@
+/obj/item/clothing/accessory - Space Station 13Space Station 13 - Modules - Types — Var Details
Icon state when attached to clothing, if null the icon_state value will be used
has_suit
the suit the accessory may be attached to
inv_overlay
overlay used when attached to clothing.
\ No newline at end of file
diff --git a/obj/item/clothing/accessory/medal.html b/obj/item/clothing/accessory/medal.html
new file mode 100644
index 00000000000..30057dc5cc6
--- /dev/null
+++ b/obj/item/clothing/accessory/medal.html
@@ -0,0 +1 @@
+/obj/item/clothing/accessory/medal - Space Station 13Space Station 13 - Modules - Types — Var Details
The channel we will announce on when we are rewarded to someone
try_announce
Will we try to announce, toggled by using in hand
\ No newline at end of file
diff --git a/obj/item/clothing/accessory/pin/pride.html b/obj/item/clothing/accessory/pin/pride.html
new file mode 100644
index 00000000000..886fb4df22e
--- /dev/null
+++ b/obj/item/clothing/accessory/pin/pride.html
@@ -0,0 +1 @@
+/obj/item/clothing/accessory/pin/pride - Space Station 13Space Station 13 - Modules - Types — Var Details
List of all pride flags to icon image, for the radial
flag_types
List of all pride flags to icon state
\ No newline at end of file
diff --git a/obj/item/clothing/ears/headphones.html b/obj/item/clothing/ears/headphones.html
new file mode 100644
index 00000000000..cdfc20ec8e8
--- /dev/null
+++ b/obj/item/clothing/ears/headphones.html
@@ -0,0 +1,5 @@
+/obj/item/clothing/ears/headphones - Space Station 13Space Station 13 - Modules - Types — Proc Details
Called by a component signal when our song stops playing.
Proc Details
should_stop_playing
Whether the headphone's song should stop playing
+
Arguments:
+
+
user - The user
+
start_playing
Called by a component signal when our song starts playing.
stop_playing
Called by a component signal when our song stops playing.
\ No newline at end of file
diff --git a/obj/item/clothing/glasses.html b/obj/item/clothing/glasses.html
new file mode 100644
index 00000000000..d45d906774a
--- /dev/null
+++ b/obj/item/clothing/glasses.html
@@ -0,0 +1 @@
+/obj/item/clothing/glasses - Space Station 13Space Station 13 - Modules - Types — Var Details
If TRUE, will hide the wearer's examines from other players.
Var Details
correct_wires
Overrides colorblindness when interacting with wires
hide_examine
If TRUE, will hide the wearer's examines from other players.
\ No newline at end of file
diff --git a/obj/item/clothing/glasses/hud.html b/obj/item/clothing/glasses/hud.html
new file mode 100644
index 00000000000..afe81149090
--- /dev/null
+++ b/obj/item/clothing/glasses/hud.html
@@ -0,0 +1 @@
+/obj/item/clothing/glasses/hud - Space Station 13Space Station 13 - Modules - Types — Var Details
The visual icons granted by wearing these glasses.
Var Details
hud_access_override
Whether we want this hud be able to override id card access requirement to alter security records
hud_debug
Used for debug huds at examine.dm, gives us all rights for records
hud_types
The visual icons granted by wearing these glasses.
\ No newline at end of file
diff --git a/obj/item/clothing/glasses/hud/security/sunglasses/fluff/eyepro.html b/obj/item/clothing/glasses/hud/security/sunglasses/fluff/eyepro.html
new file mode 100644
index 00000000000..b3462224787
--- /dev/null
+++ b/obj/item/clothing/glasses/hud/security/sunglasses/fluff/eyepro.html
@@ -0,0 +1,4 @@
+/obj/item/clothing/glasses/hud/security/sunglasses/fluff/eyepro - Space Station 13Space Station 13 - Modules - Types
eyepro
///////// Clothing ////////////
+
///////// Gloves //////////////
+///////// Eye Wear ////////////
+T0EPIC4U: Ty Omaha
\ No newline at end of file
diff --git a/obj/item/clothing/glasses/hud/tajblind.html b/obj/item/clothing/glasses/hud/tajblind.html
new file mode 100644
index 00000000000..fc0b374cc30
--- /dev/null
+++ b/obj/item/clothing/glasses/hud/tajblind.html
@@ -0,0 +1 @@
+/obj/item/clothing/glasses/hud/tajblind - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/clothing/gloves.html b/obj/item/clothing/gloves.html
new file mode 100644
index 00000000000..9b1d14bbade
--- /dev/null
+++ b/obj/item/clothing/gloves.html
@@ -0,0 +1 @@
+/obj/item/clothing/gloves - Space Station 13Space Station 13 - Modules - Types — Var Details
Amount of times touching something with these gloves will spill blood on it
Var Details
gender
Carn: for grammarically correct text-parsing
pickpocket
Master pickpocket?
safe_from_poison
Do they protect the wearer from poison ink?
transfer_blood
Amount of times touching something with these gloves will spill blood on it
\ No newline at end of file
diff --git a/obj/item/clothing/head.html b/obj/item/clothing/head.html
new file mode 100644
index 00000000000..479fa93ea0f
--- /dev/null
+++ b/obj/item/clothing/head.html
@@ -0,0 +1 @@
+/obj/item/clothing/head - Space Station 13Space Station 13 - Modules - Types — Var Details
the head clothing that this item may be attached to.
Var Details
attached_hats
the attached hats to this hat.
attached_masks
the attached masks to this hat
can_be_hat
if this hat can be a hat of a hat. Hat^2
can_have_hats
if this hat can have hats placed on top of it.
can_have_mask
if this hat can have masks attached to it.
has_under
the head clothing that this item may be attached to.
\ No newline at end of file
diff --git a/obj/item/clothing/head/beanie.html b/obj/item/clothing/head/beanie.html
new file mode 100644
index 00000000000..8e361968d3b
--- /dev/null
+++ b/obj/item/clothing/head/beanie.html
@@ -0,0 +1 @@
+/obj/item/clothing/head/beanie - Space Station 13Space Station 13 - Modules - Types — Proc Details
Beanies use the color var for their appearance, we don't normally copy this over but we have to for beanies
Proc Details
dye_item
Beanies use the color var for their appearance, we don't normally copy this over but we have to for beanies
\ No newline at end of file
diff --git a/obj/item/clothing/head/cardborg.html b/obj/item/clothing/head/cardborg.html
new file mode 100644
index 00000000000..a4b8ef6d420
--- /dev/null
+++ b/obj/item/clothing/head/cardborg.html
@@ -0,0 +1 @@
+/obj/item/clothing/head/cardborg - Space Station 13Space Station 13 - Modules - Types — Var Details
You appear to be this when examined instead of your mob's actual species. Also used to verify the helmet and suit are in a matching set.
Var Details
available_disguises
All the borg skins that this can disguise you as.
species_disguise
You appear to be this when examined instead of your mob's actual species. Also used to verify the helmet and suit are in a matching set.
\ No newline at end of file
diff --git a/obj/item/clothing/head/hardhat.html b/obj/item/clothing/head/hardhat.html
new file mode 100644
index 00000000000..6f6368450e2
--- /dev/null
+++ b/obj/item/clothing/head/hardhat.html
@@ -0,0 +1 @@
+/obj/item/clothing/head/hardhat - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/clothing/head/helmet/space/plasmaman/tacticool.html b/obj/item/clothing/head/helmet/space/plasmaman/tacticool.html
new file mode 100644
index 00000000000..b6669171f81
--- /dev/null
+++ b/obj/item/clothing/head/helmet/space/plasmaman/tacticool.html
@@ -0,0 +1 @@
+/obj/item/clothing/head/helmet/space/plasmaman/tacticool - Space Station 13Space Station 13 - Modules - Types — Var Details
Different icons and names for the helm to use when reskinning
reskinned
Checks if the helm has been reskinned already
\ No newline at end of file
diff --git a/obj/item/clothing/head/helmet/space_ninja.html b/obj/item/clothing/head/helmet/space_ninja.html
new file mode 100644
index 00000000000..634be851955
--- /dev/null
+++ b/obj/item/clothing/head/helmet/space_ninja.html
@@ -0,0 +1 @@
+/obj/item/clothing/head/helmet/space_ninja - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/clothing/head/hooded/berserker.html b/obj/item/clothing/head/hooded/berserker.html
new file mode 100644
index 00000000000..1f472a1fece
--- /dev/null
+++ b/obj/item/clothing/head/hooded/berserker.html
@@ -0,0 +1 @@
+/obj/item/clothing/head/hooded/berserker - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Ends berserk, reverting the changes from the proc [berserk_mode]
Var Details
berserk_active
Status of berserk
berserk_charge
Current charge of berserk, goes from 0 to 100
Proc Details
berserk_mode
Starts berserk, giving the wearer 40% brute / burn resist, doubled attacking speed, NOGUNS trait, and colours them blood red.
end_berserk
Ends berserk, reverting the changes from the proc [berserk_mode]
\ No newline at end of file
diff --git a/obj/item/clothing/head/soft.html b/obj/item/clothing/head/soft.html
new file mode 100644
index 00000000000..d5219e67632
--- /dev/null
+++ b/obj/item/clothing/head/soft.html
@@ -0,0 +1 @@
+/obj/item/clothing/head/soft - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/clothing/mask.html b/obj/item/clothing/mask.html
new file mode 100644
index 00000000000..b84b240ce1e
--- /dev/null
+++ b/obj/item/clothing/mask.html
@@ -0,0 +1 @@
+/obj/item/clothing/mask - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/clothing/mask/cigarette.html b/obj/item/clothing/mask/cigarette.html
new file mode 100644
index 00000000000..7170850f75f
--- /dev/null
+++ b/obj/item/clothing/mask/cigarette.html
@@ -0,0 +1 @@
+/obj/item/clothing/mask/cigarette - Space Station 13Space Station 13 - Modules - Types — Var Details
How long does the cigarette last before going out? Decrements by 1 every cycle.
Var Details
butt_type
What trash item the cigarette makes when it burns out.
chem_volume
The cigarette's total reagent capacity.
fancy_lighters
Do we require special items to be lit?
first_puff
Has anyone taken any reagents from the cigarette? The first tick gives a bigger dose.
list_reagents
A list of the types and amounts of reagents in the cigarette.
lit
Is the cigarette lit?
smoketime
How long does the cigarette last before going out? Decrements by 1 every cycle.
\ No newline at end of file
diff --git a/obj/item/clothing/mask/facehugger.html b/obj/item/clothing/mask/facehugger.html
new file mode 100644
index 00000000000..fb7446aab55
--- /dev/null
+++ b/obj/item/clothing/mask/facehugger.html
@@ -0,0 +1 @@
+/obj/item/clothing/mask/facehugger - Space Station 13Space Station 13 - Modules - Types — Var Details
Time it takes for a facehugger to become active again after going idle.
Var Details
min_active_time
Time it takes for a facehugger to become active again after going idle.
\ No newline at end of file
diff --git a/obj/item/clothing/mask/facehugger/toy.html b/obj/item/clothing/mask/facehugger/toy.html
new file mode 100644
index 00000000000..45a1f243873
--- /dev/null
+++ b/obj/item/clothing/mask/facehugger/toy.html
@@ -0,0 +1,2 @@
+/obj/item/clothing/mask/facehugger/toy - Space Station 13Space Station 13 - Modules - Types
toy
Mining Equipment Vendor Items
+
Facehugger toy
\ No newline at end of file
diff --git a/obj/item/clothing/mask/holo_cigar.html b/obj/item/clothing/mask/holo_cigar.html
new file mode 100644
index 00000000000..a7f6d3fdb25
--- /dev/null
+++ b/obj/item/clothing/mask/holo_cigar.html
@@ -0,0 +1 @@
+/obj/item/clothing/mask/holo_cigar - Space Station 13Space Station 13 - Modules - Types — Var Details
Tracks if this is the first cycle smoking the cigar.
Var Details
enabled
Is the holo-cigar lit?
has_smoked
Tracks if this is the first cycle smoking the cigar.
\ No newline at end of file
diff --git a/obj/item/clothing/mask/madness_mask.html b/obj/item/clothing/mask/madness_mask.html
new file mode 100644
index 00000000000..c972f848056
--- /dev/null
+++ b/obj/item/clothing/mask/madness_mask.html
@@ -0,0 +1 @@
+/obj/item/clothing/mask/madness_mask - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/clothing/mask/muzzle.html b/obj/item/clothing/mask/muzzle.html
new file mode 100644
index 00000000000..807c7a948c6
--- /dev/null
+++ b/obj/item/clothing/mask/muzzle.html
@@ -0,0 +1 @@
+/obj/item/clothing/mask/muzzle - Space Station 13Space Station 13 - Modules - Types — Var Details
How long you need to gnaw to get rid of the gag, 0 to make it impossible to remove
Var Details
resist_time
How long you need to gnaw to get rid of the gag, 0 to make it impossible to remove
\ No newline at end of file
diff --git a/obj/item/clothing/neck/eldritch_amulet.html b/obj/item/clothing/neck/eldritch_amulet.html
new file mode 100644
index 00000000000..e081819ca14
--- /dev/null
+++ b/obj/item/clothing/neck/eldritch_amulet.html
@@ -0,0 +1 @@
+/obj/item/clothing/neck/eldritch_amulet - Space Station 13Space Station 13 - Modules - Types — Var Details
A secondary clothing trait only applied to heretics.
Var Details
heretic_only_trait
A secondary clothing trait only applied to heretics.
\ No newline at end of file
diff --git a/obj/item/clothing/neck/heretic_focus/crimson_medallion.html b/obj/item/clothing/neck/heretic_focus/crimson_medallion.html
new file mode 100644
index 00000000000..d9a9568df85
--- /dev/null
+++ b/obj/item/clothing/neck/heretic_focus/crimson_medallion.html
@@ -0,0 +1 @@
+/obj/item/clothing/neck/heretic_focus/crimson_medallion - Space Station 13Space Station 13 - Modules - Types — Var Details
The aura healing component. Used to delete it when taken off.
Var Details
active
If active or not, used to add and remove its cult and heretic buffs.
component
The aura healing component. Used to delete it when taken off.
\ No newline at end of file
diff --git a/obj/item/clothing/neck/link_scryer.html b/obj/item/clothing/neck/link_scryer.html
new file mode 100644
index 00000000000..41a75c4b1bc
--- /dev/null
+++ b/obj/item/clothing/neck/link_scryer.html
@@ -0,0 +1 @@
+/obj/item/clothing/neck/link_scryer - Space Station 13Space Station 13 - Modules - Types — Var Details
An additional name tag for the scryer, seen as "MODlink scryer - [label]"
mod_link
The MODlink datum we operate.
starting_frequency
Initial frequency of the MODlink.
\ No newline at end of file
diff --git a/obj/item/clothing/neck/necklace/locket.html b/obj/item/clothing/neck/necklace/locket.html
new file mode 100644
index 00000000000..2c893596cad
--- /dev/null
+++ b/obj/item/clothing/neck/necklace/locket.html
@@ -0,0 +1 @@
+/obj/item/clothing/neck/necklace/locket - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/clothing/neck/towel.html b/obj/item/clothing/neck/towel.html
new file mode 100644
index 00000000000..9f8d7ff1510
--- /dev/null
+++ b/obj/item/clothing/neck/towel.html
@@ -0,0 +1 @@
+/obj/item/clothing/neck/towel - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Display warnings for towel grime and wetness levels that would transfer.
Var Details
grime_level
Tracks how much yuck the towel has on it. Grime levels higher than 1 can be spread.
grime_sources
A list of stuff we can towel off.
wet_level
Tracks how wet the towel is. Wet towels dampen their targets instead of drying them.
Proc Details
examine
Display warnings for towel grime and wetness levels that would transfer.
\ No newline at end of file
diff --git a/obj/item/clothing/shoes/magboots.html b/obj/item/clothing/shoes/magboots.html
new file mode 100644
index 00000000000..211dd46ee11
--- /dev/null
+++ b/obj/item/clothing/shoes/magboots.html
@@ -0,0 +1 @@
+/obj/item/clothing/shoes/magboots - Space Station 13Space Station 13 - Modules - Types — Var Details
If a pair of magboots has different icons for being on or off
Var Details
multiple_icons
If a pair of magboots has different icons for being on or off
\ No newline at end of file
diff --git a/obj/item/clothing/shoes/space_ninja.html b/obj/item/clothing/shoes/space_ninja.html
new file mode 100644
index 00000000000..e7ab96976a5
--- /dev/null
+++ b/obj/item/clothing/shoes/space_ninja.html
@@ -0,0 +1 @@
+/obj/item/clothing/shoes/space_ninja - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/clothing/suit.html b/obj/item/clothing/suit.html
new file mode 100644
index 00000000000..d50e68c0099
--- /dev/null
+++ b/obj/item/clothing/suit.html
@@ -0,0 +1,7 @@
+/obj/item/clothing/suit - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Wrapper proc to apply shielding through AddComponent().
+Called in /obj/item/clothing/Initialize().
+Override with an AddComponent(/datum/component/shielded, args) call containing the desired shield statistics.
+See /datum/component/shielded documentation for a description of the arguments
Var Details
breakouttime
How long to break out of the suits
insert_max
How many inserts can you put into the suit
insert_slowdown
What's the total slowdown from inserts?
inserts
Currently applied inserts
max_suit_w
Maximum weight class of an item in the suit storage slot.
mobility_meshed
Is there a mobility mesh inserted?
Proc Details
hierophant_shield_damaged
A proc for callback when the shield breaks, since I am stupid and want custom effects.
setup_hierophant_shielding
Hierophant card shielding. Saves me time.
setup_shielding
Wrapper proc to apply shielding through AddComponent().
+Called in /obj/item/clothing/Initialize().
+Override with an AddComponent(/datum/component/shielded, args) call containing the desired shield statistics.
+See /datum/component/shielded documentation for a description of the arguments
\ No newline at end of file
diff --git a/obj/item/clothing/suit/armor/reactive.html b/obj/item/clothing/suit/armor/reactive.html
new file mode 100644
index 00000000000..2259539da6b
--- /dev/null
+++ b/obj/item/clothing/suit/armor/reactive.html
@@ -0,0 +1 @@
+/obj/item/clothing/suit/armor/reactive - Space Station 13Space Station 13 - Modules - Types — Var Details
Is the armor in the one second grace period, to prevent rubbershot / buckshot from draining significant cell useage.
Var Details
active
Is the armor turned on?
cell
The cell reactive armor uses.
disabled
Is the armor disabled, and prevented from reactivating temporarly?
energy_cost
Cost multiplier for armor. "Stronger" armors use 200 charge, other armors use 120.
in_grace_period
Is the armor in the one second grace period, to prevent rubbershot / buckshot from draining significant cell useage.
\ No newline at end of file
diff --git a/obj/item/clothing/suit/armor/reactive/repulse.html b/obj/item/clothing/suit/armor/reactive/repulse.html
new file mode 100644
index 00000000000..38b919ba4b8
--- /dev/null
+++ b/obj/item/clothing/suit/armor/reactive/repulse.html
@@ -0,0 +1 @@
+/obj/item/clothing/suit/armor/reactive/repulse - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/clothing/suit/hooded.html b/obj/item/clothing/suit/hooded.html
new file mode 100644
index 00000000000..5b0cb120c4e
--- /dev/null
+++ b/obj/item/clothing/suit/hooded.html
@@ -0,0 +1 @@
+/obj/item/clothing/suit/hooded - Space Station 13Space Station 13 - Modules - Types — Var Details
If this variable is true, the hood can not be removed if the hood is nodrop
Var Details
respects_nodrop
If this variable is true, the hood can not be removed if the hood is nodrop
\ No newline at end of file
diff --git a/obj/item/clothing/suit/hooded/cultrobes/cult_shield.html b/obj/item/clothing/suit/hooded/cultrobes/cult_shield.html
new file mode 100644
index 00000000000..9a70cfe75b5
--- /dev/null
+++ b/obj/item/clothing/suit/hooded/cultrobes/cult_shield.html
@@ -0,0 +1 @@
+/obj/item/clothing/suit/hooded/cultrobes/cult_shield - Space Station 13Space Station 13 - Modules - Types — Proc Details
A proc for callback when the shield breaks, since cult robes are stupid and have different effects
Proc Details
shield_damaged
A proc for callback when the shield breaks, since cult robes are stupid and have different effects
\ No newline at end of file
diff --git a/obj/item/clothing/suit/space_ninja.html b/obj/item/clothing/suit/space_ninja.html
new file mode 100644
index 00000000000..76dd0958b4f
--- /dev/null
+++ b/obj/item/clothing/suit/space_ninja.html
@@ -0,0 +1 @@
+/obj/item/clothing/suit/space_ninja - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/clothing/suit/storage/void_cloak.html b/obj/item/clothing/suit/storage/void_cloak.html
new file mode 100644
index 00000000000..0787afa2cf7
--- /dev/null
+++ b/obj/item/clothing/suit/storage/void_cloak.html
@@ -0,0 +1 @@
+/obj/item/clothing/suit/storage/void_cloak - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Makes our cloak "invisible". Not the wearer, the cloak itself.
make_visible
Makes our cloak "visible" again.
\ No newline at end of file
diff --git a/obj/item/clothing/under.html b/obj/item/clothing/under.html
new file mode 100644
index 00000000000..e7d25f9b0a4
--- /dev/null
+++ b/obj/item/clothing/under.html
@@ -0,0 +1 @@
+/obj/item/clothing/under - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Tries to turn the sensors off. Returns TRUE if it succeeds
Var Details
has_sensor
For the crew computer 2 = unable to change mode
Proc Details
dye_item
Because of jumpsuit palettes, we have to do some extra icon shenanigans.
turn_sensors_off
Tries to turn the sensors off. Returns TRUE if it succeeds
\ No newline at end of file
diff --git a/obj/item/codex_cicatrix.html b/obj/item/codex_cicatrix.html
new file mode 100644
index 00000000000..63ca0391a48
--- /dev/null
+++ b/obj/item/codex_cicatrix.html
@@ -0,0 +1 @@
+/obj/item/codex_cicatrix - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Plays a little animation that shows the book opening and closing.
Var Details
book_open
Helps determine the icon state of this item when it's used on self.
Proc Details
after_clear_rune
Callback for effect_remover component after a rune is deleted
close_animation
Plays a closing animation and resets the icon state.
open_animation
Plays a little animation that shows the book opening and closing.
\ No newline at end of file
diff --git a/obj/item/coin/eldritch.html b/obj/item/coin/eldritch.html
new file mode 100644
index 00000000000..391f696a435
--- /dev/null
+++ b/obj/item/coin/eldritch.html
@@ -0,0 +1 @@
+/obj/item/coin/eldritch - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/contractor_uplink.html b/obj/item/contractor_uplink.html
new file mode 100644
index 00000000000..91f0642f8d5
--- /dev/null
+++ b/obj/item/contractor_uplink.html
@@ -0,0 +1,6 @@
+/obj/item/contractor_uplink - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Contractor Uplink
A contractor's point of contact with their Contractor Hub.
\ No newline at end of file
diff --git a/obj/item/credit_redemption_slip.html b/obj/item/credit_redemption_slip.html
new file mode 100644
index 00000000000..ec1ad4815d9
--- /dev/null
+++ b/obj/item/credit_redemption_slip.html
@@ -0,0 +1 @@
+/obj/item/credit_redemption_slip - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/crusher_trophy/broodmother_tongue.html b/obj/item/crusher_trophy/broodmother_tongue.html
new file mode 100644
index 00000000000..52dde8a01c6
--- /dev/null
+++ b/obj/item/crusher_trophy/broodmother_tongue.html
@@ -0,0 +1 @@
+/obj/item/crusher_trophy/broodmother_tongue - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/crusher_trophy/legionnaire_spine.html b/obj/item/crusher_trophy/legionnaire_spine.html
new file mode 100644
index 00000000000..9380f0bb6be
--- /dev/null
+++ b/obj/item/crusher_trophy/legionnaire_spine.html
@@ -0,0 +1 @@
+/obj/item/crusher_trophy/legionnaire_spine - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/crusher_trophy/retool_kit.html b/obj/item/crusher_trophy/retool_kit.html
new file mode 100644
index 00000000000..65764d29fe4
--- /dev/null
+++ b/obj/item/crusher_trophy/retool_kit.html
@@ -0,0 +1 @@
+/obj/item/crusher_trophy/retool_kit - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/crutches.html b/obj/item/crutches.html
new file mode 100644
index 00000000000..bc90126e4ba
--- /dev/null
+++ b/obj/item/crutches.html
@@ -0,0 +1 @@
+/obj/item/crutches - Space Station 13Space Station 13 - Modules - Types — Var Details
Tiny item that can be hidden on crutches with a screwdriver
is_open
Is the secret compartment open?
\ No newline at end of file
diff --git a/obj/item/csi_marker.html b/obj/item/csi_marker.html
new file mode 100644
index 00000000000..1f6569b7695
--- /dev/null
+++ b/obj/item/csi_marker.html
@@ -0,0 +1 @@
+/obj/item/csi_marker - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/deck.html b/obj/item/deck.html
new file mode 100644
index 00000000000..bba9e6bb1b9
--- /dev/null
+++ b/obj/item/deck.html
@@ -0,0 +1,17 @@
+/obj/item/deck - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Styling for the cards, if they have multiple sets of sprites
card_throw_range
Inherited card throw range
card_throw_speed
Inherited card throw speed
card_throwforce
Inherited card throw force
deck_size
How many copies of the base deck (built in build_deck()) should be added?
deck_style
Styling for the deck, it they has multiple sets of sprites
deck_total
The number of cards in a full deck. Set on init after all cards are created/added.
last_player_action
The action that the last player made. Should be in the form of "played a card", "drew a card."
last_player_name
The name of the last player to interact with this deck.
main_deck_id
ID used to track the decks and cardhands that can be combined into one another.
shuffle_cooldown
How often the deck can be shuffled.
simple_deck
For decks without a full set of sprites
Proc Details
build_deck
Stub, override this to define how a base deck should be filled and built.
build_decks
Fill the deck with all the specified cards.
+Uses deck_size to determine how many times to call build_deck()
draw_card
Draw a card from this deck.
+Arguments:
+
+
user - The mob drawing the card.
+
public - If true, the drawn card will be displayed to people around the table.
+
draw_from_top - If true, the card will be drawn from the top of the deck.
+
return_cards
Return a number of cards to a deck.
+
Arguments:
+
+
user - The mob returning the cards.
+
hand - The hand from which the cards are being returned.
+
place_on_top - If true, cards will be placed on the top of the deck. Otherwise, they'll be placed on the bottom.
+
chosen_cards - If not empty, will essentially override any selection dialogs and force these cards to be returned.
+
return_hand_click
Return a single card to the deck.
\ No newline at end of file
diff --git a/obj/item/deck/unum.html b/obj/item/deck/unum.html
new file mode 100644
index 00000000000..44d60073aa2
--- /dev/null
+++ b/obj/item/deck/unum.html
@@ -0,0 +1 @@
+/obj/item/deck/unum - Space Station 13Space Station 13 - Modules - Types — Var Details
Whether or not this deck should show the backs or fronts of its cards.
Var Details
show_front
Whether or not this deck should show the backs or fronts of its cards.
\ No newline at end of file
diff --git a/obj/item/defibrillator.html b/obj/item/defibrillator.html
new file mode 100644
index 00000000000..e6c89383002
--- /dev/null
+++ b/obj/item/defibrillator.html
@@ -0,0 +1 @@
+/obj/item/defibrillator - Space Station 13Space Station 13 - Modules - Types — Var Details
If false, using harm intent will let you zap people. Note that any updates to this after init will only impact icons.
Var Details
cell
Ref to internal power cell.
combat
If true, this can be used through hardsuits, and can cause heart attacks in harm intent.
emag_proof
If this can be emagged.
hardened
If this is vulnerable to EMPs.
paddle_type
Type of paddles that should be attached to this defib.
paddles
Ref to attached paddles
paddles_on_defib
If the paddles are currently attached to the unit.
powered
if there's a cell in the defib with enough power for a revive; blocks paddles from reviving otherwise
safety
If false, using harm intent will let you zap people. Note that any updates to this after init will only impact icons.
\ No newline at end of file
diff --git a/obj/item/defibrillator/compact/advanced.html b/obj/item/defibrillator/compact/advanced.html
new file mode 100644
index 00000000000..24b0ca63de7
--- /dev/null
+++ b/obj/item/defibrillator/compact/advanced.html
@@ -0,0 +1 @@
+/obj/item/defibrillator/compact/advanced - Space Station 13Space Station 13 - Modules - Types — Var Details
To prevent spam from the emagging message on the advanced defibrillator.
Var Details
next_emp_message
To prevent spam from the emagging message on the advanced defibrillator.
\ No newline at end of file
diff --git a/obj/item/desk_bell.html b/obj/item/desk_bell.html
new file mode 100644
index 00000000000..84f92120fd1
--- /dev/null
+++ b/obj/item/desk_bell.html
@@ -0,0 +1 @@
+/obj/item/desk_bell - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The remote signaller that we're gonna activate to this bell
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
ring_bell
Ring the bell
\ No newline at end of file
diff --git a/obj/item/dest_tagger.html b/obj/item/dest_tagger.html
new file mode 100644
index 00000000000..d13bb54f32b
--- /dev/null
+++ b/obj/item/dest_tagger.html
@@ -0,0 +1 @@
+/obj/item/dest_tagger - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/detonator.html b/obj/item/detonator.html
new file mode 100644
index 00000000000..27d5ba6161f
--- /dev/null
+++ b/obj/item/detonator.html
@@ -0,0 +1 @@
+/obj/item/detonator - Space Station 13Space Station 13 - Modules - Types — Var Details
list of all bombs connected to a detonator for a moment
Var Details
bombs
list of all bombs connected to a detonator for a moment
\ No newline at end of file
diff --git a/obj/item/disk/nuclear.html b/obj/item/disk/nuclear.html
new file mode 100644
index 00000000000..7ddcfbc1220
--- /dev/null
+++ b/obj/item/disk/nuclear.html
@@ -0,0 +1 @@
+/obj/item/disk/nuclear - Space Station 13Space Station 13 - Modules - Types — Var Details
Is the disk restricted to the station? If true, also respawns the disk when deleted
training
Is this a training disk?
\ No newline at end of file
diff --git a/obj/item/disk/rnd_backup_disk.html b/obj/item/disk/rnd_backup_disk.html
new file mode 100644
index 00000000000..bde52a83891
--- /dev/null
+++ b/obj/item/disk/rnd_backup_disk.html
@@ -0,0 +1 @@
+/obj/item/disk/rnd_backup_disk - Space Station 13Space Station 13 - Modules - Types — Var Details
Assoc list of tech levels. Key is tech ID, value is tech level
Var Details
last_backup_time
Text of last backup time
stored_tech_assoc
Assoc list of tech levels. Key is tech ID, value is tech level
\ No newline at end of file
diff --git a/obj/item/disk/tech_disk.html b/obj/item/disk/tech_disk.html
new file mode 100644
index 00000000000..9c3745ce87b
--- /dev/null
+++ b/obj/item/disk/tech_disk.html
@@ -0,0 +1 @@
+/obj/item/disk/tech_disk - Space Station 13Space Station 13 - Modules - Types — Var Details
The rarity of the copied technology. Affects sell price. Please see /datum/tech.rare
Var Details
tech_level
The level of the copied technology. Please see /datum/tech.level
tech_rarity
The rarity of the copied technology. Affects sell price. Please see /datum/tech.rare
\ No newline at end of file
diff --git a/obj/item/door_remote/janikeyring.html b/obj/item/door_remote/janikeyring.html
new file mode 100644
index 00000000000..05eace60b7c
--- /dev/null
+++ b/obj/item/door_remote/janikeyring.html
@@ -0,0 +1 @@
+/obj/item/door_remote/janikeyring - Space Station 13Space Station 13 - Modules - Types — Var Details
Stores the last airlock opened, opens faster on repeated use
Var Details
busy
Are you already using the keyring?
cooldown
This prevents spamming the key-shake.
hack_speed
How fast does the keyring open an airlock. It is not set here so that it can be set via the user's role.
last_airlock_uid
Stores the last airlock opened, opens faster on repeated use
\ No newline at end of file
diff --git a/obj/item/door_remote/omni/access_tuner.html b/obj/item/door_remote/omni/access_tuner.html
new file mode 100644
index 00000000000..902d6431b15
--- /dev/null
+++ b/obj/item/door_remote/omni/access_tuner.html
@@ -0,0 +1 @@
+/obj/item/door_remote/omni/access_tuner - Space Station 13Space Station 13 - Modules - Types — Var Details
How far can we use this. Leave null for infinite range
Var Details
range
How far can we use this. Leave null for infinite range
\ No newline at end of file
diff --git a/obj/item/eftpos.html b/obj/item/eftpos.html
new file mode 100644
index 00000000000..15915cf861b
--- /dev/null
+++ b/obj/item/eftpos.html
@@ -0,0 +1 @@
+/obj/item/eftpos - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
creates and builds paper with info about the EFTPOS
Var Details
access_code
The pin number needed to changed settings on the EFTPOS
account_database
linked money account database to this EFTPOS
can_offer
Is this a portable unit that you can offer with *payme?
linked_account
Current money account the EFTPOS is depositing to
linked_vendors
The vendors that are linked to this EFTPOS.
machine_name
Unique identifying name of this EFTPOS for transaction tracking in money accounts
transaction_amount
Amount in space credits to charge card swiper
transaction_locked
Whether or not the EFTPOS is locked into a transaction
transaction_paid
Did the transaction go through? Will reset back to FALSE after 5 seconds, used as a cooldown and indicator to consumer
Proc Details
print_reference
creates and builds paper with info about the EFTPOS
\ No newline at end of file
diff --git a/obj/item/eldritch_potion.html b/obj/item/eldritch_potion.html
new file mode 100644
index 00000000000..8d5c8d868a3
--- /dev/null
+++ b/obj/item/eldritch_potion.html
@@ -0,0 +1,5 @@
+/obj/item/eldritch_potion - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The effect of the potion, if it has any special one.
+In general try not to override this
+and utilize the status_effect var to make custom effects.
Var Details
crucible_tip
When a heretic examines a mawed crucible, shows a list of possible potions by name + includes this tip to explain what it does.
status_effect
Typepath to the status effect this applies
Proc Details
potion_effect
The effect of the potion, if it has any special one.
+In general try not to override this
+and utilize the status_effect var to make custom effects.
\ No newline at end of file
diff --git a/obj/item/electropack.html b/obj/item/electropack.html
new file mode 100644
index 00000000000..09ac1d04167
--- /dev/null
+++ b/obj/item/electropack.html
@@ -0,0 +1 @@
+/obj/item/electropack - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/envelope.html b/obj/item/envelope.html
new file mode 100644
index 00000000000..cffda0d38cf
--- /dev/null
+++ b/obj/item/envelope.html
@@ -0,0 +1 @@
+/obj/item/envelope - Space Station 13Space Station 13 - Modules - Types — Var Details
A list that contains the names of the jobs that can receive this type of letter. Only the base job has to be put in it, alternative titles have the same definition on the mind. Name of the job can be found in mind.assigned_role
A list that contains the names of the jobs that can receive this type of letter. Only the base job has to be put in it, alternative titles have the same definition on the mind. Name of the job can be found in mind.assigned_role
recipient
The real name required to open the letter
recipient_job
The job of the recipient
\ No newline at end of file
diff --git a/obj/item/epidermal_applicator.html b/obj/item/epidermal_applicator.html
new file mode 100644
index 00000000000..5a3946ca944
--- /dev/null
+++ b/obj/item/epidermal_applicator.html
@@ -0,0 +1 @@
+/obj/item/epidermal_applicator - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/extinguisher.html b/obj/item/extinguisher.html
new file mode 100644
index 00000000000..18f1fc4d2c6
--- /dev/null
+++ b/obj/item/extinguisher.html
@@ -0,0 +1 @@
+/obj/item/extinguisher - Space Station 13Space Station 13 - Modules - Types — Var Details
If TRUE, using in hand will toggle the extinguisher's safety. This must be set to FALSE for extinguishers with different firing modes (i.e. backpacks).
If TRUE, using in hand will toggle the extinguisher's safety. This must be set to FALSE for extinguishers with different firing modes (i.e. backpacks).
precision
When FALSE, turfs picked from a spray are random. When TRUE, it always has at least one water effect per row.
prefilled
If FALSE, extinguishers wont appear prefilled by default
reagent_capacity
Used to determine the maximum capacity of extinguishers
reagent_id
Used to determine the chemical that spawns in the extinguisher
safety_active
If TRUE, the extinguisher will not fire.
\ No newline at end of file
diff --git a/obj/item/extinguisher/mini/nozzle.html b/obj/item/extinguisher/mini/nozzle.html
new file mode 100644
index 00000000000..ea2a40fefcc
--- /dev/null
+++ b/obj/item/extinguisher/mini/nozzle.html
@@ -0,0 +1 @@
+/obj/item/extinguisher/mini/nozzle - Space Station 13Space Station 13 - Modules - Types — Var Details
A reference to the tank that this nozzle is linked to
Var Details
metal_regen_time
Time to refill 1 charge of metal foam.
metal_synthesis_charge
How many shots of metal foam do we have?
nanofrost_cooldown_time
Refire delay for nanofrost chunks.
nozzle_mode
What mode are we currently in?
tank
A reference to the tank that this nozzle is linked to
\ No newline at end of file
diff --git a/obj/item/fine_scanner.html b/obj/item/fine_scanner.html
new file mode 100644
index 00000000000..2b1693a06ef
--- /dev/null
+++ b/obj/item/fine_scanner.html
@@ -0,0 +1 @@
+/obj/item/fine_scanner - Space Station 13Space Station 13 - Modules - Types — Var Details
linked money account database to this scanner. Usually the station database
fail_sound
The sound the machine makes on a fail
fine_amount
The set fine amount
fine_sound
The sound the machine makes on a success
linked_account
The linked account. This will usually be security unless admins tinker
radio
Built in radio used to message about crime
\ No newline at end of file
diff --git a/obj/item/flash.html b/obj/item/flash.html
new file mode 100644
index 00000000000..c160fec665b
--- /dev/null
+++ b/obj/item/flash.html
@@ -0,0 +1 @@
+/obj/item/flash - Space Station 13Space Station 13 - Modules - Types — Var Details
Whether the flash can be modified with a cell or not
broken
Is the flash burnt out?
can_overcharge
Set this to FALSE if you don't want your flash to be overcharge capable
flash_timer
A reference to the timer used to recharge. If we use it while it's on cooldown, we reset the cooling
max_uses
What is the max amount we can use this flash before it burns out
overcharged
If overcharged the flash will set people on fire then immediately burn out (does so even if it doesn't blind them).
time_between_flashes
How long do we have between flashes
times_used
How many times have we used the flash recently
\ No newline at end of file
diff --git a/obj/item/flashlight/flare.html b/obj/item/flashlight/flare.html
new file mode 100644
index 00000000000..fa0ba9f19ec
--- /dev/null
+++ b/obj/item/flashlight/flare.html
@@ -0,0 +1,3 @@
+/obj/item/flashlight/flare - Space Station 13Space Station 13 - Modules - Types — Var Details
This var will get checked in Initialize() and if it's true, it'll get set to a randomized fuel value.
+If it's 0, it'll simply remain a used up flare.
Var Details
fuel
This var will get checked in Initialize() and if it's true, it'll get set to a randomized fuel value.
+If it's 0, it'll simply remain a used up flare.
\ No newline at end of file
diff --git a/obj/item/food.html b/obj/item/food.html
new file mode 100644
index 00000000000..55ce8121b21
--- /dev/null
+++ b/obj/item/food.html
@@ -0,0 +1,3 @@
+/obj/item/food - Space Station 13Space Station 13 - Modules - Types — Var Details
Sets the default container amount for all food items.
Var Details
ant_location
location checked every 5 minutes. If its the same place, the food has a chance to spawn ants
ant_suppressors
Things that suppress food from being infested by ants when on the same turf
antable
Will ants come near it?
goal_difficulty
How difficult is this food for the kitchen to make?
+Affects the quantity of food that is requested by CC.
ingredient_name
Name of the food to show up in kitchen machines (microwaves, ovens, etc)
last_ant_time
Time we last checked for ants
list_reagents
The list of reagents to create on Initialize()
volume
Sets the default container amount for all food items.
\ No newline at end of file
diff --git a/obj/item/food/chocolatebar.html b/obj/item/food/chocolatebar.html
new file mode 100644
index 00000000000..a39a4a1f4e8
--- /dev/null
+++ b/obj/item/food/chocolatebar.html
@@ -0,0 +1 @@
+/obj/item/food/chocolatebar - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/item/food/customizable.html b/obj/item/food/customizable.html
new file mode 100644
index 00000000000..a94a98a5317
--- /dev/null
+++ b/obj/item/food/customizable.html
@@ -0,0 +1,9 @@
+/obj/item/food/customizable - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Adds a list of ingredients to the existing snack. Updates the overlays as well
Var Details
top
Do we have a top?
top_image
The image of the top
Proc Details
add_ingredient
Tries to add one ingredient and it's ingredients, if any and applicable, to this snack
+
Arguments:
+
+
snack - The ingredient that will be added
+
add_ingredients
Adds a list of ingredients to the existing snack. Updates the overlays as well
+
Arguments:
+
+
new_ingredients - The new ingredients to be added
+
\ No newline at end of file
diff --git a/obj/item/food/egg/watcher.html b/obj/item/food/egg/watcher.html
new file mode 100644
index 00000000000..19dab335cfc
--- /dev/null
+++ b/obj/item/food/egg/watcher.html
@@ -0,0 +1 @@
+/obj/item/food/egg/watcher - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
watcher
Egg which hatches into a helpful pet. Or you can eat it if you want.
Called when we are moved, whether inside an inventory or by ourself somehow
Var Details
pedometer
Datum used to measure our steps
steps_to_hatch
How far should we travel to hatch?
steps_travelled
How far have we moved?
Proc Details
jiggle
Animate the egg
on_stepped
Called when we are moved, whether inside an inventory or by ourself somehow
\ No newline at end of file
diff --git a/obj/item/food/grown.html b/obj/item/food/grown.html
new file mode 100644
index 00000000000..c1733791a40
--- /dev/null
+++ b/obj/item/food/grown.html
@@ -0,0 +1 @@
+/obj/item/food/grown - Space Station 13Space Station 13 - Modules - Types — Var Details
The unsorted seed of this plant, if any. Used by the seed extractor.
Var Details
seed
The seed of this plant. Starts as a type path, gets converted to an item on New()
unsorted_seed
The unsorted seed of this plant, if any. Used by the seed extractor.
\ No newline at end of file
diff --git a/obj/item/food/rations.html b/obj/item/food/rations.html
new file mode 100644
index 00000000000..a093a0c82ad
--- /dev/null
+++ b/obj/item/food/rations.html
@@ -0,0 +1 @@
+/obj/item/food/rations - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/food/warmdonkpocket.html b/obj/item/food/warmdonkpocket.html
new file mode 100644
index 00000000000..60192d03632
--- /dev/null
+++ b/obj/item/food/warmdonkpocket.html
@@ -0,0 +1 @@
+/obj/item/food/warmdonkpocket - Space Station 13Space Station 13 - Modules - Types — Var Details
Is the donk pocket warm or has it cooled - this affects what chemicals it yields when consumed
Var Details
cool_timer
This stores the timer for how long the donk pocket takes to cool, seven minutes, that is paused inside of a donk pocket box
heated_at
This is used to check the world time when the donk pocket was heated or last removed from a donk pocket box, for restarting the timer
subtracted_time
This tracks how much time the donk pocket has already been cooling for when its timer is paused
warm
Is the donk pocket warm or has it cooled - this affects what chemicals it yields when consumed
\ No newline at end of file
diff --git a/obj/item/forensics/sample_kit.html b/obj/item/forensics/sample_kit.html
new file mode 100644
index 00000000000..26aa97b5c07
--- /dev/null
+++ b/obj/item/forensics/sample_kit.html
@@ -0,0 +1 @@
+/obj/item/forensics/sample_kit - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/forensics/swab.html b/obj/item/forensics/swab.html
new file mode 100644
index 00000000000..942eb6438bf
--- /dev/null
+++ b/obj/item/forensics/swab.html
@@ -0,0 +1 @@
+/obj/item/forensics/swab - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/gps.html b/obj/item/gps.html
new file mode 100644
index 00000000000..d56a9cab7fe
--- /dev/null
+++ b/obj/item/gps.html
@@ -0,0 +1 @@
+/obj/item/gps - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
GPS
A small item that reports its current location. Has a tag to help distinguish between them.
Whether to only list signals that are on the same Z-level.
tracking
Whether the GPS is on.
Proc Details
reboot
Turns off the GPS's EMPed state. Called automatically after an EMP.
\ No newline at end of file
diff --git a/obj/item/grenade.html b/obj/item/grenade.html
new file mode 100644
index 00000000000..da90f9e8ec8
--- /dev/null
+++ b/obj/item/grenade.html
@@ -0,0 +1 @@
+/obj/item/grenade - Space Station 13Space Station 13 - Modules - Types — Var Details
Allows the default activate_self() behavour to be fully overriden.
det_time
Time between the pin being pulled and detonation.
display_timer
Does the grenade show the fuze's time setting on examine?
modifiable_timer
Can the grenade's fuze time be changed?
\ No newline at end of file
diff --git a/obj/item/grenade/anomalous_canister.html b/obj/item/grenade/anomalous_canister.html
new file mode 100644
index 00000000000..0e7fdca07a8
--- /dev/null
+++ b/obj/item/grenade/anomalous_canister.html
@@ -0,0 +1 @@
+/obj/item/grenade/anomalous_canister - Space Station 13Space Station 13 - Modules - Types — Var Details
Chance to be a varient that the glass will shatter when thrown earlier than expected. The smaller canisters are more metal spheres, and will not.
Var Details
anomaly_lifetime
The lifetime of the anomaly.
anomaly_type
The type of anomaly the canister will spawn.
has_primed
Have we primed? It contains a cloud of particulate matter. Breaking it is going to let the anomaly out.
number_of_anomalies
How many anomalies the grenade will spawn
shatter_chance
Chance to be a varient that the glass will shatter when thrown earlier than expected. The smaller canisters are more metal spheres, and will not.
\ No newline at end of file
diff --git a/obj/item/grenade/barrier/dropwall.html b/obj/item/grenade/barrier/dropwall.html
new file mode 100644
index 00000000000..0261929fbdd
--- /dev/null
+++ b/obj/item/grenade/barrier/dropwall.html
@@ -0,0 +1 @@
+/obj/item/grenade/barrier/dropwall - Space Station 13Space Station 13 - Modules - Types — Var Details
If this is true we do not arm again, due to the sleep
Var Details
armer
Mob who armed it. Needed for the get_dir proc
deployed
If this is true we do not arm again, due to the sleep
\ No newline at end of file
diff --git a/obj/item/grenade/chem_grenade/cleaner.html b/obj/item/grenade/chem_grenade/cleaner.html
new file mode 100644
index 00000000000..992bb464fe4
--- /dev/null
+++ b/obj/item/grenade/chem_grenade/cleaner.html
@@ -0,0 +1 @@
+/obj/item/grenade/chem_grenade/cleaner - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/grenade/cryogrenade_mod.html b/obj/item/grenade/cryogrenade_mod.html
new file mode 100644
index 00000000000..4df5d309e03
--- /dev/null
+++ b/obj/item/grenade/cryogrenade_mod.html
@@ -0,0 +1 @@
+/obj/item/grenade/cryogrenade_mod - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/grenade/firecracker.html b/obj/item/grenade/firecracker.html
new file mode 100644
index 00000000000..01041f68a8e
--- /dev/null
+++ b/obj/item/grenade/firecracker.html
@@ -0,0 +1 @@
+/obj/item/grenade/firecracker - Space Station 13Space Station 13 - Modules - Types — Var Details
The effect that will be randomly played at intervals.
Var Details
max_pops
The maximum number of times it fires.
max_time_between_pops
The longest possible length between fires.
min_pops
The minimum number of times it will fire.
min_time_between_pops
How long, at least, we'll end up between pops.
play_fuse_sound
Whether or not to play a smoke sound before going off
sound_effect
The effect that will be randomly played at intervals.
\ No newline at end of file
diff --git a/obj/item/grenade/firecracker/decoy.html b/obj/item/grenade/firecracker/decoy.html
new file mode 100644
index 00000000000..2cdb4656a18
--- /dev/null
+++ b/obj/item/grenade/firecracker/decoy.html
@@ -0,0 +1 @@
+/obj/item/grenade/firecracker/decoy - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/grenade/flashbang.html b/obj/item/grenade/flashbang.html
new file mode 100644
index 00000000000..8ef1e9ecf1c
--- /dev/null
+++ b/obj/item/grenade/flashbang.html
@@ -0,0 +1 @@
+/obj/item/grenade/flashbang - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/grenade/frag.html b/obj/item/grenade/frag.html
new file mode 100644
index 00000000000..e5c810d074f
--- /dev/null
+++ b/obj/item/grenade/frag.html
@@ -0,0 +1 @@
+/obj/item/grenade/frag - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/grenade/jaunter_grenade.html b/obj/item/grenade/jaunter_grenade.html
new file mode 100644
index 00000000000..f41f8d4ed75
--- /dev/null
+++ b/obj/item/grenade/jaunter_grenade.html
@@ -0,0 +1 @@
+/obj/item/grenade/jaunter_grenade - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/grenade/mirage.html b/obj/item/grenade/mirage.html
new file mode 100644
index 00000000000..b38cf5bf0d6
--- /dev/null
+++ b/obj/item/grenade/mirage.html
@@ -0,0 +1 @@
+/obj/item/grenade/mirage - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/grenade/plastic.html b/obj/item/grenade/plastic.html
new file mode 100644
index 00000000000..755cf18d7be
--- /dev/null
+++ b/obj/item/grenade/plastic.html
@@ -0,0 +1 @@
+/obj/item/grenade/plastic - Space Station 13Space Station 13 - Modules - Types — Var Details
Target of the overlay, not neccicarly the thing the C4 is attached to!
Var Details
plastic_overlay
C4 overlay to put on target
plastic_overlay_target
Target of the overlay, not neccicarly the thing the C4 is attached to!
\ No newline at end of file
diff --git a/obj/item/grenade/plastic/c4.html b/obj/item/grenade/plastic/c4.html
new file mode 100644
index 00000000000..94129ff9529
--- /dev/null
+++ b/obj/item/grenade/plastic/c4.html
@@ -0,0 +1 @@
+/obj/item/grenade/plastic/c4 - Space Station 13Space Station 13 - Modules - Types — Var Details
If set to true, the secondary explosion will be centered two tiles behind the wall/object it's set on for a targeted breach and entry.
Var Details
aim_dir
Set when installing the charge, to know which direction to explode to when setting up a shaped c4
ex_breach
Will the explosion cause a breach. C4 placed on floors will always cause a breach, regardless of this value.
ex_devastate
Range values given to the explosion proc when primed
shaped
If set to true, the secondary explosion will be centered two tiles behind the wall/object it's set on for a targeted breach and entry.
\ No newline at end of file
diff --git a/obj/item/grenade/plastic/miningcharge.html b/obj/item/grenade/plastic/miningcharge.html
new file mode 100644
index 00000000000..df74629559a
--- /dev/null
+++ b/obj/item/grenade/plastic/miningcharge.html
@@ -0,0 +1 @@
+/obj/item/grenade/plastic/miningcharge - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
list of sizes for explosion. Third number is used for actual rock explosion size, second number is radius for Weaken() effects, first is used for hacked charges
Overriding to avoid the chargers from exploding because of received damage
Var Details
boom_sizes
list of sizes for explosion. Third number is used for actual rock explosion size, second number is radius for Weaken() effects, first is used for hacked charges
timer_off
When TRUE, charges won't detonate on it's own. Used for mining detonator
Proc Details
deconstruct
Overriding to avoid the chargers from exploding because of received damage
\ No newline at end of file
diff --git a/obj/item/gripper.html b/obj/item/gripper.html
new file mode 100644
index 00000000000..16354abfd3b
--- /dev/null
+++ b/obj/item/gripper.html
@@ -0,0 +1 @@
+/obj/item/gripper - Space Station 13Space Station 13 - Modules - Types — Var Details
Tracks gripper's state, prevents us from spamming actions
can_help_up
Set to TRUE to allow the gripper to shake people awake and help them up.
can_hold
Defines what items the gripper can carry.
can_hold_all_items
Set to TRUE to allow ANY item to be held, bypassing can_hold checks.
engineering_machine_interaction
Set to TRUE to removal of cells/lights from machine objects containing them.
gripped_item
The item currently being held.
\ No newline at end of file
diff --git a/obj/item/grown.html b/obj/item/grown.html
new file mode 100644
index 00000000000..caf6913485a
--- /dev/null
+++ b/obj/item/grown.html
@@ -0,0 +1 @@
+/obj/item/grown - Space Station 13Space Station 13 - Modules - Types — Var Details
The unsorted seed of this plant, if any. Used by the seed extractor.
Var Details
seed
The seed of this plant. Starts as a type path, gets converted to an item on New()
unsorted_seed
The unsorted seed of this plant, if any. Used by the seed extractor.
\ No newline at end of file
diff --git a/obj/item/guardiancreator.html b/obj/item/guardiancreator.html
new file mode 100644
index 00000000000..b9f94d0c15f
--- /dev/null
+++ b/obj/item/guardiancreator.html
@@ -0,0 +1 @@
+/obj/item/guardiancreator - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/guardiancreator/tech.html b/obj/item/guardiancreator/tech.html
new file mode 100644
index 00000000000..5d739ae5a4a
--- /dev/null
+++ b/obj/item/guardiancreator/tech.html
@@ -0,0 +1 @@
+/obj/item/guardiancreator/tech - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/gun.html b/obj/item/gun.html
new file mode 100644
index 00000000000..3e7b7ca41fb
--- /dev/null
+++ b/obj/item/gun.html
@@ -0,0 +1 @@
+/obj/item/gun - Space Station 13Space Station 13 - Modules - Types — Var Details
When dual wielding, accuracy will decrease based on weapon weight. WEAPON_HEAVY makes a weapon require two hands to fire, unless the user has TRAIT_BADASS.
Var Details
burst_size
The number of bullets in a trigger pull.
can_bayonet
Whether or not a knife can be attached to the gun.
can_flashlight
Whether or not a flashlight can be attached to the gun.
can_holster
Whether or not the gun fits in a shoulder holster.
can_suppress
Whether or not a suppressor can be attached to the gun.
can_unsuppress
Whether or not an attached suppressor can be removed from the gun.
chambered
Is there currently a bullet in the chamber?
clumsy_check
Checks to see if the user has the clumsy trait.
current_skin
The skin choice if we had a reskin.
dual_wield_spread
Additional spread when dual wielding.
execution_speed
How long it takes to perform an execution with the gun.
fire_delay
Rate of fire for burst firing and semi auto.
fire_sound
Sound played when a projectile is fired.
fire_sound_text
The fire sound that shows in chat messages: laser blast, gunshot, etc.
firing_burst
Prevent the gun from firing again while already firing.
gun_light
Whether or not the gun has a flashlight.
magin_sound
Sound played when inserting a new magazine.
magout_sound
Sound played when ejecting a magazine.
options
List of reskin options.
recoil
Screen shake when firing.
restricted_species
Restrict what species can fire this gun.
sawn_desc
Description change if gun is sawn-off.
sawn_state
Whether or not the gun has been sawn-off.
semicd
Cooldown handler.
spread
Bigger values make shots less precise.
suppressed
Whether or not a message is displayed when fired.
trigger_guard
Trigger guard on the gun, hulks and ash walkers can't fire them with their big meaty fingers.
unique_rename
If TRUE, allows the gun to be renamed with a pen.
unique_reskin
Allows one-time reskinning.
upgrades
Weapon modifications (except bayonets, flashlights, and suppressors - these are tracked seperately).
weapon_weight
When dual wielding, accuracy will decrease based on weapon weight. WEAPON_HEAVY makes a weapon require two hands to fire, unless the user has TRAIT_BADASS.
\ No newline at end of file
diff --git a/obj/item/gun/energy.html b/obj/item/gun/energy.html
new file mode 100644
index 00000000000..299878350e0
--- /dev/null
+++ b/obj/item/gun/energy.html
@@ -0,0 +1 @@
+/obj/item/gun/energy - Space Station 13Space Station 13 - Modules - Types — Var Details
Do you want the gun to fit into a turret, defaults to TRUE, used for if a energy gun is too strong to be in a turret, or does not make sense to be in one.
If this gun uses a stateful charge bar for more detail
Var Details
ammo_type
What projectiles can this gun shoot?
can_be_lensed
Can it use a lens
can_charge
If set to FALSE, the gun cannot be recharged in a recharger.
can_fit_in_turrets
Do you want the gun to fit into a turret, defaults to TRUE, used for if a energy gun is too strong to be in a turret, or does not make sense to be in one.
cell
What type of power cell this uses
cell_type
The specific type of power cell this gun has.
charge_sections
How many lights are there on the gun's item sprite indicating the charge level?
current_lens
Current lens
inhand_charge_sections
How many lights are there on the gun's in-hand sprite indicating the charge level?
lens_damage_cap
The max damage multiplier a lens can apply to a energy gun. Use sparingly, primarly for stamina based weapons.
overlay_set
If the item uses a shared set of overlays instead of being based on icon_state
ratio
Used when updating icon and overlays to determine the energy pips
select
The state of the select fire switch. Determines from the ammo_type list what kind of shot is fired next.
selfcharge
Does this gun recharge itself? Some guns (such as the M1911-P) do not use this and instead have a cell type that self-charges.
shaded_charge
If this gun uses a stateful charge bar for more detail
\ No newline at end of file
diff --git a/obj/item/gun/energy/detective.html b/obj/item/gun/energy/detective.html
new file mode 100644
index 00000000000..9cf54cfa0a8
--- /dev/null
+++ b/obj/item/gun/energy/detective.html
@@ -0,0 +1 @@
+/obj/item/gun/energy/detective - Space Station 13Space Station 13 - Modules - Types — Var Details
If true, this gun is tracking something and cannot track another mob
Var Details
Announcer
Yes, this gun has a radio, welcome to 2022
linked_pinpointer_UID
Used to link back to the pinpointer
overcharged
Used to track if the gun is overcharged
tracking_target_UID
If true, this gun is tracking something and cannot track another mob
\ No newline at end of file
diff --git a/obj/item/gun/energy/gun/minigun.html b/obj/item/gun/energy/gun/minigun.html
new file mode 100644
index 00000000000..9ed2b7cbac8
--- /dev/null
+++ b/obj/item/gun/energy/gun/minigun.html
@@ -0,0 +1 @@
+/obj/item/gun/energy/gun/minigun - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/gun/energy/sparker.html b/obj/item/gun/energy/sparker.html
new file mode 100644
index 00000000000..37abf280064
--- /dev/null
+++ b/obj/item/gun/energy/sparker.html
@@ -0,0 +1 @@
+/obj/item/gun/energy/sparker - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/gun/energy/temperature.html b/obj/item/gun/energy/temperature.html
new file mode 100644
index 00000000000..20020b47578
--- /dev/null
+++ b/obj/item/gun/energy/temperature.html
@@ -0,0 +1 @@
+/obj/item/gun/energy/temperature - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/gun/magic/tentacle.html b/obj/item/gun/magic/tentacle.html
new file mode 100644
index 00000000000..967c7fe524b
--- /dev/null
+++ b/obj/item/gun/magic/tentacle.html
@@ -0,0 +1 @@
+/obj/item/gun/magic/tentacle - Space Station 13Space Station 13 - Modules - Types — Var Details
True if we're shooting our shot -- used to track shooting to prevent deleting mid shot
Var Details
hit_something
Used for deleting gun after hitting something
shooting_right_now
True if we're shooting our shot -- used to track shooting to prevent deleting mid shot
\ No newline at end of file
diff --git a/obj/item/gun/medbeam/damaged.html b/obj/item/gun/medbeam/damaged.html
new file mode 100644
index 00000000000..830d7a915b6
--- /dev/null
+++ b/obj/item/gun/medbeam/damaged.html
@@ -0,0 +1 @@
+/obj/item/gun/medbeam/damaged - Space Station 13Space Station 13 - Modules - Types — Var Details
How hot the beamgun is, if it hits max heat it will break
damaging_heat_percent
when current_heat / max_heat > damaging_heat_percent, it will burn the wielders hands
max_heat
How much heat the beamgun needs to break
overheated
If the gun is still too hot to repair
\ No newline at end of file
diff --git a/obj/item/gun/projectile.html b/obj/item/gun/projectile.html
new file mode 100644
index 00000000000..74a91e857ea
--- /dev/null
+++ b/obj/item/gun/projectile.html
@@ -0,0 +1 @@
+/obj/item/gun/projectile - Space Station 13Space Station 13 - Modules - Types — Var Details
The sound it will make when the gun suppression is TRUE
Var Details
suppressed_sound
The sound it will make when the gun suppression is TRUE
\ No newline at end of file
diff --git a/obj/item/gun/projectile/automatic/paintball_gun.html b/obj/item/gun/projectile/automatic/paintball_gun.html
new file mode 100644
index 00000000000..797df703cea
--- /dev/null
+++ b/obj/item/gun/projectile/automatic/paintball_gun.html
@@ -0,0 +1 @@
+/obj/item/gun/projectile/automatic/paintball_gun - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/gun/projectile/revolver/doublebarrel/flayer.html b/obj/item/gun/projectile/revolver/doublebarrel/flayer.html
new file mode 100644
index 00000000000..84e936b4422
--- /dev/null
+++ b/obj/item/gun/projectile/revolver/doublebarrel/flayer.html
@@ -0,0 +1 @@
+/obj/item/gun/projectile/revolver/doublebarrel/flayer - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/gun/syringe/rapidsyringe.html b/obj/item/gun/syringe/rapidsyringe.html
new file mode 100644
index 00000000000..297c24d52fd
--- /dev/null
+++ b/obj/item/gun/syringe/rapidsyringe.html
@@ -0,0 +1,3 @@
+/obj/item/gun/syringe/rapidsyringe - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Update the chambered syringe's contents based on the reservoir contents.
+Makes sure that what's contained in the syringe is representative of the mix as a whole.
Var Details
alarmed
Whether or not we've alerted the user that the reservoir is empty.
possible_transfer_amounts
Possible amounts to fill each syringe with, toggleable by alt-clicking.
reservoir_transfer_amount
Amount of reagents to transfer out at once if no syringe is loaded.
reservoir_volume
Maximum size of the internal reservoir
transfer_amount_selection
Index of possible_transfer_amounts that's currently active.
Proc Details
insert_single_syringe
If user is null in this proc, messages will just be ignored
update_loaded_syringe
Update the chambered syringe's contents based on the reservoir contents.
+Makes sure that what's contained in the syringe is representative of the mix as a whole.
\ No newline at end of file
diff --git a/obj/item/gun/syringe/rapidsyringe/preloaded.html b/obj/item/gun/syringe/rapidsyringe/preloaded.html
new file mode 100644
index 00000000000..f39ca921588
--- /dev/null
+++ b/obj/item/gun/syringe/rapidsyringe/preloaded.html
@@ -0,0 +1 @@
+/obj/item/gun/syringe/rapidsyringe/preloaded - Space Station 13Space Station 13 - Modules - Types — Var Details
preloaded
Version that comes pre-loaded with a given amount of syringes.
The number of syringes to reload. If not set, defaults to max_syringes.
Var Details
number_to_preload
The number of syringes to reload. If not set, defaults to max_syringes.
\ No newline at end of file
diff --git a/obj/item/hand_tele.html b/obj/item/hand_tele.html
new file mode 100644
index 00000000000..8df4f971d11
--- /dev/null
+++ b/obj/item/hand_tele.html
@@ -0,0 +1 @@
+/obj/item/hand_tele - Space Station 13Space Station 13 - Modules - Types — Var Details
Variable contains next time hand tele can be used to make it not EMP proof
Var Details
active_portals
The number of open teleportals.
emp_timer
Variable contains next time hand tele can be used to make it not EMP proof
\ No newline at end of file
diff --git a/obj/item/handheld_defibrillator.html b/obj/item/handheld_defibrillator.html
new file mode 100644
index 00000000000..c82cbbee7b8
--- /dev/null
+++ b/obj/item/handheld_defibrillator.html
@@ -0,0 +1 @@
+/obj/item/handheld_defibrillator - Space Station 13Space Station 13 - Modules - Types — Var Details
How long until we can attack the same person with any emagged handheld defib or baton again?
charge_time
How long will it take to recharge after a shock?
cooldown
Can the defib shock yet?
knockdown_duration
How long does this knock the target down for?
\ No newline at end of file
diff --git a/obj/item/healthanalyzer.html b/obj/item/healthanalyzer.html
new file mode 100644
index 00000000000..d1991932ed6
--- /dev/null
+++ b/obj/item/healthanalyzer.html
@@ -0,0 +1 @@
+/obj/item/healthanalyzer - Space Station 13Space Station 13 - Modules - Types — Var Details
Can be SIMPLE_HEALTH_SCAN (damage is only shown as a single % value), or DETAILED_HEALTH_SCAN (shows the % value and also damage for every specific limb).
Var Details
advanced
Is the health analyzer upgraded? Allows reagents in the body to be seen.
mode
Can be SIMPLE_HEALTH_SCAN (damage is only shown as a single % value), or DETAILED_HEALTH_SCAN (shows the % value and also damage for every specific limb).
\ No newline at end of file
diff --git a/obj/item/heretic_labyrinth_handbook.html b/obj/item/heretic_labyrinth_handbook.html
new file mode 100644
index 00000000000..ab382925468
--- /dev/null
+++ b/obj/item/heretic_labyrinth_handbook.html
@@ -0,0 +1 @@
+/obj/item/heretic_labyrinth_handbook - Space Station 13Space Station 13 - Modules - Types — Var Details
heretic_labyrinth_handbook
A heretic item that spawns a barrier at the clicked turf, 3 uses
\ No newline at end of file
diff --git a/obj/item/his_grace.html b/obj/item/his_grace.html
new file mode 100644
index 00000000000..ca2a8b9b808
--- /dev/null
+++ b/obj/item/his_grace.html
@@ -0,0 +1 @@
+/obj/item/his_grace - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/holo/esword.html b/obj/item/holo/esword.html
new file mode 100644
index 00000000000..d2d71ba7244
--- /dev/null
+++ b/obj/item/holo/esword.html
@@ -0,0 +1 @@
+/obj/item/holo/esword - Space Station 13Space Station 13 - Modules - Types — Var Details
Color of this e-sword. You can see supported colors in icon file
Var Details
sword_color
Color of this e-sword. You can see supported colors in icon file
\ No newline at end of file
diff --git a/obj/item/inflatable/cyborg.html b/obj/item/inflatable/cyborg.html
new file mode 100644
index 00000000000..d490c33df87
--- /dev/null
+++ b/obj/item/inflatable/cyborg.html
@@ -0,0 +1 @@
+/obj/item/inflatable/cyborg - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/instrument.html b/obj/item/instrument.html
new file mode 100644
index 00000000000..95fe7f15ae0
--- /dev/null
+++ b/obj/item/instrument.html
@@ -0,0 +1,5 @@
+/obj/item/instrument - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Our allowed list of instrument ids. This is nulled on initialize.
instrument_range
How far away our song datum can be heard.
song
Our song datum.
Proc Details
should_stop_playing
Whether the instrument should stop playing
+
Arguments:
+
+
user - The user
+
\ No newline at end of file
diff --git a/obj/item/katana/energy.html b/obj/item/katana/energy.html
new file mode 100644
index 00000000000..d2b255ebaba
--- /dev/null
+++ b/obj/item/katana/energy.html
@@ -0,0 +1 @@
+/obj/item/katana/energy - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/kinetic_crusher.html b/obj/item/kinetic_crusher.html
new file mode 100644
index 00000000000..0a90139b5b2
--- /dev/null
+++ b/obj/item/kinetic_crusher.html
@@ -0,0 +1,3 @@
+/obj/item/kinetic_crusher - Space Station 13Space Station 13 - Modules - Types — Var Details
Tracker for the current amount of force used when the item is wielded.
+Note that this isn't wired to anything, and must be updated with AddComponent to have value.
Used by retool kits when changing the crusher's projectile sprite
Var Details
base_force_wielded
Amount of force typically assigned when wielded
force_wielded
Tracker for the current amount of force used when the item is wielded.
+Note that this isn't wired to anything, and must be updated with AddComponent to have value.
projectile_icon
The file in which our projectile icon resides
projectile_icon_state
Used by retool kits when changing the crusher's projectile sprite
\ No newline at end of file
diff --git a/obj/item/kinetic_crusher/mecha.html b/obj/item/kinetic_crusher/mecha.html
new file mode 100644
index 00000000000..284aaf20347
--- /dev/null
+++ b/obj/item/kinetic_crusher/mecha.html
@@ -0,0 +1 @@
+/obj/item/kinetic_crusher/mecha - Space Station 13Space Station 13 - Modules - Types — Var Details
Since this one doesn't have the two_handed component it will always use the value in force
Var Details
force
Since this one doesn't have the two_handed component it will always use the value in force
\ No newline at end of file
diff --git a/obj/item/kirbyplants.html b/obj/item/kirbyplants.html
new file mode 100644
index 00000000000..6305114d989
--- /dev/null
+++ b/obj/item/kirbyplants.html
@@ -0,0 +1 @@
+/obj/item/kirbyplants - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
User has either dropped the plant, or plant is being destroyed, restore user to normal.
Var Details
mob_overlay
Variable to track plant overlay on mob for later removal
Proc Details
hide_user
User has decided to hold a plant, apply stealth.
reapply_hide
Icon operation has occured, time to make sure we're showing a plant again if we need to be.
unhide_user
User has either dropped the plant, or plant is being destroyed, restore user to normal.
\ No newline at end of file
diff --git a/obj/item/kitchen/knife/smithed.html b/obj/item/kitchen/knife/smithed.html
new file mode 100644
index 00000000000..e40d721df58
--- /dev/null
+++ b/obj/item/kitchen/knife/smithed.html
@@ -0,0 +1 @@
+/obj/item/kitchen/knife/smithed - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/light.html b/obj/item/light.html
new file mode 100644
index 00000000000..25564d6e601
--- /dev/null
+++ b/obj/item/light.html
@@ -0,0 +1,3 @@
+/obj/item/light - Space Station 13Space Station 13 - Modules - Types — Var Details
light
MARK: Light item
+
Parent type of light fittings (Light bulbs, light tubes)
How many times has the light been switched on/off?
Var Details
brightness_color
Light colour
brightness_power
Light intensity
brightness_range
Light range
materials
Materials the light is made of
rigged
Is the light rigged to explode?
status
Light status (LIGHT_OK | LIGHT_BURNED | LIGHT_BROKEN)
switchcount
How many times has the light been switched on/off?
\ No newline at end of file
diff --git a/obj/item/lighter.html b/obj/item/lighter.html
new file mode 100644
index 00000000000..08809cd7335
--- /dev/null
+++ b/obj/item/lighter.html
@@ -0,0 +1 @@
+/obj/item/lighter - Space Station 13Space Station 13 - Modules - Types — Var Details
Cooldown until the next turned on message/sound can be activated
Var Details
lighter_color
Our lighter color suffix. => [base_icon_state]-[lightercolor] => lighter-r
next_off_message
Cooldown until the next turned off message/sound can be activated
next_on_message
Cooldown until the next turned on message/sound can be activated
\ No newline at end of file
diff --git a/obj/item/lightreplacer.html b/obj/item/lightreplacer.html
new file mode 100644
index 00000000000..4b079f85c59
--- /dev/null
+++ b/obj/item/lightreplacer.html
@@ -0,0 +1 @@
+/obj/item/lightreplacer - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/magic_tarot_card.html b/obj/item/magic_tarot_card.html
new file mode 100644
index 00000000000..a35333685df
--- /dev/null
+++ b/obj/item/magic_tarot_card.html
@@ -0,0 +1 @@
+/obj/item/magic_tarot_card - Space Station 13Space Station 13 - Modules - Types — Var Details
Our magic tarot card datum that lets the tarot card do stuff on use, or hitting someone
Var Details
card_desc
Our fancy description given to use by the tarot datum.
creator_deck
The deck that created us. Notifies it we have been deleted on use.
face_down
Is the card face down? Shows the card back, hides the examine / name.
has_been_activated
Has the card been activated? If it has, don't activate it again
needs_mob_target
Will this card automatically disappear if thrown at a non-mob?
our_tarot
Our magic tarot card datum that lets the tarot card do stuff on use, or hitting someone
\ No newline at end of file
diff --git a/obj/item/mail_scanner.html b/obj/item/mail_scanner.html
new file mode 100644
index 00000000000..e6599b7f6f8
--- /dev/null
+++ b/obj/item/mail_scanner.html
@@ -0,0 +1 @@
+/obj/item/mail_scanner - Space Station 13Space Station 13 - Modules - Types — Var Details
The reference to the envelope that is currently stored in the mail scanner. It will be cleared upon confirming a correct delivery
scanner_range
How far away can the scanner scan mail or people
\ No newline at end of file
diff --git a/obj/item/matter_decompiler.html b/obj/item/matter_decompiler.html
new file mode 100644
index 00000000000..44f53f4f58e
--- /dev/null
+++ b/obj/item/matter_decompiler.html
@@ -0,0 +1 @@
+/obj/item/matter_decompiler - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/mecha_parts/mecha_equipment/janitor/garbage_magnet.html b/obj/item/mecha_parts/mecha_equipment/janitor/garbage_magnet.html
new file mode 100644
index 00000000000..4908bf5e097
--- /dev/null
+++ b/obj/item/mecha_parts/mecha_equipment/janitor/garbage_magnet.html
@@ -0,0 +1 @@
+/obj/item/mecha_parts/mecha_equipment/janitor/garbage_magnet - Space Station 13Space Station 13 - Modules - Types — Var Details
Toggle for filling the bag (true) or emptying (false)
cant_hold
List of items the bag cannot hold
extended
Toggle for wide area or single tile pickups
max_range
Garbage magnet range
storage_controller
Handles controlling the storage of items
\ No newline at end of file
diff --git a/obj/item/mecha_parts/mecha_equipment/janitor/mega_mop.html b/obj/item/mecha_parts/mecha_equipment/janitor/mega_mop.html
new file mode 100644
index 00000000000..5775daf8025
--- /dev/null
+++ b/obj/item/mecha_parts/mecha_equipment/janitor/mega_mop.html
@@ -0,0 +1 @@
+/obj/item/mecha_parts/mecha_equipment/janitor/mega_mop - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/mecha_parts/mecha_equipment/janitor/mega_spray.html b/obj/item/mecha_parts/mecha_equipment/janitor/mega_spray.html
new file mode 100644
index 00000000000..de63483e2ce
--- /dev/null
+++ b/obj/item/mecha_parts/mecha_equipment/janitor/mega_spray.html
@@ -0,0 +1 @@
+/obj/item/mecha_parts/mecha_equipment/janitor/mega_spray - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/cleaner.html b/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/cleaner.html
new file mode 100644
index 00000000000..185b06e0560
--- /dev/null
+++ b/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/cleaner.html
@@ -0,0 +1 @@
+/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/cleaner - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/megaphone.html b/obj/item/megaphone.html
new file mode 100644
index 00000000000..e4ab05b91f6
--- /dev/null
+++ b/obj/item/megaphone.html
@@ -0,0 +1 @@
+/obj/item/megaphone - Space Station 13Space Station 13 - Modules - Types — Var Details
List of insults to be sent when the megaphone is cmagged.
modified_cooldown
How long to wait between insults
normal_cooldown
How long to wait when using it as normal
on_cooldown
If it's on cooldown.
span
Span to use by default for the message.
\ No newline at end of file
diff --git a/obj/item/melee.html b/obj/item/melee.html
new file mode 100644
index 00000000000..cd1a95f0b42
--- /dev/null
+++ b/obj/item/melee.html
@@ -0,0 +1 @@
+/obj/item/melee - Space Station 13Space Station 13 - Modules - Types — Proc Details
Used by cult daggers and the cursed sickly blade. No other melee item can do this, just a universal melee item proc so I don't have to copy paste code
Proc Details
scribe_rune
Used by cult daggers and the cursed sickly blade. No other melee item can do this, just a universal melee item proc so I don't have to copy paste code
\ No newline at end of file
diff --git a/obj/item/melee/baseball_bat.html b/obj/item/melee/baseball_bat.html
new file mode 100644
index 00000000000..e4a3c2b4026
--- /dev/null
+++ b/obj/item/melee/baseball_bat.html
@@ -0,0 +1 @@
+/obj/item/melee/baseball_bat - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/melee/baton.html b/obj/item/melee/baton.html
new file mode 100644
index 00000000000..6ae1d9ab209
--- /dev/null
+++ b/obj/item/melee/baton.html
@@ -0,0 +1,12 @@
+/obj/item/melee/baton - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
the initial cooldown tracks the time between swings. tracks the world.time when the baton is usable again.
hitcost
How much power does it cost to stun someone
knockdown_delay
the time it takes before the target falls over
knockdown_duration
How many seconds does the knockdown last for?
stam_damage
how much stamina damage does this baton do?
turned_on
Is the baton currently turned on
Proc Details
baton_stun
returning false results in no baton attack animation, returning true results in an animation.
deductcharge
Removes the specified amount of charge from the batons power cell.
+
If src is a cyborg baton, this removes the charge from the borg's internal power cell instead.
+Arguments:
+
+
amount - The amount of battery charge to be used.
+
link_new_cell
Updates the linked power cell on the baton.
+
If the baton is held by a cyborg, link it to their internal cell.
+Else, spawn a new cell and use that instead.
+Arguments:
+
+
unlink - If TRUE, sets the cell variable to null rather than linking it to a new one.
+
\ No newline at end of file
diff --git a/obj/item/melee/baton/flayerprod.html b/obj/item/melee/baton/flayerprod.html
new file mode 100644
index 00000000000..2c5a8c099b7
--- /dev/null
+++ b/obj/item/melee/baton/flayerprod.html
@@ -0,0 +1 @@
+/obj/item/melee/baton/flayerprod - Space Station 13Space Station 13 - Modules - Types — Var Details
The duration that stunning someone will disable their radio for
Var Details
radio_disable_time
The duration that stunning someone will disable their radio for
\ No newline at end of file
diff --git a/obj/item/melee/blood_magic.html b/obj/item/melee/blood_magic.html
new file mode 100644
index 00000000000..83a0663655f
--- /dev/null
+++ b/obj/item/melee/blood_magic.html
@@ -0,0 +1 @@
+/obj/item/melee/blood_magic - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/melee/breach_cleaver.html b/obj/item/melee/breach_cleaver.html
new file mode 100644
index 00000000000..3f340bf348b
--- /dev/null
+++ b/obj/item/melee/breach_cleaver.html
@@ -0,0 +1 @@
+/obj/item/melee/breach_cleaver - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/melee/classic_baton.html b/obj/item/melee/classic_baton.html
new file mode 100644
index 00000000000..9dbcada8805
--- /dev/null
+++ b/obj/item/melee/classic_baton.html
@@ -0,0 +1,17 @@
+/obj/item/melee/classic_baton - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Whether the baton is toggled on (to allow attacking)
on_cooldown
Whether the baton is on cooldown
stamina_armor_pen
How much melee armour is ignored by the stamina damage
stamina_damage
The amount of stamina damage the baton does per swing
stun_sound
Sound to play when knocking someone down
stun_time_silicon
The stun time (in seconds) for silicons
Proc Details
baton_knockdown
Called when a target is about to be hit non-lethally.
+
Arguments:
+
+
target - The mob about to be hit
+
user - The attacking user
+
on_non_silicon_stun
Called when a non-silicon has been stunned.
+
Arguments:
+
+
target - The hit mob
+
user - The attacking user
+
on_silicon_stun
Called when a silicon has been stunned.
+
Arguments:
+
+
target - The hit mob
+
user - The attacking user
+
\ No newline at end of file
diff --git a/obj/item/melee/classic_baton/telescopic.html b/obj/item/melee/classic_baton/telescopic.html
new file mode 100644
index 00000000000..d16b9fd878a
--- /dev/null
+++ b/obj/item/melee/classic_baton/telescopic.html
@@ -0,0 +1 @@
+/obj/item/melee/classic_baton/telescopic - Space Station 13Space Station 13 - Modules - Types — Var Details
Attack verbs when concealed (created on Initialize)
attack_verb_on
Attack verbs when extended (created on Initialize)
extend_sound
Sound to play when concealing or extending
force_off
Force when concealed
force_on
Force when extended
icon_state_off
Icon state when concealed
icon_state_on
Icon state when extended
inhand_icon_state_on
Inhand icon state when extended
worn_icon_state_on
Worn icon state when extended
\ No newline at end of file
diff --git a/obj/item/melee/classic_baton/telescopic/contractor.html b/obj/item/melee/classic_baton/telescopic/contractor.html
new file mode 100644
index 00000000000..855f9548c7e
--- /dev/null
+++ b/obj/item/melee/classic_baton/telescopic/contractor.html
@@ -0,0 +1 @@
+/obj/item/melee/classic_baton/telescopic/contractor - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/melee/cultblade.html b/obj/item/melee/cultblade.html
new file mode 100644
index 00000000000..ce4bc74b849
--- /dev/null
+++ b/obj/item/melee/cultblade.html
@@ -0,0 +1 @@
+/obj/item/melee/cultblade - Space Station 13Space Station 13 - Modules - Types — Var Details
Can anyone use this cult tool? If true, anyone can use it. If false, only cult
Var Details
free_use
Can anyone use this cult tool? If true, anyone can use it. If false, only cult
\ No newline at end of file
diff --git a/obj/item/melee/cultblade/haunted.html b/obj/item/melee/cultblade/haunted.html
new file mode 100644
index 00000000000..eaa65892f58
--- /dev/null
+++ b/obj/item/melee/cultblade/haunted.html
@@ -0,0 +1 @@
+/obj/item/melee/cultblade/haunted - Space Station 13Space Station 13 - Modules - Types — Var Details
If the blade is bound, it cannot utilize its abilities, but neither can its wielder. They must unbind it to use it to its full potential.
heretic_path
The heretic path that the variable below uses to index abilities. Assigned when the heretic is ensouled.
heretic_paths_to_haunted_sword_abilities
Nested static list used to index abilities and names.
path_sword_actions
holder for the actual action when created.
path_wielder_actions
holder for the actual action when created.
\ No newline at end of file
diff --git a/obj/item/melee/energy.html b/obj/item/melee/energy.html
new file mode 100644
index 00000000000..86e9acecf06
--- /dev/null
+++ b/obj/item/melee/energy.html
@@ -0,0 +1 @@
+/obj/item/melee/energy - Space Station 13Space Station 13 - Modules - Types — Var Details
Size when active, used to stop you from pocketing it when active. That would be silly.
Var Details
attack_verb_on
What flavour of shanking you perform when the blade is active.
blade_color
Blade color to adjust icon_state/inhand_icon_state
colormap
Translates blade_color into RGB color for lighting system
faction_bonus_force
Bonus damage dealt to any mob belonging to specified factions.
force_off
Used to properly reset the force.
force_on
Damage done when active. Does not stack with force_off.
icon_state_on
Alternative appearance when active.
is_a_cleaving_saw
Used to mark the item as a cleaving saw so that cigarette_lighter_act() will perform an early return.
nemesis_factions
Any mob with a faction that exists in this list will take bonus damage/effects.
throwforce_off
Used to properly reset the force.
throwforce_on
Damage done when thrown while active. Does not stack with throwforce_off.
w_class_on
Size when active, used to stop you from pocketing it when active. That would be silly.
\ No newline at end of file
diff --git a/obj/item/melee/ghost_sword.html b/obj/item/melee/ghost_sword.html
new file mode 100644
index 00000000000..ddb88491f13
--- /dev/null
+++ b/obj/item/melee/ghost_sword.html
@@ -0,0 +1 @@
+/obj/item/melee/ghost_sword - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
List of wisps we have active, for cleanup purposes in case a ghost gets randomly deleted.
Proc Details
on_move
When moving into something's contents
\ No newline at end of file
diff --git a/obj/item/melee/knuckleduster.html b/obj/item/melee/knuckleduster.html
new file mode 100644
index 00000000000..72abc08c241
--- /dev/null
+++ b/obj/item/melee/knuckleduster.html
@@ -0,0 +1 @@
+/obj/item/melee/knuckleduster - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/melee/powerfist.html b/obj/item/melee/powerfist.html
new file mode 100644
index 00000000000..5056031119b
--- /dev/null
+++ b/obj/item/melee/powerfist.html
@@ -0,0 +1 @@
+/obj/item/melee/powerfist - Space Station 13Space Station 13 - Modules - Types — Var Details
Base pressure in kpa used by the powerfist per hit
Var Details
gasperfist
Base pressure in kpa used by the powerfist per hit
\ No newline at end of file
diff --git a/obj/item/melee/razorwire.html b/obj/item/melee/razorwire.html
new file mode 100644
index 00000000000..03be157384b
--- /dev/null
+++ b/obj/item/melee/razorwire.html
@@ -0,0 +1 @@
+/obj/item/melee/razorwire - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/melee/rune_carver.html b/obj/item/melee/rune_carver.html
new file mode 100644
index 00000000000..64a7ca95342
--- /dev/null
+++ b/obj/item/melee/rune_carver.html
@@ -0,0 +1 @@
+/obj/item/melee/rune_carver - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/melee/secsword.html b/obj/item/melee/secsword.html
new file mode 100644
index 00000000000..b19e3943851
--- /dev/null
+++ b/obj/item/melee/secsword.html
@@ -0,0 +1 @@
+/obj/item/melee/secsword - Space Station 13Space Station 13 - Modules - Types — Var Details
the initial cooldown tracks the time between stamina damage. tracks the world.time when the baton is usable again.
stam_damage
How much stamina damage the sword does in stamina mode
stam_hitcost
How much power does it cost to stun someone
state
The sword's current mode. Defaults to off.
stun_cooldown
Stun cooldown
\ No newline at end of file
diff --git a/obj/item/melee/sickly_blade.html b/obj/item/melee/sickly_blade.html
new file mode 100644
index 00000000000..a21b6e92ef4
--- /dev/null
+++ b/obj/item/melee/sickly_blade.html
@@ -0,0 +1 @@
+/obj/item/melee/sickly_blade - Space Station 13Space Station 13 - Modules - Types — Proc Details
Attempts to teleport the passed mob to somewhere safe on the station, if they can use the blade.
Proc Details
check_usability
Checks if the passed mob can use this blade without being stunned
seek_safety
Attempts to teleport the passed mob to somewhere safe on the station, if they can use the blade.
\ No newline at end of file
diff --git a/obj/item/melee/sickly_blade/dark.html b/obj/item/melee/sickly_blade/dark.html
new file mode 100644
index 00000000000..2bb2af1273a
--- /dev/null
+++ b/obj/item/melee/sickly_blade/dark.html
@@ -0,0 +1 @@
+/obj/item/melee/sickly_blade/dark - Space Station 13Space Station 13 - Modules - Types — Var Details
If our blade is currently infused with the mansus grasp
Var Details
infused
If our blade is currently infused with the mansus grasp
\ No newline at end of file
diff --git a/obj/item/melee/skateboard.html b/obj/item/melee/skateboard.html
new file mode 100644
index 00000000000..43ecf31bac4
--- /dev/null
+++ b/obj/item/melee/skateboard.html
@@ -0,0 +1 @@
+/obj/item/melee/skateboard - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/melee/spellblade.html b/obj/item/melee/spellblade.html
new file mode 100644
index 00000000000..b756eb9359b
--- /dev/null
+++ b/obj/item/melee/spellblade.html
@@ -0,0 +1 @@
+/obj/item/melee/spellblade - Space Station 13Space Station 13 - Modules - Types — Var Details
the cooldown and power of enchantments are multiplied by this var when its applied
Var Details
enchant
enchantment holder, gives it unique on hit effects.
power
the cooldown and power of enchantments are multiplied by this var when its applied
\ No newline at end of file
diff --git a/obj/item/melee/touch_attack.html b/obj/item/melee/touch_attack.html
new file mode 100644
index 00000000000..f8f2b015a47
--- /dev/null
+++ b/obj/item/melee/touch_attack.html
@@ -0,0 +1 @@
+/obj/item/melee/touch_attack - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/melee/touch_attack/alien.html b/obj/item/melee/touch_attack/alien.html
new file mode 100644
index 00000000000..ac0b53e7f48
--- /dev/null
+++ b/obj/item/melee/touch_attack/alien.html
@@ -0,0 +1 @@
+/obj/item/melee/touch_attack/alien - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/melee/touch_attack/flesh_surgery.html b/obj/item/melee/touch_attack/flesh_surgery.html
new file mode 100644
index 00000000000..ce8e81233c1
--- /dev/null
+++ b/obj/item/melee/touch_attack/flesh_surgery.html
@@ -0,0 +1 @@
+/obj/item/melee/touch_attack/flesh_surgery - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
If cast on a carbon, we'll try to steal one of their organs directly from their person.
Var Details
monster_brute_healing
If used on a heretic mob, how much brute do we heal
monster_burn_healing
If used on a heretic mob, how much burn do we heal
organ_percent_healing
If used on an organ, how much percent of the organ's HP do we restore
Proc Details
extraction_checks
Extra checks ran while we're extracting an organ to make sure we can continue to do.
heal_checks
Extra checks ran while we're healing something (organ, mob).
heal_heretic_monster
If cast on a heretic monster who's not dead we'll heal it a bit.
heal_organ
If cast on an organ, we'll restore its health and even un-fail it.
steal_organ_from_mob
If cast on a carbon, we'll try to steal one of their organs directly from their person.
\ No newline at end of file
diff --git a/obj/item/melee/touch_attack/mansus_fist.html b/obj/item/melee/touch_attack/mansus_fist.html
new file mode 100644
index 00000000000..ac8e9d4bcea
--- /dev/null
+++ b/obj/item/melee/touch_attack/mansus_fist.html
@@ -0,0 +1 @@
+/obj/item/melee/touch_attack/mansus_fist - Space Station 13Space Station 13 - Modules - Types — Proc Details
Called when someone alt clicks with a grasp on something.
Proc Details
on_special_click
Called when someone alt clicks with a grasp on something.
\ No newline at end of file
diff --git a/obj/item/minigunpack.html b/obj/item/minigunpack.html
new file mode 100644
index 00000000000..582b8356cd2
--- /dev/null
+++ b/obj/item/minigunpack.html
@@ -0,0 +1 @@
+/obj/item/minigunpack - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
whether the gun is attached, FALSE is attached, TRUE is the gun is wielded.
gun
The stored gun
Proc Details
attack_hand
ATTACK HAND IGNORING PARENT RETURN VALUE
\ No newline at end of file
diff --git a/obj/item/mmi.html b/obj/item/mmi.html
new file mode 100644
index 00000000000..705dd90fda1
--- /dev/null
+++ b/obj/item/mmi.html
@@ -0,0 +1 @@
+/obj/item/mmi - Space Station 13Space Station 13 - Modules - Types — Var Details
Time at which the ghost belonging to the mind in the mmi can be pinged again to be borged
Var Details
extended_desc
Extended description on examine_more
next_possible_ghost_ping
Time at which the ghost belonging to the mind in the mmi can be pinged again to be borged
\ No newline at end of file
diff --git a/obj/item/mmi/robotic_brain.html b/obj/item/mmi/robotic_brain.html
new file mode 100644
index 00000000000..f7564515f84
--- /dev/null
+++ b/obj/item/mmi/robotic_brain.html
@@ -0,0 +1 @@
+/obj/item/mmi/robotic_brain - Space Station 13Space Station 13 - Modules - Types — Var Details
If this is a posibrain, which will reject attempting to put a new ghost in it, because this a real brain we care about, not a robobrain
Var Details
can_be_reinhabited
If this is a posibrain, which will reject attempting to put a new ghost in it, because this a real brain we care about, not a robobrain
\ No newline at end of file
diff --git a/obj/item/mod/control.html b/obj/item/mod/control.html
new file mode 100644
index 00000000000..2a03bd61b33
--- /dev/null
+++ b/obj/item/mod/control.html
@@ -0,0 +1 @@
+/obj/item/mod/control - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Starts the activation sequence, where parts of the suit activate one by one until the whole suit is on
Var Details
activating
If the suit is currently activating/deactivating.
activation_step_time
How long this MOD takes each part to seal.
active
If the suit is deployed and turned on.
bag
Internal storage in a modsuit
boots
MOD boots.
chameleon_action
Cham option for when the cham module is installed.
charge_drain
Power usage of the MOD.
chestplate
MOD chestplate.
complexity
How much module complexity this MOD is carrying.
complexity_max
How much module complexity can this MOD carry.
core
MOD core.
current_disguise
Is the control unit disquised?
emp_proof
Is it EMP proof?
extended_desc
Extended description of the theme.
gauntlets
MOD gauntlets.
helmet
MOD helmet.
interface_break
If the suit interface is broken.
locked
If the suit is ID locked.
malfunctioning
If the suit is malfunctioning.
mod_link
The MODlink datum, letting us call people from the suit.
mod_overlays
List of overlays the mod has. Needs to be cut onremoval / module deactivation
mod_parts
Associated list of parts (helmet, chestplate, gauntlets, boots) to their unsealed worn layer.
modules
Modules the MOD currently possesses.
open
If the suit wire/module hatch is open.
overslotting_parts
Associated list of parts that can overslot to their overslot (overslot means the part can cover another layer of clothing).
part_data
Used when we set up new skins for a modsuit
seconds_electrified
How long the MOD is electrified for.
selected_module
Currently used module.
skin
Looks of the MOD.
slowdown_active
Slowdown of the MOD when active.
slowdown_inactive
Slowdown of the MOD when not active.
starting_frequency
The starting MODlink frequency, by default NT to make it easier for everyone to use.
theme
The MOD's theme, decides on some stuff like armor and statistics.
ui_theme
Theme of the MOD TGUI
wearer
Person wearing the MODsuit.
Proc Details
choose_deploy
Creates a radial menu from which the user chooses parts of the suit to deploy/retract. Repeats until all parts are extended or retracted.
deploy
Deploys a part of the suit onto the user.
finish_activation
Finishes the suit's activation
get_wearer
Intended for callbacks, don't use normally, just get wearer by itself.
quick_activation
Quickly deploys all the suit parts and if successful, seals them and turns on the suit. Intended mostly for outfits.
quick_deploy
Quickly deploys all parts (or retracts if all are on the wearer)
retract
Retract a part of the suit from the user.
seal_part
Seals or unseals the given part
toggle_activate
Starts the activation sequence, where parts of the suit activate one by one until the whole suit is on
\ No newline at end of file
diff --git a/obj/item/mod/control/pre_equipped.html b/obj/item/mod/control/pre_equipped.html
new file mode 100644
index 00000000000..95a5328caf5
--- /dev/null
+++ b/obj/item/mod/control/pre_equipped.html
@@ -0,0 +1 @@
+/obj/item/mod/control/pre_equipped - Space Station 13Space Station 13 - Modules - Types — Var Details
Modules that we pin when the suit is installed for the first time, for convenience, can be applied or theme inbuilt modules.
Var Details
applied_cell
The cell we apply to the core. Only applies to standard core suits.
applied_core
The MOD core we apply to the suit.
applied_modules
List of modules we spawn with.
applied_skin
The skin we apply to the suit, defaults to the default_skin of the theme.
default_pins
Modules that we pin when the suit is installed for the first time, for convenience, can be applied or theme inbuilt modules.
\ No newline at end of file
diff --git a/obj/item/mod/control/pre_equipped/debug.html b/obj/item/mod/control/pre_equipped/debug.html
new file mode 100644
index 00000000000..60d608c20c5
--- /dev/null
+++ b/obj/item/mod/control/pre_equipped/debug.html
@@ -0,0 +1 @@
+/obj/item/mod/control/pre_equipped/debug - Space Station 13Space Station 13 - Modules - Types — Var Details
One of every type of module, for testing if they all work correctly // boy this isn't even 25% the modules
Var Details
applied_modules
One of every type of module, for testing if they all work correctly // boy this isn't even 25% the modules
\ No newline at end of file
diff --git a/obj/item/mod/control/pre_equipped/responsory.html b/obj/item/mod/control/pre_equipped/responsory.html
new file mode 100644
index 00000000000..364300a0753
--- /dev/null
+++ b/obj/item/mod/control/pre_equipped/responsory.html
@@ -0,0 +1 @@
+/obj/item/mod/control/pre_equipped/responsory - Space Station 13Space Station 13 - Modules - Types — Var Details
The insignia type, insignias show what sort of member of the ERT you're dealing with.
Var Details
additional_module
Additional module we add, as a treat.
inquisitorial_module
Inquisitorial module, as we have reached that point.
insignia_type
The insignia type, insignias show what sort of member of the ERT you're dealing with.
\ No newline at end of file
diff --git a/obj/item/mod/core.html b/obj/item/mod/core.html
new file mode 100644
index 00000000000..edf55174b90
--- /dev/null
+++ b/obj/item/mod/core.html
@@ -0,0 +1 @@
+/obj/item/mod/core - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/mod/core/plasma.html b/obj/item/mod/core/plasma.html
new file mode 100644
index 00000000000..66d377da4b2
--- /dev/null
+++ b/obj/item/mod/core/plasma.html
@@ -0,0 +1 @@
+/obj/item/mod/core/plasma - Space Station 13Space Station 13 - Modules - Types — Var Details
Associated list of charge sources, only stacks allowed.
maxcharge
How much charge we can store.
\ No newline at end of file
diff --git a/obj/item/mod/core/standard.html b/obj/item/mod/core/standard.html
new file mode 100644
index 00000000000..a183d156b18
--- /dev/null
+++ b/obj/item/mod/core/standard.html
@@ -0,0 +1 @@
+/obj/item/mod/core/standard - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/mod/module.html b/obj/item/mod/module.html
new file mode 100644
index 00000000000..a9e0cdd53b9
--- /dev/null
+++ b/obj/item/mod/module.html
@@ -0,0 +1 @@
+/obj/item/mod/module - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
module
MOD Module - A special device installed in a MODsuit allowing the suit to do new stuff.
Updates the signal used by active modules to be activated
Var Details
active
Is the module active
active_power_cost
Power use when active
allow_flags
flags that let the module ability be used in odd circumstances
complexity
How much space it takes up in the MOD
cooldown_time
Cooldown after use
cooldown_timer
Timer for the cooldown
device
If we're an active module, what item are we?
icon_monitor
Replaces the sprite for monitor heads
idle_power_cost
Power use when idle
incompatible_modules
What modules are we incompatible with?
mod
Linked MODsuit
mod_color_overide
Does the mod overide the colour in some way?
module_UID
The UID of the module. Don't ask.
module_type
If it's passive, togglable, usable or active
overlay_icon_file
Icon file for the overlay.
overlay_state_active
Overlay given to the user when the module is active
overlay_state_inactive
Overlay given to the user when the module is inactive
overlay_state_use
Overlay given to the user when the module is used, lasts until cooldown finishes
pinned_to
List of UID()s mobs we are pinned to, linked with their action buttons
removable
If it can be removed
tgui_id
ID used by their TGUI
use_mod_colors
Does the overlay use the control unit's colors?
use_power_cost
Power use when used, we call it manually
used_signal
The mouse button needed to use this module
Proc Details
add_module_overlay
Adds the worn overlays to the suit.
add_ui_configuration
Generates an element of the get_configuration list with a display name, type and value
add_ui_data
Adds additional things to the MODsuit ui_data()
check_power
Checks if there is enough power in the suit
configure_edit
Receives configure edits from the TGUI and edits the vars
drain_power
Drains power from the suit charge
dropkey
On drop key, concels a device item.
generate_worn_overlay
Generates an icon to be used for the suit's worn overlays
get_configuration
Creates a list of configuring options for this module
on_activation
Called when the module is activated
on_active_process
Called on the MODsuit's process if it is an active module
on_deactivation
Called when the module is deactivated
on_device_deletion
Called when the device gets deleted on active modules
on_equip
Called when the MODsuit is equipped
on_exit
Called when the device moves to a different place on active modules
on_install
Called from MODsuit's install() proc, so when the module is installed.
on_process
Called on the MODsuit's process
on_select
Called when the module is selected from the TGUI, radial or the action button
on_select_use
Called when an activated module without a device is used
on_special_click
Called when an activated module without a device is active and the user alt/middle-clicks
on_suit_activation
Called when the MODsuit is activated
on_suit_deactivation
Called when the MODsuit is deactivated
on_unequip
Called when the MODsuit is unequipped
on_uninstall
Called from MODsuit's uninstall() proc, so when the module is uninstalled.
on_use
Called when the module is used
pin
Pins the module to the user's action buttons
update_signal
Updates the signal used by active modules to be activated
\ No newline at end of file
diff --git a/obj/item/mod/module/anomaly_locked.html b/obj/item/mod/module/anomaly_locked.html
new file mode 100644
index 00000000000..911ca10313b
--- /dev/null
+++ b/obj/item/mod/module/anomaly_locked.html
@@ -0,0 +1 @@
+/obj/item/mod/module/anomaly_locked - Space Station 13Space Station 13 - Modules - Types — Var Details
anomaly_locked
Anomaly Locked - Causes the module to not function without an anomaly.
\ No newline at end of file
diff --git a/obj/item/mod/module/anomaly_locked/cryogrenade.html b/obj/item/mod/module/anomaly_locked/cryogrenade.html
new file mode 100644
index 00000000000..86b417c46ee
--- /dev/null
+++ b/obj/item/mod/module/anomaly_locked/cryogrenade.html
@@ -0,0 +1 @@
+/obj/item/mod/module/anomaly_locked/cryogrenade - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/mod/module/anomaly_locked/firewall.html b/obj/item/mod/module/anomaly_locked/firewall.html
new file mode 100644
index 00000000000..d0c162005da
--- /dev/null
+++ b/obj/item/mod/module/anomaly_locked/firewall.html
@@ -0,0 +1 @@
+/obj/item/mod/module/anomaly_locked/firewall - Space Station 13Space Station 13 - Modules - Types — Var Details
firewall
Firewall. Deployable dropwall that lights projectiles on fire.
\ No newline at end of file
diff --git a/obj/item/mod/module/anomaly_locked/kinesis.html b/obj/item/mod/module/anomaly_locked/kinesis.html
new file mode 100644
index 00000000000..c697430c7ea
--- /dev/null
+++ b/obj/item/mod/module/anomaly_locked/kinesis.html
@@ -0,0 +1 @@
+/obj/item/mod/module/anomaly_locked/kinesis - Space Station 13Space Station 13 - Modules - Types — Var Details
kinesis
Kinesis - Gives you the ability to move and launch objects.
The special snowflake effect we need to get beams to work
grab_range
Range of the kinesis grab.
grabbed_atom
Atom we grabbed with kinesis.
hit_cooldown
The cooldown between us hitting objects with kinesis.
hit_cooldown_time
Time between us hitting objects with kinesis.
incapacitated_required
Is incapitated required for us to grab a mob?
kinesis_catcher
Our mouse movement catcher.
kinesis_icon
Overlay we add to each grabbed atom.
mob_stun_time
How long we stun a mob for.
pre_pixel_x
The pixel_X of whatever we were grabbing before hand.
pre_pixel_y
The pixel_y of whatever we were grabbing before hand.
soundloop
The sounds playing while we grabbed an object.
stat_required
Stat required for us to grab a mob.
\ No newline at end of file
diff --git a/obj/item/mod/module/anomaly_locked/teleporter.html b/obj/item/mod/module/anomaly_locked/teleporter.html
new file mode 100644
index 00000000000..3fe159702d1
--- /dev/null
+++ b/obj/item/mod/module/anomaly_locked/teleporter.html
@@ -0,0 +1 @@
+/obj/item/mod/module/anomaly_locked/teleporter - Space Station 13Space Station 13 - Modules - Types — Var Details
teleporter
Teleporter - Lets the user teleport to a nearby location.
\ No newline at end of file
diff --git a/obj/item/mod/module/anomaly_locked/teslawall.html b/obj/item/mod/module/anomaly_locked/teslawall.html
new file mode 100644
index 00000000000..8403660f3a2
--- /dev/null
+++ b/obj/item/mod/module/anomaly_locked/teslawall.html
@@ -0,0 +1,3 @@
+/obj/item/mod/module/anomaly_locked/teslawall - Space Station 13Space Station 13 - Modules - Types — Var Details
How much time it takes for charges to recover after they started recharging.
charge_recovery
How much charge is recovered per recovery.
charges
Charges the shield should start with.
lose_multiple_charges
Whether or not this shield can lose multiple charges.
max_charges
Copy paste of shielded code wheeeey
+Max charges of the shield.
recharge_path
The item path to recharge this shield.
recharge_start_delay
The time it takes for the first charge to recover.
shield_icon
The icon_state of the shield.
shield_icon_file
The icon file of the shield.
zap_flags
Teslawall specific variables.
\ No newline at end of file
diff --git a/obj/item/mod/module/armor_booster.html b/obj/item/mod/module/armor_booster.html
new file mode 100644
index 00000000000..c6f5c931021
--- /dev/null
+++ b/obj/item/mod/module/armor_booster.html
@@ -0,0 +1 @@
+/obj/item/mod/module/armor_booster - Space Station 13Space Station 13 - Modules - Types — Var Details
armor_booster
Armor Booster - Grants your suit more armor and speed in exchange for EVA protection. Also acts as a welding screen.
Whether or not this module removes pressure protection.
spaceproofed
List of parts of the suit that are spaceproofed, for giving them back the pressure protection.
speed_added
Speed added to the control unit.
\ No newline at end of file
diff --git a/obj/item/mod/module/ash_accretion.html b/obj/item/mod/module/ash_accretion.html
new file mode 100644
index 00000000000..ad317141c2f
--- /dev/null
+++ b/obj/item/mod/module/ash_accretion.html
@@ -0,0 +1 @@
+/obj/item/mod/module/ash_accretion - Space Station 13Space Station 13 - Modules - Types — Var Details
How many tiles we can travel to max out the armor.
speed_added
Speed added when you're fully covered in ash.
traveled_tiles
How many tiles we traveled through.
\ No newline at end of file
diff --git a/obj/item/mod/module/boot_heating.html b/obj/item/mod/module/boot_heating.html
new file mode 100644
index 00000000000..ccaccdd6374
--- /dev/null
+++ b/obj/item/mod/module/boot_heating.html
@@ -0,0 +1 @@
+/obj/item/mod/module/boot_heating - Space Station 13Space Station 13 - Modules - Types — Var Details
Kinda small comparied to the other descriptions, but its ERT only, so..
Var Details
icon_state
Kinda small comparied to the other descriptions, but its ERT only, so..
\ No newline at end of file
diff --git a/obj/item/mod/module/cbrn.html b/obj/item/mod/module/cbrn.html
new file mode 100644
index 00000000000..96bfe0a4d7c
--- /dev/null
+++ b/obj/item/mod/module/cbrn.html
@@ -0,0 +1 @@
+/obj/item/mod/module/cbrn - Space Station 13Space Station 13 - Modules - Types — Var Details
Original armor of the suit, simpler solution to resolve subtracting infinities
speed_lowered
Speed lowered to the control unit.
\ No newline at end of file
diff --git a/obj/item/mod/module/clamp.html b/obj/item/mod/module/clamp.html
new file mode 100644
index 00000000000..84086d3d6ec
--- /dev/null
+++ b/obj/item/mod/module/clamp.html
@@ -0,0 +1 @@
+/obj/item/mod/module/clamp - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
clamp
Hydraulic Clamp - Lets you pick up and drop crates.
Checks if the target crate has already been dropped by another on_select_use call
Var Details
load_time
Time it takes to load a crate.
max_crates
The max amount of crates you can carry.
stored_crates
The crates stored in the module.
Proc Details
should_cancel_drop
Checks if the target crate has already been dropped by another on_select_use call
\ No newline at end of file
diff --git a/obj/item/mod/module/dispenser.html b/obj/item/mod/module/dispenser.html
new file mode 100644
index 00000000000..c81e94ca415
--- /dev/null
+++ b/obj/item/mod/module/dispenser.html
@@ -0,0 +1 @@
+/obj/item/mod/module/dispenser - Space Station 13Space Station 13 - Modules - Types — Var Details
dispenser
Dispenser - Dispenses an item after a time passes.
\ No newline at end of file
diff --git a/obj/item/mod/module/dna_lock.html b/obj/item/mod/module/dna_lock.html
new file mode 100644
index 00000000000..16970ab3432
--- /dev/null
+++ b/obj/item/mod/module/dna_lock.html
@@ -0,0 +1 @@
+/obj/item/mod/module/dna_lock - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/mod/module/energy_shield.html b/obj/item/mod/module/energy_shield.html
new file mode 100644
index 00000000000..74102d9e960
--- /dev/null
+++ b/obj/item/mod/module/energy_shield.html
@@ -0,0 +1 @@
+/obj/item/mod/module/energy_shield - Space Station 13Space Station 13 - Modules - Types — Var Details
energy_shield
Energy Shield - Gives you a rechargeable energy shield that nullifies attacks.
How much time it takes for charges to recover after they started recharging.
charge_recovery
How much charge is recovered per recovery.
charges
Charges the shield should start with.
lose_multiple_charges
Whether or not this shield can lose multiple charges.
max_charges
Max charges of the shield.
recharge_path
The item path to recharge this shield.
recharge_start_delay
The time it takes for the first charge to recover.
shield_icon
The icon_state of the shield.
shield_icon_file
The icon file of the shield.
\ No newline at end of file
diff --git a/obj/item/mod/module/flashlight.html b/obj/item/mod/module/flashlight.html
new file mode 100644
index 00000000000..5f647b7d104
--- /dev/null
+++ b/obj/item/mod/module/flashlight.html
@@ -0,0 +1 @@
+/obj/item/mod/module/flashlight - Space Station 13Space Station 13 - Modules - Types — Var Details
flashlight
Flashlight - Gives the suit a customizable flashlight.
The cooldown before we can re-activate this after having it forcefully extinguished
base_power
Charge drain per range amount.
max_range
Maximum range we can set.
min_range
Minimum range we can set.
mod_light_power
The light range for the mod
mod_light_range
The light power for the mod
\ No newline at end of file
diff --git a/obj/item/mod/module/holster.html b/obj/item/mod/module/holster.html
new file mode 100644
index 00000000000..4232b6bbb5c
--- /dev/null
+++ b/obj/item/mod/module/holster.html
@@ -0,0 +1 @@
+/obj/item/mod/module/holster - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/mod/module/hydraulic.html b/obj/item/mod/module/hydraulic.html
new file mode 100644
index 00000000000..11a89ac67c1
--- /dev/null
+++ b/obj/item/mod/module/hydraulic.html
@@ -0,0 +1 @@
+/obj/item/mod/module/hydraulic - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/mod/module/jetpack.html b/obj/item/mod/module/jetpack.html
new file mode 100644
index 00000000000..922b7c81578
--- /dev/null
+++ b/obj/item/mod/module/jetpack.html
@@ -0,0 +1,3 @@
+/obj/item/mod/module/jetpack - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
jetpack
Ion Jetpack - Lets the user fly freely through space using battery charge.
Arguments
+stabilize - Should this jetpack be stabalized
\ No newline at end of file
diff --git a/obj/item/mod/module/magboot.html b/obj/item/mod/module/magboot.html
new file mode 100644
index 00000000000..a2e05a54cd2
--- /dev/null
+++ b/obj/item/mod/module/magboot.html
@@ -0,0 +1 @@
+/obj/item/mod/module/magboot - Space Station 13Space Station 13 - Modules - Types — Var Details
magboot
Magnetic Stability - Gives the user a slowdown but makes them negate gravity and be immune to slips.
\ No newline at end of file
diff --git a/obj/item/mod/module/pathfinder.html b/obj/item/mod/module/pathfinder.html
new file mode 100644
index 00000000000..69cf2d0488d
--- /dev/null
+++ b/obj/item/mod/module/pathfinder.html
@@ -0,0 +1 @@
+/obj/item/mod/module/pathfinder - Space Station 13Space Station 13 - Modules - Types — Var Details
pathfinder
Pathfinder - Can fly the suit from a long distance to an implant installed in someone.
\ No newline at end of file
diff --git a/obj/item/mod/module/plate_compression.html b/obj/item/mod/module/plate_compression.html
new file mode 100644
index 00000000000..719c7605893
--- /dev/null
+++ b/obj/item/mod/module/plate_compression.html
@@ -0,0 +1 @@
+/obj/item/mod/module/plate_compression - Space Station 13Space Station 13 - Modules - Types — Var Details
plate_compression
Plate Compression - Compresses the suit to normal size
\ No newline at end of file
diff --git a/obj/item/mod/module/power_kick.html b/obj/item/mod/module/power_kick.html
new file mode 100644
index 00000000000..2669e568dd0
--- /dev/null
+++ b/obj/item/mod/module/power_kick.html
@@ -0,0 +1 @@
+/obj/item/mod/module/power_kick - Space Station 13Space Station 13 - Modules - Types — Var Details
power_kick
Power kick - Lets the user launch themselves at someone to kick them.
\ No newline at end of file
diff --git a/obj/item/mod/module/shinobi_freedom.html b/obj/item/mod/module/shinobi_freedom.html
new file mode 100644
index 00000000000..1d049fa9647
--- /dev/null
+++ b/obj/item/mod/module/shinobi_freedom.html
@@ -0,0 +1 @@
+/obj/item/mod/module/shinobi_freedom - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/mod/module/shinobi_stealth.html b/obj/item/mod/module/shinobi_stealth.html
new file mode 100644
index 00000000000..61a451c13a1
--- /dev/null
+++ b/obj/item/mod/module/shinobi_stealth.html
@@ -0,0 +1 @@
+/obj/item/mod/module/shinobi_stealth - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/mod/module/shinobi_stims.html b/obj/item/mod/module/shinobi_stims.html
new file mode 100644
index 00000000000..01fef1dc9f2
--- /dev/null
+++ b/obj/item/mod/module/shinobi_stims.html
@@ -0,0 +1 @@
+/obj/item/mod/module/shinobi_stims - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/mod/module/sphere_transform.html b/obj/item/mod/module/sphere_transform.html
new file mode 100644
index 00000000000..29d587a4dc1
--- /dev/null
+++ b/obj/item/mod/module/sphere_transform.html
@@ -0,0 +1 @@
+/obj/item/mod/module/sphere_transform - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/mod/module/springlock.html b/obj/item/mod/module/springlock.html
new file mode 100644
index 00000000000..17f14b987be
--- /dev/null
+++ b/obj/item/mod/module/springlock.html
@@ -0,0 +1 @@
+/obj/item/mod/module/springlock - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
springlock
Springlock Mechanism - allows your modsuit to activate faster, but reagents are very dangerous.
Delayed death proc of the suit after the wearer is exposed to reagents
Var Details
activation_step_time_booster
How much faster will your suit deploy?
dont_let_you_come_back
If this is true, the suit will prevent you from retracting for 10 seconds, so an antag can smoke bomb you.
incoming_jumpscare
If this is true, we are about to spring shut on someone, and should not remove the retraction blocking.
nineteen_eighty_seven_edition
Is this the syndicate version, which can be toggled on multitool?
Proc Details
on_activate_spring_block
Signal fired when wearer attempts to activate/deactivate suits
on_wearer_exposed
Signal fired when wearer is exposed to reagents
remove_retraction_block
Removes the retraction blocker from the springlock so long as they are not about to be killed
snap_shut
Delayed death proc of the suit after the wearer is exposed to reagents
\ No newline at end of file
diff --git a/obj/item/mod/module/stealth.html b/obj/item/mod/module/stealth.html
new file mode 100644
index 00000000000..ae562aeee68
--- /dev/null
+++ b/obj/item/mod/module/stealth.html
@@ -0,0 +1 @@
+/obj/item/mod/module/stealth - Space Station 13Space Station 13 - Modules - Types — Var Details
stealth
Cloaking - Lowers the user's visibility, can be interrupted by being touched or attacked.
\ No newline at end of file
diff --git a/obj/item/mod/module/storage.html b/obj/item/mod/module/storage.html
new file mode 100644
index 00000000000..459760c94bb
--- /dev/null
+++ b/obj/item/mod/module/storage.html
@@ -0,0 +1 @@
+/obj/item/mod/module/storage - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/mod/module/t_ray.html b/obj/item/mod/module/t_ray.html
new file mode 100644
index 00000000000..92d740eaff6
--- /dev/null
+++ b/obj/item/mod/module/t_ray.html
@@ -0,0 +1 @@
+/obj/item/mod/module/t_ray - Space Station 13Space Station 13 - Modules - Types — Var Details
t_ray
T-Ray Scan - Scans the terrain for undertile objects.
\ No newline at end of file
diff --git a/obj/item/mod/module/thermal_regulator.html b/obj/item/mod/module/thermal_regulator.html
new file mode 100644
index 00000000000..f4c32961412
--- /dev/null
+++ b/obj/item/mod/module/thermal_regulator.html
@@ -0,0 +1 @@
+/obj/item/mod/module/thermal_regulator - Space Station 13Space Station 13 - Modules - Types — Var Details
thermal_regulator
Thermal Regulator - Regulates the wearer's core temperature.
\ No newline at end of file
diff --git a/obj/item/mod/module/visor.html b/obj/item/mod/module/visor.html
new file mode 100644
index 00000000000..a11791027b1
--- /dev/null
+++ b/obj/item/mod/module/visor.html
@@ -0,0 +1 @@
+/obj/item/mod/module/visor - Space Station 13Space Station 13 - Modules - Types — Var Details
visor
Base Visor - Adds a specific HUD and traits to you.
\ No newline at end of file
diff --git a/obj/item/mod_defib.html b/obj/item/mod_defib.html
new file mode 100644
index 00000000000..279a6dd160d
--- /dev/null
+++ b/obj/item/mod_defib.html
@@ -0,0 +1 @@
+/obj/item/mod_defib - Space Station 13Space Station 13 - Modules - Types — Var Details
Whether or not the paddles are on cooldown. Used for tracking icon states.
Var Details
on_cooldown
Whether or not the paddles are on cooldown. Used for tracking icon states.
\ No newline at end of file
diff --git a/obj/item/mop.html b/obj/item/mop.html
new file mode 100644
index 00000000000..5e2545e8285
--- /dev/null
+++ b/obj/item/mop.html
@@ -0,0 +1 @@
+/obj/item/mop - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/mop/advanced.html b/obj/item/mop/advanced.html
new file mode 100644
index 00000000000..9b8563be8b6
--- /dev/null
+++ b/obj/item/mop/advanced.html
@@ -0,0 +1 @@
+/obj/item/mop/advanced - Space Station 13Space Station 13 - Modules - Types — Var Details
Determins what reagent to use for refilling, just in case someone wanted to make a HOLY MOP OF PURGING
Var Details
refill_enabled
Self-refill toggle for when a janitor decides to mop with something other than water.
refill_rate
Rate per process() tick mop refills itself
refill_reagent
Determins what reagent to use for refilling, just in case someone wanted to make a HOLY MOP OF PURGING
\ No newline at end of file
diff --git a/obj/item/mounted/frame.html b/obj/item/mounted/frame.html
new file mode 100644
index 00000000000..e9c56742367
--- /dev/null
+++ b/obj/item/mounted/frame.html
@@ -0,0 +1 @@
+/obj/item/mounted/frame - Space Station 13Space Station 13 - Modules - Types — Var Details
The requirements for this frame to be placed, uses bit flags
Var Details
brass_sheets_refunded
amount of brass sheets returned upon the frame being wrenched
glass_sheets_refunded
amount of glass sheets returned upon the frame being wrenched
metal_sheets_refunded
amount of metal sheets returned upon the frame being wrenched
mount_requirements
The requirements for this frame to be placed, uses bit flags
\ No newline at end of file
diff --git a/obj/item/mounted/frame/light_fixture.html b/obj/item/mounted/frame/light_fixture.html
new file mode 100644
index 00000000000..71bb6990538
--- /dev/null
+++ b/obj/item/mounted/frame/light_fixture.html
@@ -0,0 +1 @@
+/obj/item/mounted/frame/light_fixture - Space Station 13Space Station 13 - Modules - Types — Var Details
specifies which type of light fixture this frame will build
Var Details
fixture_type
specifies which type of light fixture this frame will build
\ No newline at end of file
diff --git a/obj/item/multitool.html b/obj/item/multitool.html
new file mode 100644
index 00000000000..e65791449c8
--- /dev/null
+++ b/obj/item/multitool.html
@@ -0,0 +1 @@
+/obj/item/multitool - Space Station 13Space Station 13 - Modules - Types — Var Details
multitool
Multitool -- A multitool is used for hacking electronic devices.
Reference to whatever machine is held in the buffer
buffer_uid
Soft-ref for linked stuff. This should be used over the above var.
cd_apc_scan
Cooldown for detecting APCs
\ No newline at end of file
diff --git a/obj/item/nad_scanner.html b/obj/item/nad_scanner.html
new file mode 100644
index 00000000000..16834db164a
--- /dev/null
+++ b/obj/item/nad_scanner.html
@@ -0,0 +1 @@
+/obj/item/nad_scanner - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/necromantic_stone.html b/obj/item/necromantic_stone.html
new file mode 100644
index 00000000000..86450314787
--- /dev/null
+++ b/obj/item/necromantic_stone.html
@@ -0,0 +1 @@
+/obj/item/necromantic_stone - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
List of mobs transformed into skeletons by the stone
additional_thralls_cooldown
Cooldown between uses when living skeletons above max skeletons
heresy
If the stone converts into anime instead of skeletons
max_skeletons
How many skeletons can be converted by the stone at a time
unlimited
If the stone can convert infinite skeletons, bypassing max_skeletons
Proc Details
check_skeletons
Clean the list of active skeletons and check if more can be summoned easily
convert_victim
Mindslave and equip the victim
equip_heresy
Updates the mobs species and gear to anime
equip_skeleton
Udate the mobs species and gear
\ No newline at end of file
diff --git a/obj/item/newspaper.html b/obj/item/newspaper.html
new file mode 100644
index 00000000000..d0fa335d7d6
--- /dev/null
+++ b/obj/item/newspaper.html
@@ -0,0 +1 @@
+/obj/item/newspaper - Space Station 13Space Station 13 - Modules - Types — Var Details
Newspaper
A newspaper displaying the stories of all channels contained within.
Whether the newspaper is rolled or not, making it a deadly weapon.
screen
The current screen to display.
scribble
The contents of a scribble made through pen, if any.
scribble_page
The page of said scribble.
\ No newline at end of file
diff --git a/obj/item/nuclear_rod.html b/obj/item/nuclear_rod.html
new file mode 100644
index 00000000000..2fd77e8d21e
--- /dev/null
+++ b/obj/item/nuclear_rod.html
@@ -0,0 +1 @@
+/obj/item/nuclear_rod - Space Station 13Space Station 13 - Modules - Types — Var Details
Does this rod require a science-upgraded fabricator?
Var Details
adjacent_requirements
What items need to be adjacent to this rod for it to function properly
alpha_rad
How much Alpha Rad is emitted by this rod
beta_rad
How much Beta Rad is emitted by this rod
craftable
Is this rod craftable at all via fabricators, or do they require other means?
current_heat_mod
Holds the current heat mod after durability loss
current_power_mod
Holds the current power mod after durability loss
degradation_speed
How fast does this rod degrade? higher = faster
durability
How much durability is left before the rod is useless
gamma_rad
How much Gamma Rad is emitted by this rod
heat_amount
How much heat does this rod add by default
heat_amp_mod
How does this rod affect its neighbors heating
max_durability
The maximum amount of durability for this rod. Used for percentage calculations
minimum_temp_modifier
Modifies the reactor's minimum operating temperature.
power_amount
How much power does this rod add by default in watts
power_amp_mod
How does this rod affect its neighbors power production
rad_component
holds our component to modify
reactor_overheat_modifier
Modified the reactor's overheat threshold
required_object
The path of the object required to fabricate this rod. leave null for nothing
upgrade_required
Does this rod require a science-upgraded fabricator?
\ No newline at end of file
diff --git a/obj/item/nuclear_rod/fuel.html b/obj/item/nuclear_rod/fuel.html
new file mode 100644
index 00000000000..d2a3fd08833
--- /dev/null
+++ b/obj/item/nuclear_rod/fuel.html
@@ -0,0 +1 @@
+/obj/item/nuclear_rod/fuel - Space Station 13Space Station 13 - Modules - Types — Var Details
the amount of cycles needed to complete enrichment. 30 = ~1 minute
heat_enrich_progress
How far we have progressed from to power enrichment
heat_enrich_result
What heat enrichment results in
heat_enrich_threshold
the total heat amp mod needed to enrich
power_enrich_progress
How far we have progressed from to power enrichment
power_enrich_result
What power enrichment results in
power_enrich_threshold
the total power amp mod needed to enrich
\ No newline at end of file
diff --git a/obj/item/nullrod.html b/obj/item/nullrod.html
new file mode 100644
index 00000000000..e31a01853c4
--- /dev/null
+++ b/obj/item/nullrod.html
@@ -0,0 +1 @@
+/obj/item/nullrod - Space Station 13Space Station 13 - Modules - Types — Var Details
Is this variant selectable through the reskin menu (Set to FALSE for fluff items)
reskinned
Has the null rod been reskinned yet
sanctify_force
Extra 'Holy' burn damage for ERT null rods
variant_icons
Null rod variant icons, used for the radial menu
variant_names
Null rod variant names, used for the radial menu
\ No newline at end of file
diff --git a/obj/item/nullrod/ghanta.html b/obj/item/nullrod/ghanta.html
new file mode 100644
index 00000000000..b9b9b2ad938
--- /dev/null
+++ b/obj/item/nullrod/ghanta.html
@@ -0,0 +1 @@
+/obj/item/nullrod/ghanta - Space Station 13Space Station 13 - Modules - Types — Proc Details
Keeps ghanta from being thrown somewhere all on its lonesome
Proc Details
dropped
Keeps ghanta from being dropped somewhere all on its lonesome
interrupt_interacting
Keeps ghanta from being placed somewhere all on its lonesome
throw_at
Keeps ghanta from being thrown somewhere all on its lonesome
\ No newline at end of file
diff --git a/obj/item/nullrod/vajra.html b/obj/item/nullrod/vajra.html
new file mode 100644
index 00000000000..e7ba7da49fe
--- /dev/null
+++ b/obj/item/nullrod/vajra.html
@@ -0,0 +1 @@
+/obj/item/nullrod/vajra - Space Station 13Space Station 13 - Modules - Types — Proc Details
Make sure the creature trying to pick up vajra is a human with two hands free.
reunite_with_ghanta
Stores Ghanta inside Vajra.
\ No newline at end of file
diff --git a/obj/item/organ.html b/obj/item/organ.html
new file mode 100644
index 00000000000..71fbe9babcd
--- /dev/null
+++ b/obj/item/organ.html
@@ -0,0 +1 @@
+/obj/item/organ - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
What level of upgrades are needed to detect this. Level 0 is default. 1 is hidden from health analysers. 2 is hidden from cyborg analysers, and the body scanner at level 1. 4 is the highest level the body scanner can reach.
Finds a wound datum. wound_to_find should be a typepath, and if exact is FALSE, it will grab subtypes aswell.
Var Details
destroy_on_removal
Should this organ be destroyed on removal?
last_pain_message
What was the last pain message that was sent?
next_pain_time
When can we get the next pain message?
requires_golem_person
When this variable is true, it can only be inserted on the golem species.
requires_machine_person
When this variable is true, it can only be installed on the machine person species.
stealth_level
What level of upgrades are needed to detect this. Level 0 is default. 1 is hidden from health analysers. 2 is hidden from cyborg analysers, and the body scanner at level 1. 4 is the highest level the body scanner can reach.
wound_list
A list of all wounds currently on this organ
Proc Details
add_wound
Wound datum adding helper. Returns the wound datum
get_wound
Finds a wound datum. wound_to_find should be a typepath, and if exact is FALSE, it will grab subtypes aswell.
\ No newline at end of file
diff --git a/obj/item/organ/external.html b/obj/item/organ/external.html
new file mode 100644
index 00000000000..80b6dcfb15a
--- /dev/null
+++ b/obj/item/organ/external.html
@@ -0,0 +1 @@
+/obj/item/organ/external - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The level of false skin used to cover robotic organs on the limb. Updated when too damaged, when installed, or when an organ with it is installed.
fragile
If this organ's max HP is reduced by the IPC magnetic joints implant
has_synthetic_skin
Whether this robotic limb has synthetic skin applied
properly_attached
If the organ has been properly attached or not. Limbs on mobs and robotic ones
synthetic_skin_colour
Stored skin color for synthetic skin
synthetic_skin_identity
Stored facial identity for synthetic skin (head only)
Proc Details
droplimb
DISMEMBERMENT
process
PROCESSING & UPDATING
receive_damage
DAMAGE PROCS
release_restraints
HELPERS
\ No newline at end of file
diff --git a/obj/item/organ/internal.html b/obj/item/organ/internal.html
new file mode 100644
index 00000000000..276ae1524a0
--- /dev/null
+++ b/obj/item/organ/internal.html
@@ -0,0 +1 @@
+/obj/item/organ/internal - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
How much is this organ worth in the xenobiology organ analyzer?
augment_icon
Does this organ actually have a sprite for it being on the arm? And what is the path of it.
augment_state
Does this organ show outside the mob, and what is the icon state?
do_extra_render
Does this organ have a extra render mechanic?
hidden_origin_tech
This contains the hidden RnD levels of an organ to prevent rnd from using it.
hidden_tech_level
What is the level of tech for the hidden tech type?
is_xeno_organ
Does this organ originate from the xenobiology dissection loop?
organ_datums
An associated list of organ datums that this organ has.
organ_quality
what quality is this organ? Only useful for xeno organs
self_augmented_skin_level
Does this organ have augmented skin to apply to the user on install? If so, apply it to the user and remove it.
warning
Does this organ give a warning upon being inserted?
Proc Details
owner_check
Checks that the organ is inside of a host and that they are a valid recipient. Used for abductor glands
robotize
INTERNAL ORGANS DEFINES
\ No newline at end of file
diff --git a/obj/item/organ/internal/alien.html b/obj/item/organ/internal/alien.html
new file mode 100644
index 00000000000..65ba6d83adf
--- /dev/null
+++ b/obj/item/organ/internal/alien.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/alien - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
This adds and removes alien spells upon addition, if a noncarbon tries to do this well... I blame adminbus
Var Details
cargo_profit
Amount of credits that will be received by selling this in the cargo shuttle
hijacked
Has this organ been hijacked? Can hijack via a hemostat
Proc Details
insert
This adds and removes alien spells upon addition, if a noncarbon tries to do this well... I blame adminbus
\ No newline at end of file
diff --git a/obj/item/organ/internal/alien/plasmavessel.html b/obj/item/organ/internal/alien/plasmavessel.html
new file mode 100644
index 00000000000..edc7971df99
--- /dev/null
+++ b/obj/item/organ/internal/alien/plasmavessel.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/alien/plasmavessel - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/organ/internal/appendix/corrupt.html b/obj/item/organ/internal/appendix/corrupt.html
new file mode 100644
index 00000000000..2222bc2bfee
--- /dev/null
+++ b/obj/item/organ/internal/appendix/corrupt.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/appendix/corrupt - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/organ/internal/body_egg/alien_embryo.html b/obj/item/organ/internal/body_egg/alien_embryo.html
new file mode 100644
index 00000000000..cb43eb77e8b
--- /dev/null
+++ b/obj/item/organ/internal/body_egg/alien_embryo.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/body_egg/alien_embryo - Space Station 13Space Station 13 - Modules - Types — Var Details
The random deviation for how long the incubation period per stage will take, ranging from -15% to +15. NOTE! If you have a better name for this var, I'd love it
Used to keep track of when incubation progressed to the next stage
Var Details
incubation_deviation
The random deviation for how long the incubation period per stage will take, ranging from -15% to +15. NOTE! If you have a better name for this var, I'd love it
incubation_time_per_stage
How long it takes for an alien embryo to advance a stage in it's development
last_stage_progress
Used to keep track of when incubation progressed to the next stage
\ No newline at end of file
diff --git a/obj/item/organ/internal/brain.html b/obj/item/organ/internal/brain.html
new file mode 100644
index 00000000000..12df8b867db
--- /dev/null
+++ b/obj/item/organ/internal/brain.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/brain - Space Station 13Space Station 13 - Modules - Types — Var Details
If it's a fake brain without a mob assigned that should still be treated like a real brain.
temporary_damage
Do we have temporary brain max hp reduction?
\ No newline at end of file
diff --git a/obj/item/organ/internal/cyberimp/brain/anti_stam.html b/obj/item/organ/internal/cyberimp/brain/anti_stam.html
new file mode 100644
index 00000000000..3475aede10e
--- /dev/null
+++ b/obj/item/organ/internal/cyberimp/brain/anti_stam.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/cyberimp/brain/anti_stam - Space Station 13Space Station 13 - Modules - Types — Var Details
How much we multiply the owners stamina regen block modifier by.
Var Details
currently_modifying_stamina
Are we currently modifying somoeones stamina regen block modifier? If so, we will want to undo it on removal.
stamina_crit_time_multiplier
How much we multiply the owners stamina regen block modifier by.
\ No newline at end of file
diff --git a/obj/item/organ/internal/cyberimp/brain/sensory_enhancer.html b/obj/item/organ/internal/cyberimp/brain/sensory_enhancer.html
new file mode 100644
index 00000000000..c0cb80f82bb
--- /dev/null
+++ b/obj/item/organ/internal/cyberimp/brain/sensory_enhancer.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/cyberimp/brain/sensory_enhancer - Space Station 13Space Station 13 - Modules - Types — Var Details
The icon state used for the on mob sprite. Default is sandy. Drask and vox have their own unique sprites
Var Details
custom_mob_sprite
The icon state used for the on mob sprite. Default is sandy. Drask and vox have their own unique sprites
\ No newline at end of file
diff --git a/obj/item/organ/internal/cyberimp/chest/bluespace_anchor.html b/obj/item/organ/internal/cyberimp/chest/bluespace_anchor.html
new file mode 100644
index 00000000000..e7c949ea59d
--- /dev/null
+++ b/obj/item/organ/internal/cyberimp/chest/bluespace_anchor.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/cyberimp/chest/bluespace_anchor - Space Station 13Space Station 13 - Modules - Types — Proc Details
Blocks teleports and stuns the would-be-teleportee.
Proc Details
on_jaunt
Prevents a user from entering a jaunt.
on_teleport
Blocks teleports and stuns the would-be-teleportee.
\ No newline at end of file
diff --git a/obj/item/organ/internal/cyberimp/chest/reviver.html b/obj/item/organ/internal/cyberimp/chest/reviver.html
new file mode 100644
index 00000000000..60b92b69a43
--- /dev/null
+++ b/obj/item/organ/internal/cyberimp/chest/reviver.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/cyberimp/chest/reviver - Space Station 13Space Station 13 - Modules - Types — Var Details
The trigger when nuggeted is detected. Resets when revived. Prevents the cooldown from being applied again.
defib_cooldown
How long till we can try to defib again
has_defibed
Have we defibed someone this heal period? If so, do not heal past crit without an upgraded heart, as it is low on juice.
nugget_contingency
This check is an aditional minute delay applied to nuggeted IPCS, so they are not endlessly instantly reviving.
revive_cost
How long the implant will go on cooldown for once the user has exited crit, in seconds.
reviver_cooldown
How long we are on cooldown for
reviving
Are we in the progress of healing the user?
\ No newline at end of file
diff --git a/obj/item/organ/internal/cyberimp/chest/skinmonger.html b/obj/item/organ/internal/cyberimp/chest/skinmonger.html
new file mode 100644
index 00000000000..50e8e08dac5
--- /dev/null
+++ b/obj/item/organ/internal/cyberimp/chest/skinmonger.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/cyberimp/chest/skinmonger - Space Station 13Space Station 13 - Modules - Types — Var Details
Whether regeneration is allowed. This is disabled temporarily by an EMP
Var Details
configured_identity
Normally synthetic skin doesn't have memory of the identity we're disguised as. This implant does, though
initial_surge_used
Flag for tracking if we've used up the implant's initial deployment of skin
regen_cooldown
How long to wait after finding a target body part to replace skin on
regenerating
Whether we're currently regenerating
regeneration_active
Whether regeneration is allowed. This is disabled temporarily by an EMP
\ No newline at end of file
diff --git a/obj/item/organ/internal/cyberimp/eyes/hud.html b/obj/item/organ/internal/cyberimp/eyes/hud.html
new file mode 100644
index 00000000000..2890878ceab
--- /dev/null
+++ b/obj/item/organ/internal/cyberimp/eyes/hud.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/cyberimp/eyes/hud - Space Station 13Space Station 13 - Modules - Types — Proc Details
A list of extension kinds added to the examine text. Things like medical or security records.
Proc Details
insert
A list of extension kinds added to the examine text. Things like medical or security records.
\ No newline at end of file
diff --git a/obj/item/organ/internal/eyes.html b/obj/item/organ/internal/eyes.html
new file mode 100644
index 00000000000..188199a4279
--- /dev/null
+++ b/obj/item/organ/internal/eyes.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/eyes - Space Station 13Space Station 13 - Modules - Types — Var Details
If someone with the colorblind trait who has these eyes will actually be colorblind
Var Details
can_be_colorblind
If someone with the colorblind trait who has these eyes will actually be colorblind
\ No newline at end of file
diff --git a/obj/item/organ/internal/eyes/corrupt.html b/obj/item/organ/internal/eyes/corrupt.html
new file mode 100644
index 00000000000..1b893687baf
--- /dev/null
+++ b/obj/item/organ/internal/eyes/corrupt.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/eyes/corrupt - Space Station 13Space Station 13 - Modules - Types — Var Details
corrupt
Renders you unable to see people who were heretics at the time that this organ is gained
\ No newline at end of file
diff --git a/obj/item/organ/internal/heart/corrupt.html b/obj/item/organ/internal/heart/corrupt.html
new file mode 100644
index 00000000000..241fa401e0b
--- /dev/null
+++ b/obj/item/organ/internal/heart/corrupt.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/heart/corrupt - Space Station 13Space Station 13 - Modules - Types — Var Details
corrupt
Occasionally bombards you with spooky hands and lets everyone hear your pulse.
\ No newline at end of file
diff --git a/obj/item/organ/internal/heart/cursed.html b/obj/item/organ/internal/heart/cursed.html
new file mode 100644
index 00000000000..050e7214c4b
--- /dev/null
+++ b/obj/item/organ/internal/heart/cursed.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/heart/cursed - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Run this just before the shock is applied so we end up with enough blood to revive.
Var Details
in_grace_period
If true, the user doesn't need to pump their heart.
max_shocks_allowed
Max times that the shock will work before it'll just refuse.
revival_grace_period
How long the shock pumps their heart for them.
times_shocked
Times that it's been shocked.
Proc Details
just_before_revive
Run this just before the shock is applied so we end up with enough blood to revive.
\ No newline at end of file
diff --git a/obj/item/organ/internal/heart/demon/slaughter.html b/obj/item/organ/internal/heart/demon/slaughter.html
new file mode 100644
index 00000000000..b6283b45294
--- /dev/null
+++ b/obj/item/organ/internal/heart/demon/slaughter.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/heart/demon/slaughter - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/item/organ/internal/heart/gland.html b/obj/item/organ/internal/heart/gland.html
new file mode 100644
index 00000000000..eb896e1a6b5
--- /dev/null
+++ b/obj/item/organ/internal/heart/gland.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/heart/gland - Space Station 13Space Station 13 - Modules - Types — Var Details
How many uses of this organ remain before it goes dormant; -1 for infinite uses
Var Details
active
Is this organ's effect currently active
cooldown_high
the high-end of random cooldown times between activations
cooldown_low
the low-end of random cooldown times between activations
has_ongoing_effect
Do these organs have an repeatable ongoing effects?
next_activation
what time will the organ activate next
uses
How many uses of this organ remain before it goes dormant; -1 for infinite uses
\ No newline at end of file
diff --git a/obj/item/organ/internal/heart/xenobiology.html b/obj/item/organ/internal/heart/xenobiology.html
new file mode 100644
index 00000000000..8e2deb0bb4c
--- /dev/null
+++ b/obj/item/organ/internal/heart/xenobiology.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/heart/xenobiology - Space Station 13Space Station 13 - Modules - Types — Var Details
Is this organ viable to be randomly inserted instead when the paradox organ is implanted
Var Details
can_paradox
Is this organ viable to be randomly inserted instead when the paradox organ is implanted
\ No newline at end of file
diff --git a/obj/item/organ/internal/heart/xenobiology/paradox.html b/obj/item/organ/internal/heart/xenobiology/paradox.html
new file mode 100644
index 00000000000..10d2e0aee00
--- /dev/null
+++ b/obj/item/organ/internal/heart/xenobiology/paradox.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/heart/xenobiology/paradox - Space Station 13Space Station 13 - Modules - Types — Var Details
holds the list what all the valid hearts that the paradox heart can swap out with
Var Details
acceptable_hearts
holds the list what all the valid hearts that the paradox heart can swap out with
\ No newline at end of file
diff --git a/obj/item/organ/internal/kidneys/xenobiology/metallic.html b/obj/item/organ/internal/kidneys/xenobiology/metallic.html
new file mode 100644
index 00000000000..49b0c68b9c9
--- /dev/null
+++ b/obj/item/organ/internal/kidneys/xenobiology/metallic.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/kidneys/xenobiology/metallic - Space Station 13Space Station 13 - Modules - Types — Var Details
Component that handles the ability to eat precious metals
Var Details
special_tastes
Component that handles the ability to eat precious metals
\ No newline at end of file
diff --git a/obj/item/organ/internal/liver.html b/obj/item/organ/internal/liver.html
new file mode 100644
index 00000000000..2f1a6cb5b2a
--- /dev/null
+++ b/obj/item/organ/internal/liver.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/liver - Space Station 13Space Station 13 - Modules - Types — Var Details
How hard does alcohol hit? This is a multiplier, so 2 would be twice as strong
damaged_ticks
Amount of ticks that we have been at a damaged state. Never goes down.
heal_multiplier
Heal multiplier
tox_damage_immune
Is this liver immune to high toxin damage?
\ No newline at end of file
diff --git a/obj/item/organ/internal/liver/corrupt.html b/obj/item/organ/internal/liver/corrupt.html
new file mode 100644
index 00000000000..854ddab3abe
--- /dev/null
+++ b/obj/item/organ/internal/liver/corrupt.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/liver/corrupt - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/organ/internal/regenerative_core.html b/obj/item/organ/internal/regenerative_core.html
new file mode 100644
index 00000000000..bf894fcfffd
--- /dev/null
+++ b/obj/item/organ/internal/regenerative_core.html
@@ -0,0 +1 @@
+/obj/item/organ/internal/regenerative_core - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Handles applying the core, logging and status/mood events.
Var Details
core_type
Is this a hivelord or legion core?
Proc Details
applyto
Handles applying the core, logging and status/mood events.
\ No newline at end of file
diff --git a/obj/item/painter.html b/obj/item/painter.html
new file mode 100644
index 00000000000..b78844996ce
--- /dev/null
+++ b/obj/item/painter.html
@@ -0,0 +1,9 @@
+/obj/item/painter - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Displays a radial menu for choosing a new painter module.
afterattack__legacy__attackchain
If adjacent, calls paint_atom() on the selected_module, then plays the usesound.
attack_self__legacy__attackchain
Calls pick_color() on the selected_module.
change_module
Changes the selected_module variable to new_module, and updates the painter to reflect the new type.
+
If new_module is already present in module_list, then that will be used instead.
+Otherwise a new datum will be spawned and added to module_list.
+The Name, Description, Icon State, and Item State of the painter will be updated using variables from the new_module datum.
+
Arguments:
+
+
datum/painter/new_module - The new painter datum which will be used.
+
mob/user - The user interacting with the painter.
+
\ No newline at end of file
diff --git a/obj/item/paper.html b/obj/item/paper.html
new file mode 100644
index 00000000000..cf00ab8073a
--- /dev/null
+++ b/obj/item/paper.html
@@ -0,0 +1 @@
+/obj/item/paper - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/paper/tcommskey.html b/obj/item/paper/tcommskey.html
new file mode 100644
index 00000000000..d447c3ecaae
--- /dev/null
+++ b/obj/item/paper/tcommskey.html
@@ -0,0 +1,7 @@
+/obj/item/paper/tcommskey - Space Station 13Space Station 13 - Modules - Types — Proc Details
Telecommunications Password Paper
Piece of paper that spawns with the default link password
+
This is spawned in the CE office and has the default link password
+While convenient, this is not necessary and doesnt matter if it gets lost or destroyed
+Because you can view the password easily by just looking at the core link page
This paper MUST be LateInitialized so the core has a chance to initialize and setup its password
+Otherwise shit breaks BADLY
LateInitialize
Password Paper Late Initializer
+
Since the core was regularly initialized, we can now use the LateInitialize here to grab its password, then put it on paper
\ No newline at end of file
diff --git a/obj/item/pda.html b/obj/item/pda.html
new file mode 100644
index 00000000000..89dbd9ec77b
--- /dev/null
+++ b/obj/item/pda.html
@@ -0,0 +1 @@
+/obj/item/pda - Space Station 13Space Station 13 - Modules - Types — Var Details
The program currently loaded in the PDA (e.g. crew manifest, messanger, main menu).
default_cartridge
Typepath of the ROM cartridge that spawns with this PDA, if any. Gives extra functionality to the PDA.
default_pen
Type of pen this PDA spawns with.
detonate
Can this PDA be blown up?
held_pen
PDA slot for a pen.
honkamt
How many sounds will be replaced with HONKs (when infected with honk.exe)?
id
ID card currently slotted into the PDA.
lock_code
Code to unlock the Syndicate uplink.
mimeamt
How many sounds will be muted (when infected with mime.exe)?
model_name
Stated by some programs, not visible on examination.
owner
Name on the registered owner's ID card.
ownjob
Job on the current ID card.
ownrank
Rank of the current ID card.
pai
PDA slot for a pAI.
programs
Core programs that come with this PDA.
scanmode
Some PDA programs turn the PDA into scanning tool (e.g. gas scaner, medical analyzer).
silent
Is the PDA muted?
silicon_pda
Is this a silicon's internal PDA?
ttone
This PDA's ringtone.
\ No newline at end of file
diff --git a/obj/item/picket_sign.html b/obj/item/picket_sign.html
new file mode 100644
index 00000000000..54934358f12
--- /dev/null
+++ b/obj/item/picket_sign.html
@@ -0,0 +1 @@
+/obj/item/picket_sign - Space Station 13Space Station 13 - Modules - Types — Var Details
The cooldown tracking when we can next wave the sign
Var Details
label
What does the sign say?
wave_cooldown
The cooldown tracking when we can next wave the sign
\ No newline at end of file
diff --git a/obj/item/pinpointer/crew.html b/obj/item/pinpointer/crew.html
new file mode 100644
index 00000000000..43b386e87b1
--- /dev/null
+++ b/obj/item/pinpointer/crew.html
@@ -0,0 +1 @@
+/obj/item/pinpointer/crew - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/pinpointer/crew/contractor.html b/obj/item/pinpointer/crew/contractor.html
new file mode 100644
index 00000000000..f111766cbde
--- /dev/null
+++ b/obj/item/pinpointer/crew/contractor.html
@@ -0,0 +1 @@
+/obj/item/pinpointer/crew/contractor - Space Station 13Space Station 13 - Modules - Types — Var Details
The first person to have used the item. If this is set already, no one else can use it.
Var Details
min_range
The minimum range for the pinpointer to function properly.
owner
The first person to have used the item. If this is set already, no one else can use it.
\ No newline at end of file
diff --git a/obj/item/pipe.html b/obj/item/pipe.html
new file mode 100644
index 00000000000..1dad183d110
--- /dev/null
+++ b/obj/item/pipe.html
@@ -0,0 +1 @@
+/obj/item/pipe - Space Station 13Space Station 13 - Modules - Types — Var Details
The type of the pipe that will be created when this is wrenched down
Var Details
flipped
Will the constructed pipe be flipped
label
The label that will be put on the constructed pipe when this is wrenched down
makes_type
The type of the pipe that will be created when this is wrenched down
\ No newline at end of file
diff --git a/obj/item/pizzabox.html b/obj/item/pizzabox.html
new file mode 100644
index 00000000000..320f9f960ac
--- /dev/null
+++ b/obj/item/pizzabox.html
@@ -0,0 +1 @@
+/obj/item/pizzabox - Space Station 13Space Station 13 - Modules - Types — Var Details
The name that shows on the box lid, describing the pizza type.
pizza_type
The type of pizza that's spawned in the box.
\ No newline at end of file
diff --git a/obj/item/pizzabox/pizza_bomb.html b/obj/item/pizzabox/pizza_bomb.html
new file mode 100644
index 00000000000..ef510cd6b6c
--- /dev/null
+++ b/obj/item/pizzabox/pizza_bomb.html
@@ -0,0 +1 @@
+/obj/item/pizzabox/pizza_bomb - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/plant_analyzer.html b/obj/item/plant_analyzer.html
new file mode 100644
index 00000000000..d24302048f3
--- /dev/null
+++ b/obj/item/plant_analyzer.html
@@ -0,0 +1 @@
+/obj/item/plant_analyzer - Space Station 13Space Station 13 - Modules - Types — Var Details
Shows plant stats when true, shows only basic info when set to false
Var Details
high_details_mode
Shows plant stats when true, shows only basic info when set to false
\ No newline at end of file
diff --git a/obj/item/pneumatic_cannon.html b/obj/item/pneumatic_cannon.html
new file mode 100644
index 00000000000..90879b88d12
--- /dev/null
+++ b/obj/item/pneumatic_cannon.html
@@ -0,0 +1,7 @@
+/obj/item/pneumatic_cannon - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
How many moles of gas is drawn from a tank's pressure to fire
loaded_items
The items loaded into the cannon that will be fired out
loaded_weight_class
The weight of items currently in the cannon
max_pressure_setting
In case we want a really strong cannon
max_weight_class
The max weight of items that can fit into the cannon
pressure_setting
How powerful the cannon is - higher pressure = more gas but more powerful throws
requires_tank
If the cannon needs a tank at all
tank
The gas tank that is drawn from to fire things
Proc Details
load_item
Arguments:
+
+
I - item to load into the cannon
+
user - the person loading the item in
+
Returns:
+
True if item was loaded, false if it failed
+
\ No newline at end of file
diff --git a/obj/item/ppp_processor.html b/obj/item/ppp_processor.html
new file mode 100644
index 00000000000..b0db019a39c
--- /dev/null
+++ b/obj/item/ppp_processor.html
@@ -0,0 +1 @@
+/obj/item/ppp_processor - Space Station 13Space Station 13 - Modules - Types — Var Details
Are we possibly processing particularly powerful packets?
Var Details
clouds_processed
How many clouds have been processed?
fully_processed_particulate
Have we used it in hand to fully process the particulate and eject the canisters?
me_cro_wah_vey
The soundloop we use.
presently_processing_particular_particultate
Are we possibly processing particularly powerful packets?
\ No newline at end of file
diff --git a/obj/item/proteon_orb.html b/obj/item/proteon_orb.html
new file mode 100644
index 00000000000..d8241f4ab01
--- /dev/null
+++ b/obj/item/proteon_orb.html
@@ -0,0 +1 @@
+/obj/item/proteon_orb - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/queen_bee.html b/obj/item/queen_bee.html
new file mode 100644
index 00000000000..cfcf61eb6bf
--- /dev/null
+++ b/obj/item/queen_bee.html
@@ -0,0 +1 @@
+/obj/item/queen_bee - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/radio.html b/obj/item/radio.html
new file mode 100644
index 00000000000..0b468ec0e69
--- /dev/null
+++ b/obj/item/radio.html
@@ -0,0 +1 @@
+/obj/item/radio - Space Station 13Space Station 13 - Modules - Types — Var Details
Whether the radio will broadcast stuff it hears, out over the radio
canhear_range
the range which mobs can hear this radio from
channels
see communications.dm for full list. First channes is a "default" for :h
disable_timer
How many times this is disabled by EMPs
freerange
Whether the radio can be re-tuned to restricted channels it has no key for
freqlock
Whether the radio is able to have its primary frequency changed. Used for radios with weird primary frequencies, like DS, syndi, etc
has_loudspeaker
Whether loudspeaker can be toggled by the user
listening
Whether the radio is currently receiving
loudspeaker
Whether the radio broadcasts to everyone within a few tiles, or not
on
boolean for radio enabled or not
radio_enable_timer
A timer that, when going off, will turn this radio on again
syndiekey
Holder for the syndicate encryption key if present
traitor_frequency
tune to frequency to unlock traitor supplies
\ No newline at end of file
diff --git a/obj/item/radio/intercom.html b/obj/item/radio/intercom.html
new file mode 100644
index 00000000000..daafdbb51c9
--- /dev/null
+++ b/obj/item/radio/intercom.html
@@ -0,0 +1,4 @@
+/obj/item/radio/intercom - Space Station 13Space Station 13 - Modules - Types — Proc Details
Proc called whenever the intercom's local powernet loses or gains power. Responsible for setting the on variable and calling update_icon().
Proc Details
crowbar_act
Allows us to track who spams all these on if they do.
local_powernet_check
Proc called whenever the intercom's local powernet loses or gains power. Responsible for setting the on variable and calling update_icon().
+
Normally called after the intercom's local powernet sends the COMSIG_POWERNET_POWER_CHANGE signal, but it can also be called directly.
+Arguments:
+
source - the area that just had a power change.
\ No newline at end of file
diff --git a/obj/item/radio/phone_receiver.html b/obj/item/radio/phone_receiver.html
new file mode 100644
index 00000000000..5d6cd33f458
--- /dev/null
+++ b/obj/item/radio/phone_receiver.html
@@ -0,0 +1 @@
+/obj/item/radio/phone_receiver - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/rcd.html b/obj/item/rcd.html
new file mode 100644
index 00000000000..d49a0c64ac8
--- /dev/null
+++ b/obj/item/rcd.html
@@ -0,0 +1,34 @@
+/obj/item/rcd - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
If the airlock will be created with glass so it can be seen through.
allowed_targets
A list of valid atoms that RCDs can target. Clicking on an atom with an RCD which is not in this list, will do nothing.
can_rwall
If the RCD can deconstruct reinforced walls.
door_accesses_list
An associative list containing all station accesses. Includes their name and access number. For use with the UI.
door_name
The name that newly build airlocks will receive.
door_type
The current airlock type that will be build.
door_types_ui_list
An associative list containing an airlock's name, type path, and image. For use with the UI.
electrochromic
If the glass airlock is polarized.
locked
Is the RCD's airlock access selection menu locked?
matter
The current amount of matter stored.
max_matter
The max amount of matter that can be stored.
mode
The RCD's current build mode.
no_ammo_message
No ammo warning
one_access
If this is TRUE, any airlocks that gets built will require only ONE of the checked accesses. If FALSE, it will require ALL of them.
possible_actions
The list of potential RCD actions.
rcd_door_types
An associative list of airlock type paths as keys, and their names as values.
selected_accesses
A list of access numbers which have been checked off by the user in the UI.
spark_system
The spark system used to create sparks when the user interacts with the RCD.
ui_tab
Which airlock tab the UI is currently set to display.
Proc Details
check_menu
Runs a series of pre-checks before opening the radial menu to the user.
+
Arguments:
+
+
user - the mob trying to open the radial menu.
+
detonate_pulse
Called from malf AI's "detonate RCD" ability.
+
Creates a delayed explosion centered around the RCD.
detonate_pulse_explode
Called in /obj/item/rcd/proc/detonate_pulse() via callback.
get_airlock_image
Creates and returns a base64 icon of the given airlock_type.
+
This is used for airlock icon previews in the UI.
+
Arugments:
+
+
airlock_type - an airlock typepath.
+
load
Tries to load ammo into an RCD, borgs will not use this.
+Arguments:
+
+
cart - the compressed matter catridge to insert
+
user - the user to display the chat messages to
+
radial_menu
Creates and displays a radial menu to a user when they trigger the attack_self of the RCD.
+
Arguments:
+
+
user - the mob trying to open the RCD radial.
+
tool_use_check
Called in each of the four build modes before an object gets build. Makes sure there is enough matter to build the object.
+
Arguments:
+
+
amount - an amount of matter to check for
+
ui_act_modal
Called in ui_act() to process modal actions
+
Arguments:
+
+
action - The action passed by tgui
+
params - The params passed by tgui
+
use
Attempts to use matter from the RCD.
+
Arguments:
+
+
amount - the amount of matter to use
+
\ No newline at end of file
diff --git a/obj/item/rcd/borg/syndicate.html b/obj/item/rcd/borg/syndicate.html
new file mode 100644
index 00000000000..fac08668dac
--- /dev/null
+++ b/obj/item/rcd/borg/syndicate.html
@@ -0,0 +1 @@
+/obj/item/rcd/borg/syndicate - Space Station 13Space Station 13 - Modules - Types — Var Details
A multipler which is applied to matter amount checks. A higher number means more power usage per RCD usage.
Var Details
power_use_multiplier
A multipler which is applied to matter amount checks. A higher number means more power usage per RCD usage.
\ No newline at end of file
diff --git a/obj/item/rcs.html b/obj/item/rcs.html
new file mode 100644
index 00000000000..c9b7f3e91f0
--- /dev/null
+++ b/obj/item/rcs.html
@@ -0,0 +1,5 @@
+/obj/item/rcs - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Rapid Crate Sender (RCS)
Used to teleport crates and closets to cargo telepads.
+
If emagged, it allows you to teleport crates to a random location, and also teleport yourself while inside a locker.
Defaults to station Z level, with a 50% chance of being a different one.
+Alternatives are space z levels with ruins.
+Coordinates are constrained within 50-200 x & y.
\ No newline at end of file
diff --git a/obj/item/reagent_containers/borghypo.html b/obj/item/reagent_containers/borghypo.html
new file mode 100644
index 00000000000..f74a01abda0
--- /dev/null
+++ b/obj/item/reagent_containers/borghypo.html
@@ -0,0 +1 @@
+/obj/item/reagent_containers/borghypo - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Overriding because this is not really a reagent container
Var Details
charge_cost
Amount of charge that we will deduct from cell on each successful refill_hypo()
charge_tick
Tracking for how long we didn't make a refill. Refills on every (charge_tick > refill_delay) tick
cyborg
Cyborg that our module is attached to
penetrate_thick
Can the autohypo inject through thick materials?
play_sound
if true - will play a sound on use
reagent_ids
reagents that we are able to dispense
reagent_ids_emagged
reagents that we will be able to dispense when someone emaggs us
reagent_selected
reagent that we will transfer on hypo use
refill_delay
Delay in ticks we apply before refilling our hypo
Proc Details
build_reagent_description
Overriding because this is not really a reagent container
\ No newline at end of file
diff --git a/obj/item/reagent_containers/cooking.html b/obj/item/reagent_containers/cooking.html
new file mode 100644
index 00000000000..e8afe5c61d1
--- /dev/null
+++ b/obj/item/reagent_containers/cooking.html
@@ -0,0 +1,19 @@
+/obj/item/reagent_containers/cooking - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
cooking
Cooking containers are used in ovens, fryers and so on, to hold multiple
+ingredients for a recipe. They interact with the cooking process, and link
+up with the cooking code dynamically. Originally sourced from the Aurora,
+heavily retooled to actually work with PCWJ Holder for a portion of an
+incomplete meal, allows a cook to temporarily offload recipes to work on
+things factory-style, eliminating the need for 20 plates to get things done
+fast.
Attempt to progress the known recipes in the tracker with the item last used
+on the container. Note that this is the same proc used for both steps like
+adding items to a container, as well as cooking the container in a cooking
+machine, such as an oven or stove. So in some cases used will be something
+like a food item, and in other cases used will be an
+/obj/machinery/cooking.
Var Details
claimed
The autochef which has claimed this container.
cooker_data
Record of what cooking has been done on this food.
lip
Icon state of the lip layer of the object
mini
Whether the container is in "mini" mode, that is, placed on a cooking machine and rendered
+with its smaller icons
preposition
Preposition for human-readable recipe e.g. "in a pain", "on a grill".
removal_penalty
A flat quality reduction for removing an unfinished recipe from the container.
Attempt to progress the known recipes in the tracker with the item last used
+on the container. Note that this is the same proc used for both steps like
+adding items to a container, as well as cooking the container in a cooking
+machine, such as an oven or stove. So in some cases used will be something
+like a food item, and in other cases used will be an
+/obj/machinery/cooking.
\ No newline at end of file
diff --git a/obj/item/reagent_containers/dropper.html b/obj/item/reagent_containers/dropper.html
new file mode 100644
index 00000000000..e49b66983fd
--- /dev/null
+++ b/obj/item/reagent_containers/dropper.html
@@ -0,0 +1 @@
+/obj/item/reagent_containers/dropper - Space Station 13Space Station 13 - Modules - Types — Var Details
How long it takes to drip the contents into someone's eyes.
Var Details
mob_drip_delay
How long it takes to drip the contents into someone's eyes.
\ No newline at end of file
diff --git a/obj/item/reagent_containers/hypospray.html b/obj/item/reagent_containers/hypospray.html
new file mode 100644
index 00000000000..9af534c8a3c
--- /dev/null
+++ b/obj/item/reagent_containers/hypospray.html
@@ -0,0 +1 @@
+/obj/item/reagent_containers/hypospray - Space Station 13Space Station 13 - Modules - Types — Var Details
if TRUE, the hypospray will always succeed at injecting an organic limb regardless of protective clothing or traits such as the thick skin gene (except for TRAIT_HYPOSPRAY_IMMUNE).
If TRUE, the hypospray will reject any chemicals not on the safe_chem_list.
Var Details
ignore_hypospray_immunity
If TRUE, the hypospray isn't blocked by suits with TRAIT_HYPOSPRAY_IMMUNE.
penetrate_everything
if TRUE, the hypospray will always succeed at injecting an organic limb regardless of protective clothing or traits such as the thick skin gene (except for TRAIT_HYPOSPRAY_IMMUNE).
penetrate_thick
If TRUE, the hypospray can inject any clothing without TRAIT_HYPOSPRAY_IMMUNE.
safe_chem_list
List of reagents that are allowed to go into a hypospray with active safeties.
safety_hypo
If TRUE, the hypospray will reject any chemicals not on the safe_chem_list.
\ No newline at end of file
diff --git a/obj/item/reagent_containers/syringe.html b/obj/item/reagent_containers/syringe.html
new file mode 100644
index 00000000000..42d39f2a7c1
--- /dev/null
+++ b/obj/item/reagent_containers/syringe.html
@@ -0,0 +1 @@
+/obj/item/reagent_containers/syringe - Space Station 13Space Station 13 - Modules - Types — Var Details
If this variable is true, the syringe will work through hardsuits / modsuits / biosuits.
Var Details
penetrates_thick
If this variable is true, the syringe will work through hardsuits / modsuits / biosuits.
\ No newline at end of file
diff --git a/obj/item/relic.html b/obj/item/relic.html
new file mode 100644
index 00000000000..5343ba4b7cc
--- /dev/null
+++ b/obj/item/relic.html
@@ -0,0 +1 @@
+/obj/item/relic - Space Station 13Space Station 13 - Modules - Types — Var Details
Mob this object should spawn if [STRANGEOBJECT_FUNCTION_PET_SPAWN] is picked.
real_name
The name this object will get when it is discovered
revealed
Has this object been discovered?
\ No newline at end of file
diff --git a/obj/item/remote_ai_upload.html b/obj/item/remote_ai_upload.html
new file mode 100644
index 00000000000..793bd6953e8
--- /dev/null
+++ b/obj/item/remote_ai_upload.html
@@ -0,0 +1 @@
+/obj/item/remote_ai_upload - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/resonator.html b/obj/item/resonator.html
new file mode 100644
index 00000000000..7e1a1b24cdc
--- /dev/null
+++ b/obj/item/resonator.html
@@ -0,0 +1 @@
+/obj/item/resonator - Space Station 13Space Station 13 - Modules - Types — Var Details
How efficient it is in manual mode. Yes, we lower the damage cuz it's gonna be used for mobhunt
Var Details
adding_failure
the number that is added to the failure_prob, which is the probability of whether it will spread or not
fieldlimit
the number of fields the resonator is allowed to have at once
fields
the list of currently active fields from this resonator
mode
the mode of the resonator; has three modes: auto (1), manual (2), and matrix (3)
quick_burst_mod
How efficient it is in manual mode. Yes, we lower the damage cuz it's gonna be used for mobhunt
\ No newline at end of file
diff --git a/obj/item/restraints.html b/obj/item/restraints.html
new file mode 100644
index 00000000000..9a57a543b6e
--- /dev/null
+++ b/obj/item/restraints.html
@@ -0,0 +1 @@
+/obj/item/restraints - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/restraints/handcuffs.html b/obj/item/restraints/handcuffs.html
new file mode 100644
index 00000000000..5fd1d3b8987
--- /dev/null
+++ b/obj/item/restraints/handcuffs.html
@@ -0,0 +1 @@
+/obj/item/restraints/handcuffs - Space Station 13Space Station 13 - Modules - Types — Var Details
Trash item generated when cuffs are broken (for disposable cuffs).
Var Details
cuffsound
Sound made when cuffing someone.
ignoresClumsy
If set to TRUE, people with the TRAIT_CLUMSY won't cuff themselves when trying to cuff others.
trashtype
Trash item generated when cuffs are broken (for disposable cuffs).
\ No newline at end of file
diff --git a/obj/item/restraints/legcuffs/beartrap.html b/obj/item/restraints/legcuffs/beartrap.html
new file mode 100644
index 00000000000..f2848613b1e
--- /dev/null
+++ b/obj/item/restraints/legcuffs/beartrap.html
@@ -0,0 +1 @@
+/obj/item/restraints/legcuffs/beartrap - Space Station 13Space Station 13 - Modules - Types — Var Details
Do we want the beartrap not to make a visable message on arm? Use when a beartrap is applied by something else.
Var Details
silent_arming
Do we want the beartrap not to make a visable message on arm? Use when a beartrap is applied by something else.
\ No newline at end of file
diff --git a/obj/item/restraints/legcuffs/bola.html b/obj/item/restraints/legcuffs/bola.html
new file mode 100644
index 00000000000..4d9d15cc543
--- /dev/null
+++ b/obj/item/restraints/legcuffs/bola.html
@@ -0,0 +1 @@
+/obj/item/restraints/legcuffs/bola - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
if it returns TRUE, it breaks the loop, returning FALSE, continues the loop
Var Details
knockdown_duration
the duration of the knockdown in seconds
max_range
the max range after the bola fully spins up. if your value for this isn't divisable by the value of max_spins it will be lower than the max
max_speed
the max speed after the bola fully spins up. if your value for this isn't divisable by the value of max_spins it will be lower than the max
max_spins
the number of spins till the bola gets the maximum throw distance. each spin takes 1 second
reuseable
is the bola reuseable?
spinning
are we currently spinning the bola
Proc Details
can_spin_check
if it returns TRUE, it breaks the loop, returning FALSE, continues the loop
\ No newline at end of file
diff --git a/obj/item/robot_module.html b/obj/item/robot_module.html
new file mode 100644
index 00000000000..6bf47833d2e
--- /dev/null
+++ b/obj/item/robot_module.html
@@ -0,0 +1,31 @@
+/obj/item/robot_module - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Called when the robot owner of this module has their power cell replaced.
Var Details
basic_modules
A list of module-specific, non-emag modules the borg will gain when this module is chosen.
channels
Radio channels the module owner has access to.
custom_removals
Special items that are able to be removed from the robot owner via crowbar.
emag_modules
A list of modules the robot gets when emagged.
emag_override_modules
A list of modules the robot gets when either emagged or Safety Overridden.
malf_modules
A list of modules that the robot gets when malf AI buys it.
malfhacked
Has the AI hacked the borg module, allowing access to the malf AI exclusive item.
material_storages
A list of all "material stacks", i.e. metal, glass, and reinforced glass
module_actions
Special actions this module will gain when chosen such as meson vision, or thermal vision.
module_type
For icon usage.
modules
A list of all currently usable and created modules the robot currently has access too.
override_modules
A list of modules the robot gets when Safety Overridden.
special_rechargables
A list of modules that require special recharge handling. Examples include things like flashes, sprays and welding tools.
storages
A list of all "energy stacks", i.e rods, brute kits, splints, etc.
subsystems
Available tools given in the verb tab such as a crew monitor, or power monitor.
Proc Details
add_armor
Adds armor to a cyborg. Normaly resets it to 0 across the board, unless the module has an armor defined.
add_languages
Adds all of the languages this module is suppose to know and/or speak.
+
Arugments:
+
+
R - the owner of this module.
+
add_module
Adds the item I to our modules list, and sets up an /datum/robot_storage/energy if its a stack.
+
Arugments:
+
+
I - the item to add to our modules.
+
requires_rebuild - if adding this item requires rebuild_modules() to be called.
+
add_subsystems_and_actions
Adds anything in subsystems to the robot's verbs, and grants any actions that are in module_actions.
get_or_create_estorage
Returns a robot_energy_strage datum of type storage_type. If one already exists, it returns that one, otherwise it create a new one.
+
Arguments:
+
+
storage_type - the subtype of datum/robot_storage to fetch or create.
+
handle_death
Overriden for specific modules if they have storage items. These should have their contents emptied out onto the floor.
rebuild_modules
Builds the usable module list from the modules we have in basic_modules, override_modules, emag_modules, emag_override_modules and malf_modules
recharge_consumables
Handles the recharging of all borg stack items and any items which are in the special_rechargables list.
+
Arguments:
+
+
R - the owner of this module.
+
coeff - a coefficient which can be used to modify the recharge rate of consumables.
+
remove_item_from_lists
Searches through the various module lists for the given item_type, deletes and removes the item from all supplied lists, if the item is found.
+
NOTE: be careful with using this proc, as it irreversibly removes entries from a borg's module list.
+This is safe to do with upgrades because the only way to revert upgrades currently is either to rebuild the borg or use a reset module, which allows the lists to regenerate.
+
Arugments:
+
+
item_type - the type of item to search for. Also accepts objects themselves.
+
remove_subsystems_and_actions
Removes any verbs from the robot that are in subsystems, and removes any actions that are in module_actions.
unemag
Called when the robot owner of this module has the unemag() proc called on them, which is only via admin means.
+
Deletes this module's emag items, and recreates them.
update_cells
Called when the robot owner of this module has their power cell replaced.
+
Changes the linked power cell for module items to the newly inserted cell, or to null.
+Arguments:
+
+
unlink_cell - If TRUE, set the item's power cell variable to null rather than linking it to a new one.
+
\ No newline at end of file
diff --git a/obj/item/robot_module/janitor.html b/obj/item/robot_module/janitor.html
new file mode 100644
index 00000000000..69e91ae08c7
--- /dev/null
+++ b/obj/item/robot_module/janitor.html
@@ -0,0 +1,5 @@
+/obj/item/robot_module/janitor - Space Station 13Space Station 13 - Modules - Types — Proc Details
Proc called after the janitor cyborg has moved, in order to clean atoms at it's new location.
Proc Details
on_cyborg_move
Proc called after the janitor cyborg has moved, in order to clean atoms at it's new location.
+
Arguments:
+
+
mob/living/silicon/robot/R - The cyborg who moved.
+
\ No newline at end of file
diff --git a/obj/item/rpd.html b/obj/item/rpd.html
new file mode 100644
index 00000000000..d451ac029a4
--- /dev/null
+++ b/obj/item/rpd.html
@@ -0,0 +1,7 @@
+/obj/item/rpd - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Automatically wrenches down an atmos device/pipe if the auto_wrench_toggle is TRUE.
+Arguments:
Var Details
iconrotation
Used to orient icons and pipes.
mode
Disposals, atmospherics, etc.
pipe_category
For TGUI menus, this is a subtype of pipes e.g. scrubbers pipes, devices.
ranged
Can this RPD lay pipe on non-adjacent turfs?
spawndelay
Cooldown on RPD use.
walldelay
Time taken to drill a borehole before the pipe can be laid.
whatdpipe
What kind of disposals pipe are we trying to lay?
whatpipe
What kind of atmos pipe are we trying to lay?
whatttube
What kind of transit tube are we trying to lay?
Proc Details
automatic_wrench_down
Automatically wrenches down an atmos device/pipe if the auto_wrench_toggle is TRUE.
+Arguments:
+
+
user - the user of the RPD.
+
target - the pipe/device/tube being placed by the RPD.
+
\ No newline at end of file
diff --git a/obj/item/salvage.html b/obj/item/salvage.html
new file mode 100644
index 00000000000..4857250907d
--- /dev/null
+++ b/obj/item/salvage.html
@@ -0,0 +1 @@
+/obj/item/salvage - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/sample/print.html b/obj/item/sample/print.html
new file mode 100644
index 00000000000..1df76f74dfe
--- /dev/null
+++ b/obj/item/sample/print.html
@@ -0,0 +1 @@
+/obj/item/sample/print - Space Station 13Space Station 13 - Modules - Types — Var Details
if true, the print was pulled instead of being manually pressed.
Var Details
pulled
if true, the print was pulled instead of being manually pressed.
\ No newline at end of file
diff --git a/obj/item/scratch.html b/obj/item/scratch.html
new file mode 100644
index 00000000000..feebd213525
--- /dev/null
+++ b/obj/item/scratch.html
@@ -0,0 +1 @@
+/obj/item/scratch - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/seeds.html b/obj/item/seeds.html
new file mode 100644
index 00000000000..7689cb7187c
--- /dev/null
+++ b/obj/item/seeds.html
@@ -0,0 +1 @@
+/obj/item/seeds - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
If weed chance passes, this many weeds sprout during growth
Proc Details
adjust_yield
Setter procs
\ No newline at end of file
diff --git a/obj/item/shield/mirror.html b/obj/item/shield/mirror.html
new file mode 100644
index 00000000000..192f2724ec7
--- /dev/null
+++ b/obj/item/shield/mirror.html
@@ -0,0 +1,10 @@
+/obj/item/shield/mirror - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Projectiles:
+If you have been hit by a projectile, the 'threshold' will be set depending on the damage type.
+By default, energy weapons have a 70% chance of being reflected, so you're going to want to use ballistics against mirror shields. (Reflection is calculated beforehand in [/mob/living/carbon/human/bullet_act])
+For every point of damage above the threshold, the shield will have a 3% chance to shatter. (Up to a maximum of 75%)
+If a ballistic projectile doesn't shatter the shield, it will move on to the melee section.
+
Melee and blocked projectiles:
+Melee attacks and bullets have a 50|50 chance of being blocked by the mirror shield. (Based on the 'block_chance' variable)
+If they are blocked, and the shield has an illusion charge, an illusion will be spawned at src.
+The illusion has a 60% chance to be hostile and attack non-cultists, and a 40% chance to just run away from the user.
\ No newline at end of file
diff --git a/obj/item/shield/v1_arm.html b/obj/item/shield/v1_arm.html
new file mode 100644
index 00000000000..d700f8ef0d8
--- /dev/null
+++ b/obj/item/shield/v1_arm.html
@@ -0,0 +1 @@
+/obj/item/shield/v1_arm - Space Station 13Space Station 13 - Modules - Types — Var Details
The cap of the reflected damage. Damage will not be increased above 50, however it will not be reduced to 50 either.
Var Details
reflect_damage_boost
The damage the reflected projectile will be increased by
reflect_damage_cap
The cap of the reflected damage. Damage will not be increased above 50, however it will not be reduced to 50 either.
\ No newline at end of file
diff --git a/obj/item/shockpaddles.html b/obj/item/shockpaddles.html
new file mode 100644
index 00000000000..3c523951c4b
--- /dev/null
+++ b/obj/item/shockpaddles.html
@@ -0,0 +1 @@
+/obj/item/shockpaddles - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Check to see if we should abort this before we've even gotten started
Var Details
defib
Active defib this is connected to.
on_cooldown
Whether or not the paddles are on cooldown. Used for tracking icon states.
revivecost
Amount of power used on a shock.
Proc Details
on_application
Check to see if we should abort this before we've even gotten started
\ No newline at end of file
diff --git a/obj/item/shuriken_printer.html b/obj/item/shuriken_printer.html
new file mode 100644
index 00000000000..2f8a0802dfa
--- /dev/null
+++ b/obj/item/shuriken_printer.html
@@ -0,0 +1 @@
+/obj/item/shuriken_printer - Space Station 13Space Station 13 - Modules - Types — Var Details
What is the current number of energy shurikens the printer is holding?
fabrication_timer
Timer used to print stars
maximum_stars
What is the maximum number of energy shurikens the printer can hold?
printing_time
How long the cooldown is to print more shurikens
\ No newline at end of file
diff --git a/obj/item/slapper.html b/obj/item/slapper.html
new file mode 100644
index 00000000000..41d8eaad632
--- /dev/null
+++ b/obj/item/slapper.html
@@ -0,0 +1 @@
+/obj/item/slapper - Space Station 13Space Station 13 - Modules - Types — Var Details
How many smaller table smacks we can do before we're out
Var Details
table_smacks_left
How many smaller table smacks we can do before we're out
\ No newline at end of file
diff --git a/obj/item/slime_extract.html b/obj/item/slime_extract.html
new file mode 100644
index 00000000000..9fcb2c90217
--- /dev/null
+++ b/obj/item/slime_extract.html
@@ -0,0 +1 @@
+/obj/item/slime_extract - Space Station 13Space Station 13 - Modules - Types — Var Details
The mob who last injected the extract with plasma, water or blood. Used for logging.
Var Details
Uses
Uses before it goes inert
associated_gun_type
The gun type associated with the extract
injector_mob
The mob who last injected the extract with plasma, water or blood. Used for logging.
\ No newline at end of file
diff --git a/obj/item/smithed_item.html b/obj/item/smithed_item.html
new file mode 100644
index 00000000000..65176276a97
--- /dev/null
+++ b/obj/item/smithed_item.html
@@ -0,0 +1 @@
+/obj/item/smithed_item - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/smithed_item/component.html b/obj/item/smithed_item/component.html
new file mode 100644
index 00000000000..7124cf02d51
--- /dev/null
+++ b/obj/item/smithed_item/component.html
@@ -0,0 +1 @@
+/obj/item/smithed_item/component - Space Station 13Space Station 13 - Modules - Types — Var Details
How many times the component needs to be shaped to be considered ready
heat
Heat stacks on the component
part_type
What type of part is it
\ No newline at end of file
diff --git a/obj/item/smithed_item/insert.html b/obj/item/smithed_item/insert.html
new file mode 100644
index 00000000000..19cbe25889a
--- /dev/null
+++ b/obj/item/smithed_item/insert.html
@@ -0,0 +1 @@
+/obj/item/smithed_item/insert - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/smithed_item/insert/mobility.html b/obj/item/smithed_item/insert/mobility.html
new file mode 100644
index 00000000000..b34d3a53b55
--- /dev/null
+++ b/obj/item/smithed_item/insert/mobility.html
@@ -0,0 +1 @@
+/obj/item/smithed_item/insert/mobility - Space Station 13Space Station 13 - Modules - Types — Var Details
Attached suit slowdown when the mobility mesh was applied
Var Details
initial_slowdown
Attached suit slowdown when the mobility mesh was applied
\ No newline at end of file
diff --git a/obj/item/smithed_item/lens.html b/obj/item/smithed_item/lens.html
new file mode 100644
index 00000000000..fe646b41a69
--- /dev/null
+++ b/obj/item/smithed_item/lens.html
@@ -0,0 +1 @@
+/obj/item/smithed_item/lens - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/smithed_item/tool_bit.html b/obj/item/smithed_item/tool_bit.html
new file mode 100644
index 00000000000..87b9a8cb1f8
--- /dev/null
+++ b/obj/item/smithed_item/tool_bit.html
@@ -0,0 +1 @@
+/obj/item/smithed_item/tool_bit - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/smithing_cast.html b/obj/item/smithing_cast.html
new file mode 100644
index 00000000000..435ed79b1d9
--- /dev/null
+++ b/obj/item/smithing_cast.html
@@ -0,0 +1 @@
+/obj/item/smithing_cast - Space Station 13Space Station 13 - Modules - Types — Var Details
How many products are we smelting at any given operation?
basin_state
What is the icon state we pass to the basin?
possible_products
Possible products of the item
selected_product
The selected final product of the item
\ No newline at end of file
diff --git a/obj/item/smithing_cast/component.html b/obj/item/smithing_cast/component.html
new file mode 100644
index 00000000000..11de5701401
--- /dev/null
+++ b/obj/item/smithing_cast/component.html
@@ -0,0 +1 @@
+/obj/item/smithing_cast/component - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/snowball.html b/obj/item/snowball.html
new file mode 100644
index 00000000000..d433e3090d9
--- /dev/null
+++ b/obj/item/snowball.html
@@ -0,0 +1 @@
+/obj/item/snowball - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/soap.html b/obj/item/soap.html
new file mode 100644
index 00000000000..edce80a2e80
--- /dev/null
+++ b/obj/item/soap.html
@@ -0,0 +1 @@
+/obj/item/soap - Space Station 13Space Station 13 - Modules - Types — Var Details
How many times a Drask has chewed on this bar of soap.
Var Details
cleanspeed
Time taken to clean something.
max_bites
The maximum amount of bites before the soap is depleted.
times_eaten
How many times a Drask has chewed on this bar of soap.
\ No newline at end of file
diff --git a/obj/item/soulstone.html b/obj/item/soulstone.html
new file mode 100644
index 00000000000..58a50196200
--- /dev/null
+++ b/obj/item/soulstone.html
@@ -0,0 +1 @@
+/obj/item/soulstone - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Does this soulstone ask the victim whether they want to be turned into a shade
reusable
Can this soul stone be used more than once?
spent
If the soul stone can only be used once, has it been used?
usability
Can this soul stone be used by anyone, or only cultists/wizards?
Proc Details
attack__legacy__attackchain
Capturing
transfer_soul
Proc for moving soul in and out off stone
\ No newline at end of file
diff --git a/obj/item/stack.html b/obj/item/stack.html
new file mode 100644
index 00000000000..22b51004fee
--- /dev/null
+++ b/obj/item/stack.html
@@ -0,0 +1,27 @@
+/obj/item/stack - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Recursively builds the recipes data for the given list of recipes, iterating through each recipe.
+If recipe is of type /datum/stack_recipe, it adds the recipe data to the recipes_data list with the title as the key.
+If recipe is of type /datum/stack_recipe_list, it recursively calls itself, scanning the entire list and adding each recipe to its category.
Var Details
allow_splitting
Whether this stack can be split into multiple independent stacks.
amount
The current amount of this stack.
cost
How much energy using 1 sheet from the stack costs. Used only with /cyborg type stacks.
destroy_upon_empty
Whether this stack deletes itself when amount reaches 0.
dynamic_icon_state
Whether this stack has a dynamic icon_state based on amount / max_amount.
energy_type
Which robot_energy_storage to choose when this stack is created in cyborgs. Used only with /cyborg type stacks.
is_cyborg
Whether this stack is a /cyborg subtype or not.
max_amount
The maximum amount of this stack. Also see stack recipes initialisation, param "max_res_amount" must be equal to this max_amount
merge_type
The path and its children that should merge with this stack, defaults to src.type.
parent_stack
Whether this stack can't stack with subtypes.
recipes
A list of recipes buildable with this stack.
singular_name
The singular name of this stack.
source
The storage datum that will be used with this stack. Used only with /cyborg type stacks.
table_type
The type of table that is made when applying this stack to a frame.
Proc Details
can_merge
+
+
Checks whether this stack can merge itself into another stack.
inhand: TRUE if the stack should check should act like it's in a mob's hand, FALSE otherwise.
+
+
+
is_zero_amount
Returns TRUE if the item stack is the equivalent of a 0 amount item.
+
Arguments: delete_if_zero: Deletes the stack if TRUE and the stack does not have
+is_cyborg set to TRUE or destroy_upon_empty set to FALSE.
merge
Merges as much of src into material as possible.
+
This proc deletes src if the remaining amount after the transfer is 0.
merge_without_del
Merges as much of src into material as possible.
+
This calls use() without check = FALSE, preventing the item from qdeling itself if it reaches 0 stack size.
+
As a result, this proc can leave behind a 0 amount stack.
recursively_build_recipes
Recursively builds the recipes data for the given list of recipes, iterating through each recipe.
+If recipe is of type /datum/stack_recipe, it adds the recipe data to the recipes_data list with the title as the key.
+If recipe is of type /datum/stack_recipe_list, it recursively calls itself, scanning the entire list and adding each recipe to its category.
\ No newline at end of file
diff --git a/obj/item/stack/cable_coil.html b/obj/item/stack/cable_coil.html
new file mode 100644
index 00000000000..9994a4a1a64
--- /dev/null
+++ b/obj/item/stack/cable_coil.html
@@ -0,0 +1,7 @@
+/obj/item/stack/cable_coil - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Bitflag of the types of cable we can add cable to with this coil.
+This is different to the cable connection flag since it only governs connecting on the same tile
called when cable_coil is clicked on a turf/simulated/floor
Var Details
cable_merge_id
Bitflag of the types of cable we can add cable to with this coil.
+This is different to the cable connection flag since it only governs connecting on the same tile
cable_type
Deletes the cable coil upon getting empty.
+Used for RCL cable spools to stop the stack from being eaten.
+Type of cable this coil makes
Proc Details
cable_join
called when cable_coil is click on an installed obj/cable or click on a turf that already contains a "node" cable
get_cable_color
Used to decouple the physical color of the cable from the logical color. Used by RCL to stop its spool holder from being colored in.
place_turf
called when cable_coil is clicked on a turf/simulated/floor
\ No newline at end of file
diff --git a/obj/item/stack/cable_coil/rcl.html b/obj/item/stack/cable_coil/rcl.html
new file mode 100644
index 00000000000..2d0520304cd
--- /dev/null
+++ b/obj/item/stack/cable_coil/rcl.html
@@ -0,0 +1 @@
+/obj/item/stack/cable_coil/rcl - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Tries to join to the last laid cable on the turf user has just left, followed by trying to lay another cable secton on the turf that was just entered.
Var Details
active
Are we rapidly laying cable?
last
Remembers the last cable structure that got laid down to aid in further cable laying.
Proc Details
trigger
Tries to join to the last laid cable on the turf user has just left, followed by trying to lay another cable secton on the turf that was just entered.
\ No newline at end of file
diff --git a/obj/item/stack/cable_coil/rcl/robot.html b/obj/item/stack/cable_coil/rcl/robot.html
new file mode 100644
index 00000000000..64b0b362a57
--- /dev/null
+++ b/obj/item/stack/cable_coil/rcl/robot.html
@@ -0,0 +1 @@
+/obj/item/stack/cable_coil/rcl/robot - Space Station 13Space Station 13 - Modules - Types — Var Details
Tells us if we're laying basic or insulated cable.
Var Details
heavy_mode
Tells us if we're laying basic or insulated cable.
\ No newline at end of file
diff --git a/obj/item/stack/medical/suture.html b/obj/item/stack/medical/suture.html
new file mode 100644
index 00000000000..394260d626e
--- /dev/null
+++ b/obj/item/stack/medical/suture.html
@@ -0,0 +1 @@
+/obj/item/stack/medical/suture - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/stack/medical/suture/regen_mesh.html b/obj/item/stack/medical/suture/regen_mesh.html
new file mode 100644
index 00000000000..913d653f20c
--- /dev/null
+++ b/obj/item/stack/medical/suture/regen_mesh.html
@@ -0,0 +1 @@
+/obj/item/stack/medical/suture/regen_mesh - Space Station 13Space Station 13 - Modules - Types — Var Details
This var determines if the sterile packaging of the mesh has been opened.
Var Details
is_open
This var determines if the sterile packaging of the mesh has been opened.
\ No newline at end of file
diff --git a/obj/item/stamp.html b/obj/item/stamp.html
new file mode 100644
index 00000000000..c4f796ab7f7
--- /dev/null
+++ b/obj/item/stamp.html
@@ -0,0 +1 @@
+/obj/item/stamp - Space Station 13Space Station 13 - Modules - Types — Var Details
What color will this crayon dye clothes, cables, etc? used for for updateIcon purposes on other objs
Var Details
dye_color
What color will this crayon dye clothes, cables, etc? used for for updateIcon purposes on other objs
\ No newline at end of file
diff --git a/obj/item/stock_parts/cell.html b/obj/item/stock_parts/cell.html
new file mode 100644
index 00000000000..b66ecf448c4
--- /dev/null
+++ b/obj/item/stock_parts/cell.html
@@ -0,0 +1 @@
+/obj/item/stock_parts/cell - Space Station 13Space Station 13 - Modules - Types — Var Details
How much energy is given to a recharging cell every tick (kilojoules / tick)
grown_battery
Additional overlay to signify battery being organic
maxcharge
Battery's maximum state of charge (kilojoules)
ratingdesc
Whether the description will include the maxcharge
rigged
If the battery will explode
self_recharge
Whether it will recharge automatically
starting_charge
How much energy the cell starts with (kilojoules)
\ No newline at end of file
diff --git a/obj/item/storage.html b/obj/item/storage.html
new file mode 100644
index 00000000000..d3f8c61c3a3
--- /dev/null
+++ b/obj/item/storage.html
@@ -0,0 +1,26 @@
+/obj/item/storage - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
List of objects which this item overrides the cant_hold list (used to negate cant_hold on specific items. Ex: Allowing Smuggler's Satchels (subtype of backpack) to be stored inside bags of holding.)
Checks if an item can be inserted, then insertsit. Riveting, I know.
+Mostly exists to bypass the robot restriction for using storage (for like ore bags).
Checks all mobs currently viewing the storage inventory, and hides it if they shouldn't be able to see it.
Var Details
allow_quick_empty
Set this variable to allow the object to have the 'empty' verb, which dumps all the contents on the floor.
allow_quick_gather
Set this variable to allow the object to have the 'toggle mode' verb, which quickly collects all items from a tile.
can_hold
List of objects which this item can store (if set, it can't store anything else)
cant_hold
List of objects which this item can't store (in effect only if can_hold isn't set)
cant_hold_override
List of objects which this item overrides the cant_hold list (used to negate cant_hold on specific items. Ex: Allowing Smuggler's Satchels (subtype of backpack) to be stored inside bags of holding.)
display_contents_with_number
Set this to make the storage item group contents of the same type and display them as a number.
foldable
What kind of /obj/item/stack can this be folded into. (e.g. Boxes and cardboard)
foldable_amt
How much of the stack item do you get.
max_combined_w_class
The sum of the w_classes of all the items in this storage item.
max_w_class
Max size of objects that this object can store (in effect only if can_hold isn't set)
mobs_viewing
Lazy list of mobs which are currently viewing the storage inventory.
pickup_all_on_tile
Pick up one item at a time or everything on the tile
silent
No message on putting items in.
storage_slots
The number of storage slots in this container.
use_sound
Sound played when used. null for no sound.
use_to_pickup
Set this to make it possible to use this item in an inverse way, so you can have the item in your hand and click items on the floor to pick them up.
w_class_override
List of objects that can be stored, regardless of w_class
Proc Details
can_be_inserted
Checks whether I can be inserted into the container.
+
Returns TRUE if it can, and FALSE if it can't.
+Arguments:
+
+
obj/item/I - The item to insert
+
stop_messages - Don't display a warning message if the item can't be inserted
+
handle_item_insertion
Handles items being inserted into a storage container.
prevent_warning - Stop the insertion message being displayed. Intended for cases when you are inserting multiple items at once.
+
hide_from
Hides the current container interface from user.
hide_from_all
Hides the current container interface from all viewers.
orient_objs
Draws the inventory and places the items on it using custom positions.
+
tx and ty are the upper left tile.
+mx and my are the bottom right tile.
+
The numbers are calculated from the bottom left, with the bottom left being 1,1.
populate_contents
Populates the container with items
+
Override with whatever you want to put in the container
remove_from_storage
Handles the removal of an item from a storage container.
+
Arguments:
+
+
obj/item/I - The item to be removed
+
atom/new_location - The location to send the item to.
+
return_inv
Loops through any nested containers inside src, and returns a list of everything inside them.
+
Currently checks for storage containers, gifts containing storage containers, and folders.
show_to
Shows user the contents of src, and activates any mouse trap style triggers.
try_insert_item
Checks if an item can be inserted, then insertsit. Riveting, I know.
+Mostly exists to bypass the robot restriction for using storage (for like ore bags).
update_viewers
Checks all mobs currently viewing the storage inventory, and hides it if they shouldn't be able to see it.
\ No newline at end of file
diff --git a/obj/item/storage/backpack/duffel.html b/obj/item/storage/backpack/duffel.html
new file mode 100644
index 00000000000..c7fae218551
--- /dev/null
+++ b/obj/item/storage/backpack/duffel.html
@@ -0,0 +1 @@
+/obj/item/storage/backpack/duffel - Space Station 13Space Station 13 - Modules - Types — Var Details
Do we want the bag to be antidropped when zipped up?
open_icon_sprite
This variable is used to change the icon state to the variable when opened
zip_time
How long it takes to toggle the zip state of this bag
zipped
Is the bag zipped up?
\ No newline at end of file
diff --git a/obj/item/storage/bag/ore.html b/obj/item/storage/bag/ore.html
new file mode 100644
index 00000000000..d8a8cec00ef
--- /dev/null
+++ b/obj/item/storage/bag/ore.html
@@ -0,0 +1 @@
+/obj/item/storage/bag/ore - Space Station 13Space Station 13 - Modules - Types — Var Details
The mob currently holding the ore bag, to track moving over ore to auto-pickup.
Var Details
listening_to
The mob currently holding the ore bag, to track moving over ore to auto-pickup.
\ No newline at end of file
diff --git a/obj/item/storage/belt.html b/obj/item/storage/belt.html
new file mode 100644
index 00000000000..26a5895e21f
--- /dev/null
+++ b/obj/item/storage/belt.html
@@ -0,0 +1 @@
+/obj/item/storage/belt - Space Station 13Space Station 13 - Modules - Types — Var Details
Do we have overlays for items held inside the belt?
Var Details
large
Ignores update_weight() if TRUE
layer_over_suit
Belt goes over all suit slots if TRUE
storable
Bypasses the "belt in bag" prevention if TRUE
use_item_overlays
Do we have overlays for items held inside the belt?
\ No newline at end of file
diff --git a/obj/item/storage/belt/sheath/holy.html b/obj/item/storage/belt/sheath/holy.html
new file mode 100644
index 00000000000..7fe4719e012
--- /dev/null
+++ b/obj/item/storage/belt/sheath/holy.html
@@ -0,0 +1 @@
+/obj/item/storage/belt/sheath/holy - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/storage/bible.html b/obj/item/storage/bible.html
new file mode 100644
index 00000000000..f2739ccc2bb
--- /dev/null
+++ b/obj/item/storage/bible.html
@@ -0,0 +1 @@
+/obj/item/storage/bible - Space Station 13Space Station 13 - Modules - Types — Var Details
Associative list of accociative lists of bible variants, used for the radial menu
customisable
Is the sprite of this bible customisable
\ No newline at end of file
diff --git a/obj/item/storage/box.html b/obj/item/storage/box.html
new file mode 100644
index 00000000000..f2d5024152f
--- /dev/null
+++ b/obj/item/storage/box.html
@@ -0,0 +1,6 @@
+/obj/item/storage/box - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
list containing a list of what this box can change into when colored, used in the radial menu popup. Probably don't want to manually edit this, use add_to_colorable_lists()
helper function to add to the colors a box can turn into
Var Details
color_state
state that determines what this can be colored to
colorable_to
list containing a list of what this box can change into when colored, probably don't want to manually edit this, use add_to_colorable_lists()
colorable_to_radial
list containing a list of what this box can change into when colored, used in the radial menu popup. Probably don't want to manually edit this, use add_to_colorable_lists()
Proc Details
add_to_colorable_lists
helper function to add to the colors a box can turn into
+
+
name - the name of the new box in the radial menu
+
color - what color of crayon caused the box to change
+
object - the new item to create when you recolor a box
+
\ No newline at end of file
diff --git a/obj/item/storage/box/syndie_kit/contractor.html b/obj/item/storage/box/syndie_kit/contractor.html
new file mode 100644
index 00000000000..e883fef1b66
--- /dev/null
+++ b/obj/item/storage/box/syndie_kit/contractor.html
@@ -0,0 +1,7 @@
+/obj/item/storage/box/syndie_kit/contractor - Space Station 13Space Station 13 - Modules - Types — Var Details
Items that may be part of the random items given to a contractor as part of their kit.
+Ideally all about 5 TC or less and fit the theme. Some of these are nukeops only.
+One item may show up only once.
Items that may be part of the random items given to a contractor as part of their kit.
+Ideally all about 5 TC or less and fit the theme. Some of these are nukeops only.
+One item may show up only once.
\ No newline at end of file
diff --git a/obj/item/storage/fancy/juice_boxes.html b/obj/item/storage/fancy/juice_boxes.html
new file mode 100644
index 00000000000..05733b67da8
--- /dev/null
+++ b/obj/item/storage/fancy/juice_boxes.html
@@ -0,0 +1 @@
+/obj/item/storage/fancy/juice_boxes - Space Station 13Space Station 13 - Modules - Types — Proc Details
Pick the nearest empty slot in this juice box box to slot the juice box into.
Proc Details
insert_into_end
Put the juice box into the last slot on the list, and nudge other juice boxes out of the way if necessary.
insert_into_nearest
Pick the nearest empty slot in this juice box box to slot the juice box into.
\ No newline at end of file
diff --git a/obj/item/storage/fancy/shell.html b/obj/item/storage/fancy/shell.html
new file mode 100644
index 00000000000..f12fb3cf8e8
--- /dev/null
+++ b/obj/item/storage/fancy/shell.html
@@ -0,0 +1 @@
+/obj/item/storage/fancy/shell - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/storage/mre.html b/obj/item/storage/mre.html
new file mode 100644
index 00000000000..467df062f99
--- /dev/null
+++ b/obj/item/storage/mre.html
@@ -0,0 +1,9 @@
+/obj/item/storage/mre - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Selects one of several MRE menus based on the menu_option of the MRE.
Var Details
dessert_food
Used when populating contents after doing get_menu_items().
main_food
Used when populating contents after doing get_menu_items().
menu_option
Determines what set of food items will spawn in the MRE. Also alters the name and description of the MRE.
opened
Has anyone looked inside the MRE yet? Setting to TRUE changes the sprite and allows items to be added to the container.
side_food
Used when populating contents after doing get_menu_items().
snack_food
Used when populating contents after doing get_menu_items().
Proc Details
get_menu_items
Selects one of several MRE menus based on the menu_option of the MRE.
+
Arguments:
+
+
menu_item_list - Static list containing the food items associated with each MRE menu option.
+
main_food - Takes first food item from the list for use in populate_contents().
+
side_food - Takes second food item from the list for use in populate_contents().
+
snack_food - Takes third food item from the list for use in populate_contents().
+
dessert_food - Takes fourth food item from the list for use in populate_contents().
+
\ No newline at end of file
diff --git a/obj/item/storage/pill_bottle.html b/obj/item/storage/pill_bottle.html
new file mode 100644
index 00000000000..42c4087027f
--- /dev/null
+++ b/obj/item/storage/pill_bottle.html
@@ -0,0 +1 @@
+/obj/item/storage/pill_bottle - Space Station 13Space Station 13 - Modules - Types — Var Details
Whether to render a coloured wrapper overlay on the icon.
wrapper_color
The color of the wrapper overlay.
wrapper_state
The icon state of the wrapper overlay.
\ No newline at end of file
diff --git a/obj/item/storage/secure.html b/obj/item/storage/secure.html
new file mode 100644
index 00000000000..40d7723aaae
--- /dev/null
+++ b/obj/item/storage/secure.html
@@ -0,0 +1 @@
+/obj/item/storage/secure - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/storm_staff.html b/obj/item/storm_staff.html
new file mode 100644
index 00000000000..a0209fcbd3a
--- /dev/null
+++ b/obj/item/storm_staff.html
@@ -0,0 +1 @@
+/obj/item/storm_staff - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/supermatter_halberd.html b/obj/item/supermatter_halberd.html
new file mode 100644
index 00000000000..6594fd2dc27
--- /dev/null
+++ b/obj/item/supermatter_halberd.html
@@ -0,0 +1 @@
+/obj/item/supermatter_halberd - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/surgical_drapes.html b/obj/item/surgical_drapes.html
new file mode 100644
index 00000000000..93086934c71
--- /dev/null
+++ b/obj/item/surgical_drapes.html
@@ -0,0 +1 @@
+/obj/item/surgical_drapes - Space Station 13Space Station 13 - Modules - Types — Var Details
How effective this is at preventing infections during surgeries.
Var Details
surgery_effectiveness
How effective this is at preventing infections during surgeries.
\ No newline at end of file
diff --git a/obj/item/syndi_scanner.html b/obj/item/syndi_scanner.html
new file mode 100644
index 00000000000..bd51f6ecdcc
--- /dev/null
+++ b/obj/item/syndi_scanner.html
@@ -0,0 +1 @@
+/obj/item/syndi_scanner - Space Station 13Space Station 13 - Modules - Types — Var Details
syndi_scanner
An admin-spawn item that will tell you roughly how close the nearest loyal Nanotrasen crewmember is.
\ No newline at end of file
diff --git a/obj/item/tank/jetpack.html b/obj/item/tank/jetpack.html
new file mode 100644
index 00000000000..159df9d727c
--- /dev/null
+++ b/obj/item/tank/jetpack.html
@@ -0,0 +1,3 @@
+/obj/item/tank/jetpack - Space Station 13Space Station 13 - Modules - Types — Proc Details
Arguments
+stabilize - Should this jetpack be stabalized
\ No newline at end of file
diff --git a/obj/item/taperecorder.html b/obj/item/taperecorder.html
new file mode 100644
index 00000000000..f94a1bc0430
--- /dev/null
+++ b/obj/item/taperecorder.html
@@ -0,0 +1 @@
+/obj/item/taperecorder - Space Station 13Space Station 13 - Modules - Types — Var Details
Sound loop that plays when recording or playing back.
Var Details
cooldown
The next worldtime we'll be able to print
mytape
The tape we are recording to
playing
If its playing back auto via atom_say
playsleepseconds
The amount of time between something said during playback
recording
If its currently recording
soundloop
Sound loop that plays when recording or playing back.
\ No newline at end of file
diff --git a/obj/item/tarot_card_pack.html b/obj/item/tarot_card_pack.html
new file mode 100644
index 00000000000..332ba7e0dcf
--- /dev/null
+++ b/obj/item/tarot_card_pack.html
@@ -0,0 +1 @@
+/obj/item/tarot_card_pack - Space Station 13Space Station 13 - Modules - Types — Var Details
How many cards in a pack. 3 in base, 5 in jumbo, 7 in mega
Var Details
cards
How many cards in a pack. 3 in base, 5 in jumbo, 7 in mega
\ No newline at end of file
diff --git a/obj/item/tarot_generator.html b/obj/item/tarot_generator.html
new file mode 100644
index 00000000000..7cadfea494e
--- /dev/null
+++ b/obj/item/tarot_generator.html
@@ -0,0 +1 @@
+/obj/item/tarot_generator - Space Station 13Space Station 13 - Modules - Types — Var Details
List of cards we have created, to check against maximum, and so we can purge them from the pack.
Var Details
maximum_cards
What is the maximum number of cards the tarot generator can have in the world at a time?
our_card_cooldown_time
How long the cooldown is each time we draw a card before we can draw another?
our_card_list
List of cards we have created, to check against maximum, and so we can purge them from the pack.
\ No newline at end of file
diff --git a/obj/item/thermal_drill.html b/obj/item/thermal_drill.html
new file mode 100644
index 00000000000..41e2e32a3be
--- /dev/null
+++ b/obj/item/thermal_drill.html
@@ -0,0 +1,5 @@
+/obj/item/thermal_drill - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/item/thurible.html b/obj/item/thurible.html
new file mode 100644
index 00000000000..db1c2d08bbb
--- /dev/null
+++ b/obj/item/thurible.html
@@ -0,0 +1 @@
+/obj/item/thurible - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Spreads reagents in a 3x3 area centered on the thurible
Var Details
corrupted
Whether or not the thurible can be loaded with harmful chems
lit
Has the thurible been ignited?
safe_chem_list
List of chemicals considered safe for the thurible
swing_reagents_consumed
How many reagents are consumed with each swing?
Proc Details
light
Lights the thurible and starts processing reagents
put_out
Extinguishes the thurible and stops processing
swing
Spreads reagents in a 3x3 area centered on the thurible
\ No newline at end of file
diff --git a/obj/item/toy/crayon.html b/obj/item/toy/crayon.html
new file mode 100644
index 00000000000..72d0aa2350e
--- /dev/null
+++ b/obj/item/toy/crayon.html
@@ -0,0 +1 @@
+/obj/item/toy/crayon - Space Station 13Space Station 13 - Modules - Types — Var Details
What color will this crayon dye clothes, cables, etc? used for for updateIcon purposes on other objs
max_bites
How many times a crayon can be bitten before being depleted. You eated it
preset_message
The stored message in the crayon.
preset_message_index
The index of the character in the message that will be drawn next.
times_eaten
How many times this crayon has been gnawed on
\ No newline at end of file
diff --git a/obj/item/toy/plushie.html b/obj/item/toy/plushie.html
new file mode 100644
index 00000000000..2c3e521e96d
--- /dev/null
+++ b/obj/item/toy/plushie.html
@@ -0,0 +1 @@
+/obj/item/toy/plushie - Space Station 13Space Station 13 - Modules - Types — Var Details
This is a variable that stores a mob that has been cursed into a plushie inside it.
Var Details
cursed_plushie_victim
This is a variable that stores a mob that has been cursed into a plushie inside it.
\ No newline at end of file
diff --git a/obj/item/toy/sword/chaosprank.html b/obj/item/toy/sword/chaosprank.html
new file mode 100644
index 00000000000..95702bbc3c4
--- /dev/null
+++ b/obj/item/toy/sword/chaosprank.html
@@ -0,0 +1 @@
+/obj/item/toy/sword/chaosprank - Space Station 13Space Station 13 - Modules - Types — Var Details
Sets to TRUE once the character using it hits something and realises it's not a real energy sword
Var Details
pranked
Sets to TRUE once the character using it hits something and realises it's not a real energy sword
\ No newline at end of file
diff --git a/obj/item/toy/therapy.html b/obj/item/toy/therapy.html
new file mode 100644
index 00000000000..b1d44e94311
--- /dev/null
+++ b/obj/item/toy/therapy.html
@@ -0,0 +1 @@
+/obj/item/toy/therapy - Space Station 13Space Station 13 - Modules - Types — Var Details
Color of the doll. Affects appearance, make sure there is appropriate icon_state in icon file
Var Details
doll_color
Color of the doll. Affects appearance, make sure there is appropriate icon_state in icon file
\ No newline at end of file
diff --git a/obj/item/uplink.html b/obj/item/uplink.html
new file mode 100644
index 00000000000..2ea7e2c2784
--- /dev/null
+++ b/obj/item/uplink.html
@@ -0,0 +1,6 @@
+/obj/item/uplink - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Whether the uplink is jammed and cannot be used to order items.
items_generated
Whether or not the uplink has generated its stock and discounts
uplink_cats
List of categories with items inside
uplink_items
List of all items in total (For buying random)
Proc Details
generate_item_lists
Build the item lists for use with the UI
+
Generates a list of items for use in the UI, based on job, species and other parameters
+
Arguments:
+
+
user - User to check
+
\ No newline at end of file
diff --git a/obj/item/uplink/hidden.html b/obj/item/uplink/hidden.html
new file mode 100644
index 00000000000..bcd9d582045
--- /dev/null
+++ b/obj/item/uplink/hidden.html
@@ -0,0 +1 @@
+/obj/item/uplink/hidden - Space Station 13Space Station 13 - Modules - Types — Var Details
An assoc list of references (the variable called reference on an uplink item) and its value being how many of the item
Var Details
cached_cart
A cached version of shopping_cart containing all the data for the tgui side
lucky_numbers
A list of 3 categories and item indexes in uplink_cats, to show as recommendedations
shopping_cart
An assoc list of references (the variable called reference on an uplink item) and its value being how many of the item
\ No newline at end of file
diff --git a/obj/item/wall_bug.html b/obj/item/wall_bug.html
new file mode 100644
index 00000000000..8c54e01be62
--- /dev/null
+++ b/obj/item/wall_bug.html
@@ -0,0 +1 @@
+/obj/item/wall_bug - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/wall_bug/computer_bug.html b/obj/item/wall_bug/computer_bug.html
new file mode 100644
index 00000000000..d6795818633
--- /dev/null
+++ b/obj/item/wall_bug/computer_bug.html
@@ -0,0 +1 @@
+/obj/item/wall_bug/computer_bug - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/watcher_hatchling.html b/obj/item/watcher_hatchling.html
new file mode 100644
index 00000000000..370e7368a44
--- /dev/null
+++ b/obj/item/watcher_hatchling.html
@@ -0,0 +1 @@
+/obj/item/watcher_hatchling - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
watcher_hatchling
A cute pet who will occasionally attack lavaland mobs for you
In the more likely event that our orbiter is deleted, stop holding a reference to it
remove_owner
If the guy we are orbiting is deleted but somehow we aren't
watcher_return
Get back in your ball pikachu
\ No newline at end of file
diff --git a/obj/item/weaponcrafting/gunkit.html b/obj/item/weaponcrafting/gunkit.html
new file mode 100644
index 00000000000..84d5bd30a4f
--- /dev/null
+++ b/obj/item/weaponcrafting/gunkit.html
@@ -0,0 +1 @@
+/obj/item/weaponcrafting/gunkit - Space Station 13Space Station 13 - Modules - Types — Var Details
gunkit
These gun kits are printed from the protolathe to then be used in making new weapons
What gun do we produce? Used by the universal gunkit.
Var Details
outcome
What gun do we produce? Used by the universal gunkit.
\ No newline at end of file
diff --git a/obj/item/weldingtool.html b/obj/item/weldingtool.html
new file mode 100644
index 00000000000..88b691951d0
--- /dev/null
+++ b/obj/item/weldingtool.html
@@ -0,0 +1 @@
+/obj/item/weldingtool - Space Station 13Space Station 13 - Modules - Types — Var Details
Set to FALSE if it doesn't need fuel, but serves equally well as a cost modifier.
Var Details
activation_sound
Sound played when turned on.
deactivation_sound
Sound played when turned off.
light_intensity
The brightness of the active flame.
low_fuel_changes_icon
Does the icon_state change if the fuel is low?
prefilled
If FALSE, welding tools wont appear prefilled by default
progress_flash_divisor
How often does the tool flash the user's eyes?
refills_over_time
If TRUE, fuel will regenerate over time.
requires_fuel
Set to FALSE if it doesn't need fuel, but serves equally well as a cost modifier.
\ No newline at end of file
diff --git a/obj/item/whiteship_port_generator.html b/obj/item/whiteship_port_generator.html
new file mode 100644
index 00000000000..a52c3d8caad
--- /dev/null
+++ b/obj/item/whiteship_port_generator.html
@@ -0,0 +1,9 @@
+/obj/item/whiteship_port_generator - Space Station 13Space Station 13 - Modules - Types — Proc Details
Pretty much a straight copy-paste of [/obj/machinery/computer/shuttle/proc/ui_act].
+Yes it could be refactored but tearing all of the "make the shuttle move" code out of
+the console whose job it is to exclusively do that is unsurprisingly messy.
Pretty much a straight copy-paste of [/obj/machinery/computer/shuttle/proc/ui_data].
+Yes it could be refactored but tearing all of the "make the shuttle move" code out of
+the console whose job it is to exclusively do that is unsurprisingly messy.
Proc Details
ui_act
Pretty much a straight copy-paste of [/obj/machinery/computer/shuttle/proc/ui_act].
+Yes it could be refactored but tearing all of the "make the shuttle move" code out of
+the console whose job it is to exclusively do that is unsurprisingly messy.
ui_data
Pretty much a straight copy-paste of [/obj/machinery/computer/shuttle/proc/ui_data].
+Yes it could be refactored but tearing all of the "make the shuttle move" code out of
+the console whose job it is to exclusively do that is unsurprisingly messy.
\ No newline at end of file
diff --git a/obj/item/wormhole_jaunter/extraction.html b/obj/item/wormhole_jaunter/extraction.html
new file mode 100644
index 00000000000..9ba4efeb187
--- /dev/null
+++ b/obj/item/wormhole_jaunter/extraction.html
@@ -0,0 +1 @@
+/obj/item/wormhole_jaunter/extraction - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/wormhole_jaunter/ninja_bomb.html b/obj/item/wormhole_jaunter/ninja_bomb.html
new file mode 100644
index 00000000000..2be3ac5f365
--- /dev/null
+++ b/obj/item/wormhole_jaunter/ninja_bomb.html
@@ -0,0 +1 @@
+/obj/item/wormhole_jaunter/ninja_bomb - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/item/wormhole_jaunter/wormhole_weaver.html b/obj/item/wormhole_jaunter/wormhole_weaver.html
new file mode 100644
index 00000000000..0d2f4e79cc5
--- /dev/null
+++ b/obj/item/wormhole_jaunter/wormhole_weaver.html
@@ -0,0 +1 @@
+/obj/item/wormhole_jaunter/wormhole_weaver - Space Station 13Space Station 13 - Modules - Types — Var Details
Does the user already have the teleportation menu open?
wcell
Power cell (10000W).
wormhole_loc
The turf where we activated the wormwhole.
\ No newline at end of file
diff --git a/obj/item/xeno_organ.html b/obj/item/xeno_organ.html
new file mode 100644
index 00000000000..29218b08747
--- /dev/null
+++ b/obj/item/xeno_organ.html
@@ -0,0 +1 @@
+/obj/item/xeno_organ - Space Station 13Space Station 13 - Modules - Types — Var Details
What type of object will this object turn into when analyzed?
unknown_quality
What quality will be hidden from us?
\ No newline at end of file
diff --git a/obj/machinery.html b/obj/machinery.html
new file mode 100644
index 00000000000..0eb8febe74a
--- /dev/null
+++ b/obj/machinery.html
@@ -0,0 +1,15 @@
+/obj/machinery - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Has power been initialized on this machine? Set in Initialize(), prevents all power updates to the local powernet until this is TRUE to avoid weird numbers.
Safely changes the static power on the local powernet based on an adjustment in idle power
Var Details
active_power_consumption
How much power does this machine consume when it is in use. This should not be set manually, use the helper procs!
being_repaired
This is if the machinery is being repaired
idle_power_consumption
How much power does this machine consume when it is idling. This should not be set manually, use the helper procs!
machine_powernet
The powernet this machine is connected to
power_channel
The power channel this machine uses, idle/passive power consumption will pull from this channel and machine won't work if power channel has no power
power_initialized
Has power been initialized on this machine? Set in Initialize(), prevents all power updates to the local powernet until this is TRUE to avoid weird numbers.
power_state
How is this machine currently passively consuming power?
siemens_strength
how badly will it shock you?
Proc Details
_add_static_power
Helper proc to positively adjust static power tracking on the machine's powernet, not meant for general use!
_remove_static_power
Helper proc to negatively adjust static power tracking on the machine's powernet, not meant for general use!
can_use_shortcut
Makes sure the user is allowed to interact with the machine when they use a shortcut, like Control or Alt-clicking.
+
Arguments:
+
+
user - the mob who is trying to interact with the machine.
+
change_power_mode
Helper proc to change the machines power usage mode, automatically adjusts static power usage to maintain perfect parity
get_internal_wires
Returns the wires of the machine, or null if not declared.
+
Note: /obj/machinery/ does not contain a /datum/wires/ variable,
+and needs to be implemented on any child object with this function overwritten.
has_power
POWER RELATED PROCS
try_attack_hand
Preprocess machinery interaction.
+
If overriding and extending interaction limitations, better call this with ..()
+unless you really know what you are doing.
+
Returns TRUE when interaction is done due to different limitations and nothing should be done next.
+Returns FALSE when interaction can be continued.
+Arguments:
+
+
user - the mob interacting with this machinery
+
update_active_power_consumption
Safely changes the static power on the local powernet based on an adjustment in active power
update_idle_power_consumption
Safely changes the static power on the local powernet based on an adjustment in idle power
\ No newline at end of file
diff --git a/obj/machinery/access_button.html b/obj/machinery/access_button.html
new file mode 100644
index 00000000000..79cea22f3e4
--- /dev/null
+++ b/obj/machinery/access_button.html
@@ -0,0 +1 @@
+/obj/machinery/access_button - Space Station 13Space Station 13 - Modules - Types — Var Details
Command, whether this button cycles in or out. This is /tmp/ so mappers dont try and define it in a map. Its assigned at runtime.
autolink_id
Id to be used by the controller to grab us on spawn
controller_uid
UID of the airlock controller that owns us
\ No newline at end of file
diff --git a/obj/machinery/ai_node.html b/obj/machinery/ai_node.html
new file mode 100644
index 00000000000..812d50846da
--- /dev/null
+++ b/obj/machinery/ai_node.html
@@ -0,0 +1 @@
+/obj/machinery/ai_node - Space Station 13Space Station 13 - Modules - Types — Var Details
Used to ensure it takes a few seconds of being hot before overheating
overheating
Are we overheating?
resource_amount
How much resources does this machine provide
resource_key
Identifier for what resource to remove
\ No newline at end of file
diff --git a/obj/machinery/ai_powersupply.html b/obj/machinery/ai_powersupply.html
new file mode 100644
index 00000000000..cd337721f4f
--- /dev/null
+++ b/obj/machinery/ai_powersupply.html
@@ -0,0 +1 @@
+/obj/machinery/ai_powersupply - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/ai_status_display.html b/obj/machinery/ai_status_display.html
new file mode 100644
index 00000000000..25e99e08da9
--- /dev/null
+++ b/obj/machinery/ai_status_display.html
@@ -0,0 +1 @@
+/obj/machinery/ai_status_display - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/airlock_controller.html b/obj/machinery/airlock_controller.html
new file mode 100644
index 00000000000..8cadbca77b3
--- /dev/null
+++ b/obj/machinery/airlock_controller.html
@@ -0,0 +1 @@
+/obj/machinery/airlock_controller - Space Station 13Space Station 13 - Modules - Types — Var Details
Current state (IDLE, PREPARE, DEPRESSURIZE, PRESSURIZE)
target_state
Target state (MONE, INOPEN, OUTOPEN)
vent_link_id
Vent ID for all vents to link to.
vents
All vents to control. Soft-refs only.
\ No newline at end of file
diff --git a/obj/machinery/alarm.html b/obj/machinery/alarm.html
new file mode 100644
index 00000000000..4e373e05894
--- /dev/null
+++ b/obj/machinery/alarm.html
@@ -0,0 +1 @@
+/obj/machinery/alarm - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/alien_cache.html b/obj/machinery/alien_cache.html
new file mode 100644
index 00000000000..8819dfe4dfd
--- /dev/null
+++ b/obj/machinery/alien_cache.html
@@ -0,0 +1 @@
+/obj/machinery/alien_cache - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
generate a list with weights for tiers of loot depending on the reached level
Var Details
level_reached
The deepest level we opened
max_level
The maximum reachable level
open_rewards
List of guaranteed rewards you get from the last stage
random_rewards
Assoc list of level to rewards found at that level with a weight for each
terminal
Terminal for receiving power through
total_energy
The total amount of energy consumed
Proc Details
item_interaction
Items interaction mostly stolen from SMES
make_terminal
Terminal creation proc stolen from SMES
pick_rewards
Returns a list of rewards with length equal to amount
tier_weights
generate a list with weights for tiers of loot depending on the reached level
\ No newline at end of file
diff --git a/obj/machinery/anomaly_refinery.html b/obj/machinery/anomaly_refinery.html
new file mode 100644
index 00000000000..94b239a324c
--- /dev/null
+++ b/obj/machinery/anomaly_refinery.html
@@ -0,0 +1 @@
+/obj/machinery/anomaly_refinery - Space Station 13Space Station 13 - Modules - Types — Var Details
The message produced by the explosive compressor at the end of the compression test.
Var Details
inserted_core
The raw core inserted in the machine.
linked_doppler
Linked tachyon-doppler array
refined_core
The refined core produced by the machine
test_status
The message produced by the explosive compressor at the end of the compression test.
\ No newline at end of file
diff --git a/obj/machinery/atmospherics.html b/obj/machinery/atmospherics.html
new file mode 100644
index 00000000000..3e2784c701e
--- /dev/null
+++ b/obj/machinery/atmospherics.html
@@ -0,0 +1,13 @@
+/obj/machinery/atmospherics - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
This proc is to tell if an atmospheric device is in a state that should be unwrenchable because its under the floor.
Var Details
autolink_id
ID for automatic linkage of stuff. This is used to assist in connections at mapload. Dont try use it for other stuff
can_be_undertile
Can this be put under a tile?
can_unwrench
Can this be unwrenched?
can_unwrench_while_on
Whether or not this can be unwrenched while on.
connect_types
Type of pipes this machine can connect to
connected_to
What this machine is connected to
icon_connect_type
Icon suffix for connection, can be "-supply" or "-scrubbers"
initialize_directions
Directions to initialize in to grab pipes
on
If the machine is currently operating or not.
pipe_color
Pipe colour, not used for all subtypes
pipe_image
Pipe image, not used for all subtypes
target_pressure
The amount of pressure the machine wants to operate at.
Proc Details
is_pipenet_split
Whether or not this atmos machine has multiple pipenets attached to it
+Used to determine if a ventcrawler should update their vision or not
set_max
Maxes the output pressure of the machine. If this is done by a user, display a message to them.
+
NOTE: Only applies to atmospherics machines which allow a target_pressure to be set, such as pumps, or other devices.
+
Arguments:
+
+
user - the mob who is setting the output pressure to maximum.
+
toggle
Turns the machine either on, or off. If this is done by a user, display a message to them.
+
NOTE: Only applies to atmospherics machines which can be toggled on or off, such as pumps, or other devices.
+
Arguments:
+
+
user - the mob who is toggling the machine.
+
wrench_floor_check
This proc is to tell if an atmospheric device is in a state that should be unwrenchable because its under the floor.
\ No newline at end of file
diff --git a/obj/machinery/atmospherics/binary/circulator.html b/obj/machinery/atmospherics/binary/circulator.html
new file mode 100644
index 00000000000..3b14b1d3851
--- /dev/null
+++ b/obj/machinery/atmospherics/binary/circulator.html
@@ -0,0 +1 @@
+/obj/machinery/atmospherics/binary/circulator - Space Station 13Space Station 13 - Modules - Types — Var Details
The Thermo-Electric Generator this circulator is connected to
Var Details
generator
The Thermo-Electric Generator this circulator is connected to
\ No newline at end of file
diff --git a/obj/machinery/atmospherics/fission_reactor.html b/obj/machinery/atmospherics/fission_reactor.html
new file mode 100644
index 00000000000..6cd3f1c8083
--- /dev/null
+++ b/obj/machinery/atmospherics/fission_reactor.html
@@ -0,0 +1 @@
+/obj/machinery/atmospherics/fission_reactor - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Are admins freezing the reactor for whatever reason
air_contents
The current air contents of this device
average_heatgen
The amount of heat created by averaging total heat against all rods
can_create_power
Prevents the reactor from making power under certain circumstances
connected_chambers
Holds the list for the connected reactor chambers to take data from
control_lockout
Disables changing the desired power value
control_rods_remaining
How many functional control rods does the reactor have?
damage
The amount of damage we have currently. Use adjust_damage() to change it
desired_power
The desired percentage the engineers set the reactor control rods
emergency_alert
The alert we send when we've reached emergency_point
final_countdown
Are we giving the final countdown to meltdown
final_heat
The total amount of heat gathered in the reactor
final_power
The total amount of power being generated by the engine (in watts)
gas_event_modifier
Affects the current negative event chances
gas_overheat_bonus
Holds the bonus to overheat threshold from gasses
gas_reactivity_bonus
Holds the bonus to reactivity from gasses
grill
Holds the grill for the reactor.
heat_damage_threshold
The heat (in K) before the reactor accrues damage
lastwarning
Time in 1/10th of seconds since the last sent warning
minimum_operating_temp
What is the lowest temperature the reactor wants to be at?
offline
Is the engine currently fully offline
operating_power
What percentage are the reactor control rods running at? Minimum raised for each broken control rod
primary_engine
Is this the primary station engine that spawns in round?
radio
Our internal radio
reactivity_multiplier
A modifier for general reactivity, based off of heat production. Cant go below 1
repair_step
What repair step is the reactor on?
safe_alert
Our "Shit is no longer fucked" message. We send it when temp_damage is 0
safety_override
An admin-triggered var for enabling the station-ending self destruct
send_message
A boolean value for if we need to send out an alert. (usually during meltdowns)
soundloop
Our running soundloop
starting_up
Has the engine warmed up enough to start
startloop
Our startup soundloop
tick_counter
How long has it been since we processed the vent?
ticks_per_run
How often do we want to process the vent?
vent_lockout
Is the vent allowed to be closed without manual intervention?
venting
Toggles whether the reactor is erupting
warning_alert
The alert we send when we've reached warning_point
Proc Details
adjust_damage
Adjust how much damage the reactor has, and set broken if we exceed the meltdown point.
become_operational
Make the reactor become fully operational.
begin_venting
Negative Event. Ensure the emergency vent opens and gets stuck.
boot_up
Begin the startup sequence, but dont turn online yet.
build_reactor_network
Links all valid chambers to the reactor itself.
calculate_gas_effects
Calculate all of the bonuses and detriments of using specific gasses.
check_overheating
Check to see if the reactor is overheating or taking damage from lack of pressure.
check_overload_ready
Checks all connected chambers for a fuel rod
control_rod_failure
Negative Event. Lose a control rod from the reactor.
finalize_overload
The proc for actually blowing up the station. It is too late
meltdown
Begin the meltdown process
operating_rate
Returns a value from 0 to 1 based off current operating power
prep_overload
Begins the process of the centcomm doomsday overload
scram
Stops the reactor in a somewhat fancy way. Purely for anyone watching the monitor.
set_overload
Sets all the chambers to active overload position and unlocks the reactor.
shut_off
Turn the reactor off and stop processing.
update_minimum_temp
Update the minimum running temperature of the reactor.
update_overheat_threshold
Update our new overheat threshold.
\ No newline at end of file
diff --git a/obj/machinery/atmospherics/portable/pump.html b/obj/machinery/atmospherics/portable/pump.html
new file mode 100644
index 00000000000..863a7d94c12
--- /dev/null
+++ b/obj/machinery/atmospherics/portable/pump.html
@@ -0,0 +1 @@
+/obj/machinery/atmospherics/portable/pump - Space Station 13Space Station 13 - Modules - Types — Var Details
The desired pressure the pump should be outputting, either into the atmosphere, or into a holding tank.
Var Details
direction
The direction the pump is operating in. This should be either DIRECTION_IN or DIRECTION_OUT.
target_pressure
The desired pressure the pump should be outputting, either into the atmosphere, or into a holding tank.
\ No newline at end of file
diff --git a/obj/machinery/atmospherics/portable/scrubber.html b/obj/machinery/atmospherics/portable/scrubber.html
new file mode 100644
index 00000000000..1e3b3baa5be
--- /dev/null
+++ b/obj/machinery/atmospherics/portable/scrubber.html
@@ -0,0 +1 @@
+/obj/machinery/atmospherics/portable/scrubber - Space Station 13Space Station 13 - Modules - Types — Var Details
Is this scrubber acting on the 3x3 area around it.
Var Details
volume_rate
The volume of gas that can be scrubbed every time process_atmos() is called (0.5 seconds).
widenet
Is this scrubber acting on the 3x3 area around it.
\ No newline at end of file
diff --git a/obj/machinery/atmospherics/reactor_chamber.html b/obj/machinery/atmospherics/reactor_chamber.html
new file mode 100644
index 00000000000..3921f2a3866
--- /dev/null
+++ b/obj/machinery/atmospherics/reactor_chamber.html
@@ -0,0 +1 @@
+/obj/machinery/atmospherics/reactor_chamber - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Gets the neighbors of the current chamber, and adds itself to its neighbors. can prompt a cascade of linking
Var Details
chamber_state
Is the chamber up, down, or open
durability_level
Holds our durability bar overlay level. Updates overlays if it changes
enriching
Is the chamber currently in an enrichment process
heat_mod_total
Holds the current accumulated heat mod value from its neighbors
heat_total
The total amount of heat produced by this chamber
held_rod
Holds the specific rod inserted into the chamber
linked_reactor
Each reactor chamber can only be linked to a single reactor, if somehow theres two.
lockout
A simple binary to prevent open/close spam mucking up the anims
neighbors
Holds the list of linked neighbors
operational
Is the rod chamber actively running and providing its effects
power_mod_total
Holds the current accumulated power mod value from its neighbors
power_total
The total amount of power produced by this rod
previous_durability_level
Holds our previous overlay.
requirements_met
Has the requirements for the rod inside this chamber been met?
skip_link
Skip this chamber when building links
welded
Has the chamber been welded shut. Uh oh!
Proc Details
calculate_stats
Calculate how much heat and energy we should be making
check_status
Validates that all rod requirements are being met
desync
Removes the chamber from neighbor from its neighbors, and forces them to run status checks
dupe_check
Check for multiple on a tile and nuke it
find_link
Searches for a valid reactor or linked chamber nearby
form_link
Forms the two-way link between the reactor and the chamber, then searches for valid neighbors.
get_neighbors
Gets the neighbors of the current chamber, and adds itself to its neighbors. can prompt a cascade of linking
\ No newline at end of file
diff --git a/obj/machinery/atmospherics/refill_station.html b/obj/machinery/atmospherics/refill_station.html
new file mode 100644
index 00000000000..9905f91622f
--- /dev/null
+++ b/obj/machinery/atmospherics/refill_station.html
@@ -0,0 +1 @@
+/obj/machinery/atmospherics/refill_station - Space Station 13Space Station 13 - Modules - Types — Var Details
The desired pressure the refill station should be outputting into a holding tank.
Var Details
air_contents
The current air contents of this device
holding_tank
The tank inserted into the machine
light_color_on
Color of the station's environmental lighting
light_power_on
Light power of the station's environmental lighting
maximum_pressure
The maximum pressure of the device
refill_type
Type of atmos refilled. Used in examines
target_pressure
The desired pressure the refill station should be outputting into a holding tank.
\ No newline at end of file
diff --git a/obj/machinery/atmospherics/refill_station/plasma.html b/obj/machinery/atmospherics/refill_station/plasma.html
new file mode 100644
index 00000000000..0f78388f480
--- /dev/null
+++ b/obj/machinery/atmospherics/refill_station/plasma.html
@@ -0,0 +1 @@
+/obj/machinery/atmospherics/refill_station/plasma - Space Station 13Space Station 13 - Modules - Types — Var Details
What types of tanks can the plasma refill station accept?
Var Details
accepted_types
What types of tanks can the plasma refill station accept?
\ No newline at end of file
diff --git a/obj/machinery/atmospherics/supermatter_crystal.html b/obj/machinery/atmospherics/supermatter_crystal.html
new file mode 100644
index 00000000000..b344efedbfd
--- /dev/null
+++ b/obj/machinery/atmospherics/supermatter_crystal.html
@@ -0,0 +1 @@
+/obj/machinery/atmospherics/supermatter_crystal - Space Station 13Space Station 13 - Modules - Types — Var Details
This list will hold 4 supermatter darkness effects when the supermatter is delaminating to a singulo delam. This lets me darken the area to look better, as it turns out, walls make the effect look ugly as shit.
How much the bullets damage should be multiplied by when it is added to the internal variables
combined_gas
The last air sample's total molar count, will always be above or equal to 0
countdown
An effect we show to admins and ghosts the percentage of delam we're at
crystal_can_run_events
Can this crystal run supermatter events?
damage
The amount of damage we have currently
damage_archived
The damage we had before this cycle. Used to limit the damage we can take each cycle, and for safe_alert
damage_penalty_point
When we pass this amount of damage we start shooting bolts
darkness_effects
This list will hold 4 supermatter darkness effects when the supermatter is delaminating to a singulo delam. This lets me darken the area to look better, as it turns out, walls make the effect look ugly as shit.
dynamic_heat_modifier
Affects the amount of o2 and plasma the sm outputs, along with the heat it makes.
dynamic_heat_resistance
Affects the amount of damage and minimum point at which the sm takes heat damage
emergency_alert
The alert we send when we've reached emergency_point
emergency_point
The point at which we start sending messages to the common channel
event_active
Do we have an active event?
explosion_point
The point at which we delam
explosion_power
A scaling value that affects the severity of explosions.
final_countdown
Are we exploding?
gas_change_rate
Determines the rate of positve change in gas comp values
gas_coefficient
A bonus to rad production equal to EER multiplied by the bonus given by each gas. The bonus gets higher the more gas there is in the chamber.
gas_multiplier
flat multiplies the amount of gas released by the SM.
gasefficency
The portion of the gasmix we're on that we should remove
gasmix_power_ratio
Affects the power gain the sm experiances from heat
global_supermatter_id
The amount of supermatters that have been created this round
hallucination_power
How much hallucination should we produce per unit of power?
has_been_powered
Boolean used for logging if we've been powered
has_reached_emergency
Boolean used for logging if we've passed the emergency point
has_run_sclass
Run S-Class event? So we can only run one S-class event per round per crystal
heat_multiplier
flat multiplies the heat released by the SM
heat_penalty_threshold
value plus T0C = temp at which the SM starts to take damage. Variable for event usage
is_main_engine
Used to track if we can give out the sm sliver stealing objective
last_accent_sound
cooldown tracker for accent sounds
lastwarning
Time in 1/10th of seconds since the last sent warning
matter_power
Takes the energy throwing things into the sm generates and slowly turns it into actual power
mole_heat_penalty
Used to increase or lessen the amount of damage the sm takes from heat based on molar counts.
moveable
Can it be moved?
next_event_time
Time of next event
power
Refered to as eer on the moniter. This value effects gas output, heat, and damage.
power_additive
amount of EER to ADD
power_changes
Disables power changes
power_transmission_bonus
Affects the amount of radiation the sm makes. We multiply this with power to find the rads.
powerloss_dynamic_scaling
Based on co2 percentage, slowly moves between 0 and 1. We use it to calc the powerloss_inhibitor
powerloss_inhibitor
Uses powerloss_dynamic_scaling and combined_gas to lessen the effects of our powerloss functions
pre_reduction_power
This is the power between getting increased and reduced. It affects radiation.
processes
Disables the sm's proccessing totally.
produces_gas
Disables the production of gas, and pretty much any handling of it we do.
pulse_stage
A variable to have the warp effect for singulo SM work properly
radio
Our internal radio
safe_alert
Our "Shit is no longer fucked" message. We send it when damage is less then damage_archived
soundloop
Our soundloop
supermatter_id
The id of our supermatter
takes_damage
Disables all methods of taking damage
tick_counter
How long has it been since we processed the crystal?
ticks_per_run
How often do we want to process the crystal?
warning_alert
The alert we send when we've reached warning_point
warning_point
The point at which we should start sending messeges about the damage to the engi channels.
warp
Reference to the warp effect
zap_cutoff
The cutoff for a bolt jumping, grows with heat, lowers with higher mol count,
zap_icon
Tracks the bolt color we are using
\ No newline at end of file
diff --git a/obj/machinery/atmospherics/trinary/filter.html b/obj/machinery/atmospherics/trinary/filter.html
new file mode 100644
index 00000000000..fbb13a581a4
--- /dev/null
+++ b/obj/machinery/atmospherics/trinary/filter.html
@@ -0,0 +1 @@
+/obj/machinery/atmospherics/trinary/filter - Space Station 13Space Station 13 - Modules - Types — Var Details
The type of gas we want to filter. Valid values that go here are from the FILTER defines at the top of the file.
Var Details
filter_list
A list of available filter options. Used with ui_data.
filter_type
The type of gas we want to filter. Valid values that go here are from the FILTER defines at the top of the file.
\ No newline at end of file
diff --git a/obj/machinery/atmospherics/unary.html b/obj/machinery/atmospherics/unary.html
new file mode 100644
index 00000000000..287bc77fe98
--- /dev/null
+++ b/obj/machinery/atmospherics/unary.html
@@ -0,0 +1 @@
+/obj/machinery/atmospherics/unary - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/atmospherics/unary/cryo_cell.html b/obj/machinery/atmospherics/unary/cryo_cell.html
new file mode 100644
index 00000000000..3299f4d630e
--- /dev/null
+++ b/obj/machinery/atmospherics/unary/cryo_cell.html
@@ -0,0 +1 @@
+/obj/machinery/atmospherics/unary/cryo_cell - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Holds two bitflags, AUTO_EJECT_DEAD and AUTO_EJECT_HEALTHY. Used to determine if the cryo cell will auto-eject dead and/or completely healthy patients.
Called when either the occupant is dead and the AUTO_EJECT_DEAD flag is present, OR the occupant is alive, has no external damage, and the AUTO_EJECT_HEALTHY flag is present.
Var Details
auto_eject_prefs
Holds two bitflags, AUTO_EJECT_DEAD and AUTO_EJECT_HEALTHY. Used to determine if the cryo cell will auto-eject dead and/or completely healthy patients.
force_eject
Auto-eject the occupant after 1 minute
occupant_overlay
A separate effect for the occupant, as you can't animate overlays reliably and constantly removing and adding overlays is spamming the subsystem.
removal_timer
Timer that we use to remove people that are in us for too long
Proc Details
auto_eject
Called when either the occupant is dead and the AUTO_EJECT_DEAD flag is present, OR the occupant is alive, has no external damage, and the AUTO_EJECT_HEALTHY flag is present.
\ No newline at end of file
diff --git a/obj/machinery/atmospherics/unary/reactor_gas_node.html b/obj/machinery/atmospherics/unary/reactor_gas_node.html
new file mode 100644
index 00000000000..17eecf8e224
--- /dev/null
+++ b/obj/machinery/atmospherics/unary/reactor_gas_node.html
@@ -0,0 +1 @@
+/obj/machinery/atmospherics/unary/reactor_gas_node - Space Station 13Space Station 13 - Modules - Types — Var Details
Is this vent taking air in or out. TRUE by default.
linked_reactor
Hold which reactor the intake is connected to.
\ No newline at end of file
diff --git a/obj/machinery/atmospherics/unary/tank.html b/obj/machinery/atmospherics/unary/tank.html
new file mode 100644
index 00000000000..d82445cb188
--- /dev/null
+++ b/obj/machinery/atmospherics/unary/tank.html
@@ -0,0 +1 @@
+/obj/machinery/atmospherics/unary/tank - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/atmospherics/unary/thermomachine.html b/obj/machinery/atmospherics/unary/thermomachine.html
new file mode 100644
index 00000000000..9de1934ed58
--- /dev/null
+++ b/obj/machinery/atmospherics/unary/thermomachine.html
@@ -0,0 +1 @@
+/obj/machinery/atmospherics/unary/thermomachine - Space Station 13Space Station 13 - Modules - Types — Var Details
actual temperature will be defined by RefreshParts() and by the cooling var
Var Details
min_temperature
actual temperature will be defined by RefreshParts() and by the cooling var
\ No newline at end of file
diff --git a/obj/machinery/atmospherics/unary/vent_pump.html b/obj/machinery/atmospherics/unary/vent_pump.html
new file mode 100644
index 00000000000..40dbe766ae0
--- /dev/null
+++ b/obj/machinery/atmospherics/unary/vent_pump.html
@@ -0,0 +1 @@
+/obj/machinery/atmospherics/unary/vent_pump - Space Station 13Space Station 13 - Modules - Types — Var Details
What do we check when releasing/siphoning air - internal or external pressure
releasing
If false, siphons instead of releasing air
weld_burst_pressure
How much pressure does there have to be in the pipe to burst the vent open?
welded
Is this vent welded shut
\ No newline at end of file
diff --git a/obj/machinery/autoclave.html b/obj/machinery/autoclave.html
new file mode 100644
index 00000000000..eb892092789
--- /dev/null
+++ b/obj/machinery/autoclave.html
@@ -0,0 +1 @@
+/obj/machinery/autoclave - Space Station 13Space Station 13 - Modules - Types — Var Details
Timer ID for the actual work. Can be used to check if the machine is "busy"
Var Details
alpha_mask_filter
Alpha mask for the contained item sprite
is_open
Is the door open
occupant
What is currently inside the autoclave
occupant_overlay
Visual
sanitize_time
Time to sanitize the item inside
soundloop
Sound to play
work_timer_id
Timer ID for the actual work. Can be used to check if the machine is "busy"
\ No newline at end of file
diff --git a/obj/machinery/biogenerator.html b/obj/machinery/biogenerator.html
new file mode 100644
index 00000000000..6d243c74607
--- /dev/null
+++ b/obj/machinery/biogenerator.html
@@ -0,0 +1,20 @@
+/obj/machinery/biogenerator - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The /datum/design's categories which can be produced by this machine and can be uploaded via a disk.
container
The container that is used to store reagents from certain products.
efficiency
Used to modify the cost of producing items. A higher number means cheaper costs.
files
A reference to the biogenerator's research, which contains designs that it can build.
max_storable_plants
The maximum amount of plants the biogenerator can store.
processing
Is the biogenerator curretly grinding up plants?
product_list
A list which holds all categories and items the biogenator has available. Used with the UI to save having to rebuild this every time someone opens it.
productivity
Used to modify how much biomass is produced by grinding plants. A higher number means more biomass.
stored_plants
A list of plants currently stored plants in the biogenerator.
Proc Details
check_container_volume
Check if the biogenerator's container can hold the reagents we're trying to give it.
+
Arguments:
+
+
datum/design/D - the design we want to create reagents from
+
multiplier - how many of this design should be built
+
check_cost
Check if the biogenerator has enough biomass to create the passed in design D, times the mutiplier.
+
Arguments:
+
+
datum/design/D - the design we want to create
+
multiplier - how many of this design should be built
+
create_product
Create biogenerator products and subtracts the appropriate biomass cost.
+
Arguments:
+
+
datum/design/D - the design we want to create, or create reagents from
+
amount - how many of this design should be built
+
detach_container
Detach the container from the biogenerator.
eject_plants
Ejects the biogenerator's stored plants
process_plants
Tells the biogenerator to grind up any stored plants, and produce an appropriate amount of biomass.
+
Argumens:
+
+
mob/user - the mob who activated the biogenerator
+
update_ui_product_list
Builds/Updates the product_list used by the UI.
\ No newline at end of file
diff --git a/obj/machinery/bodyscanner.html b/obj/machinery/bodyscanner.html
new file mode 100644
index 00000000000..13e08414def
--- /dev/null
+++ b/obj/machinery/bodyscanner.html
@@ -0,0 +1 @@
+/obj/machinery/bodyscanner - Space Station 13Space Station 13 - Modules - Types — Var Details
What is the level of the stock parts in the body scanner. A scan_level of one detects organs of stealth_level 1 or below, while a scan level of 4 would detect 4 or below.
Var Details
scan_level
What is the level of the stock parts in the body scanner. A scan_level of one detects organs of stealth_level 1 or below, while a scan level of 4 would detect 4 or below.
\ No newline at end of file
diff --git a/obj/machinery/bsa/full.html b/obj/machinery/bsa/full.html
new file mode 100644
index 00000000000..0ef29c8295f
--- /dev/null
+++ b/obj/machinery/bsa/full.html
@@ -0,0 +1 @@
+/obj/machinery/bsa/full - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
If we failed a reload keep trying until the APC has enough energy available.
Var Details
energy_used_per_shot
Amount of energy required to reload the BSA (Joules)
reload_cooldown_time
The gun's cooldown
try_reload
Are we trying to reload? Should only be true if we failed to reload due to lack of power.
Proc Details
process
If we failed a reload keep trying until the APC has enough energy available.
\ No newline at end of file
diff --git a/obj/machinery/button/windowtint.html b/obj/machinery/button/windowtint.html
new file mode 100644
index 00000000000..743a8ee56fe
--- /dev/null
+++ b/obj/machinery/button/windowtint.html
@@ -0,0 +1 @@
+/obj/machinery/button/windowtint - Space Station 13Space Station 13 - Modules - Types — Var Details
The button toggle state. If range equals TINT_CONTROL_RANGE_AREA and id equals TINT_CONTROL_GROUP_NONE or is same with other button, it is shared between all such buttons in its area.
If equals TINT_CONTROL_GROUP_NONE, only windows with 'null-like' id are controlled by this button. Otherwise, windows with corresponding or 'null-like' id are controlled by this button.
Windows in this range are controlled by this button. If it equals TINT_CONTROL_RANGE_AREA, the button controls only windows at button_area.
Var Details
active
The button toggle state. If range equals TINT_CONTROL_RANGE_AREA and id equals TINT_CONTROL_GROUP_NONE or is same with other button, it is shared between all such buttons in its area.
button_area
The area where the button is located.
id
If equals TINT_CONTROL_GROUP_NONE, only windows with 'null-like' id are controlled by this button. Otherwise, windows with corresponding or 'null-like' id are controlled by this button.
range
Windows in this range are controlled by this button. If it equals TINT_CONTROL_RANGE_AREA, the button controls only windows at button_area.
\ No newline at end of file
diff --git a/obj/machinery/camera.html b/obj/machinery/camera.html
new file mode 100644
index 00000000000..918d80e42e3
--- /dev/null
+++ b/obj/machinery/camera.html
@@ -0,0 +1 @@
+/obj/machinery/camera - Space Station 13Space Station 13 - Modules - Types — Var Details
If this camera should be added to the camera network and update the camera network when it moves around
Var Details
non_chunking_camera
If this camera doesnt add to camera chunks. Used by camera bugs.
part_of_camera_network
If this camera should be added to the camera network and update the camera network when it moves around
\ No newline at end of file
diff --git a/obj/machinery/cell_charger.html b/obj/machinery/cell_charger.html
new file mode 100644
index 00000000000..9bb35a6e965
--- /dev/null
+++ b/obj/machinery/cell_charger.html
@@ -0,0 +1 @@
+/obj/machinery/cell_charger - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/chem_heater.html b/obj/machinery/chem_heater.html
new file mode 100644
index 00000000000..3b4dd141ac7
--- /dev/null
+++ b/obj/machinery/chem_heater.html
@@ -0,0 +1 @@
+/obj/machinery/chem_heater - Space Station 13Space Station 13 - Modules - Types — Var Details
The higher this number, the faster reagents will heat/cool.
Var Details
auto_eject
Whether this should auto-eject the beaker once done heating/cooling.
speed_increase
The higher this number, the faster reagents will heat/cool.
\ No newline at end of file
diff --git a/obj/machinery/chem_master.html b/obj/machinery/chem_master.html
new file mode 100644
index 00000000000..2c9f939b8e3
--- /dev/null
+++ b/obj/machinery/chem_master.html
@@ -0,0 +1,6 @@
+/obj/machinery/chem_master - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/machinery/clonepod.html b/obj/machinery/clonepod.html
new file mode 100644
index 00000000000..03f50bca61a
--- /dev/null
+++ b/obj/machinery/clonepod.html
@@ -0,0 +1,3 @@
+/obj/machinery/clonepod - Space Station 13Space Station 13 - Modules - Types — Var Details
The progress on the current clone.
+Measured from 0-100, where 0-20 has no body, and 21-100 gradually builds on limbs every 10. (r_arm, r_hand, l_arm, l_hand, r_leg, r_foot, l_leg, l_foot)
Our storage modifier, which is used in calculating organ and biomass storage.
Var Details
biomass
The cloner's biomass count.
biomass_storage_capacity
How much biomass we can store. This is calculated at the same time as organ_storage_capacity.
clone
Our patient.
clone_progress
The progress on the current clone.
+Measured from 0-100, where 0-20 has no body, and 21-100 gradually builds on limbs every 10. (r_arm, r_hand, l_arm, l_hand, r_leg, r_foot, l_leg, l_foot)
console
The linked cloning console.
countdown
The countdown.
current_limb
The limb we're currently growing.
currently_cloning
Whether or not we're cloning someone.
desc_flavor
Flavor text to show on examine.
desired_data
The cloning_data datum which shows the status we want the patient to be in.
emp_resistance
How resistant the cloner is to being emp'd. Equal to the average level of all the stock parts
limbs_to_grow
A list of limbs which have not yet been grown by the cloner.
organ_storage_capacity
How many organs we can store. This is calculated with the storage modifier in RefreshParts().
patient_data
The cloning_data datum which shows the patient's current status.
price_modifier
Our price modifier, multiplied with the base cost to get the true cost.
speed_modifier
The speed at which we clone. Each processing cycle will advance clone_progress by this amount.
storage_modifier
Our storage modifier, which is used in calculating organ and biomass storage.
\ No newline at end of file
diff --git a/obj/machinery/clonescanner.html b/obj/machinery/clonescanner.html
new file mode 100644
index 00000000000..2af6bc3d653
--- /dev/null
+++ b/obj/machinery/clonescanner.html
@@ -0,0 +1 @@
+/obj/machinery/clonescanner - Space Station 13Space Station 13 - Modules - Types — Var Details
The tier of scan we can perform. Tier 2 parts and up can scan husks - or a tier 4 scanner and tier 1 laser.
Var Details
console
The linked cloning console.
has_scanned
Whether or not we've tried to scan the current patient
last_scan
The scanner's latest scan result
occupant
The scanner's occupant.
scanning_tier
The tier of scan we can perform. Tier 2 parts and up can scan husks - or a tier 4 scanner and tier 1 laser.
\ No newline at end of file
diff --git a/obj/machinery/compost_bin.html b/obj/machinery/compost_bin.html
new file mode 100644
index 00000000000..dd6832bd06d
--- /dev/null
+++ b/obj/machinery/compost_bin.html
@@ -0,0 +1,2 @@
+/obj/machinery/compost_bin - Space Station 13Space Station 13 - Modules - Types — Var Details
compost bin
used to make soil from plants.
+Doesn't have components.
The maximum amount of biomass the compost bin can store.
compost
amount of compost in the compost bin
compost_capacity
The maximum amount of compost the compost bin can store.
potash
amount of potash in the compost bin
potash_capacity
The maximum amount of potash the compost bin can store.
potassium
amount of potassium in the compost bin
potassium_capacity
The maximum amount of potassium the compost bin can store.
process_counter
stage in the process, for timing purposes.
saltpetre
amount of saltpetre in the compost bin
\ No newline at end of file
diff --git a/obj/machinery/computer.html b/obj/machinery/computer.html
new file mode 100644
index 00000000000..59a6c6f5254
--- /dev/null
+++ b/obj/machinery/computer.html
@@ -0,0 +1 @@
+/obj/machinery/computer - Space Station 13Space Station 13 - Modules - Types — Var Details
Are we forcing the icon to be represented in a no-power state?
Var Details
active_download_effect
Reference to active download animation effect
cached_emissive_color
Cached list of colors associated with overlays
flickering
Are we in the middle of a flicker event?
force_no_power_icon_state
Are we forcing the icon to be represented in a no-power state?
\ No newline at end of file
diff --git a/obj/machinery/computer/account_database.html b/obj/machinery/computer/account_database.html
new file mode 100644
index 00000000000..b3649fda755
--- /dev/null
+++ b/obj/machinery/computer/account_database.html
@@ -0,0 +1 @@
+/obj/machinery/computer/account_database - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/computer/ai_resource.html b/obj/machinery/computer/ai_resource.html
new file mode 100644
index 00000000000..f10f3272298
--- /dev/null
+++ b/obj/machinery/computer/ai_resource.html
@@ -0,0 +1 @@
+/obj/machinery/computer/ai_resource - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/computer/aiupload.html b/obj/machinery/computer/aiupload.html
new file mode 100644
index 00000000000..b825fe2af59
--- /dev/null
+++ b/obj/machinery/computer/aiupload.html
@@ -0,0 +1 @@
+/obj/machinery/computer/aiupload - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
sets the cooldown time between uploads when emag'd
found_laws
holds the value for when the inherent_laws are counted in countlaws()
Proc Details
alert_silicons
pushes an alert to the AI and its borgs about the law changes
apply_emag_laws
applies ion-like laws into either the inherent law or true ion law positions due to an emag'd AI upload being used
check_valid_selection
checks to ensure there is a selected AI, and that it is on the same Z level
emag_inherent_law
modifies one of the AI's laws to read like an ion law
emag_ion_check
checks to see if an ion law is added or modified
\ No newline at end of file
diff --git a/obj/machinery/computer/arcade/battle.html b/obj/machinery/computer/arcade/battle.html
new file mode 100644
index 00000000000..01b9b2d8517
--- /dev/null
+++ b/obj/machinery/computer/arcade/battle.html
@@ -0,0 +1 @@
+/obj/machinery/computer/arcade/battle - Space Station 13Space Station 13 - Modules - Types — Var Details
the highest amount of health that the enemy achieves - this never changes, but avoids magic numbers
enemy_mp
enemy magic points
passive_streak
a counter of whether the last few player inputs were to heal, incurs a turtling penalty when emagged
player_hp
Player health/attack points
player_max_hp
the highest amount of health that the player has held
player_max_mp
the highest amount of mana that the player has held
player_mp
player magic points
previous_event
event message for attack messages, etc
\ No newline at end of file
diff --git a/obj/machinery/computer/arcade/recruiter.html b/obj/machinery/computer/arcade/recruiter.html
new file mode 100644
index 00000000000..5e2b359ac29
--- /dev/null
+++ b/obj/machinery/computer/arcade/recruiter.html
@@ -0,0 +1 @@
+/obj/machinery/computer/arcade/recruiter - Space Station 13Space Station 13 - Modules - Types — Var Details
Planets with either mispellings or ones that cannot support life
incorrect_species
Species that are NOT hirable in the eyes of NT
reason
Why did you lose?
spam_cooldown
Used to stop players from spamming the buttons
total_curriculums
Total number of "turns" to win
unique_candidate
Which unique candidate is he?
\ No newline at end of file
diff --git a/obj/machinery/computer/cloning.html b/obj/machinery/computer/cloning.html
new file mode 100644
index 00000000000..22eab35dc0e
--- /dev/null
+++ b/obj/machinery/computer/cloning.html
@@ -0,0 +1 @@
+/obj/machinery/computer/cloning - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/computer/drone_control.html b/obj/machinery/computer/drone_control.html
new file mode 100644
index 00000000000..ea75301fd6b
--- /dev/null
+++ b/obj/machinery/computer/drone_control.html
@@ -0,0 +1 @@
+/obj/machinery/computer/drone_control - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/computer/emergency_shuttle.html b/obj/machinery/computer/emergency_shuttle.html
new file mode 100644
index 00000000000..4bb09c3759f
--- /dev/null
+++ b/obj/machinery/computer/emergency_shuttle.html
@@ -0,0 +1 @@
+/obj/machinery/computer/emergency_shuttle - Space Station 13Space Station 13 - Modules - Types — Var Details
The malfunctioning AI that uploaded itself to the shuttle computer.
Var Details
windows_33_exe
The malfunctioning AI that uploaded itself to the shuttle computer.
\ No newline at end of file
diff --git a/obj/machinery/computer/fission_monitor.html b/obj/machinery/computer/fission_monitor.html
new file mode 100644
index 00000000000..8da3b739945
--- /dev/null
+++ b/obj/machinery/computer/fission_monitor.html
@@ -0,0 +1 @@
+/obj/machinery/computer/fission_monitor - Space Station 13Space Station 13 - Modules - Types — Var Details
Last status of the active reactor for caching purposes
Var Details
active
Reference to the active reactor
controller
Is this monitor a controller? Affected by visibility from the reactor
last_status
Last status of the active reactor for caching purposes
\ No newline at end of file
diff --git a/obj/machinery/computer/general_air_control.html b/obj/machinery/computer/general_air_control.html
new file mode 100644
index 00000000000..4e439b99a3d
--- /dev/null
+++ b/obj/machinery/computer/general_air_control.html
@@ -0,0 +1 @@
+/obj/machinery/computer/general_air_control - Space Station 13Space Station 13 - Modules - Types — Var Details
List of sensor names to UIDs to be used in the display
Var Details
autolink_sensors
List of sensors to autolink to. Key = sensor_id, Value = sensor display name
sensor_name_data_map
List of sensor names to cache lists used in the display TGUI
sensor_name_uid_map
List of sensor names to UIDs to be used in the display
\ No newline at end of file
diff --git a/obj/machinery/computer/general_air_control/large_tank_control.html b/obj/machinery/computer/general_air_control/large_tank_control.html
new file mode 100644
index 00000000000..e13b1cd7aeb
--- /dev/null
+++ b/obj/machinery/computer/general_air_control/large_tank_control.html
@@ -0,0 +1 @@
+/obj/machinery/computer/general_air_control/large_tank_control - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/computer/holodeck_control.html b/obj/machinery/computer/holodeck_control.html
new file mode 100644
index 00000000000..58f59c21164
--- /dev/null
+++ b/obj/machinery/computer/holodeck_control.html
@@ -0,0 +1 @@
+/obj/machinery/computer/holodeck_control - Space Station 13Space Station 13 - Modules - Types — Var Details
The default deck for this holodeck incase of emergency / destruction
Var Details
available_decks
All decks available to the player, will automatically be selectable in the menu if put in this list
selected_deck
String name of the currently selected holodeck state
shutdown_state
The default deck for this holodeck incase of emergency / destruction
\ No newline at end of file
diff --git a/obj/machinery/computer/id_upgrader.html b/obj/machinery/computer/id_upgrader.html
new file mode 100644
index 00000000000..a11fce22bde
--- /dev/null
+++ b/obj/machinery/computer/id_upgrader.html
@@ -0,0 +1 @@
+/obj/machinery/computer/id_upgrader - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/computer/library.html b/obj/machinery/computer/library.html
new file mode 100644
index 00000000000..621378d1dc9
--- /dev/null
+++ b/obj/machinery/computer/library.html
@@ -0,0 +1,4 @@
+/obj/machinery/computer/library - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Library Computer
This is the player facing machine that handles all library functions
+
This holds all procs for handling book checkins/checkout, book fines, book obj creation/modification
+the object also holds static lists for book inventory and checkouts. NO SQL CALLS OR QUERIES ARE MADE HERE, all
+of those are handled by the global library catalog that we will reference, and it should stay that way :)
Returns the amount of pages we will need to hold all the book our DB has found
Var Details
archive_page_num
Page Number for going through player book archives
cached_booklist
This list temporarily stores the player books we grab from the DB in datums, we only update it when we need to for performance reasons
checkoutperiod
How Long a book is allowed to be checked out for
checkouts
Static List of borrowbook datums, used to track book checkouts acrossed the library system
inventory
Static List of book datums to track what books the librarian has added to the library inventory
num_pages
Total number of pages for the parameters have set for our booklist
print_cooldown
Wait period for printing books
selected_report
report category_id we have selected
total_books
total inventoried books, used for setting book library IDs
user_data
list for storing player inputs and selections, helpful for cutting down on single variable declarations
Proc Details
getmaxpages
Returns the amount of pages we will need to hold all the book our DB has found
\ No newline at end of file
diff --git a/obj/machinery/computer/med_data.html b/obj/machinery/computer/med_data.html
new file mode 100644
index 00000000000..714a24bef50
--- /dev/null
+++ b/obj/machinery/computer/med_data.html
@@ -0,0 +1,11 @@
+/obj/machinery/computer/med_data - Space Station 13Space Station 13 - Modules - Types — Proc Details
text - Text to display, null/empty to clear the message from the UI
+
style - The style of the message: (color name), info, success, warning, danger, virus
+
ui_act_modal
Called in ui_act() to process modal actions
+
Arguments:
+
+
action - The action passed by tgui
+
params - The params passed by tgui
+
\ No newline at end of file
diff --git a/obj/machinery/computer/monitor.html b/obj/machinery/computer/monitor.html
new file mode 100644
index 00000000000..f32516dbabb
--- /dev/null
+++ b/obj/machinery/computer/monitor.html
@@ -0,0 +1,3 @@
+/obj/machinery/computer/monitor - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
TGUI module this power monitor uses to produce a UI for the user
powernet
The regional powernet this power monitor is hooked into
record_interval
Interval between power snapshots
record_size
How many records to keep of supply and demand
Proc Details
record
Power snapshot recording proc
+
This proc handles recording powernet history for the graph on the TGUI
+It is called every process(), but only logs every 5 seconds
\ No newline at end of file
diff --git a/obj/machinery/computer/operating.html b/obj/machinery/computer/operating.html
new file mode 100644
index 00000000000..be796afeed7
--- /dev/null
+++ b/obj/machinery/computer/operating.html
@@ -0,0 +1,5 @@
+/obj/machinery/computer/operating - Space Station 13Space Station 13 - Modules - Types — Var Details
Who is on the Operating Table connected to the respective Operating Computer?
+Only used to see if it changed from the previous occupant. If you want any actual information
+about the mob - use table.patient instead.
Var Details
currentPatient
Who is on the Operating Table connected to the respective Operating Computer?
+Only used to see if it changed from the previous occupant. If you want any actual information
+about the mob - use table.patient instead.
\ No newline at end of file
diff --git a/obj/machinery/computer/rdconsole.html b/obj/machinery/computer/rdconsole.html
new file mode 100644
index 00000000000..941cf6abcf5
--- /dev/null
+++ b/obj/machinery/computer/rdconsole.html
@@ -0,0 +1 @@
+/obj/machinery/computer/rdconsole - Space Station 13Space Station 13 - Modules - Types — Var Details
The ID of the top-level menu, such as protolathe, analyzer, etc.
network_manager_uid
UID of the network that we use
range
Range to search for rnd devices in proximity to console
submenu_imprinter
The ID of the circuit imprinter submenu. Shares the same submenus as the protolathe.
submenu_protolathe
The ID of the protolathe submenu, such as materials, chemicals, crafting etc.
t_disk
Holder for our inserted technology disk
\ No newline at end of file
diff --git a/obj/machinery/computer/rnd_backup.html b/obj/machinery/computer/rnd_backup.html
new file mode 100644
index 00000000000..18242609884
--- /dev/null
+++ b/obj/machinery/computer/rnd_backup.html
@@ -0,0 +1 @@
+/obj/machinery/computer/rnd_backup - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/computer/rnd_network_controller.html b/obj/machinery/computer/rnd_network_controller.html
new file mode 100644
index 00000000000..2241f1bad4f
--- /dev/null
+++ b/obj/machinery/computer/rnd_network_controller.html
@@ -0,0 +1,6 @@
+/obj/machinery/computer/rnd_network_controller - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The link ID of this console, used for map purposes
network_password
The network password for this device
research_files
The files for all the research data on this system
servers
List of R&D servers connected. Soft-refs only.
Proc Details
name_check
Name sanity check
+
Makes sure the target network name isnt already in use. Returns TRUE or FALSE depending on that criteria.
+Arguments:
+
+
pending_name - The name to check
+
\ No newline at end of file
diff --git a/obj/machinery/computer/robotics.html b/obj/machinery/computer/robotics.html
new file mode 100644
index 00000000000..c3708aacf1b
--- /dev/null
+++ b/obj/machinery/computer/robotics.html
@@ -0,0 +1,28 @@
+/obj/machinery/computer/robotics - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/machinery/computer/sat_control.html b/obj/machinery/computer/sat_control.html
new file mode 100644
index 00000000000..fd256154300
--- /dev/null
+++ b/obj/machinery/computer/sat_control.html
@@ -0,0 +1 @@
+/obj/machinery/computer/sat_control - Space Station 13Space Station 13 - Modules - Types — Var Details
Before world.time reaches this, the notice will not automatically update to show the testing status.
notice
A notice to display to the user.
notice_color
The color to use for the notice.
offset_x
The X offset of the UI map
offset_y
The Y offset of the UI map
tab_index
The ID of the currently opened UI tab
zoom
The zoom of the UI map
\ No newline at end of file
diff --git a/obj/machinery/computer/scan_consolenew.html b/obj/machinery/computer/scan_consolenew.html
new file mode 100644
index 00000000000..89212abfac0
--- /dev/null
+++ b/obj/machinery/computer/scan_consolenew.html
@@ -0,0 +1,11 @@
+/obj/machinery/computer/scan_consolenew - Space Station 13Space Station 13 - Modules - Types — Proc Details
Creates a blank injector with the name of the buffer at the given buffer_id
+
Arguments:
+
+
buffer_id - The ID of the buffer
+
copy_buffer - Whether the injector should copy the buffer contents
+
injector_cooldown_finish
Called when the injector creation cooldown finishes
ui_act_modal
Called in ui_act() to process modal actions
+
Arguments:
+
+
action - The action passed by tgui
+
params - The params passed by tgui
+
\ No newline at end of file
diff --git a/obj/machinery/computer/secure_data.html b/obj/machinery/computer/secure_data.html
new file mode 100644
index 00000000000..14796a2846e
--- /dev/null
+++ b/obj/machinery/computer/secure_data.html
@@ -0,0 +1,11 @@
+/obj/machinery/computer/secure_data - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The editable fields and their associated choices to display to the user.
field_edit_questions
The editable fields and their associated question to display to the user.
is_printing
Whether the computer is currently printing a paper or not.
record_general
The current general record being viewed.
record_security
The current security record being viewed.
temp_notice
The current temporary notice.
Proc Details
print_cell_log_finish
Called when the print cell log timer finishes
print_record_finish
Called when the print record timer finishes
set_temp
Sets a temporary message to display to the user
+
Arguments:
+
+
text - Text to display, null/empty to clear the message from the UI
+
style - The style of the message: (color name), info, success, warning, danger
+
ui_act_modal
Called in ui_act() to process modal actions
+
Arguments:
+
+
action - The action passed by tgui
+
params - The params passed by tgui
+
\ No newline at end of file
diff --git a/obj/machinery/computer/security.html b/obj/machinery/computer/security.html
new file mode 100644
index 00000000000..aa9ce1648c1
--- /dev/null
+++ b/obj/machinery/computer/security.html
@@ -0,0 +1,4 @@
+/obj/machinery/computer/security - Space Station 13Space Station 13 - Modules - Types — Var Details
security
The root type of all camera consoles. When used, these open a UI that has a left-hand sidebar
+displaying a list of active cameras in the console's assigned camera network. The bulk of the window
+on the right hand side displays a camera feed of the selected camera. This feed will attempt to refresh
+every time process() is called by SSobj as long as there are active watchers, living or dead.
The list of total watchers, living and dead, of this console.
Var Details
cam_plane_masters
All the plane masters that need to be applied.
living_watchers
The list of living watchers of this console. Used for playing a "terminal on" sound on first live viewer.
parent
Parent object this camera is assigned to. Used for camera bugs
silent_console
is the console silent when switching cameras?
watchers
The list of total watchers, living and dead, of this console.
\ No newline at end of file
diff --git a/obj/machinery/computer/security/telescreen/entertainment.html b/obj/machinery/computer/security/telescreen/entertainment.html
new file mode 100644
index 00000000000..c84ed0f6795
--- /dev/null
+++ b/obj/machinery/computer/security/telescreen/entertainment.html
@@ -0,0 +1 @@
+/obj/machinery/computer/security/telescreen/entertainment - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/computer/shuttle.html b/obj/machinery/computer/shuttle.html
new file mode 100644
index 00000000000..c11f35b0e0d
--- /dev/null
+++ b/obj/machinery/computer/shuttle.html
@@ -0,0 +1 @@
+/obj/machinery/computer/shuttle - Space Station 13Space Station 13 - Modules - Types — Var Details
Do we want to search for shuttle destinations as part of Initialize (fixed) or when SSlate_mapping fires (variable)
Var Details
find_destinations_in_late_mapping
Do we want to search for shuttle destinations as part of Initialize (fixed) or when SSlate_mapping fires (variable)
\ No newline at end of file
diff --git a/obj/machinery/computer/singulo_monitor.html b/obj/machinery/computer/singulo_monitor.html
new file mode 100644
index 00000000000..2f9665b6432
--- /dev/null
+++ b/obj/machinery/computer/singulo_monitor.html
@@ -0,0 +1,2 @@
+/obj/machinery/computer/singulo_monitor - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Last energy level of the singularity so we know if it went up or down between cycles
singu_radio
Radio for sending announcements
singularities
Cache-list of all singularities
warning_channel
Channel to send warning through to the engineers
Proc Details
refresh
Supermatter List Refresher
+
This proc loops through the list of supermatters in the atmos SS and adds them to this console's cache list
\ No newline at end of file
diff --git a/obj/machinery/computer/sm_monitor.html b/obj/machinery/computer/sm_monitor.html
new file mode 100644
index 00000000000..2ca6e6532be
--- /dev/null
+++ b/obj/machinery/computer/sm_monitor.html
@@ -0,0 +1,2 @@
+/obj/machinery/computer/sm_monitor - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Last status of the active supermatter for caching purposes
supermatters
Cache-list of all supermatter shards
Proc Details
refresh
Supermatter List Refresher
+
This proc loops through the list of supermatters in the atmos SS and adds them to this console's cache list
\ No newline at end of file
diff --git a/obj/machinery/computer/supplycomp.html b/obj/machinery/computer/supplycomp.html
new file mode 100644
index 00000000000..f9130bf4502
--- /dev/null
+++ b/obj/machinery/computer/supplycomp.html
@@ -0,0 +1 @@
+/obj/machinery/computer/supplycomp - Space Station 13Space Station 13 - Modules - Types — Var Details
the department account tethered to this supply console
hacked
Can we order special supplies
is_public
Is this a public console (Confirm + Shuttle controls are not visible)
reqtime
Time of last request
\ No newline at end of file
diff --git a/obj/machinery/computer/teleporter.html b/obj/machinery/computer/teleporter.html
new file mode 100644
index 00000000000..8d283f3492e
--- /dev/null
+++ b/obj/machinery/computer/teleporter.html
@@ -0,0 +1,4 @@
+/obj/machinery/computer/teleporter - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
When the teleporter is upgraded, it can lock onto beacons directly, rather than turfs. This is the variable for it.
calibrating
Whether calibration is in progress or not. Calibration prevents changes.
locked
A GPS with a locked destination
power_station
The power station that's connected to the console
regime
Switches mode between teleporter, gate and gps
target
The target turf of the teleporter
Proc Details
calibrateCallback
Calibrates the hub. Helper function of ui_act
eject
Helper function of ui_act
+
Triggered when ejecting a gps device. Sets the gps to the ground and resets the console
gate_helper
Helper function of ui_act.
+
Called after selecting a target for the teleporter in the UI.
resetPowerstation
Resets the connected powerstation to initial values. Helper function of ui_act
targets_gate
Creates a list of viable targets for the gate. Helper function of ui_data
targets_teleport
Creates a list of viable targets for the teleport. Helper function of ui_data
teleport_helper
Helper function of ui_act.
+
Called after selecting a target for the gate in the UI. Sets area_bypass and cc_beacon.
\ No newline at end of file
diff --git a/obj/machinery/computer/telescience.html b/obj/machinery/computer/telescience.html
new file mode 100644
index 00000000000..aa0b4b1d6f7
--- /dev/null
+++ b/obj/machinery/computer/telescience.html
@@ -0,0 +1 @@
+/obj/machinery/computer/telescience - Space Station 13Space Station 13 - Modules - Types — Var Details
Power options available, more crystals required for more oomph
rotation
Current rotation
rotation_offset
Offset of rotation
target_z
Target Z
teleport_cooldown
Teleport cooldown, based on the power used
teleporting
Are we currently working
teles_left
How many teleports left until it becomes uncalibrated
temp_msg
Temp message to show in the UI
\ No newline at end of file
diff --git a/obj/machinery/computer/turbine_computer.html b/obj/machinery/computer/turbine_computer.html
new file mode 100644
index 00000000000..8e6af46024a
--- /dev/null
+++ b/obj/machinery/computer/turbine_computer.html
@@ -0,0 +1 @@
+/obj/machinery/computer/turbine_computer - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/machinery/cooker.html b/obj/machinery/cooker.html
new file mode 100644
index 00000000000..68610317cf5
--- /dev/null
+++ b/obj/machinery/cooker.html
@@ -0,0 +1,5 @@
+/obj/machinery/cooker - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Perform a special shove attack.
+The return value of this proc gets passed up to shove_impact, so returning TRUE will prevent any further shove handling (like knockdown).
Var Details
burns
whether a machine burns something - if it does, you probably want to add the cooktype to /snacks/badrecipe
has_specials
Set to TRUE if the machine has specials to check, otherwise leave it at FALSE
special_attack_cooldown_time
Time between special attacks
special_attack_on_cooldown
Whether or not a special attack can be performed right now
upgradeable
Set to TRUE if the machine supports upgrades / deconstruction, or else it will ignore stuff like screwdrivers and parts exchangers
Proc Details
can_grab_attack
Verify if we would be able to perform our grab attack.
special_attack
Perform the special grab interaction.
+Return TRUE to drop the grab or FALSE to keep the grab afterwards.
special_attack_shove
Perform a special shove attack.
+The return value of this proc gets passed up to shove_impact, so returning TRUE will prevent any further shove handling (like knockdown).
\ No newline at end of file
diff --git a/obj/machinery/cooking.html b/obj/machinery/cooking.html
new file mode 100644
index 00000000000..a773cc8fa54
--- /dev/null
+++ b/obj/machinery/cooking.html
@@ -0,0 +1 @@
+/obj/machinery/cooking - Space Station 13Space Station 13 - Modules - Types — Proc Details
Retrieve which burning surface on the machine is being accessed.
Proc Details
AltClick
Empty the container on the surface if it exists.
clickpos_to_surface
Retrieve which burning surface on the machine is being accessed.
\ No newline at end of file
diff --git a/obj/machinery/cooking/grill/loaded/reactor.html b/obj/machinery/cooking/grill/loaded/reactor.html
new file mode 100644
index 00000000000..41712adee9e
--- /dev/null
+++ b/obj/machinery/cooking/grill/loaded/reactor.html
@@ -0,0 +1 @@
+/obj/machinery/cooking/grill/loaded/reactor - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/crema_switch.html b/obj/machinery/crema_switch.html
new file mode 100644
index 00000000000..00f4f01b57b
--- /dev/null
+++ b/obj/machinery/crema_switch.html
@@ -0,0 +1 @@
+/obj/machinery/crema_switch - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/deepstorage_teleporter.html b/obj/machinery/deepstorage_teleporter.html
new file mode 100644
index 00000000000..cb6b6c576e1
--- /dev/null
+++ b/obj/machinery/deepstorage_teleporter.html
@@ -0,0 +1 @@
+/obj/machinery/deepstorage_teleporter - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/disco.html b/obj/machinery/disco.html
new file mode 100644
index 00000000000..4e176433ec7
--- /dev/null
+++ b/obj/machinery/disco.html
@@ -0,0 +1 @@
+/obj/machinery/disco - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
If set to FALSE, the dance4 proc that rests the dancer will be replaced by dance2.
Proc Details
breakitdown
Starts the dance machine.
\ No newline at end of file
diff --git a/obj/machinery/disposal.html b/obj/machinery/disposal.html
new file mode 100644
index 00000000000..185ce509cb3
--- /dev/null
+++ b/obj/machinery/disposal.html
@@ -0,0 +1 @@
+/obj/machinery/disposal - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Can be one of: DISPOSALS_UNSCREWED (power off and panel unscrewed), DISPOSALS_OFF (power switched off), DISPOSALS_RECHARGING (active and charging), or DISPOSALS_CHARGED (active and ready to flush)
Counter that increments by 1 per tick. Resets when it reaches the value of flush_every_ticks and attempts to perform a flush.
flush_every_ticks
After the specified number of ticks, the disposals bin will check if it is ready to flush.
flushing
Is the disposals bin flushing right now?
mode
Can be one of: DISPOSALS_UNSCREWED (power off and panel unscrewed), DISPOSALS_OFF (power switched off), DISPOSALS_RECHARGING (active and charging), or DISPOSALS_CHARGED (active and ready to flush)
trunk
The attached pipe trunk.
Proc Details
stuff_mob_in
Handles stuffing a grabbed mob into the disposal
\ No newline at end of file
diff --git a/obj/machinery/dnaforensics.html b/obj/machinery/dnaforensics.html
new file mode 100644
index 00000000000..ee4889642de
--- /dev/null
+++ b/obj/machinery/dnaforensics.html
@@ -0,0 +1 @@
+/obj/machinery/dnaforensics - Space Station 13Space Station 13 - Modules - Types — Var Details
Global number of reports ran from that machine type
scanning
is currently scanning
\ No newline at end of file
diff --git a/obj/machinery/door.html b/obj/machinery/door.html
new file mode 100644
index 00000000000..bd7d368f805
--- /dev/null
+++ b/obj/machinery/door.html
@@ -0,0 +1,7 @@
+/obj/machinery/door - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Checks which way the airlock is facing and adjusts the direction accordingly.
+For use with multi-tile airlocks.
Var Details
assemblytype
The type of door frame to drop during deconstruction
barricaded
Is this door barricaded?
explosion_cooldown
So explosion doesn't deal extra damage for multitile airlocks
fillers
List. Player view blocking fillers for multi-tile doors.
foam_level
How many levels of foam do we have on us? Capped at 5
id
ID for the window tint button, or another external control
manual_dir
Is this door prevented from autorotating?
operating
Is it currently in the process of opening, closing or being tampered
safe
Whether the door detects things and mobs in its way and reopen or crushes them.
spark_block_cooldown
Blocks the door from making sparks when on cooldown. Lag preventor, disabled by disable_door_sparks for 3 seconds
superconductivity
How much this door reduces superconductivity to when closed.
unres_sides
Unrestricted sides. A bitflag for which direction (if any) can open the door with no access.
Proc Details
ex_act
We don't wanna end up getting ex_act() multiple times because we are located at multiple tiles
update_bounds
Checks which way the airlock is facing and adjusts the direction accordingly.
+For use with multi-tile airlocks.
+
Sets the bounds of the airlock. For use with multi-tile airlocks.
+If the airlock is multi-tile, it will set the bounds to be the size of the airlock.
+If the airlock doesn't already have fillers, it will create them.
+If the airlock already has fillers, it will move them to the correct location.
\ No newline at end of file
diff --git a/obj/machinery/door/airlock.html b/obj/machinery/door/airlock.html
new file mode 100644
index 00000000000..6a90b746fb1
--- /dev/null
+++ b/obj/machinery/door/airlock.html
@@ -0,0 +1,3 @@
+/obj/machinery/door/airlock - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Generates the airlock's wire layout based on the current area the airlock resides in.
Var Details
airlock_state
Synced with icon state for checking on callbacks
command_running
Is a command actually running
cur_command
Command currently being executed
id_tag
Our ID tag for map-based linking shenanigans
on_spark_cooldown
Have we created sparks too recently?
shockedby
List of people who have shocked this door for logging purposes
Proc Details
get_wires
Generates the airlock's wire layout based on the current area the airlock resides in.
+
Returns a new /datum/wires/ with the appropriate wire layout based on the airlock_wires
+of the area the airlock is in.
\ No newline at end of file
diff --git a/obj/machinery/door/airlock/abductor/secure.html b/obj/machinery/door/airlock/abductor/secure.html
new file mode 100644
index 00000000000..8594441872e
--- /dev/null
+++ b/obj/machinery/door/airlock/abductor/secure.html
@@ -0,0 +1 @@
+/obj/machinery/door/airlock/abductor/secure - Space Station 13Space Station 13 - Modules - Types — Proc Details
Always returns false since you aren't supposed to open it normally
Proc Details
check_access
Always returns false since you aren't supposed to open it normally
\ No newline at end of file
diff --git a/obj/machinery/door/airlock/cult.html b/obj/machinery/door/airlock/cult.html
new file mode 100644
index 00000000000..2f7a888726c
--- /dev/null
+++ b/obj/machinery/door/airlock/cult.html
@@ -0,0 +1 @@
+/obj/machinery/door/airlock/cult - Space Station 13Space Station 13 - Modules - Types — Var Details
Door overlays when concealed (Bolt lights, maintenance panel, etc.)
stealthy
Is this door currently concealed
\ No newline at end of file
diff --git a/obj/machinery/door/airlock/spawner.html b/obj/machinery/door/airlock/spawner.html
new file mode 100644
index 00000000000..2ec40456369
--- /dev/null
+++ b/obj/machinery/door/airlock/spawner.html
@@ -0,0 +1 @@
+/obj/machinery/door/airlock/spawner - Space Station 13Space Station 13 - Modules - Types — Proc Details
spawner
Special case so spawners with doors autorotate, otherwise identicle
\ No newline at end of file
diff --git a/obj/machinery/door/firedoor.html b/obj/machinery/door/firedoor.html
new file mode 100644
index 00000000000..52339597fd1
--- /dev/null
+++ b/obj/machinery/door/firedoor.html
@@ -0,0 +1 @@
+/obj/machinery/door/firedoor - Space Station 13Space Station 13 - Modules - Types — Var Details
How long does opening by hand take, in deciseconds.
Var Details
boltslocked
Whether the "bolts" are "screwed". Used for deconstruction sequence. Has nothing to do with airlock bolting.
manual_open_time
How long does opening by hand take, in deciseconds.
\ No newline at end of file
diff --git a/obj/machinery/door/window.html b/obj/machinery/door/window.html
new file mode 100644
index 00000000000..8e701da8e2c
--- /dev/null
+++ b/obj/machinery/door/window.html
@@ -0,0 +1 @@
+/obj/machinery/door/window - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Check whether or not this door can close, based on whether or not someone's standing in front of it holding it open
Var Details
old_color
Color for the window if it gets changed at some point, to preserve painter functionality
Proc Details
check_close
Check whether or not this door can close, based on whether or not someone's standing in front of it holding it open
\ No newline at end of file
diff --git a/obj/machinery/door_control.html b/obj/machinery/door_control.html
new file mode 100644
index 00000000000..95bc6547474
--- /dev/null
+++ b/obj/machinery/door_control.html
@@ -0,0 +1 @@
+/obj/machinery/door_control - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/doppler_array.html b/obj/machinery/doppler_array.html
new file mode 100644
index 00000000000..0506a2faa94
--- /dev/null
+++ b/obj/machinery/doppler_array.html
@@ -0,0 +1 @@
+/obj/machinery/doppler_array - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
overrides base power_change to check to make sure machine is anchored
Var Details
linked_machines
List of linked machines
Proc Details
power_change
overrides base power_change to check to make sure machine is anchored
\ No newline at end of file
diff --git a/obj/machinery/driver_button.html b/obj/machinery/driver_button.html
new file mode 100644
index 00000000000..d67f2e3e3b1
--- /dev/null
+++ b/obj/machinery/driver_button.html
@@ -0,0 +1 @@
+/obj/machinery/driver_button - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/economy.html b/obj/machinery/economy.html
new file mode 100644
index 00000000000..36dd4c30034
--- /dev/null
+++ b/obj/machinery/economy.html
@@ -0,0 +1,9 @@
+/obj/machinery/economy - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
economy
Base machine type for machinery that needs to interact with users spending Space Cash or credit from Money Accounts
+has helper procs to automate account authentification and handling transactions.
create the most effective combination of space cash piles to make up the requested amount
Var Details
account_database
the economy database this machine is connected to
cash_stored
Amount of cash "stored" in this machine (used for smashing and grabbing mechanics)
cash_transaction
Amount of cash inserted into the machine during a transaction
restricted_bypass
Can this machine access restricted money accounts?
smash_and_grab
If you beat the shit out of this machine, will money fling out?
Proc Details
dispense_space_cash
create the most effective combination of space cash piles to make up the requested amount
+
Will create up to 10 stacks of space cash based on the given amount, if there is more than 100,000 given,
+this proc will return the amount not dispensed.
+
Arguments:
+
+
amount - amount of space cash to dispense
+
user - the mob to dispense the space cash to
+
\ No newline at end of file
diff --git a/obj/machinery/economy/arcade/claw.html b/obj/machinery/economy/arcade/claw.html
new file mode 100644
index 00000000000..fc3f7288e04
--- /dev/null
+++ b/obj/machinery/economy/arcade/claw.html
@@ -0,0 +1 @@
+/obj/machinery/economy/arcade/claw - Space Station 13Space Station 13 - Modules - Types — Var Details
Chance to dispense a SECOND prize if you win, increased by matter bin rating
Var Details
bonus_prize_chance
Chance to dispense a SECOND prize if you win, increased by matter bin rating
\ No newline at end of file
diff --git a/obj/machinery/economy/atm.html b/obj/machinery/economy/atm.html
new file mode 100644
index 00000000000..34b95bd512c
--- /dev/null
+++ b/obj/machinery/economy/atm.html
@@ -0,0 +1 @@
+/obj/machinery/economy/atm - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
failed login attempts counter, used for locking out the atm
print_cooldown
cooldown inbetween printing balance statements n stuff
view_screen
UI screen the ATM is on currently
Proc Details
clear_account
ensures proper GC of money account
clear_held_card
ensures proper GC of ID card
\ No newline at end of file
diff --git a/obj/machinery/economy/slot_machine.html b/obj/machinery/economy/slot_machine.html
new file mode 100644
index 00000000000..2fcef63e81a
--- /dev/null
+++ b/obj/machinery/economy/slot_machine.html
@@ -0,0 +1 @@
+/obj/machinery/economy/slot_machine - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
With a chance of "emagged_win_chance", we win some money and reset the machine to a non-emagged state
Var Details
emagged_game_in_progress
Used to handle bolting/unbolting the emagged machine while someone is using it
emagged_win_chance
The %chance of winning money and resetting the emagged state
Proc Details
emagged_spinning
The spinning and throwing away is handled here, with a possible call to winning
emagged_winning
With a chance of "emagged_win_chance", we win some money and reset the machine to a non-emagged state
\ No newline at end of file
diff --git a/obj/machinery/economy/vending.html b/obj/machinery/economy/vending.html
new file mode 100644
index 00000000000..be9ba257976
--- /dev/null
+++ b/obj/machinery/economy/vending.html
@@ -0,0 +1,17 @@
+/obj/machinery/economy/vending - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Set up a refill canister that matches this machines products
Var Details
active
No sales pitches if off
ads_list
Unimplemented list of ads that are meant to show up somewhere, but don't.
aggressive
If the vendor should tip on anyone who walks by. Mainly used for brand intelligence
aggressive_slogan_delay
How often slogans will be used by vendors if they're aggressive.
aggressive_tilt_chance
How often will the vendor tip when you walk by it when aggressive is true?
always_deconstruct
Should we always be able to deconstruct this into components, even if it has no refill_canister?
category
The category of this vendor. Used for announcing brand intelligence.
crit_damage_factor
Factor of extra damage to deal when triggering a crit
extended_inventory
can we access the hidden inventory?
flickering
blocks further flickering while true
force_no_power_icon_state
do I look unpowered, even when powered?
hit_warning_cooldown_length
How long to wait before resetting the warning cooldown
icon_addon
Icon to be an overlay over the base sprite
icon_broken
Icon for the broken overlay, defaults to icon_state + _broken
icon_deny
Icon_state when denying access
icon_lightmask
Icon for the lightmask, defaults to icon_state + _off, _lightmask if one is defined.
icon_off
Icon for the off overlay, defaults to icon_state + _off
icon_panel
Icon for the panel overlay, defaults to icon_state + _panel
icon_vend
Icon_state when vending
inserted_item
the actual item inserted
item_slot
boolean, whether this vending machine can accept people inserting items into it, used for coffee vendors
last_hit_time
Last time the machine was punched
num_shards
number of shards to apply when a crit embeds
scan_id
If true, enforce access checks on customers. Disabled by messing with wires.
seconds_electrified
Allows people to access a vendor that's normally access restricted.
+Shocks people like an airlock
self_knockover_factor
Factor of extra damage to deal when you knock it over onto yourself
shoot_chance
How often are we firing the items? (prob(...))
shoot_inventory
Fire items at customers! We're broken!
shoot_speed
How hard are we firing the items?
shut_up
If true, prevent saying sales pitches
slogan_list
List of slogans the vendor will say, optional
squish_damage
Amount of damage to deal when tipped
tiltable
If this vending machine can be tipped or not
tilted
If this vendor is currently tipped
vend_delay
How long vendor takes to vend one item.
vend_ready
If off, vendor is busy and unusable until current action finishes
Proc Details
build_inventory
Build src.produdct_records from the products lists
+
src.products, src.contraband, src.premium, and src.prices allow specifying
+products that the vending machine is to carry without manually populating
+src.product_records.
refill_inventory
Refill our inventory from the passed in product list into the record list
+
Arguments:
+
+
productlist - list of types -> amount
+
recordlist - existing record datums
+
restock
Refill a vending machine from a refill canister
+
This takes the products from the refill canister and then fills the products,contraband and premium product categories
+
Arguments:
+
+
canister - the vending canister we are refilling from
+
unbuild_inventory
Given a record list, go through and and return a list of type -> amount
update_canister
Set up a refill canister that matches this machines products
+
This is used when the machine is deconstructed, so the items aren't "lost"
\ No newline at end of file
diff --git a/obj/machinery/economy/vending/boozeomat.html b/obj/machinery/economy/vending/boozeomat.html
new file mode 100644
index 00000000000..2631eb702d9
--- /dev/null
+++ b/obj/machinery/economy/vending/boozeomat.html
@@ -0,0 +1 @@
+/obj/machinery/economy/vending/boozeomat - Space Station 13Space Station 13 - Modules - Types — Var Details
22 drink entities below, plus the glasses, in case someone wants to edit the number of bottles
Var Details
icon_deny
22 drink entities below, plus the glasses, in case someone wants to edit the number of bottles
\ No newline at end of file
diff --git a/obj/machinery/economy/vending/custom.html b/obj/machinery/economy/vending/custom.html
new file mode 100644
index 00000000000..14f4121e63d
--- /dev/null
+++ b/obj/machinery/economy/vending/custom.html
@@ -0,0 +1 @@
+/obj/machinery/economy/vending/custom - Space Station 13Space Station 13 - Modules - Types — Proc Details
Tries to add something to the vendor. can_wait returns INSERT_NEEDS_INPUT if it would wait for user input, quiet suppresses success messages, and bag is used when the item is being transferred from a storage item.
Proc Details
try_add_stock
Tries to add something to the vendor. can_wait returns INSERT_NEEDS_INPUT if it would wait for user input, quiet suppresses success messages, and bag is used when the item is being transferred from a storage item.
\ No newline at end of file
diff --git a/obj/machinery/field/generator.html b/obj/machinery/field/generator.html
new file mode 100644
index 00000000000..65749a9209a
--- /dev/null
+++ b/obj/machinery/field/generator.html
@@ -0,0 +1,15 @@
+/obj/machinery/field/generator - Space Station 13Space Station 13 - Modules - Types — Proc Details
Draws power. If there isn't enough energy to sustain the draw, draw from connected generators, up to 3 generators away.
+We never do a 180, so at most we should be going around 270 degrees, and never loop.
Sends energy to every neighbour that has less energy
Proc Details
draw_power
Draws power. If there isn't enough energy to sustain the draw, draw from connected generators, up to 3 generators away.
+We never do a 180, so at most we should be going around 270 degrees, and never loop.
+
Arguments:
+
+
draw - Amount of energy needed to sustain powerdraw during this cycle
+
failsafe - Current depth of the recursion. We don't let this go above 3.
+
last - should be src of the previous call, we check against this to prevent going back and forth between two field generators.
+
find_containment_gens
Gets a list of generators that form a field that is enclosing a given singularity, if such a field exists.
+
Arguments:
+
+
_dir - The direction in which we are currently going
+
singulo - The singularity we are looking to contain
+
containment_gens - A list of generators which is the portion of the potential result we have so far.
+
spread_energy
Sends energy to every neighbour that has less energy
\ No newline at end of file
diff --git a/obj/machinery/firealarm.html b/obj/machinery/firealarm.html
new file mode 100644
index 00000000000..6a1ececc40a
--- /dev/null
+++ b/obj/machinery/firealarm.html
@@ -0,0 +1 @@
+/obj/machinery/firealarm - Space Station 13Space Station 13 - Modules - Types — Var Details
Whether or not the fire alarm will sound the alarm if its temperature rises above 200C
Var Details
detecting
Whether or not the fire alarm will sound the alarm if its temperature rises above 200C
\ No newline at end of file
diff --git a/obj/machinery/fishtank.html b/obj/machinery/fishtank.html
new file mode 100644
index 00000000000..429ffa16691
--- /dev/null
+++ b/obj/machinery/fishtank.html
@@ -0,0 +1,3 @@
+/obj/machinery/fishtank - Space Station 13Space Station 13 - Modules - Types — Proc Details
Note from FalseIncarnate:
+Feel free to try cleaning it up if you think of a better way to do it.
Proc Details
examine
Note from FalseIncarnate:
+Feel free to try cleaning it up if you think of a better way to do it.
\ No newline at end of file
diff --git a/obj/machinery/gravity_generator.html b/obj/machinery/gravity_generator.html
new file mode 100644
index 00000000000..15b21dd9218
--- /dev/null
+++ b/obj/machinery/gravity_generator.html
@@ -0,0 +1 @@
+/obj/machinery/gravity_generator - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/machinery/gravity_generator/main.html b/obj/machinery/gravity_generator/main.html
new file mode 100644
index 00000000000..028485a5994
--- /dev/null
+++ b/obj/machinery/gravity_generator/main.html
@@ -0,0 +1,4 @@
+/obj/machinery/gravity_generator/main - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Shake everyone on the area list and play an alarm to let them know that gravity was enagaged/disenagaged.
Var Details
breaker_on
Is the breaker switch turned on
charge_count
Charge percentage
charging_state
Charging state (Idle, Charging, Discharging)
on
Is the generator producing gravity
Proc Details
set_gravity
Set the state of gravity on the z-level.
+
+
enable - TRUE to enable gravity, FALSE to disable gravity
+
set_power
Set the charging state based on external power and the breaker state.
shake_everyone
Shake everyone on the area list and play an alarm to let them know that gravity was enagaged/disenagaged.
\ No newline at end of file
diff --git a/obj/machinery/grey_autocloner.html b/obj/machinery/grey_autocloner.html
new file mode 100644
index 00000000000..68472d82b2c
--- /dev/null
+++ b/obj/machinery/grey_autocloner.html
@@ -0,0 +1 @@
+/obj/machinery/grey_autocloner - Space Station 13Space Station 13 - Modules - Types — Var Details
If the clone pod is cloning someone, attempting becomes true, so only one person can clone at a time. False otherwise.
Var Details
attempting
If the clone pod is cloning someone, attempting becomes true, so only one person can clone at a time. False otherwise.
\ No newline at end of file
diff --git a/obj/machinery/hologram/holopad.html b/obj/machinery/hologram/holopad.html
new file mode 100644
index 00000000000..9f8e8fccad4
--- /dev/null
+++ b/obj/machinery/hologram/holopad.html
@@ -0,0 +1,17 @@
+/obj/machinery/hologram/holopad - Space Station 13Space Station 13 - Modules - Types — Var Details
holopad
A stationary holopad for projecting hologram and making and receiving holocalls.
+
Holopads are floor-plane machines similar, in appearance and interactive function, to quantum pads. They can be
+used by crew members to make and answer holocalls, or by the AI to project holograms autonomously.
+
Holopads are machines which can project a hologram up to holo_range tiles away. They do this in one of two modes:
+holocalls, and AI holograms. Holocalls require a user to stand on a holopad, use its menu to select a remote holopad,
+and make a call. Holocalls must be answered by the receiving holopad, or they will fail. Holopads can be configured
+globally to auto-accept instead of failing, with the debug static variable force_answer_call. They can also be
+individually configured to auto-accept calls immediately by setting their public mode option (public_mode),
+which can be done in-game by using a screwdriver and then a multitool on a holopad. Holocalls will automatically end
+if power goes out, the caller moves off the calling holopad, the caller projects outside the receiving holopad's
+range, the caller is killed or incapacitated, the caller ghosts or disconnects, or the caller is QDELETED. AI
+holograms require the AI to focus on the originating holopad and click on it; no answer is required. If the AI moves
+out of a holopad's range and into the range of another, it will attempt to transfer its hologram to the next holopad.
+Otherwise, AI holograms will stop projecting if power goes out for the originating holopad, the AI clicks on its
+origin holopad, or, like holocalls, if the AI is killed, incapacitated, disconnected, QDELETED, or ghosts.
+Holopads relay speech from the caller made with the :h radio key, and relay all speech on the answering end to the
+caller or AI.
Whether or not this holopad is currently ringing, from being called by another pad.
Var Details
dialling_input
Whether or not the user is currently selecting where to send their call.
force_answer_call
Universal debug toggle for whether holopads will automatically answer calls after a few rings.
holo_calls
A list of holocalls associated with this holopad.
holo_range
The range, in tiles, that a holopad can project a hologram.
holorays
Holoray-mob link.
last_request
Last request time, to prevent request spam. ~Carn
masters
List of living mobs currently using the holopad
outgoing_call
The outgoing holocall currently being processed by this holopad.
public_mode
Toggle for auto-answering calls immediately, set via multitool.
ray
The ray effect emanating from this holopad to the produced hologram.
ringing
Whether or not this holopad is currently ringing, from being called by another pad.
\ No newline at end of file
diff --git a/obj/machinery/hydroponics.html b/obj/machinery/hydroponics.html
new file mode 100644
index 00000000000..94457ea8a5f
--- /dev/null
+++ b/obj/machinery/hydroponics.html
@@ -0,0 +1 @@
+/obj/machinery/hydroponics - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Tray Setters - The following procs adjust the tray or plants variables, and make sure that the stat doesn't go out of bounds.
Var Details
age
Current age
cycledelay
Amount of time per plant cycle
dead
Is it dead?
doping_chem
The typepath of the chemical (if any) the tray has been doped with to bias its mutations.
doping_effects
Maps doping chemicals to their affected stats.
harvest
Ready to harvest?
lastcycle
Used for timing of cycles.
lastproduce
Last time it was harvested
max_mutagen
The maximum amount of mutagen in the tray.
maxnutri
The maximum nutrient of water in the tray
maxwater
The maximum amount of water in the tray
mut_beamed
Has the tray been hit by a mutation beam this harvest?
mutagen
The amount of mutagens (UM or radioactives) in the tray.
mutagen_tank_name
What do we call the mutagen tank?
myseed
The currently planted seed
nutrient
Nutrient in use
nutrilevel
The amount of nutrient in the tray (max 10)
pestlevel
The amount of pests in the tray (max 10)
plant_health
Its health
recent_bee_visit
Have we been visited by a bee recently, so bees dont overpollinate one plant
self_sufficiency_req
Required total dose to make a self-sufficient hydro tray. 1:1 with earthsblood.
self_sustaining
If the tray generates nutrients and water on its own
toxic
Toxicity in the tray
using_irrigation
If the tray is connected to other trays via irrigation hoses
waterlevel
The amount of water in the tray (max 100)
weedlevel
The amount of weeds in the tray (max 10)
yield_beamed
Has the tray been hit by a yield-increasing beam this harvest?
yieldmod
Nutrient's effect on yield
Proc Details
CanPass
Diona Nymph Related Procs
adjustNutri
Tray Setters - The following procs adjust the tray or plants variables, and make sure that the stat doesn't go out of bounds.
\ No newline at end of file
diff --git a/obj/machinery/icemachine.html b/obj/machinery/icemachine.html
new file mode 100644
index 00000000000..2a6d7fc3174
--- /dev/null
+++ b/obj/machinery/icemachine.html
@@ -0,0 +1 @@
+/obj/machinery/icemachine - Space Station 13Space Station 13 - Modules - Types — Var Details
Reagents that can't be exported from the machine except by making ice cream.
Var Details
locked_reagents
Reagents that can't be exported from the machine except by making ice cream.
\ No newline at end of file
diff --git a/obj/machinery/igniter.html b/obj/machinery/igniter.html
new file mode 100644
index 00000000000..1e123210107
--- /dev/null
+++ b/obj/machinery/igniter.html
@@ -0,0 +1 @@
+/obj/machinery/igniter - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/keycard_auth.html b/obj/machinery/keycard_auth.html
new file mode 100644
index 00000000000..302b9ba2596
--- /dev/null
+++ b/obj/machinery/keycard_auth.html
@@ -0,0 +1 @@
+/obj/machinery/keycard_auth - Space Station 13Space Station 13 - Modules - Types — Var Details
True when a request is sent from another device. So someone on the other end can't just close the ERT menu while someone is typing
Var Details
busy
True when a request is sent from another device. So someone on the other end can't just close the ERT menu while someone is typing
\ No newline at end of file
diff --git a/obj/machinery/kitchen_machine.html b/obj/machinery/kitchen_machine.html
new file mode 100644
index 00000000000..8dc7bc1bd60
--- /dev/null
+++ b/obj/machinery/kitchen_machine.html
@@ -0,0 +1,5 @@
+/obj/machinery/kitchen_machine - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Perform a special shove attack.
+The return value of this proc gets passed up to shove_impact, so returning TRUE will prevent any further shove handling (like knockdown).
Var Details
soundloop
Sound used when starting and ending cooking
special_attack_cooldown_time
Time between special attacks
special_attack_on_cooldown
Whether or not a special attack can be performed right now
Proc Details
Initialize
Initialising
cook
Machine Menu Handling/Cooking
format_content_descs
Machine Menu
is_refillable
Check if the machine is running when trying to add reagents to it.
item_interaction
Item Adding
special_attack
Perform the special grab interaction.
+Return TRUE to drop the grab or FALSE to keep the grab afterwards.
special_attack_shove
Perform a special shove attack.
+The return value of this proc gets passed up to shove_impact, so returning TRUE will prevent any further shove handling (like knockdown).
\ No newline at end of file
diff --git a/obj/machinery/kitchen_machine/microwave.html b/obj/machinery/kitchen_machine/microwave.html
new file mode 100644
index 00000000000..aab723b3dc0
--- /dev/null
+++ b/obj/machinery/kitchen_machine/microwave.html
@@ -0,0 +1 @@
+/obj/machinery/kitchen_machine/microwave - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/machinery/light.html b/obj/machinery/light.html
new file mode 100644
index 00000000000..cdec6df2baa
--- /dev/null
+++ b/obj/machinery/light.html
@@ -0,0 +1,12 @@
+/obj/machinery/light - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Sets the light power, range, and colour based on environmental conditions such as night shift and fire alarms.
+Also handles light bulbs burning out and exploding if trigger is TRUE.
flicker_event
Flicker routine for the light.
+Called by invoke_async so the parent proc can return immediately.
trigger - Should this update check if the light will explode/burn out.
+
instant - Will the lightbulb turn on instantly, or after a short delay.
+
play_sound - Will the lightbulb play a sound when it's turned on.
+
\ No newline at end of file
diff --git a/obj/machinery/light_construct.html b/obj/machinery/light_construct.html
new file mode 100644
index 00000000000..65a80781910
--- /dev/null
+++ b/obj/machinery/light_construct.html
@@ -0,0 +1,2 @@
+/obj/machinery/light_construct - Space Station 13Space Station 13 - Modules - Types — Var Details
How many metal sheets get given after deconstruction
stage
Construction stage
\ No newline at end of file
diff --git a/obj/machinery/light_construct/clockwork.html b/obj/machinery/light_construct/clockwork.html
new file mode 100644
index 00000000000..61039d2b487
--- /dev/null
+++ b/obj/machinery/light_construct/clockwork.html
@@ -0,0 +1,2 @@
+/obj/machinery/light_construct/clockwork - Space Station 13Space Station 13 - Modules - Types
Brass fixture frame
Incomplete brass light tube fixture
+
Becomes a [Brass light fixture] when completed
\ No newline at end of file
diff --git a/obj/machinery/light_construct/small.html b/obj/machinery/light_construct/small.html
new file mode 100644
index 00000000000..2ef267a2047
--- /dev/null
+++ b/obj/machinery/light_construct/small.html
@@ -0,0 +1,2 @@
+/obj/machinery/light_construct/small - Space Station 13Space Station 13 - Modules - Types
\ No newline at end of file
diff --git a/obj/machinery/magma_crucible.html b/obj/machinery/magma_crucible.html
new file mode 100644
index 00000000000..2139131b8d1
--- /dev/null
+++ b/obj/machinery/magma_crucible.html
@@ -0,0 +1 @@
+/obj/machinery/magma_crucible - Space Station 13Space Station 13 - Modules - Types — Var Details
How many outputs are we pouring to? Do not stop animating until we are no longer pouring.
pouring
State for if ore is being taken from it
sheet_per_ore
Sheet multiplier applied when smelting ore.
\ No newline at end of file
diff --git a/obj/machinery/mass_driver.html b/obj/machinery/mass_driver.html
new file mode 100644
index 00000000000..ecde5bf2166
--- /dev/null
+++ b/obj/machinery/mass_driver.html
@@ -0,0 +1 @@
+/obj/machinery/mass_driver - Space Station 13Space Station 13 - Modules - Types — Var Details
This is mostly irrelevant since current mass drivers throw into space, but you could make a lower-range mass driver for interstation transport or something I guess.
This is mostly irrelevant since current mass drivers throw into space, but you could make a lower-range mass driver for interstation transport or something I guess.
id_tag
ID tag, used for buttons
power
Throw power
\ No newline at end of file
diff --git a/obj/machinery/mecha_part_fabricator.html b/obj/machinery/mecha_part_fabricator.html
new file mode 100644
index 00000000000..8ff2d243633
--- /dev/null
+++ b/obj/machinery/mecha_part_fabricator.html
@@ -0,0 +1,28 @@
+/obj/machinery/mecha_part_fabricator - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Exosuit Fabricator
A machine that allows for the production of exosuits and robotic parts.
List of categories to display in the UI. Designs intended for each respective category need to have the name in [/datum/design/category]. Defined in [Initialize()][/atom/proc/Initialize].
The world.time at which the current design build will end.
build_queue
The build queue. Lazy list.
build_start
The world.time at which the current design build started.
categories
List of categories to display in the UI. Designs intended for each respective category need to have the name in [/datum/design/category]. Defined in [Initialize()][/atom/proc/Initialize].
component_coeff
Resource efficiency multiplier. A lower value means less resources consumed. Updated by [CheckParts()][/atom/proc/CheckParts].
id
Unused. Ensures backwards compatibility with some maps.
network_manager_uid
UID of the network that we use
output_dir
Defines what direction this thing spits out it's produced parts
processing_queue
Whether the queue is currently being processed.
selected_category
The currently selected category.
time_coeff
Production time multiplier. A lower value means faster production. Updated by [CheckParts()][/atom/proc/CheckParts].
Proc Details
build_design
Given a design, attempts to build it.
+
Arguments:
+
+
D - The design to build.
+
build_design_timer_finish
Called when the timer for building a design finishes.
+
Arguments:
+
+
D - The design being built.
+
final_cost - The materials consumed during the build.
+
can_afford_design
Returns whether the machine contains enough resources to build the given design.
+
Arguments:
+
+
D - The design to check.
+
can_insert_materials
Returns whether the machine can accept new materials.
Called when the timer after inserting material sheets finishes.
process_queue
Attempts to build the first item in the queue.
\ No newline at end of file
diff --git a/obj/machinery/mecha_part_fabricator/loaded/upgraded.html b/obj/machinery/mecha_part_fabricator/loaded/upgraded.html
new file mode 100644
index 00000000000..2e0e7fff8e4
--- /dev/null
+++ b/obj/machinery/mecha_part_fabricator/loaded/upgraded.html
@@ -0,0 +1,2 @@
+/obj/machinery/mecha_part_fabricator/loaded/upgraded - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/machinery/mineral/equipment_vendor.html b/obj/machinery/mineral/equipment_vendor.html
new file mode 100644
index 00000000000..ad3c35ea950
--- /dev/null
+++ b/obj/machinery/mineral/equipment_vendor.html
@@ -0,0 +1,6 @@
+/obj/machinery/mineral/equipment_vendor - Space Station 13Space Station 13 - Modules - Types — Proc Details
Called when someone slaps the machine with a mining voucher
Proc Details
redeem_voucher
Called when someone slaps the machine with a mining voucher
+
Arguments:
+
+
voucher - The voucher card item
+
redeemer - The person holding it
+
\ No newline at end of file
diff --git a/obj/machinery/mineral/mint.html b/obj/machinery/mineral/mint.html
new file mode 100644
index 00000000000..72f83daf1ae
--- /dev/null
+++ b/obj/machinery/mineral/mint.html
@@ -0,0 +1 @@
+/obj/machinery/mineral/mint - Space Station 13Space Station 13 - Modules - Types — Var Details
Which material will be used to make coins or for ejecting.
money_bag
Inserted money bag.
total_coins
How many coins did the machine make in total.
\ No newline at end of file
diff --git a/obj/machinery/mineral/ore_redemption.html b/obj/machinery/mineral/ore_redemption.html
new file mode 100644
index 00000000000..0a1dc4ac131
--- /dev/null
+++ b/obj/machinery/mineral/ore_redemption.html
@@ -0,0 +1,26 @@
+/obj/machinery/mineral/ore_redemption - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Ore Redemption Machine
Turns all the various mining machines into a single unit to speed up tmining and establish a point system.
List of supply console department names that can receive a notification about ore dumps.
+A list may be provided as entry value to only notify when specific ore is dumped.
% chance per process that the ORM will throw stuff at people when throw_inventory is TRUE. Remember that this machine speed processes, so this rolls 5 times per second.
Whether the message to relevant supply consoles was sent already or not for an ore dump. If FALSE, another will be sent.
ore_buffer
List of ore yet to process.
point_upgrade
Point multiplier applied when smelting ore. Updated by [/obj/machinery/proc/RefreshParts].
points
The number of unclaimed points.
req_access_claim
The access number required to claim points from the machine.
scan_id
If FALSE, the ORM will ignore all access requirements.
sheet_per_ore
Sheet multiplier applied when smelting ore. Updated by [/obj/machinery/proc/RefreshParts].
supply_consoles
List of supply console department names that can receive a notification about ore dumps.
+A list may be provided as entry value to only notify when specific ore is dumped.
throw_chance
% chance per process that the ORM will throw stuff at people when throw_inventory is TRUE. Remember that this machine speed processes, so this rolls 5 times per second.
throw_inventory
If TRUE, the ORM will throw stuff at people.
Proc Details
get_num_smeltable_alloy
Returns the amount of alloy sheets that can be produced from the given design.
+
Arguments:
+
+
D - The smelting design.
+
give_points
Adds a set number of mining points, based on the ore points, the ore amount, and the ORM upgrade state.
+
Arguments:
+
+
ore_path - The typepath of the inserted ore.
+
ore_amount - The amount of ore which has been inserted.
+
on_material_insert
Called when an item is inserted manually as material.
+
Arguments:
+
+
inserted_type - The type of the inserted item.
+
last_inserted_id - The ID of the last material to have been inserted.
+
inserted - The amount of material inserted.
+
process_ores
Processes the given list of ores.
+
Arguments:
+
+
L - List of ores to process.
+
send_console_message
Notifies all relevant supply consoles with the machine's contents.
smelt_ore
Smelts the given stack of ore.
+
Arguments:
+
+
O - The ore stack to smelt.
+
\ No newline at end of file
diff --git a/obj/machinery/mineral/smart_hopper.html b/obj/machinery/mineral/smart_hopper.html
new file mode 100644
index 00000000000..00f1fadc1f1
--- /dev/null
+++ b/obj/machinery/mineral/smart_hopper.html
@@ -0,0 +1 @@
+/obj/machinery/mineral/smart_hopper - Space Station 13Space Station 13 - Modules - Types — Var Details
Whether the message to relevant supply consoles was sent already or not for an ore dump. If FALSE, another will be sent.
ore_buffer
List of ore yet to process.
point_upgrade
Point multiplier
points
The number of unclaimed points.
req_access_claim
Access to claim points
supply_consoles
What consoles get alerted when this is filled
\ No newline at end of file
diff --git a/obj/machinery/newscaster.html b/obj/machinery/newscaster.html
new file mode 100644
index 00000000000..eeb6bdc9c5e
--- /dev/null
+++ b/obj/machinery/newscaster.html
@@ -0,0 +1,35 @@
+/obj/machinery/newscaster - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Newscaster
For all of the crew's news need. Includes reading, submitting and printing stories.
+
Includes a security variant which can be used to issue wanted notices, censor channels and stories.
+Allows full access when aghosting.
text - Text to display, null/empty to clear the message from the UI
+
style - The style of the message: (color name), info, success, warning, danger
+
ui_act_modal
Called in ui_act() to process modal actions
+
Arguments:
+
+
action - The action passed by tgui
+
params - The params passed by tgui
+
\ No newline at end of file
diff --git a/obj/machinery/nuclear_centrifuge.html b/obj/machinery/nuclear_centrifuge.html
new file mode 100644
index 00000000000..dd8f2de66d0
--- /dev/null
+++ b/obj/machinery/nuclear_centrifuge.html
@@ -0,0 +1 @@
+/obj/machinery/nuclear_centrifuge - Space Station 13Space Station 13 - Modules - Types — Var Details
The time it takes for the machine to process a rod
Var Details
average_component_rating
The averaged amount of all stock parts
held_rod
Holds the rod object inserted into the machine
rod_result
The result when we are done operating
soundloop
the soundloop we will be using while operating
work_time
The time it takes for the machine to process a rod
\ No newline at end of file
diff --git a/obj/machinery/nuclear_rod_fabricator.html b/obj/machinery/nuclear_rod_fabricator.html
new file mode 100644
index 00000000000..4258efbb3e3
--- /dev/null
+++ b/obj/machinery/nuclear_rod_fabricator.html
@@ -0,0 +1 @@
+/obj/machinery/nuclear_rod_fabricator - Space Station 13Space Station 13 - Modules - Types — Var Details
The time it takes for the machine to process a rod
Var Details
category_coolant
The list for carrying coolant rods
category_fuel
The list for carrying fuel rods
category_moderator
The list for carrying moderator rods
efficiency_coeff
How fast do we operate and/or do we get extra rods
materials
Our holder for materials
schematic
What is the current item being produced
upgraded
Is the rod fabricator currently upgraded from science
work_time
The time it takes for the machine to process a rod
\ No newline at end of file
diff --git a/obj/machinery/nuclearbomb.html b/obj/machinery/nuclearbomb.html
new file mode 100644
index 00000000000..f2273bbd6cb
--- /dev/null
+++ b/obj/machinery/nuclearbomb.html
@@ -0,0 +1,5 @@
+/obj/machinery/nuclearbomb - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The same state removal stage is, until someone opens the panel of the nuke. This way we can have someone open the front of the nuke, while keeping track of where in the world we are on the anchoring bolts.
Determine the location of the nuke with respect to the station. Used for,
+among other things, calculating win conditions for nukies and choosing which
+round-end cinematic to play.
Var Details
anchor_stage
The same state removal stage is, until someone opens the panel of the nuke. This way we can have someone open the front of the nuke, while keeping track of where in the world we are on the anchoring bolts.
auth
The Nuclear Authentication Disk.
code
Code entered by user
core
The plutonium core.
core_stage
This is so that we can check if the internal components are sealed up properly when the outer hatch is closed.
exploded
Have we gone boom yet?
extended
Are our bolts supposed to be in the floor, may not actually cause anchoring if the bolts are cut
is_syndicate
Is this a nuke-ops bomb?
r_code
Random code between 10000 and 99999
radio
Bombs Internal Radio
requires_NAD_to_unbolt
If this is true you cannot unbolt the NAD with tools, only the NAD
sheets_to_fix
How many sheets of various metals we need to fix it
sprite_prefix
Prefix to add, if any, on icon states for this bomb
timeleft
Countdown to boom
timing
Are we counting down?
training
Is this a training bomb?
yes_code
Is the most recently inputted code correct?
Proc Details
get_nuke_site
Determine the location of the nuke with respect to the station. Used for,
+among other things, calculating win conditions for nukies and choosing which
+round-end cinematic to play.
\ No newline at end of file
diff --git a/obj/machinery/pandemic.html b/obj/machinery/pandemic.html
new file mode 100644
index 00000000000..ec9318060ca
--- /dev/null
+++ b/obj/machinery/pandemic.html
@@ -0,0 +1 @@
+/obj/machinery/pandemic - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
How difficult the disease is to analyze. This sets the requirements for how much you need to contribute with things like stages and symptom predictions
The time at which the analysis of a disease will be done. Calculated at the begnining of analysis using analysis_difficulty and symptoms symptom_guesses.
Find the time it would take to analyze the current disease before any symptom predictions are made
Var Details
analysis_contributions
The contribution of various factors towards analysis. The "max" values are only for the UI
analysis_difficulty
How difficult the disease is to analyze. This sets the requirements for how much you need to contribute with things like stages and symptom predictions
analysis_difficulty_base
The base analysis time which is later modified by samples of uniqute stages and symptom prediction
analysis_duration
How much time analysis will take. Depends on components
analysis_time
The time at which the analysis of a disease will be done. Calculated at the begnining of analysis using analysis_difficulty and symptoms symptom_guesses.
analyzed_ID
ID of the disease being analyzed
analyzed_index
Index of the disease being analyzed
analyzing
Whether the PANDEMIC is currently analyzing an advanced disease
predictions
The current symptom predictions
reporting
Whether to keep the report screen up. This is so it can stay persistent while the UI is closed
symptom_list
List of all symptoms. Gets filled in Initialize().
valid_sample
Can our sample be analyzed
Proc Details
find_analysis_requirements
Find the time it would take to analyze the current disease before any symptom predictions are made
\ No newline at end of file
diff --git a/obj/machinery/particle_accelerator/control_box.html b/obj/machinery/particle_accelerator/control_box.html
new file mode 100644
index 00000000000..ca765a8354c
--- /dev/null
+++ b/obj/machinery/particle_accelerator/control_box.html
@@ -0,0 +1 @@
+/obj/machinery/particle_accelerator/control_box - Space Station 13Space Station 13 - Modules - Types — Var Details
Layout of the particle accelerator. Used by the UI
Var Details
dir_text
The expected orientation of the accelerator this is trying to link. In text form so the UI can use it
layout
Layout of the particle accelerator. Used by the UI
\ No newline at end of file
diff --git a/obj/machinery/pdapainter.html b/obj/machinery/pdapainter.html
new file mode 100644
index 00000000000..5a3a35c17bc
--- /dev/null
+++ b/obj/machinery/pdapainter.html
@@ -0,0 +1 @@
+/obj/machinery/pdapainter - Space Station 13Space Station 13 - Modules - Types — Var Details
The preview to show of what the new paint will look like
Var Details
cached_icon_state
Cache of the icon state of the currently inserted PDA
colorlist
List of possible PDA colors to choose from
preview_icon_state
The preview to show of what the new paint will look like
\ No newline at end of file
diff --git a/obj/machinery/phone.html b/obj/machinery/phone.html
new file mode 100644
index 00000000000..715a1751e00
--- /dev/null
+++ b/obj/machinery/phone.html
@@ -0,0 +1 @@
+/obj/machinery/phone - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/photocopier.html b/obj/machinery/photocopier.html
new file mode 100644
index 00000000000..2318edb3abc
--- /dev/null
+++ b/obj/machinery/photocopier.html
@@ -0,0 +1,40 @@
+/obj/machinery/photocopier - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Internal proc for checking the Mob on top of the copier
+Reports FALSE if there is no copymob or if the copymob is in a diff location than the copy machine, otherwise reports TRUE
Is the photocopier performing an action currently?
copyitem
Current obj stored in the copier to be copied
copymob
Mob that is currently on the photocopier
folder
Current folder obj stored in the copier to copy into
maxcopies
Max number of copies that can be made at one time
saved_documents
Lazy init list, Objs currently saved inside the photocopier for printing later
total_copies
Total copies printed from copymachines globally
Proc Details
bundlecopy
A public proc for copying bundles of paper
+
It iterates through each object in the bundle and calls papercopy() and photocopy() and stores the produce photo/paper in the bundle
+Arguments:
+
+
bundle - The paper bundle object being copied
+
scanning - If true, the paper bundle is stored inside the photocopier
+
use_toner - If true, this operation uses toner, this is not done in copy() because partial bundles would be impossible otherwise
+
cancopy
An internal proc for checking if a photocopier is able to copy an object
+
It performs early checks/returns to see if the copier has any toner, if the copier is powered/working,
+if the copier is currently perfoming an action, or if we've hit the global copy limit. Used to inform
+the player in-game if they're using the photocopier incorrectly (no toner, no item inside, etc)
+Arguments:
+
+
scancopy - If TRUE, cancopy does not check for an item on/inside the copier to copy, used for copying stored files
+
check_mob
Internal proc for checking the Mob on top of the copier
+Reports FALSE if there is no copymob or if the copymob is in a diff location than the copy machine, otherwise reports TRUE
copy
Public proc for copying items
+
Determines what item needs to be copied whether it's a mob's ass, paper, bundle, or photo and then calls the respective
+proc for it. Most toner var changing happens here so that the faxmachine child obj does not need to worry about toner
+Arguments:
+
+
obj/item/C - The item stored inside the photocopier to be copied (obj/paper, obj/photo, obj/paper_bundle)
+
scancopy - Indicates that obj/item/C is a stored file, we need to pass this on to cancopy() so it passes the check
+
papercopy
Public proc for copying paper objs
+
Takes a paper object and makes a copy of it. This proc specifically does not change toner which allows more versatile use for child objects
+returns null if paper failed to be copied and returns the new copied paper obj if succesful
+Arguments:
+
+
obj/item/paper/copy - The paper obj to be copied
+
scanning - If true, the photo is stored inside the photocopier and we do not check for toner
+
bundled - If true the photo is stored inside the photocopier, used by bundlecopy() to construct paper bundles
+
photocopy
Public proc for copying photo objs
+
Takes a photo object and makes a copy of it. This proc specifically does not change toner which allows more versatile use for child objects
+returns null if photo failed to be copied and returns the new copied photo object if succesful
+Arguments:
+
+
obj/item/photo/photocopy - The photo obj to be copied
+
scanning - If true, the photo is stored inside the photocopier and we do not check for toner
+
bundled - If true the photo is stored inside the photocopier, used by bundlecopy() to construct paper bundles
+
\ No newline at end of file
diff --git a/obj/machinery/photocopier/faxmachine.html b/obj/machinery/photocopier/faxmachine.html
new file mode 100644
index 00000000000..dc23fc8694a
--- /dev/null
+++ b/obj/machinery/photocopier/faxmachine.html
@@ -0,0 +1 @@
+/obj/machinery/photocopier/faxmachine - Space Station 13Space Station 13 - Modules - Types — Var Details
If true, prevents fax machine from sending messages to NT machines
Var Details
authenticated
Whether the machine is "logged in" or not
cooldown_time
After sending a message to CC/syndicate, cannot send another to them for this many deciseconds
department
Our department, determines whether this machine gets faxes sent to a department
destination
Target department to send outgoing faxes to
long_range_enabled
Can we send messages off-station?
scan
ID card inserted into the machine, used to log in with
sendcooldown
Next world.time at which this fax machine can send a message to CC/syndicate
syndie_restricted
If true, prevents fax machine from sending messages to NT machines
\ No newline at end of file
diff --git a/obj/machinery/plantgenes.html b/obj/machinery/plantgenes.html
new file mode 100644
index 00000000000..9ff8ae12d7b
--- /dev/null
+++ b/obj/machinery/plantgenes.html
@@ -0,0 +1 @@
+/obj/machinery/plantgenes - Space Station 13Space Station 13 - Modules - Types — Var Details
minimum weed growth chance that can be put on a disk
min_weed_rate
minimum weed growth rate that can be put on a disk
reagent_genes
list of the seed's trait genes
seed
the seed stored in the machine
seeds_for_bulk_core
amount of seeds needed to make a core stat disk
target
gene targeted for operation
trait_genes
list of the seed's trait genes
\ No newline at end of file
diff --git a/obj/machinery/porta_turret.html b/obj/machinery/porta_turret.html
new file mode 100644
index 00000000000..678626f04f5
--- /dev/null
+++ b/obj/machinery/porta_turret.html
@@ -0,0 +1 @@
+/obj/machinery/porta_turret - Space Station 13Space Station 13 - Modules - Types — Var Details
Used when we end up with dir NE/NW and have a cover. We temporary set new dir so turret doesn't stick out of a cover
Var Details
cover
Turret's cover
deployment_override
Deployment override to allow turret popup on/under dense turfs/objects, for admin/CC turrets
fitted_lens
What lens is fitted to the turret/gun?
health
The turret's health. The last 50 health is reserved for a broken state, so functional health default is 80.
initial_eprojectile
What lethal mode projectile with the turret start with?
initial_projectile
What non-lethal mode projectile with the turret start with?
layer
this will be visible when above doors/firelocks/blastdoors to prevent cheese
saved_direction
Used when we end up with dir NE/NW and have a cover. We temporary set new dir so turret doesn't stick out of a cover
\ No newline at end of file
diff --git a/obj/machinery/porta_turret/tag.html b/obj/machinery/porta_turret/tag.html
new file mode 100644
index 00000000000..0a5eac71967
--- /dev/null
+++ b/obj/machinery/porta_turret/tag.html
@@ -0,0 +1 @@
+/obj/machinery/porta_turret/tag - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/porta_turret_construct.html b/obj/machinery/porta_turret_construct.html
new file mode 100644
index 00000000000..398b11c3f32
--- /dev/null
+++ b/obj/machinery/porta_turret_construct.html
@@ -0,0 +1 @@
+/obj/machinery/porta_turret_construct - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/power.html b/obj/machinery/power.html
new file mode 100644
index 00000000000..c8a1ac2cdc0
--- /dev/null
+++ b/obj/machinery/power.html
@@ -0,0 +1,5 @@
+/obj/machinery/power - Space Station 13Space Station 13 - Modules - Types — Proc Details
Adds available power to the next powernet process (Watts)
Proc Details
add_queued_power_demand
Adds queued power demand to be met next process cycle (Watts)
consume_direct_power
Adds power demand to the powernet (Watts)
+machines should use this proc
get_available_power
Gets power available (NOT EXTRA) on this cables powernet (Watts)
+machines should use this proc
get_power_balance
Gets surplus power available on this machine's powernet (Watts)
get_queued_available_power
Gets available (NOT EXTRA) power queued for next process cycle on this machine's powernet (Watts)
get_queued_surplus
Gets surplus power queued for next process cycle on this cables powernet (Watts)
get_surplus
Gets surplus power available on this machine's powernet (Watts)
produce_direct_power
Adds available power to the next powernet process (Watts)
\ No newline at end of file
diff --git a/obj/machinery/power/apc.html b/obj/machinery/power/apc.html
new file mode 100644
index 00000000000..60b12739041
--- /dev/null
+++ b/obj/machinery/power/apc.html
@@ -0,0 +1,23 @@
+/obj/machinery/power/apc - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Base cell has a 2500 kJ capacity. Enter the path of a different cell you want to use. cell determines charge rates, max capacity, ect. These can also be changed with other APC vars, but isn't recommended to minimize the risk of accidental usage of dirty edited APCs
A counter var used to help determine if the APC has not been charging long enough to justify not performing certain auto setting such as turning all channels back on
************* ---
+APC Helper Procs --- Antag Abilities/Fun Stuff
+************* ---
+set APC stat as broken and set it to be non operational, kick out an AI if there's a malf one in it
turns off emergency power and sets each light to update
Var Details
aidisabled
Can silicons access this APC?
apc_area
APC Area/Powernet vars
+the area that this APC is in
apc_frame_welding_time
APC construction vars
areastring
the set string name of the area, used in naming the APC
autoflag
settings variable for having the APC auto use certain power channel settings
being_hijacked
Being hijacked by a pulse demon?
cell
APC Cell Vars
+the cell type stored in this APC. APC uses cell energy capacity (kilojoules)
cell_type
Base cell has a 2500 kJ capacity. Enter the path of a different cell you want to use. cell determines charge rates, max capacity, ect. These can also be changed with other APC vars, but isn't recommended to minimize the risk of accidental usage of dirty edited APCs
chargecount
Counter var, ticks up when the APC receives power from terminal and resets to 0 when not charging, used for the var/charging var
chargemode
If TRUE, the APC will automatically draw power from connect terminal, if FALSE it will not charge
charging
The current charging mode of the APC: not charging, charging, fully charged
constructed
Was this APC built instead of already existing? Used for malfhack to keep borgs from building apcs in space
cover_locked
Is the APC cover locked? i.e cannot be opened?
emergency_power
Used to determine if emergency lights should be on or off
emp_proof
Are we immune to EMPS?
environment_channel
The current setting for the environment channel
equipment_channel
The current setting for the equipment channel
hacked_by_ruin_AI
Are we hacked by a ruins malf AI? If so, it will act like a malf AI hacked APC, but silicons and malf AI's will not be able to interface with it.
last_used_environment
amount of power used in the last cycle for environment channel (Watts)
last_used_equipment
amount of power used in the last cycle for equipment channel (Watts)
last_used_lighting
amount of power used in the last cycle for lighting channel (Watts)
last_used_total
amount of power used in the last cycle in total (Watts)
lighting_channel
APC Settings Vars
+The current setting for the lighting channel
locked
Is the APC User Interface locked (prevents interaction)? Will not prevent silicons or admin observers from interacting
longtermpower
A counter var used to help determine if the APC has not been charging long enough to justify not performing certain auto setting such as turning all channels back on
main_status
The status of the terminals powernet that this APC is connected to: not connected, no power, or recieving power
malfhack
APC Malf AI Vars
opened
State of the APC Cover - Closed, Open, or Off
operating
Is the APC on and transmitting power to enabled breakers? Think of this var as the master breaker for the APC
shorted
Can the APC receive/transmit power? Determined by the condition of the 2 Main Power Wires
start_charge
the percentage charge the internal battery will start with
terminal
The power terminal connected to this APC
update_state
APC Overlay Vars
wires
APC Status Vars
+The wire panel associated with this APC
Proc Details
autoset
autoset
+
this proc is rather confusing at first glance, it handles apc power channel settings when trying to
+auto set values to it, good luck understanding how this works but I sure as hell don't
check_ai_control_callback
Updates APC to AI accesible if AI Wire is mended
check_main_power_callback
Updates APC to not be shorted if both main power wires are mended
connect_to_network
Override because the APC does not directly connect to the network; it goes through a terminal.
emp_act
+
External Acts on the APCS
+
get_cell
+
APC Power Procs
+
handle_shock_chance
Handles APC arc'ing every APC process interval
overload_lighting
overload all the lights in this APC area
process
What the APC will do every process interval, updates power settings and power changes depending on powernet state
recharge_apc
If the APC has a cell, recharge it
repair_apc
Repairs all wires, enables all breakers, and unshorts the APC
set_broken
************* ---
+APC Helper Procs --- Antag Abilities/Fun Stuff
+************* ---
+set APC stat as broken and set it to be non operational, kick out an AI if there's a malf one in it
set_nightshift
sets nightshift mode on for the APC
togglelock
+
APC Settings
+
turn_emergency_power_off
turns off emergency power and sets each light to update
\ No newline at end of file
diff --git a/obj/machinery/power/apc/worn_out.html b/obj/machinery/power/apc/worn_out.html
new file mode 100644
index 00000000000..091b580cd5c
--- /dev/null
+++ b/obj/machinery/power/apc/worn_out.html
@@ -0,0 +1,3 @@
+/obj/machinery/power/apc/worn_out - Space Station 13Space Station 13 - Modules - Types
worn_out
+
APC subtypes
+
\ No newline at end of file
diff --git a/obj/machinery/power/bluespace_tap.html b/obj/machinery/power/bluespace_tap.html
new file mode 100644
index 00000000000..18c1f1e9bb4
--- /dev/null
+++ b/obj/machinery/power/bluespace_tap.html
@@ -0,0 +1,14 @@
+/obj/machinery/power/bluespace_tap - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Bluespace Harvester
A station goal that consumes enormous amounts of power to generate (mostly fluff) rewards
+
A machine that takes power each tick, generates points based on it
+and lets you spend those points on rewards. A certain amount of points
+has to be generated for the station goal to count as completed.
When event triggers this will hold references to all portals so we can fix the sprite after they're broken
+Amount of overhead in levels. Each level of overhead allows stabilizing 15+overhead.
When portal event triggers this will hold references to all portals so we can fix the sprite after they're broken
actual_power_usage
How much power the machine needs per processing tick at the current level.
auto_shutdown
Whether or not auto shutdown will engage when portals open
clothing_interval
The point interval where the machine will automatically spawn a clothing item
cultural_interval
The point interval where the machine will automatically spawn a cultural item
desired_mining_power
The power you WANT the machine to use for mining. It will try to match this. (Watts)
dirty
When a filth event triggers, this will stop the operation until it is cleaned
food_interval
The point interval where the machine will automatically spawn a food item
mined_points
Points mined this cycle
mining_power
The amount of power being used for mining at the moment (Watts)
motherlode_interval
The point interval where the machine will strike a motherlode
organic_interval
The point interval where the machine will automatically spawn an organic item
overhead
When event triggers this will hold references to all portals so we can fix the sprite after they're broken
+Amount of overhead in levels. Each level of overhead allows stabilizing 15+overhead.
points
Available mining points
product_list
list of possible products
radio
Internal radio to handle announcements over engineering
spawning
The amount of portals waiting to be spawned. Used mostly for UI and icon stuff.
stabilizer_power
Amount of power the stabilizers consume (Watts)
stabilizer_priority
Whether or not mining power will be prevented from exceedingn stabilizer power
stabilizers
Whether or not stabilizers will engage to prevent or reduce the chance of portals opening
total_points
The total points earned by this machine so far, for tracking station goal and highscore
Proc Details
produce
Produces the product with the desired key and increases product cost accordingly
produce_motherlode
Handles a motherlode - each product is spawned 5 times at both the machine and around the station
set_power
Sets the desired mining power (Watts)
+
Sets the desired mining power, that
+the machine tries to reach if there
+is enough power for it. Note that it does
+NOT change the actual mining power directly.
+Arguments:
+
+
t_power - The power we try to set it at, between 0 and max_level
+
\ No newline at end of file
diff --git a/obj/machinery/power/compressor.html b/obj/machinery/power/compressor.html
new file mode 100644
index 00000000000..0f6addfb3af
--- /dev/null
+++ b/obj/machinery/power/compressor.html
@@ -0,0 +1 @@
+/obj/machinery/power/compressor - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
This value needs to be zero. It represents seconds since the last overheat event
bearing_damage
The amount of bearing damage. Increases friction and can lead to a catastrophic failure
compression_ratio
By how much the intake gas is getting compressed
gas_throughput
Intaked gas in mol/tick. tick is 2 seconds
heat_capacity
Heat capacity of the compressor. Used for gas heating and cooling it.
kinetic_energy
The kinetic energy of the turbine
moment_of_inertia
Moment of Inertia
post_burn_temp
The temperature of the gas in the compressor after the burn
pre_burn_temp
The temperature of the gas in the compressor before the burn
radio
Internal radio, used to alert engineers of turbine trip!
temperature
Current temperature of the compressor
thermal_efficiency
The portion of the gas' thermal energy that is converted to kinetic energy
throttle
Limits the amount of gas mix that is allowed to go into the compressor. 1 is fully open, 0 is fully closed
to_suck_in
List of things that would get sucked into the compressor if it spins fast enough
Proc Details
get_superconductivity
Prevents heat leakage through the compressor
\ No newline at end of file
diff --git a/obj/machinery/power/electrolyzer.html b/obj/machinery/power/electrolyzer.html
new file mode 100644
index 00000000000..e41e82a5a1f
--- /dev/null
+++ b/obj/machinery/power/electrolyzer.html
@@ -0,0 +1 @@
+/obj/machinery/power/electrolyzer - Space Station 13Space Station 13 - Modules - Types — Var Details
whether or not we're actively using power/seeking water vapor in the air
Var Details
on
whether or not we're actively using power/seeking water vapor in the air
\ No newline at end of file
diff --git a/obj/machinery/power/emitter.html b/obj/machinery/power/emitter.html
new file mode 100644
index 00000000000..b89b70dda54
--- /dev/null
+++ b/obj/machinery/power/emitter.html
@@ -0,0 +1 @@
+/obj/machinery/power/emitter - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/power/laser_terminal.html b/obj/machinery/power/laser_terminal.html
new file mode 100644
index 00000000000..25bbb07a388
--- /dev/null
+++ b/obj/machinery/power/laser_terminal.html
@@ -0,0 +1 @@
+/obj/machinery/power/laser_terminal - Space Station 13Space Station 13 - Modules - Types — Var Details
How much of the received energy we end up outputting to the grid
id
id of the terminal so you know which one you're targetting
lasers
List of lasers targetting us
total_input
The amount of power coming into the PTL
\ No newline at end of file
diff --git a/obj/machinery/power/port_gen.html b/obj/machinery/power/port_gen.html
new file mode 100644
index 00000000000..affc91d7acd
--- /dev/null
+++ b/obj/machinery/power/port_gen.html
@@ -0,0 +1 @@
+/obj/machinery/power/port_gen - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/machinery/power/port_gen/pacman.html b/obj/machinery/power/port_gen/pacman.html
new file mode 100644
index 00000000000..c60a0d079bb
--- /dev/null
+++ b/obj/machinery/power/port_gen/pacman.html
@@ -0,0 +1 @@
+/obj/machinery/power/port_gen/pacman - Space Station 13Space Station 13 - Modules - Types — Var Details
fuel efficiency - how long 1 sheet lasts at power level 1
Var Details
max_power_output
The maximum power setting without emagging.
max_safe_output
For UI use, maximal output that won't cause overheat.
max_sheets
max capacity of the hopper
max_temperature
max temperature before overheating increases
overheating
if this gets high enough the generator explodes
sheet_left
How much is left of the current sheet
sheets
How many sheets of material are loaded in the generator
temperature
The current temperature
temperature_gain
how much the temperature increases per power output level, in degrees per level
time_per_sheet
fuel efficiency - how long 1 sheet lasts at power level 1
\ No newline at end of file
diff --git a/obj/machinery/power/rad_collector.html b/obj/machinery/power/rad_collector.html
new file mode 100644
index 00000000000..c4f8ae9f97d
--- /dev/null
+++ b/obj/machinery/power/rad_collector.html
@@ -0,0 +1 @@
+/obj/machinery/power/rad_collector - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
A record of the absorbed strength of each beta wave that hit the collector. This keeps record up to rad_time old, and only the maximum absorption for each time point.
A record of the absorbed strength of each gamma wave that hit the collector. This keeps record up to rad_time old, and only the maximum absorption for each time point.
Converts absorbed Beta or Gamma radiation into electrical energy
Var Details
beta_waves
A record of the absorbed strength of each beta wave that hit the collector. This keeps record up to rad_time old, and only the maximum absorption for each time point.
gamma_waves
A record of the absorbed strength of each gamma wave that hit the collector. This keeps record up to rad_time old, and only the maximum absorption for each time point.
rad_time
Amount of time across which the maximum wave is checked
rad_time_counter
The current time count for clearing old data from the lists
Proc Details
rad_act
Converts absorbed Beta or Gamma radiation into electrical energy
\ No newline at end of file
diff --git a/obj/machinery/power/smes.html b/obj/machinery/power/smes.html
new file mode 100644
index 00000000000..2c6549a34a4
--- /dev/null
+++ b/obj/machinery/power/smes.html
@@ -0,0 +1 @@
+/obj/machinery/power/smes - Space Station 13Space Station 13 - Modules - Types — Var Details
Maximum amount of energy the SMES can store (kilojoules)
charge
Current charge level
input_attempt
Set TRUE if SMES attempting to charge, FALSE if not
input_available
Charge amount available from input last tick
input_level
How much power the SMES will draw from the grid to recharge itself (Watts)
input_level_max
Maximum input level (Watts)
inputting
Set TRUE if SMES is inputting, FALSE if not
output_level
Amount of power the SMES attempts to output (Watts)
output_level_max
Cap on output_level (Watts)
output_used
Amount of power actually outputted. may be less than output_level if the powernet returns excess power
outputting
TRUE = actually outputting, FALSE = not outputting
terminal
The terminal that is connected to this SMES unit
\ No newline at end of file
diff --git a/obj/machinery/power/transmission_laser.html b/obj/machinery/power/transmission_laser.html
new file mode 100644
index 00000000000..0d8180210eb
--- /dev/null
+++ b/obj/machinery/power/transmission_laser.html
@@ -0,0 +1 @@
+/obj/machinery/power/transmission_laser - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Gives our power input when multiplied with power_format_multi. The multiplier signifies the units of power, and this is how many of them we are inputting.
Gives our power output when multiplied with power_format_multi_output. The multiplier signifies the units of power, and this is how many of them we are outputting.
The load we place on the power grid we are connected to
firing
Are we attempting to fire the laser currently?
input_attempt
Are we trying to provide power to the laser
input_available
The amount of energy coming in from the inputs last tick
input_number
Gives our power input when multiplied with power_format_multi. The multiplier signifies the units of power, and this is how many of them we are inputting.
input_pulling
Our set input pulling
inputting
Are we currently inputting power into the laser
laser_effects
We need to create a list of all lasers we are creating so we can delete them in the end
max_grid_load
Our max load we can set
output_level
Amount of power we are outputting
output_number
Gives our power output when multiplied with power_format_multi_output. The multiplier signifies the units of power, and this is how many of them we are outputting.
power_format_multi
Signifies which unit we are using for output power. Used both in TGUI for formatting purposes and output power calculations.
power_format_multi_output
Signifies which unit we are using for input power. Used both in TGUI for formatting purposes and input power calculations.
range
How far we shoot the beam. If it isn't blocked it should go to the end of the z level.
selling_energy
Are we selling the energy or just sending it into the ether
target
PTL target
targetable_areas
Targetable areas in lavaland
total_earnings
How many credits we have earned in total
total_energy
How much energy have we sold in total (Joules)
turned_on
Have we been switched on?
unsent_earnings
The amount of money we haven't sent yet
Proc Details
return_charge
Returns the charge level from [0 to 6]
rotate
Rotates the laser if we have the space to do so.
target
Target a megafauna in the mining base or its immediate vicinity
untarget
Stop targeting a mob once it dies
update_overlays
Appearance changes are here
\ No newline at end of file
diff --git a/obj/machinery/power/turbine.html b/obj/machinery/power/turbine.html
new file mode 100644
index 00000000000..a6b4008179f
--- /dev/null
+++ b/obj/machinery/power/turbine.html
@@ -0,0 +1 @@
+/obj/machinery/power/turbine - Space Station 13Space Station 13 - Modules - Types — Var Details
If the turbine is outputing enough to visibly affect its sprite
Var Details
generator_threshold
If the turbine is outputing enough to visibly affect its sprite
\ No newline at end of file
diff --git a/obj/machinery/prize_counter.html b/obj/machinery/prize_counter.html
new file mode 100644
index 00000000000..1c0f8e7085c
--- /dev/null
+++ b/obj/machinery/prize_counter.html
@@ -0,0 +1 @@
+/obj/machinery/prize_counter - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/processor.html b/obj/machinery/processor.html
new file mode 100644
index 00000000000..2670e5e9737
--- /dev/null
+++ b/obj/machinery/processor.html
@@ -0,0 +1 @@
+/obj/machinery/processor - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/machinery/r_n_d/server.html b/obj/machinery/r_n_d/server.html
new file mode 100644
index 00000000000..f7ae7ec30bf
--- /dev/null
+++ b/obj/machinery/r_n_d/server.html
@@ -0,0 +1 @@
+/obj/machinery/r_n_d/server - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/radar.html b/obj/machinery/radar.html
new file mode 100644
index 00000000000..06adcec485a
--- /dev/null
+++ b/obj/machinery/radar.html
@@ -0,0 +1 @@
+/obj/machinery/radar - Space Station 13Space Station 13 - Modules - Types — Var Details
Internal radio to handle announcements over supply
Var Details
accuracy_coeff
How accurate are we based off parts?
check_time
Time between callouts
construction_state
Are we broken?
correct_prediction
For fakeout calls
dont_announce
Don't want constant updates
inaccuracy
Base Inaccuracy
last_stage
For checking what was the last weather stage an alert was sent out
prediction
What is our current prediction?
radio
Internal radio to handle announcements over supply
\ No newline at end of file
diff --git a/obj/machinery/recharge_station.html b/obj/machinery/recharge_station.html
new file mode 100644
index 00000000000..2812643448d
--- /dev/null
+++ b/obj/machinery/recharge_station.html
@@ -0,0 +1 @@
+/obj/machinery/recharge_station - Space Station 13Space Station 13 - Modules - Types — Var Details
How much the occupant is repaired every cycle. Based on what manipulator the recharger has.
Var Details
circuitboard
What type of circuit board is required to build this machine.
consumable_recharge_coeff
How efficiently the recharger is able to recharge consumable items such as metal, glass, chemicals in sprays, welding tool fuel, etc.
occupant
A reference to the occupant currently sitting inside the recharger.
recharge_speed
How fast the recharger can give charge to the occupants energy cell. Based on capacitors and the cell the recharger has.
recharge_speed_nutrition
How much nutrition is given to the occupant. Based on capacitors and the cell the recharger has. Only relevent for IPCs.
repairs
How much the occupant is repaired every cycle. Based on what manipulator the recharger has.
\ No newline at end of file
diff --git a/obj/machinery/recycler.html b/obj/machinery/recycler.html
new file mode 100644
index 00000000000..3951f66def7
--- /dev/null
+++ b/obj/machinery/recycler.html
@@ -0,0 +1 @@
+/obj/machinery/recycler - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/requests_console.html b/obj/machinery/requests_console.html
new file mode 100644
index 00000000000..8f4d2b73ed9
--- /dev/null
+++ b/obj/machinery/requests_console.html
@@ -0,0 +1 @@
+/obj/machinery/requests_console - Space Station 13Space Station 13 - Modules - Types — Var Details
The ID card of the person requesting a secondary goal.
msgStamped
If a message is stamped, this will contain the stamp name
msgVerified
Will contain the name of the person who verified it
secondaryGoalAuth
Will be set to TRUE when you authenticate yourself for requesting a secondary goal
\ No newline at end of file
diff --git a/obj/machinery/salvage_redemption.html b/obj/machinery/salvage_redemption.html
new file mode 100644
index 00000000000..e9fc6eeba27
--- /dev/null
+++ b/obj/machinery/salvage_redemption.html
@@ -0,0 +1 @@
+/obj/machinery/salvage_redemption - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/shield/cult/barrier.html b/obj/machinery/shield/cult/barrier.html
new file mode 100644
index 00000000000..cd599a7af02
--- /dev/null
+++ b/obj/machinery/shield/cult/barrier.html
@@ -0,0 +1,4 @@
+/obj/machinery/shield/cult/barrier - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The rune that created the shield itself. Used to delete the rune when the shield is destroyed.
Proc Details
Toggle
Turns the shield on and off.
+
The shield has 2 states: on and off. When on, it will block movement, projectiles, items, etc. and be clearly visible, and block atmospheric gases.
+When off, the rune no longer blocks anything and turns invisible.
+The barrier itself is not intended to interact with the conceal runes cult spell for balance purposes.
\ No newline at end of file
diff --git a/obj/machinery/shower.html b/obj/machinery/shower.html
new file mode 100644
index 00000000000..337e8943c99
--- /dev/null
+++ b/obj/machinery/shower.html
@@ -0,0 +1 @@
+/obj/machinery/shower - Space Station 13Space Station 13 - Modules - Types — Var Details
What sound will be played on loop when the shower is on and pouring water.
Var Details
current_temperature
What temperature the shower reagents are set to.
on
Is the shower on or off?
soundloop
What sound will be played on loop when the shower is on and pouring water.
\ No newline at end of file
diff --git a/obj/machinery/shuttle_manipulator.html b/obj/machinery/shuttle_manipulator.html
new file mode 100644
index 00000000000..e638d578997
--- /dev/null
+++ b/obj/machinery/shuttle_manipulator.html
@@ -0,0 +1 @@
+/obj/machinery/shuttle_manipulator - Space Station 13Space Station 13 - Modules - Types — Var Details
Used for cooldown, very obvious name, required due to shuttles spawning in the same location and causing the server to implode
Var Details
selected
UI state variables
shuttle_and_preview_cooldown
Used for cooldown, very obvious name, required due to shuttles spawning in the same location and causing the server to implode
\ No newline at end of file
diff --git a/obj/machinery/sleeper.html b/obj/machinery/sleeper.html
new file mode 100644
index 00000000000..84a1fe5229e
--- /dev/null
+++ b/obj/machinery/sleeper.html
@@ -0,0 +1 @@
+/obj/machinery/sleeper - Space Station 13Space Station 13 - Modules - Types — Var Details
A separate effect for the occupant, as you can't animate overlays reliably and constantly removing and adding overlays is spamming the subsystem.
Var Details
beaker
Beaker loaded into the sleeper. Used for dialysis.
filtering
Whether the machine is currently performing dialysis.
occupant_overlay
A separate effect for the occupant, as you can't animate overlays reliably and constantly removing and adding overlays is spamming the subsystem.
\ No newline at end of file
diff --git a/obj/machinery/smartfridge.html b/obj/machinery/smartfridge.html
new file mode 100644
index 00000000000..53ec8e61f9d
--- /dev/null
+++ b/obj/machinery/smartfridge.html
@@ -0,0 +1,11 @@
+/obj/machinery/smartfridge - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
\ No newline at end of file
diff --git a/obj/machinery/smartfridge/drying_rack.html b/obj/machinery/smartfridge/drying_rack.html
new file mode 100644
index 00000000000..1a137ad41ff
--- /dev/null
+++ b/obj/machinery/smartfridge/drying_rack.html
@@ -0,0 +1,6 @@
+/obj/machinery/smartfridge/drying_rack - Space Station 13Space Station 13 - Modules - Types — Proc Details
Drying Rack
Variant of the Smart Fridge for drying stuff.
+Doesn't have components.
Called in [/obj/machinery/smartfridge/drying_rack/process] to dry the contents.
toggle_drying
Toggles the drying process.
+
Arguments:
+
+
forceoff - Whether to force turn off the drying rack.
+
\ No newline at end of file
diff --git a/obj/machinery/smithing.html b/obj/machinery/smithing.html
new file mode 100644
index 00000000000..be85402f4bd
--- /dev/null
+++ b/obj/machinery/smithing.html
@@ -0,0 +1 @@
+/obj/machinery/smithing - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/smithing/casting_basin.html b/obj/machinery/smithing/casting_basin.html
new file mode 100644
index 00000000000..59815c7bec5
--- /dev/null
+++ b/obj/machinery/smithing/casting_basin.html
@@ -0,0 +1 @@
+/obj/machinery/smithing/casting_basin - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/smithing/kinetic_assembler.html b/obj/machinery/smithing/kinetic_assembler.html
new file mode 100644
index 00000000000..178bde0c8b8
--- /dev/null
+++ b/obj/machinery/smithing/kinetic_assembler.html
@@ -0,0 +1 @@
+/obj/machinery/smithing/kinetic_assembler - Space Station 13Space Station 13 - Modules - Types — Var Details
Products that can not be affected by productivity bits
primary
Primary component
secondary
Secondary component
trim
Trim component
\ No newline at end of file
diff --git a/obj/machinery/smithing/lava_furnace.html b/obj/machinery/smithing/lava_furnace.html
new file mode 100644
index 00000000000..fc66156c90c
--- /dev/null
+++ b/obj/machinery/smithing/lava_furnace.html
@@ -0,0 +1 @@
+/obj/machinery/smithing/lava_furnace - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/smithing/scientific_assembler.html b/obj/machinery/smithing/scientific_assembler.html
new file mode 100644
index 00000000000..a3660d976a3
--- /dev/null
+++ b/obj/machinery/smithing/scientific_assembler.html
@@ -0,0 +1 @@
+/obj/machinery/smithing/scientific_assembler - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/status_display.html b/obj/machinery/status_display.html
new file mode 100644
index 00000000000..601b942fb8d
--- /dev/null
+++ b/obj/machinery/status_display.html
@@ -0,0 +1 @@
+/obj/machinery/status_display - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/machinery/suit_storage_unit.html b/obj/machinery/suit_storage_unit.html
new file mode 100644
index 00000000000..2272d65bc20
--- /dev/null
+++ b/obj/machinery/suit_storage_unit.html
@@ -0,0 +1 @@
+/obj/machinery/suit_storage_unit - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Tries to store the item, returns true if it's moved successfully, false otherwise (because of nodrop etc)
Var Details
occupant_typecache
If set, turned into typecache in Initialize, other wise, defaults to mob/living typecache
req_access
Access needed to control it, checked only if ID lock is enabled
safeties
prevent locking people in there if set to true
secure
enables ID locking when set to true
shocked
Shocks anyone that touches it
uv
Is true if a uv cleaning cycle is currently running.
uv_cycles
How many uv cleaning cycles to do, counts down while cleaning takes place.
uv_super
If set to true, uses much more damaging UV wavelength and fries anything inside.
Proc Details
store_item
Tries to store the item into whatever slot it can go, returns true if the item is stored successfully.
try_store_item
Tries to store the item, returns true if it's moved successfully, false otherwise (because of nodrop etc)
\ No newline at end of file
diff --git a/obj/machinery/tcomms.html b/obj/machinery/tcomms.html
new file mode 100644
index 00000000000..6244ae553b2
--- /dev/null
+++ b/obj/machinery/tcomms.html
@@ -0,0 +1,19 @@
+/obj/machinery/tcomms - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Telecommunications Device
This is the base machine for both tcomms devices (core + relay)
+
This holds a few base procs (Icon updates, enable/disable, etc)
+It also has the initial overrides for Initialize() and Destroy()
Has the machine been hit by an ionospheric anomaly
network_id
Network ID used for names + auto linkage
Proc Details
Destroy
Base Destructor
+
Ensures that the machine is taken out of the global list when destroyed
Initialize
Base Initializer
+
Ensures that the machine is put into the global list of tcomms devices, and then its made sure that the icon is correct if the machine starts offline
crowbar_act
Crowbar Act Handler
+
Handles the crowbar action for all tcomms machines, so they can be deconstructed
end_ion
End of Ion Anomaly Event
+
Proc to easily stop an Ion Anomaly's effects, and update the icon
log_action
Logging helper
+
Proc which allows easy logging of changs made to tcomms machines
+Arguments:
+
+
user - The user who did the action
+
msg - The log message
+
adminmsg - Should an admin log be sent when this happens
+
on_changed_z_level
Z-Level transit change helper
+
Proc to make sure you cant have two of these active on a Z-level at once. It also makes sure to update the linkage
power_change
Power Change Handler
+
Proc which ensures icons are updated when machines lose power
screwdriver_act
Screwdriver Act Handler
+
Handles the screwdriver action for all tcomms machines, so they can be open and closed to be deconstructed
start_ion
Start of Ion Anomaly Event
+
Proc to easily start an Ion Anomaly's effects, and update the icon
update_icon_state
Icon Updater
+
Ensures that the icon updates properly based on if the machine is active or not. This removes the need for this check in many other places.
\ No newline at end of file
diff --git a/obj/machinery/tcomms/core.html b/obj/machinery/tcomms/core.html
new file mode 100644
index 00000000000..d8f3da5d3df
--- /dev/null
+++ b/obj/machinery/tcomms/core.html
@@ -0,0 +1,21 @@
+/obj/machinery/tcomms/core - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Telecommunications Core
The core of the entire telecomms operation
+
This thing basically handles the main broadcasting of the data, as well as NTTC configs
+The relays dont do any actual processing, they are just objects which can bring tcomms to another zlevel
Ensures that the machine is taken out of the global list when destroyed, and also unlinks all connected relays
Initialize
Initializer for the core.
+
Calls parent to ensure its added to the GLOB of tcomms machines, before generating a link password and adding itself to the list of reachable Zs.
check_power_on
Power-on checker
+
Checks the z-level to see if an existing core is already powered on, and deny this one turning on if there is one. Returns TRUE if it can power on, or FALSE if it cannot
handle_message
Proc which takes in the message datum
+
Some checks are ran on the signal, and NTTC is applied
+After that, it is broadcasted out to the required Z-levels
+
Arguments:
+
+
tcm - The tcomms message datum
+
on_changed_z_level
Z-Level transit change helper
+
Handles parent call of disabling the machine if it changes Z-level, but also rebuilds the list of reachable levels
refresh_zlevels
Proc to remake the list of available zlevels
+
Loops through the list of connected relays and adds their zlevels in.
+This is called if a relay is added or removed
zlevel_reachable
Helper to see if a zlevel is reachable
+
This is a simple check to see if the input z-level is in the list of reachable ones
+Returns TRUE if it can, FALSE if it cant
+
Arguments:
+
+
zlevel - The input z level to test
+
\ No newline at end of file
diff --git a/obj/machinery/tcomms/relay.html b/obj/machinery/tcomms/relay.html
new file mode 100644
index 00000000000..47b3773393d
--- /dev/null
+++ b/obj/machinery/tcomms/relay.html
@@ -0,0 +1,15 @@
+/obj/machinery/tcomms/relay - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Telecommunications Relay
Extends the reach of telecomms to the z-level it is built on
+
Relays themselves dont do any processing, they just tell the core that this z-level is available in the tcomms network.
Does this relay need a password to connect to hubs?
Proc Details
AddLink
Proc to link the relay to the core.
+
Sets the linked core to the target (argument below), before adding it to the list of linked relays, then re-freshing the zlevel list
+The relay is then marked as linked
+Arguments:
+
+
target - The telecomms core that this relay should be linked to
+
Destroy
Descrutor for the relay.
+
Ensures that the machine is taken out of the global list when destroyed, and also removes the link to the core.
Initialize
Initializer for the relay.
+
Calls parent to ensure its added to the GLOB of tcomms machines, before checking if there is an autolink that needs to be added.
LateInitialize
Late Initialize for the relay.
+
Calls parent, then adds links to the cores. This is a LateInitialize because the core MUST be initialized first
Reset
Proc to rest the relay.
+
Resets the relay, removing its linkage status, and refreshing the core's list of z-levels
check_power_on
Power-on checker
+
Checks the z-level to see if an existing relay is already powered on, and deny this one turning on if there is one. Returns TRUE if it can power on, or FALSE if it cannot
on_changed_z_level
Z-Level transit change helper
+
Handles parent call of disabling the machine if it changes Z-level, but also rebuilds the list of reachable levels on the linked core
power_change
Power Change Handler
+
Proc which ensures the host core has its zlevels updated (icons are updated by parent call)
\ No newline at end of file
diff --git a/obj/machinery/teleport.html b/obj/machinery/teleport.html
new file mode 100644
index 00000000000..5c23123689d
--- /dev/null
+++ b/obj/machinery/teleport.html
@@ -0,0 +1,2 @@
+/obj/machinery/teleport - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Used by the teleporter hub and permament teleporter to track how many teleports have been done this cycle.
Proc Details
blockAI
Internal helper function
+
Prevents AI from using the teleporter, prints out failure messages for clarity
\ No newline at end of file
diff --git a/obj/machinery/ticket_machine.html b/obj/machinery/ticket_machine.html
new file mode 100644
index 00000000000..48c42cd3bd3
--- /dev/null
+++ b/obj/machinery/ticket_machine.html
@@ -0,0 +1 @@
+/obj/machinery/ticket_machine - Space Station 13Space Station 13 - Modules - Types — Var Details
If FALSE, the ticket machine will not dispense tickets. Toggled by swiping aHoP ID
Var Details
dispense_enabled
If FALSE, the ticket machine will not dispense tickets. Toggled by swiping aHoP ID
\ No newline at end of file
diff --git a/obj/machinery/transformer.html b/obj/machinery/transformer.html
new file mode 100644
index 00000000000..f65be246c7f
--- /dev/null
+++ b/obj/machinery/transformer.html
@@ -0,0 +1 @@
+/obj/machinery/transformer - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Resets is_on_cooldown to FALSE and updates our icon. Used in a callback after the transformer does a transformation.
Var Details
acceptdir
The direction that mobs must moving in to get transformed.
cooldown_duration
Cooldown between each transformation, in deciseconds.
is_on_cooldown
If the factory is currently on cooldown from its last transformation.
masterAI
The AI who placed this factory.
robot_cell_type
The type of cell that newly created borgs get.
transform_dead
TRUE if the factory can transform dead mobs.
transform_standing
TRUE if the mob can be standing and still be transformed.
Proc Details
do_transform
Transforms a human mob into a cyborg, connects them to the malf AI which placed the factory.
initialize_belts
Used to create all of the belts the transformer will be using. All belts should be pushing WEST.
reset_cooldown
Resets is_on_cooldown to FALSE and updates our icon. Used in a callback after the transformer does a transformation.
\ No newline at end of file
diff --git a/obj/machinery/washing_machine.html b/obj/machinery/washing_machine.html
new file mode 100644
index 00000000000..9e850430a96
--- /dev/null
+++ b/obj/machinery/washing_machine.html
@@ -0,0 +1 @@
+/obj/machinery/washing_machine - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Handles inserting obj/items into the washing machines, checks machines capacity, does a do_after, and then applys appropriate signals and updates machines state
Handles inserting mobs into the washing machines, checks machines capacity, does a do_after, and then applys appropriate signals and updates machines state
Determines which "WM state" to apply based on if the machine is a bloody mess, full/empty, washing, etc and then updates the icon state accordingly
Var Details
bloody_mess
Is the washing machine tub filled with gibs/blood? Effects the sprite it uses
color_source
Where is our DYE color coming from?
current_tub_capacity
How much shit is currently in this laundry machine? Used to cap how much stuff you can put in here
door_open
Is the washer currently open?
inserted_items
LAZYLIST of insert obj/item's inside the washer tub
inserted_mobs
LAZYLIST of inserted mob/living's inside the washer tube
max_tub_capacity
The cap for how much stuff you can shove in here
wash_color
What DYE color are we dyeing stuff?
washing
Is the washer in the middle of a wash cycle? Used to regulate certain interactions with the washer
Proc Details
calculate_tub_capacity
Calculates the total capacity of the contents of the tub,
eject_tub_contents
Moves all Items/Mobs out of the laundry machine onto the Washing Machine's Loc, unregisters signals, then nulls the tracking lists
insert_item_into_tub
Handles inserting obj/items into the washing machines, checks machines capacity, does a do_after, and then applys appropriate signals and updates machines state
insert_mob_into_tub
Handles inserting mobs into the washing machines, checks machines capacity, does a do_after, and then applys appropriate signals and updates machines state
locate_color_source
Attempts to locate stamps or crayons for dyeing purposes
update_washing_state
Determines which "WM state" to apply based on if the machine is a bloody mess, full/empty, washing, etc and then updates the icon state accordingly
\ No newline at end of file
diff --git a/obj/mecha.html b/obj/mecha.html
new file mode 100644
index 00000000000..e7f581477c8
--- /dev/null
+++ b/obj/mecha.html
@@ -0,0 +1 @@
+/obj/mecha - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
How much speed the mech loses while the buffer is active
emissive_appearance_icon
DMI containing greyscale emissive overlays, responsible for what parts of the mech glow in the dark
floor_buffer
Does it clean the tile under it?
mech_enter_time
Time it takes to enter the mech
thruster_count
How many ion thrusters we got on this bad boy
Proc Details
Process_Spacemove
MARK: Movement procs
Topic
Topic
admin_Freeze
Freeze Mech
attack_ai
MARK: AI piloting
attackby__legacy__attackchain
MARK: AttackBy
check_for_internal_damage
MARK: Internal damage
get_armour_facing
MARK: Health related procs
get_cell
Helpers
get_stats_html
Rendering stats window
has_charge
MARK: Power stuff
occupant_message
Messages and Log
operation_allowed
MARK: Access stuff
process
MARK: Mecha global iterators
return_obj_air
MARK: Atmospheric stuff
\ No newline at end of file
diff --git a/obj/mecha/nkarrdem.html b/obj/mecha/nkarrdem.html
new file mode 100644
index 00000000000..d4d96b3ea4b
--- /dev/null
+++ b/obj/mecha/nkarrdem.html
@@ -0,0 +1 @@
+/obj/mecha/nkarrdem - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/mecha/working/ripley.html b/obj/mecha/working/ripley.html
new file mode 100644
index 00000000000..6dc903816b6
--- /dev/null
+++ b/obj/mecha/working/ripley.html
@@ -0,0 +1 @@
+/obj/mecha/working/ripley - Space Station 13Space Station 13 - Modules - Types — Var Details
How many plates does the Ripley have? Does not stack with other armor
Var Details
drake_hides
How many drake hides does the Ripley have? Does not stack with other armor
hides
How many goliath hides does the Ripley have? Does not stack with other armor
plates
How many plates does the Ripley have? Does not stack with other armor
\ No newline at end of file
diff --git a/obj/projectile.html b/obj/projectile.html
new file mode 100644
index 00000000000..e02171e5b26
--- /dev/null
+++ b/obj/projectile.html
@@ -0,0 +1,17 @@
+/obj/projectile - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Determines the reflectability level of a projectile, either REFLECTABILITY_NEVER, REFLECTABILITY_PHYSICAL, REFLECTABILITY_ENERGY in order of ease to reflect.
On ricochet, if ricochet_auto_aim_range is nonzero, we'll consider any mobs within this range of the normal angle of incidence to home in on, higher = more auto aim
On ricochet, if nonzero, we consider all mobs within this range of our projectile at the time of ricochet to home in on like Revolver Ocelot, as governed by ricochet_auto_aim_angle
determines what type of antimagic can block the spell projectile
armor_penetration_flat
Flat armor reduction, occurs after percentage armor penetration.
armor_penetration_percentage
Percentage armor reduction, happens before flat armor reduction.
chain
For when you want your projectile to have a chain coming out of the gun
force_no_hit_message_or_sound
Is this projectile forced to not make hit messages or sound to avoid spam?
forcedodge
Number of times an object can pass through an object. -1 is infinite
has_been_fired
Has the projectile been fired?
hitsound
Hit sound to play when we hit something
immolate
Does the projectile increase fire stacks / immolate mobs on hit? Applies fire stacks equal to the number on hit.
last_angle_set_hitscan_store
Last turf an angle was changed in for hitscan projectiles.
last_projectile_move
Last world.time the projectile proper moved
min_ricochets
how many times we have to ricochet min (unless we hit an atom we can ricochet off)
reflectability
Determines the reflectability level of a projectile, either REFLECTABILITY_NEVER, REFLECTABILITY_PHYSICAL, REFLECTABILITY_ENERGY in order of ease to reflect.
ricochet_auto_aim_angle
On ricochet, if ricochet_auto_aim_range is nonzero, we'll consider any mobs within this range of the normal angle of incidence to home in on, higher = more auto aim
ricochet_auto_aim_range
On ricochet, if nonzero, we consider all mobs within this range of our projectile at the time of ricochet to home in on like Revolver Ocelot, as governed by ricochet_auto_aim_angle
ricochet_chance
0-100 (or more, I guess), the base chance of ricocheting, before being modified by the atom we shoot and our chance decay
ricochet_decay_chance
0-1 (or more, I guess) multiplier, the ricochet_chance is modified by multiplying this after each ricochet
ricochet_decay_damage
0-1 (or more, I guess) multiplier, the projectile's damage is modified by multiplying this after each ricochet
ricochet_incidence_leeway
the angle of impact must be within this many degrees of the struck surface, set to 0 to allow any angle
ricochet_shoots_firer
Can our ricochet autoaim hit our firer?
ricochets
how many times we've ricochet'd so far (instance variable, not a stat)
ricochets_max
how many times we can ricochet max
shield_buster
Does this projectile do extra damage to / break shields?
time_offset
Left over ticks in movement calculation
trajectory
The projectile's trajectory
trajectory_ignore_forcemove
Instructs forceMove to NOT reset our trajectory to the new location!
Proc Details
is_hostile_projectile
Is this projectile considered "hostile"?
+
By default all projectiles which deal damage or impart crowd control effects (including stamina) are hostile
+
This is NOT used for pacifist checks, that's handled by [/obj/item/ammo_casing/var/harmful]
+This is used in places such as AI responses to determine if they're being threatened or not (among other places)
on_atom_entered
A mob moving on a tile with a projectile is hit by it.
preparePixelProjectile
Aims the projectile at a target.
+
Must be passed at least one of a target or a list of click parameters.
+If only passed the click modifiers the source atom must be a mob with a client.
+
Arguments:
+
+
target: (Optional) The thing that the projectile will be aimed at.
+
source: The initial location of the projectile or the thing firing it.
+
modifiers: (Optional) A list of click parameters to apply to this operation.
+
deviation: (Optional) How the trajectory should deviate from the target in degrees.
+
+
//Spread is FORCED!
+
+
+
\ No newline at end of file
diff --git a/obj/projectile/beam/laser/sniper/pierce.html b/obj/projectile/beam/laser/sniper/pierce.html
new file mode 100644
index 00000000000..c43bf41183a
--- /dev/null
+++ b/obj/projectile/beam/laser/sniper/pierce.html
@@ -0,0 +1 @@
+/obj/projectile/beam/laser/sniper/pierce - Space Station 13Space Station 13 - Modules - Types — Var Details
Have we hit an r_wall? If we have, don't pierce it again so we don't become too effective on reinforced locations (AI sat)
Var Details
hit_a_r_wall
Have we hit an r_wall? If we have, don't pierce it again so we don't become too effective on reinforced locations (AI sat)
\ No newline at end of file
diff --git a/obj/projectile/beam/pulse.html b/obj/projectile/beam/pulse.html
new file mode 100644
index 00000000000..b87b3e899d7
--- /dev/null
+++ b/obj/projectile/beam/pulse.html
@@ -0,0 +1 @@
+/obj/projectile/beam/pulse - Space Station 13Space Station 13 - Modules - Types — Var Details
If this shot can immediately destroy rwalls or not
Var Details
weakened_against_rwalls
If this shot can immediately destroy rwalls or not
\ No newline at end of file
diff --git a/obj/projectile/bullet/mime/nonlethal.html b/obj/projectile/bullet/mime/nonlethal.html
new file mode 100644
index 00000000000..f4c10b01bcd
--- /dev/null
+++ b/obj/projectile/bullet/mime/nonlethal.html
@@ -0,0 +1 @@
+/obj/projectile/bullet/mime/nonlethal - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/projectile/bullet/sniper/penetrator/hallucination.html b/obj/projectile/bullet/sniper/penetrator/hallucination.html
new file mode 100644
index 00000000000..bdfd0026cce
--- /dev/null
+++ b/obj/projectile/bullet/sniper/penetrator/hallucination.html
@@ -0,0 +1 @@
+/obj/projectile/bullet/sniper/penetrator/hallucination - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/projectile/curse_hand.html b/obj/projectile/curse_hand.html
new file mode 100644
index 00000000000..c044b3bc447
--- /dev/null
+++ b/obj/projectile/curse_hand.html
@@ -0,0 +1 @@
+/obj/projectile/curse_hand - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/projectile/energy/demonic_shocker.html b/obj/projectile/energy/demonic_shocker.html
new file mode 100644
index 00000000000..b0df4944652
--- /dev/null
+++ b/obj/projectile/energy/demonic_shocker.html
@@ -0,0 +1 @@
+/obj/projectile/energy/demonic_shocker - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/projectile/homing/lionhunter.html b/obj/projectile/homing/lionhunter.html
new file mode 100644
index 00000000000..bd7e1188876
--- /dev/null
+++ b/obj/projectile/homing/lionhunter.html
@@ -0,0 +1 @@
+/obj/projectile/homing/lionhunter - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/projectile/magic/chaos.html b/obj/projectile/magic/chaos.html
new file mode 100644
index 00000000000..12e6572f4d3
--- /dev/null
+++ b/obj/projectile/magic/chaos.html
@@ -0,0 +1,8 @@
+/obj/projectile/magic/chaos - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Picks and call a subproc to apply a random effect on mob/living/target.
Var Details
chaos_effect
Name of random effect to be applied on target mob.
explosion_amount
If left at 0, item goes in backpack or floor, if set, throw that many items around the target.
item_to_summon
Set by random effet to be summoned in target mob's backpack, on the floor under mob, or around mob if explosion_amount is set.
Proc Details
apply_gift_effect
Picks a random gift to be given to mob/living/target. Should be mildly useful and/or funny.
apply_great_gift_effect
Picks a random gift to be given to mob/living/target. Should be valuable and/or threatening to the wizard.
apply_lethal_effect
Picks and apply a lethal effect on mob/living/target. Some are more instantaneous than others.
apply_misc_effect
Picks and apply a random miscellaneous effect on mob/living/target. Can be negative or mildly positive.
apply_negative_effect
Picks and apply a negative effect on mob/living/target. Usually causes damage and/or incapacitating effect.
chaos_chaos
Picks and call a subproc to apply a random effect on mob/living/target.
+
First pick a category of random effect,
+then calls a sub-proc to pick and apply an effect in that category,
+then summons any item_to_summon set by effects.
+Arguments:
+
+
target - mob/living that will have effect applied on them
+
\ No newline at end of file
diff --git a/obj/projectile/magic/floating_blade.html b/obj/projectile/magic/floating_blade.html
new file mode 100644
index 00000000000..1cb18561c9b
--- /dev/null
+++ b/obj/projectile/magic/floating_blade.html
@@ -0,0 +1 @@
+/obj/projectile/magic/floating_blade - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/projectile/magic/star_ball.html b/obj/projectile/magic/star_ball.html
new file mode 100644
index 00000000000..f192f5e3312
--- /dev/null
+++ b/obj/projectile/magic/star_ball.html
@@ -0,0 +1 @@
+/obj/projectile/magic/star_ball - Space Station 13Space Station 13 - Modules - Types — Var Details
The range at which people will get marked with a star mark.
Var Details
explosion_effect
Effect for when the ball hits something
star_mark_range
The range at which people will get marked with a star mark.
\ No newline at end of file
diff --git a/obj/projectile/missile.html b/obj/projectile/missile.html
new file mode 100644
index 00000000000..ee5c1c39064
--- /dev/null
+++ b/obj/projectile/missile.html
@@ -0,0 +1 @@
+/obj/projectile/missile - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/projectile/moon_parade.html b/obj/projectile/moon_parade.html
new file mode 100644
index 00000000000..2849c4faee6
--- /dev/null
+++ b/obj/projectile/moon_parade.html
@@ -0,0 +1 @@
+/obj/projectile/moon_parade - Space Station 13Space Station 13 - Modules - Types — Var Details
Have we been disabled by hitting an antimagic person
soundloop
looping sound datum for our projectile.
\ No newline at end of file
diff --git a/obj/projectile/tether.html b/obj/projectile/tether.html
new file mode 100644
index 00000000000..7fb57d01754
--- /dev/null
+++ b/obj/projectile/tether.html
@@ -0,0 +1 @@
+/obj/projectile/tether - Space Station 13Space Station 13 - Modules - Types — Var Details
How fast the tether will throw the user at the target
Var Details
yank_speed
How fast the tether will throw the user at the target
\ No newline at end of file
diff --git a/obj/projectile/tether/flayer.html b/obj/projectile/tether/flayer.html
new file mode 100644
index 00000000000..4271a7dc794
--- /dev/null
+++ b/obj/projectile/tether/flayer.html
@@ -0,0 +1 @@
+/obj/projectile/tether/flayer - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/singularity.html b/obj/singularity.html
new file mode 100644
index 00000000000..113dbca6c27
--- /dev/null
+++ b/obj/singularity.html
@@ -0,0 +1,3 @@
+/obj/singularity - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Gets a list of field generators that generate the field that contains the singularity
+and returns their most extreme coordinates.
Var Details
all_possible_areas
Init list that has all the areas that we can possibly move to, to reduce processing impact
beacon_target
If there is a syndicate beacon, the singularity will move quickly towards it.
isnt_shutting_down
Whether or not we've pinged ghosts
singulo_id
Id for monitoring.
target
The target of the singularity. It will wander slowly towards this, and pick another target once it reaches it.
Proc Details
in_containment
Gets a list of field generators that generate the field that contains the singularity
+and returns their most extreme coordinates.
\ No newline at end of file
diff --git a/obj/singularity/energy_ball.html b/obj/singularity/energy_ball.html
new file mode 100644
index 00000000000..1d55752eeca
--- /dev/null
+++ b/obj/singularity/energy_ball.html
@@ -0,0 +1 @@
+/obj/singularity/energy_ball - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
When we get orbited, add the orbiter to our tracked balls
Var Details
has_close_field
Variable that defines whether it has a field generator close enough
move_target
The next spot the tesla will zoom to and stop at on its way to movement_goal
movement_goal
Turf where the tesla will move to if it's loose
steps_per_move
How many tiles do we move per movement step?
Proc Details
on_start_orbit
When we get orbited, add the orbiter to our tracked balls
\ No newline at end of file
diff --git a/obj/structure.html b/obj/structure.html
new file mode 100644
index 00000000000..9b594844125
--- /dev/null
+++ b/obj/structure.html
@@ -0,0 +1 @@
+/obj/structure - Space Station 13Space Station 13 - Modules - Types — Var Details
Determines if a structure adds the TRAIT_TURF_COVERED to its turf.
unbuckle_time
How long this takes to unbuckle yourself from.
\ No newline at end of file
diff --git a/obj/structure/alien/egg.html b/obj/structure/alien/egg.html
new file mode 100644
index 00000000000..e4e2f163e0d
--- /dev/null
+++ b/obj/structure/alien/egg.html
@@ -0,0 +1 @@
+/obj/structure/alien/egg - Space Station 13Space Station 13 - Modules - Types — Proc Details
We now check HOW the hugger is hatching, kill carried from Burst() and obj_break()
Proc Details
burst
Need to carry the kill from Burst() to Hatch(), this section handles the alien opening the egg
hatch
We now check HOW the hugger is hatching, kill carried from Burst() and obj_break()
\ No newline at end of file
diff --git a/obj/structure/alien/wallweed.html b/obj/structure/alien/wallweed.html
new file mode 100644
index 00000000000..24d59b6fa2d
--- /dev/null
+++ b/obj/structure/alien/wallweed.html
@@ -0,0 +1 @@
+/obj/structure/alien/wallweed - Space Station 13Space Station 13 - Modules - Types — Var Details
This var is used for making automatic weed removals silent instead of making them produce the breaking sound
Var Details
silent_removal
This var is used for making automatic weed removals silent instead of making them produce the breaking sound
\ No newline at end of file
diff --git a/obj/structure/alien/weeds.html b/obj/structure/alien/weeds.html
new file mode 100644
index 00000000000..3df69fbb227
--- /dev/null
+++ b/obj/structure/alien/weeds.html
@@ -0,0 +1 @@
+/obj/structure/alien/weeds - Space Station 13Space Station 13 - Modules - Types — Var Details
This var is used for making automatic weed removals silent instead of making them produce the breaking sound
Var Details
silent_removal
This var is used for making automatic weed removals silent instead of making them produce the breaking sound
\ No newline at end of file
diff --git a/obj/structure/barricade.html b/obj/structure/barricade.html
new file mode 100644
index 00000000000..b565ab7ebb9
--- /dev/null
+++ b/obj/structure/barricade.html
@@ -0,0 +1 @@
+/obj/structure/barricade - Space Station 13Space Station 13 - Modules - Types — Var Details
Used to exclude welders from fixing non metal barricades.
directional_blockage
This variable is used to allow projectiles to always shoot through a barrier from a certain direction
drop_amount
How much material will be dropped on deconstruction?
stacktype
What material is the barricade made of?
\ No newline at end of file
diff --git a/obj/structure/barricade/dropwall.html b/obj/structure/barricade/dropwall.html
new file mode 100644
index 00000000000..a2a103620d3
--- /dev/null
+++ b/obj/structure/barricade/dropwall.html
@@ -0,0 +1 @@
+/obj/structure/barricade/dropwall - Space Station 13Space Station 13 - Modules - Types — Var Details
This variable is to tell the shield what it's source is.
Var Details
core_shield
This variable is used to tell the shield to ping it's owner when it is broke.
source
This variable is to tell the shield what it's source is.
\ No newline at end of file
diff --git a/obj/structure/barricade/foam.html b/obj/structure/barricade/foam.html
new file mode 100644
index 00000000000..ee8fa733c1d
--- /dev/null
+++ b/obj/structure/barricade/foam.html
@@ -0,0 +1 @@
+/obj/structure/barricade/foam - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/blob.html b/obj/structure/blob.html
new file mode 100644
index 00000000000..e858f37c3b6
--- /dev/null
+++ b/obj/structure/blob.html
@@ -0,0 +1 @@
+/obj/structure/blob - Space Station 13Space Station 13 - Modules - Types — Var Details
If a threshold is reached, resulting in shifting variables
Var Details
compromised_integrity
If a threshold is reached, resulting in shifting variables
\ No newline at end of file
diff --git a/obj/structure/cable.html b/obj/structure/cable.html
new file mode 100644
index 00000000000..f7879a6a45f
--- /dev/null
+++ b/obj/structure/cable.html
@@ -0,0 +1,3 @@
+/obj/structure/cable - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
The type of cable coil you make when deconstructed
connect_type
Types of cables that can connect to this cable
d1
The direction of endpoint one of this cable
d2
The direction of enpoint two of this cable
extra_insulated
Whether the cable has additional insulation to prevent shocking on contact
merge_id
The types of cables that can merge with this cable
powernet
The regional powernet this cable is registered to
Proc Details
add_power_demand
Adds power demand to the powernet, machines should use this
add_queued_power_demand
Adds queued power demand to be met next process cycle, non_machines should use this
get_available_power
Gets power available (NOT EXTRA) on this cables powernet, machines should use this, engines should add power to the net with this proc
get_queued_available_power
Gets available (NOT EXTRA) power queued for next process cycle on this cables powernet, non_machines should use this
get_queued_surplus
Gets surplus power queued for next process cycle on this cables powernet, non_machines should use this
get_surplus
Gets surplus power available on this cables powernet, machines should use this
hide
If underfloor, hide the cable
merge_connected_networks
merge_connected_networks(), merge_connected_networks_on_turf(), and merge_diagonal_networks() all deal with merging
+cables' powernets together
shuttleRotate
Structure rotate procs
\ No newline at end of file
diff --git a/obj/structure/chair.html b/obj/structure/chair.html
new file mode 100644
index 00000000000..075f5e78792
--- /dev/null
+++ b/obj/structure/chair.html
@@ -0,0 +1 @@
+/obj/structure/chair - Space Station 13Space Station 13 - Modules - Types — Var Details
Will it set to the layer above the player or not? Use with Armrests.
Var Details
possible_dirs
Used to handle rotation properly, should only be 1, 4, or 8
uses_armrest
Will it set to the layer above the player or not? Use with Armrests.
\ No newline at end of file
diff --git a/obj/structure/chair/sofa/bench.html b/obj/structure/chair/sofa/bench.html
new file mode 100644
index 00000000000..6dcd6b30306
--- /dev/null
+++ b/obj/structure/chair/sofa/bench.html
@@ -0,0 +1 @@
+/obj/structure/chair/sofa/bench - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/closet.html b/obj/structure/closet.html
new file mode 100644
index 00000000000..6b3b534eb21
--- /dev/null
+++ b/obj/structure/closet.html
@@ -0,0 +1 @@
+/obj/structure/closet - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Whether this closet uses a door overlay at all. If FALSE, it'll switch to a system where the entire icon_state is replaced with [icon_state]_open instead.
Calculates the matrix to be applied to the animated door overlay
Var Details
closed_door_sprite
Overwrites icon_state for the closed door sprite. Only necessary if the closed door sprite has a different name than the icon_state.
custom_skin
Added to initial(icon_state) if not null. Used for IC customization, e.g. when painting cardboard boxes.
door_anim_angle
The maximum angle the door will be drawn at
door_anim_squish
Vertical squish of the door
door_anim_time
Amount of time it takes for the door animation to play
door_hinge_x
X position of the closet door hinge
door_obj
The overlay for the closet's door
enable_door_overlay
Whether this closet uses a door overlay at all. If FALSE, it'll switch to a system where the entire icon_state is replaced with [icon_state]_open instead.
has_closed_overlay
Whether this closet uses a door overlay for when it is closed
has_opened_overlay
Whether this closet uses a door overlay for when it is opened
is_animating_door
Whether or not this door is being animated
opened_door_sprite
Overwrites icon_state for the opened door sprite. Only necessary if the opened door sprite has a different name than the icon_state.
Proc Details
animate_door
Animates the closet door opening and closing
end_door_animation
Ends the door animation and removes the animated overlay
get_door_transform
Calculates the matrix to be applied to the animated door overlay
\ No newline at end of file
diff --git a/obj/structure/closet/cardboard.html b/obj/structure/closet/cardboard.html
new file mode 100644
index 00000000000..effe42e05b7
--- /dev/null
+++ b/obj/structure/closet/cardboard.html
@@ -0,0 +1 @@
+/obj/structure/closet/cardboard - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/closet/coffin/vampire.html b/obj/structure/closet/coffin/vampire.html
new file mode 100644
index 00000000000..cb5beee4841
--- /dev/null
+++ b/obj/structure/closet/coffin/vampire.html
@@ -0,0 +1 @@
+/obj/structure/closet/coffin/vampire - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/closet/crate.html b/obj/structure/closet/crate.html
new file mode 100644
index 00000000000..a67e8fdd9fb
--- /dev/null
+++ b/obj/structure/closet/crate.html
@@ -0,0 +1 @@
+/obj/structure/closet/crate - Space Station 13Space Station 13 - Modules - Types — Var Details
How much this crate is worth if you sell it via the cargo shuttle, needed for balance :)
Var Details
announce_beacons
A list of beacon names that the crate will announce the arrival of, when delivered.
crate_value
How much this crate is worth if you sell it via the cargo shuttle, needed for balance :)
\ No newline at end of file
diff --git a/obj/structure/closet/crate/secure/oldstation.html b/obj/structure/closet/crate/secure/oldstation.html
new file mode 100644
index 00000000000..34c873ed048
--- /dev/null
+++ b/obj/structure/closet/crate/secure/oldstation.html
@@ -0,0 +1,2 @@
+/obj/structure/closet/crate/secure/oldstation - Space Station 13Space Station 13 - Modules - Types — Proc Details
oldstation
Secure Crates: Access locked to Theta crew. Cannot be moved, destroyed,
+emagged or EMPed because gamers can't be trusted not to game.
Allow Theta crew to move the crates once unlocked so they don't get in the way
Proc Details
togglelock
Allow Theta crew to move the crates once unlocked so they don't get in the way
\ No newline at end of file
diff --git a/obj/structure/closet/crate/secure/personal.html b/obj/structure/closet/crate/secure/personal.html
new file mode 100644
index 00000000000..eb4a5e76899
--- /dev/null
+++ b/obj/structure/closet/crate/secure/personal.html
@@ -0,0 +1 @@
+/obj/structure/closet/crate/secure/personal - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Returns whether the object is a usable ID card (not guest pass, has name).
Var Details
registered_name
The name of the person this crate is registered to.
Proc Details
is_usable_id
Returns whether the object is a usable ID card (not guest pass, has name).
\ No newline at end of file
diff --git a/obj/structure/closet/secure_closet/contractor.html b/obj/structure/closet/secure_closet/contractor.html
new file mode 100644
index 00000000000..3853e8e35b4
--- /dev/null
+++ b/obj/structure/closet/secure_closet/contractor.html
@@ -0,0 +1,12 @@
+/obj/structure/closet/secure_closet/contractor - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Prisoner Belongings Closet
Cannot be opened. Contains the belongings of all kidnapped targets.
+Any item added inside stops processing and starts again when removed.
Lazy list of atoms which should process again when taken out.
Proc Details
give_item
Tries to add an atom for temporary holding, suspending its processing.
+
Arguments:
+
+
A - The atom to add.
+
remove_item
Removes an atom from temporary holding.
+
Arguments:
+
+
A - The atom to remove.
+
\ No newline at end of file
diff --git a/obj/structure/constructshell.html b/obj/structure/constructshell.html
new file mode 100644
index 00000000000..07468d31b63
--- /dev/null
+++ b/obj/structure/constructshell.html
@@ -0,0 +1 @@
+/obj/structure/constructshell - Space Station 13Space Station 13 - Modules - Types — Var Details
Is someone currently placing a soulstone into the shell
Var Details
active
Is someone currently placing a soulstone into the shell
\ No newline at end of file
diff --git a/obj/structure/cult/functional.html b/obj/structure/cult/functional.html
new file mode 100644
index 00000000000..6ebf5ce3db8
--- /dev/null
+++ b/obj/structure/cult/functional.html
@@ -0,0 +1,2 @@
+/obj/structure/cult/functional - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Returns the items the cult can craft from this forge.
Var Details
mansus_conversion_path
The dispenser will create this item and then delete itself if it is rust converted.
Proc Details
get_ETA
Returns the cooldown time in minutes and seconds
get_choosable_items
Returns the items the cult can craft from this forge.
+
Override on children for logic regarding game state.
\ No newline at end of file
diff --git a/obj/structure/cursed_slot_machine.html b/obj/structure/cursed_slot_machine.html
new file mode 100644
index 00000000000..a460fb5b48e
--- /dev/null
+++ b/obj/structure/cursed_slot_machine.html
@@ -0,0 +1 @@
+/obj/structure/cursed_slot_machine - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
cursed_slot_machine
Greed's slot machine: Used in the Greed ruin. Deals damage on each use, with a successful use giving a d20 of fate.
Validates that the user can use the cursed slot machine. User is the person using the slot machine. Returns TRUE if we can, FALSE otherwise.
Var Details
brightness_on
Should we be emitting light?
cooldown_length
Length of the cooldown between the machine being used and being able to spin the machine again.
icon_screen
Variable that tracks the screen we display.
in_active_use
Are we currently in use? Anti-spam prevention measure.
max_curse_amount
The maximum amount of curses we will allow a player to have before disallowing them to use the machine.
prize
machine's reward when you hit jackpot
spin_cooldown
Cooldown between pulls of the cursed slot machine.
status_effect_on_roll
should we be applying the cursed status effect?
win_prob
The probability the player has to win.
Proc Details
check_and_set_usage
Validates that the user can use the cursed slot machine. User is the person using the slot machine. Returns TRUE if we can, FALSE otherwise.
\ No newline at end of file
diff --git a/obj/structure/custom_sign.html b/obj/structure/custom_sign.html
new file mode 100644
index 00000000000..01580110c57
--- /dev/null
+++ b/obj/structure/custom_sign.html
@@ -0,0 +1 @@
+/obj/structure/custom_sign - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/disaster_counter.html b/obj/structure/disaster_counter.html
new file mode 100644
index 00000000000..0178f533728
--- /dev/null
+++ b/obj/structure/disaster_counter.html
@@ -0,0 +1 @@
+/obj/structure/disaster_counter - Space Station 13Space Station 13 - Modules - Types — Var Details
Disaster counter.
Tracks how many shifts it has been since the counter with that ID was exploded.
ID of the counter. Must be overriden. Use alphanumerics with no spaces only, as this is used in the filesystem.
current_count
Current count number
record_count
Record count
\ No newline at end of file
diff --git a/obj/structure/dispenser.html b/obj/structure/dispenser.html
new file mode 100644
index 00000000000..5862c671441
--- /dev/null
+++ b/obj/structure/dispenser.html
@@ -0,0 +1 @@
+/obj/structure/dispenser - Space Station 13Space Station 13 - Modules - Types — Proc Details
Called when the user clicks on the oxygen or plasma tank UI buttons, and tries to withdraw a tank.
Proc Details
try_insert_tank
Called when the user clicks on the dispenser with a tank. Tries to insert the tank into the dispenser, and updates the UI if successful.
try_remove_tank
Called when the user clicks on the oxygen or plasma tank UI buttons, and tries to withdraw a tank.
\ No newline at end of file
diff --git a/obj/structure/displaycase.html b/obj/structure/displaycase.html
new file mode 100644
index 00000000000..149b53471aa
--- /dev/null
+++ b/obj/structure/displaycase.html
@@ -0,0 +1,3 @@
+/obj/structure/displaycase - Space Station 13Space Station 13 - Modules - Types — Var Details
A list of random items that could possibly fill the case, as well as a flavor message for them.
+Takes sublists in the form of list("type" = /obj/item/bikehorn, "trophy_message" = "henk")
If true, this is alarmed and will set off a siren when opened without proper access.
electronics
The electronics currently installed in this showpiece.
force_alarm
Do we want to force alarms even if off station?
open
If this is currently unlocked
openable
If false, this can never be opened, and the item inside should be inaccessible. Good for showcases.
showpiece
The object stored inside.
start_showpiece_type
The type that should be instantiated to fill the showpiece.
start_showpieces
A list of random items that could possibly fill the case, as well as a flavor message for them.
+Takes sublists in the form of list("type" = /obj/item/bikehorn, "trophy_message" = "henk")
trophy_message
A flavor message to show with this item.
\ No newline at end of file
diff --git a/obj/structure/disposalholder.html b/obj/structure/disposalholder.html
new file mode 100644
index 00000000000..ac58950618d
--- /dev/null
+++ b/obj/structure/disposalholder.html
@@ -0,0 +1 @@
+/obj/structure/disposalholder - Space Station 13Space Station 13 - Modules - Types — Var Details
Destination the holder is set to, defaulting to disposals and changes if the contents have a mail/sort tag.
Var Details
destinationTag
Destination the holder is set to, defaulting to disposals and changes if the contents have a mail/sort tag.
\ No newline at end of file
diff --git a/obj/structure/disposaloutlet.html b/obj/structure/disposaloutlet.html
new file mode 100644
index 00000000000..a876f4177a9
--- /dev/null
+++ b/obj/structure/disposaloutlet.html
@@ -0,0 +1 @@
+/obj/structure/disposaloutlet - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/disposalpipe.html b/obj/structure/disposalpipe.html
new file mode 100644
index 00000000000..a3ea1c39b2e
--- /dev/null
+++ b/obj/structure/disposalpipe.html
@@ -0,0 +1 @@
+/obj/structure/disposalpipe - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/disposalpipe/trunk.html b/obj/structure/disposalpipe/trunk.html
new file mode 100644
index 00000000000..fe31d308fcc
--- /dev/null
+++ b/obj/structure/disposalpipe/trunk.html
@@ -0,0 +1 @@
+/obj/structure/disposalpipe/trunk - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/structure/door_assembly.html b/obj/structure/door_assembly.html
new file mode 100644
index 00000000000..ee30929adb4
--- /dev/null
+++ b/obj/structure/door_assembly.html
@@ -0,0 +1 @@
+/obj/structure/door_assembly - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/dresser/wardrobe.html b/obj/structure/dresser/wardrobe.html
new file mode 100644
index 00000000000..1c26c7ba41d
--- /dev/null
+++ b/obj/structure/dresser/wardrobe.html
@@ -0,0 +1 @@
+/obj/structure/dresser/wardrobe - Space Station 13Space Station 13 - Modules - Types — Var Details
List of objects which this item can't store (can make exceptions to can_hold)
Var Details
can_hold
List of objects which this item can store (if set, it can't store anything else)
cant_hold
List of objects which this item can't store (can make exceptions to can_hold)
\ No newline at end of file
diff --git a/obj/structure/dropwall_generator.html b/obj/structure/dropwall_generator.html
new file mode 100644
index 00000000000..a309ae8eceb
--- /dev/null
+++ b/obj/structure/dropwall_generator.html
@@ -0,0 +1 @@
+/obj/structure/dropwall_generator - Space Station 13Space Station 13 - Modules - Types — Var Details
This variable is used to prevent damage to it's core shield when it is up.
Var Details
barricade_type
The type of dropwall
core_shield
The core shield that protects the generator
protected
This variable is used to prevent damage to it's core shield when it is up.
\ No newline at end of file
diff --git a/obj/structure/eldritch_crucible.html b/obj/structure/eldritch_crucible.html
new file mode 100644
index 00000000000..14d7400c909
--- /dev/null
+++ b/obj/structure/eldritch_crucible.html
@@ -0,0 +1 @@
+/obj/structure/eldritch_crucible - Space Station 13Space Station 13 - Modules - Types — Var Details
Cooldown for the crucible to create mass from the eldritch
Var Details
current_mass
How much mass this currently holds
max_mass
Maximum amount of mass
refill_cooldown
Cooldown for the crucible to create mass from the eldritch
\ No newline at end of file
diff --git a/obj/structure/elite_tumor.html b/obj/structure/elite_tumor.html
new file mode 100644
index 00000000000..773ec350c41
--- /dev/null
+++ b/obj/structure/elite_tumor.html
@@ -0,0 +1 @@
+/obj/structure/elite_tumor - Space Station 13Space Station 13 - Modules - Types — Var Details
List of invaders that have teleportes into the arena multiple times. They will be suffering.
potentialspawns
List of all potentially spawned elites
\ No newline at end of file
diff --git a/obj/structure/environmental_storytelling_holopad.html b/obj/structure/environmental_storytelling_holopad.html
new file mode 100644
index 00000000000..d5749c33cb8
--- /dev/null
+++ b/obj/structure/environmental_storytelling_holopad.html
@@ -0,0 +1 @@
+/obj/structure/environmental_storytelling_holopad - Space Station 13Space Station 13 - Modules - Types — Var Details
Have we been activated? If we have, we do not activate again.
loop_sleep_time
How long do we sleep between messages? 5 seconds by default.
our_holo
Tied effect to kill when we die.
soundblock
The key of the soundblock. Used to align for the 3 sounds we have. If null, no sound will be played.
speaking_name
Name of who we are speaking as.
things_to_say
List of things to say.
\ No newline at end of file
diff --git a/obj/structure/environmental_storytelling_holopad/ragnarok_ship.html b/obj/structure/environmental_storytelling_holopad/ragnarok_ship.html
new file mode 100644
index 00000000000..150ee463637
--- /dev/null
+++ b/obj/structure/environmental_storytelling_holopad/ragnarok_ship.html
@@ -0,0 +1 @@
+/obj/structure/environmental_storytelling_holopad/ragnarok_ship - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/falsewall.html b/obj/structure/falsewall.html
new file mode 100644
index 00000000000..0a1c7105de9
--- /dev/null
+++ b/obj/structure/falsewall.html
@@ -0,0 +1 @@
+/obj/structure/falsewall - Space Station 13Space Station 13 - Modules - Types — Var Details
Minimum environment smash level (found on simple animals) to break through this instantly
Var Details
env_smash_level
Minimum environment smash level (found on simple animals) to break through this instantly
\ No newline at end of file
diff --git a/obj/structure/fence.html b/obj/structure/fence.html
new file mode 100644
index 00000000000..b79a92e9672
--- /dev/null
+++ b/obj/structure/fence.html
@@ -0,0 +1 @@
+/obj/structure/fence - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/filler.html b/obj/structure/filler.html
new file mode 100644
index 00000000000..0cfce5af4bf
--- /dev/null
+++ b/obj/structure/filler.html
@@ -0,0 +1 @@
+/obj/structure/filler - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/flora/grass/jungle.html b/obj/structure/flora/grass/jungle.html
new file mode 100644
index 00000000000..e8b0bc25ba8
--- /dev/null
+++ b/obj/structure/flora/grass/jungle.html
@@ -0,0 +1 @@
+/obj/structure/flora/grass/jungle - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/flora/junglebush.html b/obj/structure/flora/junglebush.html
new file mode 100644
index 00000000000..c38e093430a
--- /dev/null
+++ b/obj/structure/flora/junglebush.html
@@ -0,0 +1 @@
+/obj/structure/flora/junglebush - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/flora/tree/jungle.html b/obj/structure/flora/tree/jungle.html
new file mode 100644
index 00000000000..f110fa76de7
--- /dev/null
+++ b/obj/structure/flora/tree/jungle.html
@@ -0,0 +1 @@
+/obj/structure/flora/tree/jungle - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/grave.html b/obj/structure/grave.html
new file mode 100644
index 00000000000..834409cd3b8
--- /dev/null
+++ b/obj/structure/grave.html
@@ -0,0 +1 @@
+/obj/structure/grave - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/lock_tear.html b/obj/structure/lock_tear.html
new file mode 100644
index 00000000000..fca76a9cd89
--- /dev/null
+++ b/obj/structure/lock_tear.html
@@ -0,0 +1 @@
+/obj/structure/lock_tear - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
How many minutes must you wait before respawning so this is actually maybe dealable by crew
gathering_candidates
True if we're currently checking for ghost opinions
monster_types
a static list of heretic summons we cam create, automatically populated from heretic monster subtypes
monster_types_blacklist
A static list of heretic summons which we should not create
Proc Details
end_madness
Destroy the rift if you kill the heretic
ghost_to_monster
Turn a ghost into an 'orrible beast
poll_ghosts
Ask ghosts if they want to make some noise
\ No newline at end of file
diff --git a/obj/structure/loom.html b/obj/structure/loom.html
new file mode 100644
index 00000000000..f582380df50
--- /dev/null
+++ b/obj/structure/loom.html
@@ -0,0 +1 @@
+/obj/structure/loom - Space Station 13Space Station 13 - Modules - Types — Proc Details
loom
This is a loom. It's usually made out of wood and used to weave fabric like durathread or cotton into their respective cloth types.
\ No newline at end of file
diff --git a/obj/structure/mineral_door.html b/obj/structure/mineral_door.html
new file mode 100644
index 00000000000..cc01acdbe9f
--- /dev/null
+++ b/obj/structure/mineral_door.html
@@ -0,0 +1 @@
+/obj/structure/mineral_door - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/mining_bomb.html b/obj/structure/mining_bomb.html
new file mode 100644
index 00000000000..25225dbbf83
--- /dev/null
+++ b/obj/structure/mining_bomb.html
@@ -0,0 +1 @@
+/obj/structure/mining_bomb - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/mirror.html b/obj/structure/mirror.html
new file mode 100644
index 00000000000..acbbcc8f0f4
--- /dev/null
+++ b/obj/structure/mirror.html
@@ -0,0 +1,7 @@
+/obj/structure/mirror - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
This proc sets the icon that will show up in the mirror when spooked
Var Details
can_be_spooked
Whether a mirror can be Boo!'d or not. Magic mirrors are animated, so this is used to stop them from looking weird
spooked_icon
what to show when a ghost Boo!'s this mirror
Proc Details
flicker_ghost
Shows the icon in the mirror with its mask
update_spooked_icon
This proc sets the icon that will show up in the mirror when spooked
+
+
icon_to_show - which icon
+
offset_dir - you might want to move the icon so it appears in the mirror
+
offset_pixels - how many pixels you need to move the icon
+
wrap - if the icon should wrap around
+
\ No newline at end of file
diff --git a/obj/structure/musician.html b/obj/structure/musician.html
new file mode 100644
index 00000000000..9babe97a845
--- /dev/null
+++ b/obj/structure/musician.html
@@ -0,0 +1,5 @@
+/obj/structure/musician - Space Station 13Space Station 13 - Modules - Types — Proc Details
\ No newline at end of file
diff --git a/obj/structure/providence_lockdown_controller.html b/obj/structure/providence_lockdown_controller.html
new file mode 100644
index 00000000000..b075d1b439b
--- /dev/null
+++ b/obj/structure/providence_lockdown_controller.html
@@ -0,0 +1 @@
+/obj/structure/providence_lockdown_controller - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/railing.html b/obj/structure/railing.html
new file mode 100644
index 00000000000..d85b84b9491
--- /dev/null
+++ b/obj/structure/railing.html
@@ -0,0 +1 @@
+/obj/structure/railing - Space Station 13Space Station 13 - Modules - Types — Proc Details
Implements behaviour that makes it possible to unanchor the railing.
Proc Details
wrench_act
Implements behaviour that makes it possible to unanchor the railing.
\ No newline at end of file
diff --git a/obj/structure/reagent_dispensers.html b/obj/structure/reagent_dispensers.html
new file mode 100644
index 00000000000..97a4ce96ddd
--- /dev/null
+++ b/obj/structure/reagent_dispensers.html
@@ -0,0 +1 @@
+/obj/structure/reagent_dispensers - Space Station 13Space Station 13 - Modules - Types — Var Details
If the dispenser is being blown up already. Used to avoid multiple boom calls due to itself exploding etc
Var Details
can_be_unwrenched
Can this tank be unwrenched
lastrigger
The last person to rig this fuel tank - Stored with the object. Only the last person matters for investigation
reagent_id
The ID of the reagent that the dispenser uses
tank_volume
How much this dispenser can hold (In units)
went_boom
If the dispenser is being blown up already. Used to avoid multiple boom calls due to itself exploding etc
\ No newline at end of file
diff --git a/obj/structure/reagent_dispensers/beerkeg/nuke.html b/obj/structure/reagent_dispensers/beerkeg/nuke.html
new file mode 100644
index 00000000000..efcd6aa6e53
--- /dev/null
+++ b/obj/structure/reagent_dispensers/beerkeg/nuke.html
@@ -0,0 +1 @@
+/obj/structure/reagent_dispensers/beerkeg/nuke - Space Station 13Space Station 13 - Modules - Types — Var Details
If TRUE, prevents the player from inserting the disk again while it is currently exploding.
Var Details
exploding
If TRUE, prevents the player from inserting the disk again while it is currently exploding.
\ No newline at end of file
diff --git a/obj/structure/respawner.html b/obj/structure/respawner.html
new file mode 100644
index 00000000000..bf0056f738b
--- /dev/null
+++ b/obj/structure/respawner.html
@@ -0,0 +1 @@
+/obj/structure/respawner - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/roulette.html b/obj/structure/roulette.html
new file mode 100644
index 00000000000..1dc30b30580
--- /dev/null
+++ b/obj/structure/roulette.html
@@ -0,0 +1 @@
+/obj/structure/roulette - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/safe.html b/obj/structure/safe.html
new file mode 100644
index 00000000000..8023647e798
--- /dev/null
+++ b/obj/structure/safe.html
@@ -0,0 +1 @@
+/obj/structure/safe - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Safe
A locked container that can only be opened by entering a combination through a dial.
The maximum combined w_class of stuff in the safe.
number_of_tumblers
The amount of tumblers that will be generated.
open
Whether the safe is open or not.
progress_bar
The progress bar image to display during the drilling process.
space
The combined w_class of everything in the safe.
time_to_drill
Drill duration of the current thermal drill.
tumblers
The list of tumbler dial positions that need to be hit.
Proc Details
check_unlocked
Called every dial turn to determine whether the safe should unlock or not.
drill_open
Called when the current thermal drill has finished drilling.
get_combination
Returns the combination to unlock the safe as text.
notify_user
Called every dial turn to provide feedback if possible.
\ No newline at end of file
diff --git a/obj/structure/shadowcocoon.html b/obj/structure/shadowcocoon.html
new file mode 100644
index 00000000000..f60d04c23f5
--- /dev/null
+++ b/obj/structure/shadowcocoon.html
@@ -0,0 +1 @@
+/obj/structure/shadowcocoon - Space Station 13Space Station 13 - Modules - Types — Var Details
Amount of SSobj ticks (Roughly 2 seconds) since the last hallucination proc'd
Var Details
silent
Will we play hallucination sounds or not
time_since_last_hallucination
Amount of SSobj ticks (Roughly 2 seconds) since the last hallucination proc'd
\ No newline at end of file
diff --git a/obj/structure/shelf.html b/obj/structure/shelf.html
new file mode 100644
index 00000000000..0a395c3411a
--- /dev/null
+++ b/obj/structure/shelf.html
@@ -0,0 +1 @@
+/obj/structure/shelf - Space Station 13Space Station 13 - Modules - Types — Var Details
The suffix of the icon state used for the shelf. Indexed into GLOB.shelf_colors.
Var Details
shelf_overlay
The current overlay of the top shelf. Used for interleaving objects and shelf layers for the illusion of depth.
shelf_style
The suffix of the icon state used for the shelf. Indexed into GLOB.shelf_colors.
\ No newline at end of file
diff --git a/obj/structure/signpost/void.html b/obj/structure/signpost/void.html
new file mode 100644
index 00000000000..e2454710fe0
--- /dev/null
+++ b/obj/structure/signpost/void.html
@@ -0,0 +1 @@
+/obj/structure/signpost/void - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/spawner/nether/bluespace_tap.html b/obj/structure/spawner/nether/bluespace_tap.html
new file mode 100644
index 00000000000..a38b3da7d9b
--- /dev/null
+++ b/obj/structure/spawner/nether/bluespace_tap.html
@@ -0,0 +1 @@
+/obj/structure/spawner/nether/bluespace_tap - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/spawner/nether/demon_incursion.html b/obj/structure/spawner/nether/demon_incursion.html
new file mode 100644
index 00000000000..3161469bfca
--- /dev/null
+++ b/obj/structure/spawner/nether/demon_incursion.html
@@ -0,0 +1 @@
+/obj/structure/spawner/nether/demon_incursion - Space Station 13Space Station 13 - Modules - Types — Var Details
Mob types that cannot have a special variant - pretty much anything with a unique AI controller
portal_repair_cooldown
How long of a cooldown on portal repair
portal_spread_chance
Percentage chance that a portal will spread every time spread() is called
portal_spread_cooldown_max
Upper bound for portal spreading
portal_spread_cooldown_min
Lower bound for portal spreading
spawn_rate
How fast does the portal spawn mobs after the initial spawns?
spawning_initial_mobs
Are we spawning initial mobs?
special_chance
Chance that a mob type is special
tile_spread
Current tile spread distance
tile_spread_max
Max tile Spread distance
turf_to_spread
Turf type that is spread by the portals
\ No newline at end of file
diff --git a/obj/structure/spawner/sentient/proteon_spawner.html b/obj/structure/spawner/sentient/proteon_spawner.html
new file mode 100644
index 00000000000..eee1a5ec33d
--- /dev/null
+++ b/obj/structure/spawner/sentient/proteon_spawner.html
@@ -0,0 +1 @@
+/obj/structure/spawner/sentient/proteon_spawner - Space Station 13Space Station 13 - Modules - Types — Var Details
The GPS inside the spawner, lets security find them, especially if someone is space basing them.
Var Details
gps
The GPS inside the spawner, lets security find them, especially if someone is space basing them.
\ No newline at end of file
diff --git a/obj/structure/spider/terrorweb.html b/obj/structure/spider/terrorweb.html
new file mode 100644
index 00000000000..bd1b71d0230
--- /dev/null
+++ b/obj/structure/spider/terrorweb.html
@@ -0,0 +1,5 @@
+/obj/structure/spider/terrorweb - Space Station 13Space Station 13 - Modules - Types — Proc Details
Called some time after a carbon mob crossed the terror web.
Proc Details
after_carbon_crossed
Called some time after a carbon mob crossed the terror web.
+
Arguments:
+
+
C - The carbon mob.
+
\ No newline at end of file
diff --git a/obj/structure/swarmer.html b/obj/structure/swarmer.html
new file mode 100644
index 00000000000..033d9f7f373
--- /dev/null
+++ b/obj/structure/swarmer.html
@@ -0,0 +1 @@
+/obj/structure/swarmer - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/table.html b/obj/structure/table.html
new file mode 100644
index 00000000000..a594fb0202c
--- /dev/null
+++ b/obj/structure/table.html
@@ -0,0 +1,8 @@
+/obj/structure/table - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Determines whether a projectile crossing our turf should be stopped.
+Return FALSE to stop the projectile.
Var Details
can_be_flipped
Can this table be flipped?
minimum_env_smash
The minimum level of environment_smash required for simple animals to be able to one-shot this.
slippery
If this is true, the table will have items slide off it when placed.
Proc Details
check_cover
Determines whether a projectile crossing our turf should be stopped.
+Return FALSE to stop the projectile.
+
Arguments:
+
+
P - The projectile trying to cross.
+
proj_dir - The incoming direction of the projectile.
+
\ No newline at end of file
diff --git a/obj/structure/table_frame.html b/obj/structure/table_frame.html
new file mode 100644
index 00000000000..8c75808e628
--- /dev/null
+++ b/obj/structure/table_frame.html
@@ -0,0 +1 @@
+/obj/structure/table_frame - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Try to make a table with the item used to attack. FALSE if you can't make a table and should attack. TRUE does not necessarily mean a table was made.
Var Details
construction_time
How long the table takes to make
framestack
The resource dropped when the table frame is destroyed or deconstructed
framestackamount
How many of framestack resource are dropped
restrict_table_types
What stacks can be used to make the table, and if it will result in a unique table
Proc Details
try_make_table
Try to make a table with the item used to attack. FALSE if you can't make a table and should attack. TRUE does not necessarily mean a table was made.
\ No newline at end of file
diff --git a/obj/structure/telecomms_doomsday_device.html b/obj/structure/telecomms_doomsday_device.html
new file mode 100644
index 00000000000..78f2a618440
--- /dev/null
+++ b/obj/structure/telecomms_doomsday_device.html
@@ -0,0 +1 @@
+/obj/structure/telecomms_doomsday_device - Space Station 13Space Station 13 - Modules - Types — Var Details
Has someone stolen loot from the ruins core room? If they try to leave without killing dvorak, they are punished.
Var Details
thief
Has someone stolen loot from the ruins core room? If they try to leave without killing dvorak, they are punished.
\ No newline at end of file
diff --git a/obj/structure/telecomms_shield_cover.html b/obj/structure/telecomms_shield_cover.html
new file mode 100644
index 00000000000..6dd69c430eb
--- /dev/null
+++ b/obj/structure/telecomms_shield_cover.html
@@ -0,0 +1 @@
+/obj/structure/telecomms_shield_cover - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/transit_tube/station.html b/obj/structure/transit_tube/station.html
new file mode 100644
index 00000000000..d6867091645
--- /dev/null
+++ b/obj/structure/transit_tube/station.html
@@ -0,0 +1 @@
+/obj/structure/transit_tube/station - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/transit_tube_pod.html b/obj/structure/transit_tube_pod.html
new file mode 100644
index 00000000000..87cbf6730f2
--- /dev/null
+++ b/obj/structure/transit_tube_pod.html
@@ -0,0 +1 @@
+/obj/structure/transit_tube_pod - Space Station 13Space Station 13 - Modules - Types — Var Details
The move animation mode for the next processing tick
current_tube
The tube we're currently traveling through
enter_delay
How long to wait when entering a new tube
exit_delay
How long to wait when exiting a new tube
move_cooldown
The next time we'll be moving
next_dir
The direction of our next transit from pipe to pipe. Stored between process calls here.
next_loc
The location of our next target tube. Stored same as above
occupied_icon_state
Icon state in use while we're occupied
\ No newline at end of file
diff --git a/obj/structure/trap/eldritch.html b/obj/structure/trap/eldritch.html
new file mode 100644
index 00000000000..0626e05a7f6
--- /dev/null
+++ b/obj/structure/trap/eldritch.html
@@ -0,0 +1 @@
+/obj/structure/trap/eldritch - Space Station 13Space Station 13 - Modules - Types — Var Details
A tip displayed to heretics who examine the rune carver. Explains what the rune does.
owner
UID of trap owner mob
\ No newline at end of file
diff --git a/obj/structure/unsealed_art.html b/obj/structure/unsealed_art.html
new file mode 100644
index 00000000000..431a23ff51c
--- /dev/null
+++ b/obj/structure/unsealed_art.html
@@ -0,0 +1 @@
+/obj/structure/unsealed_art - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
This proc triggers when the art has been uncovered by sheets, becomming active again
Var Details
covered
is the painting curredly draped over
Proc Details
on_cover
This proc triggers when the art has been covered by sheets, going inert
on_uncover
This proc triggers when the art has been uncovered by sheets, becomming active again
\ No newline at end of file
diff --git a/obj/structure/unsealed_art/beauty.html b/obj/structure/unsealed_art/beauty.html
new file mode 100644
index 00000000000..e013f7d8735
--- /dev/null
+++ b/obj/structure/unsealed_art/beauty.html
@@ -0,0 +1 @@
+/obj/structure/unsealed_art/beauty - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/structure/unsealed_art/vines.html b/obj/structure/unsealed_art/vines.html
new file mode 100644
index 00000000000..a60928b0f29
--- /dev/null
+++ b/obj/structure/unsealed_art/vines.html
@@ -0,0 +1 @@
+/obj/structure/unsealed_art/vines - Space Station 13Space Station 13 - Modules - Types — Var Details
the delay between terf conversions and mob creation
Var Details
creature_list
What kinds of creatures can we spawn?
creatures_owned
how many creatures do we own
delay
the delay between terf conversions and mob creation
\ No newline at end of file
diff --git a/obj/structure/uplifted_primitive/nest.html b/obj/structure/uplifted_primitive/nest.html
new file mode 100644
index 00000000000..45265261e2d
--- /dev/null
+++ b/obj/structure/uplifted_primitive/nest.html
@@ -0,0 +1,5 @@
+/obj/structure/uplifted_primitive/nest - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Returns the number of mobs currently contributing to the spawn limit.
+Currently, any NPC human with the same species as the nest and a monkey ai controller within range is counted.
Returns TRUE if a new player mob was successfully spawned, otherwise FALSE.
Var Details
available_food
The amount of food currently stored in the nest.
available_scrap
The amount of scrap (recycled materials) currently stored in the nest.
crafting_items
The mapping between the path of a crafting output and a list containing
+its scrap and food costs, and an optional argument to be passed to new().
nest_species
The species of lesser human to spawn.
on_demand_spawner
The spawner used to let ghosts spawn without a roll. If null, the nest is not in on demand mode.
sentient_probability
The probability that the next spawned mob will be sentient.
spawn_cooldown
The cooldown between successfully spawning new mobs.
Proc Details
count_spawn_limit
Returns the number of mobs currently contributing to the spawn limit.
+Currently, any NPC human with the same species as the nest and a monkey ai controller within range is counted.
try_spawn_uplifted
Returns TRUE if a new player mob was successfully spawned, otherwise FALSE.
\ No newline at end of file
diff --git a/obj/structure/void_conduit.html b/obj/structure/void_conduit.html
new file mode 100644
index 00000000000..16374b83a2e
--- /dev/null
+++ b/obj/structure/void_conduit.html
@@ -0,0 +1,3 @@
+/obj/structure/void_conduit - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Applies the effects of the pulse "hitting" something. Freezes non-heretic, destroys airlocks/windows
Var Details
effect_range
How many tiles far our effect is
overlay_list
Overlay to apply to the tiles in range of the conduit
+List of possible overlays to apply to the tiles in range of the conduit
overlayed_turfs
List of tiles that we added an overlay to, so we can clear them when the conduit is deleted
soundloop
Audio loop for the rift being alive
timerid
id of the deletion timer
Proc Details
do_conduit_pulse
Sends out a pulse
handle_effects
Applies the effects of the pulse "hitting" something. Freezes non-heretic, destroys airlocks/windows
\ No newline at end of file
diff --git a/obj/structure/window.html b/obj/structure/window.html
new file mode 100644
index 00000000000..8fb1ae72409
--- /dev/null
+++ b/obj/structure/window.html
@@ -0,0 +1 @@
+/obj/structure/window - Space Station 13Space Station 13 - Modules - Types — Var Details
Used to define what file the edging sprite is contained within
env_smash_level
Minimum environment smash level (found on simple animals) to break through this instantly
old_color
Used to restore colours from polarised glass
rad_conversion_amount
How much we get activated by gamma radiation
superconductivity
How well this window resists superconductivity.
\ No newline at end of file
diff --git a/obj/tgvehicle.html b/obj/tgvehicle.html
new file mode 100644
index 00000000000..0ac284638b5
--- /dev/null
+++ b/obj/tgvehicle.html
@@ -0,0 +1,64 @@
+/obj/tgvehicle - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
If the driver needs a certain item in hand (or inserted, for vehicles) to drive this. For vehicles, this must be duplicated on their riding component subtype
+/datum/component/riding/var/keytype variable because only a few specific checks are handled here with this var, and the majority of it is on the riding component
+Eventually the remaining checks should be moved to the component and this var removed.
To remove a trailer from the vehicle in a manner that allows safe qdels
Var Details
canmove
Whether the vehicle is currently able to move
enter_sound
Sound played when entering a vehicle
exit_sound
Sound played when exiting a vehicle
inserted_key
The inserted key, needed on some vehicles to start the engine
key_type
If the driver needs a certain item in hand (or inserted, for vehicles) to drive this. For vehicles, this must be duplicated on their riding component subtype
+/datum/component/riding/var/keytype variable because only a few specific checks are handled here with this var, and the majority of it is on the riding component
+Eventually the remaining checks should be moved to the component and this var removed.
max_drivers
Maximum amount of drivers
max_occupants
Maximum amount of passengers plus drivers
trailer
This vehicle will follow us when we move (like atrailer duh)
Proc Details
add_trailer
To add a trailer to the vehicle in a manner that allows safe qdels
destroy_controller_action_type
destroy_controller_action_type
+
As the name implies, removes the actiontype from autogrant and removes it from all occupants
+args:
+
+
actiontype: typepath of the action you want to remove from occupants and autogrant.
+
destroy_passenger_action_type
destroy_passenger_action_type
+
Removes this action type from all occupants and stops autogranting it
+args:
+
+
actiontype: typepath of the action you want to remove from occupants and the autogrant list.
+
generate_action_type
generate_action_type
+
A small proc to properly set up each action path.
+args:
+
+
actiontype: typepath of the action the proc sets up.
+returns created and set up action instance
+
generate_actions
generate_actions
+
You override this with initialize_passenger_action_type and initialize_controller_action_type calls
+To give passengers actions when they enter the vehicle.
+Read the documentation on the aforementioned procs to learn the difference
generate_integrity_message
Returns a readable string of the vehicle's health for examining. Overridden by subtypes who want to be more verbose with their health messages.
grant_action_type_to_mob
grant_action_type_to_mob
+
As on the tin, it does all the annoying small stuff and sanity needed
+to GRANT an action to a mob.
+args:
+
+
actiontype: typepath of the action you want to give to grant_to.
+
grant_to: the mob we're giving actiontype to
+returns TRUE if successfully granted
+
grant_passenger_actions
grant_passenger_actions
+
Called on every passenger that enters the vehicle, goes through the list of actions it needs to give...
+and does that.
+args:
+
+
grant_to: mob that needs to get every action the vehicle grants
+
initialize_controller_action_type
initialize_controller_action_type
+
Gives any passenger that enters the vehicle this action... IF they have the correct vehicle control flag.
+This is used so passengers cannot press buttons only drivers should have, for example.
+args:
+
+
actiontype: typepath of the action you want to give occupants.
+
initialize_passenger_action_type
initialize_passenger_action_type
+
Gives any passenger that enters the mech this action.
+They will lose it when they disembark.
+args:
+
+
actiontype: typepath of the action you want to give occupants.
+
remove_action_type_from_mob
remove_action_type_from_mob
+
As on the tin, it does all the annoying small stuff and sanity needed
+to REMOVE an action to a mob.
+args:
+
+
actiontype: typepath of the action you want to give to grant_to.
+
take_from: the mob we're taking actiontype to
+returns TRUE if successfully removed
+
remove_passenger_actions
remove_passenger_actions
+
Called on every passenger that exits the vehicle, goes through the list of actions it needs to remove...
+and does that.
+args:
+
+
take_from: mob that needs to get every action the vehicle grants
+
remove_trailer
To remove a trailer from the vehicle in a manner that allows safe qdels
\ No newline at end of file
diff --git a/obj/tgvehicle/moon_ascension.html b/obj/tgvehicle/moon_ascension.html
new file mode 100644
index 00000000000..4a6561bbc30
--- /dev/null
+++ b/obj/tgvehicle/moon_ascension.html
@@ -0,0 +1 @@
+/obj/tgvehicle/moon_ascension - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Holds our armor to apply onto our rider. We want to kill the moon not the rider, with exception (like bombs).
moonray
Holds our moonrays effect
old_loc
Hold our old location to know when to stop spinning
owner
Who is the moon's owner?
rotation_dir
What direction do we wish to spin
Proc Details
squish_victim
Damage and flatten our poor victim
\ No newline at end of file
diff --git a/obj/tgvehicle/scooter/skateboard.html b/obj/tgvehicle/scooter/skateboard.html
new file mode 100644
index 00000000000..94ba05bc533
--- /dev/null
+++ b/obj/tgvehicle/scooter/skateboard.html
@@ -0,0 +1 @@
+/obj/tgvehicle/scooter/skateboard - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Moves the vehicle forward and if it lands on a table, repeats
Var Details
board_item_type
The handheld item counterpart for the board
can_slow_down
If true, riding the skateboard with walk intent on will prevent crashing.
cursed
Is this board cursed, preventing the cheeser from picking it up right away and using it again. Can not get on it while cursed either.
grinding
Whether the board is currently grinding
instability
Stamina drain multiplier
next_crash
Stores the time of the last crash plus a short cooldown, affects availability and outcome of certain actions
sparks
Sparks datum for when we grind on tables
Proc Details
grind
Moves the vehicle forward and if it lands on a table, repeats
\ No newline at end of file
diff --git a/obj/tgvehicle/sealed.html b/obj/tgvehicle/sealed.html
new file mode 100644
index 00000000000..d32b1aadc99
--- /dev/null
+++ b/obj/tgvehicle/sealed.html
@@ -0,0 +1 @@
+/obj/tgvehicle/sealed - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Sinced sealed vehicles (cars and mechs) don't have riding components, the actual movement is handled here from [/obj/tgvehicle/sealed/proc/relaymove]
Var Details
access_provider_flags
Determines which occupants provide access when bumping into doors
enter_delay
How long it takes to enter the vehice
headlight_power
How powerful are the headlights?
headlight_range
How far do the headlights reach?
headlights_toggle
Are the headlights on?
mouse_pointer
A special curser you may get while driving
Proc Details
enter_checks
Extra checks to perform during the do_after to enter the vehicle
get_enter_delay
returns enter do_after delay for the given mob in ticks
on_entered_supermatter
When we touch a crystal, kill everything inside us
vehicle_move
Sinced sealed vehicles (cars and mechs) don't have riding components, the actual movement is handled here from [/obj/tgvehicle/sealed/proc/relaymove]
\ No newline at end of file
diff --git a/obj/tgvehicle/sealed/car.html b/obj/tgvehicle/sealed/car.html
new file mode 100644
index 00000000000..b37d85e17e4
--- /dev/null
+++ b/obj/tgvehicle/sealed/car.html
@@ -0,0 +1 @@
+/obj/tgvehicle/sealed/car - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
How long it takes to move, cars don't use the riding component similar to mechs so we handle it ourselves
Proc Details
is_car_stationary
Callback proc to check for
mob_forced_enter
Proc called when someone is forcefully stuffedd into a car
mob_try_forced_enter
Attempts to force a mob into the car
\ No newline at end of file
diff --git a/obj/tgvehicle/sealed/car/clowncar.html b/obj/tgvehicle/sealed/car/clowncar.html
new file mode 100644
index 00000000000..2840846c432
--- /dev/null
+++ b/obj/tgvehicle/sealed/car/clowncar.html
@@ -0,0 +1,13 @@
+/obj/tgvehicle/sealed/car/clowncar - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Toggles the on and off state of the clown cannon that shoots random kidnapped people
Var Details
cannon_fire_delay
How fast can you fire the cannon
cannonmode
Current status of the cannon, alternates between CLOWN_CANNON_INACTIVE, CLOWN_CANNON_BUSY and CLOWN_CANNON_READY
dice_cooldown_time
Cooldown time inbetween [/obj/tgvehicle/sealed/car/clowncar/proc/roll_the_dice()] usages
enforce_clown_role
Does the driver require the clown role to drive it
headlight_colors
list of headlight colors we use to pick through when we have party mode due to emag
last_emag_button_use
Emag Button Cooldown
singulomode
Are we disguised as a singularity?
Proc Details
activate_cannon
Finalizes cannon activation
cover_in_oil
Deploys oil when the clowncar moves in oil deploy mode
deactivate_cannon
Finalizes cannon deactivation
fire_cannon_at
Fires the cannon where the user clicks
reset_icon
resets the icon and iconstate of the clowncar after it was set to singulo states
roll_the_dice
Plays a random funky effect
+Only available while car is emagged
+Possible effects:
+
+
Spawn bananapeel
+
Spawn random reagent foam
+
Make the clown car look like a singulo temporarily
+
Spawn Laughing chem gas
+
Drop oil
+
Fart and make everyone nearby laugh
+
stop_dropping_oil
Stops dropping oil after the time has run up
toggle_cannon
Toggles the on and off state of the clown cannon that shoots random kidnapped people
\ No newline at end of file
diff --git a/obj/vehicle.html b/obj/vehicle.html
new file mode 100644
index 00000000000..742d0abd664
--- /dev/null
+++ b/obj/vehicle.html
@@ -0,0 +1 @@
+/obj/vehicle - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/obj/vehicle/janicart.html b/obj/vehicle/janicart.html
new file mode 100644
index 00000000000..6b0751f622f
--- /dev/null
+++ b/obj/vehicle/janicart.html
@@ -0,0 +1 @@
+/obj/vehicle/janicart - Space Station 13Space Station 13 - Modules - Types — Var Details
How much speed the janicart loses while the buffer is active
floorbuffer
Does it clean the tile under it?
\ No newline at end of file
diff --git a/obj/vehicle/lavaboat.html b/obj/vehicle/lavaboat.html
new file mode 100644
index 00000000000..1184334930e
--- /dev/null
+++ b/obj/vehicle/lavaboat.html
@@ -0,0 +1 @@
+/obj/vehicle/lavaboat - Space Station 13Space Station 13 - Modules - Types — Var Details
The last time we told the user that they can't drive on land, so we don't spam them
Var Details
last_message_time
The last time we told the user that they can't drive on land, so we don't spam them
\ No newline at end of file
diff --git a/procpath.html b/procpath.html
new file mode 100644
index 00000000000..e13d2efe5cb
--- /dev/null
+++ b/procpath.html
@@ -0,0 +1,10 @@
+/procpath - Space Station 13Space Station 13 - 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.
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.
\ No newline at end of file
diff --git a/turf.html b/turf.html
new file mode 100644
index 00000000000..6232c6b8024
--- /dev/null
+++ b/turf.html
@@ -0,0 +1,32 @@
+/turf - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
what /mob/oranges_ear instance is already assigned to us as there should only ever be one.
+used for guaranteeing there is only one oranges_ear per turf when assigned, speeds up view() iteration
Properties for open tiles (/floor)
+All the gas vars, on the turf, are meant to be utilized for initializing a gas datum and setting its first gas values; the turf vars are never further modified at runtime; it is never directly used for calculations by the atmospherics system.
How pathing algorithm will check if this turf is passable by itself (not including content checks). By default it's just density check.
+WARNING: Currently to use a density shortcircuiting this does not support dense turfs with special allow through function
Returns the adjacent turfs. Can check for density or cardinal directions only instead of all 8, or just dense turfs entirely. dense_only takes precedence over open_only.
Returns whether it is safe for an atom to move across this turf
+TODO: Things like lava will need to have more specialized code
+but that can wait for when we port basic mobs that may actually
+encounter lava
This method is unsafe to use because it only updates milla_* properties, but does not write them to MILLA. Use recalculate_atmos_connectivity() instead.
Check if the heretic is strong enough to rust this turf, and if so, rusts the turf with an added visual effect.
Var Details
assigned_oranges_ear
what /mob/oranges_ear instance is already assigned to us as there should only ever be one.
+used for guaranteeing there is only one oranges_ear per turf when assigned, speeds up view() iteration
atmos_environment
The external environment that this tile is exposed to for ATMOS_MODE_EXPOSED_TO_ENVIRONMENT
atmos_mode
The general behavior of atmos on this tile.
atmos_superconductivity
makes turfs less picky about where they transfer gas. Largely just used in the SM
destination_x
The destination x-coordinate that atoms entering this turf will be automatically moved to.
destination_y
The destination y-coordinate that atoms entering this turf will be automatically moved to.
destination_z
The destination z-level that atoms entering this turf will be automatically moved to.
directional_opacity
Which directions does this turf block the vision of, taking into account both the turf's opacity and the movable opacity_sources.
dynamic_lighting
Handles if the lighting should be dynamic. Generally lighting is dynamic if it's not in space
fixed_underlay
Icon-smoothing variable to map a diagonal wall corner with a fixed underlay.
lighting_corner_NE
Lighting Corner datums.
lighting_corners_initialised
If you're curious why these are TMP vars, I don't know! TMP only affects savefiles so this does nothing :) - GDN
+Is the lighting on this turf inited
lighting_object
The lighting Object affecting us
opacity_sources
Lazylist of movable atoms providing opacity sources.
oxygen
Properties for open tiles (/floor)
+All the gas vars, on the turf, are meant to be utilized for initializing a gas datum and setting its first gas values; the turf vars are never further modified at runtime; it is never directly used for calculations by the atmospherics system.
pathing_pass_method
How pathing algorithm will check if this turf is passable by itself (not including content checks). By default it's just density check.
+WARNING: Currently to use a density shortcircuiting this does not support dense turfs with special allow through function
pressure_difference
The pressure difference between the turf and it's neighbors. Affects movables by pulling them in the path of least resistance
pressure_direction
The direction movables should travel when affected by pressure. Set to the biggest difference in atmos by turf neighbors
pressure_overlay
The effect used to render a pressure overlay from this tile.
real_layer
Set if the turf should appear on a different layer while in-game and map editing, otherwise use normal layer.
rust_resistance
This turf's resistance to getting rusted
transparent_floor
used to check if pipes should be visible under the turf or not
Proc Details
AdjacentTurfs
Returns the adjacent turfs. Can check for density or cardinal directions only instead of all 8, or just dense turfs entirely. dense_only takes precedence over open_only.
LinkBlockedWithAccess
For seeing if we can actually move between 2 given turfs while accounting for our access and the path_caller's pass_flags
+
Assumes destinantion turf is non-dense - check and shortcircuit in code invoking this proc to avoid overhead.
+Makes some other assumptions, such as assuming that unless declared, non dense objects will not block movement.
+It's fragile, but this is VERY much the most expensive part of pathing, so it'd better be fast
+
Arguments:
+
+
destination_turf - Where are we going from where we are?
+
pass_info - Holds all the info about what this path attempt can go through
+
add_opacity_source
Proc to add movable sources of opacity on the turf and let it handle lighting code.
blind_release_air
Blindly releases air to this tile. Do not use if you care what the tile previously held, implement /datum/milla_safe instead.
can_cross_safely
Returns whether it is safe for an atom to move across this turf
+TODO: Things like lava will need to have more specialized code
+but that can wait for when we port basic mobs that may actually
+encounter lava
get_decals
Returns a list of all attached /datum/element/decal/ for this turf
get_readonly_air
Gets a read-only version of this tile's air. Do not use if you intend to modify the air later, implement /datum/milla_safe instead.
is_blocked_turf
Check whether we are blocked by something dense in our contents with respect to a specific atom.
+
Arguments:
+
+
exclude_mobs - If TRUE, ignores dense mobs on the turf.
+
source_atom - If this is not null, will check whether any contents on the
+turf can block this atom specifically. Also ignores itself on the turf.
+
ignore_atoms - Check will ignore any atoms in this list. Useful to prevent
+an atom from blocking itself on the turf.
+
type_list - are we checking for types of atoms to ignore and not physical atoms
+
private_unsafe_get_air
Do not call this directly. Use get_readonly_air or implement /datum/milla_safe.
private_unsafe_recalculate_atmos_connectivity
This method is unsafe to use because it only updates milla_* properties, but does not write them to MILLA. Use recalculate_atmos_connectivity() instead.
recalculate_directional_opacity
Calculate on which directions this turfs block view.
remove_opacity_source
Proc to remove movable sources of opacity on the turf and let it handle lighting code.
rust_heretic_act
Check if the heretic is strong enough to rust this turf, and if so, rusts the turf with an added visual effect.
\ No newline at end of file
diff --git a/turf/simulated.html b/turf/simulated.html
new file mode 100644
index 00000000000..41c04e6874e
--- /dev/null
+++ b/turf/simulated.html
@@ -0,0 +1,3 @@
+/turf/simulated - Space Station 13Space Station 13 - Modules - Types — Var Details - Proc Details
Quenches any fire on the turf, and if it does, cools down the turf's air by the given parameters.
Var Details
active_hotspot
The active hotspot on this turf. The fact this is done through a literal object is painful
atmos_overlay_type
Current gas overlay. Can be set to plasma or sleeping_gas
excited
Is this turf active?
excited_group
The excited group we're linked to. Used for zone atmos calculations
fuel_burnt
If a fire is ongoing, how much fuel did we burn last tick?
+Value is not updated while below PLASMA_MINIMUM_BURN_TEMPERATURE.
recently_active
Was this turf recently activated? Probably not needed anymore
temperature_archived
The temp we were when we got archived
wet
Used to check if the turf is wet. Really should just be an object on the turf
wet_overlay
Used to store the wet turf overlay. Really should just be an object on the turf
wind_effect
Wind effect
wind_tick
When do we last remember having wind?
wind_x
Wind's X component
wind_y
Wind's Y component
Proc Details
quench
Quenches any fire on the turf, and if it does, cools down the turf's air by the given parameters.
\ No newline at end of file
diff --git a/turf/simulated/floor.html b/turf/simulated/floor.html
new file mode 100644
index 00000000000..80d7370400b
--- /dev/null
+++ b/turf/simulated/floor.html
@@ -0,0 +1,3 @@
+/turf/simulated/floor - Space Station 13Space Station 13 - Modules - Types — Proc Details
Bespoke proc that happens when a proteon orb is activated, creating a gateway.
+If activated by a non-cultist, they get an unusual game over.
Proc Details
quake_gateway
Bespoke proc that happens when a proteon orb is activated, creating a gateway.
+If activated by a non-cultist, they get an unusual game over.
\ No newline at end of file
diff --git a/turf/simulated/floor/chasm/space_ruin.html b/turf/simulated/floor/chasm/space_ruin.html
new file mode 100644
index 00000000000..d122ce30ee0
--- /dev/null
+++ b/turf/simulated/floor/chasm/space_ruin.html
@@ -0,0 +1 @@
+/turf/simulated/floor/chasm/space_ruin - Space Station 13Space Station 13 - Modules - Types — Var Details
Used to keep count of how many times we checked if our target turf was valid.
Var Details
T
Target turf that atoms will be teleported to.
target_z
List of all eligible Z levels.
times_turfs_checked
Used to keep count of how many times we checked if our target turf was valid.
\ No newline at end of file
diff --git a/turf/simulated/floor/lava.html b/turf/simulated/floor/lava.html
new file mode 100644
index 00000000000..f07eef98ce5
--- /dev/null
+++ b/turf/simulated/floor/lava.html
@@ -0,0 +1,3 @@
+/turf/simulated/floor/lava - Space Station 13Space Station 13 - Modules - Types — Proc Details
lava
Lava turf, burns things that are on it.
+Currently a subtype of floor so that footsteps work on it.
+Perhaps we could move it down to /turf/simulated/lava someday, as I dont think footsteps over lava are very important.
\ No newline at end of file
diff --git a/turf/simulated/floor/light.html b/turf/simulated/floor/light.html
new file mode 100644
index 00000000000..cb59f6ce917
--- /dev/null
+++ b/turf/simulated/floor/light.html
@@ -0,0 +1 @@
+/turf/simulated/floor/light - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/turf/simulated/floor/light/disco.html b/turf/simulated/floor/light/disco.html
new file mode 100644
index 00000000000..9dfcb2951e0
--- /dev/null
+++ b/turf/simulated/floor/light/disco.html
@@ -0,0 +1 @@
+/turf/simulated/floor/light/disco - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/turf/simulated/floor/plasteel/reactor_pool.html b/turf/simulated/floor/plasteel/reactor_pool.html
new file mode 100644
index 00000000000..a0f33576775
--- /dev/null
+++ b/turf/simulated/floor/plasteel/reactor_pool.html
@@ -0,0 +1 @@
+/turf/simulated/floor/plasteel/reactor_pool - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/turf/simulated/floor/plating/metalfoam.html b/turf/simulated/floor/plating/metalfoam.html
new file mode 100644
index 00000000000..415734b3524
--- /dev/null
+++ b/turf/simulated/floor/plating/metalfoam.html
@@ -0,0 +1 @@
+/turf/simulated/floor/plating/metalfoam - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/turf/simulated/floor/transparent/glass.html b/turf/simulated/floor/transparent/glass.html
new file mode 100644
index 00000000000..b209955bf3f
--- /dev/null
+++ b/turf/simulated/floor/transparent/glass.html
@@ -0,0 +1 @@
+/turf/simulated/floor/transparent/glass - Space Station 13Space Station 13 - Modules - Types — Var Details
Amount of SSobj ticks (Roughly 2 seconds) that a extinguished glass floor tile has been lit up
Var Details
light_process
Amount of SSobj ticks (Roughly 2 seconds) that a extinguished glass floor tile has been lit up
\ No newline at end of file
diff --git a/turf/simulated/mineral.html b/turf/simulated/mineral.html
new file mode 100644
index 00000000000..37dd2f09e75
--- /dev/null
+++ b/turf/simulated/mineral.html
@@ -0,0 +1,4 @@
+/turf/simulated/mineral - Space Station 13Space Station 13 - Modules - Types — Var Details
Should this be set to the normal rock colour on init?
Var Details
ore
The representation of the unmined ore in the wall, if any.
preset_ore_type
The ore type, if any, that should spawn in the wall on Initialize.
+Expected to be a subtype of /datum/ore.
should_reset_color
Should this be set to the normal rock colour on init?
\ No newline at end of file
diff --git a/turf/simulated/wall.html b/turf/simulated/wall.html
new file mode 100644
index 00000000000..cb0a562e162
--- /dev/null
+++ b/turf/simulated/wall.html
@@ -0,0 +1 @@
+/turf/simulated/wall - Space Station 13Space Station 13 - Modules - Types — Var Details
\ No newline at end of file
diff --git a/turf/simulated/wall/indestructible/fakeglass.html b/turf/simulated/wall/indestructible/fakeglass.html
new file mode 100644
index 00000000000..dec346a0978
--- /dev/null
+++ b/turf/simulated/wall/indestructible/fakeglass.html
@@ -0,0 +1 @@
+/turf/simulated/wall/indestructible/fakeglass - Space Station 13Space Station 13 - Modules - Types — Var Details
Used to define what file the edging sprite is contained within
Var Details
edge_overlay
Tracks the edging appearence sprite
edge_overlay_file
Used to define what file the edging sprite is contained within
\ No newline at end of file
diff --git a/world.html b/world.html
new file mode 100644
index 00000000000..157777a869a
--- /dev/null
+++ b/world.html
@@ -0,0 +1 @@
+/world - Space Station 13Space Station 13 - Modules - Types — Proc Details