diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/CNAME b/CNAME new file mode 100644 index 0000000000000..d72cba32e2867 --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +codedocs.paradisestation.org \ No newline at end of file diff --git a/_maps/__MAP_DEFINES.html b/_maps/__MAP_DEFINES.html new file mode 100644 index 0000000000000..6dc7793989dca --- /dev/null +++ b/_maps/__MAP_DEFINES.html @@ -0,0 +1,37 @@ + + + + + + + _maps/__MAP_DEFINES.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

_maps/__MAP_DEFINES.dm + +

+ + + +
SPAWN_RUINSRuins will spawn on this z-level
REACHABLE_SPACE_ONLYA level that can be navigated to through space, but for real this time.

Define Details

+

REACHABLE_SPACE_ONLY + + +

+

A level that can be navigated to through space, but for real this time.

SPAWN_RUINS + + +

+

Ruins will spawn on this z-level

+ + + diff --git a/area.html b/area.html new file mode 100644 index 0000000000000..786543db1ff47 --- /dev/null +++ b/area.html @@ -0,0 +1,271 @@ + + + + + + + /area - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

area + + + +

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

Vars

always_unpoweredIf TRUE, machines that require power in this area will never be powered
apcAll APCs currently constructed in this area
apc_starts_offIf TRUE, the local powernet in this area will have all its power channels switched off
can_get_auto_cryodDo we despawn the person in this area? Pretty much just used in security areas that aren't permabrig
fast_despawnDo we quickly despawn the person in this area? Pretty much just used in permabrig
global_uidStatic var that is incremented when the UID of a area is being assigned.
hide_attacklogsFor areas such as thunderdome which generate a lot of spammy attacklogs. Reduces log priority.
is_haunted"Haunted" areas such as the morgue and chapel are easier to boo. Because flavor.
lightswitchIs the lightswitch in this area on? Controls whether or not lights are on and off
map_nameSet in New(); preserves the name set by the map maker, even if renamed by the Blueprints.
master_air_alarmThe air alarm to use for atmos_alert consoles
max_ambience_cooldownUsed to decide what the maximum time between ambience is
min_ambience_cooldownUsed to decide what the minimum time between ambience is
movingIs a shuttle moving to our area?
parallax_move_directionHandles the direction parallax will be moved in. References
powernetThe local powernet of this area, this is where all machine/apc/object power related operations are handled
requires_powerIf TRUE, this area's local powernet will require power to properly operate machines
scrubbersThe list of scrubbers in our area.
sound_environmentUsed to decide what kind of reverb the area makes sound have
turret_controlsTurrets use this list to see if individual power/lethal settings are allowed. Contains the /obj/machinery/turretid for this area
valid_territoryused for cult summoning areas on station zlevel
ventsThe list of vents in our area.
window_tintIs the window tint control in this area on? Controls whether electrochromic windows and doors are tinted or not

Procs

ModifyFiredoorsTry to close all the firedoors in the area
atmosalertGenerate an atmospheric alert for this area
burglaralertRaise a burglar alert for this area
close_and_lock_doorClose and lock a door passed into this proc
firealertGenerate a firealarm alert for this area
fireresetReset the firealarm alert for this area
poweralertGenerate a power alert for this area
processIf 100 ticks has elapsed, toggle all the firedoors closed again
set_fire_alarm_effectTrigger the fire alarm visual affects in an area
unset_fire_alarm_effectsunset the fire alarm visual affects in an area
+

Var Details

always_unpowered + + + + +

+

If TRUE, machines that require power in this area will never be powered

apc + + + + +

+

All APCs currently constructed in this area

apc_starts_off + + + + +

+

If TRUE, the local powernet in this area will have all its power channels switched off

can_get_auto_cryod + + + + +

+

Do we despawn the person in this area? Pretty much just used in security areas that aren't permabrig

fast_despawn + + + + +

+

Do we quickly despawn the person in this area? Pretty much just used in permabrig

global_uid + + + + +

+

Static var that is incremented when the UID of a area is being assigned.

hide_attacklogs + + + + +

+

For areas such as thunderdome which generate a lot of spammy attacklogs. Reduces log priority.

is_haunted + + + + +

+

"Haunted" areas such as the morgue and chapel are easier to boo. Because flavor.

lightswitch + + + + +

+

Is the lightswitch in this area on? Controls whether or not lights are on and off

map_name + + + + +

+

Set in New(); preserves the name set by the map maker, even if renamed by the Blueprints.

master_air_alarm + + + + +

+

The air alarm to use for atmos_alert consoles

max_ambience_cooldown + + + + +

+

Used to decide what the maximum time between ambience is

min_ambience_cooldown + + + + +

+

Used to decide what the minimum time between ambience is

moving + + + + +

+

Is a shuttle moving to our area?

parallax_move_direction + + + + +

+

Handles the direction parallax will be moved in. References

powernet + + + + +

+

The local powernet of this area, this is where all machine/apc/object power related operations are handled

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

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

+ + + diff --git a/area/syndicate_depot/core.html b/area/syndicate_depot/core.html new file mode 100644 index 0000000000000..06f295d5578dd --- /dev/null +++ b/area/syndicate_depot/core.html @@ -0,0 +1,68 @@ + + + + + + + /area/syndicate_depot/core - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

core + + + +

+ + + + +

Procs

list_getmobsReturns a LIST of the MOBS in one of the depot area's lists.
list_showReturns a STRING, containing the NAMES of the mobs in the provided list, JOINED together with ", "
list_shownamesReturns 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_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_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:

+
+ + + diff --git a/atom.html b/atom.html new file mode 100644 index 0000000000000..cbd6f118a34b2 --- /dev/null +++ b/atom.html @@ -0,0 +1,617 @@ + + + + + + + /atom - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

atom + + + +

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

Vars

alternate_appearancesThe alternate appearances we own. Lazylist
base_icon_stateUsed for changing icon states for different base sprites.
bottom_left_cornerSmoothing variable
bottom_right_cornerSmoothing variable
bubble_iconWhat icon the mob uses for speechbubbles
canSmoothWithList of smoothing groups this atom can smooth with. If this is null and atom is smooth, it smooths only with itself.
chat_colorLast color calculated for the the chatmessage overlays. Used for caching.
chat_color_nameLast name used to calculate a color for the chatmessage overlays. Used for caching.
drag_startContains 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_blockValue used to increment ex_act() if reactionary_explosions is on
filter_dataFor handling persistent filters
flags_ricochethow the atom should handle ricochet behavior
germ_levelThe higher the germ level, the more germ on the atom.
hud_listThis atom's HUD (med/sec, etc) images. Associative list.
hud_possibleHUD images that this atom can provide.
light_powerIntensity of the light. Can be negative to remove light
managed_overlaysoverlays 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.
map_json_dataThis 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
pass_flags_selfpass_flags that we are. If any of this matches a pass_flag on a moving thing, by default, we let them through.
rad_insulationRadiation insulation types
receive_ricochet_chance_modWhen a projectile tries to ricochet off this atom, the projectile ricochet chance is multiplied by this
receive_ricochet_damage_coeffWhen a projectile ricochets off this atom, it deals the normal damage * this modifier to this atom
simulatedFilter for actions - used by lighting overlays
smoothing_flagsIcon-smoothing behavior.
smoothing_groupsWhat smoothing groups does this atom belongs to, to match canSmoothWith. If null, nobody can smooth with it.
smoothing_junctionWhat 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_fibersList of fibers that this atom has
top_left_cornerSmoothing variable
top_right_cornerSmoothing variable
viewing_alternate_appearancesThe alternate appearances we're viewing, stored here to reestablish them after Logout()s. Lazylist

Procs

AltClickNoInteractUse this instead of [/mob/proc/AltClickOn] where you only want turf content listing without additional atom alt-click interaction
CanPathfindPassThis proc is used for telling whether something can pass by this atom in a given direction, for use by the pathfinding system.
TopicPasses Stat Browser Panel clicks to the game and calls client click on an atom
acid_actRespond to acid being used on our atom
after_slipBase proc, intended to be overriden.
bitmask_smoothBasic smoothing proc. The atom checks for adjacent directions to smooth with and changes the icon_state based on that.
calculate_adjacenciesScans all adjacent turfs to find targets to smooth with.
clean_radiationRemoves some radiation from an atom
contents_ui_distancepublic
defileBegin defile and malfunction on-atom definitions
emag_actThis is when an atom is emagged. Should return false if it fails, or it has no emag_act defined.
emp_actProc which will make the atom act accordingly to an EMP. +This proc can sleep depending on the implementation. So assume it sleeps!
examine_moreExtended 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_type_in_directionScans direction to find targets to smooth with.
get_orbitersSimple helper proc to get a list of everything directly orbiting the current atom, without checking contents, or null if nothing is.
get_orbiters_recursiveRecursive 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).
get_orbiters_up_hierarchyCheck 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_runechat_colorProc to allow atoms to set their own runechat colour
hit_by_thrown_mobThis 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_drainableIs this atom drainable of reagents
is_drawableCan we draw from this atom with an injectable atom
is_injectableIs this atom injectable into other atoms
is_open_containerConvenience proc to see if a container is open for chemistry handling
is_refillableCan this atoms reagents be refilled
mech_melee_attackHandle melee attack by a mech
persistent_loadAtom Persistent Loader
persistent_saveAtom Persistent Saver
rad_actRespond to a radioactive wave hitting this atom
ray_filter_helperUsed to create rays on an item. Make sure to removefilter("rays") when done with it
remove_orbiterRemove an orbiter from the atom it's orbiting.
rename_interactive
return_analyzable_airReturn the air if we can analyze it
set_smoothed_icon_stateChanges the icon state based on the new junction bitmask. Returns the old junction value.
shuttleRotateBase proc
storage_depthReturns the storage depth of an atom up to the area level.
storage_depth_turfLike /atom/proc/storage_depth, but returns the depth to the nearest turf.
tool_actIf it returns TRUE, attack chain stops
update_appearanceUpdates the appearence of the icon
update_descUpdates the description of the atom
update_iconUpdates the icon of the atom
update_icon_stateUpdates the icon state of the atom
update_nameSignal sent should the appearance be updated. This is more broad if listening to a more specific signal doesn't cut it +Updates the name of the atom
update_overlaysUpdates the overlays of the atom. 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 states...
zap_actRespond to an electric bolt action on our item
+

Var Details

alternate_appearances + + + + +

+

The alternate appearances we own. Lazylist

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.

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.

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

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 + + + + +

+

Radiation insulation types

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

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:

+

Topic +

+

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

acid_act +

+

Respond to acid being used on our atom

+

Default behaviour is to send COMSIG_ATOM_ACID_ACT and return

after_slip +

+

Base proc, intended to be overriden.

+

This should only be called from one place: inside the slippery component. +Called after a human mob slips on this atom.

+

If you want the person who slipped to have something special done to them, put it here.

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:

+

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 or EMP_LIGHT

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_type_in_direction +

+

Scans direction to find targets to smooth with.

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_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

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

mech_melee_attack +

+

Handle melee attack by a mech

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

+

Default behaviour is to send COMSIG_ATOM_RAD_ACT and return

ray_filter_helper +

+

Used to create rays on an item. Make sure to removefilter("rays") when done with it

remove_orbiter +

+

Remove an orbiter from the atom it's orbiting.

rename_interactive +

+

return_analyzable_air +

+

Return the air if we can analyze it

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.

storage_depth_turf +

+

Like /atom/proc/storage_depth, but returns the depth to the nearest turf.

+

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 +

+

If it returns TRUE, attack chain stops

update_appearance +

+

Updates the appearence of the icon

+

Mostly delegates to update_name, update_desc, and update_icon

+

Arguments:

+

update_desc +

+

Updates the description of the atom

update_icon +

+

Updates the icon of the atom

update_icon_state +

+

Updates the icon state of the atom

update_name +

+

Signal sent should the appearance be updated. This is more broad if listening to a more specific signal doesn't cut it +Updates the name of the atom

update_overlays +

+

Updates the overlays of the atom. 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 states...

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

+ + + diff --git a/atom/movable.html b/atom/movable.html new file mode 100644 index 0000000000000..593d1b4c84f74 --- /dev/null +++ b/atom/movable.html @@ -0,0 +1,305 @@ + + + + + + + /atom/movable - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

movable + + + +

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

Vars

blocks_emissiveEither FALSE, [EMISSIVE_BLOCK_GENERIC], or EMISSIVE_BLOCK_UNIQUE
buckle_lyingBed-like behaviour, forces the mob to lie down if buckle_lying != -1
buckle_offsetThe Pixel_y to offset the buckled mob by
buckle_prevents_pullCan we pull the mob while they're buckled. Currently set to false on every movable
buckle_requires_restraintsRequire people to be handcuffed before being able to buckle. eg: pipes
buckled_mobsLazylist of the mobs buckled to this object.
can_be_unanchoredUsed for icon smoothing. Won't smooth if it ain't anchored and can be unanchored. Only set to true on windows
em_blockInternal holder for emissive blocker object, do not use directly use blocks_emissive
face_while_pullingFace towards the atom while pulling it
max_buckled_mobsThe max amount of mobs that can be buckled to this object. Currently set to 1 on every movable
orbiting_uidUID for the atom which the current atom is orbiting
thought_bubble_imageIcon state for thought bubbles. Normally set by mobs.

Procs

abstract_movemeant for movement with zero side effects. only use for objects that are supposed to move "invisibly" (like camera mobs or ghosts) +if you want something to move onto a tile with a beartrap or recycler or tripmine or mouse without that object knowing about it at all, use this +most of the time you want forceMove()
admin_FreezeCreated here as a base proc. Override as needed for any type of object or mob you want able to be frozen.
can_reachA backwards depth-limited breadth-first-search to see if the target is +logically "in" anything adjacent to us.
create_point_bubbleCreate a bubble pointing at a particular icon and icon state. +See args for create_point_bubble_from_atom.
create_point_bubble_from_atomCreate a point bubble towards a given item.
create_point_bubble_from_iconsCreate a point bubble towards a given item, from an icon/icon state.
create_point_bubble_from_pathSee above, this uses an uninstantiated path.
deadchat_playsAdds the deadchat_plays component to this atom with simple movement commands.
end_throwcalled after an items throw is ended.
fall_and_crushTip over this atom onto a turf, crushing things in its path.
key_loopKey loop to check for movement keys held and move in the desired direction.
on_crush_thinguseful callback for things that want special behavior on crush
orbitSet an atom to orbit around another one. This atom will follow the base atom's movement and rotate around it.
point_atPoint at an atom
shove_impactcalled 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_playsEasy way to remove the component when the fun has been played out
stop_orbitStop this atom from orbiting whatever it's orbiting.
tilt_overTip over an atom without too much fuss. This won't cause damage to anything, and just rotates the thing and (optionally) adds the component.
untiltUntilt a tilted object.
+

Var Details

blocks_emissive + + + + +

+

Either FALSE, [EMISSIVE_BLOCK_GENERIC], or EMISSIVE_BLOCK_UNIQUE

buckle_lying + + + + +

+

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

max_buckled_mobs + + + + +

+

The max amount of mobs that can be buckled to this object. Currently set to 1 on every movable

orbiting_uid + + + + +

+

UID for the atom which the current atom is orbiting

thought_bubble_image + + + + +

+

Icon state for thought bubbles. Normally set by mobs.

Proc Details

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.

can_reach +

+

A backwards depth-limited breadth-first-search to see if the target is +logically "in" anything adjacent to us.

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:

+

create_point_bubble_from_icons +

+

Create a point bubble towards a given item, from an icon/icon state.

+

Arguments:

+

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:

+

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:

+

key_loop +

+

Key loop to check for movement keys held and move in the desired direction.

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

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:

+

untilt +

+

Untilt a tilted object.

+ + + diff --git a/atom/movable/emissive_blocker.html b/atom/movable/emissive_blocker.html new file mode 100644 index 0000000000000..e38ceb5f4d951 --- /dev/null +++ b/atom/movable/emissive_blocker.html @@ -0,0 +1,31 @@ + + + + + + + /atom/movable/emissive_blocker - Space Station 13 + + +
+ Space 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.

+ + + diff --git a/atom/movable/plane_master_controller.html b/atom/movable/plane_master_controller.html new file mode 100644 index 0000000000000..876f0062b611e --- /dev/null +++ b/atom/movable/plane_master_controller.html @@ -0,0 +1,99 @@ + + + + + + + /atom/movable/plane_master_controller - Space Station 13 + + +
+ Space 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.

+ + + + + + + + + +

Vars

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

Procs

NewEnsures that all the planes are correctly in the controlled_planes list.
add_atom_colourFull override so we can just use filterrific
add_filterFull override so we can just use filterrific
get_filtersGets all filters for this controllers plane masters
remove_atom_colourRemoves an instance of colour_type from the atom's atom_colours list
remove_filterFull override so we can just use filterrific
transition_filterTransitions all filters owned by this plane master controller
update_atom_colourResets 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

+ + + diff --git a/atom/movable/screen.html b/atom/movable/screen.html new file mode 100644 index 0000000000000..f7f090b4d6bcc --- /dev/null +++ b/atom/movable/screen.html @@ -0,0 +1,67 @@ + + + + + + + /atom/movable/screen - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

screen + + + +

+ + + + + +

Vars

assigned_mapMap name assigned to this object. +Automatically set by /client/proc/add_obj_to_map.
del_on_map_removalMark this object as garbage-collectible after you clean the map +it was registered on.

Procs

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

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.

+ + + diff --git a/atom/movable/screen/action_landing.html b/atom/movable/screen/action_landing.html new file mode 100644 index 0000000000000..5dff2e6af2d6a --- /dev/null +++ b/atom/movable/screen/action_landing.html @@ -0,0 +1,35 @@ + + + + + + + /atom/movable/screen/action_landing - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

action_landing + + + +

+ +

Exists so you have a place to put your buttons when you move them around

+

Procs

hit_byReacts to having a button dropped on it

Proc Details

hit_by +

+

Reacts to having a button dropped on it

+ + + diff --git a/atom/movable/screen/alert.html b/atom/movable/screen/alert.html new file mode 100644 index 0000000000000..acd481a544569 --- /dev/null +++ b/atom/movable/screen/alert.html @@ -0,0 +1,64 @@ + + + + + + + /atom/movable/screen/alert - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

alert + + + +

+ + + + + + +

Vars

alerttooltipstyleTool-tip for the alert.
override_alertsIf true, this should override any other alerts of the same type thrown.
ownerThe mob that this alert was originally thrown to.
severitySome alerts may have different icon states based on severity, this adjusts that.
timeoutHow 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.

+ + + diff --git a/atom/movable/screen/alert/augury.html b/atom/movable/screen/alert/augury.html new file mode 100644 index 0000000000000..6ae6b40d8614b --- /dev/null +++ b/atom/movable/screen/alert/augury.html @@ -0,0 +1,105 @@ + + + + + + + /atom/movable/screen/alert/augury - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

augury + + + +

+ + + + + + + + + + +

Vars

follow_targetThe atom being followed
followersThe atoms following it
next_targetsQueue of next atoms to follow
thing_followedTitle for the thing that will be followed.
time_between_switchesAfter a followed item is qdeleted, wait this long before switching to the next target, allowing you to see aftermath.

Procs

InitializeCreate a new augury alert.
change_targetsChange the atom that everyone is currently following, moving everyone to the new object.
on_following_qdelExecuted 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_orbitCalled 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:

+

change_targets +

+

Change the atom that everyone is currently following, moving everyone to the new object.

+

Arguments:

+

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.

+ + + 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 0000000000000..d3810e409f024 --- /dev/null +++ b/atom/movable/screen/alert/status_effect/offering_item.html @@ -0,0 +1,43 @@ + + + + + + + /atom/movable/screen/alert/status_effect/offering_item - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

offering_item + + + +

+ + + +

Vars

item_UIDUID of the item being given.
receiver_UIDUID of the mob who's being offered the item.
+

Var Details

item_UID + + + + +

+

UID of the item being given.

receiver_UID + + + + +

+

UID of the mob who's being offered the item.

+ + + diff --git a/atom/movable/screen/alert/take_item.html b/atom/movable/screen/alert/take_item.html new file mode 100644 index 0000000000000..a67b2d65ca945 --- /dev/null +++ b/atom/movable/screen/alert/take_item.html @@ -0,0 +1,51 @@ + + + + + + + /atom/movable/screen/alert/take_item - Space Station 13 + + +
+ Space 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.

+ + +

Vars

giver_UIDUID of the mob offering the receiver an item.
item_UIDUID of the item being given.
receiver_UIDUID of the mob who has this alert.
+

Var Details

giver_UID + + + + +

+

UID of the mob offering the receiver an item.

item_UID + + + + +

+

UID of the item being given.

receiver_UID + + + + +

+

UID of the mob who has this alert.

+ + + diff --git a/atom/movable/screen/button_palette.html b/atom/movable/screen/button_palette.html new file mode 100644 index 0000000000000..40325411acfdd --- /dev/null +++ b/atom/movable/screen/button_palette.html @@ -0,0 +1,36 @@ + + + + + + + /atom/movable/screen/button_palette - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

button_palette + + + +

+ + +

Vars

color_timer_idId 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

+ + + 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 0000000000000..c1e0374b89e01 --- /dev/null +++ b/atom/movable/screen/fullscreen/stretch/cursor_catcher.html @@ -0,0 +1,85 @@ + + + + + + + /atom/movable/screen/fullscreen/stretch/cursor_catcher - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

cursor_catcher + + + +

+ +

An effect which tracks the cursor's location on the screen

+ + + + + + + +

Vars

given_turfThe turf we send to the scope component.
given_xPixel x we send to the scope component.
given_yPixel y we send to the scope component.
mouse_paramsMouse parameters, for calculation.
ownerThe mob whose cursor we are tracking.
view_listClient view size of the scoping mob.

Procs

assign_to_mobLinks this up with a mob
on_moveUpdate when the mob we're assigned to has moved
+

Var Details

given_turf + + + + +

+

The turf we send to the scope component.

given_x + + + + +

+

Pixel x we send to the scope component.

given_y + + + + +

+

Pixel y we send to the scope component.

mouse_params + + + + +

+

Mouse parameters, for calculation.

owner + + + + +

+

The mob whose cursor we are tracking.

view_list + + + + +

+

Client view size of the scoping mob.

Proc Details

assign_to_mob +

+

Links this up with a mob

on_move +

+

Update when the mob we're assigned to has moved

+ + + 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 0000000000000..f8de6302c7ad8 --- /dev/null +++ b/atom/movable/screen/fullscreen/stretch/cursor_catcher/scope.html @@ -0,0 +1,36 @@ + + + + + + + /atom/movable/screen/fullscreen/stretch/cursor_catcher/scope - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

scope + + + +

+ + +

Vars

range_modifierMultiplier for given_X an given_y.
+

Var Details

range_modifier + + + + +

+

Multiplier for given_X an given_y.

+ + + diff --git a/atom/movable/screen/movable.html b/atom/movable/screen/movable.html new file mode 100644 index 0000000000000..41c4d615e2007 --- /dev/null +++ b/atom/movable/screen/movable.html @@ -0,0 +1,35 @@ + + + + + + + /atom/movable/screen/movable - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

movable + + + +

+ + +

Procs

mouse_params_to_positionTakes 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

+ + + diff --git a/atom/movable/screen/movable/action_button.html b/atom/movable/screen/movable/action_button.html new file mode 100644 index 0000000000000..3b519c05e816c --- /dev/null +++ b/atom/movable/screen/movable/action_button.html @@ -0,0 +1,92 @@ + + + + + + + /atom/movable/screen/movable/action_button - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

action_button + + + +

+ + + + + + + + + + +

Vars

actiontooltipstyleThe style of tool-tip.
idA unique bitflag, combined with the name of our linked action this lets us persistently remember any user changes to our position
last_hovered_refUID of the last thing we hovered over. Used for managing action button dragging.
linked_actionThe action triggered by this button.
linked_keybindThe keybind that will trigger this action button.
locationWhere we are currently placed on the hud. SCRN_OBJ_DEFAULT asks the linked action what it thinks
lockedWhether or not this button is locked, preventing it from being dragged.
our_hudThe HUD this action button belongs to
shown_to_observersWhether or not this should be shown to observers
+

Var Details

actiontooltipstyle + + + + +

+

The style of tool-tip.

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

+ + + diff --git a/atom/movable/screen/palette_scroll.html b/atom/movable/screen/palette_scroll.html new file mode 100644 index 0000000000000..785cf11cd7a55 --- /dev/null +++ b/atom/movable/screen/palette_scroll.html @@ -0,0 +1,38 @@ + + + + + + + /atom/movable/screen/palette_scroll - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

palette_scroll + + + +

+ + +

Vars

scroll_directionHow 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

+ + + diff --git a/atom/movable/screen/plane_master/emissive.html b/atom/movable/screen/plane_master/emissive.html new file mode 100644 index 0000000000000..77563995722a7 --- /dev/null +++ b/atom/movable/screen/plane_master/emissive.html @@ -0,0 +1,30 @@ + + + + + + + /atom/movable/screen/plane_master/emissive - Space Station 13 + + +
+ Space 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.

+ + + diff --git a/atom/movable/screen/text/blurb.html b/atom/movable/screen/text/blurb.html new file mode 100644 index 0000000000000..42b24b7317796 --- /dev/null +++ b/atom/movable/screen/text/blurb.html @@ -0,0 +1,113 @@ + + + + + + + /atom/movable/screen/text/blurb - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

blurb + + + +

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

Vars

appear_animation_durationAmount of time the blurbs appering (alpha changing from 0 to 255). 0 means blurb is fully opaque from the start
blurb_textText that will be shown in blurb
chars_per_intervalNumber of chars from the text that will be displayed per interval. Defaults to 1
fade_animation_durationAmount 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_familyFont family
font_sizeFont size in pixels
hold_forAmount of time the blurb will be present on the screen. 0 means that blurb will dissappear immediately
intervalThe interval between chars rendering
text_alignmentWhere text is aligned
text_colorColor of text in RGB
text_outline_colorColor of text outline
text_outline_widthWidth of text outline in pixels
+

Var Details

appear_animation_duration + + + + +

+

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

+ + + diff --git a/client.html b/client.html new file mode 100644 index 0000000000000..5112dd5f4beec --- /dev/null +++ b/client.html @@ -0,0 +1,750 @@ + + + + + + + /client - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

client + + + +

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

Vars

ViewModsWas used to handle view modifications. Now only used for a mecha module. Please just edit the string in the future
ViewModsActiveStores the viewmod we set using this system. Only used for a mecha module
ViewPreferedIconSizeStores the icon size we use for skins. As the server has control freak enabled, this is always static
active_keybindingsThe client's active keybindings, depending on their active mob.
admin_music_volumeCopyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT +Admin music volume, from 0 to 1.
byondacc_ageDays since the client's BYOND account was created
byondacc_dateDate the client registered their BYOND account on
click_intercept_timeTime when the click was intercepted
completed_asset_jobsList of all completed blocking send jobs awaiting acknowledgement by send_asset
connection_timeworld.time they connected
cui_entriesList of the clients CUIs
description_holdersPersistent storage for the flavour text of examined atoms.
drag_detailsThe params we passed at the start of the drag, in list form
drag_startWhen we started the currently active drag
fullscreenThe current fullscreen state for /client/toggle_fullscreen()
input_dataInput datum, what the client is pressing.
jbhThe client's job ban holder
last_asset_jobThe ID of the last asset job
last_completed_asset_jobThe ID of the last asset job that was properly finished
last_discord_pm_timeLast world.time that a PM was send to discord by a player
last_parallax_shiftStored world.tim of the last parallax update. Used to make sure parallax isn't updated too often
macro_setsBasically a local variable on a client datum. Used when setting macros and nowhere else
mouseParamsUsed in MouseDrag to preserve the original mouse click parameters
mouse_down_iconUsed to make a special mouse cursor, this one for mouse up icon
mouse_location_UIDUsed in MouseDrag to preserve the last mouse-entered location.
mouse_object_UIDUsed in MouseDrag to preserve the last mouse-entered object.
mouse_override_iconUsed to override the mouse cursor so it doesnt get reset
mouse_up_iconUsed to make a special mouse cursor, this one for mouse up icon
moused_overThe client's currently moused over datum, limited to movable and stored as UID
movement_kb_dirsThe client's movement keybindings to directions, which work regardless of modifiers.
movingmobUsed with parallax to update the parallax offsets when the subsystem fires. Compared to the clients Eye variable
next_mouse_macro_warningUsed 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_windowOur object window datum. It stores info about and handles behavior for the object tab
pai_saveClient's pAI save
panel_tabslist of all tabs
parallax_animate_timerHandles how parallax loops in situations like shuttles leaving. Stores the timer that handles that
parallax_layersList of parallax layers a client is viewing. Accessed when paralax is updated
parallax_layers_cachedA cached list of available parallax layers. This may potentially be changeable to a static variable. Updated upon changing parallax prefs
parallax_layers_maxThe amount of parallax layers that will exist on your screen. Affected by the parallax preference
parallax_movedirThe direction parallax will be moved it. References parallax_move_direction on areas
parallax_static_layers_tailAdded to parallax layers when parallax settings are changed
parallax_throttleDeciseconds of added delay to parallax by client preferences
parent_typeClient 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_turfUsed with parallax to grab the offset needed. Uses the X and Y coords of the turf stored here
received_discord_pmLast world/time that a PM was sent to the player by an admin
recent_examinesA 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_mapsUsed with the camera console to clear out the screen objects it adds to the client when the console is deleted
seen_messagesMessages currently seen by this client
selected_targetAutoclick list of two elements, first being the clicked thing, second being the parameters.
sent_assetsList of all asset filenames sent to this client by the asset cache, along with their assoicated md5s
show_verb_panelhides the byond verb panel as we use our own custom version
spell_tabslist of tabs containing spells and abilities
stat_panelStat panel window declaration, we don't usually allow this but tgui windows/panels are exceptions
stat_tabour current tab
tgui_cache_reloadedglobal
tgui_panelCopyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT
tgui_sayAssigned say modal of the client
tgui_windowsglobal
topiclimiterUsed for limiting the rate of topic sends by the client to avoid abuse
tos_consentHas the client accepted the TOS about data collection and other stuff
version_blockedIf true, client cannot ready up, late join, or observe. Used for players with EXTREMELY old byond versions.
watchlistedIs the client watchlisted

Procs

Key_DownThis list defines the keys in legacy mode that get passed on to the rebindable input system +It cannot be bigger since, while typing, the keys would be passed to whatever they are set in the rebind input system
Process_GrabProcess_Grab() +Called by client/Move() +Checks to see if you are being grabbed and if so attemps to break it
Process_IncorpmoveProcess_Incorpmove +Called by client/Move() +Allows mobs to run though walls
_Topicdumb 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
admin_observeAllow 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_observe_targettargeted form of admin_observe: this should only appear in the right-click menu.
asset_cache_confirm_arrivalProcess asset cache client topic calls for "asset_cache_confirm_arrival=[INT]"
asset_cache_preload_dataProcess asset cache client topic calls for "asset_cache_preload_data=[HTML+JSON_STRING]
asset_cache_update_jsonUpdates the client side stored json file used to keep track of what assets the client has between restarts/reconnects.
browse_queue_flushBlocks until all currently sending browse and browse_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_mapsClears all the maps of registered screen objects.
clear_mapClears the map of registered screen objects.
close_popupCloses a popup.
create_eventmob_forWARNING!** +The jobban stuff looks mangled and disgusting +But it looks beautiful in-game +-Nodrak +**WARNING!
create_popupCreates a popup window with a basic map element in it, without any +further initialization.
display_job_bansLists all active jobbans for src client
fix_tgui_paneltgui panel / chat troubleshooting verb
get_byond_account_dateSets the clients BYOND date up properly
handle_popup_closeWhen the popup closes in any way (player or proc call) it calls this.
init_verbsCompiles a full list of verbs and sends it to the browser
maxviewReturns the biggest number from client.view so we can do easier maths
on_stat_panel_messageHandles incoming messages from the stat-panel TGUI.
register_map_objRegisters screen obj with the client, which makes it visible on the +assigned map, and becomes a part of the assigned map's lifecycle.
retrieve_byondacc_dataRetrieves the BYOND accounts data from the BYOND servers
set_macrosThis 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_popupCreate the popup, and get it ready for generic use by giving +it a background.
tgui_say_create_open_commandCreates a JSON encoded message to open TGUI say modals properly.
timer_logOpens a log of timers
toggle_fullscreenHandles fullscreen on the client.
uicloseverb
uid_logOpens a log of UIDs
+

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

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

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_down_icon + + + + +

+

Used to make a special mouse cursor, this one for mouse up icon

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.

mouse_override_icon + + + + +

+

Used to override the mouse cursor so it doesnt get reset

mouse_up_icon + + + + +

+

Used to make a special mouse cursor, this one for mouse up icon

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

+

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.

watchlisted + + + + +

+

Is the client watchlisted

Proc Details

Key_Down +

+

This list defines the keys in legacy mode that get passed on to the rebindable input system +It cannot be bigger since, while typing, the keys would be passed to whatever they are set in the rebind input system

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

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_observe_target +

+

targeted form of admin_observe: this should only appear in the right-click menu.

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_eventmob_for +

+

WARNING!** +The jobban stuff looks mangled and disgusting +But it looks beautiful in-game +-Nodrak +**WARNING!

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:

+

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.

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

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.

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

+ + + diff --git a/code/__DEFINES/MC.html b/code/__DEFINES/MC.html new file mode 100644 index 0000000000000..db21d37ce2a6a --- /dev/null +++ b/code/__DEFINES/MC.html @@ -0,0 +1,49 @@ + + + + + + + code/__DEFINES/MC.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/MC.dm + +

+ + + + +
MC_AVG_OVER_TIMEcreates a running average of "things elapsed" per time period when you need to count via a smaller time period. +eg you want an average number of things happening per second but you measure the event every tick (50 milliseconds). +make sure both time intervals are in the same units. doesnt work if current_duration > total_duration or if total_duration == 0
SS_BACKGROUNDSubsystem only runs on spare cpu (after all non-background subsystems have ran that tick) +SS_BACKGROUND has its own priority bracket, this overrides SS_TICKER's priority bump
SS_TICKER(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))

+ + + diff --git a/code/__DEFINES/_click.html b/code/__DEFINES/_click.html new file mode 100644 index 0000000000000..b138f416219a7 --- /dev/null +++ b/code/__DEFINES/_click.html @@ -0,0 +1,49 @@ + + + + + + + code/__DEFINES/_click.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/_click.dm + +

+ + + + + +
BUTTONMouse button that was just clicked/released +if(modifiersBUTTON == LEFT_CLICK)
MOUSE_OPACITY_TRANSPARENTObjects will ignore being clicked on regardless of their transparency (used in parallax, lighting effects, holograms, lasers, etc.)
MOUSE_OPACITY_ICONObjects 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_OPAQUEObjects 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.)

+ + + diff --git a/code/__DEFINES/_math.html b/code/__DEFINES/_math.html new file mode 100644 index 0000000000000..023e20e592a44 --- /dev/null +++ b/code/__DEFINES/_math.html @@ -0,0 +1,39 @@ + + + + + + + code/__DEFINES/_math.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/_math.dm + +

+ + + +
TOBITSHIFTGets shift x that would be required the bitflag (1<<x)
IS_INTChecks if a number is an integer, or a float

Define Details

+

IS_INT + + + +

+

Checks if a number is an integer, or a float

TOBITSHIFT + + + +

+

Gets shift x that would be required the bitflag (1<<x)

+ + + diff --git a/code/__DEFINES/_protection.html b/code/__DEFINES/_protection.html new file mode 100644 index 0000000000000..3bb2bed351112 --- /dev/null +++ b/code/__DEFINES/_protection.html @@ -0,0 +1,33 @@ + + + + + + + code/__DEFINES/_protection.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/_protection.dm + +

+ + +
GENERAL_PROTECT_DATUMProtects a datum from being VV'd

Define Details

+

GENERAL_PROTECT_DATUM + + + +

+

Protects a datum from being VV'd

+ + + diff --git a/code/__DEFINES/_tick.html b/code/__DEFINES/_tick.html new file mode 100644 index 0000000000000..af2436a246459 --- /dev/null +++ b/code/__DEFINES/_tick.html @@ -0,0 +1,87 @@ + + + + + + + code/__DEFINES/_tick.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/_tick.dm + +

+ + + + + + + + + + + + + +
MAPTICK_MC_MIN_RESERVEPercentage of tick to leave for master controller to run
TICK_BYOND_RESERVETick limit while running normally
TICK_LIMIT_TO_RUNTick limit used to resume things in stoplag
TICK_LIMIT_MCTick limit for MC while running
TICK_USAGEfor general usage of tick_usage
TICK_USAGE_REALto be used where the result isn't checked
TICK_CHECKReturns true if tick_usage is above the limit
CHECK_TICKruns stoplag if tick_usage is above the limit
RUNNING_BEFORE_MASTERChecks if a sleeping proc is running before or after the master controller
VERB_SHOULD_YIELDReturns true if a verb ought to yield to the MC (IE: queue up to be processed by a subsystem)
TICK_CHECK_HIGH_PRIORITYReturns true if tick usage is above 95, for high priority usage
CHECK_TICK_HIGH_PRIORITYruns stoplag if tick_usage is above 95, for high priority usage

Define Details

+

CHECK_TICK + + +

+

runs stoplag if tick_usage is above the limit

CHECK_TICK_HIGH_PRIORITY + + +

+

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

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)

+ + + diff --git a/code/__DEFINES/_versions.html b/code/__DEFINES/_versions.html new file mode 100644 index 0000000000000..02ba5ce5a50e6 --- /dev/null +++ b/code/__DEFINES/_versions.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/_versions.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/_versions.dm + +

+ + +
RUST_G_VERSIONVersion of RUST-G that this codebase wants

Define Details

+

RUST_G_VERSION + + +

+

Version of RUST-G that this codebase wants

+ + + diff --git a/code/__DEFINES/action_button_defines.html b/code/__DEFINES/action_button_defines.html new file mode 100644 index 0000000000000..565295f24d178 --- /dev/null +++ b/code/__DEFINES/action_button_defines.html @@ -0,0 +1,47 @@ + + + + + + + code/__DEFINES/action_button_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/action_button_defines.dm + +

+ + + + + +
SCRN_OBJ_DEFAULTWhatever the base action datum thinks is best
SCRN_OBJ_FLOATINGFloating somewhere on the hud, not in any predefined place
SCRN_OBJ_IN_LISTIn the list of buttons stored at the top of the screen
SCRN_OBJ_IN_PALETTEIn the collapseable palette

Define Details

+

SCRN_OBJ_DEFAULT + + +

+

Whatever the base action datum thinks is best

SCRN_OBJ_FLOATING + + +

+

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

+ + + diff --git a/code/__DEFINES/admin_defines.html b/code/__DEFINES/admin_defines.html new file mode 100644 index 0000000000000..b44ccd73f37b5 --- /dev/null +++ b/code/__DEFINES/admin_defines.html @@ -0,0 +1,62 @@ + + + + + + + code/__DEFINES/admin_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/admin_defines.dm + +

+ + + + + + + + +
CIDWARNING_SUPPRESSED_NOTETEXTNote text for suppressed CID warning
CIDTRACKING_PSUEDO_CKEYNote "ckey" for CID info tracking. Do not EVER update this.
ANTAGTRACKING_PSUEDO_CKEYNote "ckey" for roundstart antag rolling tracking. Do not EVER update this.
CONNECTION_TYPE_ESTABLISHEDClient was let into the server
CONNECTION_TYPE_DROPPED_IPINTELClient was disallowed due to IPIntel
CONNECTION_TYPE_DROPPED_BANNEDClient was disallowed due to being banned
CONNECTION_TYPE_DROPPED_INVALIDClient was disallowed due to invalid data

Define Details

+

ANTAGTRACKING_PSUEDO_CKEY + + +

+

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

+ + + diff --git a/code/__DEFINES/announce_defines.html b/code/__DEFINES/announce_defines.html new file mode 100644 index 0000000000000..df26c0de7016d --- /dev/null +++ b/code/__DEFINES/announce_defines.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/announce_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/announce_defines.dm + +

+ + +
ANNOUNCE_KIND_DEFAULTThese values are used when logging user-initiated announcements.

Define Details

+

ANNOUNCE_KIND_DEFAULT + + +

+

These values are used when logging user-initiated announcements.

+ + + diff --git a/code/__DEFINES/antag_defines.html b/code/__DEFINES/antag_defines.html new file mode 100644 index 0000000000000..598939cf75ec9 --- /dev/null +++ b/code/__DEFINES/antag_defines.html @@ -0,0 +1,106 @@ + + + + + + + code/__DEFINES/antag_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/antag_defines.dm + +

+ + + + + + + + + + + + + + + + +
CONTRACT_STATUS_INVALIDContractors +The contract is invalid for some reason and cannot be taken. It may be made valid later.
CONTRACT_STATUS_INACTIVEThe contract hasn't been started yet.
CONTRACT_STATUS_ACTIVEThe contract is in progress.
CONTRACT_STATUS_COMPLETEDThe contract has been completed successfully.
CONTRACT_STATUS_FAILEDThe contract failed for some reason.
EXTRACTION_DIFFICULTY_EASYEasy difficulty area to extract the kidnapee. Low rewards.
EXTRACTION_DIFFICULTY_MEDIUMMedium difficulty area to extract the kidnapee. Moderate rewards.
EXTRACTION_DIFFICULTY_HARDHard difficulty area to extract the kidnapee. High rewards.
CONTRACT_STRINGS_WANTEDThe name of the strings file containing data to use for contract fluff texts.
UPLINK_SPECIAL_SPAWNINGTraitors
CHANGELING_INNATE_POWERChangelings +Denotes that this power is free and should be given to all changelings by default.
CHANGELING_PURCHASABLE_POWERDenotes that this power can only be obtained by purchasing it.
CHANGELING_UNOBTAINABLE_POWERDenotes that this power can not be obtained normally. Primarily used for base types such as /datum/action/changeling/weapon.
ABDUCTOR_VEST_STEALTHAbductors
PULSEDEMON_SOURCE_DRAIN_INVALIDPulse Demon

Define Details

+

ABDUCTOR_VEST_STEALTH + + +

+

Abductors

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.

PULSEDEMON_SOURCE_DRAIN_INVALID + + +

+

Pulse Demon

+

Traitors

+ + + diff --git a/code/__DEFINES/apc_defines.html b/code/__DEFINES/apc_defines.html new file mode 100644 index 0000000000000..beb6d5baf6e49 --- /dev/null +++ b/code/__DEFINES/apc_defines.html @@ -0,0 +1,42 @@ + + + + + + + code/__DEFINES/apc_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/apc_defines.dm + +

+ + + + +
APC_CHANNEL_SETTING_OFFPower channel is off, anything connected to it is not powered, cannot be set manually by players
APC_CHANNEL_SETTING_AUTO_OFFAPC power channel Setting Off, if set while apc is "on" set apc to "off" otherwise set to "auto-off"
APC_CHANNEL_SETTING_ONAPC power channel setting on,

Define Details

+

APC_CHANNEL_SETTING_AUTO_OFF + + +

+

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,

+ + + diff --git a/code/__DEFINES/asset_defines.html b/code/__DEFINES/asset_defines.html new file mode 100644 index 0000000000000..afa3ac32d3eb2 --- /dev/null +++ b/code/__DEFINES/asset_defines.html @@ -0,0 +1,45 @@ + + + + + + + code/__DEFINES/asset_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/asset_defines.dm + +

+ + + +
URL2HTMLLOADERGet html to load a url. +for use inside of browse() calls to html assets that might be loaded on a cdn.
GENERATE_ASSET_NAMEGenerate a filename for this asset +The same asset will always lead to the same asset name +Generated names do not include file 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.

+ + + diff --git a/code/__DEFINES/atmospherics_defines.html b/code/__DEFINES/atmospherics_defines.html new file mode 100644 index 0000000000000..f52c127c9b162 --- /dev/null +++ b/code/__DEFINES/atmospherics_defines.html @@ -0,0 +1,52 @@ + + + + + + + code/__DEFINES/atmospherics_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/atmospherics_defines.dm + +

+ + + + + + +
COLD_ROOM_TEMP-14C - Temperature used for kitchen cold room, medical freezer, etc.
SERVER_ROOM_TEMP-193C - Temperature used for server rooms
ENVIRONMENT_LAVALANDLavaland environment: hot, low pressure.
ENVIRONMENT_TEMPERATETemperate environment: Normal atmosphere, 20 C.
ENVIRONMENT_COLDCold environment: Normal atmosphere, -93 C.

Define Details

+

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.

SERVER_ROOM_TEMP + + +

+

-193C - Temperature used for server rooms

+ + + diff --git a/code/__DEFINES/bio_chip_defines.html b/code/__DEFINES/bio_chip_defines.html new file mode 100644 index 0000000000000..42fc51be36dba --- /dev/null +++ b/code/__DEFINES/bio_chip_defines.html @@ -0,0 +1,67 @@ + + + + + + + code/__DEFINES/bio_chip_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/bio_chip_defines.dm + +

+ + + + + + + + + +
BIOCHIP_EMOTE_TRIGGER_INTENTIONALIf used, an implant will trigger when an emote is intentionally used.
BIOCHIP_EMOTE_TRIGGER_UNINTENTIONALIf used, an implant will trigger when an emote is forced/unintentionally used.
BIOCHIP_EMOTE_TRIGGER_ALWAYSIf used, an implant will always trigger when the user makes an emote.
BIOCHIP_TRIGGER_DEATH_ONCEIf used, an implant will trigger on the user's first death.
BIOCHIP_TRIGGER_DEATH_ANYIf used, an implant will trigger any time a user dies.
BIOCHIP_TRIGGER_NOT_WHEN_GIBBEDIf used, an implant will NOT trigger on death when a user is gibbed.
BIOCHIP_ACTIVATED_PASSIVEThe implant is passively active (like a mindshield)
BIOCHIP_ACTIVATED_ACTIVEThe implant is activated manually by a trigger

Define Details

+

BIOCHIP_ACTIVATED_ACTIVE + + +

+

The implant is activated manually by a trigger

BIOCHIP_ACTIVATED_PASSIVE + + +

+

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.

+ + + diff --git a/code/__DEFINES/callbacks.html b/code/__DEFINES/callbacks.html new file mode 100644 index 0000000000000..f9080125b2731 --- /dev/null +++ b/code/__DEFINES/callbacks.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/callbacks.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/callbacks.dm + +

+ + +
VERB_CALLBACKlike CALLBACK but specifically for verb callbacks

Define Details

+

VERB_CALLBACK + + +

+

like CALLBACK but specifically for verb callbacks

+ + + diff --git a/code/__DEFINES/chat.html b/code/__DEFINES/chat.html new file mode 100644 index 0000000000000..f78aeb0eba4b5 --- /dev/null +++ b/code/__DEFINES/chat.html @@ -0,0 +1,41 @@ + + + + + + + code/__DEFINES/chat.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/chat.dm + +

+ + + +
CHAT_RELIABILITY_HISTORY_SIZECopyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT +How many chat payloads to keep in history
CHAT_RELIABILITY_MAX_RESENDSHow many resends to allow before giving up

Define Details

+

CHAT_RELIABILITY_HISTORY_SIZE + + +

+

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

+ + + diff --git a/code/__DEFINES/clothing_defines.html b/code/__DEFINES/clothing_defines.html new file mode 100644 index 0000000000000..8de3c6448847f --- /dev/null +++ b/code/__DEFINES/clothing_defines.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/clothing_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/clothing_defines.dm + +

+ + +
MAX_EQUIPABLE_ACCESSORIESmax number of accessories that can be equiped to one piece of clothing

Define Details

+

MAX_EQUIPABLE_ACCESSORIES + + +

+

max number of accessories that can be equiped to one piece of clothing

+ + + diff --git a/code/__DEFINES/color_defines.html b/code/__DEFINES/color_defines.html new file mode 100644 index 0000000000000..26b8f76a38c12 --- /dev/null +++ b/code/__DEFINES/color_defines.html @@ -0,0 +1,37 @@ + + + + + + + code/__DEFINES/color_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/color_defines.dm + +

+ + + +
COLOR_THEME_MIDNIGHTMain colors for UI themes
COLORTONE_DEAD_EXT_ORGANColor for dead external organs/zombies

Define Details

+

COLORTONE_DEAD_EXT_ORGAN + + +

+

Color for dead external organs/zombies

COLOR_THEME_MIDNIGHT + + +

+

Main colors for UI themes

+ + + diff --git a/code/__DEFINES/combat_defines.html b/code/__DEFINES/combat_defines.html new file mode 100644 index 0000000000000..aa6569baad6bf --- /dev/null +++ b/code/__DEFINES/combat_defines.html @@ -0,0 +1,52 @@ + + + + + + + code/__DEFINES/combat_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/combat_defines.dm + +

+ + + + + + +
SECONDS_TO_JITTERJitter decays at a rate of 3 per life cycle, 15 if resting.
SHAMEStam crits the effected mob, as well as ensures they dont die from suicide
AUTOFIRE_STAT_IDLECompatible firemode is in the gun. Wait until it's held in the user hands.
AUTOFIRE_STAT_ALERTGun is active and in the user hands. Wait until user does a valid click.
AUTOFIRE_STAT_FIRINGGun is shooting.

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.

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

+ + + diff --git a/code/__DEFINES/construction_defines.html b/code/__DEFINES/construction_defines.html new file mode 100644 index 0000000000000..41ab011615d53 --- /dev/null +++ b/code/__DEFINES/construction_defines.html @@ -0,0 +1,109 @@ + + + + + + + code/__DEFINES/construction_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/construction_defines.dm + +

+ + + + + + + + + + + + + + + + + +
GIRDER_NORMALgirder construction states
RWALL_INTACTrwall construction states
WINDOW_OUT_OF_FRAMEwindow construction states
AIRLOCK_ASSEMBLY_NEEDS_WIRESairlock assembly construction states
AICONTROLDISABLED_OFFused by airlocks and airlock wires.
PLASTIC_FLAPS_NORMALplastic flaps construction states
MOUNTED_FRAME_SIMFLOORMounted Frames BITMASK
EMPTY_COREai core defines
NARSIE_WINDOW_COLOURother construction-related things +windows affected by nar'sie turn this color.
FULLTILE_WINDOW_DIRlet's just pretend fulltile windows being children of border windows is fine
TINT_CONTROL_RANGE_AREARange of a tint control button, that works only in its area.
TINT_CONTROL_GROUP_NONEID of a tint control button with no group specified, so it controls only windows also with no group specified ('null-like' id).
MAT_METALMaterial defines, for determining how much of a given material an item contains
MINERAL_MATERIAL_AMOUNTThe amount of materials you get from a sheet of mineral like iron/diamond/glass etc
MAX_STACK_SIZEThe maximum size of a stack object.
MAXCOILmaximum amount of cable in a coil

Define Details

+

AICONTROLDISABLED_OFF + + +

+

used by airlocks and airlock wires.

AIRLOCK_ASSEMBLY_NEEDS_WIRES + + +

+

airlock assembly construction states

EMPTY_CORE + + +

+

ai core defines

FULLTILE_WINDOW_DIR + + +

+

let's just pretend fulltile windows being children of border windows is fine

GIRDER_NORMAL + + +

+

girder construction states

MAT_METAL + + +

+

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

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

+ + + diff --git a/code/__DEFINES/cult_defines.html b/code/__DEFINES/cult_defines.html new file mode 100644 index 0000000000000..587b7d0583ef4 --- /dev/null +++ b/code/__DEFINES/cult_defines.html @@ -0,0 +1,74 @@ + + + + + + + code/__DEFINES/cult_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/cult_defines.dm + +

+ + + + + + + + + + +
MAX_BLOODCHARGEMaximum number of spells with an empowering rune
RUNELESS_MAX_BLOODCHARGEMaximum number of spells without an empowering rune
CULT_POPULATION_THRESHOLDAt what population does it switch to highpop values
CULT_RISEN_LOWPercent before rise (Lowpop)
CULT_ASCENDANT_LOWPercent before ascend (Lowpop)
CULT_RISEN_HIGHPercent before rise (Highpop)
CULT_ASCENDANT_HIGHPercent before ascend (Highpop)
GET_CULT_DATASafely accesses SSticker.cult_data, returns the default if cult data is not set up yet. Allows for both variable and proc call access.
IS_CULTISTChecks 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)

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

+ + + diff --git a/code/__DEFINES/dcs/dcs_flags.html b/code/__DEFINES/dcs/dcs_flags.html new file mode 100644 index 0000000000000..ccc3882affec6 --- /dev/null +++ b/code/__DEFINES/dcs/dcs_flags.html @@ -0,0 +1,83 @@ + + + + + + + code/__DEFINES/dcs/dcs_flags.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/dcs_flags.dm + +

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

Define Details

+

COMPONENT_DUPE_ALLOWED + + +

+

duplicates allowed

COMPONENT_DUPE_HIGHLANDER + + +

+

old component is deleted (default)

COMPONENT_DUPE_SELECTIVE + + +

+

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

COMPONENT_DUPE_UNIQUE + + +

+

new component is deleted

COMPONENT_DUPE_UNIQUE_PASSARGS + + +

+

old component is given the initialization args of the new

COMPONENT_INCOMPATIBLE + + +

+

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

COMPONENT_NOTRANSFER + + +

+

Returned in PostTransfer to prevent transfer, similar to COMPONENT_INCOMPATIBLE

ELEMENT_BESPOKE + + +

+

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

ELEMENT_DETACH_ON_HOST_DESTROY + + +

+

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

ELEMENT_INCOMPATIBLE + + +

+

Return value to cancel attaching

+ + + diff --git a/code/__DEFINES/dcs/dcs_helpers.html b/code/__DEFINES/dcs/dcs_helpers.html new file mode 100644 index 0000000000000..8f9f4f3ddbf76 --- /dev/null +++ b/code/__DEFINES/dcs/dcs_helpers.html @@ -0,0 +1,64 @@ + + + + + + + code/__DEFINES/dcs/dcs_helpers.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/dcs_helpers.dm + +

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

Define Details

+

AddComponent + + + +

+

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

AddElement + + + +

+

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

RemoveElement + + + +

+

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

SEND_SIGNAL + + + +

+

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

SIGNAL_HANDLER + + +

+

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

+ + + diff --git a/code/__DEFINES/dcs/signals.html b/code/__DEFINES/dcs/signals.html new file mode 100644 index 0000000000000..b59f8ec01be35 --- /dev/null +++ b/code/__DEFINES/dcs/signals.html @@ -0,0 +1,1961 @@ + + + + + + + code/__DEFINES/dcs/signals.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
COMSIG_GLOB_NEW_Zfrom base of datum/controller/subsystem/mapping/proc/add_new_zlevel(): (list/args)
COMSIG_GLOB_VAR_EDITcalled after a successful var edit somewhere in the world: (list/args)
COMSIG_GLOB_EXPLOSIONcalled 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_MOB_CREATEDmob was created somewhere : (mob)
COMSIG_GLOB_MOB_DEATHmob died somewhere : (mob , gibbed)
COMSIG_GLOB_LIVING_SAY_SPECIALglobal living say plug - use sparingly: (mob/speaker , message)
COMSIG_GLOB_PLAY_CINEMATICcalled by datum/cinematic/play() : (datum/cinematic/new_cinematic)
COMSIG_GLOB_BUTTON_PRESSEDingame button pressed (/obj/machinery/button/button)
COMSIG_GLOB_JOB_AFTER_SPAWNjob subsystem has spawned and equipped a new mob
COMSIG_GLOB_CABLE_UPDATEDcable was placed or joined somewhere : (turf)
COMSIG_SUN_MOVEDsignals from globally accessible objects +from SSsun when the sun changes position : (azimuth)
COMSIG_SECURITY_LEVEL_CHANGE_PLANNEDfrom SSsecurity_level on planning security level change : (previous_level_number, new_level_number)
COMSIG_SECURITY_LEVEL_CHANGEDfrom SSsecurity_level when the security level changes : (previous_level_number, new_level_number)
COMSIG_COMPONENT_ADDEDwhen a component is added to a datum: (/datum/component)
COMSIG_COMPONENT_REMOVINGbefore a component is removed from a datum because of RemoveComponent: (/datum/component)
COMSIG_PARENT_PREQDELETEDbefore a datum's Destroy() is called: (force), returning a nonzero value will cancel the qdel operation
COMSIG_PARENT_QDELETINGjust before a datum's Destroy() is called: (force), at this point none of the other components chose to interrupt qdel and Destroy will be called
COMSIG_TOPICgeneric topic handler (usr, href_list)
COMSIG_ELEMENT_ATTACHfires on the target datum when an element is attached to it (/datum/element)
COMSIG_ELEMENT_DETACHfires on the target datum when an element is attached to it (/datum/element)
COMSIG_ATOM_CREATEDfrom base of atom/proc/Initialize(): sent any time a new atom is created
COMSIG_PARENT_ATTACKBYfrom base of atom/attackby(): (/obj/item, /mob/living, params)
COMPONENT_NO_AFTERATTACKReturn this in response if you don't want afterattack to be called
COMSIG_ATOM_HULK_ATTACKfrom base of atom/attack_hulk(): (/mob/living/carbon/human)
COMSIG_ATOM_ATTACK_ANIMALfrom base of atom/animal_attack(): (/mob/user)
COMSIG_PARENT_EXAMINEfrom base of atom/examine(): (/mob)
COMSIG_ATOM_GET_EXAMINE_NAMEfrom base of atom/get_examine_name(): (/mob, list/overrides)
COMSIG_ATOM_UPDATE_APPEARANCEfrom base of /atom/proc/update_appearance: (updates)
COMSIG_ATOM_NO_UPDATE_NAMEIf returned from COMSIG_ATOM_UPDATE_APPEARANCE it prevents the atom from updating its name.
COMSIG_ATOM_NO_UPDATE_DESCIf returned from COMSIG_ATOM_UPDATE_APPEARANCE it prevents the atom from updating its desc.
COMSIG_ATOM_NO_UPDATE_ICONIf returned from COMSIG_ATOM_UPDATE_APPEARANCE it prevents the atom from updating its icon.
COMSIG_ATOM_UPDATE_NAMEfrom base of /atom/proc/update_name: (updates)
COMSIG_ATOM_UPDATE_DESCfrom base of /atom/proc/update_desc: (updates)
COMSIG_ATOM_UPDATE_ICONfrom base of /atom/update_icon: ()
COMSIG_ATOM_NO_UPDATE_ICON_STATEIf returned from COMSIG_ATOM_UPDATE_ICON it prevents the atom from updating its icon state.
COMSIG_ATOM_NO_UPDATE_OVERLAYSIf returned from COMSIG_ATOM_UPDATE_ICON it prevents the atom from updating its overlays.
COMSIG_ATOM_UPDATE_ICON_STATESent after atom/update_icon_state is called by /atom/update_icon: ()
COMSIG_ATOM_UPDATE_OVERLAYSSent after atom/update_overlays is called by /atom/update_icon: (list/new_overlays)
COMSIG_ATOM_UPDATED_ICONfrom base of /atom/update_icon: (signalOut, did_anything)
COMSIG_ATOM_ENTEREDfrom base of atom/Entered(): (atom/movable/entering, /atom)
COMSIG_ATOM_EXITfrom base of atom/Exit(): (/atom/movable/exiting, /atom/newloc)
COMSIG_ATOM_EXITEDfrom base of atom/Exited(): (atom/movable/exiting, atom/newloc)
COMSIG_ATOM_BUMPEDfrom base of atom/Bumped(): (/atom/movable)
COMSIG_ATOM_EX_ACTfrom base of atom/ex_act(): (severity, target)
COMSIG_ATOM_EMP_ACTfrom base of atom/emp_act(): (severity)
COMSIG_ATOM_FIRE_ACTfrom base of atom/fire_act(): (exposed_temperature, exposed_volume)
COMSIG_ATOM_BULLET_ACTfrom base of atom/bullet_act(): (/obj/projectile, def_zone)
COMSIG_ATOM_BLOB_ACTfrom base of atom/blob_act(): (/obj/structure/blob)
COMSIG_ATOM_ACID_ACTfrom base of atom/acid_act(): (acidpwr, acid_volume)
COMSIG_ATOM_EMAG_ACTfrom base of atom/emag_act(): (/mob/user)
COMSIG_ATOM_RAD_ACTfrom base of atom/rad_act(intensity)
COMSIG_ATOM_NARSIE_ACTfrom base of atom/narsie_act(): ()
COMSIG_ATOM_RCD_ACTfrom base of atom/rcd_act(): (/mob, /obj/item/construction/rcd, passed_mode)
COMSIG_ATOM_SING_PULLfrom base of atom/singularity_pull(): (S, current_size)
COMSIG_ATOM_BSA_BEAMfrom obj/machinery/bsa/full/proc/fire(): ()
COMSIG_ATOM_SET_LIGHTfrom base of atom/set_light(): (l_range, l_power, l_color)
COMSIG_ATOM_DIR_CHANGEfrom base of atom/setDir(): (old_dir, new_dir)
COMSIG_ATOM_CONTENTS_DELfrom base of atom/handle_atom_del(): (atom/deleted)
COMSIG_ATOM_HAS_GRAVITYfrom base of atom/has_gravity(): (turf/location, list/forced_gravities)
COMSIG_ATOM_RAD_PROBEfrom proc/get_rad_contents(): ()
COMSIG_ATOM_RAD_CONTAMINATINGfrom base of datum/radiation_wave/radiate(): (strength)
COMSIG_ATOM_RAD_WAVE_PASSINGfrom base of datum/radiation_wave/check_obstructions(): (datum/radiation_wave, width)
COMSIG_ATOM_SCREWDRIVER_ACTfrom base of atom/screwdriver_act(): (mob/living/user, obj/item/I)
COMSIG_ATOM_WRENCH_ACTfrom base of atom/wrench_act(): (mob/living/user, obj/item/I)
COMSIG_ATOM_MULTITOOL_ACTfrom base of atom/multitool_act(): (mob/living/user, obj/item/I)
COMSIG_ATOM_WELDER_ACTfrom base of atom/welder_act(): (mob/living/user, obj/item/I)
COMSIG_ATOM_WIRECUTTER_ACTfrom base of atom/wirecutter_act(): (mob/living/user, obj/item/I)
COMSIG_ATOM_CROWBAR_ACTfrom base of atom/crowbar_act(): (mob/living/user, obj/item/I)
COMSIG_ATOM_ANALYSER_ACTfrom base of atom/analyser_act(): (mob/living/user, obj/item/I)
COMSIG_ATOM_INTERCEPT_TELEPORTcalled when teleporting into a protected turf: (channel, turf/origin)
COMSIG_ATOM_HEARER_IN_VIEWcalled when an atom is added to the hearers on get_hearers_in_view(): (list/processing_list, list/hearers)
COMSIG_ATOM_ORBIT_BEGINcalled when an atom starts orbiting another atom: (atom)
COMSIG_ATOM_ORBIT_STOPcalled when an atom stops orbiting another atom: (atom)
COMSIG_ATOM_ORBITER_STOPcalled on an atom who has stopped orbiting another atom (atom/orbiter, atom/formerly_orbited)
COMSIG_ATOM_HITBYfrom base of atom/hitby(atom/movable/AM, skipcatch, hitpush, blocked, datum/thrownthing/throwingdatum)
COMSIG_ATOM_UPDATE_SHARPNESSCalled when an atom is sharpened or dulled.
COMSIG_ATOM_PREHITfrom base of atom/atom_prehit(obj/item/projectile/P):
COMPONENT_CANCEL_ATTACK_CHAINThis response cancels the attack chain entirely. If sent early, it might cause some later effects to be skipped.
COMSIG_ATOM_INITIALIZED_ONCalled from atom/Initialize() of target: (atom/target)
COMSIG_ATOM_ATTACK_GHOSTfrom base of atom/attack_ghost(): (mob/dead/observer/ghost)
COMSIG_ATOM_ATTACK_HANDfrom base of atom/attack_hand(): (mob/user)
COMSIG_ATOM_ATTACK_PAWfrom base of atom/attack_paw(): (mob/user)
COMSIG_ATOM_INTERCEPT_Z_FALLcalled for each movable in a turf contents on /turf/zImpact(): (atom/movable/A, levels)
COMSIG_ATOM_START_PULLcalled on a movable (NOT living) when someone starts pulling it (atom/movable/puller, state, force)
COMSIG_LIVING_START_PULLcalled on /living when someone starts pulling it (atom/movable/puller, state, force)
COMSIG_CLIENT_CLICKfrom base of client/Click(): (atom/target, atom/location, control, params, mob/user)
COMSIG_CLIENT_MOUSEDOWNfrom base of client/MouseDown(): (/client, object, location, control, params)
COMSIG_CLIENT_MOUSEUPfrom base of client/MouseUp(): (/client, object, location, control, params)
COMSIG_CLIENT_MOUSEDRAGfrom base of client/MouseUp(): (/client, object, location, control, params)
COMSIG_ENTER_AREAfrom base of area/Entered(): (/area)
COMSIG_EXIT_AREAfrom base of area/Exited(): (/area)
COMSIG_CLICKfrom base of atom/Click(): (location, control, params, mob/user)
COMSIG_CLICK_SHIFTfrom base of atom/ShiftClick(): (/mob)
COMSIG_CLICK_CTRLfrom base of atom/CtrlClickOn(): (/mob)
COMSIG_CLICK_ALTfrom base of atom/AltClick(): (/mob)
COMPONENT_CANCEL_ALTCLICKCancel the alt-click, since this isn't properly part of the attack chain
COMSIG_CLICK_CTRL_SHIFTfrom base of atom/CtrlShiftClick(/mob)
COMSIG_MOUSEDROP_ONTOfrom base of atom/MouseDrop(): (/atom/over, /mob/user)
COMSIG_MOUSEDROPPED_ONTOfrom base of atom/MouseDrop_T: (/atom/from, /mob/user)
COMSIG_POWERNET_POWER_CHANGEfrom base of /datum/local_powernet/proc/power_change()
COMSIG_AREA_ENTEREDfrom base of area/Entered(): (atom/movable/M)
COMSIG_AREA_EXITEDfrom base of area/Exited(): (atom/movable/M)
COMSIG_TURF_CHANGEfrom base of turf/ChangeTurf(): (path, list/new_baseturfs, flags, list/transferring_comps)
COMSIG_TURF_HAS_GRAVITYfrom base of atom/has_gravity(): (atom/asker, list/forced_gravities)
COMSIG_TURF_MULTIZ_NEWfrom base of turf/New(): (turf/source, direction)
COMSIG_MOVABLE_PRE_MOVEfrom base of atom/movable/Moved(): (/atom)
COMSIG_MOVABLE_MOVEDfrom base of atom/movable/Moved(): (/atom, dir)
COMSIG_MOVABLE_CROSSfrom base of atom/movable/Cross(): (/atom/movable)
COMSIG_MOVABLE_CROSSEDfrom base of atom/movable/Crossed(): (/atom/movable)
COMSIG_CROSSED_MOVABLEwhen we cross over something (calling Crossed() on that atom)
COMSIG_MOVABLE_UNCROSSfrom base of atom/movable/Uncross(): (/atom/movable)
COMSIG_MOVABLE_UNCROSSEDfrom base of atom/movable/Uncrossed(): (/atom/movable)
COMSIG_MOVABLE_BUMPfrom base of atom/movable/Bump(): (/atom)
COMSIG_MOVABLE_IMPACTfrom base of atom/movable/throw_impact(): (/atom/hit_atom, /datum/thrownthing/throwingdatum)
COMSIG_MOVABLE_IMPACT_ZONEfrom base of mob/living/hitby(): (mob/living/target, hit_zone)
COMSIG_MOVABLE_BUCKLEfrom base of atom/movable/buckle_mob(): (mob, force)
COMSIG_MOVABLE_UNBUCKLEfrom base of atom/movable/unbuckle_mob(): (mob, force)
COMSIG_MOVABLE_PRE_THROWfrom base of atom/movable/throw_at(): (list/args)
COMSIG_MOVABLE_POST_THROWfrom base of atom/movable/throw_at(): (datum/thrownthing, spin)
COMSIG_MOVABLE_THROW_LANDEDfrom base of datum/thrownthing/finalize(): (obj/thrown_object, datum/thrownthing) used for when a throw is finished
COMSIG_MOVABLE_Z_CHANGEDfrom base of atom/movable/onTransitZ(): (old_z, new_z)
COMSIG_MOVABLE_SECLUDED_LOCATIONcalled when the movable is placed in an unaccessible area, used for stationloving: ()
COMSIG_MOVABLE_HEARfrom base of atom/movable/Hear(): (proc args list(message, atom/movable/speaker, message_language, raw_message, radio_freq, list/spans, message_mode))
COMSIG_MOVABLE_TRY_UNTILTCalled just before something gets untilted
COMPONENT_BLOCK_UNTILTReturn this to block an untilt attempt
COMSIG_MOVABLE_UNTILTEDCalled when something gets untilted, from /datum/element/tilted/proc/do_untilt(atom/movable/source, mob/user)
COMSIG_MOVABLE_DISPOSINGcalled when the movable is added to a disposal holder object for disposal movement: (obj/structure/disposalholder/holder, obj/machinery/disposal/source)
COMSIG_MOVABLE_EXIT_DISPOSALScalled when the movable is removed from a disposal holder object: /obj/structure/disposalpipe/proc/expel(): (obj/structure/disposalholder/H, turf/T, direction)
COMSIG_MIND_TRANSER_TOfrom base of /datum/mind/proc/transfer_to(mob/living/new_character)
COMSIG_BODY_TRANSFER_TOcalled on the mob instead of the mind
COMSIG_MIND_INITIALIZEcalled when the mind is initialized (called every time the mob logins)
COMSIG_MOB_LOGINfrom base of /mob/Login(): ()
COMSIG_HUMAN_LOGINcalled in human/login
COMSIG_MOB_LOGOUTfrom base of /mob/Logout(): ()
COMSIG_MOB_DEATHfrom base of mob/death(): (gibbed)
COMSIG_MOB_STATCHANGEfrom base of mob/set_stat(): (new_stat)
COMSIG_MOB_CLICKONfrom base of mob/clickon(): (atom/A, params)
COMSIG_MOB_MIDDLECLICKONfrom base of mob/MiddleClickOn(): (atom/A)
COMSIG_MOB_ALTCLICKONfrom base of mob/AltClickOn(): (atom/A)
COMSIG_MOB_ALLOWEDfrom base of obj/allowed(mob/M): (/obj) returns bool, if TRUE the mob has id access to the obj
COMSIG_MOB_RECEIVE_MAGICfrom base of mob/anti_magic_check(): (mob/user, magic, holy, tinfoil, chargecost, self, protection_sources)
COMSIG_MOB_HUD_CREATEDfrom base of mob/create_mob_hud(): ()
COMSIG_MOB_ATTACK_HANDfrom base of atom/attack_hand(): (mob/user)
COMSIG_MOB_ITEM_ATTACKfrom base of /obj/item/attack(): (mob/M, mob/user)
COMSIG_MOB_APPLY_DAMAGEfrom base of /mob/living/proc/apply_damage(): (damage, damagetype, def_zone)
COMSIG_MOB_ITEM_AFTERATTACKfrom base of obj/item/afterattack(): (atom/target, mob/user, proximity_flag, click_parameters)
COMSIG_MOB_ITEM_ATTACK_QDELETEDfrom base of obj/item/attack_qdeleted(): (atom/target, mob/user, proxiumity_flag, click_parameters)
COMSIG_MOB_ATTACK_RANGEDfrom base of mob/RangedAttack(): (atom/A, params)
COMSIG_MOB_THROWfrom base of /mob/throw_item(): (atom/target)
COMSIG_MOB_WILLINGLY_DROPcalled when a user willingly drops something (i.e. keybind, or UI action)
COMSIG_MOB_WEAPON_APPEARScalled when a user is getting new weapon and we want to remove previous weapon to clear hands
COMSIG_MOB_EXAMINATEfrom base of /mob/verb/examinate(): (atom/target)
COMSIG_MOB_UPDATE_SIGHTfrom base of /mob/update_sight(): ()
COMSIG_MOB_SAYfrom /mob/living/say(): ()
COMSIG_MOB_DEADSAYfrom /mob/say_dead(): (mob/speaker, message)
COMSIG_MOB_PREEMOTESignal fired when an emote is used but before it's executed. +from /datum/emote/proc/try_run_emote(): (key, intentional)
COMPONENT_BLOCK_EMOTE_UNUSABLEReturn this to block an emote and let the user know the emote is unusable.
COMPONENT_BLOCK_EMOTE_SILENTReturn this to block an emote silently.
COMSIG_MOB_EMOTEGeneral signal fired when a mob does any old emote +from /datum/emote/proc/run_emote(): (key, intentional)
COMSIG_MOB_EMOTEDSpecific signal used to track when a specific emote is used. +From /datum/emote/run_emote(): (P, key, m_type, message, intentional)
COMSIG_MOB_EMOTE_ATFrom /datum/emote/select_param(): (target, key, intentional)
COMSIG_MOB_SWAPPING_HANDSfrom base of mob/swap_hand(): (obj/item)
COMPONENT_BLOCK_SWAPPrevent the mob from changing hands
COMSIG_MOB_SWAPPED_HANDSPerformed after the hands are swapped.
COMSIG_LIVING_RESISTfrom base of mob/living/resist() (/mob/living)
COMSIG_LIVING_IGNITEDfrom base of mob/living/IgniteMob() (/mob/living)
COMSIG_LIVING_EXTINGUISHEDfrom base of mob/living/ExtinguishMob() (/mob/living)
COMSIG_LIVING_ELECTROCUTE_ACTfrom base of mob/living/electrocute_act(): (shock_damage, source, siemens_coeff, flags)
COMSIG_LIVING_SHOCK_PREVENTEDsent when items with siemen coeff. of 0 block a shock: (power_source, source, siemens_coeff, dist_check)
COMSIG_LIVING_MINOR_SHOCKsent by stuff like stunbatons and tasers: ()
COMSIG_LIVING_PRE_DEFIBSent from defibrillators when everything seems good and the user will be shocked: (defibber, defib_item, ghost)
COMPONENT_BLOCK_DEFIBIf returned from LIVING_BEFORE_DEFIB or LIVING_DEFIBBED, the defibrillation will fail
COMPONENT_DEFIB_OVERRIDEIf returned, don't even show the "failed" message, defer to the signal handler to do that.
COMPONENT_DEFIB_FAKEDEATH_ACCEPTEDIf returned, allow to revive through false death.
COMPONENT_DEFIB_FAKEDEATH_DENIEDIf returned, make the fake death look like a unresponsive ghost.
COMSIG_LIVING_DEFIBBEDsend from defibs on ressurection: (defibber, defib_item, ghost)
COMSIG_LIVING_REVIVEfrom base of mob/living/revive() (full_heal, admin_revive)
COMSIG_LIVING_REGENERATE_LIMBSfrom base of /mob/living/regenerate_limbs(): (noheal, excluded_limbs)
COMSIG_LIVING_ATTACH_LIMBfrom base of /obj/item/bodypart/proc/attach_limb(): (new_limb, special) allows you to fail limb attachment
COMSIG_PROCESS_BORGCHARGER_OCCUPANTsent from borg recharge stations: (amount, repairs)
COMSIG_MOB_CLIENT_LOGINsent when a mob/login() finishes: (client)
COMSIG_BORG_SAFE_DECONSTRUCTsent from borg mobs to itself, for tools to catch an upcoming destroy() due to safe decon (rather than detonation)
COMSIG_LIVING_FIRE_TICKsent from living mobs every tick of fire
COMSIG_LIVING_STATUS_STUNfrom base of mob/living/Stun() (amount, ignore_canstun)
COMSIG_LIVING_STATUS_WEAKENfrom base of mob/living/Stun() (amount, ignore_canstun)
COMSIG_LIVING_STATUS_PARALYSEfrom 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_IMMOBILIZEfrom base of mob/living/Immobilize() (amount, ignore_canstun)
COMSIG_LIVING_STATUS_UNCONSCIOUSfrom base of mob/living/Unconscious() (amount, ignore_canstun)
COMSIG_LIVING_STATUS_SLEEPfrom base of mob/living/Sleeping() (amount, ignore_canstun)
COMSIG_LIVING_CAN_TRACKfrom base of /mob/living/can_track(): (mob/user)
COMSIG_LIVING_WRITE_MEMORYfrom base of mob/living/Write_Memory()
COMSIG_CARBON_SOUNDBANGfrom base of mob/living/carbon/soundbang_act(): (list(intensity))
COMSIG_CARBON_GAIN_ORGANfrom /item/organ/proc/Insert() (/obj/item/organ/)
COMSIG_CARBON_LOSE_ORGANfrom /item/organ/proc/Remove() (/obj/item/organ/)
COMSIG_CARBON_EQUIP_HATfrom /mob/living/carbon/doUnEquip(obj/item/I, force, newloc, no_move, invdrop, silent)
COMSIG_CARBON_UNEQUIP_HATfrom /mob/living/carbon/doUnEquip(obj/item/I, force, newloc, no_move, invdrop, silent)
COMSIG_CARBON_EMBED_RIPdefined twice, in carbon and human's topics, fired when interacting with a valid embedded_object to pull it out (mob/living/carbon/target, /obj/item, /obj/item/bodypart/L)
COMSIG_CARBON_EMBED_REMOVALcalled when removing a given item from a mob, from mob/living/carbon/remove_embedded_object(mob/living/carbon/target, /obj/item)
COMSIG_CARBON_SWAP_HANDSFrom /mob/living/carbon/swap_hand(): Called when the user swaps their active hand
COMSIG_CARBON_TOGGLE_THROWFrom /mob/living/carbon/toggle_throw_mode()
COMSIG_CARBON_THROWN_ITEM_CAUGHTFrom /mob/living/carbon/human/hitby()
COMSIG_CARBON_FLASH_EYESFrom /mob/living/carbon/flash_eyes()
COMSIG_CARBON_UPDATE_HANDCUFFEDFrom /mob/living/carbon/update_handcuffed()
COMSIG_CARBON_REGENERATE_ICONSFrom /mob/living/carbon/regenerate_icons()
COMSIG_CARBON_ENTER_STAMINACRITFrom /mob/living/carbon/enter_stamcrit()
COMSIG_CARBON_EXIT_STAMINACRITFrom /mob/living/carbon/update_stamina()
COMSIG_CARBON_STAMINA_REGENERATEDFrom /mob/living/carbon/handle_status_effects()
COMSIG_OBJ_DECONSTRUCTfrom base of obj/deconstruct(): (disassembled)
COMSIG_OBJ_SETANCHOREDcalled in /obj/structure/setAnchored(): (value)
COMSIG_OBJ_DEFAULT_UNFASTEN_WRENCHfrom base of code/game/machinery
COMSIG_OBJ_HIDEfrom base of /turf/proc/levelupdate(). (intact) true to hide and false to unhide
COMSIG_OBJ_UPDATE_ICONcalled in /obj/update_icon()
COMSIG_MACHINERY_BROKENfrom /obj/machinery/obj_break(damage_flag): (damage_flag)
COMSIG_MACHINERY_POWER_LOSTfrom base power_change() when power is lost
COMSIG_MACHINERY_POWER_RESTOREDfrom base power_change() when power is restored
COMSIG_ITEM_ATTACKfrom base of obj/item/attack(): (/mob/living/target, /mob/living/user)
COMSIG_ITEM_ATTACK_SELFfrom base of obj/item/attack_self(): (/mob)
COMSIG_ITEM_ATTACK_OBJfrom base of obj/item/attack_obj(): (/obj, /mob)
COMSIG_ITEM_PRE_ATTACKfrom base of obj/item/pre_attack(): (atom/target, mob/user, params)
COMSIG_ITEM_BEING_ATTACKEDfrom base of obj/item/pre_attack(): (atom/target, mob/user, params)
COMSIG_ITEM_AFTERATTACKfrom base of obj/item/afterattack(): (atom/target, mob/user, params)
COMSIG_ITEM_ATTACK_QDELETEDfrom base of obj/item/attack_qdeleted(): (atom/target, mob/user, params)
COMSIG_ITEM_PRE_UNEQUIPfrom base of obj/item/equipped(): (/mob/equipper, slot) +called on /obj/item before unequip from base of [mob/proc/doUnEquip]: (force, atom/newloc, no_move, invdrop, silent)
COMPONENT_ITEM_BLOCK_UNEQUIPonly the pre unequip can be cancelled
COMSIG_ITEM_DROPPEDfrom base of obj/item/dropped(): (mob/user)
COMSIG_ITEM_PICKUPfrom base of obj/item/pickup(): (/mob/taker)
COMSIG_ITEM_ATTACK_ZONEfrom base of mob/living/carbon/attacked_by(): (mob/living/carbon/target, mob/living/user, hit_zone)
COMSIG_ITEM_IMBUE_SOULreturn a truthy value to prevent ensouling, checked in /datum/spell/lichdom/cast(): (mob/user)
COMSIG_ITEM_MARK_RETRIEVALcalled before marking an object for retrieval, checked in /datum/spell/summonitem/cast() : (mob/user)
COMSIG_ITEM_HIT_REACTfrom base of obj/item/hit_reaction(): (list/args)
COMSIG_ITEM_WEARERCROSSEDcalled on item when crossed by something (): (/atom/movable, mob/living/crossed)
COMSIG_ITEM_MICROWAVE_ACTcalled on item when microwaved (): (obj/machinery/microwave/M)
COMSIG_ITEM_SHARPEN_ACTfrom base of item/sharpener/attackby(): (amount, max)
COMSIG_TOOL_IN_USEfrom base of [/obj/item/proc/tool_check_callback]: (mob/living/user)
COMSIG_TOOL_START_USEfrom base of [/obj/item/proc/tool_start_check]: (mob/living/user)
COMSIG_TOOL_ATTACKfrom base of [/obj/item/proc/tool_attack_chain]: (atom/tool, mob/user)
COMSIG_ITEM_DISABLE_EMBEDfrom [/obj/item/proc/disableEmbedding]:
COMSIG_MINE_TRIGGEREDfrom [/obj/effect/mine/proc/triggermine]:
COMSIG_ITEM_GET_WORN_OVERLAYSCalled by /obj/item/proc/worn_overlays(list/overlays, mutable_appearance/standing, isinhands, icon_file)
COMSIG_ASSEMBLY_PULSEDCalled by /obj/item/assembly/signaler(called_from_radio)
COMSIG_DEFIB_PADDLES_APPLIEDDefib-specific signals +Called when a defibrillator is first applied to someone. (mob/living/user, mob/living/target, harmful)
COMPONENT_BLOCK_DEFIB_DEADDefib is out of power.
COMPONENT_BLOCK_DEFIB_MISCSomething else: we won't have a custom message for this and should let the defib handle it.
COMSIG_DEFIB_SHOCK_APPLIEDCalled when a defib has been successfully used, and a shock has been applied. (mob/living/user, mob/living/target, harmful, successful)
COMSIG_DEFIB_READYCalled when a defib's cooldown has run its course and it is once again ready. ()
COMSIG_ITEM_SOLDcalled when an item is sold by the exports subsystem
COMSIG_STRUCTURE_UNWRAPPEDcalled when a wrapped up structure is opened by hand
COMSIG_ITEM_SPLIT_VALUEcalled when a wrapped up item is opened by hand
COMSIG_ITEM_SPLIT_PROFITcalled when getting the item's exact ratio for cargo's profit.
COMSIG_ITEM_SPLIT_PROFIT_DRYcalled when getting the item's exact ratio for cargo's profit, without selling the item.
COMSIG_SHOES_STEP_ACTIONfrom [/mob/living/carbon/human/Move]: ()
COMSIG_SUIT_SPACE_TOGGLEfrom base of /obj/item/clothing/suit/space/proc/toggle_spacesuit(): (obj/item/clothing/suit/space/suit)
COMSIG_IMPLANT_ACTIVATEDfrom base of /obj/item/bio_chip/proc/activate(): ()
COMSIG_IMPLANT_IMPLANTINGfrom base of /obj/item/bio_chip/proc/implant(): (list/args)
COMSIG_IMPLANT_OTHERcalled 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_EXISTING_UPLINKcalled on implants being implanted into someone with an uplink implant: (datum/component/uplink)
COMSIG_IMPLANT_IMPLANTEDcalled on implants, after a successful implantation: (mob/living/target, mob/user, silent, force)
COMSIG_IMPLANT_REMOVEDcalled on implants, after an implant has been removed: (mob/living/source, silent, special)
COMSIG_PDA_CHANGE_RINGTONEcalled on pda when the user changes the ringtone: (mob/living/user, new_ringtone)
COMSIG_RADIO_NEW_FREQUENCYcalled from base of /obj/item/radio/proc/set_frequency(): (list/args)
COMSIG_PEN_ROTATEDcalled after rotation in /obj/item/pen/attack_self(): (rotation, mob/living/carbon/user)
COMSIG_GUN_TRY_FIREcalled in /obj/item/gun/fire_gun (user, target, flag, params)
COMSIG_MOB_TRY_FIREcalled in /obj/item/gun/afterattack (user, target, flag, params)
COMSIG_GUN_FIREDcalled in /obj/item/gun/process_fire (user, target)
COMSIG_AUTOFIRE_ONMOUSEDOWNcalled in /datum/component/automatic_fire/proc/on_mouse_down: (client/clicker, atom/target, turf/location, control, params)
COMSIG_AUTOFIRE_SHOTcalled in /datum/component/automatic_fire/proc/process_shot(): (atom/target, mob/living/shooter, allow_akimbo, params)
COMSIG_GRENADE_PRIMEcalled in /obj/item/gun/process_fire (user, target, params, zone_override)
COMSIG_GRENADE_ARMEDcalled in /obj/item/gun/process_fire (user, target, params, zone_override)
COMSIG_PROJECTILE_SELF_ON_HITfrom base of /obj/projectile/proc/on_hit(): (atom/movable/firer, atom/target, Angle)
COMSIG_PROJECTILE_ON_HITfrom base of /obj/projectile/proc/on_hit(): (atom/movable/firer, atom/target, Angle)
COMSIG_PROJECTILE_BEFORE_FIREfrom base of /obj/projectile/proc/fire(): (obj/projectile, atom/original_target)
COMSIG_PROJECTILE_FIREfrom the base of /obj/projectile/proc/fire(): ()
COMSIG_PROJECTILE_PREHITsent to targets during the process_hit proc of projectiles
COMSIG_PROJECTILE_RANGE_OUTsent to targets during the process_hit proc of projectiles
COMSIG_EMBED_TRY_FORCEsent when trying to force an embed (mainly for projectiles, only used in the embed element)
COMSIG_PELLET_CLOUD_INITsent to targets during the process_hit proc of projectiles
COMSIG_MECHA_ACTION_ACTIVATEsent from mecha action buttons to the mecha they're linked to
COMSIG_HUMAN_EARLY_UNARMED_ATTACKfrom mob/living/carbon/human/UnarmedAttack(): (atom/target, proximity)
COMSIG_HUMAN_MELEE_UNARMED_ATTACKfrom mob/living/carbon/human/UnarmedAttack(): (atom/target, proximity)
COMSIG_HUMAN_MELEE_UNARMED_ATTACKBYfrom mob/living/carbon/human/UnarmedAttack(): (mob/living/carbon/human/attacker)
COMSIG_HUMAN_DISARM_HITHit by successful disarm attack (mob/living/carbon/human/attacker,zone_targeted)
COMSIG_JOB_RECEIVEDWhenever EquipRanked is called, called after job is set
COMSIG_HUMAN_CHANGE_BODY_ACCESSORYFrom mob/living/carbon/human/change_body_accessory(): (mob/living/carbon/human/H, body_accessory_style)
COMSIG_HUMAN_CHANGE_HEAD_ACCESSORYFrom mob/living/carbon/human/change_head_accessory(): (mob/living/carbon/human/H, head_accessory_style)
COMSIG_LIVING_MOB_BUMPFrom base of mob/living/MobBump() (mob/living)
COMSIG_HUMAN_SUICIDE_ACTFrom mob/living/carbon/human/do_suicide()
COMSIG_HUMAN_RECEIVE_CPRSent from mob/living/carbon/human/do_cpr(): (mob/living/carbon/human/H, new_seconds_of_life)
COMSIG_HUMAN_ATTACKEDFrom mob/living/carbon/human/attackedby(): (mob/living/carbon/human/attacker). Also found on species/disarm and species/harm
COMSIG_HUMAN_CHECK_SHIELDSfrom /mob/living/carbon/human/proc/check_shields(): (atom/hit_by, damage, attack_text, attack_type, armour_penetration, damage_type)
COMSIG_HUMAN_CREATE_MOB_HUDfrom /mob/living/carbon/human/create_mob_hud()
COMSIG_SPECIES_GAINfrom datum/species/on_species_gain(): (datum/species/new_species, datum/species/old_species)
COMSIG_SPECIES_LOSSfrom datum/species/on_species_loss(): (datum/species/lost_species)
COMSIG_SONG_STARTsent to the instrument when a song starts playing
COMSIG_SONG_ENDsent to the instrument when a song stops playing
COMSIG_TURF_IS_WETComponent Specific Signals +(): Returns bitflags of wet values.
COMSIG_TURF_MAKE_DRY(max_strength, immediate, duration_decrease = INFINITY): Returns bool.
COMSIG_COMPONENT_CLEAN_ACTcalled on an object to clean it of cleanables. Usualy with soap: (num/strength)
COMSIG_COMPONENT_CLEAN_FACE_ACTcalled when you wash your face at a sink: (num/strength)
COMSIG_FOOD_EATENfrom base of obj/item/food/snacks/attack(): (mob/living/eater, mob/feeder)
COMSIG_ATOM_EXPOSE_REAGENTSfrom base of atom/expose_reagents(): (/list, /datum/reagents, chemholder, volume_modifier)
COMSIG_GIBS_STREAKfrom base of /obj/effect/decal/cleanable/blood/gibs/streak(): (list/directions, list/diseases)
COMSIG_ADD_MOOD_EVENTcalled when you send a mood event from anywhere in the code.
COMSIG_ADD_MOOD_EVENT_RNDMood event that only RnD members listen for
COMSIG_CLEAR_MOOD_EVENTcalled when you clear a mood event from anywhere in the code.
COMSIG_COMPONENT_NTNET_RECEIVEcalled on an object by its NTNET connection component on receive. (sending_id(number), sending_netname(text), data(datum/netdata))
COMSIG_HAS_NANITES() returns TRUE if nanites are found
COMSIG_NANITE_IS_STEALTHY() returns TRUE if nanites have stealth
COMSIG_NANITE_DELETE() deletes the nanite component
COMSIG_NANITE_GET_PROGRAMS(list/nanite_programs) - makes the input list a copy the nanites' program list
COMSIG_NANITE_GET_VOLUME(amount) Returns nanite amount
COMSIG_NANITE_SET_VOLUME(amount) Sets current nanite volume to the given amount
COMSIG_NANITE_ADJUST_VOLUME(amount) Adjusts nanite volume by the given amount
COMSIG_NANITE_SET_MAX_VOLUME(amount) Sets maximum nanite volume to the given amount
COMSIG_NANITE_SET_CLOUD(amount(0-100)) Sets cloud ID to the given amount
COMSIG_NANITE_SET_CLOUD_SYNC(method) Modify cloud sync status. Method can be toggle, enable or disable
COMSIG_NANITE_SET_SAFETY(amount) Sets safety threshold to the given amount
COMSIG_NANITE_SET_REGEN(amount) Sets regeneration rate to the given amount
COMSIG_NANITE_SIGNAL(code(1-9999)) Called when sending a nanite signal to a mob.
COMSIG_NANITE_COMM_SIGNAL(comm_code(1-9999), comm_message) Called when sending a nanite comm signal to a mob.
COMSIG_NANITE_SCAN(mob/user, full_scan) - sends to chat a scan of the nanites to the user, returns TRUE if nanites are detected
COMSIG_NANITE_UI_DATA(list/data, scan_level) - adds nanite data to the given data list - made for ui_data procs
COMSIG_NANITE_ADD_PROGRAM(datum/nanite_program/new_program, datum/nanite_program/source_program) Called when adding a program to a nanite component
COMPONENT_PROGRAM_INSTALLEDInstallation successful
COMPONENT_PROGRAM_NOT_INSTALLEDInstallation failed, but there are still nanites
COMSIG_NANITE_SYNC(datum/component/nanites, full_overwrite, copy_activation) Called to sync the target's nanites to a given nanite component
COMSIG_CONTAINS_STORAGE() - returns bool.
COMSIG_TRY_STORAGE_INSERT(obj/item/inserting, mob/user, silent, force) - returns bool
COMSIG_TRY_STORAGE_SHOW(mob/show_to, force) - returns bool.
COMSIG_TRY_STORAGE_HIDE_FROM(mob/hide_from) - returns bool
COMSIG_TRY_STORAGE_HIDE_ALLreturns bool
COMSIG_TRY_STORAGE_SET_LOCKSTATE(newstate)
COMSIG_IS_STORAGE_LOCKED() - returns bool. MUST CHECK IF STORAGE IS THERE FIRST!
COMSIG_TRY_STORAGE_TAKE_TYPE(type, atom/destination, amount = INFINITY, check_adjacent, force, mob/user, list/inserted) - returns bool - type can be a list of types.
COMSIG_TRY_STORAGE_FILL_TYPE(type, amount = INFINITY, force = FALSE). Force will ignore max_items, and amount is normally clamped to max_items.
COMSIG_TRY_STORAGE_TAKE(obj, new_loc, force = FALSE) - returns bool
COMSIG_TRY_STORAGE_QUICK_EMPTY(loc) - returns bool - if loc is null it will dump at parent location.
COMSIG_TRY_STORAGE_RETURN_INVENTORY(list/list_to_inject_results_into, recursively_search_inside_storages = TRUE)
COMSIG_TRY_STORAGE_CAN_INSERT(obj/item/insertion_candidate, mob/user, silent) - returns bool
COMSIG_TWOHANDED_WIELDfrom base of datum/component/two_handed/proc/wield(mob/living/carbon/user): (/mob/user)
COMSIG_TWOHANDED_UNWIELDfrom base of datum/component/two_handed/proc/unwield(mob/living/carbon/user): (/mob/user)
COMSIG_ACTION_TRIGGERfrom base of datum/action/proc/Trigger(): (datum/action)
COMSIG_ACTION_GRANTEDFrom /datum/action/Grant(): (mob/grant_to)
COMSIG_MOB_GRANTED_ACTIONFrom /datum/action/Grant(): (datum/action)
COMSIG_ACTION_REMOVEDFrom /datum/action/Remove(): (mob/removed_from)
COMSIG_MOB_REMOVED_ACTIONFrom /datum/action/Remove(): (datum/action)
COMSIG_ACTION_SCROLLEDFrom base of /atom/movable/screen/movable/action_button/MouseWheel(src, delta_x, delta_y, location, control, params)
COMSIG_GHOST_START_OBSERVINGfrom observer_base/do_observe(): (mob/now_followed)
COMSIG_GHOST_STOP_OBSERVINGfrom observer_base/do_observe(): (mob/no_longer_following)
COMSIG_XENO_SLIME_CLICK_CTRLfrom slime CtrlClickOn(): (/mob)
COMSIG_XENO_SLIME_CLICK_ALTfrom slime AltClickOn(): (/mob)
COMSIG_XENO_SLIME_CLICK_SHIFTfrom slime ShiftClickOn(): (/mob)
COMSIG_XENO_TURF_CLICK_SHIFTfrom turf ShiftClickOn(): (/mob)
COMSIG_XENO_TURF_CLICK_CTRLfrom turf AltClickOn(): (/mob)
COMSIG_XENO_MONKEY_CLICK_CTRLfrom monkey CtrlClickOn(): (/mob)
COMSIG_TRIGGERED_ALARMAlarm manager signals
COMSIG_OBJECTIVE_TARGET_FOUNDfrom datum/objective/proc/find_target(list/target_blacklist)
COMSIG_OBJECTIVE_CHECK_VALID_TARGETfrom datum/objective/is_invalid_target()
COMSIG_MOD_MODULE_SELECTEDCalled when a module is selected to be the active one from on_select(obj/item/mod/module/module)
COMSIG_MOD_DEPLOYEDCalled when a MOD deploys one or more of its parts.
COMSIG_MOD_RETRACTEDCalled when a MOD retracts one or more of its parts.
COMSIG_MOD_TOGGLEDCalled when a MOD is finished toggling itself.
COMSIG_MOD_ACTIVATECalled when a MOD activation is called from toggle_activate(mob/user)
MOD_CANCEL_ACTIVATECancels the suit's activation
COMSIG_MOD_MODULE_REMOVEDCalled when a MOD finishes having a module removed from it.
COMSIG_MOD_MODULE_ADDEDCalled when a MOD finishes having a module added to it.
COMSIG_MOD_MODULE_REMOVALCalled when a MOD is having modules removed from crowbar_act(mob/user, obj/crowbar)
MOD_CANCEL_REMOVALCancels the removal of modules
COMSIG_MODULE_TRIGGEREDCalled 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)
MOD_ABORT_USECancels activation, with no message. Include feedback on your cancel.
COMSIG_MODULE_ACTIVATEDCalled when a module activates, after all checks have passed and cooldown started.
COMSIG_MODULE_DEACTIVATEDCalled when a module deactivates, after all checks have passed.
COMSIG_MODULE_USEDCalled when a module is used, after all checks have passed and cooldown started.
COMSIG_MOD_WEARER_SETCalled when the MODsuit wearer is set.
COMSIG_MOD_WEARER_UNSETCalled when the MODsuit wearer is unset.
COMSIG_TICKER_ROUND_STARTINGCalled when the round has started, but before GAME_STATE_PLAYING.
COMSIG_CURSED_SLOT_MACHINE_USEfrom /obj/structure/cursed_slot_machine/handle_status_effect() when someone pulls the handle on the slot machine
SLOT_MACHINE_USE_CANCELwe've used up the number of times we may use this slot machine. womp womp.
SLOT_MACHINE_USE_POSTPONEwe haven't used up all our attempts to gamble away our life but we should chill for a few seconds
COMSIG_CURSED_SLOT_MACHINE_LOSTfrom /obj/structure/cursed_slot_machine/determine_victor() when someone loses.
COMSIG_GLOB_CURSED_SLOT_MACHINE_WONfrom /obj/structure/cursed_slot_machine/determine_victor() when someone finally wins.
COMSIG_DO_MOB_STRIPfrom of mob/MouseDrop(): (/atom/over, /mob/user)
COMSIG_ADMIN_DECONTAMINATEUsed by admin-tooling to remove radiation
COMSIG_SHADE_TO_CONSTRUCT_TRANSFERSent when bodies transfer between shades/shards and constructs

Define Details

+

COMPONENT_BLOCK_DEFIB + + +

+

If returned from LIVING_BEFORE_DEFIB or LIVING_DEFIBBED, the defibrillation will fail

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_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_SWAP + + +

+

Prevent the mob from changing hands

COMPONENT_BLOCK_UNTILT + + +

+

Return this to block an untilt attempt

COMPONENT_CANCEL_ALTCLICK + + +

+

Cancel the alt-click, since this isn't properly part of the attack chain

COMPONENT_CANCEL_ATTACK_CHAIN + + +

+

This response cancels the attack chain entirely. If sent early, it might cause some later effects to be skipped.

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_ITEM_BLOCK_UNEQUIP + + +

+

only the pre unequip can be cancelled

COMPONENT_NO_AFTERATTACK + + +

+

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

COMPONENT_PROGRAM_INSTALLED + + +

+

Installation successful

COMPONENT_PROGRAM_NOT_INSTALLED + + +

+

Installation failed, but there are still nanites

COMSIG_ACTION_GRANTED + + +

+

From /datum/action/Grant(): (mob/grant_to)

COMSIG_ACTION_REMOVED + + +

+

From /datum/action/Remove(): (mob/removed_from)

COMSIG_ACTION_SCROLLED + + +

+

From base of /atom/movable/screen/movable/action_button/MouseWheel(src, delta_x, delta_y, location, control, params)

COMSIG_ACTION_TRIGGER + + +

+

from base of datum/action/proc/Trigger(): (datum/action)

COMSIG_ADD_MOOD_EVENT + + +

+

called when you send a mood event from anywhere in the code.

COMSIG_ADD_MOOD_EVENT_RND + + +

+

Mood event that only RnD members listen for

COMSIG_ADMIN_DECONTAMINATE + + +

+

Used by admin-tooling to remove radiation

COMSIG_AREA_ENTERED + + +

+

from base of area/Entered(): (atom/movable/M)

COMSIG_AREA_EXITED + + +

+

from base of area/Exited(): (atom/movable/M)

COMSIG_ASSEMBLY_PULSED + + +

+

Called by /obj/item/assembly/signaler(called_from_radio)

COMSIG_ATOM_ACID_ACT + + +

+

from base of atom/acid_act(): (acidpwr, acid_volume)

COMSIG_ATOM_ANALYSER_ACT + + +

+

from base of atom/analyser_act(): (mob/living/user, obj/item/I)

COMSIG_ATOM_ATTACK_ANIMAL + + +

+

from base of atom/animal_attack(): (/mob/user)

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_BSA_BEAM + + +

+

from obj/machinery/bsa/full/proc/fire(): ()

COMSIG_ATOM_BULLET_ACT + + +

+

from base of atom/bullet_act(): (/obj/projectile, def_zone)

COMSIG_ATOM_BUMPED + + +

+

from base of atom/Bumped(): (/atom/movable)

COMSIG_ATOM_CONTENTS_DEL + + +

+

from base of atom/handle_atom_del(): (atom/deleted)

COMSIG_ATOM_CREATED + + +

+

from base of atom/proc/Initialize(): sent any time a new atom is created

COMSIG_ATOM_CROWBAR_ACT + + +

+

from base of atom/crowbar_act(): (mob/living/user, obj/item/I)

COMSIG_ATOM_DIR_CHANGE + + +

+

from base of atom/setDir(): (old_dir, new_dir)

COMSIG_ATOM_EMAG_ACT + + +

+

from base of atom/emag_act(): (/mob/user)

COMSIG_ATOM_EMP_ACT + + +

+

from base of atom/emp_act(): (severity)

COMSIG_ATOM_ENTERED + + +

+

from base of atom/Entered(): (atom/movable/entering, /atom)

COMSIG_ATOM_EXIT + + +

+

from base of atom/Exit(): (/atom/movable/exiting, /atom/newloc)

COMSIG_ATOM_EXITED + + +

+

from base of atom/Exited(): (atom/movable/exiting, atom/newloc)

COMSIG_ATOM_EXPOSE_REAGENTS + + +

+

from base of atom/expose_reagents(): (/list, /datum/reagents, chemholder, volume_modifier)

COMSIG_ATOM_EX_ACT + + +

+

from base of atom/ex_act(): (severity, target)

COMSIG_ATOM_FIRE_ACT + + +

+

from base of atom/fire_act(): (exposed_temperature, exposed_volume)

COMSIG_ATOM_GET_EXAMINE_NAME + + +

+

from base of atom/get_examine_name(): (/mob, list/overrides)

COMSIG_ATOM_HAS_GRAVITY + + +

+

from base of atom/has_gravity(): (turf/location, list/forced_gravities)

COMSIG_ATOM_HEARER_IN_VIEW + + +

+

called when an atom is added to the hearers on get_hearers_in_view(): (list/processing_list, list/hearers)

COMSIG_ATOM_HITBY + + +

+

from base of atom/hitby(atom/movable/AM, skipcatch, hitpush, blocked, datum/thrownthing/throwingdatum)

COMSIG_ATOM_HULK_ATTACK + + +

+

from base of atom/attack_hulk(): (/mob/living/carbon/human)

COMSIG_ATOM_INITIALIZED_ON + + +

+

Called from atom/Initialize() of target: (atom/target)

COMSIG_ATOM_INTERCEPT_TELEPORT + + +

+

called when teleporting into a protected turf: (channel, turf/origin)

COMSIG_ATOM_INTERCEPT_Z_FALL + + +

+

called for each movable in a turf contents on /turf/zImpact(): (atom/movable/A, levels)

COMSIG_ATOM_MULTITOOL_ACT + + +

+

from base of atom/multitool_act(): (mob/living/user, obj/item/I)

COMSIG_ATOM_NARSIE_ACT + + +

+

from base of atom/narsie_act(): ()

COMSIG_ATOM_NO_UPDATE_DESC + + +

+

If returned from COMSIG_ATOM_UPDATE_APPEARANCE it prevents the atom from updating its desc.

COMSIG_ATOM_NO_UPDATE_ICON + + +

+

If returned from COMSIG_ATOM_UPDATE_APPEARANCE it prevents the atom from updating its icon.

COMSIG_ATOM_NO_UPDATE_ICON_STATE + + +

+

If returned from COMSIG_ATOM_UPDATE_ICON it prevents the atom from updating its icon state.

COMSIG_ATOM_NO_UPDATE_NAME + + +

+

If returned from COMSIG_ATOM_UPDATE_APPEARANCE it prevents the atom from updating its name.

COMSIG_ATOM_NO_UPDATE_OVERLAYS + + +

+

If returned from COMSIG_ATOM_UPDATE_ICON it prevents the atom from updating its overlays.

COMSIG_ATOM_ORBITER_STOP + + +

+

called on an atom who has stopped orbiting another atom (atom/orbiter, atom/formerly_orbited)

COMSIG_ATOM_ORBIT_BEGIN + + +

+

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

COMSIG_ATOM_ORBIT_STOP + + +

+

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

COMSIG_ATOM_PREHIT + + +

+

from base of atom/atom_prehit(obj/item/projectile/P):

COMSIG_ATOM_RAD_ACT + + +

+

from base of atom/rad_act(intensity)

COMSIG_ATOM_RAD_CONTAMINATING + + +

+

from base of datum/radiation_wave/radiate(): (strength)

COMSIG_ATOM_RAD_PROBE + + +

+

from proc/get_rad_contents(): ()

COMSIG_ATOM_RAD_WAVE_PASSING + + +

+

from base of datum/radiation_wave/check_obstructions(): (datum/radiation_wave, width)

COMSIG_ATOM_RCD_ACT + + +

+

from base of atom/rcd_act(): (/mob, /obj/item/construction/rcd, passed_mode)

COMSIG_ATOM_SCREWDRIVER_ACT + + +

+

from base of atom/screwdriver_act(): (mob/living/user, obj/item/I)

COMSIG_ATOM_SET_LIGHT + + +

+

from base of atom/set_light(): (l_range, l_power, l_color)

COMSIG_ATOM_SING_PULL + + +

+

from base of atom/singularity_pull(): (S, current_size)

COMSIG_ATOM_START_PULL + + +

+

called on a movable (NOT living) when someone starts pulling it (atom/movable/puller, state, force)

COMSIG_ATOM_UPDATED_ICON + + +

+

from base of /atom/update_icon: (signalOut, did_anything)

COMSIG_ATOM_UPDATE_APPEARANCE + + +

+

from base of /atom/proc/update_appearance: (updates)

COMSIG_ATOM_UPDATE_DESC + + +

+

from base of /atom/proc/update_desc: (updates)

COMSIG_ATOM_UPDATE_ICON + + +

+

from base of /atom/update_icon: ()

COMSIG_ATOM_UPDATE_ICON_STATE + + +

+

Sent after atom/update_icon_state is called by /atom/update_icon: ()

COMSIG_ATOM_UPDATE_NAME + + +

+

from base of /atom/proc/update_name: (updates)

COMSIG_ATOM_UPDATE_OVERLAYS + + +

+

Sent after atom/update_overlays is called by /atom/update_icon: (list/new_overlays)

COMSIG_ATOM_UPDATE_SHARPNESS + + +

+

Called when an atom is sharpened or dulled.

COMSIG_ATOM_WELDER_ACT + + +

+

from base of atom/welder_act(): (mob/living/user, obj/item/I)

COMSIG_ATOM_WIRECUTTER_ACT + + +

+

from base of atom/wirecutter_act(): (mob/living/user, obj/item/I)

COMSIG_ATOM_WRENCH_ACT + + +

+

from base of atom/wrench_act(): (mob/living/user, obj/item/I)

COMSIG_AUTOFIRE_ONMOUSEDOWN + + +

+

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_BODY_TRANSFER_TO + + +

+

called on the mob instead of the mind

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_EMBED_REMOVAL + + +

+

called when removing a given item from a mob, from mob/living/carbon/remove_embedded_object(mob/living/carbon/target, /obj/item)

COMSIG_CARBON_EMBED_RIP + + +

+

defined twice, in carbon and human's topics, fired when interacting with a valid embedded_object to pull it out (mob/living/carbon/target, /obj/item, /obj/item/bodypart/L)

COMSIG_CARBON_ENTER_STAMINACRIT + + +

+

From /mob/living/carbon/enter_stamcrit()

COMSIG_CARBON_EQUIP_HAT + + +

+

from /mob/living/carbon/doUnEquip(obj/item/I, force, newloc, no_move, invdrop, silent)

COMSIG_CARBON_EXIT_STAMINACRIT + + +

+

From /mob/living/carbon/update_stamina()

COMSIG_CARBON_FLASH_EYES + + +

+

From /mob/living/carbon/flash_eyes()

COMSIG_CARBON_GAIN_ORGAN + + +

+

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_SOUNDBANG + + +

+

from base of mob/living/carbon/soundbang_act(): (list(intensity))

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_UNEQUIP_HAT + + +

+

from /mob/living/carbon/doUnEquip(obj/item/I, force, newloc, no_move, invdrop, silent)

COMSIG_CARBON_UPDATE_HANDCUFFED + + +

+

From /mob/living/carbon/update_handcuffed()

COMSIG_CLEAR_MOOD_EVENT + + +

+

called when you clear a mood event from anywhere in the code.

COMSIG_CLICK + + +

+

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_CLIENT_CLICK + + +

+

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_COMPONENT_ADDED + + +

+

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

COMSIG_COMPONENT_CLEAN_ACT + + +

+

called on an object to clean it of cleanables. Usualy with soap: (num/strength)

COMSIG_COMPONENT_CLEAN_FACE_ACT + + +

+

called when you wash your face at a sink: (num/strength)

COMSIG_COMPONENT_NTNET_RECEIVE + + +

+

called on an object by its NTNET connection component on receive. (sending_id(number), sending_netname(text), data(datum/netdata))

COMSIG_COMPONENT_REMOVING + + +

+

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

COMSIG_CONTAINS_STORAGE + + +

+

() - returns bool.

COMSIG_CROSSED_MOVABLE + + +

+

when we cross over something (calling Crossed() on that atom)

COMSIG_CURSED_SLOT_MACHINE_LOST + + +

+

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_DEFIB_PADDLES_APPLIED + + +

+

Defib-specific signals +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_DO_MOB_STRIP + + +

+

from of mob/MouseDrop(): (/atom/over, /mob/user)

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_EMBED_TRY_FORCE + + +

+

sent when trying to force an embed (mainly for projectiles, only used in the embed element)

COMSIG_ENTER_AREA + + +

+

from base of area/Entered(): (/area)

COMSIG_EXIT_AREA + + +

+

from base of area/Exited(): (/area)

COMSIG_FOOD_EATEN + + +

+

from base of obj/item/food/snacks/attack(): (mob/living/eater, mob/feeder)

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_GIBS_STREAK + + +

+

from base of /obj/effect/decal/cleanable/blood/gibs/streak(): (list/directions, list/diseases)

COMSIG_GLOB_BUTTON_PRESSED + + +

+

ingame button pressed (/obj/machinery/button/button)

COMSIG_GLOB_CABLE_UPDATED + + +

+

cable was placed or joined somewhere : (turf)

COMSIG_GLOB_CURSED_SLOT_MACHINE_WON + + +

+

from /obj/structure/cursed_slot_machine/determine_victor() when someone finally wins.

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_LIVING_SAY_SPECIAL + + +

+

global living say plug - use sparingly: (mob/speaker , message)

COMSIG_GLOB_MOB_CREATED + + +

+

mob was created somewhere : (mob)

COMSIG_GLOB_MOB_DEATH + + +

+

mob died somewhere : (mob , gibbed)

COMSIG_GLOB_NEW_Z + + +

+

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

COMSIG_GLOB_PLAY_CINEMATIC + + +

+

called by datum/cinematic/play() : (datum/cinematic/new_cinematic)

COMSIG_GLOB_VAR_EDIT + + +

+

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

COMSIG_GRENADE_ARMED + + +

+

called in /obj/item/gun/process_fire (user, target, params, zone_override)

COMSIG_GRENADE_PRIME + + +

+

called in /obj/item/gun/process_fire (user, target, params, zone_override)

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_HAS_NANITES + + +

+

() returns TRUE if nanites are found

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(): (atom/hit_by, damage, attack_text, attack_type, armour_penetration, damage_type)

COMSIG_HUMAN_CREATE_MOB_HUD + + +

+

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

COMSIG_HUMAN_DISARM_HIT + + +

+

Hit by successful disarm attack (mob/living/carbon/human/attacker,zone_targeted)

COMSIG_HUMAN_EARLY_UNARMED_ATTACK + + +

+

from mob/living/carbon/human/UnarmedAttack(): (atom/target, proximity)

COMSIG_HUMAN_LOGIN + + +

+

called in human/login

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_IMPLANT_ACTIVATED + + +

+

from base of /obj/item/bio_chip/proc/activate(): ()

+

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_IS_STORAGE_LOCKED + + +

+

() - returns bool. MUST CHECK IF STORAGE IS THERE FIRST!

COMSIG_ITEM_AFTERATTACK + + +

+

from base of obj/item/afterattack(): (atom/target, mob/user, params)

COMSIG_ITEM_ATTACK + + +

+

from base of obj/item/attack(): (/mob/living/target, /mob/living/user)

COMSIG_ITEM_ATTACK_OBJ + + +

+

from base of obj/item/attack_obj(): (/obj, /mob)

COMSIG_ITEM_ATTACK_QDELETED + + +

+

from base of obj/item/attack_qdeleted(): (atom/target, mob/user, params)

COMSIG_ITEM_ATTACK_SELF + + +

+

from base of obj/item/attack_self(): (/mob)

COMSIG_ITEM_ATTACK_ZONE + + +

+

from base of mob/living/carbon/attacked_by(): (mob/living/carbon/target, mob/living/user, hit_zone)

COMSIG_ITEM_BEING_ATTACKED + + +

+

from base of obj/item/pre_attack(): (atom/target, mob/user, params)

COMSIG_ITEM_DISABLE_EMBED + + +

+

from [/obj/item/proc/disableEmbedding]:

COMSIG_ITEM_DROPPED + + +

+

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

COMSIG_ITEM_GET_WORN_OVERLAYS + + +

+

Called by /obj/item/proc/worn_overlays(list/overlays, mutable_appearance/standing, isinhands, icon_file)

COMSIG_ITEM_HIT_REACT + + +

+

from base of obj/item/hit_reaction(): (list/args)

COMSIG_ITEM_IMBUE_SOUL + + +

+

return a truthy value to prevent ensouling, checked in /datum/spell/lichdom/cast(): (mob/user)

COMSIG_ITEM_MARK_RETRIEVAL + + +

+

called before marking an object for retrieval, checked in /datum/spell/summonitem/cast() : (mob/user)

COMSIG_ITEM_MICROWAVE_ACT + + +

+

called on item when microwaved (): (obj/machinery/microwave/M)

COMSIG_ITEM_PICKUP + + +

+

from base of obj/item/pickup(): (/mob/taker)

COMSIG_ITEM_PRE_ATTACK + + +

+

from base of obj/item/pre_attack(): (atom/target, mob/user, params)

COMSIG_ITEM_PRE_UNEQUIP + + +

+

from base of obj/item/equipped(): (/mob/equipper, slot) +called on /obj/item before unequip from base of [mob/proc/doUnEquip]: (force, atom/newloc, no_move, invdrop, silent)

COMSIG_ITEM_SHARPEN_ACT + + +

+

from base of item/sharpener/attackby(): (amount, max)

COMSIG_ITEM_SOLD + + +

+

called when an item is sold by the exports subsystem

COMSIG_ITEM_SPLIT_PROFIT + + +

+

called when getting the item's exact ratio for cargo's profit.

COMSIG_ITEM_SPLIT_PROFIT_DRY + + +

+

called when getting the item's exact ratio for cargo's profit, without selling the item.

COMSIG_ITEM_SPLIT_VALUE + + +

+

called when a wrapped up item is opened by hand

COMSIG_ITEM_WEARERCROSSED + + +

+

called on item when crossed by something (): (/atom/movable, mob/living/crossed)

COMSIG_JOB_RECEIVED + + +

+

Whenever EquipRanked is called, called after job is set

COMSIG_LIVING_ATTACH_LIMB + + +

+

from base of /obj/item/bodypart/proc/attach_limb(): (new_limb, special) allows you to fail limb attachment

COMSIG_LIVING_CAN_TRACK + + +

+

from base of /mob/living/can_track(): (mob/user)

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_EXTINGUISHED + + +

+

from base of mob/living/ExtinguishMob() (/mob/living)

COMSIG_LIVING_FIRE_TICK + + +

+

sent from living mobs every tick of fire

COMSIG_LIVING_IGNITED + + +

+

from base of mob/living/IgniteMob() (/mob/living)

COMSIG_LIVING_MINOR_SHOCK + + +

+

sent by stuff like stunbatons and tasers: ()

COMSIG_LIVING_MOB_BUMP + + +

+

From base of mob/living/MobBump() (mob/living)

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_START_PULL + + +

+

called on /living when someone starts pulling it (atom/movable/puller, state, force)

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_WRITE_MEMORY + + +

+

from base of mob/living/Write_Memory()

COMSIG_MACHINERY_BROKEN + + +

+

from /obj/machinery/obj_break(damage_flag): (damage_flag)

COMSIG_MACHINERY_POWER_LOST + + +

+

from base power_change() when power is lost

COMSIG_MACHINERY_POWER_RESTORED + + +

+

from base power_change() when power is restored

COMSIG_MECHA_ACTION_ACTIVATE + + +

+

sent from mecha action buttons to the mecha they're linked to

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_MINE_TRIGGERED + + +

+

from [/obj/effect/mine/proc/triggermine]:

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_ATTACK_HAND + + +

+

from base of atom/attack_hand(): (mob/user)

COMSIG_MOB_ATTACK_RANGED + + +

+

from base of mob/RangedAttack(): (atom/A, params)

COMSIG_MOB_CLICKON + + +

+

from base of mob/clickon(): (atom/A, params)

COMSIG_MOB_CLIENT_LOGIN + + +

+

sent when a mob/login() finishes: (client)

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_EXAMINATE + + +

+

from base of /mob/verb/examinate(): (atom/target)

COMSIG_MOB_GRANTED_ACTION + + +

+

From /datum/action/Grant(): (datum/action)

COMSIG_MOB_HUD_CREATED + + +

+

from base of mob/create_mob_hud(): ()

COMSIG_MOB_ITEM_AFTERATTACK + + +

+

from base of obj/item/afterattack(): (atom/target, mob/user, proximity_flag, click_parameters)

COMSIG_MOB_ITEM_ATTACK + + +

+

from base of /obj/item/attack(): (mob/M, mob/user)

COMSIG_MOB_ITEM_ATTACK_QDELETED + + +

+

from base of obj/item/attack_qdeleted(): (atom/target, mob/user, proxiumity_flag, click_parameters)

COMSIG_MOB_LOGIN + + +

+

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_RECEIVE_MAGIC + + +

+

from base of mob/anti_magic_check(): (mob/user, magic, holy, tinfoil, chargecost, self, protection_sources)

COMSIG_MOB_REMOVED_ACTION + + +

+

From /datum/action/Remove(): (datum/action)

COMSIG_MOB_SAY + + +

+

from /mob/living/say(): ()

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_THROW + + +

+

from base of /mob/throw_item(): (atom/target)

COMSIG_MOB_TRY_FIRE + + +

+

called in /obj/item/gun/afterattack (user, target, flag, params)

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_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_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_MOVABLE_BUCKLE + + +

+

from base of atom/movable/buckle_mob(): (mob, force)

COMSIG_MOVABLE_BUMP + + +

+

from base of atom/movable/Bump(): (/atom)

COMSIG_MOVABLE_CROSS + + +

+

from base of atom/movable/Cross(): (/atom/movable)

COMSIG_MOVABLE_CROSSED + + +

+

from base of atom/movable/Crossed(): (/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_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_HEAR + + +

+

from base of atom/movable/Hear(): (proc args list(message, atom/movable/speaker, message_language, raw_message, radio_freq, list/spans, message_mode))

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_POST_THROW + + +

+

from base of atom/movable/throw_at(): (datum/thrownthing, spin)

COMSIG_MOVABLE_PRE_MOVE + + +

+

from base of atom/movable/Moved(): (/atom)

COMSIG_MOVABLE_PRE_THROW + + +

+

from base of atom/movable/throw_at(): (list/args)

COMSIG_MOVABLE_SECLUDED_LOCATION + + +

+

called when the movable is placed in an unaccessible area, used for stationloving: ()

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_UNCROSSED + + +

+

from base of atom/movable/Uncrossed(): (/atom/movable)

COMSIG_MOVABLE_UNTILTED + + +

+

Called when something gets untilted, from /datum/element/tilted/proc/do_untilt(atom/movable/source, mob/user)

COMSIG_MOVABLE_Z_CHANGED + + +

+

from base of atom/movable/onTransitZ(): (old_z, new_z)

COMSIG_NANITE_ADD_PROGRAM + + +

+

(datum/nanite_program/new_program, datum/nanite_program/source_program) Called when adding a program to a nanite component

COMSIG_NANITE_ADJUST_VOLUME + + +

+

(amount) Adjusts nanite volume by the given amount

COMSIG_NANITE_COMM_SIGNAL + + +

+

(comm_code(1-9999), comm_message) Called when sending a nanite comm signal to a mob.

COMSIG_NANITE_DELETE + + +

+

() deletes the nanite component

COMSIG_NANITE_GET_PROGRAMS + + +

+

(list/nanite_programs) - makes the input list a copy the nanites' program list

COMSIG_NANITE_GET_VOLUME + + +

+

(amount) Returns nanite amount

COMSIG_NANITE_IS_STEALTHY + + +

+

() returns TRUE if nanites have stealth

COMSIG_NANITE_SCAN + + +

+

(mob/user, full_scan) - sends to chat a scan of the nanites to the user, returns TRUE if nanites are detected

COMSIG_NANITE_SET_CLOUD + + +

+

(amount(0-100)) Sets cloud ID to the given amount

COMSIG_NANITE_SET_CLOUD_SYNC + + +

+

(method) Modify cloud sync status. Method can be toggle, enable or disable

COMSIG_NANITE_SET_MAX_VOLUME + + +

+

(amount) Sets maximum nanite volume to the given amount

COMSIG_NANITE_SET_REGEN + + +

+

(amount) Sets regeneration rate to the given amount

COMSIG_NANITE_SET_SAFETY + + +

+

(amount) Sets safety threshold to the given amount

COMSIG_NANITE_SET_VOLUME + + +

+

(amount) Sets current nanite volume to the given amount

COMSIG_NANITE_SIGNAL + + +

+

(code(1-9999)) Called when sending a nanite signal to a mob.

COMSIG_NANITE_SYNC + + +

+

(datum/component/nanites, full_overwrite, copy_activation) Called to sync the target's nanites to a given nanite component

COMSIG_NANITE_UI_DATA + + +

+

(list/data, scan_level) - adds nanite data to the given data list - made for ui_data procs

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_OBJ_DECONSTRUCT + + +

+

from base of obj/deconstruct(): (disassembled)

COMSIG_OBJ_DEFAULT_UNFASTEN_WRENCH + + +

+

from base of code/game/machinery

COMSIG_OBJ_HIDE + + +

+

from base of /turf/proc/levelupdate(). (intact) true to hide and false to unhide

COMSIG_OBJ_SETANCHORED + + +

+

called in /obj/structure/setAnchored(): (value)

COMSIG_OBJ_UPDATE_ICON + + +

+

called in /obj/update_icon()

COMSIG_PARENT_ATTACKBY + + +

+

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

COMSIG_PARENT_EXAMINE + + +

+

from base of atom/examine(): (/mob)

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_PDA_CHANGE_RINGTONE + + +

+

called on pda when the user changes the ringtone: (mob/living/user, new_ringtone)

COMSIG_PELLET_CLOUD_INIT + + +

+

sent to targets during the process_hit proc of projectiles

COMSIG_PEN_ROTATED + + +

+

called after rotation in /obj/item/pen/attack_self(): (rotation, mob/living/carbon/user)

COMSIG_POWERNET_POWER_CHANGE + + +

+

from base of /datum/local_powernet/proc/power_change()

COMSIG_PROCESS_BORGCHARGER_OCCUPANT + + +

+

sent from borg recharge stations: (amount, repairs)

COMSIG_PROJECTILE_BEFORE_FIRE + + +

+

from base of /obj/projectile/proc/fire(): (obj/projectile, atom/original_target)

COMSIG_PROJECTILE_FIRE + + +

+

from the base of /obj/projectile/proc/fire(): ()

COMSIG_PROJECTILE_ON_HIT + + +

+

from base of /obj/projectile/proc/on_hit(): (atom/movable/firer, atom/target, Angle)

COMSIG_PROJECTILE_PREHIT + + +

+

sent to targets during the process_hit proc of projectiles

COMSIG_PROJECTILE_RANGE_OUT + + +

+

sent to targets during the process_hit proc of projectiles

COMSIG_PROJECTILE_SELF_ON_HIT + + +

+

from base of /obj/projectile/proc/on_hit(): (atom/movable/firer, atom/target, Angle)

COMSIG_RADIO_NEW_FREQUENCY + + +

+

called from base of /obj/item/radio/proc/set_frequency(): (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_SHADE_TO_CONSTRUCT_TRANSFER + + +

+

Sent when bodies transfer between shades/shards and constructs

COMSIG_SHOES_STEP_ACTION + + +

+

from [/mob/living/carbon/human/Move]: ()

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_LOSS + + +

+

from datum/species/on_species_loss(): (datum/species/lost_species)

COMSIG_STRUCTURE_UNWRAPPED + + +

+

called when a wrapped up structure is opened by hand

COMSIG_SUIT_SPACE_TOGGLE + + +

+

from base of /obj/item/clothing/suit/space/proc/toggle_spacesuit(): (obj/item/clothing/suit/space/suit)

COMSIG_SUN_MOVED + + +

+

signals from globally accessible objects +from SSsun when the sun changes position : (azimuth)

COMSIG_TICKER_ROUND_STARTING + + +

+

Called when the round has started, but before GAME_STATE_PLAYING.

COMSIG_TOOL_ATTACK + + +

+

from base of [/obj/item/proc/tool_attack_chain]: (atom/tool, mob/user)

COMSIG_TOOL_IN_USE + + +

+

from base of [/obj/item/proc/tool_check_callback]: (mob/living/user)

COMSIG_TOOL_START_USE + + +

+

from base of [/obj/item/proc/tool_start_check]: (mob/living/user)

COMSIG_TOPIC + + +

+

generic topic handler (usr, href_list)

COMSIG_TRIGGERED_ALARM + + +

+

Alarm manager signals

COMSIG_TRY_STORAGE_CAN_INSERT + + +

+

(obj/item/insertion_candidate, mob/user, silent) - returns bool

COMSIG_TRY_STORAGE_FILL_TYPE + + +

+

(type, amount = INFINITY, force = FALSE). Force will ignore max_items, and amount is normally clamped to max_items.

COMSIG_TRY_STORAGE_HIDE_ALL + + +

+

returns bool

COMSIG_TRY_STORAGE_HIDE_FROM + + +

+

(mob/hide_from) - returns bool

COMSIG_TRY_STORAGE_INSERT + + +

+

(obj/item/inserting, mob/user, silent, force) - returns bool

COMSIG_TRY_STORAGE_QUICK_EMPTY + + +

+

(loc) - returns bool - if loc is null it will dump at parent location.

COMSIG_TRY_STORAGE_RETURN_INVENTORY + + +

+

(list/list_to_inject_results_into, recursively_search_inside_storages = TRUE)

COMSIG_TRY_STORAGE_SET_LOCKSTATE + + +

+

(newstate)

COMSIG_TRY_STORAGE_SHOW + + +

+

(mob/show_to, force) - returns bool.

COMSIG_TRY_STORAGE_TAKE + + +

+

(obj, new_loc, force = FALSE) - returns bool

COMSIG_TRY_STORAGE_TAKE_TYPE + + +

+

(type, atom/destination, amount = INFINITY, check_adjacent, force, mob/user, list/inserted) - returns bool - type can be a list of types.

COMSIG_TURF_CHANGE + + +

+

from base of turf/ChangeTurf(): (path, list/new_baseturfs, flags, list/transferring_comps)

COMSIG_TURF_HAS_GRAVITY + + +

+

from base of atom/has_gravity(): (atom/asker, list/forced_gravities)

COMSIG_TURF_IS_WET + + +

+

Component Specific Signals +(): Returns bitflags of wet values.

COMSIG_TURF_MAKE_DRY + + +

+

(max_strength, immediate, duration_decrease = INFINITY): Returns bool.

COMSIG_TURF_MULTIZ_NEW + + +

+

from base of turf/New(): (turf/source, direction)

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_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)

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

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

+ + + diff --git a/code/__DEFINES/directions.html b/code/__DEFINES/directions.html new file mode 100644 index 0000000000000..5bedc0d9454b5 --- /dev/null +++ b/code/__DEFINES/directions.html @@ -0,0 +1,76 @@ + + + + + + + code/__DEFINES/directions.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/directions.dm + +

+ + + + + + + +
NO_DIRECTIONdefine purely for readability, cables especially need to use this as NO_DIRECTION represents a "node"
FLIP_DIR_HORIZONTALLYUsing 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_VERTICALLYFlips a direction along the vertical axis, will convert N -> S, S -> N, NE -> SE, SW -> NW, etc
IS_DIR_DIAGONALfor 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
IS_DIR_CARDINALreturns TRUE if direction is cardinal and false if not
REVERSE_DIRInverse direction, taking into account UP|DOWN if necessary.

Define Details

+

FLIP_DIR_HORIZONTALLY + + + +

+

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"

REVERSE_DIR + + + +

+

Inverse direction, taking into account UP|DOWN if necessary.

+ + + diff --git a/code/__DEFINES/economy_defines.html b/code/__DEFINES/economy_defines.html new file mode 100644 index 0000000000000..3669f348dde00 --- /dev/null +++ b/code/__DEFINES/economy_defines.html @@ -0,0 +1,91 @@ + + + + + + + code/__DEFINES/economy_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/economy_defines.dm + +

+ + + + + + + + + + + + + +
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_PINBefore accessing this account, the pin number must be provided
ACCOUNT_SECURITY_RESTRICTEDThis account can only be accessed through restricted terminals
ACCOUNT_SECURITY_CCThis acount can only be accessed by admins/CC characters
ACCOUNT_SECURITY_VENDORThis account is only accessible to NPCs and Vendors (aka, only through code)
CREW_MEMBER_STARTING_BALANCESTARTING CASH AMOUNTS
CREW_BASE_PAY_LOWBASE PAY AMOUNTS
DATABASE_LOG_THRESHHOLDTransactions on money accounts will automatically be logged if they involve over 2500 space credits
MAX_STACKABLE_CASH//CASH LIMITS/CAPS///// +The total amount of space cash that can be stacked
MERCH_CAT_APPARELmerch computer categories
SUPPLY_EMERGENCYsupply packs
MAIL_DELIVERY_BONUSmail deliveries

Define Details

+

ACCOUNT_SECURITY_CC + + +

+

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_BASE_PAY_LOW + + +

+

BASE PAY AMOUNTS

CREW_MEMBER_STARTING_BALANCE + + +

+

STARTING CASH 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

+ + + diff --git a/code/__DEFINES/economy_event_defines.html b/code/__DEFINES/economy_event_defines.html new file mode 100644 index 0000000000000..6386fabc3e1b1 --- /dev/null +++ b/code/__DEFINES/economy_event_defines.html @@ -0,0 +1,37 @@ + + + + + + + code/__DEFINES/economy_event_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/economy_event_defines.dm + +

+ + + +
RANDOM_STORY_RIOTSRandom stories for newscasters
TRADE_GOOD_DEFAULTTrade goods for trade destinations

Define Details

+

RANDOM_STORY_RIOTS + + +

+

Random stories for newscasters

TRADE_GOOD_DEFAULT + + +

+

Trade goods for trade destinations

+ + + diff --git a/code/__DEFINES/emotes_defines.html b/code/__DEFINES/emotes_defines.html new file mode 100644 index 0000000000000..3faac3ca1089c --- /dev/null +++ b/code/__DEFINES/emotes_defines.html @@ -0,0 +1,149 @@ + + + + + + + code/__DEFINES/emotes_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/emotes_defines.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + +
EMOTE_VISIBLEGeneral defines used for emotes +Emote is visible. These emotes will be runechatted.
EMOTE_AUDIBLEEmote is audible (in character).
EMOTE_FORCE_NO_RUNECHATRegardless of its existing flags, an emote with this flag will not be sent to runechat.
EMOTE_MOUTHThis emote uses the mouth, and so should be blocked if the user is muzzled or can't breathe (for humans).
EMOTE_READYThe user is not on emote cooldown, and is ready to emote whenever.
EMOTE_INFINITEThe user can spam emotes to their heart's content.
EMOTE_ADMIN_BLOCKEDThe user cannot emote as they have been blocked by an admin.
EMOTE_ON_COOLDOWNThe user cannot emote until their cooldown expires.
EMOTE_PARAM_SEPARATORMarker to separate an emote key from its parameters in user input.
DEFAULT_EMOTE_COOLDOWNDefault cooldown for normal (non-audio) emotes.
AUDIO_EMOTE_COOLDOWNDefault cooldown for emote-emitted audio.
AUDIO_EMOTE_UNINTENTIONAL_COOLDOWNCooldown for emotes that are emitted unintentionally, to prevent them from getting audibly spammy.
EMOTE_TARGET_BHVR_MUST_MATCHIf this is set and a valid target is not found, the emote will not execute.
EMOTE_TARGET_BHVR_DEFAULT_TO_BASEIf this is set and a valid target is not found, the emote will just ignore the parameter entirely.
EMOTE_TARGET_BHVR_USE_PARAMS_ANYWAYIf this is set and a valid target is not found, the emote will work with the params that it has.
EMOTE_TARGET_BHVR_RAWNo matching/processing will be performed, and the target will be purely what's passed in.
EMOTE_TARGET_BHVR_NUMThe emote target should be just a number. Anything else will be rejected.
EMOTE_TARGET_BHVR_IGNOREThe emote target is used elsewhere, and processing should be skipped.
EMOTE_TARGET_MOBThe target will check all nearby living mobs.
EMOTE_TARGET_OBJThe target will check all objects nearby.
EMOTE_TARGET_ANYThe target will check nearby mobs and objects.
EMOTE_PARAM_USE_POSTFIXIf passed as message_param, will default to using the message's postfix.
EMOTE_ACT_STOP_EXECUTIONIf returned from act_on_target(), emote execution will stop.
USABLE_DEAD_EMOTESList of emotes useable by ghosties

Define Details

+

AUDIO_EMOTE_COOLDOWN + + +

+

Default cooldown for emote-emitted audio.

AUDIO_EMOTE_UNINTENTIONAL_COOLDOWN + + +

+

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

+ + + diff --git a/code/__DEFINES/flags.html b/code/__DEFINES/flags.html new file mode 100644 index 0000000000000..502d474815e02 --- /dev/null +++ b/code/__DEFINES/flags.html @@ -0,0 +1,132 @@ + + + + + + + code/__DEFINES/flags.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/flags.dm + +

+ + + + + + + + + + + + + + + + + + + + + + +
NO_SCREENTIPSWhether or not this atom shows screentips when hovered over
UPDATE_NAMEUpdate the atom's name
UPDATE_DESCUpdate the atom's desc
UPDATE_ICON_STATEUpdate the atom's icon state
UPDATE_OVERLAYSUpdate the atom's overlays
UPDATE_ICONUpdate the atom's icon
SHOCKED_2Prevents mobs from getting chainshocked by teslas and the supermatter
RAD_PROTECT_CONTENTS_2should the contents of this atom be acted upon
RAD_NO_CONTAMINATE_2should this object be allowed to be contaminated
IMMUNE_TO_SHUTTLECRUSH_2Prevents shuttles from deleting the item
NO_MALF_EFFECT_2Prevents malf AI animate + overload ability
CRITICAL_ATOM_2Use when this shouldn't be obscured by large icons.
RANDOM_BLOCKER_2Use this flag for items that can block randomly
ALLOW_BELT_NO_JUMPSUIT_2This flag allows for wearing of a belt item, even if you're not wearing a jumpsuit
RICOCHET_SHINYIf the thing can reflect light (lasers/energy)
RICOCHET_HARDIf the thing can reflect matter (bullets/bomb shrapnel)
MOBILITY_MOVEcan move
MOBILITY_STANDcan, and is, standing up
MOBILITY_PICKUPcan pickup items
MOBILITY_USEcan hold and use items
MOBILITY_PULLcan pull things

Define Details

+

ALLOW_BELT_NO_JUMPSUIT_2 + + +

+

This flag allows for wearing of a belt item, even if you're not wearing a jumpsuit

CRITICAL_ATOM_2 + + +

+

Use when this shouldn't be obscured by large icons.

IMMUNE_TO_SHUTTLECRUSH_2 + + +

+

Prevents shuttles from deleting the item

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_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

RICOCHET_HARD + + +

+

If the thing can reflect matter (bullets/bomb shrapnel)

RICOCHET_SHINY + + +

+

If the thing can reflect light (lasers/energy)

SHOCKED_2 + + +

+

Prevents mobs from getting chainshocked by teslas and the supermatter

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

+ + + diff --git a/code/__DEFINES/food_defines.html b/code/__DEFINES/food_defines.html new file mode 100644 index 0000000000000..97e6807a90bb4 --- /dev/null +++ b/code/__DEFINES/food_defines.html @@ -0,0 +1,59 @@ + + + + + + + code/__DEFINES/food_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/food_defines.dm + +

+ + + + + + + +
FOOD_GOAL_SKIPUsed for secondary goals. +TOO easy, not accepted for variety goals.
FOOD_GOAL_EASYEasy food, ask for a lot for single goals.
FOOD_GOAL_NORMALNormal food, ask for a middling amount for single goals.
FOOD_GOAL_HARDHard reagent, ask for a little for single goals.
FOOD_GOAL_EXCESSIVETOO hard, accepted for variety goals, but never used for single goals.
FOOD_GOAL_DUPLICATESame 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.

+ + + diff --git a/code/__DEFINES/gamemode.html b/code/__DEFINES/gamemode.html new file mode 100644 index 0000000000000..71c9f76fbf967 --- /dev/null +++ b/code/__DEFINES/gamemode.html @@ -0,0 +1,47 @@ + + + + + + + code/__DEFINES/gamemode.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/gamemode.dm + +

+ + + + + +
NUKE_SITE_ON_STATIONThe bomb is on-station.
NUKE_SITE_ON_STATION_ZLEVELThe bomb is on station z-level, but not a station tile.
NUKE_SITE_OFF_STATION_ZLEVELThe bomb is off station z-level.
NUKE_SITE_INVALIDThe bomb's location cannot be found.

Define Details

+

NUKE_SITE_INVALID + + +

+

The bomb's location cannot be found.

NUKE_SITE_OFF_STATION_ZLEVEL + + +

+

The bomb is off station z-level.

NUKE_SITE_ON_STATION + + +

+

The bomb is on-station.

NUKE_SITE_ON_STATION_ZLEVEL + + +

+

The bomb is on station z-level, but not a station tile.

+ + + diff --git a/code/__DEFINES/hud.html b/code/__DEFINES/hud.html new file mode 100644 index 0000000000000..7ba87da392284 --- /dev/null +++ b/code/__DEFINES/hud.html @@ -0,0 +1,28 @@ + + + + + + + code/__DEFINES/hud.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/__DEFINES/hud.dm + +

+ + + +
/proc/view_to_pixelsTakes a string or num view, and converts it to pixel width/height in a list(pixel_width, pixel_height)
+ + + diff --git a/code/__DEFINES/icon_smoothing_defines.html b/code/__DEFINES/icon_smoothing_defines.html new file mode 100644 index 0000000000000..be48ba7e64645 --- /dev/null +++ b/code/__DEFINES/icon_smoothing_defines.html @@ -0,0 +1,391 @@ + + + + + + + code/__DEFINES/icon_smoothing_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/icon_smoothing_defines.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SMOOTH_CORNERSSmoothing system in where adjacencies are calculated and used to build an image by mounting each corner at runtime.
SMOOTH_BITMASKSmoothing system in where adjacencies are calculated and used to select a pre-baked icon_state, encoded by bitmasking.
SMOOTH_DIAGONAL_CORNERSAtom has diagonal corners, with underlays under them.
SMOOTH_BORDERAtom will smooth with the borders of the map.
SMOOTH_QUEUEDAtom is currently queued to smooth.
SMOOTH_OBJSmooths with objects, and will thus need to scan turfs for contents.
S_TURF*SMOOTHING GROUPS
SMOOTH_GROUP_TURFturf/simulated
SMOOTH_GROUP_TURF_CHASMturf/simulated/chasm, /turf/simulated/floor/fakepit
SMOOTH_GROUP_FLOOR_LAVAturf/simulated/floor/lava
SMOOTH_GROUP_FLOOR_TRANSPARENT_GLASSturf/simulated/transparent/glass
SMOOTH_GROUP_FLOORturf/simulated/floor
SMOOTH_GROUP_FLOOR_GRASSturf/simulated/floor/plating/grass
SMOOTH_GROUP_FLOOR_ICEturf/simulated/floor/plating/ice
SMOOTH_GROUP_BEACH_WATERturf/simulated/floor/beach/away/water
SMOOTH_GROUP_GLASS_FLOORturf/simulated/floor/transparent/glass and subtypes
SMOOTH_GROUP_GLASS_FLOOR_TITANIUMturf/simulated/floor/transparent/glass/titanium and subtypes
SMOOTH_GROUP_CARPETturf/simulated/floor/carpet
SMOOTH_GROUP_BAMBOOturf/simulated/floor/bamboo
SMOOTH_GROUP_SIMULATED_TURFSturf/simulated
SMOOTH_GROUP_MATERIAL_WALLSturf/simulated/wall/material
SMOOTH_GROUP_SYNDICATE_WALLSturf/simulated/wall/r_wall/syndicate, /turf/simulated/indestructible/syndicate
SMOOTH_GROUP_HOTEL_WALLSturf/simulated/indestructible/hotelwall
SMOOTH_GROUP_MINERAL_WALLSturf/simulated/mineral, /obj/structure/falsewall/rock_ancient
SMOOTH_GROUP_BOSS_WALLSturf/simulated/indestructible/riveted/boss
SMOOTH_GROUP_SURVIVAL_TITANIUM_WALLSturf/simulated/wall/mineral/titanium/survival
SMOOTH_GROUP_GRASSturf/simulated/floor/grass
SMOOTH_GROUP_JUNGLE_GRASSturf/simulated/floor/grass/jungle
SMOOTH_GROUP_WALLSturf/simulated/wall, /obj/structure/falsewall
SMOOTH_GROUP_URANIUM_WALLSturf/simulated/wall/mineral/uranium, /obj/structure/falsewall/uranium
SMOOTH_GROUP_GOLD_WALLSturf/simulated/wall/mineral/gold, /obj/structure/falsewall/gold
SMOOTH_GROUP_SILVER_WALLSturf/simulated/wall/mineral/silver, /obj/structure/falsewall/silver
SMOOTH_GROUP_DIAMOND_WALLSturf/simulated/wall/mineral/diamond, /obj/structure/falsewall/diamond
SMOOTH_GROUP_PLASMA_WALLSturf/simulated/wall/mineral/plasma, /obj/structure/falsewall/plasma
SMOOTH_GROUP_BANANIUM_WALLSturf/simulated/wall/mineral/bananium, /obj/structure/falsewall/bananium
SMOOTH_GROUP_SANDSTONE_WALLSturf/simulated/wall/mineral/sandstone, /obj/structure/falsewall/sandstone
SMOOTH_GROUP_WOOD_WALLSturf/simulated/wall/mineral/wood, /obj/structure/falsewall/wood
SMOOTH_GROUP_IRON_WALLSturf/simulated/wall/mineral/iron, /obj/structure/falsewall/iron
SMOOTH_GROUP_ABDUCTOR_WALLSturf/simulated/wall/mineral/abductor, /obj/structure/falsewall/abductor
SMOOTH_GROUP_TITANIUM_WALLSturf/simulated/wall/mineral/titanium, /obj/structure/falsewall/titanium
SMOOTH_GROUP_ASTEROID_WALLSturf/simulated/mineral, /obj/structure/falsewall/rock_ancient
SMOOTH_GROUP_PLASTITANIUM_WALLSturf/simulated/wall/mineral/plastitanium, /obj/structure/falsewall/plastitanium
SMOOTH_GROUP_SURVIVAL_TIANIUM_PODturf/simulated/wall/mineral/titanium/survival/pod, /obj/machinery/door/airlock/survival_pod, /obj/structure/window/shuttle/survival_pod
SMOOTH_GROUP_HIERO_WALLobj/effect/temp_visual/elite_tumor_wall, /obj/effect/temp_visual/hierophant/wall
SMOOTH_GROUP_BRASS_WALLturf/simulated/wall/mineral/brass, /obj/structure/falsewall/brass
SMOOTH_GROUP_REGULAR_WALLSturf/simulated/wall, /obj/structure/falsewall
SMOOTH_GROUP_REINFORCED_WALLSturf/simulated/wall/r_wall, /obj/structure/falsewall/reinforced
SMOOTH_GROUP_CULT_WALLSturf/simulated/wall/cult
SMOOTH_GROUP_WINDOW_FULLTILEturf/simulated/indestructible/fakeglass, /obj/structure/window/full/basic, /obj/structure/window/full/plasmabasic, /obj/structure/window/full/plasmareinforced, /obj/structure/window/full/reinforced
SMOOTH_GROUP_WINDOW_FULLTILE_BRASSobj/structure/window/brass/fulltile
SMOOTH_GROUP_WINDOW_FULLTILE_PLASTITANIUMturf/simulated/indestructible/opsglass, /obj/structure/window/plasma/reinforced/plastitanium
SMOOTH_GROUP_WINDOW_FULLTILE_SHUTTLEobj/structure/window/shuttle
SMOOTH_GROUP_LATTICEobj/structure/lattice
SMOOTH_GROUP_AIRLOCKobj/machinery/door/airlock
SMOOTH_GROUP_TABLESobj/structure/table
SMOOTH_GROUP_WOOD_TABLESobj/structure/table/wood
SMOOTH_GROUP_FANCY_WOOD_TABLESobj/structure/table/wood/fancy
SMOOTH_GROUP_BRASS_TABLESobj/structure/table/brass
SMOOTH_GROUP_ABDUCTOR_TABLESobj/structure/table/abductor
SMOOTH_GROUP_GLASS_TABLESobj/structure/table/glass
SMOOTH_GROUP_REINFORCED_TABLESobj/structure/table/reinforced, /obj/structure/table/glass/reinforced
SMOOTH_GROUP_ALIEN_RESINobj/structure/alien/resin
SMOOTH_GROUP_ALIEN_WALLSobj/structure/alien/resin/wall,
SMOOTH_GROUP_ALIEN_WEEDSobj/structure/alien/weeds
SMOOTH_GROUP_SECURITY_BARRICADEobj/structure/barricade/security
SMOOTH_GROUP_SANDBAGSobj/structure/barricade/sandbags
SMOOTH_GROUP_SHUTTLE_PARTSobj/structure/window/shuttle, /obj/structure/window/plasma/reinforced/plastitanium, /turf/simulated/indestructible/opsglass, /obj/structure/shuttle
SMOOTH_GROUP_CLEANABLE_DIRTobj/effect/decal/cleanable/dirt
SMOOTH_GROUP_RIPPLEobj/effect/temp_visual/ripple
SMOOTH_GROUP_CATWALKobj/structure/lattice/catwalk

Define Details

+

SMOOTH_BITMASK + + +

+

Smoothing system in where adjacencies are calculated and used to select a pre-baked icon_state, encoded by bitmasking.

SMOOTH_BORDER + + +

+

Atom will smooth with the borders of the map.

SMOOTH_CORNERS + + +

+

Smoothing system in where adjacencies are calculated and used to build an image by mounting each corner at runtime.

SMOOTH_DIAGONAL_CORNERS + + +

+

Atom has diagonal corners, with underlays under them.

SMOOTH_GROUP_ABDUCTOR_TABLES + + +

+

obj/structure/table/abductor

SMOOTH_GROUP_ABDUCTOR_WALLS + + +

+

turf/simulated/wall/mineral/abductor, /obj/structure/falsewall/abductor

SMOOTH_GROUP_AIRLOCK + + +

+

obj/machinery/door/airlock

SMOOTH_GROUP_ALIEN_RESIN + + +

+

obj/structure/alien/resin

SMOOTH_GROUP_ALIEN_WALLS + + +

+

obj/structure/alien/resin/wall,

SMOOTH_GROUP_ALIEN_WEEDS + + +

+

obj/structure/alien/weeds

SMOOTH_GROUP_ASTEROID_WALLS + + +

+

turf/simulated/mineral, /obj/structure/falsewall/rock_ancient

SMOOTH_GROUP_BAMBOO + + +

+

turf/simulated/floor/bamboo

SMOOTH_GROUP_BANANIUM_WALLS + + +

+

turf/simulated/wall/mineral/bananium, /obj/structure/falsewall/bananium

SMOOTH_GROUP_BEACH_WATER + + +

+

turf/simulated/floor/beach/away/water

SMOOTH_GROUP_BOSS_WALLS + + +

+

turf/simulated/indestructible/riveted/boss

SMOOTH_GROUP_BRASS_TABLES + + +

+

obj/structure/table/brass

SMOOTH_GROUP_BRASS_WALL + + +

+

turf/simulated/wall/mineral/brass, /obj/structure/falsewall/brass

SMOOTH_GROUP_CARPET + + +

+

turf/simulated/floor/carpet

SMOOTH_GROUP_CATWALK + + +

+

obj/structure/lattice/catwalk

SMOOTH_GROUP_CLEANABLE_DIRT + + +

+

obj/effect/decal/cleanable/dirt

SMOOTH_GROUP_CULT_WALLS + + +

+

turf/simulated/wall/cult

SMOOTH_GROUP_DIAMOND_WALLS + + +

+

turf/simulated/wall/mineral/diamond, /obj/structure/falsewall/diamond

SMOOTH_GROUP_FANCY_WOOD_TABLES + + +

+

obj/structure/table/wood/fancy

SMOOTH_GROUP_FLOOR + + +

+

turf/simulated/floor

SMOOTH_GROUP_FLOOR_GRASS + + +

+

turf/simulated/floor/plating/grass

SMOOTH_GROUP_FLOOR_ICE + + +

+

turf/simulated/floor/plating/ice

SMOOTH_GROUP_FLOOR_LAVA + + +

+

turf/simulated/floor/lava

SMOOTH_GROUP_FLOOR_TRANSPARENT_GLASS + + +

+

turf/simulated/transparent/glass

SMOOTH_GROUP_GLASS_FLOOR + + +

+

turf/simulated/floor/transparent/glass and subtypes

SMOOTH_GROUP_GLASS_FLOOR_TITANIUM + + +

+

turf/simulated/floor/transparent/glass/titanium and subtypes

SMOOTH_GROUP_GLASS_TABLES + + +

+

obj/structure/table/glass

SMOOTH_GROUP_GOLD_WALLS + + +

+

turf/simulated/wall/mineral/gold, /obj/structure/falsewall/gold

SMOOTH_GROUP_GRASS + + +

+

turf/simulated/floor/grass

SMOOTH_GROUP_HIERO_WALL + + +

+

obj/effect/temp_visual/elite_tumor_wall, /obj/effect/temp_visual/hierophant/wall

SMOOTH_GROUP_HOTEL_WALLS + + +

+

turf/simulated/indestructible/hotelwall

SMOOTH_GROUP_IRON_WALLS + + +

+

turf/simulated/wall/mineral/iron, /obj/structure/falsewall/iron

SMOOTH_GROUP_JUNGLE_GRASS + + +

+

turf/simulated/floor/grass/jungle

SMOOTH_GROUP_LATTICE + + +

+

obj/structure/lattice

SMOOTH_GROUP_MATERIAL_WALLS + + +

+

turf/simulated/wall/material

SMOOTH_GROUP_MINERAL_WALLS + + +

+

turf/simulated/mineral, /obj/structure/falsewall/rock_ancient

SMOOTH_GROUP_PLASMA_WALLS + + +

+

turf/simulated/wall/mineral/plasma, /obj/structure/falsewall/plasma

SMOOTH_GROUP_PLASTITANIUM_WALLS + + +

+

turf/simulated/wall/mineral/plastitanium, /obj/structure/falsewall/plastitanium

SMOOTH_GROUP_REGULAR_WALLS + + +

+

turf/simulated/wall, /obj/structure/falsewall

SMOOTH_GROUP_REINFORCED_TABLES + + +

+

obj/structure/table/reinforced, /obj/structure/table/glass/reinforced

SMOOTH_GROUP_REINFORCED_WALLS + + +

+

turf/simulated/wall/r_wall, /obj/structure/falsewall/reinforced

SMOOTH_GROUP_RIPPLE + + +

+

obj/effect/temp_visual/ripple

SMOOTH_GROUP_SANDBAGS + + +

+

obj/structure/barricade/sandbags

SMOOTH_GROUP_SANDSTONE_WALLS + + +

+

turf/simulated/wall/mineral/sandstone, /obj/structure/falsewall/sandstone

SMOOTH_GROUP_SECURITY_BARRICADE + + +

+

obj/structure/barricade/security

SMOOTH_GROUP_SHUTTLE_PARTS + + +

+

obj/structure/window/shuttle, /obj/structure/window/plasma/reinforced/plastitanium, /turf/simulated/indestructible/opsglass, /obj/structure/shuttle

SMOOTH_GROUP_SILVER_WALLS + + +

+

turf/simulated/wall/mineral/silver, /obj/structure/falsewall/silver

SMOOTH_GROUP_SIMULATED_TURFS + + +

+

turf/simulated

SMOOTH_GROUP_SURVIVAL_TIANIUM_POD + + +

+

turf/simulated/wall/mineral/titanium/survival/pod, /obj/machinery/door/airlock/survival_pod, /obj/structure/window/shuttle/survival_pod

SMOOTH_GROUP_SURVIVAL_TITANIUM_WALLS + + +

+

turf/simulated/wall/mineral/titanium/survival

SMOOTH_GROUP_SYNDICATE_WALLS + + +

+

turf/simulated/wall/r_wall/syndicate, /turf/simulated/indestructible/syndicate

SMOOTH_GROUP_TABLES + + +

+

obj/structure/table

SMOOTH_GROUP_TITANIUM_WALLS + + +

+

turf/simulated/wall/mineral/titanium, /obj/structure/falsewall/titanium

SMOOTH_GROUP_TURF + + +

+

turf/simulated

SMOOTH_GROUP_TURF_CHASM + + +

+

turf/simulated/chasm, /turf/simulated/floor/fakepit

SMOOTH_GROUP_URANIUM_WALLS + + +

+

turf/simulated/wall/mineral/uranium, /obj/structure/falsewall/uranium

SMOOTH_GROUP_WALLS + + +

+

turf/simulated/wall, /obj/structure/falsewall

SMOOTH_GROUP_WINDOW_FULLTILE + + +

+

turf/simulated/indestructible/fakeglass, /obj/structure/window/full/basic, /obj/structure/window/full/plasmabasic, /obj/structure/window/full/plasmareinforced, /obj/structure/window/full/reinforced

SMOOTH_GROUP_WINDOW_FULLTILE_BRASS + + +

+

obj/structure/window/brass/fulltile

SMOOTH_GROUP_WINDOW_FULLTILE_PLASTITANIUM + + +

+

turf/simulated/indestructible/opsglass, /obj/structure/window/plasma/reinforced/plastitanium

SMOOTH_GROUP_WINDOW_FULLTILE_SHUTTLE + + +

+

obj/structure/window/shuttle

SMOOTH_GROUP_WOOD_TABLES + + +

+

obj/structure/table/wood

SMOOTH_GROUP_WOOD_WALLS + + +

+

turf/simulated/wall/mineral/wood, /obj/structure/falsewall/wood

SMOOTH_OBJ + + +

+

Smooths with objects, and will thus need to scan turfs for contents.

SMOOTH_QUEUED + + +

+

Atom is currently queued to smooth.

S_TURF + + + +

+

*SMOOTHING GROUPS

+
+ + + diff --git a/code/__DEFINES/instrument_defines.html b/code/__DEFINES/instrument_defines.html new file mode 100644 index 0000000000000..1b6d5261f4886 --- /dev/null +++ b/code/__DEFINES/instrument_defines.html @@ -0,0 +1,47 @@ + + + + + + + code/__DEFINES/instrument_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/instrument_defines.dm + +

+ + + + + +
CHANNELS_PER_INSTRUMENTMax number of playing notes per instrument.
INSTRUMENT_MAX_TOTAL_SUSTAINMaximum length a note should ever go for
INSTRUMENT_EXP_FALLOFF_MINThese are per decisecond.
INSTRUMENT_MIN_SUSTAIN_DROPOFFMinimum 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.

+ + + diff --git a/code/__DEFINES/keybindings_defines.html b/code/__DEFINES/keybindings_defines.html new file mode 100644 index 0000000000000..a2c08caa96814 --- /dev/null +++ b/code/__DEFINES/keybindings_defines.html @@ -0,0 +1,47 @@ + + + + + + + code/__DEFINES/keybindings_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/keybindings_defines.dm + +

+ + + + + +
MAX_KEYPRESS_COMMANDLENGTHMax length of a keypress command before it's considered to be a forged packet/bogus command
MAX_KEYPRESS_AUTOKICKMax amount of keypress messages per second over two seconds before client is autokicked
HELD_KEY_BUFFER_LENGTHLength of held key rolling buffer
MAX_COMMANDS_PER_KEYMaximum keys that can be bound to one button

Define Details

+

HELD_KEY_BUFFER_LENGTH + + +

+

Length of held key rolling buffer

MAX_COMMANDS_PER_KEY + + +

+

Maximum keys that can be bound to one button

MAX_KEYPRESS_AUTOKICK + + +

+

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

MAX_KEYPRESS_COMMANDLENGTH + + +

+

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

+ + + diff --git a/code/__DEFINES/layers.html b/code/__DEFINES/layers.html new file mode 100644 index 0000000000000..9cd198499f378 --- /dev/null +++ b/code/__DEFINES/layers.html @@ -0,0 +1,47 @@ + + + + + + + code/__DEFINES/layers.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/layers.dm + +

+ + + + + +
MAP_EDITOR_TURF_LAYERWhich layer turfs appear on by default in the map editor. Should be unique!
EMISSIVE_PLANEThis plane masks out lighting to create an "emissive" effect, ie for glowing lights in otherwise dark areas.
EMISSIVE_RENDER_TARGETThe render target used by the emissive.
PLANE_MASTERS_GAMEPlane master controller keys

Define Details

+

EMISSIVE_PLANE + + +

+

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

EMISSIVE_RENDER_TARGET + + +

+

The render target used by the emissive.

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

+ + + diff --git a/code/__DEFINES/lighting_defines.html b/code/__DEFINES/lighting_defines.html new file mode 100644 index 0000000000000..f2aa379a1d55e --- /dev/null +++ b/code/__DEFINES/lighting_defines.html @@ -0,0 +1,76 @@ + + + + + + + code/__DEFINES/lighting_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/lighting_defines.dm + +

+ + + + + + + + + + +
EMISSIVE_BLOCK_UNIQUEUses a dedicated render_target object to copy the entire appearance in real time to the blocking layer. For things that can change in appearance a lot from the base state, like humans.
EMISSIVE_COLORThe color applied to all emissive overlays.
EM_BLOCK_COLORThe color applied to all emissive blockers. Is meant to be the exact opposite of the EMMISIVE_COLOR
EMISSIVE_APPEARANCE_FLAGSA set of appearance flags applied to all emissive and emissive blocker overlays.
EM_MASK_MATRIXThe color matrix used to mask out emissive blockers on the emissive plane. Alpha should default to zero, be solely dependent on the RGB value of EMISSIVE_COLOR, and be independant of the RGB value of EM_BLOCK_COLOR.
GETREDPARTReturns the red part of a #RRGGBB hex sequence as number
GETGREENPARTReturns the green part of a #RRGGBB hex sequence as number
GETBLUEPARTReturns the blue part of a #RRGGBB hex sequence as number
PARSE_LIGHT_COLORParse the hexadecimal color into lumcounts of each perspective.

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.

+ + + diff --git a/code/__DEFINES/machines.html b/code/__DEFINES/machines.html new file mode 100644 index 0000000000000..709132a7afe2c --- /dev/null +++ b/code/__DEFINES/machines.html @@ -0,0 +1,42 @@ + + + + + + + code/__DEFINES/machines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/machines.dm + +

+ + + + +
GAMMALATHEUsed for gamma armoury lathe designs
SUPERMATTER_HEAT_PENALTY_THRESHOLDHigher == Crystal safe operational temperature is higher.
AALARM_MODE_SCRUBBINGAir alarm modes

Define Details

+

AALARM_MODE_SCRUBBING + + +

+

Air alarm modes

GAMMALATHE + + +

+

Used for gamma armoury lathe designs

SUPERMATTER_HEAT_PENALTY_THRESHOLD + + +

+

Higher == Crystal safe operational temperature is higher.

+ + + diff --git a/code/__DEFINES/mappers.html b/code/__DEFINES/mappers.html new file mode 100644 index 0000000000000..de150082a4901 --- /dev/null +++ b/code/__DEFINES/mappers.html @@ -0,0 +1,33 @@ + + + + + + + code/__DEFINES/mappers.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/mappers.dm + +

+ + +
MAPPING_DIRECTIONAL_HELPERSCreate directional subtypes for a path to simplify mapping.

Define Details

+

MAPPING_DIRECTIONAL_HELPERS + + + +

+

Create directional subtypes for a path to simplify mapping.

+ + + diff --git a/code/__DEFINES/milla.html b/code/__DEFINES/milla.html new file mode 100644 index 0000000000000..392a472f196ad --- /dev/null +++ b/code/__DEFINES/milla.html @@ -0,0 +1,52 @@ + + + + + + + code/__DEFINES/milla.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/milla.dm + +

+ + + + + + +
MILLA_TILE_SIZEThe number of values per tile.
MILLA_INTERESTING_TILE_SIZEThe number of values per interesting tile.
MILLA_INTERESTING_REASON_DISPLAYInteresting because it needs a display update.
MILLA_INTERESTING_REASON_HOTInteresting because it's hot enough to start a fire. Excludes normal-temperature Lavaland tiles without an active fire.
MILLA_INTERESTING_REASON_WINDInteresting 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.

+ + + diff --git a/code/__DEFINES/misc_defines.html b/code/__DEFINES/misc_defines.html new file mode 100644 index 0000000000000..ac9f9a9a74f67 --- /dev/null +++ b/code/__DEFINES/misc_defines.html @@ -0,0 +1,200 @@ + + + + + + + code/__DEFINES/misc_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/misc_defines.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GERM_LEVEL_AMBIENTGERMS AND INFECTIONS
EMOJI_SETEmoji icon set
RANGE_EDGE_TURFSReturns 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.
get_areaGrabs the area of a supplied object. Passing an area in to this will result in an error
REGION_ALLAccess Region Codes
GREYSCALE_COLOR_REPLACEPure Black and white colorblindness. Every species except Vulpkanins and Tajarans will have this.
PROTANOPIA_COLOR_REPLACERed colorblindness. Vulpkanins/Wolpins have this.
TRITANOPIA_COLOR_REPLACEYellow-Blue colorblindness. Tajarans/Farwas have this.
CLIENT_FROM_VARReturn a Client
BASE_DEFIB_TIME_LIMITPast this much time the patient is unrecoverable (in deciseconds).
DEFIB_TIME_LOSSBrain damage starts setting in on the patient after some time left rotting.
MAPTEXTPrepares a text to be used for maptext. Use this so it doesn't look hideous.
PARALLAX_DELAY_DEFAULTAbout 0.05 Seconds of delay
DISCORD_WEBHOOK_PRIMARYSend to the primary Discord webhook
DISCORD_WEBHOOK_ADMINSend to the admin Discord webhook
DISCORD_WEBHOOK_MENTORSend to the mentor Discord webhook
UNTILWaits at a line of code until X is true
REFLECTABILITY_NEVERProjectile reflectability defines
DEADCHAT_DEMOCRACY_MODEWill execute a single command after the cooldown based on player votes.
DEADCHAT_ANARCHY_MODEAllows each player to do a single command every cooldown.
MUTE_DEADCHAT_DEMOCRACY_MESSAGESMutes 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.
SLEEP_CHECK_QDELSleep check QDEL. Like sleep check death, but checks deleting. Good for non mobs.
BRAIN_DAMAGE_BOOK_TIMEReading 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_TIMEThe amount of time a mob needs to wait between any book reading
text_refTakes 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
LOG_MAZE_PROGRESSI dont recommend touching these map generator defines unless you know what you're doing with maze generators.
PINPOINTER_MODE_DETDetective's mode on pinpointers
DISPOSAL_SOUND_COOLDOWNHow frequently disposals can make sounds, to prevent huge sound stacking
VOTE_RESULT_TYPE_MAJORITYThe different kinds of voting
RESTRICT_TYPEA helper used by restrict_file_types.py to identify types to restrict in a file. Not used by byond at all.

Define Details

+

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

GERM_LEVEL_AMBIENT + + +

+

GERMS AND INFECTIONS

GREYSCALE_COLOR_REPLACE + + +

+

Pure Black and white colorblindness. Every species except Vulpkanins and Tajarans will have this.

LOG_MAZE_PROGRESS + + + +

+

I dont recommend touching these map generator defines unless you know what you're doing with maze generators.

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.

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

+ + + diff --git a/code/__DEFINES/mob_defines.html b/code/__DEFINES/mob_defines.html new file mode 100644 index 0000000000000..5624d6fc78b89 --- /dev/null +++ b/code/__DEFINES/mob_defines.html @@ -0,0 +1,84 @@ + + + + + + + code/__DEFINES/mob_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/mob_defines.dm + +

+ + + + + + + + + + + + +
ORGAN_BROKENORGAN DEFINES
STANDING_UPMob is standing up, usually associated with lying_angle value of 0.
LYING_DOWNMob is lying down, usually associated with lying_angle values of 90 or 270.
PIXEL_Y_OFFSET_LYINGHow much a mob's sprite should be moved when they're lying down
REAGENTS_METABOLISMREAGENT STUFF
SHOCK_NOGLOVESFlags used by the flags parameter of electrocute act. +Makes it so that the shock doesn't take gloves into account.
SHOCK_TESLAUsed when the shock is from a tesla bolt.
SHOCK_ILLUSIONUsed when an illusion shocks something. Makes the shock deal stamina damage and not trigger certain secondary effects.
SHOCK_NOSTUNThe shock doesn't stun.
MAX_GOLD_CORE_MOBSMax amount of living Xenobio mobs allowed at any given time (excluding slimes).
EXAMINE_MORE_WINDOWIf you examine the same atom twice in this timeframe, we call examine_more() instead of examine()

Define Details

+

EXAMINE_MORE_WINDOW + + +

+

If you examine the same atom twice in this timeframe, we call examine_more() instead of examine()

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).

ORGAN_BROKEN + + +

+

ORGAN DEFINES

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.

+ + + diff --git a/code/__DEFINES/mod.html b/code/__DEFINES/mod.html new file mode 100644 index 0000000000000..4f9adbd0e559f --- /dev/null +++ b/code/__DEFINES/mod.html @@ -0,0 +1,72 @@ + + + + + + + code/__DEFINES/mod.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/mod.dm + +

+ + + + + + + + + + +
DEFAULT_MAX_COMPLEXITYDefault value for the max_complexity var on MODsuits
DEFAULT_CHARGE_DRAINDefault cell drain per process on MODsuits
MOD_ACTIVATION_STEP_TIMEDefault time for a part to seal
MODULE_PASSIVEPassive module, just acts when put in naturally.
MODULE_USABLEUsable module, does something when you press a button.
MODULE_TOGGLEToggle module, you turn it on/off and it does stuff.
MODULE_ACTIVEActively usable module, you may only have one selected at a time.
MODULE_ALLOW_INCAPACITATEDThis module can be used while incapacitated
MODULE_ALLOW_INACTIVEThis module can be used while the suit is off

Define Details

+

DEFAULT_CHARGE_DRAIN + + +

+

Default cell drain per process on MODsuits

DEFAULT_MAX_COMPLEXITY + + +

+

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

+ + + diff --git a/code/__DEFINES/newscaster_defines.html b/code/__DEFINES/newscaster_defines.html new file mode 100644 index 0000000000000..d7cb7e3d2aa8a --- /dev/null +++ b/code/__DEFINES/newscaster_defines.html @@ -0,0 +1,52 @@ + + + + + + + code/__DEFINES/newscaster_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/newscaster_defines.dm + +

+ + + + + + +
NEWSCASTER_HEADLINESHeadlines screen index.
NEWSCASTER_JOBSAvailable Jobs screen index.
NEWSCASTER_CHANNELView Channel screen index.
NEWSCASTER_CENSOR_AUTHORCensor author name.
NEWSCASTER_CENSOR_STORYCensor story title, body and image.

Define Details

+

NEWSCASTER_CENSOR_AUTHOR + + +

+

Censor author name.

NEWSCASTER_CENSOR_STORY + + +

+

Censor story title, body and image.

NEWSCASTER_CHANNEL + + +

+

View Channel screen index.

NEWSCASTER_HEADLINES + + +

+

Headlines screen index.

NEWSCASTER_JOBS + + +

+

Available Jobs screen index.

+ + + diff --git a/code/__DEFINES/power_defines.html b/code/__DEFINES/power_defines.html new file mode 100644 index 0000000000000..02ec83fa921dd --- /dev/null +++ b/code/__DEFINES/power_defines.html @@ -0,0 +1,107 @@ + + + + + + + code/__DEFINES/power_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/power_defines.dm + +

+ + + + + + + + + + + + + + + + + +
PW_CHANNEL_EQUIPMENTPower Channel for equipment power users
PW_CHANNEL_LIGHTINGPower chanel for lighting power users
PW_CHANNEL_ENVIRONMENTPower channel for environmental power users
PW_ALWAYS_UNPOWEREDLocal powernet in this area will never be powered, even if its recieving power
PW_ALWAYS_POWEREDLocal powernet in this area will always have power even if its not recieving power
MACHINE_FLICKER_CHANCEroughly 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.
BROKENMachine is broken
NOPOWERMachine is not recieving any power from the local powernet
MAINTmachine is currently under maintenance
EMPEDMachine is currently affected by EMP pulse
NO_POWER_USEThis machine is not currently consuming any power passively
IDLE_POWER_USEThis machine is consuming its idle power amount passively
ACTIVE_POWER_USEThis machine is consuming its active power amount passively
APC_NOT_CHARGINGAPC is not recieving power
APC_IS_CHARGINGAPC is currently recieving power and storing it
APC_FULLY_CHARGEDAPC battery is at 100%

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

+ + + diff --git a/code/__DEFINES/preferences_defines.html b/code/__DEFINES/preferences_defines.html new file mode 100644 index 0000000000000..6ea8cc2e65888 --- /dev/null +++ b/code/__DEFINES/preferences_defines.html @@ -0,0 +1,62 @@ + + + + + + + code/__DEFINES/preferences_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/preferences_defines.dm + +

+ + + + + + + + +
PREFTOGGLE_SPECIALSpecial toggles, stuff that just overrides set_toggles entirely
PREFTOGGLE_SOUNDInteracts with the sound bitflag
PREFTOGGLE_TOGGLE1Interacts with the toggles bitflag
PREFTOGGLE_TOGGLE2Interacts with the toggles2 bitflag
_2FA_DISABLEDClient has 2FA disabled
_2FA_ENABLED_IPClient will be prompted for 2FA on IP changes
_2FA_ENABLED_ALWAYSClient will be prompted for 2FA always

Define Details

+

PREFTOGGLE_SOUND + + +

+

Interacts with the sound bitflag

PREFTOGGLE_SPECIAL + + +

+

Special toggles, stuff that just overrides set_toggles entirely

PREFTOGGLE_TOGGLE1 + + +

+

Interacts with the toggles bitflag

PREFTOGGLE_TOGGLE2 + + +

+

Interacts with the toggles2 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

+ + + diff --git a/code/__DEFINES/procpath.html b/code/__DEFINES/procpath.html new file mode 100644 index 0000000000000..a40f14674c462 --- /dev/null +++ b/code/__DEFINES/procpath.html @@ -0,0 +1,27 @@ + + + + + + + code/__DEFINES/procpath.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/__DEFINES/procpath.dm + +

+ + +
/procpathRepresents a proc or verb path.
+ + + diff --git a/code/__DEFINES/qdel_defines.html b/code/__DEFINES/qdel_defines.html new file mode 100644 index 0000000000000..3025f0e8ff060 --- /dev/null +++ b/code/__DEFINES/qdel_defines.html @@ -0,0 +1,67 @@ + + + + + + + code/__DEFINES/qdel_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/qdel_defines.dm + +

+ + + + + + + + + +
GC_QUEUE_FILTERshort queue to filter out quick gc successes so they don't hang around in the main queue for 5 minutes
GC_QUEUE_CHECKmain queue that waits 5 minutes because thats the longest byond can hold a reference to our shit.
GC_QUEUE_HARDDELETEshort queue for things that hard delete instead of going thru the gc subsystem, this is purely so if they can softdelete, they will soft delete rather then wasting time with a hard delete.
GC_QUEUE_COUNTNumber of queues, used for allocating the nested lists. Don't forget to increase this if you add a new queue stage
GC_QUEUE_ITEM_QUEUE_TIMETime this item entered the queue
GC_QUEUE_ITEM_REFRef to the item
GC_QUEUE_ITEM_GCD_DESTROYEDItem's gc_destroyed var value. Used to detect ref reuse.
GC_QUEUE_ITEM_INDEX_COUNTNumber of item indexes, used for allocating the nested lists. Don't forget to increase this if you add a new queue item index

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

+ + + diff --git a/code/__DEFINES/reagents_defines.html b/code/__DEFINES/reagents_defines.html new file mode 100644 index 0000000000000..9d6b2f8c97c9f --- /dev/null +++ b/code/__DEFINES/reagents_defines.html @@ -0,0 +1,74 @@ + + + + + + + code/__DEFINES/reagents_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/reagents_defines.dm + +

+ + + + + + + + + + +
UNHUSK_DAMAGE_THRESHOLDHealth threshold for synthflesh and rezadone to unhusk someone
SYNTHFLESH_UNHUSK_AMOUNTAmount of synthflesh required to unhusk someone
SYRINGE_DRAWSyringe mob interaction modes
BLOOD_TYPE_FAKE_BLOODLike O- blood but doesn't contribute to blood_volume or vampire nutrition
REAGENT_GOAL_SKIPUsed for secondary goals. +TOO easy, not accepted for variety goals.
REAGENT_GOAL_EASYEasy reagent, ask for a lot for single goals.
REAGENT_GOAL_NORMALNormal reagent, ask for a middling amount for single goals.
REAGENT_GOAL_HARDHard reagent, ask for a little for single goals.
REAGENT_GOAL_EXCESSIVETOO 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

+ + + diff --git a/code/__DEFINES/rust_g.html b/code/__DEFINES/rust_g.html new file mode 100644 index 0000000000000..c7b04acc98c92 --- /dev/null +++ b/code/__DEFINES/rust_g.html @@ -0,0 +1,236 @@ + + + + + + + code/__DEFINES/rust_g.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/rust_g.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + +
/proc/rustg_get_versionGets the version of rust_g
rustg_setup_acreplaceSets up the Aho-Corasick automaton with its default options.
rustg_setup_acreplace_with_optionsSets up the Aho-Corasick automaton using supplied options.
rustg_acreplaceRun the specified replacement engine with the provided haystack text to replace, returning replaced text.
rustg_acreplace_with_replacementsRun the specified replacement engine with the provided haystack text to replace, returning replaced text.
rustg_cnoise_generateThis proc generates a cellular automata noise grid which can be used in procedural generation methods.
rustg_dbp_generateThis proc generates a grid of perlin-like noise
rustg_dmi_icon_statesinput: must be a path, not an /icon; you have to do your own handling if it is one, as icon objects can't be directly passed to rustg.
rustg_register_nodes_astarRegister a list of nodes into a rust library. This list of nodes must have been serialized in a json. +Node {// Index of this node in the list of nodes +unique_id: usize, +// Position of the node in byond +x: usize, +y: usize, +z: usize, +// Indexes of nodes connected to this one +connected_nodes_id: Vec} +It is important that the node with the unique_id 0 is the first in the json, unique_id 1 right after that, etc. +It is also important that all unique ids follow. {0, 1, 2, 4} is not a correct list and the registering will fail +Nodes should not link across z levels. +A node cannot link twice to the same node and shouldn't link itself either
rustg_add_node_astarAdd a new node to the static list of nodes. Same rule as registering_nodes applies. +This node unique_id must be equal to the current length of the static list of nodes
rustg_remove_node_astart*²
rustg_generate_path_astarCompute the shortest path between start_node and goal_node using A*. Heuristic used is simple geometric distance
rustg_redis_connect_rqConnects to a given redis server.
/proc/rustg_redis_disconnect_rqDisconnects from a previously connected redis server
rustg_redis_lpushhttps://redis.io/commands/lpush/
rustg_redis_lrangehttps://redis.io/commands/lrange/
rustg_redis_lpophttps://redis.io/commands/lpop/
/proc/rustg_unix_timestampReturns the timestamp as a string
rustg_worley_generateThis proc generates a noise grid using worley noise algorithm

Define Details

+

rustg_acreplace + + + +

+

Run the specified replacement engine with the provided haystack text to replace, returning replaced text.

+

Arguments:

+

rustg_acreplace_with_replacements + + + +

+

Run the specified replacement engine with the provided haystack text to replace, returning replaced text.

+

Arguments:

+

rustg_add_node_astar + + + +

+

Add a new node to the static list of nodes. Same rule as registering_nodes applies. +This node unique_id must be equal to the current length of the static list of nodes

rustg_cnoise_generate + + + +

+

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

+

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

+

Arguments:

+

rustg_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:

+

rustg_dmi_icon_states + + + +

+

input: must be a path, not an /icon; you have to do your own handling if it is one, as icon objects can't be directly passed to rustg.

+

output: json_encode'd list. json_decode to get a flat list with icon states in the order they're in inside the .dmi

rustg_generate_path_astar + + + +

+

Compute the shortest path between start_node and goal_node using A*. Heuristic used is simple geometric distance

rustg_redis_connect_rq + + + +

+

Connects to a given redis server.

+

Arguments:

+

rustg_redis_lpop + + + +

+

https://redis.io/commands/lpop/

+

Arguments

+ +

Note: count was added in Redis version 6.2.0

rustg_redis_lpush + + + +

+

https://redis.io/commands/lpush/

+

Arguments

+

rustg_redis_lrange + + + +

+

https://redis.io/commands/lrange/

+

Arguments

+

rustg_register_nodes_astar + + + +

+

Register a list of nodes into a rust library. This list of nodes must have been serialized in a json. +Node {// Index of this node in the list of nodes +unique_id: usize, +// Position of the node in byond +x: usize, +y: usize, +z: usize, +// Indexes of nodes connected to this one +connected_nodes_id: Vec} +It is important that the node with the unique_id 0 is the first in the json, unique_id 1 right after that, etc. +It is also important that all unique ids follow. {0, 1, 2, 4} is not a correct list and the registering will fail +Nodes should not link across z levels. +A node cannot link twice to the same node and shouldn't link itself either

rustg_remove_node_astart + + + +

+

*²

+

rustg_setup_acreplace + + + +

+

Sets up the Aho-Corasick automaton with its default options.

+

The search patterns list and the replacements must be of the same length when replace is run, but an empty replacements list is allowed if replacements are supplied with the replace call +Arguments:

+

rustg_setup_acreplace_with_options + + + +

+

Sets up the Aho-Corasick automaton using supplied options.

+

The search patterns list and the replacements must be of the same length when replace is run, but an empty replacements list is allowed if replacements are supplied with the replace call +Arguments:

+

rustg_worley_generate + + + +

+

This proc generates a noise grid using worley noise algorithm

+

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

+

Arguments:

+
+ + + diff --git a/code/__DEFINES/sound_defines.html b/code/__DEFINES/sound_defines.html new file mode 100644 index 0000000000000..9648f533ac480 --- /dev/null +++ b/code/__DEFINES/sound_defines.html @@ -0,0 +1,58 @@ + + + + + + + code/__DEFINES/sound_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/sound_defines.dm + +

+ + + + + + + +
SOUND_RANGEDefault range of a sound.
SOUND_RANGE_SETEasy-to-math sound range for simpler coding with specific variables. Insert the exact range you wish the sound to be heard from.
SHORT_RANGE_SOUND_EXTRARANGEdefault extra range for sounds considered to be quieter
SILENCED_SOUND_EXTRARANGEThe range deducted from sound range for things that are considered silent / sneaky
SOUND_DEFAULT_FALLOFF_DISTANCEPercentage of sound's range where no falloff is applied
SOUND_FALLOFF_EXPONENTThe default exponent of sound falloff

Define Details

+

SHORT_RANGE_SOUND_EXTRARANGE + + +

+

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.

+ + + diff --git a/code/__DEFINES/station_defines.html b/code/__DEFINES/station_defines.html new file mode 100644 index 0000000000000..cdc5673983687 --- /dev/null +++ b/code/__DEFINES/station_defines.html @@ -0,0 +1,52 @@ + + + + + + + code/__DEFINES/station_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/station_defines.dm + +

+ + + + + + +
STATION_TRAIT_ABSTRACTFor traits that shouldn't be selected, like abstract types (wow)
STATION_TRAIT_PLANETARYOnly run on planet stations
STATION_TRAIT_SPACE_BOUNDOnly run on space stations
STATION_TRAIT_MAP_UNRESTRICTEDNot restricted by space or planet, can always just happen
FUTURE_STATION_TRAITS_FILEThe 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

+ + + diff --git a/code/__DEFINES/station_goals.html b/code/__DEFINES/station_goals.html new file mode 100644 index 0000000000000..348115397e1a9 --- /dev/null +++ b/code/__DEFINES/station_goals.html @@ -0,0 +1,36 @@ + + + + + + + code/__DEFINES/station_goals.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/station_goals.dm + +

+ + +
REAGENT_GOAL_FORGIVENESSHow 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.

+ + + diff --git a/code/__DEFINES/status_effects.html b/code/__DEFINES/status_effects.html new file mode 100644 index 0000000000000..6e6c99d42a37c --- /dev/null +++ b/code/__DEFINES/status_effects.html @@ -0,0 +1,72 @@ + + + + + + + code/__DEFINES/status_effects.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/status_effects.dm + +

+ + + + + + + + + + +
STATUS_EFFECT_FLESHMENDRapid burn/brute/oxy/blood healing from the cling ability
STATUS_EFFECT_BURNT_WINGSWhether a moth's wings are burnt
STATUS_EFFECT_COCOONEDIf a moth is in a cocoon
STATUS_EFFECT_OFFERING_ITEMStatus effect given when someone uses the Give Item command to offer an item to another player.
STATUS_EFFECT_FAKE_VIRUSgives you fluff messages for cough, sneeze, headache, etc but without an actual virus
STATUS_EFFECT_LWAPSCOPEThis status effect lets the user see the lwap dots.
STATUS_EFFECT_REVIVABLEThis status effect allows a mob to be revived with a defibrillator.
STATUS_EFFECT_TELEPORT_ROULETTECauses a random safe teleport every 2 seconds for a limited time
STATUS_EFFECT_REMOVE_CUFFSStatus effects for different actions

Define Details

+

STATUS_EFFECT_BURNT_WINGS + + +

+

Whether a moth's wings are burnt

STATUS_EFFECT_COCOONED + + +

+

If a moth is in a cocoon

STATUS_EFFECT_FAKE_VIRUS + + +

+

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_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

+ + + diff --git a/code/__DEFINES/strippable_defines.html b/code/__DEFINES/strippable_defines.html new file mode 100644 index 0000000000000..be3d029118ddb --- /dev/null +++ b/code/__DEFINES/strippable_defines.html @@ -0,0 +1,42 @@ + + + + + + + code/__DEFINES/strippable_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/strippable_defines.dm + +

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

Define Details

+

STRIPPABLE_OBSCURING_COMPLETELY + + +

+

This slot is completely obscured, and cannot be accessed.

STRIPPABLE_OBSCURING_HIDDEN + + +

+

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

STRIPPABLE_OBSCURING_NONE + + +

+

This slot is not obscured.

+ + + diff --git a/code/__DEFINES/subsystems.html b/code/__DEFINES/subsystems.html new file mode 100644 index 0000000000000..3d313e57b510f --- /dev/null +++ b/code/__DEFINES/subsystems.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/subsystems.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/subsystems.dm + +

+ + +
TIMER_DELETE_MEDelete 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

+ + + diff --git a/code/__DEFINES/surgery_defines.html b/code/__DEFINES/surgery_defines.html new file mode 100644 index 0000000000000..705d0364420de --- /dev/null +++ b/code/__DEFINES/surgery_defines.html @@ -0,0 +1,142 @@ + + + + + + + code/__DEFINES/surgery_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/surgery_defines.dm + +

+ + + + + + + + + + + + + + + + + + + + + + +
SURGERY_BLOODSPREAD_NONEDefines for surgery and other stuff. +Don't splash any blood.
SURGERY_BLOODSPREAD_HANDSCover the surgeon's hands in blood.
SURGERY_BLOODSPREAD_FULLBODYCover the surgeon's body in blood.
SURGERY_INITIATOR_ORGANICAn initiator with this can start surgeries on organic organs. Make sure that anything that can be sharp gets this as well.
SURGERY_INITIATOR_ROBOTICAn initiator with this can start surgeries on robotic organs.
ORGAN_CLOSEDClosed up.
ORGAN_ORGANIC_OPENAn organic limb that's been opened, at least once.
ORGAN_ORGANIC_ENCASED_OPENAn organ that's encased, probably with bone, where that casing has been cut through.
ORGAN_ORGANIC_VIOLENT_OPENAn organ that has been violently opened, likely via damage.
ORGAN_SYNTHETIC_LOOSENEDSynthetic organ that's been unscrewed.
ORGAN_SYNTHETIC_OPENSynthetic organ that's had its panel opened.
SURGERY_BEGINSTEP_ABORTReturn this from begin_step() to abort the step and not try the surgery.
SURGERY_BEGINSTEP_SKIPReturn 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_STEP_INCOMPLETEThe surgery step was not completed for some reason, and the next action will again be on this step.
SURGERY_STEP_CONTINUEThe surgery step was completed, and the surgery should continue to the next step.
SURGERY_STEP_RETRY_ALWAYSThis 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!
SURGERY_STEP_RETRYThis 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_INITIATE_CONTINUE_CHAINThe 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_SUCCESSThe surgery initiaition was a success. We're advancing the current surgery.
SURGERY_INITIATE_FAILUREThe surgery initiation was interrupted, or for some reason never completed. We don't want to return FALSE to the attack chain, though.
SURGERY_INITIATE_INTERRUPTEDThe 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!

+ + + diff --git a/code/__DEFINES/text_defines.html b/code/__DEFINES/text_defines.html new file mode 100644 index 0000000000000..f4baecdbfa98f --- /dev/null +++ b/code/__DEFINES/text_defines.html @@ -0,0 +1,38 @@ + + + + + + + code/__DEFINES/text_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/text_defines.dm + +

+ + + +
MAX_CHARACTERS_PER_BOOKPAGEMax 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_FILENAMERemoves characters incompatible with file names.

Define Details

+

MAX_CHARACTERS_PER_BOOKPAGE + + +

+

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.

+ + + diff --git a/code/__DEFINES/tg_cooldowns.html b/code/__DEFINES/tg_cooldowns.html new file mode 100644 index 0000000000000..796df0b4e9536 --- /dev/null +++ b/code/__DEFINES/tg_cooldowns.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/tg_cooldowns.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/tg_cooldowns.dm + +

+ + +
MOB_SHARED_COOLDOWN_1COOLDOWN SYSTEMS

Define Details

+

MOB_SHARED_COOLDOWN_1 + + +

+

COOLDOWN SYSTEMS

+ + + diff --git a/code/__DEFINES/tgs.html b/code/__DEFINES/tgs.html new file mode 100644 index 0000000000000..73362a02e20a8 --- /dev/null +++ b/code/__DEFINES/tgs.html @@ -0,0 +1,232 @@ + + + + + + + code/__DEFINES/tgs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/tgs.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TGS_EVENT_REBOOT_MODE_CHANGECreate 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_PORT_SWAPBefore a port change is about to happen, extra parameters is new port.
TGS_EVENT_INSTANCE_RENAMEDBefore the instance is renamed, extra parameter is the new name.
TGS_EVENT_WATCHDOG_REATTACHAfter the watchdog reattaches to DD, extra parameter is the new /datum/tgs_version of the server.
TGS_EVENT_HEALTH_CHECKWhen the watchdog sends a health check to DD. No parameters.
TGS_EVENT_REPO_RESET_ORIGINWhen the repository is reset to its origin reference. Parameters: Reference name, Commit SHA.
TGS_EVENT_REPO_CHECKOUTWhen the repository performs a checkout. Parameters: Checkout git object.
TGS_EVENT_REPO_FETCHWhen the repository performs a fetch operation. No parameters.
TGS_EVENT_REPO_MERGE_PULL_REQUESTWhen the repository test merges. Parameters: PR Number, PR Sha, (Nullable) Comment made by TGS user.
TGS_EVENT_REPO_PRE_SYNCHRONIZEBefore the repository makes a sychronize operation. Parameters: Absolute repostiory path.
TGS_EVENT_ENGINE_INSTALL_STARTBefore a engine install operation begins. Parameters: Version string of the installing engine.
TGS_EVENT_ENGINE_INSTALL_FAILWhen a engine install operation fails. Parameters: Error message
TGS_EVENT_ENGINE_ACTIVE_VERSION_CHANGEWhen the active engine version changes. Parameters: (Nullable) Version string of the current engine, version string of the new engine.
TGS_EVENT_COMPILE_STARTWhen the compiler starts running. Parameters: Game directory path, origin commit SHA.
TGS_EVENT_COMPILE_CANCELLEDWhen a compile is cancelled. No parameters.
TGS_EVENT_COMPILE_FAILUREWhen a compile fails. Parameters: Game directory path, [TRUE]/[FALSE] based on if the cause for failure was DMAPI validation.
TGS_EVENT_COMPILE_COMPLETEWhen a compile operation completes. Note, this event fires before the new .dmb is loaded into the watchdog. Consider using the TGS_EVENT_DEPLOYMENT_COMPLETE instead. Parameters: Game directory path.
TGS_EVENT_INSTANCE_AUTO_UPDATE_STARTWhen an automatic update for the current instance begins. No parameters.
TGS_EVENT_REPO_MERGE_CONFLICTWhen the repository encounters a merge conflict: Parameters: Base SHA, target SHA, base reference, target reference.
TGS_EVENT_DEPLOYMENT_COMPLETEWhen a deployment completes. No Parameters.
TGS_EVENT_WATCHDOG_SHUTDOWNBefore the watchdog shuts down. Not sent for graceful shutdowns. No parameters.
TGS_EVENT_WATCHDOG_DETACHBefore the watchdog detaches for a TGS update/restart. No parameters.
TGS_EVENT_WORLD_PRIMEWatchdog event when TgsInitializationComplete() is called. No parameters.
TGS_EVENT_REPO_SUBMODULE_UPDATEAfter a single submodule update is performed. Parameters: Updated submodule name.
TGS_EVENT_PRE_DREAM_MAKERAfter CodeModifications are applied, before DreamMaker is run. Parameters: Game directory path, origin commit sha, version string of the used engine.
TGS_EVENT_DEPLOYMENT_CLEANUPWhenever a deployment folder is deleted from disk. Parameters: Game directory path.
TGS_REBOOT_MODE_NORMALThe server will reboot normally.
TGS_REBOOT_MODE_SHUTDOWNThe server will stop running on reboot.
TGS_REBOOT_MODE_RESTARTThe watchdog will restart on reboot.
TGS_SECURITY_TRUSTEDDreamDaemon Trusted security level.
TGS_SECURITY_SAFEDreamDaemon Safe security level.
TGS_SECURITY_ULTRASAFEDreamDaemon Ultrasafe security level.
TGS_VISIBILITY_PUBLICDreamDaemon public visibility level.
TGS_VISIBILITY_PRIVATEDreamDaemon private visibility level.
TGS_VISIBILITY_INVISIBLEDreamDaemon invisible visibility level.
TGS_ENGINE_TYPE_BYONDThe Build Your Own Net Dream engine.
TGS_ENGINE_TYPE_OPENDREAMThe OpenDream engine.
TGS_TOPICPut this at the start of [/world/proc/Topic].
/datum/tgs_revision_informationRepresents git revision information.
/datum/tgs_versionRepresents a version.
/datum/tgs_revision_information/test_mergeRepresents a merge of a GitHub pull request.
/datum/tgs_chat_channelRepresents a connected chat channel.
/datum/tgs_event_handlerUser definable handler for TGS events.
/datum/tgs_chat_commandUser definable chat command.
/datum/tgs_message_contentUser definable chat message.
/datum/tgs_chat_embed/structureUser definable chat embed. Currently mirrors Discord chat embeds. See https://discord.com/developers/docs/resources/channel#embed-object-embed-structure for details.
/datum/tgs_chat_embed/mediaCommon datum for similar discord embed medias.
/datum/tgs_chat_embed/footerSee https://discord.com/developers/docs/resources/channel#embed-object-embed-footer-structure for details.
/datum/tgs_chat_embed/providerSee https://discord.com/developers/docs/resources/channel#embed-object-embed-provider-structure for details.
/datum/tgs_chat_embed/provider/authorSee https://discord.com/developers/docs/resources/channel#embed-object-embed-author-structure for details. Must have name set in New().
/datum/tgs_chat_embed/fieldSee 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.

+ + + diff --git a/code/__DEFINES/tgui_defines.html b/code/__DEFINES/tgui_defines.html new file mode 100644 index 0000000000000..cc5b467297a39 --- /dev/null +++ b/code/__DEFINES/tgui_defines.html @@ -0,0 +1,100 @@ + + + + + + + code/__DEFINES/tgui_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/tgui_defines.dm + +

+ + + + + + + + + + + + + + + +
UI_INTERACTIVEGreen eye; fully interactive
UI_UPDATEOrange eye; updates but is not interactive
UI_DISABLEDRed eye; disabled, does not update
UI_CLOSEUI Should close
TGUI_WINDOW_SOFT_LIMITMaximum number of windows that can be suspended/reused
TGUI_WINDOW_HARD_LIMITMaximum number of open windows
TGUI_PING_TIMEOUTMaximum ping timeout allowed to detect zombie windows
TGUI_REFRESH_FULL_UPDATE_COOLDOWNUsed for rate-limiting to prevent DoS by excessively refreshing a TGUI window
TGUI_WINDOW_CLOSEDWindow does not exist
TGUI_WINDOW_LOADINGWindow was just opened, but is still not ready to be sent data
TGUI_WINDOW_READYWindow is free and ready to receive data
TGUI_WINDOW_IDGet a window id based on the provided pool index
TGUI_WINDOW_INDEXGet a pool index of the provided window id
TGUI_CREATE_MESSAGECreates a message packet for sending via output()

Define Details

+

TGUI_CREATE_MESSAGE + + + +

+

Creates a message packet for sending via output()

TGUI_PING_TIMEOUT + + +

+

Maximum ping timeout allowed to detect zombie windows

TGUI_REFRESH_FULL_UPDATE_COOLDOWN + + +

+

Used for rate-limiting to prevent DoS by excessively refreshing a TGUI window

TGUI_WINDOW_CLOSED + + +

+

Window does not exist

TGUI_WINDOW_HARD_LIMIT + + +

+

Maximum number of open windows

TGUI_WINDOW_ID + + + +

+

Get a window id based on the provided pool index

TGUI_WINDOW_INDEX + + + +

+

Get a pool index of the provided window id

TGUI_WINDOW_LOADING + + +

+

Window was just opened, but is still not ready to be sent data

TGUI_WINDOW_READY + + +

+

Window is free and ready to receive data

TGUI_WINDOW_SOFT_LIMIT + + +

+

Maximum number of windows that can be suspended/reused

UI_CLOSE + + +

+

UI Should close

UI_DISABLED + + +

+

Red eye; disabled, does not update

UI_INTERACTIVE + + +

+

Green eye; fully interactive

UI_UPDATE + + +

+

Orange eye; updates but is not interactive

+ + + diff --git a/code/__DEFINES/turfs.html b/code/__DEFINES/turfs.html new file mode 100644 index 0000000000000..777e80dbcc900 --- /dev/null +++ b/code/__DEFINES/turfs.html @@ -0,0 +1,42 @@ + + + + + + + code/__DEFINES/turfs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/turfs.dm + +

+ + + + +
TURF_PATHING_PASS_DENSITYTurf will be passable if density is 0
TURF_PATHING_PASS_PROCTurf will be passable depending on [CanPathfindPass] return value
TURF_PATHING_PASS_NOTurf is never passable

Define Details

+

TURF_PATHING_PASS_DENSITY + + +

+

Turf will be passable if density is 0

TURF_PATHING_PASS_NO + + +

+

Turf is never passable

TURF_PATHING_PASS_PROC + + +

+

Turf will be passable depending on [CanPathfindPass] return value

+ + + diff --git a/code/__DEFINES/verb_manager.html b/code/__DEFINES/verb_manager.html new file mode 100644 index 0000000000000..adb1a5e2ddb9c --- /dev/null +++ b/code/__DEFINES/verb_manager.html @@ -0,0 +1,76 @@ + + + + + + + code/__DEFINES/verb_manager.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/verb_manager.dm + +

+ + + + + + +
VERB_OVERTIME_QUEUE_THRESHOLDverb 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
VERB_HIGH_PRIORITY_QUEUE_THRESHOLDqueuing tick_usage threshold for verbs that need lower latency more than most verbs.
VERB_DEFAULT_QUEUE_THRESHOLDdefault queuing tick_usage threshold for most verbs which can allow a small amount of latency to be processed in the next tick
TRY_QUEUE_VERBattempt 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_OR_CALL_VERBqueue 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

+ + + diff --git a/code/__DEFINES/zoom.html b/code/__DEFINES/zoom.html new file mode 100644 index 0000000000000..f25f1de5df640 --- /dev/null +++ b/code/__DEFINES/zoom.html @@ -0,0 +1,39 @@ + + + + + + + code/__DEFINES/zoom.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__DEFINES/zoom.dm + +

+ + + +
ZOOM_METHOD_WIELDHow the scope component is toggled. +Wielding the object with both hands toggles the zoom. Requires the two-handed component to work.
ZOOM_METHOD_ITEM_ACTIONActivated 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.

+ + + diff --git a/code/__HELPERS/api.html b/code/__HELPERS/api.html new file mode 100644 index 0000000000000..aadf12a6bce07 --- /dev/null +++ b/code/__HELPERS/api.html @@ -0,0 +1,28 @@ + + + + + + + code/__HELPERS/api.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/__HELPERS/api.dm + +

+ + + +
/proc/MakeAPICallInternal API Caller
+ + + diff --git a/code/__HELPERS/bitflag_lists.html b/code/__HELPERS/bitflag_lists.html new file mode 100644 index 0000000000000..4a8b3a008d2d7 --- /dev/null +++ b/code/__HELPERS/bitflag_lists.html @@ -0,0 +1,41 @@ + + + + + + + code/__HELPERS/bitflag_lists.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__HELPERS/bitflag_lists.dm + +

+ + +
SET_BITFLAG_LISTSystem 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:

+
+ + + diff --git a/code/__HELPERS/files.html b/code/__HELPERS/files.html new file mode 100644 index 0000000000000..d54180a8ec07c --- /dev/null +++ b/code/__HELPERS/files.html @@ -0,0 +1,31 @@ + + + + + + + code/__HELPERS/files.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/__HELPERS/files.dm + +

+ + + + + +
/proc/md5filepathReturns the md5 of a file at a given path.
/proc/md5asfileSave file as an external file then md5 it. +Used because md5ing files stored in the rsc sometimes gives incorrect md5 results.
+ + + diff --git a/code/__HELPERS/game.html b/code/__HELPERS/game.html new file mode 100644 index 0000000000000..bd310d3e2c727 --- /dev/null +++ b/code/__HELPERS/game.html @@ -0,0 +1,30 @@ + + + + + + + code/__HELPERS/game.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/__HELPERS/game.dm + +

+ + + + + +
/proc/get_valid_vent_spawnsReturns a list of vents that can be used as a potential spawn if they meet the criteria set by the arguments
/proc/get_bbox_of_atomsGet a bounding box of a list of atoms.
+ + + diff --git a/code/__HELPERS/global_lists.html b/code/__HELPERS/global_lists.html new file mode 100644 index 0000000000000..22aa053e395f2 --- /dev/null +++ b/code/__HELPERS/global_lists.html @@ -0,0 +1,28 @@ + + + + + + + code/__HELPERS/global_lists.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/__HELPERS/global_lists.dm + +

+ + + +
/proc/makeDatumRefListsInitial Building
+ + + diff --git a/code/__HELPERS/icon_helpers.html b/code/__HELPERS/icon_helpers.html new file mode 100644 index 0000000000000..6f81e103e2d23 --- /dev/null +++ b/code/__HELPERS/icon_helpers.html @@ -0,0 +1,28 @@ + + + + + + + code/__HELPERS/icon_helpers.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/__HELPERS/icon_helpers.dm + +

+ + + +
/proc/icon_existsChecks if the given iconstate exists in the given file, caching the result. Setting no_sprite to TRUE will print a stack trace ONCE.
+ + + diff --git a/code/__HELPERS/iconprocs.html b/code/__HELPERS/iconprocs.html new file mode 100644 index 0000000000000..4bba5ebf87f6f --- /dev/null +++ b/code/__HELPERS/iconprocs.html @@ -0,0 +1,52 @@ + + + + + + + code/__HELPERS/iconprocs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/__HELPERS/iconprocs.dm + +

+ + + + + + + + + + + + + + + +
/proc/generate_and_hash_rsc_fileGenerates a filename for a given asset. +Like generate_asset_name(), except returns the rsc reference and the rsc file hash as well as the asset name (sans extension) +Used so that certain asset files dont have to be hashed twice
/proc/get_dummy_savefileGets a dummy savefile for usage in icon generation. +Savefiles generated from this proc will be empty.
/proc/icon2base64Converts 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)
/proc/is_valid_dmi_filegiven a text string, returns whether it is a valid dmi icons folder path
/proc/get_icon_dmi_pathGiven an icon object, dmi file path, or atom/image/mutable_appearance, attempts to find and return an associated dmi file path. +A weird quirk about dm is that /icon objects represent both compile-time or dynamic icons in the rsc, +But stringifying rsc references returns a dmi file path +ONLY if that icon represents a completely unchanged dmi file from when the game was compiled. +So if the given object is associated with an icon that was in the rsc when the game was compiled, this returns a path. otherwise it returns ""
/proc/icon2assetThe dmi file path we attempt to return if the given object argument is associated with a stringifiable icon +If successful, this looks like "icons/path/to/dmi_file.dmi" +generate an asset for the given icon or the icon of the given appearance for [thing], and send it to any clients in target. +Arguments:
/proc/costly_icon2assetCostlier version of icon2asset() that uses getFlatIcon() to account for overlays, underlays, etc. Use with extreme moderation, ESPECIALLY on mobs.
+ + + diff --git a/code/__HELPERS/lighting_helpers.html b/code/__HELPERS/lighting_helpers.html new file mode 100644 index 0000000000000..0d1be24924535 --- /dev/null +++ b/code/__HELPERS/lighting_helpers.html @@ -0,0 +1,30 @@ + + + + + + + code/__HELPERS/lighting_helpers.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/__HELPERS/lighting_helpers.dm + +

+ + + + + +
/proc/emissive_appearanceProduces 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.
/proc/emissive_blockerProduces a mutable appearance glued to the EMISSIVE_PLANE dyed to be the EM_BLOCK_COLOR.
+ + + diff --git a/code/__HELPERS/lists.html b/code/__HELPERS/lists.html new file mode 100644 index 0000000000000..ec0fa71501204 --- /dev/null +++ b/code/__HELPERS/lists.html @@ -0,0 +1,206 @@ + + + + + + + code/__HELPERS/lists.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__HELPERS/lists.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
COMPARE_KEYPassed into BINARY_INSERT to compare keys
COMPARE_VALUEPassed into BINARY_INSERT to compare values
BINARY_INSERT_TGBinary 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.
/proc/pickweightPicks an element based on its weight. +L - The input list
/proc/pick_multiple_uniquePicks 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
LAZYINITLISTInitialize the lazylist
UNSETEMPTYIf the provided list is empty, set it to null
ASSOC_UNSETEMPTYIf the provided key -> list is empty, remove it from the list
LAZYLISTDUPLICATELike LAZYCOPY - copies an input list if the list has entries, If it doesn't the assigned list is nulled
LAZYREMOVERemove an item from the list, set the list to null if empty
LAZYADDAdd an item to the list, if the list is null it will initialize it
LAZYORAdd an item to the list if not already present, if the list is null it will initialize it
LAZYDISTINCTADDAdds I to L, initializing L if necessary, if I is not already in L
LAZYACCESSreturns L[I] if L exists and I is a valid index of L, runtimes if L is not a list
LAZYLENReturns the length of L
LAZYNULLSets a list to null
LAZYCLEARLISTRemoves all elements from the list
LAZYCOPYUse LAZYLISTDUPLICATE instead if you want it to null with no entries
LAZYSETSets the item K to the value V, if the list is null it will initialize it
LAZYSETLENSets the length of a lazylist
LAZYADDASSOCAdds to the item K the value V, if the list is null it will initialize it
LAZYADDASSOCLISTThis is used to add onto lazy assoc list when the value you're adding is a /list/. This one has extra safety over lazyaddassoc because the value could be null (and thus cant be used to += objects)
LAZYREMOVEASSOCRemoves the value V from the item K, if the item K is empty will remove it from the list, if the list is empty will set the list to null
LAZYACCESSASSOCAccesses an associative list, returns null if nothing is found
QDEL_LAZYLISTQdel every item in the list before setting the list to null
LAZYINIf the lazy list is currently initialized find item I in list L
ISINDEXSAFEReturns whether a numerical index is within a given list's bounds. Faster than isnull(LAZYACCESS(L, I)).
LAZYORASSOCLISTPerforms an insertion on the given lazy list with the given key and value. If the value already exists, a new one will not be made.
/proc/make_associativeA proc for turning a list into an associative list.
/proc/compare_listcompare two lists, returns TRUE if they are the same
/proc/avoid_assoc_duplicate_keystakes 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

Define Details

+

ASSOC_UNSETEMPTY + + + +

+

If the provided key -> list is empty, remove it from the list

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

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

+ + + diff --git a/code/__HELPERS/mob_helpers.html b/code/__HELPERS/mob_helpers.html new file mode 100644 index 0000000000000..2be7858a7a20d --- /dev/null +++ b/code/__HELPERS/mob_helpers.html @@ -0,0 +1,37 @@ + + + + + + + code/__HELPERS/mob_helpers.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/__HELPERS/mob_helpers.dm + +

+ + + + + + + + + + + +
/proc/random_body_accessoryReturns a random body accessory for a given species name. Can be null based on is_optional argument.
/proc/add_attack_logsCreates 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.
/proc/check_active_security_force
/proc/safe_get_ckeySafe ckey getter
/proc/round_healthrounds value to limited symbols after the period for organ damage and other values
+ + + diff --git a/code/__HELPERS/path.html b/code/__HELPERS/path.html new file mode 100644 index 0000000000000..88804c2122cae --- /dev/null +++ b/code/__HELPERS/path.html @@ -0,0 +1,52 @@ + + + + + + + code/__HELPERS/path.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__HELPERS/path.dm + +

+ + + + + + + + + +
/proc/get_path_toThis 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.
CAN_STEPA 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. +Note that this can only be used inside the [datum/pathfind][pathfind datum] since it uses variables from said datum. +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
STEP_NOT_HERE_BUT_THEREAnother helper macro for JPS, for telling when a node has forced neighbors that need expanding
/datum/jps_nodeThe JPS Node datum represents a turf that we find interesting enough to add to the open list and possibly search for new tiles from
/proc/HeapPathWeightCompareTODO: Macro this to reduce proc overhead
/datum/pathfindThe datum used to handle the JPS pathfinding, completely self-contained

Define Details

+

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. +Note that this can only be used inside the [datum/pathfind][pathfind datum] since it uses variables from said datum. +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

STEP_NOT_HERE_BUT_THERE + + + +

+

Another helper macro for JPS, for telling when a node has forced neighbors that need expanding

+ + + diff --git a/code/__HELPERS/radiation_helpers.html b/code/__HELPERS/radiation_helpers.html new file mode 100644 index 0000000000000..236bbd79d2e6b --- /dev/null +++ b/code/__HELPERS/radiation_helpers.html @@ -0,0 +1,30 @@ + + + + + + + code/__HELPERS/radiation_helpers.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/__HELPERS/radiation_helpers.dm + +

+ + + +
/proc/get_rad_contentsA 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
+ + + diff --git a/code/__HELPERS/screen_objs.html b/code/__HELPERS/screen_objs.html new file mode 100644 index 0000000000000..98a6f915ededb --- /dev/null +++ b/code/__HELPERS/screen_objs.html @@ -0,0 +1,40 @@ + + + + + + + code/__HELPERS/screen_objs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/__HELPERS/screen_objs.dm + +

+ + + + + + + + + +
/proc/screen_loc_to_offsetTakes 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
/proc/offset_to_screen_locTakes 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
/proc/get_valid_screen_locationReturns a valid location to place a screen object without overflowing the viewport
/proc/cut_relative_directionTakes a screen_loc string and cut out any directions like NORTH or SOUTH
+ + + diff --git a/code/__HELPERS/text.html b/code/__HELPERS/text.html new file mode 100644 index 0000000000000..f8cc72efaef4d --- /dev/null +++ b/code/__HELPERS/text.html @@ -0,0 +1,39 @@ + + + + + + + code/__HELPERS/text.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/__HELPERS/text.dm + +

+ + + + + + + + + + + + + +
/proc/sanitize_for_icsanitize() with a pre-set list of characters to remove from IC speech.
/proc/trim_lengthReturns a string that does not exceed max_length characters in size
/proc/strip_html_tagsStrips HTML tags (and only tags) from the input. +The result may still include HTML entities, like ' for '
/proc/client2rankcolourProc to generate a "rank colour" from a client
/proc/format_si_suffixFormats num with an SI prefix.
/proc/wiki_linkCreates a hyperlink for a specified wiki article.
+ + + diff --git a/code/__HELPERS/time.html b/code/__HELPERS/time.html new file mode 100644 index 0000000000000..bc6aa607b1731 --- /dev/null +++ b/code/__HELPERS/time.html @@ -0,0 +1,35 @@ + + + + + + + code/__HELPERS/time.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/__HELPERS/time.dm + +

+ + + + + + + + + +
/proc/start_watchReturns "watch handle" (really just a timestamp :V)
/proc/stop_watchReturns number of seconds elapsed. +@param wh number The "Watch Handle" from start_watch(). (timestamp)
/proc/seconds_to_clockTake a value in seconds and makes it display like a clock. Hours are stripped. (mm:ss)
/proc/seconds_to_full_clockTake a value in seconds and makes it display like a clock (h:mm:ss)
+ + + diff --git a/code/__HELPERS/trait_helpers.html b/code/__HELPERS/trait_helpers.html new file mode 100644 index 0000000000000..7440ffcda0d05 --- /dev/null +++ b/code/__HELPERS/trait_helpers.html @@ -0,0 +1,225 @@ + + + + + + + code/__HELPERS/trait_helpers.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__HELPERS/trait_helpers.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ADD_TRAITAdds a status trait to the target datum.
REMOVE_TRAITRemoves a status trait from a target datum.
REMOVE_TRAITS_NOT_INRemoves all status traits from a target datum which were NOT added by sources.
REMOVE_TRAITS_INRemoves all status traits from a target datum which were added by sources.
HAS_MIND_TRAITA simple helper for checking traits in a mob's mind
UNIQUE_TRAIT_SOURCEGives a unique trait source for any given datum
TRAIT_DODGE_ALL_OBJECTSAllows a mob to dodge all thrown objects
TRAIT_MENTOR_OBSERVINGused 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_SHOW_WIRE_INFOShow what machine/door wires do when held.
TRAIT_SUPERMATTER_IMMUNEImmune to the SM / makes you immune to it when worn
TRAIT_WIELDEDAn item that is being wielded.
TRAIT_OBSCURED_WIRESWires on this will have their titles randomized for those with SHOW_WIRES
TRAIT_FORCES_OPEN_DOORS_ITEMForces open doors after a delay specific to the item
TRAIT_NO_THROWN_MESSAGEMakes the item no longer spit out a visible message when thrown
TRAIT_SILENT_INSERTIONMakes the item not display a message on storage insertion
TRAIT_SURGICALA surgical tool; when in hand in help intent (and with a surgery in progress) won't attack the user
TRAIT_ADVANCED_SURGICALAn advanced surgical tool. If a surgical tool has this flag, it will be able to automatically repeat steps until they succeed.
TRAIT_TURF_COVEREDPrevent 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_OIL_SLICKEDAn item that is oiled. If sprayed with water, it's slowdown reverts to normal.
TRAIT_CAN_POINT_WITHAn item that can be pointed at mobs, while on non-help intent.
TRAIT_ORGAN_INSERTED_WHILE_DEADAn organ that was inserted into a dead mob, that has not been revived yet
TRAIT_ADJACENCY_TRANSPARENTAn /obj that should not increase the "depth" of the search for adjacency, +e.g. a storage container or a modsuit.
TRAIT_CURRENTLY_Z_MOVINGA trait for determining if a atom/movable is currently crossing into another z-level by using of /turf/space z-level "destination-xyz" transfers
MENTOR_OBSERVINGMentor observing
TRAIT_KNOCKEDOUTForces the user to stay unconscious.
TRAIT_IMMOBILIZEDPrevents voluntary movement.
TRAIT_FLOOREDPrevents voluntary standing or staying up on its own.
TRAIT_HANDS_BLOCKEDPrevents usage of manipulation appendages (picking, holding or using items, manipulating storage).
TRAIT_UI_BLOCKEDInability to access UI hud elements.
TRAIT_CANNOT_PULLInability to pull things.
TRAIT_RESTRAINEDAbstract condition that prevents movement if being pulled and might be resisted against. Handcuffs and straight jackets, basically.
STATION_TRAIT_BANANIUM_SHIPMENTSTraits given by station traits
TRAIT_BLUESPACE_SPEEDRemoves slowdown while walking on these tiles.

Define Details

+

ADD_TRAIT + + + +

+

Adds a status trait to the target datum.

+

Arguments: (All Required)

+

HAS_MIND_TRAIT + + + +

+

A simple helper for checking traits in a mob's mind

MENTOR_OBSERVING + + +

+

Mentor observing

REMOVE_TRAIT + + + +

+

Removes a status trait from a target datum.

+

ROUNDSTART_TRAIT traits can't be removed without being specified in sources. +Arguments:

+

REMOVE_TRAITS_IN + + + +

+

Removes all status traits from a target datum which were added by sources.

+

Arguments:

+

REMOVE_TRAITS_NOT_IN + + + +

+

Removes all status traits from a target datum which were NOT added by sources.

+

Arguments:

+

STATION_TRAIT_BANANIUM_SHIPMENTS + + +

+

Traits given by station traits

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_BLUESPACE_SPEED + + +

+

Removes slowdown while walking on these tiles.

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_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_DODGE_ALL_OBJECTS + + +

+

Allows a mob to dodge all thrown objects

TRAIT_FLOORED + + +

+

Prevents voluntary standing or staying up on its own.

TRAIT_FORCES_OPEN_DOORS_ITEM + + +

+

Forces open doors after a delay specific to the item

TRAIT_HANDS_BLOCKED + + +

+

Prevents usage of manipulation appendages (picking, holding or using items, manipulating storage).

TRAIT_IMMOBILIZED + + +

+

Prevents voluntary movement.

TRAIT_KNOCKEDOUT + + +

+

Forces the user to stay unconscious.

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_NO_THROWN_MESSAGE + + +

+

Makes the item no longer spit out a visible message when thrown

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_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_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_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_WIELDED + + +

+

An item that is being wielded.

UNIQUE_TRAIT_SOURCE + + + +

+

Gives a unique trait source for any given datum

+ + + diff --git a/code/__HELPERS/unique_ids.html b/code/__HELPERS/unique_ids.html new file mode 100644 index 0000000000000..aa296fd9357fe --- /dev/null +++ b/code/__HELPERS/unique_ids.html @@ -0,0 +1,30 @@ + + + + + + + code/__HELPERS/unique_ids.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/__HELPERS/unique_ids.dm + +

+ + + + + +
/proc/locateUIDLocates a datum based off of the UID
/proc/is_type_in_UID_listIf 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.
+ + + diff --git a/code/__HELPERS/unsorted.html b/code/__HELPERS/unsorted.html new file mode 100644 index 0000000000000..9cad22c4ca2a3 --- /dev/null +++ b/code/__HELPERS/unsorted.html @@ -0,0 +1,51 @@ + + + + + + + code/__HELPERS/unsorted.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/__HELPERS/unsorted.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + +
/proc/get_lineGet a list of turfs in a line from starting_atom to ending_atom.
/proc/get_edge_target_turfReturns the turf located at the map edge in the specified direction relative to target_atom used for mass driver
/proc/get_ranged_target_turf
/proc/get_ranged_target_turf_directGet ranged target turf, but with direct targets as opposed to directions
/datum/coordsSimple datum for storing coordinates.
/proc/get_living_playersThis proc returns every player with a client who is not a ghost or a new_player
/proc/get_atoms_of_typeReturns a list of atoms in a location of a given type. Can be refined to look for pixel-shift.
/proc/parse_caught_click_modifiersReturns a turf based on text inputs, original turf and viewing client
/proc/get_channel_nameReturns the clean name of an audio channel.
/proc/HTTPGetHTTP Get (Powered by RUSTG)
/proc/is_color_darkGiven a color in the format of "#RRGGBB", will return if the color is dark.
/proc/type_list_to_counted_assoc_listThis proc takes a list of types, and returns them in the format below. +[type] = amount of type in list. +Useful for recipes.
+ + + diff --git a/code/__HELPERS/verb_helpers.html b/code/__HELPERS/verb_helpers.html new file mode 100644 index 0000000000000..528b54f1bbe3c --- /dev/null +++ b/code/__HELPERS/verb_helpers.html @@ -0,0 +1,30 @@ + + + + + + + code/__HELPERS/verb_helpers.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/__HELPERS/verb_helpers.dm + +

+ + + + + +
/proc/add_verbhandles adding verbs and updating the stat panel browser
/proc/remove_verbhandles removing verb and sending it to browser to update, use this for removing verbs
+ + + diff --git a/code/__byond_version_compat.html b/code/__byond_version_compat.html new file mode 100644 index 0000000000000..da3fa1c01beba --- /dev/null +++ b/code/__byond_version_compat.html @@ -0,0 +1,38 @@ + + + + + + + code/__byond_version_compat.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/__byond_version_compat.dm + +

+ + + +
PROC_REFValidates the proc exists on this type (or global unfortunately)
REGEX_REPLACE_HANDLERUse 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

+

PROC_REF + + + +

+

Validates the proc exists on this type (or global unfortunately)

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

+ + + diff --git a/code/_compile_options.html b/code/_compile_options.html new file mode 100644 index 0000000000000..50fc124b2efc9 --- /dev/null +++ b/code/_compile_options.html @@ -0,0 +1,34 @@ + + + + + + + code/_compile_options.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/_compile_options.dm + +

+ + +
IS_MODE_COMPILEDAll toggles for the GC ref finder

Define Details

+

IS_MODE_COMPILED + + + +

+

All toggles for the GC ref finder

+

End toggles for the GC ref finder

+ + + diff --git a/code/_globalvars/bitfields.html b/code/_globalvars/bitfields.html new file mode 100644 index 0000000000000..3f86af86d282c --- /dev/null +++ b/code/_globalvars/bitfields.html @@ -0,0 +1,27 @@ + + + + + + + code/_globalvars/bitfields.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/_globalvars/bitfields.dm + +

+ + +
/datum/bitfieldSpecifies a bitfield for smarter debugging
+ + + diff --git a/code/_onclick/click_override.html b/code/_onclick/click_override.html new file mode 100644 index 0000000000000..07a404fed0893 --- /dev/null +++ b/code/_onclick/click_override.html @@ -0,0 +1,28 @@ + + + + + + + code/_onclick/click_override.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/_onclick/click_override.dm + +

+ + +
/datum/middleClickOverride/callback_invokerMiddle 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.
+ + + diff --git a/code/_onclick/hud/action_button.html b/code/_onclick/hud/action_button.html new file mode 100644 index 0000000000000..9b79d7dd28c9e --- /dev/null +++ b/code/_onclick/hud/action_button.html @@ -0,0 +1,27 @@ + + + + + + + code/_onclick/hud/action_button.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/_onclick/hud/action_button.dm + +

+ + +
/atom/movable/screen/action_landingExists so you have a place to put your buttons when you move them around
+ + + diff --git a/code/_onclick/hud/alert.html b/code/_onclick/hud/alert.html new file mode 100644 index 0000000000000..cde45cdbc69f3 --- /dev/null +++ b/code/_onclick/hud/alert.html @@ -0,0 +1,29 @@ + + + + + + + code/_onclick/hud/alert.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/_onclick/hud/alert.dm + +

+ + + + +
/atom/movable/screen/alert/hunger/fat/machineMachine "hunger"
/atom/movable/screen/alert/hunger/fat/vampireVampire "hunger"
/atom/movable/screen/alert/succumbGives the player the option to succumb while in critical condition
+ + + diff --git a/code/_onclick/hud/follow_alert.html b/code/_onclick/hud/follow_alert.html new file mode 100644 index 0000000000000..50c0f2fcb1cf4 --- /dev/null +++ b/code/_onclick/hud/follow_alert.html @@ -0,0 +1,28 @@ + + + + + + + code/_onclick/hud/follow_alert.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/_onclick/hud/follow_alert.dm + +

+ + +
/atom/movable/screen/alert/augury/meteorMeteor alert. +Appears during a meteor storm and allows for auto-following of debris.
+ + + diff --git a/code/_onclick/hud/fullscreen.html b/code/_onclick/hud/fullscreen.html new file mode 100644 index 0000000000000..fef94d99e9923 --- /dev/null +++ b/code/_onclick/hud/fullscreen.html @@ -0,0 +1,31 @@ + + + + + + + code/_onclick/hud/fullscreen.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/_onclick/hud/fullscreen.dm + +

+ + + + +
/atom/movable/screen/fullscreen/stretchStretch 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
/atom/movable/screen/fullscreen/stretch/cursor_catcherAn effect which tracks the cursor's location on the screen
/atom/movable/screen/fullscreen/centerCentered 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
+ + + diff --git a/code/_onclick/hud/map_popups.html b/code/_onclick/hud/map_popups.html new file mode 100644 index 0000000000000..48177519202a3 --- /dev/null +++ b/code/_onclick/hud/map_popups.html @@ -0,0 +1,31 @@ + + + + + + + code/_onclick/hud/map_popups.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/_onclick/hud/map_popups.dm + +

+ + + +
/atom/movable/screen/map_viewA screen object, which acts as a container for turfs and other things +you want to show on the map, which you usually attach to "vis_contents".
/atom/movable/screen/backgroundA generic background object. +It is also implicitly used to allocate a rectangle on the map, which will +be used for auto-scaling the map.
+ + + diff --git a/code/_onclick/hud/plane_master.html b/code/_onclick/hud/plane_master.html new file mode 100644 index 0000000000000..8a2a252817de7 --- /dev/null +++ b/code/_onclick/hud/plane_master.html @@ -0,0 +1,27 @@ + + + + + + + code/_onclick/hud/plane_master.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/_onclick/hud/plane_master.dm + +

+ + +
/atom/movable/screen/plane_master/emissiveThings placed on this mask the lighting plane. Doesn't render directly.
+ + + diff --git a/code/_onclick/hud/plane_master_controller.html b/code/_onclick/hud/plane_master_controller.html new file mode 100644 index 0000000000000..68ed7b74b9d98 --- /dev/null +++ b/code/_onclick/hud/plane_master_controller.html @@ -0,0 +1,27 @@ + + + + + + + code/_onclick/hud/plane_master_controller.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/_onclick/hud/plane_master_controller.dm + +

+ + +
/atom/movable/plane_master_controllerAtom that manages and controls multiple planes. It's an atom so we can hook into add_filter etc. Multiple controllers can control one plane.
+ + + diff --git a/code/_onclick/hud/radial.html b/code/_onclick/hud/radial.html new file mode 100644 index 0000000000000..0cd3063bfe028 --- /dev/null +++ b/code/_onclick/hud/radial.html @@ -0,0 +1,30 @@ + + + + + + + code/_onclick/hud/radial.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/_onclick/hud/radial.dm + +

+ + + +
/proc/radial_menu_helperSimilar 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
+ + + diff --git a/code/controllers/configuration/__config_defines.html b/code/controllers/configuration/__config_defines.html new file mode 100644 index 0000000000000..abaf83ebbffff --- /dev/null +++ b/code/controllers/configuration/__config_defines.html @@ -0,0 +1,63 @@ + + + + + + + code/controllers/configuration/__config_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/controllers/configuration/__config_defines.dm + +

+ + + + + + + +
CONFIG_LOAD_BOOLWrapper to not overwrite a variable if a list key doesnt exist. Auto casts to bools.
CONFIG_LOAD_NUMWrapper to not overwrite a variable if a list key doesnt exist. Auto casts to number.
CONFIG_LOAD_NUM_MULTWrapper 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_STRWrapper to not overwrite a variable if a list key doesnt exist. Auto casts to string.
CONFIG_LOAD_RAWWrapper to not overwrite a variable if a list key doesnt exist. No casting done.
CONFIG_LOAD_LISTWrapper 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.

+ + + diff --git a/code/controllers/configuration/configuration_core.html b/code/controllers/configuration/configuration_core.html new file mode 100644 index 0000000000000..d2a4a5bb3aa24 --- /dev/null +++ b/code/controllers/configuration/configuration_core.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/configuration_core.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/configuration_core.dm + +

+ + +
/datum/server_configurationRepresents a base configuration datum. Has everything else bundled into it
+ + + diff --git a/code/controllers/configuration/sections/admin_configuration.html b/code/controllers/configuration/sections/admin_configuration.html new file mode 100644 index 0000000000000..7fffa22087bdc --- /dev/null +++ b/code/controllers/configuration/sections/admin_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/admin_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/admin_configuration.dm + +

+ + +
/datum/configuration_section/admin_configurationConfig holder for all admin related things
+ + + diff --git a/code/controllers/configuration/sections/afk_configuration.html b/code/controllers/configuration/sections/afk_configuration.html new file mode 100644 index 0000000000000..131763638733e --- /dev/null +++ b/code/controllers/configuration/sections/afk_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/afk_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/afk_configuration.dm + +

+ + +
/datum/configuration_section/afk_configurationConfig holder for all AFK related things
+ + + 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 0000000000000..a7d946826b234 --- /dev/null +++ b/code/controllers/configuration/sections/custom_sprites_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/custom_sprites_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/custom_sprites_configuration.dm + +

+ + +
/datum/configuration_section/custom_sprites_configurationConfig holder for all things regarding custom sprites
+ + + diff --git a/code/controllers/configuration/sections/database_configuration.html b/code/controllers/configuration/sections/database_configuration.html new file mode 100644 index 0000000000000..2cd0fcef76c2e --- /dev/null +++ b/code/controllers/configuration/sections/database_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/database_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/database_configuration.dm + +

+ + +
/datum/configuration_section/database_configurationConfig holder for all database related things
+ + + diff --git a/code/controllers/configuration/sections/discord_configuration.html b/code/controllers/configuration/sections/discord_configuration.html new file mode 100644 index 0000000000000..31ee55aea15b8 --- /dev/null +++ b/code/controllers/configuration/sections/discord_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/discord_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/discord_configuration.dm + +

+ + +
/datum/configuration_section/discord_configurationConfig holder for all things relating to discord webhooks
+ + + diff --git a/code/controllers/configuration/sections/event_configuration.html b/code/controllers/configuration/sections/event_configuration.html new file mode 100644 index 0000000000000..2b7753a73b54d --- /dev/null +++ b/code/controllers/configuration/sections/event_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/event_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/event_configuration.dm + +

+ + +
/datum/configuration_section/event_configurationConfig holder for all stuff relating to ingame random events
+ + + diff --git a/code/controllers/configuration/sections/gamemode_configuration.html b/code/controllers/configuration/sections/gamemode_configuration.html new file mode 100644 index 0000000000000..8dc411b8a1090 --- /dev/null +++ b/code/controllers/configuration/sections/gamemode_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/gamemode_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/gamemode_configuration.dm + +

+ + +
/datum/configuration_section/gamemode_configurationConfig holder for everything regarding gamemodes
+ + + diff --git a/code/controllers/configuration/sections/general_configuration.html b/code/controllers/configuration/sections/general_configuration.html new file mode 100644 index 0000000000000..dc1f1ef14f6c9 --- /dev/null +++ b/code/controllers/configuration/sections/general_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/general_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/general_configuration.dm + +

+ + +
/datum/configuration_section/general_configurationConfig holder for all general/misc things
+ + + diff --git a/code/controllers/configuration/sections/ipintel_configuration.html b/code/controllers/configuration/sections/ipintel_configuration.html new file mode 100644 index 0000000000000..13e85585adfcb --- /dev/null +++ b/code/controllers/configuration/sections/ipintel_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/ipintel_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/ipintel_configuration.dm + +

+ + +
/datum/configuration_section/ipintel_configurationConfig holder for all things relating to IPIntel
+ + + diff --git a/code/controllers/configuration/sections/job_configuration.html b/code/controllers/configuration/sections/job_configuration.html new file mode 100644 index 0000000000000..d95e138e907b7 --- /dev/null +++ b/code/controllers/configuration/sections/job_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/job_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/job_configuration.dm + +

+ + +
/datum/configuration_section/job_configurationConfig holder for all job related things
+ + + diff --git a/code/controllers/configuration/sections/logging_configuration.html b/code/controllers/configuration/sections/logging_configuration.html new file mode 100644 index 0000000000000..9f141087193aa --- /dev/null +++ b/code/controllers/configuration/sections/logging_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/logging_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/logging_configuration.dm + +

+ + +
/datum/configuration_section/logging_configurationConfig holder for all things regarding logging
+ + + diff --git a/code/controllers/configuration/sections/mc_configuration.html b/code/controllers/configuration/sections/mc_configuration.html new file mode 100644 index 0000000000000..a4ebf45c95a60 --- /dev/null +++ b/code/controllers/configuration/sections/mc_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/mc_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/mc_configuration.dm + +

+ + +
/datum/configuration_section/mc_configurationConfig holder for all things regarding the MC
+ + + diff --git a/code/controllers/configuration/sections/metrics_configuration.html b/code/controllers/configuration/sections/metrics_configuration.html new file mode 100644 index 0000000000000..4282d3831f08e --- /dev/null +++ b/code/controllers/configuration/sections/metrics_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/metrics_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/metrics_configuration.dm + +

+ + +
/datum/configuration_section/metrics_configurationConfig holder for stuff relating to metrics management
+ + + diff --git a/code/controllers/configuration/sections/movement_configuration.html b/code/controllers/configuration/sections/movement_configuration.html new file mode 100644 index 0000000000000..e187f0c3b6b33 --- /dev/null +++ b/code/controllers/configuration/sections/movement_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/movement_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/movement_configuration.dm + +

+ + +
/datum/configuration_section/movement_configurationConfig holder for values relating to mob movement speeds
+ + + diff --git a/code/controllers/configuration/sections/overflow_configuration.html b/code/controllers/configuration/sections/overflow_configuration.html new file mode 100644 index 0000000000000..49c67ddf84ee2 --- /dev/null +++ b/code/controllers/configuration/sections/overflow_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/overflow_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/overflow_configuration.dm + +

+ + +
/datum/configuration_section/overflow_configurationConfig holder for all overflow-server related things
+ + + diff --git a/code/controllers/configuration/sections/redis_configuration.html b/code/controllers/configuration/sections/redis_configuration.html new file mode 100644 index 0000000000000..84e9a2ad1a581 --- /dev/null +++ b/code/controllers/configuration/sections/redis_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/redis_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/redis_configuration.dm + +

+ + +
/datum/configuration_section/redis_configurationConfig holder for all redis related things
+ + + diff --git a/code/controllers/configuration/sections/ruin_configuration.html b/code/controllers/configuration/sections/ruin_configuration.html new file mode 100644 index 0000000000000..44e147b096580 --- /dev/null +++ b/code/controllers/configuration/sections/ruin_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/ruin_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/ruin_configuration.dm + +

+ + +
/datum/configuration_section/ruin_configurationConfig holder for all things regarding space ruins and lavaland ruins
+ + + diff --git a/code/controllers/configuration/sections/system_configuration.html b/code/controllers/configuration/sections/system_configuration.html new file mode 100644 index 0000000000000..97d3c42a693bc --- /dev/null +++ b/code/controllers/configuration/sections/system_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/system_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/system_configuration.dm + +

+ + +
/datum/configuration_section/system_configurationConfig holder for stuff relating to server backend management and secrets
+ + + diff --git a/code/controllers/configuration/sections/url_configuration.html b/code/controllers/configuration/sections/url_configuration.html new file mode 100644 index 0000000000000..08f9ef4b7f929 --- /dev/null +++ b/code/controllers/configuration/sections/url_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/url_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/url_configuration.dm + +

+ + +
/datum/configuration_section/url_configurationConfig holder for all the server URLs
+ + + diff --git a/code/controllers/configuration/sections/vote_configuration.html b/code/controllers/configuration/sections/vote_configuration.html new file mode 100644 index 0000000000000..9b195e95e9574 --- /dev/null +++ b/code/controllers/configuration/sections/vote_configuration.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/sections/vote_configuration.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/configuration/sections/vote_configuration.dm + +

+ + +
/datum/configuration_section/vote_configurationConfig holder for stuff relating to the ingame vote system
+ + + diff --git a/code/controllers/failsafe.html b/code/controllers/failsafe.html new file mode 100644 index 0000000000000..bc34cdaeecfea --- /dev/null +++ b/code/controllers/failsafe.html @@ -0,0 +1,33 @@ + + + + + + + code/controllers/failsafe.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/failsafe.dm + +

+ + + + + + + + +
/var/FailsafeFailsafe
/datum/controller/failsafeThis thing pretty much just keeps poking the master controller
/proc/recover_all_SS_and_recreate_masterRecreate all SSs which will still cause data survive due to Recover(), the new Master will then find and take them from global.vars
/proc/delete_all_SS_and_recreate_masterDelete all existing SS to basically start over
+ + + diff --git a/code/controllers/master.html b/code/controllers/master.html new file mode 100644 index 0000000000000..8b7a887201e6c --- /dev/null +++ b/code/controllers/master.html @@ -0,0 +1,28 @@ + + + + + + + code/controllers/master.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/master.dm + +

+ + + +
/var/MasterStonedMC
+ + + diff --git a/code/controllers/subsystem.html b/code/controllers/subsystem.html new file mode 100644 index 0000000000000..824b800f9d26a --- /dev/null +++ b/code/controllers/subsystem.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/subsystem.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/subsystem.dm + +

+ + +
/datum/controller/subsystemDefines a subsystem to be managed by the Master Controller
+ + + diff --git a/code/controllers/subsystem/SSair.html b/code/controllers/subsystem/SSair.html new file mode 100644 index 0000000000000..68c34432d5fc2 --- /dev/null +++ b/code/controllers/subsystem/SSair.html @@ -0,0 +1,28 @@ + + + + + + + code/controllers/subsystem/SSair.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/subsystem/SSair.dm + +

+ + + +
/datum/resumable_cost_counterA cost counter for resumable, repeating processes.
/datum/milla_safeCreate a subclass of this and implement on_run to manipulate tile air safely.
+ + + diff --git a/code/controllers/subsystem/SSambience.html b/code/controllers/subsystem/SSambience.html new file mode 100644 index 0000000000000..5a9958d4dbb81 --- /dev/null +++ b/code/controllers/subsystem/SSambience.html @@ -0,0 +1,28 @@ + + + + + + + code/controllers/subsystem/SSambience.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/subsystem/SSambience.dm + +

+ + + +
/var/SSambienceThe subsystem used to play ambience to users every now and then, makes them real excited.
+ + + diff --git a/code/controllers/subsystem/SSblackbox.html b/code/controllers/subsystem/SSblackbox.html new file mode 100644 index 0000000000000..7c62c12128572 --- /dev/null +++ b/code/controllers/subsystem/SSblackbox.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/subsystem/SSblackbox.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/subsystem/SSblackbox.dm + +

+ + +
/datum/feedback_variableDatum to hold feedback data, which gets logged at round end
+ + + diff --git a/code/controllers/subsystem/SSchat.html b/code/controllers/subsystem/SSchat.html new file mode 100644 index 0000000000000..095a5dc72f5e6 --- /dev/null +++ b/code/controllers/subsystem/SSchat.html @@ -0,0 +1,29 @@ + + + + + + + code/controllers/subsystem/SSchat.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/subsystem/SSchat.dm + +

+ + + +
/var/SSchatCopyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT
+ + + diff --git a/code/controllers/subsystem/SScleanup.html b/code/controllers/subsystem/SScleanup.html new file mode 100644 index 0000000000000..aa99e15f91651 --- /dev/null +++ b/code/controllers/subsystem/SScleanup.html @@ -0,0 +1,28 @@ + + + + + + + code/controllers/subsystem/SScleanup.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/subsystem/SScleanup.dm + +

+ + + +
/var/SScleanup
+ + + diff --git a/code/controllers/subsystem/SSdbcore.html b/code/controllers/subsystem/SSdbcore.html new file mode 100644 index 0000000000000..cea8c01805d9f --- /dev/null +++ b/code/controllers/subsystem/SSdbcore.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/subsystem/SSdbcore.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/subsystem/SSdbcore.dm + +

+ + +
/datum/db_queryDatum based handler for all database queries
+ + + diff --git a/code/controllers/subsystem/SSinput.html b/code/controllers/subsystem/SSinput.html new file mode 100644 index 0000000000000..4c57d8fa9a8d4 --- /dev/null +++ b/code/controllers/subsystem/SSinput.html @@ -0,0 +1,32 @@ + + + + + + + code/controllers/subsystem/SSinput.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/controllers/subsystem/SSinput.dm + +

+ + +
AUTO_CULL_TIMECulling 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.

+ + + diff --git a/code/controllers/subsystem/SSping.html b/code/controllers/subsystem/SSping.html new file mode 100644 index 0000000000000..1cf552f4a4d07 --- /dev/null +++ b/code/controllers/subsystem/SSping.html @@ -0,0 +1,28 @@ + + + + + + + code/controllers/subsystem/SSping.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/subsystem/SSping.dm + +

+ + +

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

+ + + diff --git a/code/controllers/subsystem/SSstatpanel.html b/code/controllers/subsystem/SSstatpanel.html new file mode 100644 index 0000000000000..f1b8b13de51f6 --- /dev/null +++ b/code/controllers/subsystem/SSstatpanel.html @@ -0,0 +1,29 @@ + + + + + + + code/controllers/subsystem/SSstatpanel.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/subsystem/SSstatpanel.dm + +

+ + +
/datum/object_window_infoDatum that holds and tracks info about a client's object window +Really only exists because I want to be able to do logic with signals +And need a safe place to do the registration
+ + + diff --git a/code/controllers/subsystem/SStgui.html b/code/controllers/subsystem/SStgui.html new file mode 100644 index 0000000000000..db4347f643ec9 --- /dev/null +++ b/code/controllers/subsystem/SStgui.html @@ -0,0 +1,28 @@ + + + + + + + code/controllers/subsystem/SStgui.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/subsystem/SStgui.dm + +

+ + + +
/var/SStguitgui subsystem
+ + + diff --git a/code/controllers/subsystem/SStimer.html b/code/controllers/subsystem/SStimer.html new file mode 100644 index 0000000000000..7bb9b79d44eb2 --- /dev/null +++ b/code/controllers/subsystem/SStimer.html @@ -0,0 +1,57 @@ + + + + + + + code/controllers/subsystem/SStimer.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/controllers/subsystem/SStimer.dm + +

+ + + + + + + + + + + + +
BUCKET_LENControls how many buckets should be kept, each representing a tick. (1 minutes worth)
BUCKET_POSHelper for getting the correct bucket for a given timer
TIMER_MAXGets the maximum time at which timers will be invoked from buckets, used for deferring to secondary queue
TIMER_ID_MAXMax float with integer precision
/var/SStimer
/datum/timedeventThis is the actual timer, it contains the callback and necessary data to maintain +the timer.
/proc/addtimerCreate a new timer and insert it in the queue. +You should not call this directly, and should instead use the addtimer macro, which includes source information.
/proc/deltimerDelete a timer

Define Details

+

BUCKET_LEN + + +

+

Controls how many buckets should be kept, each representing a tick. (1 minutes worth)

BUCKET_POS + + + +

+

Helper for getting the correct bucket for a given timer

TIMER_ID_MAX + + +

+

Max float with integer precision

TIMER_MAX + + +

+

Gets the maximum time at which timers will be invoked from buckets, used for deferring to secondary queue

+ + + diff --git a/code/controllers/subsystem/SSverb_manager.html b/code/controllers/subsystem/SSverb_manager.html new file mode 100644 index 0000000000000..0bbd2832f4e8c --- /dev/null +++ b/code/controllers/subsystem/SSverb_manager.html @@ -0,0 +1,32 @@ + + + + + + + code/controllers/subsystem/SSverb_manager.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/subsystem/SSverb_manager.dm + +

+ + + + + +
/var/SSverb_managerSSverb_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.
/proc/_queue_verbqueue 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.
+ + + 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 0000000000000..34a3caf28ffba --- /dev/null +++ b/code/controllers/subsystem/non_firing/SSpersistent_data.html @@ -0,0 +1,28 @@ + + + + + + + code/controllers/subsystem/non_firing/SSpersistent_data.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/controllers/subsystem/non_firing/SSpersistent_data.dm + +

+ + + +
/var/SSpersistent_data
+ + + diff --git a/code/datums/action.html b/code/datums/action.html new file mode 100644 index 0000000000000..eb0ea111e6ecc --- /dev/null +++ b/code/datums/action.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/action.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/action.dm + +

+ + +
/datum/action/item_action/organ_actionprset for organ actions
+ + + diff --git a/code/datums/ai_law_sets.html b/code/datums/ai_law_sets.html new file mode 100644 index 0000000000000..8cababf4d0ff3 --- /dev/null +++ b/code/datums/ai_law_sets.html @@ -0,0 +1,46 @@ + + + + + + + code/datums/ai_law_sets.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/ai_law_sets.dm + +

+ + + + + + + + + + + + + + + + + + + + + +
/datum/ai_laws/asimovAsimov
/datum/ai_laws/crewsimovCrewsimov
/datum/ai_laws/quarantineQuarantine.
/datum/ai_laws/nanotrasenNanotrasen/Malf
/datum/ai_laws/nanotrasen_aggressiveNanotrasen Aggressive
/datum/ai_laws/robocopRobocop
/datum/ai_laws/paladinP.A.L.A.D.I.N.
/datum/ai_laws/corporateCorporate
/datum/ai_laws/tyrantT.Y.R.A.N.T.
/datum/ai_laws/antimovAntimov
/datum/ai_laws/pranksimovPranksimov
/datum/ai_laws/cctvCCTV
/datum/ai_laws/hippocraticHippocratic Oath
/datum/ai_laws/maintainStation Efficiency
/datum/ai_laws/peacekeeperPeacekeeper
/datum/ai_laws/deathsquadDeathsquad
/datum/ai_laws/syndicate_overrideSyndicate
/datum/ai_laws/ert_overrideERT
/datum/ai_laws/ninja_overrideNinja
/datum/ai_laws/droneDrone
+ + + diff --git a/code/datums/chat_payload.html b/code/datums/chat_payload.html new file mode 100644 index 0000000000000..3f8b1c58fc638 --- /dev/null +++ b/code/datums/chat_payload.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/chat_payload.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/chat_payload.dm + +

+ + +
/datum/chat_payloadStores information about a chat payload
+ + + diff --git a/code/datums/chatmessage.html b/code/datums/chatmessage.html new file mode 100644 index 0000000000000..b9d792967c780 --- /dev/null +++ b/code/datums/chatmessage.html @@ -0,0 +1,91 @@ + + + + + + + code/datums/chatmessage.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/datums/chatmessage.dm + +

+ + + + + + + + + + + + + + +
CHAT_MESSAGE_SPAWN_TIMEHow long the chat message's spawn-in animation will occur for
CHAT_MESSAGE_LIFESPANHow long the chat message will exist prior to any exponential decay
CHAT_MESSAGE_EOL_FADEHow long the chat message's end of life fading animation will occur for
CHAT_MESSAGE_GRACE_PERIODGrace period for fade before we actually delete the chat message
CHAT_MESSAGE_EXP_DECAYFactor of how much the message index (number of messages) will account to exponential decay
CHAT_MESSAGE_HEIGHT_DECAYFactor of how much height will account to exponential decay
CHAT_MESSAGE_APPROX_LHEIGHTApproximate height in pixels of an 'average' line, used for height decay
CHAT_MESSAGE_WIDTHMax width of chat message in pixels
CHAT_MESSAGE_MAX_LENGTHMax length of chat message in characters
CHAT_LAYER_Z_STEPMaximum precision of float before rounding errors occur (in this context)
CHAT_LAYER_MAX_ZThe number of z-layer 'slices' usable by the chat message layering
WXH_TO_HEIGHTMacro 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.
/datum/chatmessageDatum for generating a message overlay on the map

Define Details

+

CHAT_LAYER_MAX_Z + + +

+

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.

+ + + diff --git a/code/datums/click_intercept.html b/code/datums/click_intercept.html new file mode 100644 index 0000000000000..28068b9d9c7b3 --- /dev/null +++ b/code/datums/click_intercept.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/click_intercept.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/click_intercept.dm + +

+ + +
/datum/click_interceptDatum 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.
+ + + diff --git a/code/datums/components.html b/code/datums/components.html new file mode 100644 index 0000000000000..ee1e9a43d7a8f --- /dev/null +++ b/code/datums/components.html @@ -0,0 +1,30 @@ + + + + + + + code/datums/components/README.md - Space Station 13 + + +
+ Space 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.

+See/Define signals and their arguments in __DEFINES\dcs\signals.dm
+ + + diff --git a/code/datums/components/_component.html b/code/datums/components/_component.html new file mode 100644 index 0000000000000..5f060af82a3b3 --- /dev/null +++ b/code/datums/components/_component.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/_component.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/_component.dm + +

+ + +
/datum/componentThe component datum
+ + + diff --git a/code/datums/components/boomerang.html b/code/datums/components/boomerang.html new file mode 100644 index 0000000000000..983aa97f2e239 --- /dev/null +++ b/code/datums/components/boomerang.html @@ -0,0 +1,34 @@ + + + + + + + code/datums/components/boomerang.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/datums/components/boomerang.dm + +

+ + + +
BOOMERANG_REBOUND_INTERVALThe cooldown period between last_boomerang_throw and it's methods of implementing a rebound proc.
/datum/component/boomerangIf 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.

+ + + diff --git a/code/datums/components/boss_music.html b/code/datums/components/boss_music.html new file mode 100644 index 0000000000000..b633ae95af487 --- /dev/null +++ b/code/datums/components/boss_music.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/boss_music.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/boss_music.dm + +

+ + +
/datum/component/boss_musicAttaches to a hostile simplemob and plays that music while they have a target.
+ + + diff --git a/code/datums/components/codeword_hearing.html b/code/datums/components/codeword_hearing.html new file mode 100644 index 0000000000000..4843008edd774 --- /dev/null +++ b/code/datums/components/codeword_hearing.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/codeword_hearing.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/codeword_hearing.dm + +

+ + +
/datum/component/codeword_hearingComponent that allows for highlighting of words or phrases in chat based on regular expressions.
+ + + diff --git a/code/datums/components/connect_mob_behalf.html b/code/datums/components/connect_mob_behalf.html new file mode 100644 index 0000000000000..beeced1e352cc --- /dev/null +++ b/code/datums/components/connect_mob_behalf.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/components/connect_mob_behalf.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/connect_mob_behalf.dm + +

+ + +
/datum/component/connect_mob_behalfThis component behaves similar to connect_loc_behalf, but working off clients and mobs instead of loc +To be clear, we hook into a signal on a tracked client's mob +We retain the ability to react to that signal on a seperate listener, which makes this quite powerful
+ + + diff --git a/code/datums/components/corpse_description.html b/code/datums/components/corpse_description.html new file mode 100644 index 0000000000000..6a1e2d4286409 --- /dev/null +++ b/code/datums/components/corpse_description.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/components/corpse_description.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/corpse_description.dm + +

+ + +
/datum/component/corpse_descriptionMapping 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
+ + + diff --git a/code/datums/components/cult_held_body.html b/code/datums/components/cult_held_body.html new file mode 100644 index 0000000000000..0d6b24f239118 --- /dev/null +++ b/code/datums/components/cult_held_body.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/components/cult_held_body.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/cult_held_body.dm + +

+ + +
/datum/component/construct_held_bodyA component for tracking and manipulating bodies held inside constructs/shades +Will drop the body/brain when the parent dies or is deleted.
+ + + diff --git a/code/datums/components/deadchat_control.html b/code/datums/components/deadchat_control.html new file mode 100644 index 0000000000000..a3693e76367e4 --- /dev/null +++ b/code/datums/components/deadchat_control.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/deadchat_control.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/deadchat_control.dm + +

+ + +
/datum/component/deadchat_controlDeadchat Plays Things - The Componenting
+ + + diff --git a/code/datums/components/defibrillator.html b/code/datums/components/defibrillator.html new file mode 100644 index 0000000000000..b6a9b3447ce06 --- /dev/null +++ b/code/datums/components/defibrillator.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/defibrillator.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/defibrillator.dm + +

+ + +
/datum/component/defibA component for an item that attempts to defibrillate a mob when activated.
+ + + diff --git a/code/datums/components/footstep.html b/code/datums/components/footstep.html new file mode 100644 index 0000000000000..63239acb96ccb --- /dev/null +++ b/code/datums/components/footstep.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/footstep.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/footstep.dm + +

+ + +
/datum/component/footstepFootstep component. Plays footsteps at parents location when it is appropriate.
+ + + diff --git a/code/datums/components/label.html b/code/datums/components/label.html new file mode 100644 index 0000000000000..f468ef84ea343 --- /dev/null +++ b/code/datums/components/label.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/components/label.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/label.dm + +

+ + + +
/datum/component/labelThe label component.
/datum/component/label/goalA verson of the label component specific to labelling goal items.
+ + + diff --git a/code/datums/components/largeobjecttransparency.html b/code/datums/components/largeobjecttransparency.html new file mode 100644 index 0000000000000..11f0ee9145c4b --- /dev/null +++ b/code/datums/components/largeobjecttransparency.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/largeobjecttransparency.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/largeobjecttransparency.dm + +

+ + +
/datum/component/largetransparencyMakes large icons partially see through if high priority atoms are behind them.
+ + + diff --git a/code/datums/components/orbiter.html b/code/datums/components/orbiter.html new file mode 100644 index 0000000000000..2c0b08a4c2889 --- /dev/null +++ b/code/datums/components/orbiter.html @@ -0,0 +1,62 @@ + + + + + + + code/datums/components/orbiter.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/datums/components/orbiter.dm + +

+ + +
ORBIT_LOCK_INCode 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).

+ + + diff --git a/code/datums/components/proximity_monitor.html b/code/datums/components/proximity_monitor.html new file mode 100644 index 0000000000000..dea4e5ae6e7c2 --- /dev/null +++ b/code/datums/components/proximity_monitor.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/components/proximity_monitor.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/proximity_monitor.dm + +

+ + + +
/datum/component/proximity_monitorAttaching this component to an atom means that the atom will be able to detect mobs or objects moving within a specified radius of it.
/obj/effect/abstract/proximity_checkerInteded for use with the proximity checker component /datum/component/proximity_monitor. +Whenever a movable atom crosses this object, it calls HasProximity() on the object which is listening for proximity (hasprox_receiver).
+ + + diff --git a/code/datums/components/scope.html b/code/datums/components/scope.html new file mode 100644 index 0000000000000..0cbe35465513c --- /dev/null +++ b/code/datums/components/scope.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/scope.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/scope.dm + +

+ + +
/datum/component/scopeA component that allows players to use the item to zoom out. Mainly intended for firearms, but now works with other items too.
+ + + diff --git a/code/datums/components/shielded.html b/code/datums/components/shielded.html new file mode 100644 index 0000000000000..95220ab010725 --- /dev/null +++ b/code/datums/components/shielded.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/shielded.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/shielded.dm + +

+ + +
/datum/component/shieldedThe shielded component causes the parent item to nullify a certain number of attacks against the wearer, see: shielded vests.
+ + + diff --git a/code/datums/components/slippery.html b/code/datums/components/slippery.html new file mode 100644 index 0000000000000..f0d195262e210 --- /dev/null +++ b/code/datums/components/slippery.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/slippery.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/slippery.dm + +

+ + +
/datum/component/slipperyThis is a component that can be applied to any movable atom (mob or obj).
+ + + diff --git a/code/datums/components/squish.html b/code/datums/components/squish.html new file mode 100644 index 0000000000000..eede598278635 --- /dev/null +++ b/code/datums/components/squish.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/squish.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/squish.dm + +

+ + +
/datum/element/squishsquish.dm
+ + + diff --git a/code/datums/components/surgery_initiator.html b/code/datums/components/surgery_initiator.html new file mode 100644 index 0000000000000..8e99a76f7d810 --- /dev/null +++ b/code/datums/components/surgery_initiator.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/surgery_initiator.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/surgery_initiator.dm + +

+ + +
/datum/component/surgery_initiatorAllows an item to start (or prematurely stop) a surgical operation.
+ + + diff --git a/code/datums/components/tilted.html b/code/datums/components/tilted.html new file mode 100644 index 0000000000000..98092a43d617e --- /dev/null +++ b/code/datums/components/tilted.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/components/tilted.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/tilted.dm + +

+ + +
/datum/component/tiltedA component that should be attached to things that have been tilted over, and can be righted. +This can optionally block normal attack_hand interactions
+ + + diff --git a/code/datums/components/two_handed.html b/code/datums/components/two_handed.html new file mode 100644 index 0000000000000..7d72a20e1fee5 --- /dev/null +++ b/code/datums/components/two_handed.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/components/two_handed.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/components/two_handed.dm + +

+ + + +
/datum/component/two_handedTwo Handed Component
/obj/item/offhandThe offhand dummy item for two handed items
+ + + diff --git a/code/datums/custom_user_item.html b/code/datums/custom_user_item.html new file mode 100644 index 0000000000000..8c8b97abe3dd8 --- /dev/null +++ b/code/datums/custom_user_item.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/custom_user_item.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/custom_user_item.dm + +

+ + +
/datum/custom_user_itemHolder for CUIs
+ + + diff --git a/code/datums/discord/discord_webhook.html b/code/datums/discord/discord_webhook.html new file mode 100644 index 0000000000000..50d912d9eacf6 --- /dev/null +++ b/code/datums/discord/discord_webhook.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/discord/discord_webhook.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/discord/discord_webhook.dm + +

+ + + + +
/datum/discord_webhook_payloadHolder datum for discord webhook POST send data
/datum/discord_embedHolder datum for discord embeds
/datum/discord_embed_fieldHolder datum for discord embed fields
+ + + diff --git a/code/datums/diseases/advance/symptoms/dizzy.html b/code/datums/diseases/advance/symptoms/dizzy.html new file mode 100644 index 0000000000000..8037c21bb92e1 --- /dev/null +++ b/code/datums/diseases/advance/symptoms/dizzy.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/diseases/advance/symptoms/dizzy.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/diseases/advance/symptoms/dizzy.dm + +

+ + +
/datum/symptom/dizzyNot the egg
+ + + diff --git a/code/datums/elements/_element.html b/code/datums/elements/_element.html new file mode 100644 index 0000000000000..a7d9f84d867bb --- /dev/null +++ b/code/datums/elements/_element.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/elements/_element.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/elements/_element.dm + +

+ + +
/datum/elementA holder for simple behaviour that can be attached to many different types
+ + + diff --git a/code/datums/elements/bombable_turf.html b/code/datums/elements/bombable_turf.html new file mode 100644 index 0000000000000..d08f0bf0820e7 --- /dev/null +++ b/code/datums/elements/bombable_turf.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/elements/bombable_turf.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/elements/bombable_turf.dm + +

+ + +
/datum/element/bombable_turfApply 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
+ + + diff --git a/code/datums/elements/shatters_when_thrown.html b/code/datums/elements/shatters_when_thrown.html new file mode 100644 index 0000000000000..0e8ccc9704472 --- /dev/null +++ b/code/datums/elements/shatters_when_thrown.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/elements/shatters_when_thrown.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/elements/shatters_when_thrown.dm + +

+ + +
/datum/element/shatters_when_thrownWhen attached to something, will make that thing shatter into shards on throw impact or z level falling
+ + + diff --git a/code/datums/elements/strippable.html b/code/datums/elements/strippable.html new file mode 100644 index 0000000000000..2797f36ab596e --- /dev/null +++ b/code/datums/elements/strippable.html @@ -0,0 +1,36 @@ + + + + + + + code/datums/elements/strippable.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/elements/strippable.dm + +

+ + + + + + + + + + + +
/datum/element/strippableAn element for atoms that, when dragged and dropped onto a mob, opens a strip panel.
/datum/strippable_itemA representation of an item that can be stripped down
/datum/strippable_item/mob_item_slotA preset for equipping items onto mob slots
/proc/start_unequip_mobA utility function for /datum/strippable_items to start unequipping an item from a mob.
/proc/finish_unequip_mobA utility function for /datum/strippable_items to finish unequipping an item from a mob.
/datum/strip_menuA representation of the stripping UI
/proc/create_strippable_listCreates an assoc list of keys to /datum/strippable_item
+ + + diff --git a/code/datums/emote.html b/code/datums/emote.html new file mode 100644 index 0000000000000..0c6942d59fc03 --- /dev/null +++ b/code/datums/emote.html @@ -0,0 +1,35 @@ + + + + + + + code/datums/emote.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/datums/emote.dm + +

+ + + +
DEFAULT_MAX_STAT_ALLOWEDSentinel for emote stats. +If this is set for max stat, then its value will be ignored.
/datum/emoteMost of the text that's not someone talking is based off of this.

Define Details

+

DEFAULT_MAX_STAT_ALLOWED + + +

+

Sentinel for emote stats. +If this is set for max stat, then its value will be ignored.

+ + + diff --git a/code/datums/helper_datums/async_input.html b/code/datums/helper_datums/async_input.html new file mode 100644 index 0000000000000..88343ea042e60 --- /dev/null +++ b/code/datums/helper_datums/async_input.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/helper_datums/async_input.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/helper_datums/async_input.dm + +

+ + +
/datum/async_inputTHIS WILL BE REMOVED IN THE FUTURE, I STRONGLY SUGGEST AGAINST USING THIS - GDN
+ + + diff --git a/code/datums/helper_datums/teleport.html b/code/datums/helper_datums/teleport.html new file mode 100644 index 0000000000000..ad2cd60f05e8f --- /dev/null +++ b/code/datums/helper_datums/teleport.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/helper_datums/teleport.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/helper_datums/teleport.dm + +

+ + + +
/proc/do_teleportWill teleport the given atom to the given destination using the other parameters
+ + + diff --git a/code/datums/http.html b/code/datums/http.html new file mode 100644 index 0000000000000..5db03d8f1cfe0 --- /dev/null +++ b/code/datums/http.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/http.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/http.dm + +

+ + + +
/datum/http_requestHolder datum for ingame HTTP requests
/datum/http_responseHolder datum for HTTP responses
+ + + diff --git a/code/datums/keybindings/mob_keybinds.html b/code/datums/keybindings/mob_keybinds.html new file mode 100644 index 0000000000000..95cf31759476b --- /dev/null +++ b/code/datums/keybindings/mob_keybinds.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/keybindings/mob_keybinds.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/keybindings/mob_keybinds.dm + +

+ + +
/datum/keybinding/mob/trigger_action_buttonDon't add a name to this, shouldn't show up in the prefs menu
+ + + diff --git a/code/datums/looping_sounds/looping_sound.html b/code/datums/looping_sounds/looping_sound.html new file mode 100644 index 0000000000000..3b1aa67a856a3 --- /dev/null +++ b/code/datums/looping_sounds/looping_sound.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/looping_sounds/looping_sound.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/looping_sounds/looping_sound.dm + +

+ + +
/datum/looping_sound/decreasingLooping sounds that decrease volume by a specified % each loop until it reaches a specified total % volume.
+ + + diff --git a/code/datums/looping_sounds/machinery_sounds.html b/code/datums/looping_sounds/machinery_sounds.html new file mode 100644 index 0000000000000..06afd4df44c76 --- /dev/null +++ b/code/datums/looping_sounds/machinery_sounds.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/looping_sounds/machinery_sounds.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/looping_sounds/machinery_sounds.dm + +

+ + +
/datum/looping_sound/kitchen/microwaveKITCHEN MACHINERY
+ + + diff --git a/code/datums/movement_detector.html b/code/datums/movement_detector.html new file mode 100644 index 0000000000000..86713b61ae0b6 --- /dev/null +++ b/code/datums/movement_detector.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/movement_detector.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/movement_detector.dm + +

+ + +
/datum/movement_detectorA datum to handle the busywork of registering signals to handle in depth tracking of a movable
+ + + diff --git a/code/datums/outfits/outfit_admin.html b/code/datums/outfits/outfit_admin.html new file mode 100644 index 0000000000000..928d471978be9 --- /dev/null +++ b/code/datums/outfits/outfit_admin.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/outfits/outfit_admin.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/outfits/outfit_admin.dm + +

+ + + + +
/datum/outfit/admin/modsuit/wizardTechnically not a MODsuit, we'll bundle it up in here for the future when it does become one
/datum/outfit/admin/tournament/tournament_gangstergangster are supposed to fight each other. --rastaf0
/datum/outfit/admin/tournament/tournament_chefSteven Seagal FTW
+ + + diff --git a/code/datums/outfits/outfit_debug.html b/code/datums/outfits/outfit_debug.html new file mode 100644 index 0000000000000..b5b9d45e35c2c --- /dev/null +++ b/code/datums/outfits/outfit_debug.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/outfits/outfit_debug.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/outfits/outfit_debug.dm + +

+ + +
/obj/item/encryptionkey/syndicate/all_channelshas to be a subtype and stuff
+ + + diff --git a/code/datums/pathfinding_mover.html b/code/datums/pathfinding_mover.html new file mode 100644 index 0000000000000..f2e3ade4da1d0 --- /dev/null +++ b/code/datums/pathfinding_mover.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/pathfinding_mover.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/pathfinding_mover.dm + +

+ + +
/datum/pathfinding_moverA generalized datum for pathfinding, and moving to a target.
+ + + diff --git a/code/datums/pipe_datums.html b/code/datums/pipe_datums.html new file mode 100644 index 0000000000000..6ef484bc8848c --- /dev/null +++ b/code/datums/pipe_datums.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/pipe_datums.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/pipe_datums.dm + +

+ + + +
/datum/pipes/atmospheric/bentWhy is this not atmospheric/simple/bent you ask? Because otherwise the ordering of the pipes in the UI menu gets weird
/datum/pipes/transitPipe types for transit tubes.
+ + + diff --git a/code/datums/position_point_vector.html b/code/datums/position_point_vector.html new file mode 100644 index 0000000000000..0fcb78f2e1f7c --- /dev/null +++ b/code/datums/position_point_vector.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/position_point_vector.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/position_point_vector.dm + +

+ + + + +
/datum/positionFor positions with map x/y/z and pixel x/y so you don't have to return lists. Could use addition/subtraction in the future I guess.
/datum/point_preciseA precise point on the map in absolute pixel locations based on world.icon_size. Pixels are FROM THE EDGE OF THE MAP!
/datum/point_precise/vector/processedpixel_speed is per decisecond.
+ + + diff --git a/code/datums/revision.html b/code/datums/revision.html new file mode 100644 index 0000000000000..d83e628e82c71 --- /dev/null +++ b/code/datums/revision.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/revision.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/revision.dm + +

+ + +
/datum/code_revisionCode Revision Datum
+ + + diff --git a/code/datums/spell_handler/spell_handler.html b/code/datums/spell_handler/spell_handler.html new file mode 100644 index 0000000000000..73a968b8b4e07 --- /dev/null +++ b/code/datums/spell_handler/spell_handler.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/spell_handler/spell_handler.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/spell_handler/spell_handler.dm + +

+ + +
/datum/spell_handlerThe 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
+ + + diff --git a/code/datums/spell_targeting/alive_mobs.html b/code/datums/spell_targeting/alive_mobs.html new file mode 100644 index 0000000000000..7bd70c55b2b4f --- /dev/null +++ b/code/datums/spell_targeting/alive_mobs.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/spell_targeting/alive_mobs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/spell_targeting/alive_mobs.dm + +

+ + +
/datum/spell_targeting/alive_mob_listWill find targets in the GLOB.alive_mob_list. The result will be in a random order
+ + + diff --git a/code/datums/spell_targeting/aoe.html b/code/datums/spell_targeting/aoe.html new file mode 100644 index 0000000000000..cd4220a103ba0 --- /dev/null +++ b/code/datums/spell_targeting/aoe.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/spell_targeting/aoe.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/spell_targeting/aoe.dm + +

+ + +
/datum/spell_targeting/aoeAn area of effect based spell targeting system. Will return all targets in the given range
+ + + 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 0000000000000..76d1b49ea8967 --- /dev/null +++ b/code/datums/spell_targeting/click_spell_targeting.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/spell_targeting/click_spell_targeting.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/spell_targeting/click_spell_targeting.dm + +

+ + +
/datum/spell_targeting/clickA click based spell targeting system. The clicked atom will be used to determine who/what to target
+ + + diff --git a/code/datums/spell_targeting/clicked_atom.html b/code/datums/spell_targeting/clicked_atom.html new file mode 100644 index 0000000000000..37dfe858329d3 --- /dev/null +++ b/code/datums/spell_targeting/clicked_atom.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/spell_targeting/clicked_atom.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/spell_targeting/clicked_atom.dm + +

+ + +
/datum/spell_targeting/clicked_atomA 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
+ + + 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 0000000000000..2fdc9a02d815e --- /dev/null +++ b/code/datums/spell_targeting/matter_eater_targeting.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/spell_targeting/matter_eater_targeting.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/spell_targeting/matter_eater_targeting.dm + +

+ + +
/datum/spell_targeting/matter_eaterA spell targeting system especially made for the matter eater gene
+ + + diff --git a/code/datums/spell_targeting/reachable_turfs.html b/code/datums/spell_targeting/reachable_turfs.html new file mode 100644 index 0000000000000..5d392bd9b6c09 --- /dev/null +++ b/code/datums/spell_targeting/reachable_turfs.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/spell_targeting/reachable_turfs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/spell_targeting/reachable_turfs.dm + +

+ + +
/datum/spell_targeting/reachable_turfsA 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
+ + + diff --git a/code/datums/spell_targeting/remoteview_targeting.html b/code/datums/spell_targeting/remoteview_targeting.html new file mode 100644 index 0000000000000..88a979d5e1c00 --- /dev/null +++ b/code/datums/spell_targeting/remoteview_targeting.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/spell_targeting/remoteview_targeting.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/spell_targeting/remoteview_targeting.dm + +

+ + +
/datum/spell_targeting/remoteviewA 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.
+ + + diff --git a/code/datums/spell_targeting/self_targeting.html b/code/datums/spell_targeting/self_targeting.html new file mode 100644 index 0000000000000..62227f966aaa2 --- /dev/null +++ b/code/datums/spell_targeting/self_targeting.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/spell_targeting/self_targeting.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/spell_targeting/self_targeting.dm + +

+ + +
/datum/spell_targeting/selfA spell targeting system which will return the caster as target
+ + + diff --git a/code/datums/spell_targeting/spell_targeting.html b/code/datums/spell_targeting/spell_targeting.html new file mode 100644 index 0000000000000..160cb823d9272 --- /dev/null +++ b/code/datums/spell_targeting/spell_targeting.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/spell_targeting/spell_targeting.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/spell_targeting/spell_targeting.dm + +

+ + +
/datum/spell_targetingThe base class for the targeting systems spells use.
+ + + diff --git a/code/datums/spell_targeting/spiral_targeting.html b/code/datums/spell_targeting/spiral_targeting.html new file mode 100644 index 0000000000000..9900c8f93df1d --- /dev/null +++ b/code/datums/spell_targeting/spiral_targeting.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/spell_targeting/spiral_targeting.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/spell_targeting/spiral_targeting.dm + +

+ + +
/datum/spell_targeting/spiralGets a list of turfs around the center atom to scramble.
+ + + diff --git a/code/datums/spell_targeting/targeted.html b/code/datums/spell_targeting/targeted.html new file mode 100644 index 0000000000000..50b20d1fea6bb --- /dev/null +++ b/code/datums/spell_targeting/targeted.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/spell_targeting/targeted.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/spell_targeting/targeted.dm + +

+ + +
/datum/spell_targeting/targetedA 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.
+ + + diff --git a/code/datums/spell_targeting/telepathic.html b/code/datums/spell_targeting/telepathic.html new file mode 100644 index 0000000000000..76142f367c64b --- /dev/null +++ b/code/datums/spell_targeting/telepathic.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/spell_targeting/telepathic.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/spell_targeting/telepathic.dm + +

+ + +
/datum/spell_targeting/telepathicA 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
+ + + diff --git a/code/datums/spells/alien_spells/regurgitate.html b/code/datums/spells/alien_spells/regurgitate.html new file mode 100644 index 0000000000000..4b45cde6f1c9a --- /dev/null +++ b/code/datums/spells/alien_spells/regurgitate.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/spells/alien_spells/regurgitate.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/spells/alien_spells/regurgitate.dm + +

+ + +
/datum/spell/alien_spell/regurgitateFirst we check if there is a living queen
+ + + diff --git a/code/datums/spells/bloodcrawl.html b/code/datums/spells/bloodcrawl.html new file mode 100644 index 0000000000000..04f85c3be60d6 --- /dev/null +++ b/code/datums/spells/bloodcrawl.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/spells/bloodcrawl.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/spells/bloodcrawl.dm + +

+ + +
/obj/effect/dummy/slaughterCan't use the wizard one, blocked by jaunt/slow
+ + + diff --git a/code/datums/spells/charge_up.html b/code/datums/spells/charge_up.html new file mode 100644 index 0000000000000..b826a1fa65472 --- /dev/null +++ b/code/datums/spells/charge_up.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/spells/charge_up.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/spells/charge_up.dm + +

+ + +
/datum/spell/charge_upA click-based spell template which starts charging up once you click the action button/verb. Click again on something to activate the actual spell
+ + + diff --git a/code/datums/spells/charge_up_bounce.html b/code/datums/spells/charge_up_bounce.html new file mode 100644 index 0000000000000..1eac25aa3b279 --- /dev/null +++ b/code/datums/spells/charge_up_bounce.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/spells/charge_up_bounce.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/spells/charge_up_bounce.dm + +

+ + +
/datum/spell/charge_up/bounceA 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
+ + + diff --git a/code/datums/spells/construct_spells.html b/code/datums/spells/construct_spells.html new file mode 100644 index 0000000000000..d125fac013835 --- /dev/null +++ b/code/datums/spells/construct_spells.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/spells/construct_spells.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/spells/construct_spells.dm + +

+ + +
/datum/spell/aoe/conjure/construct/lesserConstruct Spells
+ + + diff --git a/code/datums/station_traits/_station_trait.html b/code/datums/station_traits/_station_trait.html new file mode 100644 index 0000000000000..537e0be073797 --- /dev/null +++ b/code/datums/station_traits/_station_trait.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/station_traits/_station_trait.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/station_traits/_station_trait.dm + +

+ + +
/datum/station_traitBase class of station traits. These are used to influence rounds in one way or the other by influencing the levers of the station.
+ + + diff --git a/code/datums/station_traits/positive_traits.html b/code/datums/station_traits/positive_traits.html new file mode 100644 index 0000000000000..cb3c8c11d95b0 --- /dev/null +++ b/code/datums/station_traits/positive_traits.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/station_traits/positive_traits.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/station_traits/positive_traits.dm + +

+ + +
/datum/station_trait/cybernetic_revolutionNOTE: THIS MAKES EMP MUCH MORE EXPENSIVE.
+ + + diff --git a/code/datums/status_effects/debuffs.html b/code/datums/status_effects/debuffs.html new file mode 100644 index 0000000000000..a017ec66a238b --- /dev/null +++ b/code/datums/status_effects/debuffs.html @@ -0,0 +1,50 @@ + + + + + + + code/datums/status_effects/debuffs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/datums/status_effects/debuffs.dm + +

+ + + + + + + + + + + +
/datum/status_effect/his_wrathdoes minor damage over time unless holding His Grace
/datum/status_effect/cultghostis a cult ghost and can't use manifest runes, can see ghosts and dies if too far from summoner
/datum/status_effect/transient/confusionPrevents moving straight, sometimes changing movement direction at random. +Decays at a rate of 1 per second.
/datum/status_effect/transient/dizzinessSlightly offsets the client's screen randomly every tick. +Decays at a rate of 1 per second, or 5 when resting.
/datum/status_effect/transient/drowsinessSlows 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.
/datum/status_effect/transient/drunkennessCauses 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.
/datum/status_effect/transient/silence/absolutethis one will mute all emote sounds including gasps
HALLUCINATE_COOLDOWN_FACTORThis is multiplied with [/mob/var/hallucination] to determine the final cooldown. A higher hallucination value means shorter cooldown.
HALLUCINATE_CHANCEPercentage defining the chance at which an hallucination may spawn past the cooldown.
/datum/status_effect/cursedStatus 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.

Define Details

+

HALLUCINATE_CHANCE + + +

+

Percentage defining the chance at which an hallucination may spawn past the cooldown.

HALLUCINATE_COOLDOWN_FACTOR + + +

+

This is multiplied with [/mob/var/hallucination] to determine the final cooldown. A higher hallucination value means shorter cooldown.

+ + + diff --git a/code/datums/status_effects/neutral.html b/code/datums/status_effects/neutral.html new file mode 100644 index 0000000000000..1fcf008797be8 --- /dev/null +++ b/code/datums/status_effects/neutral.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/status_effects/neutral.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/status_effects/neutral.dm + +

+ + + +
/datum/status_effect/crusher_damagetracks the damage dealt to this mob by kinetic crushers
/datum/status_effect/limited_bonusA 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.
+ + + diff --git a/code/datums/status_effects/status_effect.html b/code/datums/status_effects/status_effect.html new file mode 100644 index 0000000000000..2ece00ca23f8b --- /dev/null +++ b/code/datums/status_effects/status_effect.html @@ -0,0 +1,30 @@ + + + + + + + code/datums/status_effects/status_effect.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/status_effects/status_effect.dm + +

+ + + +
/datum/status_effect/groupedStatus 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
/datum/status_effect/transientA 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).
+ + + diff --git a/code/datums/uplink_items/uplink_special.html b/code/datums/uplink_items/uplink_special.html new file mode 100644 index 0000000000000..6f5c2006cc165 --- /dev/null +++ b/code/datums/uplink_items/uplink_special.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/uplink_items/uplink_special.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/uplink_items/uplink_special.dm + +

+ + +
/datum/uplink_item/specialThis 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.
+ + + diff --git a/code/datums/uplink_items/uplink_traitor.html b/code/datums/uplink_items/uplink_traitor.html new file mode 100644 index 0000000000000..c00d3850fdacb --- /dev/null +++ b/code/datums/uplink_items/uplink_traitor.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/uplink_items/uplink_traitor.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/uplink_items/uplink_traitor.dm + +

+ + + + +
/datum/uplink_item/stealthy_weapons/combat_minusNukies get combat gloves plus instead
/datum/uplink_item/device_tools/thermal_drillNukies get Diamond Tipped Thermal Safe Drill instead
/datum/uplink_item/bio_chips/uplinkNukies get Nuclear Uplink Bio-chip instead
+ + + diff --git a/code/datums/verb_callbacks.html b/code/datums/verb_callbacks.html new file mode 100644 index 0000000000000..5b20fb328dfe3 --- /dev/null +++ b/code/datums/verb_callbacks.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/verb_callbacks.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/datums/verb_callbacks.dm + +

+ + +
/datum/callback/verb_callbacklike normal callbacks but they also record their creation time for measurement purposes
+ + + diff --git a/code/game/area/areas/mining_areas.html b/code/game/area/areas/mining_areas.html new file mode 100644 index 0000000000000..b6a4a22b1101a --- /dev/null +++ b/code/game/area/areas/mining_areas.html @@ -0,0 +1,33 @@ + + + + + + + code/game/area/areas/mining_areas.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/area/areas/mining_areas.dm + +

+ + + + + + + + +
/area/mineMine areas
/area/mine/outpostOutpost areas
/area/lavaland/surface/outdoors/outpost/catwalksubtype of /surface so storms hit there
/area/mine/outpost/engineeringbasically engi and atmos combined. I'm keeping it as "engineering" code wise, but "Life Support" sounds cooler in-game
/area/lavalandLavaland Areas
/area/lavaland/surface/outdoors/unexploredmonsters and ruins spawn here
/area/lavaland/surface/outdoors/unexplored/dangermegafauna will also spawn here
+ + + diff --git a/code/game/area/away_content_areas.html b/code/game/area/away_content_areas.html new file mode 100644 index 0000000000000..647d24be26c39 --- /dev/null +++ b/code/game/area/away_content_areas.html @@ -0,0 +1,27 @@ + + + + + + + code/game/area/away_content_areas.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/area/away_content_areas.dm + +

+ + +
/area/awaycontentAWAY AREAS
+ + + diff --git a/code/game/area/misc_areas.html b/code/game/area/misc_areas.html new file mode 100644 index 0000000000000..90539338e2acc --- /dev/null +++ b/code/game/area/misc_areas.html @@ -0,0 +1,27 @@ + + + + + + + code/game/area/misc_areas.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/area/misc_areas.dm + +

+ + +
/area/startwill be unused once kurper gets his login interface patch done
+ + + diff --git a/code/game/area/ss13_areas/maintenance_areas.html b/code/game/area/ss13_areas/maintenance_areas.html new file mode 100644 index 0000000000000..bf75078cce4c9 --- /dev/null +++ b/code/game/area/ss13_areas/maintenance_areas.html @@ -0,0 +1,27 @@ + + + + + + + code/game/area/ss13_areas/maintenance_areas.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/area/ss13_areas/maintenance_areas.dm + +

+ + +
/area/station/maintenance/assembly_lineDerelict Assembly Line
+ + + diff --git a/code/game/data_huds.html b/code/game/data_huds.html new file mode 100644 index 0000000000000..1d6b8b237c419 --- /dev/null +++ b/code/game/data_huds.html @@ -0,0 +1,28 @@ + + + + + + + code/game/data_huds.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/data_huds.dm + +

+ + + +
/proc/RoundDiagBarDiagnostic HUDs!
+ + + diff --git a/code/game/dna/dna_modifier.html b/code/game/dna/dna_modifier.html new file mode 100644 index 0000000000000..4a5313a0cfd31 --- /dev/null +++ b/code/game/dna/dna_modifier.html @@ -0,0 +1,27 @@ + + + + + + + code/game/dna/dna_modifier.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/dna/dna_modifier.dm + +

+ + +
/obj/machinery/dna_scannernewDNA MACHINES
+ + + diff --git a/code/game/dna/mutations/mutation_powers.html b/code/game/dna/mutations/mutation_powers.html new file mode 100644 index 0000000000000..89fe0a0fd1c32 --- /dev/null +++ b/code/game/dna/mutations/mutation_powers.html @@ -0,0 +1,27 @@ + + + + + + + code/game/dna/mutations/mutation_powers.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/dna/mutations/mutation_powers.dm + +

+ + +
/datum/mutation/grant_spell/morphVanilla Morph
+ + + diff --git a/code/game/gamemodes/cult/blood_magic.html b/code/game/gamemodes/cult/blood_magic.html new file mode 100644 index 0000000000000..00358601cea5f --- /dev/null +++ b/code/game/gamemodes/cult/blood_magic.html @@ -0,0 +1,29 @@ + + + + + + + code/game/gamemodes/cult/blood_magic.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/gamemodes/cult/blood_magic.dm + +

+ + + + +
/datum/action/innate/cult/blood_magicBlood magic handles the creation of blood spells (formerly talismans)
/datum/action/innate/cult/blood_spellThe next generation of talismans, handles storage/creation of blood magic
/obj/item/restraints/handcuffs/energy/cultFor the shackling spell
+ + + diff --git a/code/game/gamemodes/cult/cult_objectives.html b/code/game/gamemodes/cult/cult_objectives.html new file mode 100644 index 0000000000000..a639a534389ba --- /dev/null +++ b/code/game/gamemodes/cult/cult_objectives.html @@ -0,0 +1,27 @@ + + + + + + + code/game/gamemodes/cult/cult_objectives.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/gamemodes/cult/cult_objectives.dm + +

+ + +
/datum/objective/servecultGiven to cultists on conversion/roundstart
+ + + diff --git a/code/game/gamemodes/cult/cult_structures.html b/code/game/gamemodes/cult/cult_structures.html new file mode 100644 index 0000000000000..7bb64b6f5ea0c --- /dev/null +++ b/code/game/gamemodes/cult/cult_structures.html @@ -0,0 +1,32 @@ + + + + + + + code/game/gamemodes/cult/cult_structures.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/game/gamemodes/cult/cult_structures.dm + +

+ + +
CULT_STRUCTURE_COOLDOWNThe 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

+ + + diff --git a/code/game/gamemodes/cult/runes.html b/code/game/gamemodes/cult/runes.html new file mode 100644 index 0000000000000..63f18362080c3 --- /dev/null +++ b/code/game/gamemodes/cult/runes.html @@ -0,0 +1,27 @@ + + + + + + + code/game/gamemodes/cult/runes.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/gamemodes/cult/runes.dm + +

+ + +
/obj/effect/rune/blood_boilWhen invoked deals up to 30 burn damage to nearby non-cultists and sets them on fire.
+ + + 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 0000000000000..1b862b1373aaa --- /dev/null +++ b/code/game/gamemodes/miniantags/abduction/abduction_gear.html @@ -0,0 +1,32 @@ + + + + + + + code/game/gamemodes/miniantags/abduction/abduction_gear.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/gamemodes/miniantags/abduction/abduction_gear.dm + +

+ + + + + + + +
/obj/item/clothing/head/helmet/abductorAGENT GEAR
/obj/item/abductor/gizmoSCIENTIST GEAR
/obj/item/screwdriver/abductorENGINEERING TOOLS
/obj/item/scalpel/alienMEDICAL TOOLS
/obj/item/mop/advanced/abductorJANITORIAL TOOLS
/obj/structure/bed/abductorSTRUCTURES
+ + + diff --git a/code/game/gamemodes/miniantags/abduction/gland.html b/code/game/gamemodes/miniantags/abduction/gland.html new file mode 100644 index 0000000000000..020be81d8ad92 --- /dev/null +++ b/code/game/gamemodes/miniantags/abduction/gland.html @@ -0,0 +1,27 @@ + + + + + + + code/game/gamemodes/miniantags/abduction/gland.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/gamemodes/miniantags/abduction/gland.dm + +

+ + +
/obj/item/organ/internal/heart/gland/empTODO : Replace with something more interesting
+ + + diff --git a/code/game/gamemodes/miniantags/demons/slaughter_demon/slaughter.html b/code/game/gamemodes/miniantags/demons/slaughter_demon/slaughter.html new file mode 100644 index 0000000000000..a8821a61d3b65 --- /dev/null +++ b/code/game/gamemodes/miniantags/demons/slaughter_demon/slaughter.html @@ -0,0 +1,30 @@ + + + + + + + code/game/gamemodes/miniantags/demons/slaughter_demon/slaughter.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/gamemodes/miniantags/demons/slaughter_demon/slaughter.dm + +

+ + + + + +
/mob/living/simple_animal/demon/slaughterThe Monster
/mob/living/simple_animal/demon/slaughter/cultSummoned as part of the cult objective "Bring the Slaughter"
/datum/action/innate/demon/whisperThe Powers
/obj/item/organ/internal/heart/demonThe Loot
+ + + diff --git a/code/game/gamemodes/miniantags/guardian/guardian.html b/code/game/gamemodes/miniantags/guardian/guardian.html new file mode 100644 index 0000000000000..b77ba3b30fa6e --- /dev/null +++ b/code/game/gamemodes/miniantags/guardian/guardian.html @@ -0,0 +1,27 @@ + + + + + + + code/game/gamemodes/miniantags/guardian/guardian.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/gamemodes/miniantags/guardian/guardian.dm + +

+ + +
/obj/item/guardiancreatorCreation
+ + + 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 0000000000000..3f7979d8685ba --- /dev/null +++ b/code/game/gamemodes/miniantags/guardian/host_actions.html @@ -0,0 +1,30 @@ + + + + + + + code/game/gamemodes/miniantags/guardian/host_actions.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/gamemodes/miniantags/guardian/host_actions.dm + +

+ + + + + +
/datum/action/guardianThese are used by guardian hosts to interact with their guardians. These are not buttons that guardians themselves use.
/datum/action/guardian/communicateAllows the guardian host to communicate with their guardian.
/datum/action/guardian/recallAllows the guardian host to recall their guardian.
/datum/action/guardian/reset_guardianAllows the guardian host to exchange their guardian's player for another.
+ + + diff --git a/code/game/gamemodes/miniantags/revenant/revenant_abilities.html b/code/game/gamemodes/miniantags/revenant/revenant_abilities.html new file mode 100644 index 0000000000000..4847ce538177d --- /dev/null +++ b/code/game/gamemodes/miniantags/revenant/revenant_abilities.html @@ -0,0 +1,28 @@ + + + + + + + code/game/gamemodes/miniantags/revenant/revenant_abilities.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/gamemodes/miniantags/revenant/revenant_abilities.dm + +

+ + + +
/datum/spell/aoe/revenant/haunt_objectMakes objects be haunted and then throws them at conscious people to do damage, spooky!
/datum/spell/aoe/revenant/hallucinationsGives everyone in a 7 tile radius 2 minutes of hallucinations
+ + + diff --git a/code/game/gamemodes/nuclear/nuclearbomb.html b/code/game/gamemodes/nuclear/nuclearbomb.html new file mode 100644 index 0000000000000..7177860632d9d --- /dev/null +++ b/code/game/gamemodes/nuclear/nuclearbomb.html @@ -0,0 +1,27 @@ + + + + + + + code/game/gamemodes/nuclear/nuclearbomb.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/gamemodes/nuclear/nuclearbomb.dm + +

+ + +
/obj/machinery/nuclearbomb/trainingMARK: TRAINING NUKE
+ + + diff --git a/code/game/gamemodes/objective.html b/code/game/gamemodes/objective.html new file mode 100644 index 0000000000000..7c3c6cfdd83fa --- /dev/null +++ b/code/game/gamemodes/objective.html @@ -0,0 +1,29 @@ + + + + + + + code/game/gamemodes/objective.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/gamemodes/objective.dm + +

+ + + + +
/datum/objective/debrainI want braaaainssss
/datum/objective/protectThe opposite of killing a dude.
/datum/objective/protect/mindslavesubytpe for mindslave implants
+ + + diff --git a/code/game/gamemodes/objective_holder.html b/code/game/gamemodes/objective_holder.html new file mode 100644 index 0000000000000..4da1f594bcc76 --- /dev/null +++ b/code/game/gamemodes/objective_holder.html @@ -0,0 +1,27 @@ + + + + + + + code/game/gamemodes/objective_holder.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/gamemodes/objective_holder.dm + +

+ + +
/datum/objective_holderAn objective holder for minds, antag datums, and teams.
+ + + diff --git a/code/game/gamemodes/steal_items.html b/code/game/gamemodes/steal_items.html new file mode 100644 index 0000000000000..adb9499e04b81 --- /dev/null +++ b/code/game/gamemodes/steal_items.html @@ -0,0 +1,27 @@ + + + + + + + code/game/gamemodes/steal_items.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/gamemodes/steal_items.dm + +

+ + +
/datum/theft_objective.
+ + + diff --git a/code/game/gamemodes/wizard/artefact.html b/code/game/gamemodes/wizard/artefact.html new file mode 100644 index 0000000000000..43f868666d649 --- /dev/null +++ b/code/game/gamemodes/wizard/artefact.html @@ -0,0 +1,31 @@ + + + + + + + code/game/gamemodes/wizard/artefact.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/gamemodes/wizard/artefact.dm + +

+ + + + + + +
/obj/item/contractApprentice Contract
/obj/item/veilrenderVeil Render
/obj/item/scryingScrying
/obj/item/multisword/pikeIf We are to be used and spent, let it be for a noble purpose.
/obj/item/necromantic_stoneNecromantic Stone
+ + + diff --git a/code/game/gamemodes/wizard/magic_tarot.html b/code/game/gamemodes/wizard/magic_tarot.html new file mode 100644 index 0000000000000..904f43254f4f2 --- /dev/null +++ b/code/game/gamemodes/wizard/magic_tarot.html @@ -0,0 +1,28 @@ + + + + + + + code/game/gamemodes/wizard/magic_tarot.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/gamemodes/wizard/magic_tarot.dm + +

+ + + +
/datum/tarot/the_starsI'm sorry matt, this is very funny.
/datum/tarot/reversed/the_foolREVERSED ARCANA
+ + + diff --git a/code/game/gamemodes/wizard/soulstone.html b/code/game/gamemodes/wizard/soulstone.html new file mode 100644 index 0000000000000..5d912ee40f7f5 --- /dev/null +++ b/code/game/gamemodes/wizard/soulstone.html @@ -0,0 +1,27 @@ + + + + + + + code/game/gamemodes/wizard/soulstone.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/gamemodes/wizard/soulstone.dm + +

+ + +
/obj/structure/constructshellTransferring to constructs
+ + + diff --git a/code/game/machinery/Beacon.html b/code/game/machinery/Beacon.html new file mode 100644 index 0000000000000..63d405f2609c6 --- /dev/null +++ b/code/game/machinery/Beacon.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/Beacon.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/Beacon.dm + +

+ + +
/obj/machinery/bluespace_beacon/syndicate/infiltratorbeacon guaranteed offline at roundstart for infiltrator base
+ + + diff --git a/code/game/machinery/camera/camera.html b/code/game/machinery/camera/camera.html new file mode 100644 index 0000000000000..80c1202dc1e8f --- /dev/null +++ b/code/game/machinery/camera/camera.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/camera/camera.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/camera/camera.dm + +

+ + +
/obj/machinery/camera/portableCameras which are placed inside of things, such as helmets.
+ + + diff --git a/code/game/machinery/clonepod.html b/code/game/machinery/clonepod.html new file mode 100644 index 0000000000000..1b33683b5f8ea --- /dev/null +++ b/code/game/machinery/clonepod.html @@ -0,0 +1,57 @@ + + + + + + + code/game/machinery/clonepod.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/game/machinery/clonepod.dm + +

+ + + + + + + +
VALID_REAGENTSReagents that can be inserted into the cloning pod (and not deleted by it).
VALID_BIOMASSABLESMeats that can be used as biomass for the cloner.
FORBIDDEN_INTERNAL_ORGANSInternal organs the cloner will never accept for insertion.
UPGRADE_LOCKED_ORGANSInternal organs the cloner will only accept when fully upgraded.
FORBIDDEN_LIMBSLimbs that the cloner won't accept.
ALLOWED_ROBOT_PARTSA 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).

+ + + diff --git a/code/game/machinery/clonescanner.html b/code/game/machinery/clonescanner.html new file mode 100644 index 0000000000000..9bb41224c0524 --- /dev/null +++ b/code/game/machinery/clonescanner.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/clonescanner.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/clonescanner.dm + +

+ + +
/datum/cloning_dataA datum to store the information gained by scanning a patient OR the fixes to be made to their body.
+ + + diff --git a/code/game/machinery/computer/medical_records.html b/code/game/machinery/computer/medical_records.html new file mode 100644 index 0000000000000..656635e40e994 --- /dev/null +++ b/code/game/machinery/computer/medical_records.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/computer/medical_records.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/computer/medical_records.dm + +

+ + +
/obj/machinery/computer/med_dataTODO:SANITY
+ + + 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 0000000000000..a5e474aa0aa92 --- /dev/null +++ b/code/game/machinery/computer/power_monitor_console.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/computer/power_monitor_console.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/computer/power_monitor_console.dm + +

+ + +
/obj/machinery/computer/monitor/secretHides the power monitor (such as ones on ruins & CentCom) from PDA's to prevent metagaming.
+ + + diff --git a/code/game/machinery/constructable_frame.html b/code/game/machinery/constructable_frame.html new file mode 100644 index 0000000000000..234026a1df24a --- /dev/null +++ b/code/game/machinery/constructable_frame.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/constructable_frame.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/constructable_frame.dm + +

+ + +
/obj/machinery/constructable_frameMade into a seperate type to make future revisions easier.
+ + + diff --git a/code/game/machinery/deployable.html b/code/game/machinery/deployable.html new file mode 100644 index 0000000000000..9ec330989979d --- /dev/null +++ b/code/game/machinery/deployable.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/deployable.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/deployable.dm + +

+ + +
/obj/structure/barricade/woodenBARRICADE TYPES
+ + + diff --git a/code/game/machinery/flasher.html b/code/game/machinery/flasher.html new file mode 100644 index 0000000000000..30e0e36dd2250 --- /dev/null +++ b/code/game/machinery/flasher.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/flasher.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/flasher.dm + +

+ + +
/obj/machinery/flasher/portablePortable version of the flasher. Only flashes when anchored
+ + + diff --git a/code/game/machinery/hologram.html b/code/game/machinery/hologram.html new file mode 100644 index 0000000000000..4a761d39eff16 --- /dev/null +++ b/code/game/machinery/hologram.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/hologram.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/hologram.dm + +

+ + +
/obj/machinery/hologram/holopadA stationary holopad for projecting hologram and making and receiving holocalls.
+ + + diff --git a/code/game/machinery/mass_driver.html b/code/game/machinery/mass_driver.html new file mode 100644 index 0000000000000..a646c1af7b5d6 --- /dev/null +++ b/code/game/machinery/mass_driver.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/mass_driver.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/mass_driver.dm + +

+ + +
/obj/machinery/mass_driver_frameMASS DRIVER FRAME
+ + + diff --git a/code/game/machinery/requests_console.html b/code/game/machinery/requests_console.html new file mode 100644 index 0000000000000..c94e564872914 --- /dev/null +++ b/code/game/machinery/requests_console.html @@ -0,0 +1,33 @@ + + + + + + + code/game/machinery/requests_console.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/game/machinery/requests_console.dm + +

+ + +
RC_ASSISTRequests Console

Define Details

+

RC_ASSIST + + +

+

Requests Console

+

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

+ + + diff --git a/code/game/machinery/shieldgen.html b/code/game/machinery/shieldgen.html new file mode 100644 index 0000000000000..55ca81a023e92 --- /dev/null +++ b/code/game/machinery/shieldgen.html @@ -0,0 +1,33 @@ + + + + + + + code/game/machinery/shieldgen.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/game/machinery/shieldgen.dm + +

+ + + +
MAX_STORED_POWERFIELD GEN START //shameless copypasta from fieldgen, powersink, and grille
/obj/machinery/shieldwallContainment Field START

Define Details

+

MAX_STORED_POWER + + +

+

FIELD GEN START //shameless copypasta from fieldgen, powersink, and grille

+ + + diff --git a/code/game/machinery/syndicatebomb.html b/code/game/machinery/syndicatebomb.html new file mode 100644 index 0000000000000..034c2ed0bc3d4 --- /dev/null +++ b/code/game/machinery/syndicatebomb.html @@ -0,0 +1,30 @@ + + + + + + + code/game/machinery/syndicatebomb.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/syndicatebomb.dm + +

+ + + + + +
/obj/machinery/syndicatebomb/trainingBomb Subtypes
/obj/item/bombcoreBomb Cores
/obj/item/bombcore/trainingBomb Core Subtypes
/obj/item/syndicatedetonatorSyndicate Detonator (aka the big red button)
+ + + diff --git a/code/game/machinery/tcomms/relay.html b/code/game/machinery/tcomms/relay.html new file mode 100644 index 0000000000000..7b3c9fe36c1bf --- /dev/null +++ b/code/game/machinery/tcomms/relay.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/tcomms/relay.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/tcomms/relay.dm + +

+ + +
/obj/machinery/tcomms/relayExtends the reach of telecomms to the z-level it is built on
+ + + diff --git a/code/game/machinery/tcomms/tcomms_base.html b/code/game/machinery/tcomms/tcomms_base.html new file mode 100644 index 0000000000000..0d3c70befab5d --- /dev/null +++ b/code/game/machinery/tcomms/tcomms_base.html @@ -0,0 +1,33 @@ + + + + + + + code/game/machinery/tcomms/tcomms_base.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/tcomms/tcomms_base.dm + +

+ + + + + + + + +
/obj/machinery/tcommsThis is the base machine for both tcomms devices (core + relay)
/datum/tcomms_messageDatum which holds all the data for a message being sent
/proc/is_bad_connectionConnection checker
/proc/broadcast_messageMessage Broadcast Proc
/obj/item/paper/tcommskeyPiece of paper that spawns with the default link password
+ + + diff --git a/code/game/machinery/tcomms/tcomms_core.html b/code/game/machinery/tcomms/tcomms_core.html new file mode 100644 index 0000000000000..8986c293cbafc --- /dev/null +++ b/code/game/machinery/tcomms/tcomms_core.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/tcomms/tcomms_core.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/tcomms/tcomms_core.dm + +

+ + +
/obj/machinery/tcomms/coreThe core of the entire telecomms operation
+ + + diff --git a/code/game/machinery/vendors/contraband_vendors.html b/code/game/machinery/vendors/contraband_vendors.html new file mode 100644 index 0000000000000..36a6c1a3183ae --- /dev/null +++ b/code/game/machinery/vendors/contraband_vendors.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/vendors/contraband_vendors.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/vendors/contraband_vendors.dm + +

+ + +
/obj/machinery/economy/vending/wallmed/syndicateSyndicate/Contraband Vendors
+ + + diff --git a/code/game/machinery/vendors/generic_vendors.html b/code/game/machinery/vendors/generic_vendors.html new file mode 100644 index 0000000000000..c14effd91a493 --- /dev/null +++ b/code/game/machinery/vendors/generic_vendors.html @@ -0,0 +1,29 @@ + + + + + + + code/game/machinery/vendors/generic_vendors.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/vendors/generic_vendors.dm + +

+ + + + +
/obj/machinery/economy/vending/artvendGeneral miscellanious vendors
/obj/machinery/economy/vending/tool/freewe want a free version for engineering to use
/obj/machinery/economy/vending/cigarette/beachUsed in the lavaland_biodome_beach.dmm ruin
+ + + diff --git a/code/game/machinery/vendors/tilt_crits.html b/code/game/machinery/vendors/tilt_crits.html new file mode 100644 index 0000000000000..7453142771651 --- /dev/null +++ b/code/game/machinery/vendors/tilt_crits.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/vendors/tilt_crits.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/vendors/tilt_crits.dm + +

+ + +
/datum/tilt_critFramework for custom vendor crits.
+ + + diff --git a/code/game/machinery/vendors/vending.html b/code/game/machinery/vendors/vending.html new file mode 100644 index 0000000000000..7821fbf6a20da --- /dev/null +++ b/code/game/machinery/vendors/vending.html @@ -0,0 +1,27 @@ + + + + + + + code/game/machinery/vendors/vending.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/vendors/vending.dm + +

+ + +
/datum/data/vending_productDatum used to hold information about a product in a vending machine
+ + + diff --git a/code/game/machinery/wall_holosign.html b/code/game/machinery/wall_holosign.html new file mode 100644 index 0000000000000..5780e11c318cc --- /dev/null +++ b/code/game/machinery/wall_holosign.html @@ -0,0 +1,28 @@ + + + + + + + code/game/machinery/wall_holosign.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/machinery/wall_holosign.dm + +

+ + + +
/obj/machinery/holosignHOLOSIGN
/obj/machinery/holosign_switchSWITCH
+ + + 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 0000000000000..94b7da961bb22 --- /dev/null +++ b/code/game/mecha/equipment/tools/other_tools.html @@ -0,0 +1,33 @@ + + + + + + + code/game/mecha/equipment/tools/other_tools.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/mecha/equipment/tools/other_tools.dm + +

+ + + + + + + +
/obj/item/mecha_parts/mecha_equipment/teleporterTELEPORTER
/obj/item/mecha_parts/mecha_equipment/gravcatapultGRAVITATIONAL CATAPULT
/obj/item/mecha_parts/mecha_equipment/anticcw_armor_booster///////////////////////// ARMOR BOOSTER MODULES ////////////////////////////////////////////////////////// +what is that noise? A BAWWW from TK mutants.
/obj/item/mecha_parts/mecha_equipment/repair_droidREPAIR DROID
/obj/item/mecha_parts/mecha_equipment/tesla_energy_relayTESLA ENERGY RELAY
/obj/item/mecha_parts/mecha_equipment/generatorGENERATOR
+ + + diff --git a/code/game/mecha/equipment/weapons/weapons.html b/code/game/mecha/equipment/weapons/weapons.html new file mode 100644 index 0000000000000..68d7699254d66 --- /dev/null +++ b/code/game/mecha/equipment/weapons/weapons.html @@ -0,0 +1,27 @@ + + + + + + + code/game/mecha/equipment/weapons/weapons.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/mecha/equipment/weapons/weapons.dm + +

+ + +
/obj/item/mecha_parts/mecha_equipment/weapon/ballisticelse the mousetraps are useless
+ + + diff --git a/code/game/mecha/mech_fabricator.html b/code/game/mecha/mech_fabricator.html new file mode 100644 index 0000000000000..facd2fe89b7af --- /dev/null +++ b/code/game/mecha/mech_fabricator.html @@ -0,0 +1,28 @@ + + + + + + + code/game/mecha/mech_fabricator.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/mecha/mech_fabricator.dm + +

+ + + +
/obj/machinery/mecha_part_fabricatorA machine that allows for the production of exosuits and robotic parts.
/obj/machinery/mecha_part_fabricator/robotCyborgs-only variant of /obj/machinery/mecha_part_fabricator.
+ + + diff --git a/code/game/mecha/mecha_parts.html b/code/game/mecha/mecha_parts.html new file mode 100644 index 0000000000000..7c036cdcc5075 --- /dev/null +++ b/code/game/mecha/mecha_parts.html @@ -0,0 +1,36 @@ + + + + + + + code/game/mecha/mecha_parts.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/mecha/mecha_parts.dm + +

+ + + + + + + + + + + +
/obj/item/mecha_partsMecha Parts
/obj/item/mecha_parts/chassis/ripleyRipley
/obj/item/mecha_parts/chassis/gygaxGygax
/obj/item/mecha_parts/chassis/durandDurand
/obj/item/mecha_parts/chassis/firefighterFirefighter
/obj/item/mecha_parts/chassis/honkerHONK
/obj/item/mecha_parts/chassis/reticenceReticence
/obj/item/mecha_parts/chassis/phazonPhazon
/obj/item/mecha_parts/chassis/odysseusOdysseus
/obj/item/circuitboard/mechaCircuitboards
+ + + diff --git a/code/game/mecha/mecha_wreckage.html b/code/game/mecha/mecha_wreckage.html new file mode 100644 index 0000000000000..56c9d60af8f48 --- /dev/null +++ b/code/game/mecha/mecha_wreckage.html @@ -0,0 +1,27 @@ + + + + + + + code/game/mecha/mecha_wreckage.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/mecha/mecha_wreckage.dm + +

+ + +
/obj/structure/mecha_wreckageMecha wreckage
+ + + diff --git a/code/game/mecha/paintkits.html b/code/game/mecha/paintkits.html new file mode 100644 index 0000000000000..bbe2f84dc0abc --- /dev/null +++ b/code/game/mecha/paintkits.html @@ -0,0 +1,27 @@ + + + + + + + code/game/mecha/paintkits.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/mecha/paintkits.dm + +

+ + +
/obj/item/paintkitPlease don't use this for anything, it's a base type for custom mech paintjobs.
+ + + diff --git a/code/game/objects/effects/anomalies.html b/code/game/objects/effects/anomalies.html new file mode 100644 index 0000000000000..be9697bed12ed --- /dev/null +++ b/code/game/objects/effects/anomalies.html @@ -0,0 +1,32 @@ + + + + + + + code/game/objects/effects/anomalies.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/game/objects/effects/anomalies.dm + +

+ + +
ANOMALY_MOVECHANCEChance of taking a step per second

Define Details

+

ANOMALY_MOVECHANCE + + +

+

Chance of taking a step per second

+ + + 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 0000000000000..f591e5f90bdab --- /dev/null +++ b/code/game/objects/effects/decals/Cleanable/alien_blood.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/decals/Cleanable/alien_blood.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/effects/decals/Cleanable/alien_blood.dm + +

+ + +
/obj/effect/decal/cleanable/blood/slimethis is the alien blood file, slimes are aliens.
+ + + 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 0000000000000..904a86db061b9 --- /dev/null +++ b/code/game/objects/effects/decals/Cleanable/humans.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/effects/decals/Cleanable/humans.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/effects/decals/Cleanable/humans.dm + +

+ + + +
/obj/effect/decal/cleanable/trail_holdernot a child of blood on purpose
/obj/effect/decal/cleanable/blood/gibs/cleangibsmost ironic name ever...
+ + + 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 0000000000000..b8e6e90dcb169 --- /dev/null +++ b/code/game/objects/effects/decals/Cleanable/misc_cleanables.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/effects/decals/Cleanable/misc_cleanables.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/effects/decals/Cleanable/misc_cleanables.dm + +

+ + + +
/obj/effect/decal/cleanable/pie_smudgehonk
/obj/effect/decal/cleanable/confettiPARTY TIME!
+ + + 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 0000000000000..a3cb5ff91a6c9 --- /dev/null +++ b/code/game/objects/effects/decals/contraband_posters.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/decals/contraband_posters.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/effects/decals/contraband_posters.dm + +

+ + +
/obj/structure/sign/poster/rippedPOSTER VARIATIONS
+ + + 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 0000000000000..1444efdd60d84 --- /dev/null +++ b/code/game/objects/effects/effect_system/effects_other.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/effect_system/effects_other.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/effects/effect_system/effects_other.dm + +

+ + +
/obj/effect/particle_effect/ion_trailsIon trails for jetpacks, ion thrusters and other space-flying things
+ + + 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 0000000000000..e946f4cb8df12 --- /dev/null +++ b/code/game/objects/effects/effect_system/effects_smoke.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/effect_system/effects_smoke.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/effects/effect_system/effects_smoke.dm + +

+ + +
/obj/effect/particle_effect/smokeSMOKE SYSTEMS
+ + + 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 0000000000000..84b8f4f160f24 --- /dev/null +++ b/code/game/objects/effects/effect_system/effects_sparks.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/effect_system/effects_sparks.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/effects/effect_system/effects_sparks.dm + +

+ + +
/obj/effect/particle_effect/sparks/sparklesSPARKLE FIREWORKS
+ + + diff --git a/code/game/objects/effects/effects.html b/code/game/objects/effects/effects.html new file mode 100644 index 0000000000000..4cabff06a2d9c --- /dev/null +++ b/code/game/objects/effects/effects.html @@ -0,0 +1,29 @@ + + + + + + + code/game/objects/effects/effects.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/effects/effects.dm + +

+ + + +
/obj/effect/abstractThis 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.
/obj/effect/abstract/particle_holderThese effects can be added to anything to hold particles, which is useful because Byond only allows a single particle per atom
+ + + diff --git a/code/game/objects/effects/forcefields.html b/code/game/objects/effects/forcefields.html new file mode 100644 index 0000000000000..a91f4a82ad817 --- /dev/null +++ b/code/game/objects/effects/forcefields.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/forcefields.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/effects/forcefields.dm + +

+ + +
/obj/structure/forcefieldMimewalls
+ + + diff --git a/code/game/objects/effects/landmarks.html b/code/game/objects/effects/landmarks.html new file mode 100644 index 0000000000000..09af599577a7e --- /dev/null +++ b/code/game/objects/effects/landmarks.html @@ -0,0 +1,29 @@ + + + + + + + code/game/objects/effects/landmarks.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/effects/landmarks.dm + +

+ + + + +
/obj/effect/landmark/newplayer_startThere should only be one of these, in the lobby art area
/obj/effect/landmark/mob_spawnerMob spawners, spawns a mob and deletes the landmark
/obj/effect/landmark/mob_spawner/goldgrub75% chance to get a magmawing watcher, and 25% chance to get a icewing watcher (1/133, 1/400 respectively)
+ + + diff --git a/code/game/objects/effects/spawners/airlock_spawner.html b/code/game/objects/effects/spawners/airlock_spawner.html new file mode 100644 index 0000000000000..7fb8bfe96a822 --- /dev/null +++ b/code/game/objects/effects/spawners/airlock_spawner.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/effects/spawners/airlock_spawner.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/effects/spawners/airlock_spawner.dm + +

+ + + +
/obj/effect/spawner/airlock/longLong and thin
/obj/effect/spawner/airlock/long/squareSquare
+ + + 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 0000000000000..723c0c9fdd2dc --- /dev/null +++ b/code/game/objects/effects/spawners/grouped_spawner.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/spawners/grouped_spawner.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/effects/spawners/grouped_spawner.dm + +

+ + +
/obj/effect/spawner/grouped_spawnerCan be used to group spawners together so you ensure a certain amount of things are spawned but can be spawned on multiple locations.
+ + + diff --git a/code/game/objects/effects/spawners/lootdrop.html b/code/game/objects/effects/spawners/lootdrop.html new file mode 100644 index 0000000000000..bb24719753c74 --- /dev/null +++ b/code/game/objects/effects/spawners/lootdrop.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/spawners/lootdrop.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/effects/spawners/lootdrop.dm + +

+ + +
/obj/effect/spawner/lootdrop/crate_spawnerfor ruins
+ + + 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 0000000000000..a9f9caa563952 --- /dev/null +++ b/code/game/objects/effects/spawners/random_barrier.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/spawners/random_barrier.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/effects/spawners/random_barrier.dm + +

+ + +
/obj/effect/spawner/random_barrier/possibly_welded_airlockthese have no access restrictions, so for internal maintenance only
+ + + 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 0000000000000..d0d1aa205275e --- /dev/null +++ b/code/game/objects/effects/temporary_visuals/misc_visuals.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/effects/temporary_visuals/misc_visuals.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/effects/temporary_visuals/misc_visuals.dm + +

+ + + +
/obj/effect/temp_visual/healcolor is white by default, set to whatever is needed
/obj/effect/temp_visual/single_userA visual effect that will be shown only to a particular user for a period of time.
+ + + diff --git a/code/game/objects/empulse.html b/code/game/objects/empulse.html new file mode 100644 index 0000000000000..fb24cca5a8512 --- /dev/null +++ b/code/game/objects/empulse.html @@ -0,0 +1,29 @@ + + + + + + + code/game/objects/empulse.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/empulse.dm + +

+ + + +
/proc/empulseWill cause an EMP on the given epicenter. +This proc can sleep depending on the affected objects. So assume it sleeps!
+ + + diff --git a/code/game/objects/explosion.html b/code/game/objects/explosion.html new file mode 100644 index 0000000000000..94f0b5b21476b --- /dev/null +++ b/code/game/objects/explosion.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/explosion.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/explosion.dm + +

+ + + +
/proc/create_shrapnelCreates an explosion of shrapnel at a turf.
+ + + diff --git a/code/game/objects/items/cardboard_cutouts.html b/code/game/objects/items/cardboard_cutouts.html new file mode 100644 index 0000000000000..cd9c55a2adb31 --- /dev/null +++ b/code/game/objects/items/cardboard_cutouts.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/cardboard_cutouts.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/cardboard_cutouts.dm + +

+ + +
/obj/item/cardboard_cutout/adaptivePurchased by Syndicate agents, these cutouts are indistinguishable from normal cutouts but aren't discolored when their appearance is changed
+ + + diff --git a/code/game/objects/items/control_wand.html b/code/game/objects/items/control_wand.html new file mode 100644 index 0000000000000..1e8575089397a --- /dev/null +++ b/code/game/objects/items/control_wand.html @@ -0,0 +1,32 @@ + + + + + + + code/game/objects/items/control_wand.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/game/objects/items/control_wand.dm + +

+ + +
JANGLE_COOLDOWNHow 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)

+ + + diff --git a/code/game/objects/items/devices/flash.html b/code/game/objects/items/devices/flash.html new file mode 100644 index 0000000000000..8dd907dcd7e26 --- /dev/null +++ b/code/game/objects/items/devices/flash.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/devices/flash.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/devices/flash.dm + +

+ + +
/obj/item/flash/syntheticjust a regular flash now
+ + + diff --git a/code/game/objects/items/devices/flashlight.html b/code/game/objects/items/devices/flashlight.html new file mode 100644 index 0000000000000..a1df21f2da06e --- /dev/null +++ b/code/game/objects/items/devices/flashlight.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/devices/flashlight.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/devices/flashlight.dm + +

+ + +
/obj/item/flashlight/spotlightinvisible lighting source
+ + + 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 0000000000000..42e2f63abaf68 --- /dev/null +++ b/code/game/objects/items/devices/geiger_counter.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/devices/geiger_counter.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/devices/geiger_counter.dm + +

+ + +
/obj/item/geiger_counterDISCLAIMER: I know nothing about how real-life Geiger counters work. This will not be realistic. ~Xhuis
+ + + 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 0000000000000..d178e8fe9c9c0 --- /dev/null +++ b/code/game/objects/items/devices/painter/painter.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/devices/painter/painter.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/devices/painter/painter.dm + +

+ + +
/datum/painterContains variables for updating holder, as well as procs for choosing a colour and painting an atom.
+ + + 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 0000000000000..5e3ebb45810ca --- /dev/null +++ b/code/game/objects/items/devices/painter/window_painter.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/devices/painter/window_painter.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/devices/painter/window_painter.dm + +

+ + +
/datum/painter/pipe/windowYes, this is a pipe painter subtype.
+ + + 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 0000000000000..913db380daa37 --- /dev/null +++ b/code/game/objects/items/devices/radio/beacon.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/devices/radio/beacon.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/devices/radio/beacon.dm + +

+ + +
/obj/item/beacon/baconProbably a better way of doing this, I'm lazy.
+ + + 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 0000000000000..5049ea3701f5a --- /dev/null +++ b/code/game/objects/items/devices/radio/encryptionkey.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/devices/radio/encryptionkey.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/devices/radio/encryptionkey.dm + +

+ + +
/obj/item/encryptionkey/heads/ai_integratedported from bay, this goes 'inside' the AI.
+ + + 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 0000000000000..8d935f4303ef8 --- /dev/null +++ b/code/game/objects/items/devices/radio/headset.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/items/devices/radio/headset.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/devices/radio/headset.dm + +

+ + + +
/obj/item/radio/headset/syndicate/altundisguised bowman with flash protection
/obj/item/radio/headset/heads/ai_integratedNo need to care about icons, it should be hidden inside the AI anyway.
+ + + 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 0000000000000..7b68c48ca85b1 --- /dev/null +++ b/code/game/objects/items/devices/radio/radio_objects.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/devices/radio/radio_objects.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/devices/radio/radio_objects.dm + +

+ + +
/obj/item/radio/borgExists so that borg radios and headsets can override it.
+ + + diff --git a/code/game/objects/items/devices/scanners.html b/code/game/objects/items/devices/scanners.html new file mode 100644 index 0000000000000..27a9cbc918fb2 --- /dev/null +++ b/code/game/objects/items/devices/scanners.html @@ -0,0 +1,37 @@ + + + + + + + code/game/objects/items/devices/scanners.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/devices/scanners.dm + +

+ + + + + + + + + + + +
/obj/item/t_scannerT-RAY SCANNER
/proc/get_chemscan_resultsHEALTH ANALYZER
/obj/item/robotanalyzerMACHINE ANALYZER
/obj/item/analyzerGAS ANALYZER
/proc/atmos_scanOutputs a message to the user describing the target's gasmixes. +Used in chat-based gas scans.
/obj/item/reagent_scannerREAGENT SCANNERS
/obj/item/slime_scannerSLIME SCANNER
/obj/item/bodyanalyzerBODY ANALYZERS
+ + + diff --git a/code/game/objects/items/granters/_granters.html b/code/game/objects/items/granters/_granters.html new file mode 100644 index 0000000000000..81d6b827cb9dd --- /dev/null +++ b/code/game/objects/items/granters/_granters.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/granters/_granters.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/granters/_granters.dm + +

+ + +
/obj/item/book/granterBooks that teach things.
+ + + 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 0000000000000..dfcbd30f83d9a --- /dev/null +++ b/code/game/objects/items/mountable_frames/air_alarm_frame.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/mountable_frames/air_alarm_frame.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/mountable_frames/air_alarm_frame.dm + +

+ + +
/obj/item/mounted/frame/alarm_frameHandheld air alarm frame, for placing on walls.
+ + + 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 0000000000000..86a192006009f --- /dev/null +++ b/code/game/objects/items/robot/ai_upgrades.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/robot/ai_upgrades.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/robot/ai_upgrades.dm + +

+ + +
/obj/item/malf_upgradeAI Upgrades
+ + + diff --git a/code/game/objects/items/robot/cyborg_gripper.html b/code/game/objects/items/robot/cyborg_gripper.html new file mode 100644 index 0000000000000..3457c2a644fde --- /dev/null +++ b/code/game/objects/items/robot/cyborg_gripper.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/robot/cyborg_gripper.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/robot/cyborg_gripper.dm + +

+ + +
/obj/item/gripper/universalUniversal gripper. Not supplied to any cyborg by default. Could be varedited onto a borg for event stuff. Functions almost like a real hand!
+ + + 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 0000000000000..7f4e9cd8404fb --- /dev/null +++ b/code/game/objects/items/robot/robot_items.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/robot/robot_items.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/robot/robot_items.dm + +

+ + +
/obj/item/borgCyborg Spec Items
+ + + diff --git a/code/game/objects/items/salvage.html b/code/game/objects/items/salvage.html new file mode 100644 index 0000000000000..39fd56f6f5ae6 --- /dev/null +++ b/code/game/objects/items/salvage.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/items/salvage.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/salvage.dm + +

+ + + +
/obj/item/salvage/ruinRuin Salvage, misc loot gained from looking around ruins.
/obj/item/salvage/lootLoot salvage, gained from fighting space simplemobs.
+ + + 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 0000000000000..7c810c60747e6 --- /dev/null +++ b/code/game/objects/items/stacks/sheets/leather.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/stacks/sheets/leather.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/stacks/sheets/leather.dm + +

+ + +
/obj/item/stack/sheet/furbasic fur sheets
+ + + 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 0000000000000..3753d19a4cf6a --- /dev/null +++ b/code/game/objects/items/stacks/sheets/sheet_types.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/stacks/sheets/sheet_types.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/stacks/sheets/sheet_types.dm + +

+ + +
/obj/item/stack/sheet/cardboardBubbleWrap
+ + + diff --git a/code/game/objects/items/theft_items.html b/code/game/objects/items/theft_items.html new file mode 100644 index 0000000000000..4f619e96ebe21 --- /dev/null +++ b/code/game/objects/items/theft_items.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/theft_items.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/theft_items.dm + +

+ + +
/obj/item/nuke_core/plutoniumThe steal objective, so it doesnt mess with the SM sliver on pinpointers and objectives
+ + + diff --git a/code/game/objects/items/tools/multitool.html b/code/game/objects/items/tools/multitool.html new file mode 100644 index 0000000000000..885ca180f7fad --- /dev/null +++ b/code/game/objects/items/tools/multitool.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/tools/multitool.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/tools/multitool.dm + +

+ + +
/obj/item/multitoolMultitool -- A multitool is used for hacking electronic devices.
+ + + diff --git a/code/game/objects/items/weapons/AI_modules.html b/code/game/objects/items/weapons/AI_modules.html new file mode 100644 index 0000000000000..64ddd64c24268 --- /dev/null +++ b/code/game/objects/items/weapons/AI_modules.html @@ -0,0 +1,64 @@ + + + + + + + code/game/objects/items/weapons/AI_modules.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/AI_modules.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
/obj/item/aiModule/safeguardSafeguard
/obj/item/aiModule/oneCrewMemberoneCrewMember
/obj/item/aiModule/protectStationProtectStation
/obj/item/aiModule/oxygenOxygenIsToxicToCrew
/obj/item/aiModule/freeformNew Freeform +Slightly more dynamic freeform module -- TLE
/obj/item/aiModule/resetReset
/obj/item/aiModule/purgePurge +-- TLE
/obj/item/aiModule/asimovAsimov +-- TLE
/obj/item/aiModule/crewsimovCrewsimov +-- TLE
/obj/item/aiModule/quarantineQuarantine
/obj/item/aiModule/nanotrasenNanotrasen +-- TLE
/obj/item/aiModule/corpCorporate
/obj/item/aiModule/droneDrone
/obj/item/aiModule/robocopRobocop +-- TLE
/obj/item/aiModule/paladinP.A.L.A.D.I.N. +-- NEO
/obj/item/aiModule/tyrantT.Y.R.A.N.T. +-- Darem
/obj/item/aiModule/antimovAntimov +-- TLE
/obj/item/aiModule/pranksimovPranksimov
/obj/item/aiModule/nanotrasen_aggressiveNT Aggressive
/obj/item/aiModule/cctvCCTV
/obj/item/aiModule/hippocraticHippocratic Oath
/obj/item/aiModule/maintainStation Efficiency
/obj/item/aiModule/peacekeeperPeacekeeper
/obj/item/aiModule/freeformcoreFreeform Core +Slightly more dynamic freeform module -- TLE
/obj/item/aiModule/syndicateHacked AI Module +Slightly more dynamic freeform module -- TLE
/obj/item/aiModule/toyAIIon Module +-- Incoming //No actual reason to inherit from ion boards here, either. sigh ~Miauw
+ + + diff --git a/code/game/objects/items/weapons/RCD.html b/code/game/objects/items/weapons/RCD.html new file mode 100644 index 0000000000000..53e0b954d1747 --- /dev/null +++ b/code/game/objects/items/weapons/RCD.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/weapons/RCD.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/RCD.dm + +

+ + +
/datum/rcd_actA generic action for an RCD.
+ + + diff --git a/code/game/objects/items/weapons/batons.html b/code/game/objects/items/weapons/batons.html new file mode 100644 index 0000000000000..c3efa9aa8c82a --- /dev/null +++ b/code/game/objects/items/weapons/batons.html @@ -0,0 +1,29 @@ + + + + + + + code/game/objects/items/weapons/batons.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/batons.dm + +

+ + + + +
/obj/item/melee/classic_batonKnocks down the hit mob when not on harm intent and when /obj/item/melee/classic_baton/on is TRUE
/obj/item/melee/classic_baton/ntcane
/obj/item/melee/classic_baton/telescopic
+ + + diff --git a/code/game/objects/items/weapons/bio_chips/bio_chip.html b/code/game/objects/items/weapons/bio_chips/bio_chip.html new file mode 100644 index 0000000000000..e97df81f97d39 --- /dev/null +++ b/code/game/objects/items/weapons/bio_chips/bio_chip.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/weapons/bio_chips/bio_chip.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/bio_chips/bio_chip.dm + +

+ + +
/obj/item/bio_chipCode for implants that can be inserted into a person and have some sort of passive or triggered action.
+ + + 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 0000000000000..8e8cb79461070 --- /dev/null +++ b/code/game/objects/items/weapons/bio_chips/bio_chip_fluff.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/items/weapons/bio_chips/bio_chip_fluff.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/bio_chips/bio_chip_fluff.dm + +

+ + +
/datum/implant_fluffBio-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.
+ + + diff --git a/code/game/objects/items/weapons/bio_chips/bio_chip_gorilla_rampage.html b/code/game/objects/items/weapons/bio_chips/bio_chip_gorilla_rampage.html new file mode 100644 index 0000000000000..97e7e4880ce0c --- /dev/null +++ b/code/game/objects/items/weapons/bio_chips/bio_chip_gorilla_rampage.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/weapons/bio_chips/bio_chip_gorilla_rampage.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/bio_chips/bio_chip_gorilla_rampage.dm + +

+ + +
/obj/item/bio_chip/gorilla_rampageDumb path but easier to search for admins
+ + + diff --git a/code/game/objects/items/weapons/bio_chips/bio_chip_stealth.html b/code/game/objects/items/weapons/bio_chips/bio_chip_stealth.html new file mode 100644 index 0000000000000..c22b82a559ecc --- /dev/null +++ b/code/game/objects/items/weapons/bio_chips/bio_chip_stealth.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/weapons/bio_chips/bio_chip_stealth.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/bio_chips/bio_chip_stealth.dm + +

+ + +
/obj/item/bio_chip/stealthImplant which allows you to summon an MGS-style cardboard box that turns you invisble after a short delay.
+ + + diff --git a/code/game/objects/items/weapons/dice.html b/code/game/objects/items/weapons/dice.html new file mode 100644 index 0000000000000..33d0568f74c30 --- /dev/null +++ b/code/game/objects/items/weapons/dice.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/items/weapons/dice.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/dice.dm + +

+ + + +
/obj/item/storage/bag/diceThankfully no longer a pill bottle.
/obj/item/dicedepreciated d6, use /obj/item/dice/d6 if you actually want a d6
+ + + diff --git a/code/game/objects/items/weapons/explosives.html b/code/game/objects/items/weapons/explosives.html new file mode 100644 index 0000000000000..6ebdc163caaab --- /dev/null +++ b/code/game/objects/items/weapons/explosives.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/weapons/explosives.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/explosives.dm + +

+ + +
/obj/item/grenade/plastic/c4The Explosives
+ + + diff --git a/code/game/objects/items/weapons/garrote.html b/code/game/objects/items/weapons/garrote.html new file mode 100644 index 0000000000000..4cbfe639dc3fe --- /dev/null +++ b/code/game/objects/items/weapons/garrote.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/items/weapons/garrote.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/garrote.dm + +

+ + + +
/obj/item/garrote12TC traitor item
/obj/item/garrote/improvisedMade via tablecrafting
+ + + 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 0000000000000..6af3c981fa018 --- /dev/null +++ b/code/game/objects/items/weapons/grenades/chem_grenade.html @@ -0,0 +1,29 @@ + + + + + + + code/game/objects/items/weapons/grenades/chem_grenade.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/grenades/chem_grenade.dm + +

+ + + + +
/obj/item/grenade/chem_grenade/cryoIntended for rare cryogenic mixes. Cools the area moderately upon detonation.
/obj/item/grenade/chem_grenade/pyroIntended for pyrotechnical mixes. Produces a small fire upon detonation, igniting potentially flammable mixtures.
/obj/item/grenade/chem_grenade/adv_releaseIntended for weaker, but longer lasting effects. Could have some interesting uses.
+ + + 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 0000000000000..2c05374ed7950 --- /dev/null +++ b/code/game/objects/items/weapons/grenades/clusterbuster.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/weapons/grenades/clusterbuster.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/grenades/clusterbuster.dm + +

+ + +
/obj/item/grenade/clusterbuster/mega_bangClusterbuster of Clusterbusters
+ + + 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 0000000000000..45b1eed3160d0 --- /dev/null +++ b/code/game/objects/items/weapons/grenades/flashbang.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/items/weapons/grenades/flashbang.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/grenades/flashbang.dm + +

+ + + +
/proc/bangCreates a flashing effect that blinds and deafens mobs within range
+ + + 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 0000000000000..12b247492794e --- /dev/null +++ b/code/game/objects/items/weapons/grenades/frag.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/items/weapons/grenades/frag.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/grenades/frag.dm + +

+ + + +
/obj/item/projectile/bullet/shrapnelShrapnel that flies through the air and hits you
/obj/item/shrapnelShrapnel projectiles turn into this after trying to embed
+ + + diff --git a/code/game/objects/items/weapons/grenades/smokebomb.html b/code/game/objects/items/weapons/grenades/smokebomb.html new file mode 100644 index 0000000000000..4fa15bc51d610 --- /dev/null +++ b/code/game/objects/items/weapons/grenades/smokebomb.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/weapons/grenades/smokebomb.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/grenades/smokebomb.dm + +

+ + +
/obj/item/grenade/smokebombWe need to clear the walk_to on destroy to allow a grenade which uses walk_to or related to properly GC
+ + + 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 0000000000000..2e2862cf6bd91 --- /dev/null +++ b/code/game/objects/items/weapons/holy_weapons.html @@ -0,0 +1,29 @@ + + + + + + + code/game/objects/items/weapons/holy_weapons.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/holy_weapons.dm + +

+ + + + +
/obj/item/nullrod/flufffluff subtype to be used for all donator nullrods
/obj/item/nullrod/ertERT subtype, applies sanctified property to any derived rod
/obj/item/nullrod/claymore/bostaffMay as well make it a "claymore" and inherit the blocking
+ + + diff --git a/code/game/objects/items/weapons/kitchen.html b/code/game/objects/items/weapons/kitchen.html new file mode 100644 index 0000000000000..4aa4988d715d6 --- /dev/null +++ b/code/game/objects/items/weapons/kitchen.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/weapons/kitchen.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/kitchen.dm + +

+ + +
/obj/item/kitchen/cuttercircular cutter by Ume
+ + + diff --git a/code/game/objects/items/weapons/legcuffs.html b/code/game/objects/items/weapons/legcuffs.html new file mode 100644 index 0000000000000..dfc5332ee9fa8 --- /dev/null +++ b/code/game/objects/items/weapons/legcuffs.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/items/weapons/legcuffs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/legcuffs.dm + +

+ + + +
/obj/item/restraints/legcuffs/bola/tacticaltraitor variant
/obj/item/restraints/legcuffs/bola/energyFor Security
+ + + diff --git a/code/game/objects/items/weapons/manuals.html b/code/game/objects/items/weapons/manuals.html new file mode 100644 index 0000000000000..9778eb2f3d030 --- /dev/null +++ b/code/game/objects/items/weapons/manuals.html @@ -0,0 +1,33 @@ + + + + + + + code/game/objects/items/weapons/manuals.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/manuals.dm + +

+ + + +
/obj/item/book/manualThese 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.
/obj/item/book/manual/wikiThese 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
+ + + 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 0000000000000..c2fee0fc596b5 --- /dev/null +++ b/code/game/objects/items/weapons/melee/energy_melee_weapons.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/weapons/melee/energy_melee_weapons.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/melee/energy_melee_weapons.dm + +

+ + +
/obj/item/melee/energy/sword/cyborg/sawUsed by medical Syndicate cyborgs
+ + + diff --git a/code/game/objects/items/weapons/pneumaticCannon.html b/code/game/objects/items/weapons/pneumaticCannon.html new file mode 100644 index 0000000000000..7d678964d74d5 --- /dev/null +++ b/code/game/objects/items/weapons/pneumaticCannon.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/weapons/pneumaticCannon.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/pneumaticCannon.dm + +

+ + +
/obj/item/pneumatic_cannon/ghettoObtainable by improvised methods; more gas per use, less capacity, but smaller
+ + + diff --git a/code/game/objects/items/weapons/stock_parts.html b/code/game/objects/items/weapons/stock_parts.html new file mode 100644 index 0000000000000..cd78d105acb10 --- /dev/null +++ b/code/game/objects/items/weapons/stock_parts.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/weapons/stock_parts.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/stock_parts.dm + +

+ + +
/obj/item/storage/part_replacerStock Parts
+ + + 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 0000000000000..41d74b1ff8f7d --- /dev/null +++ b/code/game/objects/items/weapons/storage/backpack.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/weapons/storage/backpack.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/storage/backpack.dm + +

+ + +
/obj/item/storage/backpack/duffel/syndie/med/surgery_fakefor maint spawns
+ + + 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 0000000000000..ba9115c9eea9c --- /dev/null +++ b/code/game/objects/items/weapons/storage/bags.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/weapons/storage/bags.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/storage/bags.dm + +

+ + +
/obj/item/storage/bag/ore/holdingminers, your messiah has arrived
+ + + 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 0000000000000..e344395383d90 --- /dev/null +++ b/code/game/objects/items/weapons/storage/belt.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/items/weapons/storage/belt.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/storage/belt.dm + +

+ + + +
/obj/item/storage/belt/utility/syndi_researcherA cool looking belt thats essentially a syndicate toolbox
/obj/item/storage/belt/grenade/tacticalTraitor bundle version
+ + + 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 0000000000000..2a753bac19247 --- /dev/null +++ b/code/game/objects/items/weapons/storage/boxes.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/weapons/storage/boxes.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/storage/boxes.dm + +

+ + +
/obj/item/storage/box/stockparts/basicfor ruins where it's a bad idea to give access to an autolathe/protolathe, but still want to make stock parts accessible
+ + + diff --git a/code/game/objects/items/weapons/storage/fancy.html b/code/game/objects/items/weapons/storage/fancy.html new file mode 100644 index 0000000000000..14c1fb6724ccc --- /dev/null +++ b/code/game/objects/items/weapons/storage/fancy.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/weapons/storage/fancy.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/storage/fancy.dm + +

+ + +
/obj/item/storage/firstaid/aquatic_kitAquatic Starter Kit
+ + + 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 0000000000000..fb33dfbac0880 --- /dev/null +++ b/code/game/objects/items/weapons/storage/uplink_kits.html @@ -0,0 +1,40 @@ + + + + + + + code/game/objects/items/weapons/storage/uplink_kits.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/storage/uplink_kits.dm + +

+ + + + + + + + + + + + + + + +
/obj/item/storage/box/syndie_kit/bundleTraitor bundles
/obj/item/storage/box/syndie_kit/bundle/spy172TC
/obj/item/storage/box/syndie_kit/bundle/agent13159
/obj/item/storage/box/syndie_kit/bundle/thief160TC
/obj/item/storage/box/syndie_kit/bundle/bond137TC
/obj/item/storage/box/syndie_kit/bundle/infiltrator155TC + RCD & Mesons Autoimplanter
/obj/item/storage/box/syndie_kit/bundle/payday185TC
/obj/item/storage/box/syndie_kit/bundle/implant200TC
/obj/item/storage/box/syndie_kit/bundle/hacker180TC
/obj/item/storage/box/syndie_kit/bundle/darklord170TC + Telekinesis
/obj/item/storage/box/syndie_kit/bundle/professional164TC
/obj/item/storage/box/syndie_kit/bundle/grenadier133TC + Tactical Grenadier Belt
/obj/item/storage/box/syndie_kit/bundle/metroid75TC + modules + laser gun
/obj/item/storage/box/syndie_kit/bundle/maint_lootsyndie briefcase has 600 credits for 5 TC.
+ + + diff --git a/code/game/objects/items/weapons/stunbaton.html b/code/game/objects/items/weapons/stunbaton.html new file mode 100644 index 0000000000000..5e5dfb9a2bd0b --- /dev/null +++ b/code/game/objects/items/weapons/stunbaton.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/weapons/stunbaton.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/stunbaton.dm + +

+ + +
/obj/item/melee/baton/infinite_cellbaton used for security bots
+ + + diff --git a/code/game/objects/items/weapons/twohanded.html b/code/game/objects/items/weapons/twohanded.html new file mode 100644 index 0000000000000..79c4b92cea813 --- /dev/null +++ b/code/game/objects/items/weapons/twohanded.html @@ -0,0 +1,37 @@ + + + + + + + code/game/objects/items/weapons/twohanded.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/game/objects/items/weapons/twohanded.dm + +

+ + + + + + + +
/obj/item/fireaxeDEM AXES MAN, marker -Agouri
/obj/item/fireaxe/boneaxeBlatant imitation of the fireaxe, but made out of bone.
/obj/item/spear/bonespearBlatant imitation of spear, but made out of bone. Not valid for explosive modification.
/obj/item/butcher_chainsawCHAINSAW
BROOM_PUSH_LIMITMax number of atoms a broom can sweep at once
/obj/item/supermatter_halberdSupermatter Halberd, used by Oblivion Enforcers

Define Details

+

BROOM_PUSH_LIMIT + + +

+

Max number of atoms a broom can sweep at once

+ + + diff --git a/code/game/objects/items/weapons/weaponry.html b/code/game/objects/items/weapons/weaponry.html new file mode 100644 index 0000000000000..e56bd9ff28009 --- /dev/null +++ b/code/game/objects/items/weapons/weaponry.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/weapons/weaponry.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/items/weapons/weaponry.dm + +

+ + +
/obj/item/banhammer
+ + + diff --git a/code/game/objects/structures/aliens.html b/code/game/objects/structures/aliens.html new file mode 100644 index 0000000000000..cde5c561d56c7 --- /dev/null +++ b/code/game/objects/structures/aliens.html @@ -0,0 +1,37 @@ + + + + + + + code/game/objects/structures/aliens.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/game/objects/structures/aliens.dm + +

+ + + +
BURSTUsed in the /status var
MIN_GROWTH_TIMEtime it takes to grow a hugger

Define Details

+

BURST + + +

+

Used in the /status var

MIN_GROWTH_TIME + + +

+

time it takes to grow a hugger

+ + + 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 0000000000000..647a728e9603b --- /dev/null +++ b/code/game/objects/structures/crates_lockers/closets/secure/cargo_lockers.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/crates_lockers/closets/secure/cargo_lockers.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/structures/crates_lockers/closets/secure/cargo_lockers.dm + +

+ + +
/obj/structure/closet/secure_closet/quartermaster/lavalandused in mining outpost
+ + + 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 0000000000000..79acd0b93a68e --- /dev/null +++ b/code/game/objects/structures/crates_lockers/closets/statue.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/crates_lockers/closets/statue.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/structures/crates_lockers/closets/statue.dm + +

+ + +
/obj/structure/closet/statuethis type path is a crime, ponies what the fuck
+ + + diff --git a/code/game/objects/structures/disaster_counter.html b/code/game/objects/structures/disaster_counter.html new file mode 100644 index 0000000000000..6e24e3698c9d4 --- /dev/null +++ b/code/game/objects/structures/disaster_counter.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/disaster_counter.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/structures/disaster_counter.dm + +

+ + +
/obj/structure/disaster_counterTracks how many shifts it has been since the counter with that ID was exploded.
+ + + diff --git a/code/game/objects/structures/fluff.html b/code/game/objects/structures/fluff.html new file mode 100644 index 0000000000000..9a4e59316fb8b --- /dev/null +++ b/code/game/objects/structures/fluff.html @@ -0,0 +1,31 @@ + + + + + + + code/game/objects/structures/fluff.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/structures/fluff.dm + +

+ + + + + + +
/obj/structure/fluff/empty_terrariumEmpty terrariums are created when a preserved terrarium in a lavaland seed vault is activated.
/obj/structure/fluff/empty_sleeperEmpty sleepers are created by a good few ghost roles in lavaland.
/obj/structure/fluff/empty_cryostasis_sleeperEmpty cryostasis sleepers are created when a malfunctioning cryostasis sleeper in a lavaland shelter is activated
/obj/structure/fluff/drake_statueAsh drake status spawn on either side of the necropolis gate in lavaland.
/obj/structure/fluff/drake_statue/fallingA variety of statue in disrepair; parts are broken off and a gemstone is missing
+ + + diff --git a/code/game/objects/structures/grille.html b/code/game/objects/structures/grille.html new file mode 100644 index 0000000000000..4d3df89f36c76 --- /dev/null +++ b/code/game/objects/structures/grille.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/grille.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/structures/grille.dm + +

+ + +
/obj/structure/grille/brokenPre-broken grilles for map placement
+ + + diff --git a/code/game/objects/structures/inflatable.html b/code/game/objects/structures/inflatable.html new file mode 100644 index 0000000000000..a9567422e41a6 --- /dev/null +++ b/code/game/objects/structures/inflatable.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/inflatable.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/structures/inflatable.dm + +

+ + +
/obj/structure/inflatable/doorBased on mineral door code
+ + + diff --git a/code/game/objects/structures/kitchen_spike.html b/code/game/objects/structures/kitchen_spike.html new file mode 100644 index 0000000000000..e04331d511211 --- /dev/null +++ b/code/game/objects/structures/kitchen_spike.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/kitchen_spike.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/structures/kitchen_spike.dm + +

+ + +
/obj/structure/kitchenspike_frameKitchen Spike
+ + + diff --git a/code/game/objects/structures/loom.html b/code/game/objects/structures/loom.html new file mode 100644 index 0000000000000..16fcfec8b95c7 --- /dev/null +++ b/code/game/objects/structures/loom.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/loom.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/structures/loom.dm + +

+ + +
/obj/structure/loomThis is a loom. It's usually made out of wood and used to weave fabric like durathread or cotton into their respective cloth types.
+ + + diff --git a/code/game/objects/structures/plasticflaps.html b/code/game/objects/structures/plasticflaps.html new file mode 100644 index 0000000000000..aea4ea461c32a --- /dev/null +++ b/code/game/objects/structures/plasticflaps.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/plasticflaps.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/structures/plasticflaps.dm + +

+ + +
/obj/structure/plasticflaps/miningA specific type for mining that doesn't allow airflow because of them damn crates
+ + + diff --git a/code/game/objects/structures/railings.html b/code/game/objects/structures/railings.html new file mode 100644 index 0000000000000..99113c157d8b1 --- /dev/null +++ b/code/game/objects/structures/railings.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/structures/railings.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/structures/railings.dm + +

+ + + +
/obj/structure/railing/corneraesthetic corner sharp edges hurt oof ouch
/obj/structure/railing/capaestetic "end" for railing
+ + + diff --git a/code/game/objects/structures/safe.html b/code/game/objects/structures/safe.html new file mode 100644 index 0000000000000..d5ee7f0d0a3bf --- /dev/null +++ b/code/game/objects/structures/safe.html @@ -0,0 +1,30 @@ + + + + + + + code/game/objects/structures/safe.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/structures/safe.dm + +

+ + + + + +
/obj/structure/safeA locked container that can only be opened by entering a combination through a dial.
/obj/structure/safe/floorLike a safe, but without density. Can be hidden with flooring.
/obj/item/safe_internalsCan be used to replace a safe's broken mechanism.
/obj/item/paper/safe_codeContains the (generated on map load) codes for all publicly known safes.
+ + + diff --git a/code/game/objects/structures/statues.html b/code/game/objects/structures/statues.html new file mode 100644 index 0000000000000..4f0f7e2eecb8c --- /dev/null +++ b/code/game/objects/structures/statues.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/statues.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/structures/statues.dm + +

+ + +
/obj/structure/statue/sandstone/venuscall me when we add marble i guess
+ + + 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 0000000000000..5039dc8516636 --- /dev/null +++ b/code/game/objects/structures/stool_bed_chair_nest/chairs.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/stool_bed_chair_nest/chairs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/structures/stool_bed_chair_nest/chairs.dm + +

+ + +
/obj/structure/chairfuck you Pete
+ + + diff --git a/code/game/objects/structures/tables_racks.html b/code/game/objects/structures/tables_racks.html new file mode 100644 index 0000000000000..941afe16e4c13 --- /dev/null +++ b/code/game/objects/structures/tables_racks.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/tables_racks.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/structures/tables_racks.dm + +

+ + +
/obj/structure/table/wood/pokerNo specialties, Just a mapping object.
+ + + diff --git a/code/game/objects/structures/watercloset.html b/code/game/objects/structures/watercloset.html new file mode 100644 index 0000000000000..e186cfe9b030d --- /dev/null +++ b/code/game/objects/structures/watercloset.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/watercloset.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/objects/structures/watercloset.dm + +

+ + +
/obj/structure/sink/puddlesplishy splashy ^_^
+ + + diff --git a/code/game/sound.html b/code/game/sound.html new file mode 100644 index 0000000000000..e1feae697964e --- /dev/null +++ b/code/game/sound.html @@ -0,0 +1,40 @@ + + + + + + + code/game/sound.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/sound.dm + +

+ + + +
/soundDefault 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.

+ + + diff --git a/code/game/turfs/simulated.html b/code/game/turfs/simulated.html new file mode 100644 index 0000000000000..6748fb47e2b2f --- /dev/null +++ b/code/game/turfs/simulated.html @@ -0,0 +1,32 @@ + + + + + + + code/game/turfs/simulated.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/game/turfs/simulated.dm + +

+ + +
WATER_WEAKEN_TIMEKnockdown time for slipping on water

Define Details

+

WATER_WEAKEN_TIME + + +

+

Knockdown time for slipping on water

+ + + 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 0000000000000..4c7d3c3353f55 --- /dev/null +++ b/code/game/turfs/simulated/floor/asteroid_floors.html @@ -0,0 +1,36 @@ + + + + + + + code/game/turfs/simulated/floor/asteroid_floors.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/game/turfs/simulated/floor/asteroid_floors.dm + +

+ + + + + + +
RECURSION_MAXAsteroid
/turf/simulated/floor/plating/asteroid/basalt/lavalava underneath
/turf/simulated/floor/plating/asteroid/basalt/lava_land_surfaceSurface. The surface is warm, but survivable without a suit. Internals are required. The floors break to chasms, which drop you into the underground.
/turf/simulated/floor/plating/asteroid/airless/cave/has_datasubtype for producing a tunnel with given data
/turf/simulated/floor/plating/asteroid/airless/cave/volcanic/has_datasubtype for producing a tunnel with given data

Define Details

+

RECURSION_MAX + + +

+

Asteroid

+ + + diff --git a/code/game/turfs/simulated/floor/chasm.html b/code/game/turfs/simulated/floor/chasm.html new file mode 100644 index 0000000000000..3fd3aa04e0b99 --- /dev/null +++ b/code/game/turfs/simulated/floor/chasm.html @@ -0,0 +1,27 @@ + + + + + + + code/game/turfs/simulated/floor/chasm.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/turfs/simulated/floor/chasm.dm + +

+ + +
/obj/effect/abstract/chasm_storageAn abstract object which is basically just a bag that the chasm puts people inside
+ + + 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 0000000000000..1ec486a98e432 --- /dev/null +++ b/code/game/turfs/simulated/floor/fancy_floor.html @@ -0,0 +1,28 @@ + + + + + + + code/game/turfs/simulated/floor/fancy_floor.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/turfs/simulated/floor/fancy_floor.dm + +

+ + + +
/turf/simulated/floor/grass/no_creepThis vairant shows up under normal turfs so fits in the regular 32x32 sprite
/turf/simulated/floor/grass/jungle/no_creepThis vairant shows up under normal turfs so fits in the regular 32x32 sprite
+ + + diff --git a/code/game/turfs/simulated/floor/indestructible.html b/code/game/turfs/simulated/floor/indestructible.html new file mode 100644 index 0000000000000..024bdff146dc0 --- /dev/null +++ b/code/game/turfs/simulated/floor/indestructible.html @@ -0,0 +1,27 @@ + + + + + + + code/game/turfs/simulated/floor/indestructible.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/turfs/simulated/floor/indestructible.dm + +

+ + +
/turf/simulated/floor/indestructible/bossyou put stone tiles on this and use it as a base
+ + + diff --git a/code/game/turfs/simulated/floor/lava.html b/code/game/turfs/simulated/floor/lava.html new file mode 100644 index 0000000000000..568d6911d2eda --- /dev/null +++ b/code/game/turfs/simulated/floor/lava.html @@ -0,0 +1,29 @@ + + + + + + + code/game/turfs/simulated/floor/lava.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/turfs/simulated/floor/lava.dm + +

+ + +
/turf/simulated/floor/lavaLava 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.
+ + + 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 0000000000000..0e46488a9d4df --- /dev/null +++ b/code/game/turfs/simulated/floor/misc_floor.html @@ -0,0 +1,27 @@ + + + + + + + code/game/turfs/simulated/floor/misc_floor.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/turfs/simulated/floor/misc_floor.dm + +

+ + +
/turf/simulated/floor/beach/waterTODO - Refactor water so they share the same parent type - Or alternatively component something like that
+ + + diff --git a/code/game/turfs/simulated/floor/plasteel_floor.html b/code/game/turfs/simulated/floor/plasteel_floor.html new file mode 100644 index 0000000000000..9fdb7a1d4dd24 --- /dev/null +++ b/code/game/turfs/simulated/floor/plasteel_floor.html @@ -0,0 +1,27 @@ + + + + + + + code/game/turfs/simulated/floor/plasteel_floor.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/turfs/simulated/floor/plasteel_floor.dm + +

+ + +
/turf/simulated/floor/plasteel/airless/indestructibleFor bomb testing range
+ + + diff --git a/code/game/turfs/simulated/minerals.html b/code/game/turfs/simulated/minerals.html new file mode 100644 index 0000000000000..63ce089dfd534 --- /dev/null +++ b/code/game/turfs/simulated/minerals.html @@ -0,0 +1,28 @@ + + + + + + + code/game/turfs/simulated/minerals.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/turfs/simulated/minerals.dm + +

+ + +
/turf/simulated/mineralMineral deposits +wall piece
+ + + diff --git a/code/game/turfs/simulated/river.html b/code/game/turfs/simulated/river.html new file mode 100644 index 0000000000000..8ad97604b23be --- /dev/null +++ b/code/game/turfs/simulated/river.html @@ -0,0 +1,28 @@ + + + + + + + code/game/turfs/simulated/river.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/turfs/simulated/river.dm + +

+ + +
/datum/river_spawnerA straightforward system for making "rivers", paths made up of a specific +turf type that are generated in a random path on a z-level.
+ + + diff --git a/code/game/turfs/simulated/walls_mineral.html b/code/game/turfs/simulated/walls_mineral.html new file mode 100644 index 0000000000000..4324420eab56c --- /dev/null +++ b/code/game/turfs/simulated/walls_mineral.html @@ -0,0 +1,29 @@ + + + + + + + code/game/turfs/simulated/walls_mineral.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/turfs/simulated/walls_mineral.dm + +

+ + + +
/turf/simulated/wall/mineral/titanium//////////////////Titanium walls///////////////////// +has to use this path due to how building walls works
/turf/simulated/wall/mineral/plastitaniumPlastitanium walls
+ + + diff --git a/code/game/turfs/space/transit.html b/code/game/turfs/space/transit.html new file mode 100644 index 0000000000000..f0650fae4272d --- /dev/null +++ b/code/game/turfs/space/transit.html @@ -0,0 +1,28 @@ + + + + + + + code/game/turfs/space/transit.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/game/turfs/space/transit.dm + +

+ + + +
/turf/space/transit/northmoving to the north
/turf/space/transit/eastmoving to the east
+ + + diff --git a/code/modules/admin/holder2.html b/code/modules/admin/holder2.html new file mode 100644 index 0000000000000..bf3d187db82ca --- /dev/null +++ b/code/modules/admin/holder2.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/admin/holder2.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/admin/holder2.dm + +

+ + + +
/proc/check_rights_allRequires the holder to have all the rights specified
+ + + diff --git a/code/modules/admin/misc_admin_procs.html b/code/modules/admin/misc_admin_procs.html new file mode 100644 index 0000000000000..ffaa900285d35 --- /dev/null +++ b/code/modules/admin/misc_admin_procs.html @@ -0,0 +1,47 @@ + + + + + + + code/modules/admin/misc_admin_procs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/admin/misc_admin_procs.dm + +

+ + + + + + + + + + + + + +
/proc/message_adminTicketSends 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
/proc/message_mentorTicketSends 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
/proc/is_special_characterADMIN HELPER PROCS +A proc that return whether the mob is a "Special Character" aka Antagonist
/proc/get_antag_type_strings_listA proc that return an array of capitalized strings containing name of the antag types they are
/proc/get_antag_type_truncated_plaintext_stringA proc that return a string containing all the singled out antags . Empty string if not antag
/proc/get_admin_objective_targetsAllows admins to safely pick from SSticker.minds for objectives
+ + + diff --git a/code/modules/antagonists/_common/antag_hud.html b/code/modules/antagonists/_common/antag_hud.html new file mode 100644 index 0000000000000..16353d7624193 --- /dev/null +++ b/code/modules/antagonists/_common/antag_hud.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/antagonists/_common/antag_hud.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/_common/antag_hud.dm + +

+ + +
/datum/mindslavesMaster Servent Datum Sytems,Based on TG Gang system
+ + + diff --git a/code/modules/antagonists/_common/antag_spawner.html b/code/modules/antagonists/_common/antag_spawner.html new file mode 100644 index 0000000000000..872ee99fccbb5 --- /dev/null +++ b/code/modules/antagonists/_common/antag_spawner.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/antagonists/_common/antag_spawner.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/_common/antag_spawner.dm + +

+ + + + + + + +
/obj/item/antag_spawner/nuke_opsBORGS AND OPERATIVES
/obj/item/antag_spawner/nuke_ops/borg_teleSYNDICATE BORG
/obj/item/antag_spawner/slaughter_demon////////SLAUGHTER DEMON +Warning edgiest item in the game
/obj/item/antag_spawner/morphMORPH
/obj/item/antag_spawner/revenantRevenant
/obj/item/antag_spawner/pulse_demonPulse Demon
+ + + diff --git a/code/modules/antagonists/_common/antag_team.html b/code/modules/antagonists/_common/antag_team.html new file mode 100644 index 0000000000000..12b12381b0498 --- /dev/null +++ b/code/modules/antagonists/_common/antag_team.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/antagonists/_common/antag_team.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/_common/antag_team.dm + +

+ + +
/datum/teamDatum used by team antagonists to track it's members and objectives the team needs to complete.
+ + + diff --git a/code/modules/antagonists/changeling/evolution_menu.html b/code/modules/antagonists/changeling/evolution_menu.html new file mode 100644 index 0000000000000..cead0844c8bfa --- /dev/null +++ b/code/modules/antagonists/changeling/evolution_menu.html @@ -0,0 +1,37 @@ + + + + + + + code/modules/antagonists/changeling/evolution_menu.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/antagonists/changeling/evolution_menu.dm + +

+ + + +
COMPACT_MODEThe evolution menu will be shown in the compact mode, with only powers and costs being displayed.
EXPANDED_MODEThe 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.

+ + + diff --git a/code/modules/antagonists/changeling/powers/mutations.html b/code/modules/antagonists/changeling/powers/mutations.html new file mode 100644 index 0000000000000..3abd4add3b01a --- /dev/null +++ b/code/modules/antagonists/changeling/powers/mutations.html @@ -0,0 +1,41 @@ + + + + + + + code/modules/antagonists/changeling/powers/mutations.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/changeling/powers/mutations.dm + +

+ + + + + + +
/datum/action/changeling/weapon/arm_blade*
+|ARM BLADE| +*
/datum/action/changeling/weapon/tentacle
+|COMBAT TENTACLES
| +*
*
/datum/action/changeling/weapon/shield
+|SHIELD
| +*
/datum/action/changeling/suit/organic_space_suit
+|SPACE SUIT + HELMET
| +*
*
/datum/action/changeling/suit/armor*
+|ARMOR| +*
+ + + diff --git a/code/modules/antagonists/changeling/powers/shriek.html b/code/modules/antagonists/changeling/powers/shriek.html new file mode 100644 index 0000000000000..6dae323524da5 --- /dev/null +++ b/code/modules/antagonists/changeling/powers/shriek.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/antagonists/changeling/powers/shriek.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/changeling/powers/shriek.dm + +

+ + +
/datum/action/changeling/dissonant_shriek/cyberrevA more expensive version, used during rounds with cyber rev station trait for balance reasons.
+ + + 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 0000000000000..2acc26b0657de --- /dev/null +++ b/code/modules/antagonists/changeling/powers/summon_spiders.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/antagonists/changeling/powers/summon_spiders.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/changeling/powers/summon_spiders.dm + +

+ + +
/mob/living/simple_animal/hostile/poison/giant_spider/hunter/infestation_spiderChild of giant_spider because this should do everything the spider does and more
+ + + 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 0000000000000..4141dbd7cf609 --- /dev/null +++ b/code/modules/antagonists/changeling/powers/tiny_prick.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/antagonists/changeling/powers/tiny_prick.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/changeling/powers/tiny_prick.dm + +

+ + +
/datum/action/changeling/sting/cryoEnable when mob cooling is fixed so that frostoil actually makes you cold, instead of mostly just hungry.
+ + + 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 0000000000000..b95af29ae6eaa --- /dev/null +++ b/code/modules/antagonists/traitor/contractor/datums/contractor_hub.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/antagonists/traitor/contractor/datums/contractor_hub.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/traitor/contractor/datums/contractor_hub.dm + +

+ + +
/datum/contractor_hubDescribes and manages the contracts and rewards for a single contractor.
+ + + 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 0000000000000..90c596a8a8ea0 --- /dev/null +++ b/code/modules/antagonists/traitor/contractor/datums/objective_contract.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/antagonists/traitor/contractor/datums/objective_contract.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/traitor/contractor/datums/objective_contract.dm + +

+ + +
/datum/objective/contractDescribes the target to kidnap and the extraction area of a /datum/syndicate_contract.
+ + + diff --git a/code/modules/antagonists/traitor/contractor/datums/rep_purchases/balloon.html b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/balloon.html new file mode 100644 index 0000000000000..56655ec480383 --- /dev/null +++ b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/balloon.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/antagonists/traitor/contractor/datums/rep_purchases/balloon.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/traitor/contractor/datums/rep_purchases/balloon.dm + +

+ + +
/datum/rep_purchase/item/balloon
+ + + diff --git a/code/modules/antagonists/traitor/contractor/datums/rep_purchases/baton.html b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/baton.html new file mode 100644 index 0000000000000..3fe7421225a03 --- /dev/null +++ b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/baton.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/antagonists/traitor/contractor/datums/rep_purchases/baton.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/traitor/contractor/datums/rep_purchases/baton.dm + +

+ + +
/datum/rep_purchase/item/baton
+ + + diff --git a/code/modules/antagonists/traitor/contractor/datums/rep_purchases/blackout.html b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/blackout.html new file mode 100644 index 0000000000000..07d873b288ec3 --- /dev/null +++ b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/blackout.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/antagonists/traitor/contractor/datums/rep_purchases/blackout.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/traitor/contractor/datums/rep_purchases/blackout.dm + +

+ + +
/datum/rep_purchase/blackout
+ + + diff --git a/code/modules/antagonists/traitor/contractor/datums/rep_purchases/contractor_fulton.html b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/contractor_fulton.html new file mode 100644 index 0000000000000..50487865fc717 --- /dev/null +++ b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/contractor_fulton.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/antagonists/traitor/contractor/datums/rep_purchases/contractor_fulton.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/traitor/contractor/datums/rep_purchases/contractor_fulton.dm + +

+ + +
/datum/rep_purchase/item/fulton
+ + + diff --git a/code/modules/antagonists/traitor/contractor/datums/rep_purchases/flare.html b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/flare.html new file mode 100644 index 0000000000000..52762d417d37b --- /dev/null +++ b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/flare.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/antagonists/traitor/contractor/datums/rep_purchases/flare.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/traitor/contractor/datums/rep_purchases/flare.dm + +

+ + +
/datum/rep_purchase/item/flare
+ + + diff --git a/code/modules/antagonists/traitor/contractor/datums/rep_purchases/rep_pinpointer.html b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/rep_pinpointer.html new file mode 100644 index 0000000000000..846b50e1a0c05 --- /dev/null +++ b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/rep_pinpointer.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/antagonists/traitor/contractor/datums/rep_purchases/rep_pinpointer.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/traitor/contractor/datums/rep_purchases/rep_pinpointer.dm + +

+ + +
/datum/rep_purchase/item/pinpointer
+ + + 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 0000000000000..2213bf9448a26 --- /dev/null +++ b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/rep_purchase_base.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/antagonists/traitor/contractor/datums/rep_purchases/rep_purchase_base.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/traitor/contractor/datums/rep_purchases/rep_purchase_base.dm + +

+ + + +
/datum/rep_purchaseDescribes something that can be purchased with Contractor Rep.
/datum/rep_purchase/itemDescribes an item that can be purchased with Contractor Rep.
+ + + diff --git a/code/modules/antagonists/traitor/contractor/datums/rep_purchases/reroll.html b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/reroll.html new file mode 100644 index 0000000000000..ba9cda511cca0 --- /dev/null +++ b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/reroll.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/antagonists/traitor/contractor/datums/rep_purchases/reroll.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/traitor/contractor/datums/rep_purchases/reroll.dm + +

+ + +
/datum/rep_purchase/reroll
+ + + diff --git a/code/modules/antagonists/traitor/contractor/datums/rep_purchases/zippo.html b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/zippo.html new file mode 100644 index 0000000000000..ce684b86d36df --- /dev/null +++ b/code/modules/antagonists/traitor/contractor/datums/rep_purchases/zippo.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/antagonists/traitor/contractor/datums/rep_purchases/zippo.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/traitor/contractor/datums/rep_purchases/zippo.dm + +

+ + +
/datum/rep_purchase/item/zippo
+ + + 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 0000000000000..2f2fc9bec44a4 --- /dev/null +++ b/code/modules/antagonists/traitor/contractor/datums/syndicate_contract.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/antagonists/traitor/contractor/datums/syndicate_contract.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/traitor/contractor/datums/syndicate_contract.dm + +

+ + +
/datum/syndicate_contractDescribes a contract that can be completed by a Contractor.
+ + + 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 0000000000000..da4258599f0e2 --- /dev/null +++ b/code/modules/antagonists/traitor/contractor/items/contractor_uplink.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/antagonists/traitor/contractor/items/contractor_uplink.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/traitor/contractor/items/contractor_uplink.dm + +

+ + +
/obj/item/contractor_uplinkA contractor's point of contact with their Contractor Hub.
+ + + 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 0000000000000..756b4defe5755 --- /dev/null +++ b/code/modules/antagonists/traitor/contractor/items/extraction_items.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/antagonists/traitor/contractor/items/extraction_items.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/antagonists/traitor/contractor/items/extraction_items.dm + +

+ + + + +
/obj/effect/contractor_flareUsed to designate where the /obj/effect/portal/advanced/contractor should spawn during the extraction process.
/obj/effect/portal/advanced/contractorUsed to extract contract targets and send them to the Syndicate jail for a few minutes.
/obj/structure/closet/secure_closet/contractorCannot be opened. Contains the belongings of all kidnapped targets. +Any item added inside stops processing and starts again when removed.
+ + + 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 0000000000000..de5d593857230 --- /dev/null +++ b/code/modules/antagonists/vampire/vampire_powers/vampire_powers.html @@ -0,0 +1,42 @@ + + + + + + + code/modules/antagonists/vampire/vampire_powers/vampire_powers.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/antagonists/vampire/vampire_powers/vampire_powers.dm + +

+ + + + +
DEVIATION_NONENo deviation at all. Flashed from the front or front-left/front-right. Alternatively, flashed in direct view.
DEVIATION_PARTIALPartial deviation. Flashed from the side. Alternatively, flashed out the corner of your eyes.
DEVIATION_FULLFull 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.

+ + + diff --git a/code/modules/assembly/infrared.html b/code/modules/assembly/infrared.html new file mode 100644 index 0000000000000..93d0e8841b7fe --- /dev/null +++ b/code/modules/assembly/infrared.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/assembly/infrared.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/assembly/infrared.dm + +

+ + +
/obj/effect/beam/i_beamIBeam
+ + + diff --git a/code/modules/asset_cache.html b/code/modules/asset_cache.html new file mode 100644 index 0000000000000..73c6ad777e444 --- /dev/null +++ b/code/modules/asset_cache.html @@ -0,0 +1,43 @@ + + + + + + + code/modules/asset_cache/readme.md - Space Station 13 + + +
+ Space 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.

+ + + 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 0000000000000..aa5e8d6e8996f --- /dev/null +++ b/code/modules/asset_cache/asset_cache_item.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/asset_cache/asset_cache_item.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/asset_cache/asset_cache_item.dm + +

+ + +
/datum/asset_cache_itemAn internal datum containing info on items in the asset cache. Mainly used to cache md5 info for speed.
+ + + diff --git a/code/modules/asset_cache/asset_list.html b/code/modules/asset_cache/asset_list.html new file mode 100644 index 0000000000000..ed431dbf6236a --- /dev/null +++ b/code/modules/asset_cache/asset_list.html @@ -0,0 +1,34 @@ + + + + + + + code/modules/asset_cache/asset_list.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/asset_cache/asset_list.dm + +

+ + + + + +
/datum/asset/simpleIf you don't need anything complicated.
/datum/asset/groupFor registering or sending multiple others at once
/datum/asset/simple/icon_statesGenerates assets based on iconstates of a single icon
/datum/asset/simple/namespacedNamespace'ed assets (for static css and html files) +When sent over a cdn transport, all assets in the same asset datum will exist in the same folder, as their plain names. +Used to ensure css files can reference files by url() without having to generate the css at runtime, both the css file and the files it depends on must exist in the same namespace asset datum. (Also works for html) +For example blah.css with asset blah.png will get loaded as namespaces/a3d..14f/f12..d3c.css and namespaces/a3d..14f/blah.png. allowing the css file to load blah.png by a relative url rather then compute the generated url with get_url_mappings(). +The namespace folder's name will change if any of the assets change. (excluding parent assets)
+ + + diff --git a/code/modules/asset_cache/assets/asset_chem_master.html b/code/modules/asset_cache/assets/asset_chem_master.html new file mode 100644 index 0000000000000..42b42d5a24ea5 --- /dev/null +++ b/code/modules/asset_cache/assets/asset_chem_master.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/asset_cache/assets/asset_chem_master.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/asset_cache/assets/asset_chem_master.dm + +

+ + +
/datum/asset/spritesheet/chem_masterPill sprites for UIs
+ + + diff --git a/code/modules/asset_cache/assets/asset_orbit_icons.html b/code/modules/asset_cache/assets/asset_orbit_icons.html new file mode 100644 index 0000000000000..7378902284661 --- /dev/null +++ b/code/modules/asset_cache/assets/asset_orbit_icons.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/asset_cache/assets/asset_orbit_icons.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/asset_cache/assets/asset_orbit_icons.dm + +

+ + +
/datum/asset/spritesheet/orbit_jobSprites for Orbit Role UI
+ + + 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 0000000000000..e5943931f7bf6 --- /dev/null +++ b/code/modules/asset_cache/transports/asset_transport.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/asset_cache/transports/asset_transport.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/asset_cache/transports/asset_transport.dm + +

+ + + +
ASSET_CACHE_TELL_CLIENT_AMOUNTWhen sending mutiple assets, how many before we give the client a quaint little sending resources message
/datum/asset_transportBase browse_rsc asset transport

Define Details

+

ASSET_CACHE_TELL_CLIENT_AMOUNT + + +

+

When sending mutiple assets, how many before we give the client a quaint little sending resources message

+ + + diff --git a/code/modules/asset_cache/transports/webroot_transport.html b/code/modules/asset_cache/transports/webroot_transport.html new file mode 100644 index 0000000000000..4d6926118b4d2 --- /dev/null +++ b/code/modules/asset_cache/transports/webroot_transport.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/asset_cache/transports/webroot_transport.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/asset_cache/transports/webroot_transport.dm + +

+ + +
/datum/asset_transport/webrootCDN Webroot asset transport.
+ + + diff --git a/code/modules/atmospherics/environmental/LINDA_fire.html b/code/modules/atmospherics/environmental/LINDA_fire.html new file mode 100644 index 0000000000000..16d1fdc4a9a3a --- /dev/null +++ b/code/modules/atmospherics/environmental/LINDA_fire.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/atmospherics/environmental/LINDA_fire.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/atmospherics/environmental/LINDA_fire.dm + +

+ + +
/obj/effect/hotspot/fakeLargely for the fireflash procs below
+ + + diff --git a/code/modules/atmospherics/gasmixtures/gas_mixture.html b/code/modules/atmospherics/gasmixtures/gas_mixture.html new file mode 100644 index 0000000000000..2b70786d52ee7 --- /dev/null +++ b/code/modules/atmospherics/gasmixtures/gas_mixture.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/atmospherics/gasmixtures/gas_mixture.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/atmospherics/gasmixtures/gas_mixture.dm + +

+ + + +
/datum/gas_mixture/bound_to_turfMathematical proofs: +get_breath_partial_pressure(gas_pp) --> gas_pp/total_moles()breath_pp = pp +get_true_breath_pressure(pp) --> gas_pp = pp/breath_pptotal_moles()
/datum/gas_mixture/readonlyA gas mixture that should not be modified after creation.
+ + + diff --git a/code/modules/atmospherics/machinery/airalarm.html b/code/modules/atmospherics/machinery/airalarm.html new file mode 100644 index 0000000000000..842d203da9b7e --- /dev/null +++ b/code/modules/atmospherics/machinery/airalarm.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/atmospherics/machinery/airalarm.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/atmospherics/machinery/airalarm.dm + +

+ + +
/obj/machinery/alarm/syndicategeneral syndicate access
+ + + 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 0000000000000..04f1f58147a8f --- /dev/null +++ b/code/modules/atmospherics/machinery/components/binary_devices/valve.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/atmospherics/machinery/components/binary_devices/valve.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/atmospherics/machinery/components/binary_devices/valve.dm + +

+ + +
/obj/machinery/atmospherics/binary/valve/digitalcan be controlled by AI
+ + + 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 0000000000000..b7bdaa8074134 --- /dev/null +++ b/code/modules/atmospherics/machinery/components/trinary_devices/filter.html @@ -0,0 +1,57 @@ + + + + + + + code/modules/atmospherics/machinery/components/trinary_devices/filter.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/atmospherics/machinery/components/trinary_devices/filter.dm + +

+ + + + + + + +
FILTER_NOTHINGNothing will be filtered.
FILTER_TOXINSPlasma, and Oxygen Agent B.
FILTER_OXYGENOxygen only.
FILTER_NITROGENNitrogen only.
FILTER_CO2Carbon dioxide only.
FILTER_N2ONitrous oxide only.

Define Details

+

FILTER_CO2 + + +

+

Carbon dioxide only.

FILTER_N2O + + +

+

Nitrous oxide only.

FILTER_NITROGEN + + +

+

Nitrogen only.

FILTER_NOTHING + + +

+

Nothing will be filtered.

FILTER_OXYGEN + + +

+

Oxygen only.

FILTER_TOXINS + + +

+

Plasma, and Oxygen Agent B.

+ + + 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 0000000000000..6b5d70b9474cd --- /dev/null +++ b/code/modules/atmospherics/machinery/components/trinary_devices/tvalve.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/atmospherics/machinery/components/trinary_devices/tvalve.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/atmospherics/machinery/components/trinary_devices/tvalve.dm + +

+ + +
/obj/machinery/atmospherics/trinary/tvalve/digitalcan be controlled by AI
+ + + 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 0000000000000..38e4eeafdcc91 --- /dev/null +++ b/code/modules/atmospherics/machinery/portable/portable_pump.html @@ -0,0 +1,42 @@ + + + + + + + code/modules/atmospherics/machinery/portable/portable_pump.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/atmospherics/machinery/portable/portable_pump.dm + +

+ + + + +
MAX_TARGET_PRESSUREThe maximum target_pressure you can set on the pump. Equates to about 1013.25 kPa.
DIRECTION_INThe pump will be siphoning gas.
DIRECTION_OUTThe pump will be pumping gas out.

Define Details

+

DIRECTION_IN + + +

+

The pump will be siphoning gas.

DIRECTION_OUT + + +

+

The pump will be pumping gas out.

MAX_TARGET_PRESSURE + + +

+

The maximum target_pressure you can set on the pump. Equates to about 1013.25 kPa.

+ + + diff --git a/code/modules/awaymissions/mission_code/beach.html b/code/modules/awaymissions/mission_code/beach.html new file mode 100644 index 0000000000000..0f52d063e1f7a --- /dev/null +++ b/code/modules/awaymissions/mission_code/beach.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/awaymissions/mission_code/beach.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/awaymissions/mission_code/beach.dm + +

+ + + + +
/turf/simulated/floor/beach/away/sand/densefor boundary "walls"
/turf/simulated/floor/beach/away/coastline/densefor boundary "walls"
/turf/simulated/floor/beach/away/water/densefor boundary "walls"
+ + + 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 0000000000000..4a4b79a33ca3c --- /dev/null +++ b/code/modules/awaymissions/mission_code/ruins/oldstation.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/awaymissions/mission_code/ruins/oldstation.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/awaymissions/mission_code/ruins/oldstation.dm + +

+ + +
/obj/structure/closet/crate/secure/oldstationSecure Crates: Access locked to Theta crew. Cannot be moved, destroyed, +emagged or EMPed because gamers can't be trusted not to game.
+ + + 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 0000000000000..d76e2c8b3bac3 --- /dev/null +++ b/code/modules/awaymissions/mission_code/ruins/watcher_grave.html @@ -0,0 +1,41 @@ + + + + + + + code/modules/awaymissions/mission_code/ruins/watcher_grave.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/awaymissions/mission_code/ruins/watcher_grave.dm + +

+ + + + + + + +
WATCHER_EGG_LIVELY_MODif greater than lively mod, jiggles faster
WATCHER_EGG_ACTIVE_MODIf greater than active mod, egg is active and jiggles
/obj/item/food/snacks/egg/watcherEgg which hatches into a helpful pet. Or you can eat it if you want.
/obj/item/watcher_hatchlingA cute pet who will occasionally attack lavaland mobs for you
/obj/effect/watcher_orbiterOrbiting visual which shoots at mining mobs
/obj/item/projectile/baby_watcher_blastBeam 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

+ + + diff --git a/code/modules/awaymissions/mob_spawn.html b/code/modules/awaymissions/mob_spawn.html new file mode 100644 index 0000000000000..8fc4375590003 --- /dev/null +++ b/code/modules/awaymissions/mob_spawn.html @@ -0,0 +1,41 @@ + + + + + + + code/modules/awaymissions/mob_spawn.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/awaymissions/mob_spawn.dm + +

+ + + + + + + +
CORPSE_INSTANTthis mob spawn creates the corpse instantly
CORPSE_ROUNDSTARTthis mob spawn creates the corpse during GAME_STATE_PLAYING
/obj/effect/mob_spawn/human/alive/space_bar_patronAlive ones, used as "core" for ghost roles now and in future.
/obj/effect/mob_spawn/human/corpse/abductorCorpses, they can be used for "decoration" purpose.
/obj/effect/mob_spawn/mouseNon-human spawners
/obj/effect/mob_spawn/corpsethese mob spawn subtypes trigger immediately (New or Initialize) and are not player controlled... since they're dead, you know?

Define Details

+

CORPSE_INSTANT + + +

+

this mob spawn creates the corpse instantly

CORPSE_ROUNDSTART + + +

+

this mob spawn creates the corpse during GAME_STATE_PLAYING

+ + + diff --git a/code/modules/buildmode.html b/code/modules/buildmode.html new file mode 100644 index 0000000000000..02aa4a99f7959 --- /dev/null +++ b/code/modules/buildmode.html @@ -0,0 +1,310 @@ + + + + + + + code/modules/buildmode/README.md - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

Buildmode + +

+ + +
Code layoutBuildmode +

Manager for buildmode modes. Contains logic to manage switching between each mode, and presenting a suitable user interface.

+Effects +

Special graphics used by buildmode modes for user interface purposes.

+Buildmode Mode +

Implementer of buildmode behaviors.

+

Existing varieties:

+
    +
  • +

    Basic

    +

    Description:

    +

    Allows creation of simple structures consisting of floors, walls, windows, and airlocks.

    +

    Controls:

    +
      +
    • +

      Left click a turf:

      +

      "Upgrades" the turf based on the following rules below:

      +
        +
      • Space -> Tiled floor
      • +
      • Simulated floor -> Regular wall
      • +
      • Wall -> Reinforced wall
      • +
      +
    • +
    • +

      Right click a turf:

      +

      "Downgrades" the turf based on the following rules below:

      +
        +
      • Reinforced wall -> Regular wall
      • +
      • Wall -> Tiled floor
      • +
      • Simulated floor -> Space
      • +
      +
    • +
    • +

      Right click an object:

      +

      Deletes the clicked object.

      +
    • +
    • +

      Alt+Left click a location:

      +

      Places an airlock at the clicked location.

      +
    • +
    • +

      Ctrl+Left click a location:

      +

      Places a window at the clicked location.

      +
    • +
    +
  • +
  • +

    Advanced

    +

    Description:

    +

    Creates an instance of a configurable atom path where you click.

    +

    Controls:

    +
      +
    • +

      Right click on the mode selector:

      +

      Choose a path to spawn.

      +
    • +
    • +

      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.

      +
    • +
    +
  • +
+ + + diff --git a/code/modules/client/jobban_holder.html b/code/modules/client/jobban_holder.html new file mode 100644 index 0000000000000..3059bb572f171 --- /dev/null +++ b/code/modules/client/jobban_holder.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/client/jobban_holder.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/client/jobban_holder.dm + +

+ + +
/datum/job_ban_holderHolder for job bans
+ + + 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 0000000000000..8d8d82ca5a2bf --- /dev/null +++ b/code/modules/client/login_processing/__client_login_processor.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/client/login_processing/__client_login_processor.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/client/login_processing/__client_login_processor.dm + +

+ + +
/datum/client_login_processorThe holder class for all client data processing
+ + + diff --git a/code/modules/clothing/glasses/engine_goggles.html b/code/modules/clothing/glasses/engine_goggles.html new file mode 100644 index 0000000000000..bcd4ff39f283f --- /dev/null +++ b/code/modules/clothing/glasses/engine_goggles.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/clothing/glasses/engine_goggles.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/clothing/glasses/engine_goggles.dm + +

+ + +
/obj/item/clothing/glasses/meson/engine/trayatmos techs have lived far too long without tray goggles while those damned engineers get their dual-purpose gogles all to themselves
+ + + diff --git a/code/modules/clothing/gloves/colored_gloves.html b/code/modules/clothing/gloves/colored_gloves.html new file mode 100644 index 0000000000000..cefae1b75eabc --- /dev/null +++ b/code/modules/clothing/gloves/colored_gloves.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/clothing/gloves/colored_gloves.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/clothing/gloves/colored_gloves.dm + +

+ + +
/obj/item/clothing/gloves/color/fyellowCheap Chinese Crap
+ + + diff --git a/code/modules/clothing/gloves/rings.html b/code/modules/clothing/gloves/rings.html new file mode 100644 index 0000000000000..ee533a76750b6 --- /dev/null +++ b/code/modules/clothing/gloves/rings.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/clothing/gloves/rings.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/clothing/gloves/rings.dm + +

+ + +
/obj/item/clothing/gloves/ring/silver/blessedtodo
+ + + diff --git a/code/modules/clothing/head/beanie.html b/code/modules/clothing/head/beanie.html new file mode 100644 index 0000000000000..7e0622b04913a --- /dev/null +++ b/code/modules/clothing/head/beanie.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/clothing/head/beanie.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/clothing/head/beanie.dm + +

+ + +
/obj/item/clothing/head/beanieDefault is white, this is meant to be seen
+ + + diff --git a/code/modules/clothing/head/misc_hats.html b/code/modules/clothing/head/misc_hats.html new file mode 100644 index 0000000000000..d8c15d6a4f11d --- /dev/null +++ b/code/modules/clothing/head/misc_hats.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/clothing/head/misc_hats.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/clothing/head/misc_hats.dm + +

+ + + +
/obj/item/clothing/head/stalhelmWhy do these exist - Because they aren't specifically Nazi Germany
/obj/item/clothing/head/beret/purpleFluff?
+ + + diff --git a/code/modules/clothing/shoes/magboots.html b/code/modules/clothing/shoes/magboots.html new file mode 100644 index 0000000000000..367c10bb24ece --- /dev/null +++ b/code/modules/clothing/shoes/magboots.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/clothing/shoes/magboots.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/clothing/shoes/magboots.dm + +

+ + + +
/obj/item/clothing/shoes/magboots/eliteFor the Syndicate Strike Team/SolGov/Tactical Teams
/obj/item/clothing/shoes/magboots/wizardbundled with the wiz hardsuit
+ + + diff --git a/code/modules/clothing/shoes/misc_shoes.html b/code/modules/clothing/shoes/misc_shoes.html new file mode 100644 index 0000000000000..db139bbcc22a7 --- /dev/null +++ b/code/modules/clothing/shoes/misc_shoes.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/clothing/shoes/misc_shoes.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/clothing/shoes/misc_shoes.dm + +

+ + + + +
/obj/item/clothing/shoes/combatbasic syndicate combat boots for nuke ops and mob corpses
/obj/item/clothing/shoes/combat/swatoverpowered gimmick boots
/obj/item/clothing/shoes/galoshes/dry/lightweightfor red janitor ert.
+ + + diff --git a/code/modules/clothing/suits/armor_suits.html b/code/modules/clothing/suits/armor_suits.html new file mode 100644 index 0000000000000..65644c6a19c84 --- /dev/null +++ b/code/modules/clothing/suits/armor_suits.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/clothing/suits/armor_suits.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/clothing/suits/armor_suits.dm + +

+ + +
/obj/item/clothing/suit/armor/reactive/randomSpawner for random reactive armor
+ + + diff --git a/code/modules/clothing/suits/misc_suits.html b/code/modules/clothing/suits/misc_suits.html new file mode 100644 index 0000000000000..c0bd55b350647 --- /dev/null +++ b/code/modules/clothing/suits/misc_suits.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/clothing/suits/misc_suits.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/clothing/suits/misc_suits.dm + +

+ + + + + +
/obj/item/clothing/suit/hooded/bee_costumeIt's Hip!
/obj/item/clothing/suit/bloated_humanOH MY GOD WHAT HAVE YOU DONE!?!?!?
/obj/item/clothing/suit/draculacoatBleh!
/obj/item/clothing/suit/advanced_protective_suitAdvanced Protective Suit, AKA, God Mode in wearable form.
+ + + diff --git a/code/modules/clothing/under/accessories/accessory.html b/code/modules/clothing/under/accessories/accessory.html new file mode 100644 index 0000000000000..0b3ec202f9d4e --- /dev/null +++ b/code/modules/clothing/under/accessories/accessory.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/clothing/under/accessories/accessory.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/clothing/under/accessories/accessory.dm + +

+ + + + + +
/obj/item/clothing/accessory/waistcoatNo overlay
/obj/item/clothing/accessory/medal/recruiterPrize for the NT Recruiter emagged arcade
/obj/item/clothing/accessory/medal/gold/heroism/hardmode_fullKill every hardmode boss. In a shift. Good luck.
/obj/item/clothing/accessory/scarfNo overlay
+ + + diff --git a/code/modules/clothing/under/color.html b/code/modules/clothing/under/color.html new file mode 100644 index 0000000000000..97b77171157ce --- /dev/null +++ b/code/modules/clothing/under/color.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/clothing/under/color.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/clothing/under/color.dm + +

+ + +
/obj/item/clothing/under/color/purple/sensorfor jani ert
+ + + diff --git a/code/modules/clothing/under/costumes.html b/code/modules/clothing/under/costumes.html new file mode 100644 index 0000000000000..7828ab954ece3 --- /dev/null +++ b/code/modules/clothing/under/costumes.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/clothing/under/costumes.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/clothing/under/costumes.dm + +

+ + +
/obj/item/clothing/under/psysuitDon't modify the path, used by a fluff item
+ + + 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 0000000000000..f14ff6746f6b9 --- /dev/null +++ b/code/modules/clothing/under/jobs/medical_jumpsuits.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/clothing/under/jobs/medical_jumpsuits.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/clothing/under/jobs/medical_jumpsuits.dm + +

+ + +
/obj/item/clothing/under/rank/medical/gownSeems like it should be here for organisational purposes
+ + + diff --git a/code/modules/crafting/guncrafting.html b/code/modules/crafting/guncrafting.html new file mode 100644 index 0000000000000..636451b162533 --- /dev/null +++ b/code/modules/crafting/guncrafting.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/crafting/guncrafting.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/crafting/guncrafting.dm + +

+ + +
/obj/item/weaponcrafting/gunkitThese gun kits are printed from the protolathe to then be used in making new weapons
+ + + diff --git a/code/modules/crafting/recipes.html b/code/modules/crafting/recipes.html new file mode 100644 index 0000000000000..2097c16b50521 --- /dev/null +++ b/code/modules/crafting/recipes.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/crafting/recipes.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/crafting/recipes.dm + +

+ + +
/datum/crafting_recipe/rakeCategory resorting incoming
+ + + diff --git a/code/modules/customitems/item_defines.html b/code/modules/customitems/item_defines.html new file mode 100644 index 0000000000000..977d0c5bf6c94 --- /dev/null +++ b/code/modules/customitems/item_defines.html @@ -0,0 +1,147 @@ + + + + + + + code/modules/customitems/item_defines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/customitems/item_defines.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
USED_MOD_HELM///////////PARADISE STATION CUSTOM ITEMS///////////
/obj/item/fluff/tattoo_gunGeneric tattoo gun, make subtypes for different folks
/obj/item/fluff/bird_painterBirdtTalon: Kahkiri
/obj/item/claymore/fluffMrBarrelrolll: Maximus Greenwood
/obj/item/fluff/rsik_katanaXydonus: Rsik Ugsharki Atan
/obj/item/crowbar/fluff/zelda_creedy_1Zomgponies: Griffin Rowley
/obj/item/clothing/glasses/monocle/fluff/trubusTrubus: Wolf O'Shaw
/obj/item/clothing/glasses/meson/fluff/book_berner_1Adrkiller59: Adam Cooper
/obj/item/clothing/glasses/sunglasses_fake/fluff/kakiRapidvalj: Kakicharakiti
/obj/item/fluff/rapid_wheelchair_kitRapidvalj: Hakikarahiti
/obj/item/lighter/zippo/fluff/purpleGodOfOreos: Jason Conrad
/obj/item/lighter/zippo/fluff/michael_guess_1mrbits: Callista Gold
/obj/item/lighter/zippo/fluff/duckchanDuckchan: Rybys Romney
/obj/item/lighter/zippo/fluff/warriorstarWarriorstar: DEADLOCK
/obj/item/fluff/dogwhistlephantasmicdream: Zeke Varloss
/obj/item/storage/toolbox/fluff/lunchboxgodoforeos: Jason Conrad
/obj/item/fluff/desolate_coat_kitDesolateG: Micheal Smith
/obj/item/fluff/fei_gasmask_kitFei Hazelwood: Tariq Yon-Dale
/obj/item/fluff/desolate_baton_kitDesolateG: Micheal Smith
/obj/item/fluff/cardgage_helmet_kitcaptain cardgage: Richard Ulery
/obj/item/fluff/merchant_sallet_modkitTravelling Merchant: Trav Noble. This is what they spawn in with
/obj/item/fluff/k3_webbing_modkitIK3I: Yakikatachi
/obj/item/fluff/pyro_wintersec_kitDarkLordpyro: Valthorne Haliber
/obj/item/fluff/sylus_conversion_kitDecemviri: Sylus Cain
/obj/item/clothing/glasses/hud/security/sunglasses/fluff/eyepro///////// Clothing ////////////
/obj/item/clothing/glasses/hud/security/sunglasses/fluff/voxxyhudLP Spartan: Kaskreyarawkta
/obj/item/clothing/head/fluff/heather_winceworth///////// Hats //////////// +Regens: Heather Winceworth
/obj/item/clothing/head/valkyriehelmetR3Valkyrie: Rikki
/obj/item/clothing/head/fluff/sparkyninja_beretSparkyninja: Neil Wilkinson
/obj/item/clothing/head/fluff/sigholtsigholtstarsong: Sigholt Starsong
/obj/item/clothing/head/pirate/fluff/stumpyMrFroztee: Stumpy
/obj/item/clothing/head/fluff/lindaEpic_Charger: Linda Clark
/obj/item/clothing/head/fluff/kakiRapidvalj: Kakicharakiti
/obj/item/clothing/head/helmet/fluff/merchant_salletTravelling Merchant: Trav Noble. This >>IS NOT<< what they spawn in with
/obj/item/clothing/head/fluff/eloV-Force_Bomber: E.L.O.
/obj/item/clothing/suit/fluffSuits
/obj/item/clothing/suit/storage/labcoat/fluff/pulsecoatozewse : Daniel Harper : Donated to them by Runemeds, who is the original donor.
/obj/item/clothing/suit/jacket/miljacket/patchsniper_fairy : P.A.T.C.H.
/obj/item/clothing/suit/fluff/dusty_jacketComputerlessCitizen: Screech
/obj/item/clothing/suit/fluff/cheeky_sov_coatCheekyCrenando: Srusu Rskuzu
/obj/item/clothing/suit/fluff/supplymaster_jacketDenthamos: Henry Grandpa Gadow
/obj/item/clothing/suit/storage/labcoat/fluff/aeneas_rinilSocialsystem: Lynn Fea
/obj/item/clothing/suit/jacket/fluff/kidosvestAnxipal: Kido Qasteth
/obj/item/clothing/suit/jacket/fluff/jacksvestAnxipal: Jack Harper
/obj/item/clothing/suit/fluff/kluysKluys: Cripty Pandaen
/obj/item/clothing/suit/storage/labcoat/fluff/redSweetjealousy: Sophie Faust-Noms
/obj/item/clothing/suit/storage/labcoat/fluff/ionward_labcoatIonward: Gemini
/obj/item/clothing/suit/fluff/stobarico_greatcoatStobarico: F.U.R.R.Y
/obj/item/clothing/suit/hooded/hoodie/fluff/lindaEpic_Charger: Linda Clark
/obj/item/clothing/head/hooded/hood/fluff/lindaEpic_Charger: Linda Clark
/obj/item/clothing/suit/hooded/hoodie/hyloHylocereus: Sam Aria
/obj/item/clothing/suit/hooded/fluff/boneDoru7: Jack Bone
/obj/item/clothing/suit/armor/shodanscoatRazekPraxis: SHODAN
/obj/item/clothing/suit/hooded/hoodie/fluff/xantholneXantholne: Meex Zwichsnicrur
/obj/item/clothing/head/hooded/hood/fluff/xantholneXantholne: Meex Zwichsnicrur
/obj/item/clothing/suit/hooded/hoodie/fluff/xydonusXydonus: Rsik Ugsharki Atan | Based off of the bomber jacket, but with a hood slapped on (for allowed suit storage)
/obj/item/clothing/suit/fluff/pineapplePineapple Salad: Dan Jello
/obj/item/fluff/pinapplehairgelPineapple Salad: Dan Jello
/obj/item/clothing/suit/hooded/wintercoat/fluff/shesiMrSynnester : Shesi Skaklas
/obj/item/clothing/head/hooded/hood/fluff/shesiMrSynnester : Shesi Skaklas
/obj/item/clothing/suit/jacket/dtxAffectedArc07: DTX
/obj/item/clothing/under/fluffUniforms
/obj/item/clothing/under/fluff/counterfeitguise_uniformthatdanguy23 : Rissa Williams
/obj/item/clothing/under/fluff/benjaminfalloutBenjaminfallout: Pretzel Brassheart
/obj/item/clothing/under/fluff/soviet_casual_uniformNorstead : Natalya Sokolova
/obj/item/clothing/under/fluff/kharshaiKharshai: Athena Castile
/obj/item/clothing/under/fluff/xantholneXantholne: Meex Zwichsnicrur
/obj/item/clothing/under/fluff/elishirtFlattestGuitar9: Eli Randolph
/obj/item/clothing/under/fluff/jay_turtleneckJayfeather: Jay Wingler
/obj/item/clothing/under/psysuit/fluff/isaca_sirius_1Xilia: Isaca Sirius
/obj/item/clothing/under/fluff/jane_sidsuitSyndiGirl: Zoey Scyth
/obj/item/clothing/under/fluff/honourableMrBarrelrolll: Maximus Greenwood
/obj/item/clothing/under/fluff/aegisPlagueWalker: A.E.G.I.S.
/obj/item/clothing/under/fluff/elo_turtleneckvforcebomber: E.L.O.
/obj/item/clothing/mask/bandana/fluff/dar///////// Masks //////////// +sasanek12: Dar'Konr
/obj/item/clothing/mask/gas/sechailer/fluff/spartanLP Spartan: Kaskreyarawkta
/obj/item/clothing/suit/storage/foxShoes +Sets
/obj/item/nullrod/fluff/chronxchronx100: Hughe O'Splash
/obj/item/clothing/head/fluff/chronxchronx100: Hughe O'Splash
/obj/item/clothing/suit/chaplain_hoodie/fluff/chronxchronx100: Hughe O'Splash
/obj/item/clothing/shoes/black/fluff/chronxchronx100: Hughe O'Splash
/obj/item/clothing/suit/armor/vest/fluff/tacticalm3hillus: Medusa Schlofield
/obj/item/clothing/suit/jacket/fluff/elliot_windbreakerDaveTheHeadcrab: Elliot Campbell
/obj/item/storage/backpack/fluff/syndiesatchelSkeletalElite: Rawkkihiki
/obj/item/storage/backpack/fluff/krich_backlizardzsi: Krichahka
/obj/item/storage/backpack/fluff/ssscratches_backSsscratches: Lasshy-Bot
/obj/item/storage/backpack/fluff/thebrewGreey: Korala Ice
/obj/item/clothing/head/wizard/fake/fluff/dreamyphantasmicdream : Dreamy Rockwall
/obj/item/fluff/zekemirrorphantasmicdream : Zeke Varloss
/obj/item/clothing/accessory/necklace/locket/fluff/fethasnecklaceFethas: Sefra'neem
/obj/item/bedsheet/fluff/hugosheetHugoLuman: Dan Martinez
/obj/item/clothing/head/fluff/lfbowlerLightfire: Hyperion
/obj/item/clothing/under/fluff/lfvicsuitLightfire: Hyperion
/obj/item/fluff/lighty_plasman_modkitLightFire53: Ikelos
/obj/item/clothing/head/helmet/space/plasmaman/lf53_fluffLightFire53: Ikelos
/obj/item/bikehorn/fluff/pinkbikehornXerdies: Squiddle Toodle
/obj/item/clothing/accessory/medal/fluff/eloV-Force_Bomber: E.L.O.
/obj/item/clothing/suit/fluff/vetcoatFurasian: Fillmoore Grayson
/obj/item/clothing/suit/fluff/vetcoat/redFurasian: Fillmoore Grayson
/obj/item/clothing/suit/fluff/vetcoat/navyFurasian: Fillmoore Grayson
/obj/item/clothing/accessory/medal/fluff/panzermedalPanzerSkull: GRN-DER
/obj/item/clothing/accessory/medal/fluff/XannZxiaxSagrotter: Xann Zxiax
/obj/item/clothing/accessory/rbscarfRb303: Isthel Eisenwald
/obj/item/clothing/head/fluff/pinesalad_hornsPineapple Salad: Dan Jello
/obj/item/storage/backpack/fluff/hikingPineapple Salad: Dan Jello
/obj/item/clothing/under/fluff/kiaoutfitFullOfSkittles: Kiachi
/obj/item/clothing/head/fluff/kiahatFullOfSkittles: Kiachi
/obj/item/clothing/mask/gas/fluff/kiamaskFullOfSkittles: Kiachi
/obj/item/clothing/gloves/ring/fluff/benjaminfalloutBenjaminfallout: Pretzel Brassheart
/obj/item/clothing/under/fluff/kikeridressGangelwaefre: Kikeri
/obj/item/clothing/mask/gas/fluff/kikerimaskGangelwaefre: Kikeri
/obj/item/clothing/mask/gas/fluff/yahiyamaskAsmerath: Yahiya

Define Details

+

USED_MOD_HELM + + +

+

///////////PARADISE STATION CUSTOM ITEMS///////////

+

Usable Items

+ + + diff --git a/code/modules/economy.html b/code/modules/economy.html new file mode 100644 index 0000000000000..547a643040d61 --- /dev/null +++ b/code/modules/economy.html @@ -0,0 +1,126 @@ + + + + + + + code/modules/economy/README.md - Space Station 13 + + +
+ Space 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
  • +
  • ACCOUNT_SECURITY_VENDOR - Account requires forced programmatic access, players in-game cannot access this account
  • +
+

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
+ + + diff --git a/code/modules/economy/economy_helpers.html b/code/modules/economy/economy_helpers.html new file mode 100644 index 0000000000000..e40ea57ba9937 --- /dev/null +++ b/code/modules/economy/economy_helpers.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/economy/economy_helpers.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/economy/economy_helpers.dm + +

+ + + +
/proc/get_departments_from_jobmatches a string job name to their department(s) and returns it as a list
+ + + 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 0000000000000..61f20075f93a9 --- /dev/null +++ b/code/modules/economy/economy_machinery/economy_machinery.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/economy/economy_machinery/economy_machinery.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/economy/economy_machinery/economy_machinery.dm + +

+ + +
/obj/machinery/economyBase 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.
+ + + diff --git a/code/modules/emoji/emoji_parse.html b/code/modules/emoji/emoji_parse.html new file mode 100644 index 0000000000000..8b609337c6717 --- /dev/null +++ b/code/modules/emoji/emoji_parse.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/emoji/emoji_parse.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/emoji/emoji_parse.dm + +

+ + + +
/proc/emoji_parseTurns :ai: into an emoji in text.
+ + + diff --git a/code/modules/events/blob/blob_mobs.html b/code/modules/events/blob/blob_mobs.html new file mode 100644 index 0000000000000..b916780438147 --- /dev/null +++ b/code/modules/events/blob/blob_mobs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/events/blob/blob_mobs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/events/blob/blob_mobs.dm + +

+ + +
/mob/living/simple_animal/hostile/blobYou will appear adjacent to the beacon
+ + + 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 0000000000000..6eee28a6a138e --- /dev/null +++ b/code/modules/events/blob/blob_structures/captured_nuke.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/events/blob/blob_structures/captured_nuke.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/events/blob/blob_structures/captured_nuke.dm + +

+ + +
/obj/structure/blob/captured_nukealternative to blob just straight up destroying nukes
+ + + diff --git a/code/modules/events/event.html b/code/modules/events/event.html new file mode 100644 index 0000000000000..14d870b0207fc --- /dev/null +++ b/code/modules/events/event.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/events/event.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/events/event.dm + +

+ + +
/datum/eventNOTE: Times are measured in master controller ticks!
+ + + diff --git a/code/modules/events/spacevine.html b/code/modules/events/spacevine.html new file mode 100644 index 0000000000000..85ce808c8fb69 --- /dev/null +++ b/code/modules/events/spacevine.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/events/spacevine.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/events/spacevine.dm + +

+ + + +
/datum/spacevine_mutation/explosiveOH SHIT IT CAN CHAINREACT RUN!!!
/datum/spacevine_mutation/aggressive_spreadvery OP, but im out of other ideas currently
+ + + diff --git a/code/modules/events/tear.html b/code/modules/events/tear.html new file mode 100644 index 0000000000000..0eb6b01642933 --- /dev/null +++ b/code/modules/events/tear.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/events/tear.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/events/tear.dm + +

+ + + +
/datum/event/tearDimensional tear event.
/obj/effect/tearThe portal used in the /datum/event/tear midround.
+ + + 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 0000000000000..7bb585361b15e --- /dev/null +++ b/code/modules/events/wizard/ghost_wizard_spells.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/events/wizard/ghost_wizard_spells.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/events/wizard/ghost_wizard_spells.dm + +

+ + + +
/datum/event/wizard/ghostThe spook is real
/datum/event/wizard/ghost_muteThe spook is silent
+ + + 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 0000000000000..dbde911322be4 --- /dev/null +++ b/code/modules/food_and_drinks/drinks/drinks/bottle.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/food_and_drinks/drinks/drinks/bottle.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/food_and_drinks/drinks/drinks/bottle.dm + +

+ + + + +
/obj/item/reagent_containers/drinks/bottleAlchohol bottles! -Agouri
/obj/item/reagent_containers/drinks/bottle/orangejuiceJUICES AND STUFF
/obj/item/reagent_containers/drinks/bottle/molotovMOLOTOV
+ + + 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 0000000000000..7da4a611eb205 --- /dev/null +++ b/code/modules/food_and_drinks/drinks/drinks_base.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/food_and_drinks/drinks/drinks_base.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/food_and_drinks/drinks/drinks_base.dm + +

+ + + + + + +
/obj/item/reagent_containers/drinksDrinks.
/obj/item/reagent_containers/drinks/trophyDrinks. END
/obj/item/reagent_containers/drinks/trophy/bronze_cup/toolbox_win2023 toolbox tournament 3rd place went to paradise station.
/obj/item/reagent_containers/drinks/coffeeDrinks
/obj/item/reagent_containers/drinks/shakerdrinkingglass and shaker
+ + + 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 0000000000000..afbc04f26d520 --- /dev/null +++ b/code/modules/food_and_drinks/food/condiment.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/food_and_drinks/food/condiment.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/food_and_drinks/food/condiment.dm + +

+ + + +
/obj/item/reagent_containers/condimentCondiments
/obj/item/reagent_containers/condiment/saltshakerSeperate from above since it's a small shaker rather then
+ + + 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 0000000000000..9d1bc72a37b60 --- /dev/null +++ b/code/modules/food_and_drinks/food/customizables.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/food_and_drinks/food/customizables.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/food_and_drinks/food/customizables.dm + +

+ + +
/obj/item/food/snacks/customizable/fullycustomIn the event you fuckers find something I forgot to add a customizable food for.
+ + + 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 0000000000000..0d8319b3956b8 --- /dev/null +++ b/code/modules/food_and_drinks/food/foods/ingredients.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/food_and_drinks/food/foods/ingredients.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/food_and_drinks/food/foods/ingredients.dm + +

+ + + +
/obj/item/food/snacks/cookiedoughcookies by Ume
/obj/item/food/snacks/choc_pilefor reagent chocolate being spilled on turfs
+ + + 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 0000000000000..b0feae4438882 --- /dev/null +++ b/code/modules/food_and_drinks/food/foods/side_dishes.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/food_and_drinks/food/foods/side_dishes.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/food_and_drinks/food/foods/side_dishes.dm + +

+ + +
/obj/item/food/snacks/mashed_potatoesmashed taters
+ + + diff --git a/code/modules/food_and_drinks/food/snacks.html b/code/modules/food_and_drinks/food/snacks.html new file mode 100644 index 0000000000000..58b27be9474b2 --- /dev/null +++ b/code/modules/food_and_drinks/food/snacks.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/food_and_drinks/food/snacks.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/food_and_drinks/food/snacks.dm + +

+ + +
/obj/item/food/snacks/badrecipeFOOD END
+ + + 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 0000000000000..d8b600c52d5fe --- /dev/null +++ b/code/modules/food_and_drinks/food_base.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/food_and_drinks/food_base.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/food_and_drinks/food_base.dm + +

+ + +
/obj/item/foodFood.
+ + + 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 0000000000000..277a204e8b5d1 --- /dev/null +++ b/code/modules/food_and_drinks/kitchen_machinery/processor.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/food_and_drinks/kitchen_machinery/processor.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/food_and_drinks/kitchen_machinery/processor.dm + +

+ + + +
/datum/food_processor_process/meatOBJECT RECIPIES
/datum/food_processor_process/mob/slimeMOB RECIPIES
+ + + 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 0000000000000..20015dbd83e1d --- /dev/null +++ b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.html @@ -0,0 +1,46 @@ + + + + + + + code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm + +

+ + + + + + + + + + + + + + + + + + +
/obj/machinery/smartfridgeStores items of a specified type.
/obj/machinery/smartfridge/secureSecure variant of the Smart Fridge. +Can be emagged and EMP'd to short the lock.
/obj/machinery/smartfridge/seedsSeeds variant of the Smart Fridge. +Formerly known as MegaSeed Servitor, but renamed to avoid confusion with the vending machine.
/obj/machinery/smartfridge/foodcartVariant of the Smart Fridge that holds food and drinks in a mobile form
/obj/machinery/smartfridge/secure/circuitsCircuit variant of the Smart Fridge.
/obj/machinery/smartfridge/medbayMedical variant of the Smart Fridge.
/obj/machinery/smartfridge/secure/extractSecure, Xenobiology variant of the Smart Fridge.
/obj/machinery/smartfridge/secure/medbaySecure, Medical variant of the Smart Fridge.
/obj/machinery/smartfridge/secure/chemistrySecure, Chemistry variant of the Smart Fridge.
/obj/machinery/smartfridge/secure/chemistry/preloadedA Smart Chemical Storage but with some items already in.
/obj/machinery/smartfridge/secure/chemistry/preloaded/syndicateA Smart Chemical Storage (Preloaded) but with exclusive access to Syndicate.
/obj/machinery/smartfridge/disksDisk variant of the Smart Fridge.
/obj/machinery/smartfridge/secure/chemistry/virologySecure, Virology variant of the Smart Chemical Storage.
/obj/machinery/smartfridge/secure/chemistry/virology/preloadedA Smart Virus Storage but with some additional items.
/obj/machinery/smartfridge/secure/chemistry/virology/preloaded/syndicateA Smart Virus Storage (Preloaded) but with exclusive access to Syndicate.
/obj/machinery/smartfridge/drinksDrink variant of the Smart Fridge.
/obj/machinery/smartfridge/drying_rackVariant of the Smart Fridge for drying stuff. +Doesn't have components.
+ + + 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 0000000000000..e4409b3460fc6 --- /dev/null +++ b/code/modules/food_and_drinks/recipes/recipes_microwave.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/food_and_drinks/recipes/recipes_microwave.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/food_and_drinks/recipes/recipes_microwave.dm + +

+ + +
/datum/recipe/microwave/wrapFOOD ADDITTIONS
+ + + diff --git a/code/modules/food_and_drinks/recipes/recipes_oven.html b/code/modules/food_and_drinks/recipes/recipes_oven.html new file mode 100644 index 0000000000000..39bd7f9950ec6 --- /dev/null +++ b/code/modules/food_and_drinks/recipes/recipes_oven.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/food_and_drinks/recipes/recipes_oven.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/food_and_drinks/recipes/recipes_oven.dm + +

+ + + +
/datum/recipe/oven/cookiescookies by Ume
/datum/recipe/oven/turkeyMagic
+ + + diff --git a/code/modules/games/unum.html b/code/modules/games/unum.html new file mode 100644 index 0000000000000..e35498d671d55 --- /dev/null +++ b/code/modules/games/unum.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/games/unum.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/games/unum.dm + +

+ + +
/obj/item/deck/unumA deck of unum cards. Classic.
+ + + diff --git a/code/modules/hallucinations/effects/common.html b/code/modules/hallucinations/effects/common.html new file mode 100644 index 0000000000000..063ea79620107 --- /dev/null +++ b/code/modules/hallucinations/effects/common.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/hallucinations/effects/common.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/hallucinations/effects/common.dm + +

+ + + + +
/obj/effect/hallucination/tripperA generic hallucination that causes the target to trip if they cross it.
/obj/effect/hallucination/chaserA generic hallucination that chases the target.
/obj/effect/hallucination/chaser/attackerA generic hallucination based on the Chaser that attacks if close enough.
+ + + diff --git a/code/modules/hallucinations/effects/major.html b/code/modules/hallucinations/effects/major.html new file mode 100644 index 0000000000000..1f128ea3484b1 --- /dev/null +++ b/code/modules/hallucinations/effects/major.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/hallucinations/effects/major.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/hallucinations/effects/major.dm + +

+ + + + + + + +
/obj/effect/hallucination/terror_infestationCreates spider webs and a terror spider near a random vent around the target.
/obj/effect/hallucination/tripper/spider_webA fake spider web that trips the target if crossed.
/obj/effect/hallucination/abductionSends an abductor agent after the target. On knockdown, spawns an abductor scientist next to the target. Nothing else happens.
/obj/effect/hallucination/loose_energy_ballA progressive hallucination that begins with intermittent explosions, before displaying an energy ball that shocks the target.
/obj/effect/hallucination/assaultAn imaginary attacker spawns close to the target and attacks them to stamcrit.
/obj/effect/hallucination/xeno_pounceAn imaginary alien hunter pounces towards the target.
+ + + diff --git a/code/modules/hallucinations/effects/minor.html b/code/modules/hallucinations/effects/minor.html new file mode 100644 index 0000000000000..c35b931e5c5ea --- /dev/null +++ b/code/modules/hallucinations/effects/minor.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/hallucinations/effects/minor.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/hallucinations/effects/minor.dm + +

+ + + + + + + +
/obj/effect/hallucination/audioPlays a random sound.
/obj/effect/hallucination/audio/localizedPlays a random sound at a random location around the target.
/obj/effect/hallucination/boltsVisually bolts a random number of airlocks around the target.
/obj/effect/hallucination/speechCauses the target to hear a fake message from a random mob around them.
/obj/effect/hallucination/fake_dangerSends a random danger message to the target's chat.
/obj/effect/hallucination/fake_healthVisually changes the target's health status to something it shouldn't be.
+ + + diff --git a/code/modules/hallucinations/effects/moderate.html b/code/modules/hallucinations/effects/moderate.html new file mode 100644 index 0000000000000..dd6eab0e2bd2d --- /dev/null +++ b/code/modules/hallucinations/effects/moderate.html @@ -0,0 +1,40 @@ + + + + + + + code/modules/hallucinations/effects/moderate.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/hallucinations/effects/moderate.dm + +

+ + + + + + + + + + + + + + + +
/obj/effect/hallucination/bolts/moderateA variation that affects more airlocks.
/obj/effect/hallucination/fake_alertDisplays a random alert on the target's HUD.
/obj/effect/hallucination/fake_itemDisplays 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.
/obj/effect/hallucination/fake_weaponDisplays a random fake weapon wielded by a human around the target.
/obj/effect/hallucination/chasmsDisplays fake chasms around the target that if crossed, cause them to trip.
/obj/effect/hallucination/tripper/chasmA fake chasm that if crossed by the target, causes them to trip.
/obj/effect/hallucination/delamination_alarmA fake radio message and audio that alerts of an increasing SM unstability.
/obj/effect/hallucination/plasma_floodA fake plasma flood emanating from a nearby vent.
/obj/effect/hallucination/husksA random number of fake husks around the target.
/obj/effect/hallucination/stunproddingA series of localized audio playback simulating a kidnapping with a stunprod.
/obj/effect/hallucination/energy_swordA series of localized audio playback simulating an energy sword murder.
/obj/effect/hallucination/gunfireA series of localized audio playback simulating a gunshot murder.
/obj/effect/hallucination/self_delusionChanges the target's appearance to something else temporarily.
/obj/effect/hallucination/delusionChanges the appearance of all humans around the target.
+ + + diff --git a/code/modules/hallucinations/hallucinations.html b/code/modules/hallucinations/hallucinations.html new file mode 100644 index 0000000000000..d7d18a0390d04 --- /dev/null +++ b/code/modules/hallucinations/hallucinations.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/hallucinations/hallucinations.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/hallucinations/hallucinations.dm + +

+ + +
/obj/effect/hallucinationBase object for hallucinations. Contains basic behaviour to display an icon only to the target.
+ + + diff --git a/code/modules/hydroponics/biogenerator.html b/code/modules/hydroponics/biogenerator.html new file mode 100644 index 0000000000000..8a8c25cb7ae07 --- /dev/null +++ b/code/modules/hydroponics/biogenerator.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/hydroponics/biogenerator.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/hydroponics/biogenerator.dm + +

+ + +
BASE_MAX_STORABLE_PLANTSThe 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.

+ + + diff --git a/code/modules/hydroponics/compost_bin.html b/code/modules/hydroponics/compost_bin.html new file mode 100644 index 0000000000000..463aa68bad7b0 --- /dev/null +++ b/code/modules/hydroponics/compost_bin.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/hydroponics/compost_bin.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/hydroponics/compost_bin.dm + +

+ + +
/obj/machinery/compost_binused to make soil from plants. +Doesn't have components.
+ + + diff --git a/code/modules/hydroponics/grown/banana.html b/code/modules/hydroponics/grown/banana.html new file mode 100644 index 0000000000000..585a88c621123 --- /dev/null +++ b/code/modules/hydroponics/grown/banana.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/hydroponics/grown/banana.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/hydroponics/grown/banana.dm + +

+ + +
/obj/item/grown/bananapeel/specialpeelused by /obj/item/clothing/shoes/clown_shoes/banana_shoes
+ + + diff --git a/code/modules/hydroponics/grown/citrus.html b/code/modules/hydroponics/grown/citrus.html new file mode 100644 index 0000000000000..343ab16705aff --- /dev/null +++ b/code/modules/hydroponics/grown/citrus.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/hydroponics/grown/citrus.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/hydroponics/grown/citrus.dm + +

+ + +
/obj/item/seeds/firelemoncombustible lemon is too long so firelemon
+ + + diff --git a/code/modules/hydroponics/grown/flowers.html b/code/modules/hydroponics/grown/flowers.html new file mode 100644 index 0000000000000..4c59ed374cf61 --- /dev/null +++ b/code/modules/hydroponics/grown/flowers.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/hydroponics/grown/flowers.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/hydroponics/grown/flowers.dm + +

+ + +
/obj/item/grown/sunflowerFLOWER POWER!
+ + + diff --git a/code/modules/hydroponics/grown/nettle.html b/code/modules/hydroponics/grown/nettle.html new file mode 100644 index 0000000000000..249407cd9b692 --- /dev/null +++ b/code/modules/hydroponics/grown/nettle.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/hydroponics/grown/nettle.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/hydroponics/grown/nettle.dm + +

+ + +
/obj/item/grown/nettleabstract type
+ + + diff --git a/code/modules/hydroponics/grown/towercap.html b/code/modules/hydroponics/grown/towercap.html new file mode 100644 index 0000000000000..fd00bb1ab5507 --- /dev/null +++ b/code/modules/hydroponics/grown/towercap.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/hydroponics/grown/towercap.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/hydroponics/grown/towercap.dm + +

+ + + +
/obj/structure/bonfireBONFIRES
/obj/structure/bonfire/lithaha empty define
+ + + diff --git a/code/modules/hydroponics/growninedible.html b/code/modules/hydroponics/growninedible.html new file mode 100644 index 0000000000000..bd860e906a496 --- /dev/null +++ b/code/modules/hydroponics/growninedible.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/hydroponics/growninedible.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/hydroponics/growninedible.dm + +

+ + +
/obj/item/grownGrown weapons
+ + + diff --git a/code/modules/hydroponics/hydroitemdefines.html b/code/modules/hydroponics/hydroitemdefines.html new file mode 100644 index 0000000000000..2b3239ff6e217 --- /dev/null +++ b/code/modules/hydroponics/hydroitemdefines.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/hydroponics/hydroitemdefines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/hydroponics/hydroitemdefines.dm + +

+ + + +
/obj/item/reagent_containers/spray/weedspray-- Skie
/obj/item/reagent_containers/spray/pestspray-- Skie
+ + + diff --git a/code/modules/hydroponics/hydroponics_tray.html b/code/modules/hydroponics/hydroponics_tray.html new file mode 100644 index 0000000000000..381c4f147cb40 --- /dev/null +++ b/code/modules/hydroponics/hydroponics_tray.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/hydroponics/hydroponics_tray.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/hydroponics/hydroponics_tray.dm + +

+ + +
/obj/machinery/hydroponics/soilNot actually hydroponics at all! Honk!
+ + + diff --git a/code/modules/hydroponics/plant_genes.html b/code/modules/hydroponics/plant_genes.html new file mode 100644 index 0000000000000..45d4d5389ca32 --- /dev/null +++ b/code/modules/hydroponics/plant_genes.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/hydroponics/plant_genes.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/hydroponics/plant_genes.dm + +

+ + + +
/datum/plant_gene/trait/fire_resistanceLavaland
/datum/plant_gene/trait/plant_typeParent type
+ + + diff --git a/code/modules/hydroponics/seed_extractor.html b/code/modules/hydroponics/seed_extractor.html new file mode 100644 index 0000000000000..f2c339d5e06a2 --- /dev/null +++ b/code/modules/hydroponics/seed_extractor.html @@ -0,0 +1,39 @@ + + + + + + + code/modules/hydroponics/seed_extractor.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/hydroponics/seed_extractor.dm + +

+ + + + + +
BASE_MAX_SEEDSBase Cap of the max amount of seeds you can store in a seed extractor
MAX_DISPENSE_SEEDSMax Cap of the amount of seed we let players dispense at once
/proc/seedifyConvert a grown object into seeds.

Define Details

+

BASE_MAX_SEEDS + + +

+

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

+ + + diff --git a/code/modules/instruments/_instrument_data.html b/code/modules/instruments/_instrument_data.html new file mode 100644 index 0000000000000..2a3657468a0d1 --- /dev/null +++ b/code/modules/instruments/_instrument_data.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/instruments/_instrument_data.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/instruments/_instrument_data.dm + +

+ + + + +
/proc/get_allowed_instrument_idsGet all non admin_only instruments as a list of text ids.
/datum/instrumentInstrument 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.
+ + + diff --git a/code/modules/instruments/_instrument_key.html b/code/modules/instruments/_instrument_key.html new file mode 100644 index 0000000000000..71d7fef7c3594 --- /dev/null +++ b/code/modules/instruments/_instrument_key.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/instruments/_instrument_key.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/instruments/_instrument_key.dm + +

+ + +
/datum/instrument_keyInstrument key datums contain everything needed to know how to play a specific +note of an instrument.*
+ + + 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 0000000000000..3f2c247d10885 --- /dev/null +++ b/code/modules/instruments/objs/items/instrument_items.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/instruments/objs/items/instrument_items.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/instruments/objs/items/instrument_items.dm + +

+ + +
/obj/item/instrument/guitar/cyborgThis is a special guitar for the emagged service borg that hits pretty hard and can still play music. Clonk.
+ + + diff --git a/code/modules/instruments/songs/_song.html b/code/modules/instruments/songs/_song.html new file mode 100644 index 0000000000000..455dcbc82d50e --- /dev/null +++ b/code/modules/instruments/songs/_song.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/instruments/songs/_song.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/instruments/songs/_song.dm + +

+ + +
/datum/songThese are the actual backend behind instruments. +They attach to an atom and provide the editor + playback functionality.
+ + + diff --git a/code/modules/lavaland/lavaland_theme.html b/code/modules/lavaland/lavaland_theme.html new file mode 100644 index 0000000000000..17bb697e02073 --- /dev/null +++ b/code/modules/lavaland/lavaland_theme.html @@ -0,0 +1,37 @@ + + + + + + + code/modules/lavaland/lavaland_theme.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/lavaland/lavaland_theme.dm + +

+ + + +
LAVALAND_MIN_CAVE_YApproximate lower bound of the walkable land area on Lavaland, north of the southern lava border.
LAVALAND_MAX_CAVE_YApproximate upper bound of the walkable land area on Lavaland, south of the Legion entrance.

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.

+ + + diff --git a/code/modules/library/book.html b/code/modules/library/book.html new file mode 100644 index 0000000000000..51559499949f6 --- /dev/null +++ b/code/modules/library/book.html @@ -0,0 +1,35 @@ + + + + + + + code/modules/library/book.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/library/book.dm + +

+ + + +
MAX_PAGESMax Writeable Content Pages per book, players really don't need more than this
/obj/item/bookGame 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

+ + + diff --git a/code/modules/library/library_catalog.html b/code/modules/library/library_catalog.html new file mode 100644 index 0000000000000..2f32a755d5e3f --- /dev/null +++ b/code/modules/library/library_catalog.html @@ -0,0 +1,38 @@ + + + + + + + code/modules/library/library_catalog.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/library/library_catalog.dm + +

+ + + +
DEFINE_CATEGORYlibrary category datum constructor helper, used to make easier the process of defining new report/book categories
MAX_PLAYER_UPLOADSMaximum 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

+ + + diff --git a/code/modules/library/library_computer.html b/code/modules/library/library_computer.html new file mode 100644 index 0000000000000..065e21f5fcd6a --- /dev/null +++ b/code/modules/library/library_computer.html @@ -0,0 +1,48 @@ + + + + + + + code/modules/library/library_computer.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/library/library_computer.dm + +

+ + + + + + +
LIBRARY_BOOKS_PER_PAGEDefines how many player books appear on the player book archive TGUI tab
LOGIN_FULLLogin state for our computer, this state grants full access to functions
LOGIN_PUBLICLogin state for our computer, this state grants basic access to functions
PRINTING_COOLDOWNWait time before printing another book, used to prevent spam
/obj/machinery/computer/libraryThis 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

+ + + diff --git a/code/modules/library/library_datums.html b/code/modules/library/library_datums.html new file mode 100644 index 0000000000000..3960a4fbeba63 --- /dev/null +++ b/code/modules/library/library_datums.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/library/library_datums.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/library/library_datums.dm + +

+ + + +
/datum/borrowbookDatum used to keep track of who has borrowed what when and for how long.
/datum/cachedbookDatum used to cache the SQL DB books locally in order to achieve a performance gain.
+ + + diff --git a/code/modules/lighting/lighting_emissive_blocker.html b/code/modules/lighting/lighting_emissive_blocker.html new file mode 100644 index 0000000000000..584d897f0ff93 --- /dev/null +++ b/code/modules/lighting/lighting_emissive_blocker.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/lighting/lighting_emissive_blocker.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/lighting/lighting_emissive_blocker.dm + +

+ + +
/atom/movable/emissive_blockerInternal atom that copies an appearance on to the blocker plane
+ + + diff --git a/code/modules/mapping/base_map_datum.html b/code/modules/mapping/base_map_datum.html new file mode 100644 index 0000000000000..7f838de4cf8f3 --- /dev/null +++ b/code/modules/mapping/base_map_datum.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mapping/base_map_datum.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mapping/base_map_datum.dm + +

+ + +
/datum/mapMap Datum
+ + + diff --git a/code/modules/mapping/mapping_helpers.html b/code/modules/mapping/mapping_helpers.html new file mode 100644 index 0000000000000..6af14ec24d065 --- /dev/null +++ b/code/modules/mapping/mapping_helpers.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mapping/mapping_helpers.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mapping/mapping_helpers.dm + +

+ + + +
/obj/effect/baseturf_helperSet the baseturfs of every turf in the /area/ it is placed.
/obj/effect/mapping_helpers/bombable_wallApply to a wall (or floor, technically) to ensure it is instantly destroyed by any explosion, even if usually invulnerable
+ + + diff --git a/code/modules/mapping/merge_conflicts.html b/code/modules/mapping/merge_conflicts.html new file mode 100644 index 0000000000000..acef153e21dd6 --- /dev/null +++ b/code/modules/mapping/merge_conflicts.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/mapping/merge_conflicts.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mapping/merge_conflicts.dm + +

+ + + +
/proc/announce_merge_conflict_markerWe REALLY do not want un-addressed merge conflicts in maps for an +inexhaustible list of reasons. This should help ensure that this will not be +missed in case linters fail to catch it for any reason what-so-ever.
+ + + diff --git a/code/modules/maptext_alerts/text_blurbs.html b/code/modules/maptext_alerts/text_blurbs.html new file mode 100644 index 0000000000000..2738afe375ae7 --- /dev/null +++ b/code/modules/maptext_alerts/text_blurbs.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/maptext_alerts/text_blurbs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/maptext_alerts/text_blurbs.dm + +

+ + + +
/proc/show_blurbShows a ticker reading out the given text on a client's screen.
+ + + diff --git a/code/modules/martial_arts/krav_maga.html b/code/modules/martial_arts/krav_maga.html new file mode 100644 index 0000000000000..b6146df1e1f67 --- /dev/null +++ b/code/modules/martial_arts/krav_maga.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/martial_arts/krav_maga.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/martial_arts/krav_maga.dm + +

+ + +
/obj/item/clothing/gloves/color/black/krav_maga/combatfor nukies
+ + + diff --git a/code/modules/mining/equipment/explorer_gear.html b/code/modules/mining/equipment/explorer_gear.html new file mode 100644 index 0000000000000..09f17648b3a1d --- /dev/null +++ b/code/modules/mining/equipment/explorer_gear.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mining/equipment/explorer_gear.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/equipment/explorer_gear.dm + +

+ + +
/obj/item/clothing/suit/hooded/explorerExplorer's Suit and Mask
+ + + diff --git a/code/modules/mining/equipment/kinetic_crusher.html b/code/modules/mining/equipment/kinetic_crusher.html new file mode 100644 index 0000000000000..f34e339b91195 --- /dev/null +++ b/code/modules/mining/equipment/kinetic_crusher.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mining/equipment/kinetic_crusher.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/equipment/kinetic_crusher.dm + +

+ + +
/obj/item/kinetic_crusherMining Hammer
+ + + diff --git a/code/modules/mining/equipment/lazarus_injector.html b/code/modules/mining/equipment/lazarus_injector.html new file mode 100644 index 0000000000000..c30fd1d91ba8c --- /dev/null +++ b/code/modules/mining/equipment/lazarus_injector.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mining/equipment/lazarus_injector.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/equipment/lazarus_injector.dm + +

+ + + +
/obj/item/lazarus_injectorLazarus Injector
/obj/item/mobcapsuleMob Capsule
+ + + diff --git a/code/modules/mining/equipment/marker_beacons.html b/code/modules/mining/equipment/marker_beacons.html new file mode 100644 index 0000000000000..ecfa51c0ba2a9 --- /dev/null +++ b/code/modules/mining/equipment/marker_beacons.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mining/equipment/marker_beacons.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/equipment/marker_beacons.dm + +

+ + + +
/obj/item/stack/marker_beacon/tenminers start with 10 of these
/obj/item/stack/marker_beacon/thirtyand they're bought in stacks of 1, 10, or 30
+ + + diff --git a/code/modules/mining/equipment/mineral_scanner.html b/code/modules/mining/equipment/mineral_scanner.html new file mode 100644 index 0000000000000..c952b71cac3ba --- /dev/null +++ b/code/modules/mining/equipment/mineral_scanner.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mining/equipment/mineral_scanner.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/equipment/mineral_scanner.dm + +

+ + +
/obj/item/mining_scannerMining Scanner
+ + + diff --git a/code/modules/mining/equipment/mining_tools.html b/code/modules/mining/equipment/mining_tools.html new file mode 100644 index 0000000000000..7146709089014 --- /dev/null +++ b/code/modules/mining/equipment/mining_tools.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mining/equipment/mining_tools.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/equipment/mining_tools.dm + +

+ + + +
/obj/item/pickaxePickaxes & Drills & Shovels
/obj/item/pickaxe/drill/cyborg/diamondThis is the BORG version!
+ + + diff --git a/code/modules/mining/equipment/regenerative_core.html b/code/modules/mining/equipment/regenerative_core.html new file mode 100644 index 0000000000000..8563746a9d5d4 --- /dev/null +++ b/code/modules/mining/equipment/regenerative_core.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/mining/equipment/regenerative_core.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/equipment/regenerative_core.dm + +

+ + + + +
/obj/item/hivelordstabilizerHivelord stabilizer
/obj/item/organ/internal/regenerative_coreHivelord core
/obj/item/organ/internal/regenerative_core/legionLegion core
+ + + diff --git a/code/modules/mining/equipment/resonator.html b/code/modules/mining/equipment/resonator.html new file mode 100644 index 0000000000000..e5adcffb82cdc --- /dev/null +++ b/code/modules/mining/equipment/resonator.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mining/equipment/resonator.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/equipment/resonator.dm + +

+ + +
/obj/item/resonatorResonator
+ + + diff --git a/code/modules/mining/equipment/vendor_items.html b/code/modules/mining/equipment/vendor_items.html new file mode 100644 index 0000000000000..543e1801c9483 --- /dev/null +++ b/code/modules/mining/equipment/vendor_items.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mining/equipment/vendor_items.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/equipment/vendor_items.dm + +

+ + +
/obj/item/clothing/mask/facehugger/toyMining Equipment Vendor Items
+ + + diff --git a/code/modules/mining/equipment/wormhole_jaunter.html b/code/modules/mining/equipment/wormhole_jaunter.html new file mode 100644 index 0000000000000..b2b74a3bbf173 --- /dev/null +++ b/code/modules/mining/equipment/wormhole_jaunter.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mining/equipment/wormhole_jaunter.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/equipment/wormhole_jaunter.dm + +

+ + + +
/obj/item/wormhole_jaunterJaunter
/obj/effect/temp_visual/getaway_flareBecause the original contractor flare is not a temp visual, for some reason.
+ + + diff --git a/code/modules/mining/laborcamp/laborshuttle.html b/code/modules/mining/laborcamp/laborshuttle.html new file mode 100644 index 0000000000000..1008515d0359a --- /dev/null +++ b/code/modules/mining/laborcamp/laborshuttle.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mining/laborcamp/laborshuttle.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/laborcamp/laborshuttle.dm + +

+ + + +
/obj/machinery/mineral/labor_prisoner_shuttle_consolePrisoners' Console
/obj/machinery/mineral/labor_points_checkerPoint Lookup Console
+ + + diff --git a/code/modules/mining/lavaland/ash_flora.html b/code/modules/mining/lavaland/ash_flora.html new file mode 100644 index 0000000000000..7b1c71d19d71c --- /dev/null +++ b/code/modules/mining/lavaland/ash_flora.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/mining/lavaland/ash_flora.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/lavaland/ash_flora.dm + +

+ + + + +
/obj/structure/flora/ash/tall_shroomexists only so that the spawning check doesn't allow these spawning near other things
/obj/structure/flora/ash/rockRocks
/obj/item/food/snacks/grown/ash_flora/shavingsfor actual crafting
+ + + 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 0000000000000..a6a6f4ad0c923 --- /dev/null +++ b/code/modules/mining/lavaland/loot/colossus_loot.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/mining/lavaland/loot/colossus_loot.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/lavaland/loot/colossus_loot.dm + +

+ + + + + + + +
/obj/machinery/anomalous_crystalAnomolous Crystal
/obj/machinery/anomalous_crystal/theme_warpWarps the area you're in to look like a new one
/obj/machinery/anomalous_crystal/emitterGenerates a projectile when interacted with
/obj/machinery/anomalous_crystal/dark_repriseRevives 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.
/obj/machinery/anomalous_crystal/helpersLets ghost spawn as helpful creatures that can only heal people slightly. Incredibly fragile and they can't converse with humans
/obj/machinery/anomalous_crystal/possessorAllows 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.
+ + + diff --git a/code/modules/mining/machine_processing.html b/code/modules/mining/machine_processing.html new file mode 100644 index 0000000000000..bacbafde8dfc0 --- /dev/null +++ b/code/modules/mining/machine_processing.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mining/machine_processing.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/machine_processing.dm + +

+ + + +
/obj/machinery/mineralMineral processing unit console
/obj/machinery/mineral/processing_unitMineral processing unit
+ + + diff --git a/code/modules/mining/machine_redemption.html b/code/modules/mining/machine_redemption.html new file mode 100644 index 0000000000000..67209ff42581f --- /dev/null +++ b/code/modules/mining/machine_redemption.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/mining/machine_redemption.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/machine_redemption.dm + +

+ + + + +
/obj/machinery/mineral/ore_redemptionTurns all the various mining machines into a single unit to speed up tmining and establish a point system.
/obj/machinery/mineral/ore_redemption/golemGolem variant of the ORM.
/obj/machinery/mineral/ore_redemption/laborLabor camp variant of the ORM. Points can be claimed by anyone.
+ + + diff --git a/code/modules/mining/machine_stacking.html b/code/modules/mining/machine_stacking.html new file mode 100644 index 0000000000000..86fb8d223d6d2 --- /dev/null +++ b/code/modules/mining/machine_stacking.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mining/machine_stacking.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/machine_stacking.dm + +

+ + + +
/obj/machinery/mineral/stacking_unit_consoleMineral stacking unit console
/obj/machinery/mineral/stacking_machineMineral stacking unit
+ + + diff --git a/code/modules/mining/machine_unloading.html b/code/modules/mining/machine_unloading.html new file mode 100644 index 0000000000000..3e348ed2da2cb --- /dev/null +++ b/code/modules/mining/machine_unloading.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mining/machine_unloading.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/machine_unloading.dm + +

+ + +
/obj/machinery/mineral/unloading_machineUnloading unit
+ + + diff --git a/code/modules/mining/machine_vending.html b/code/modules/mining/machine_vending.html new file mode 100644 index 0000000000000..4542d4f83384e --- /dev/null +++ b/code/modules/mining/machine_vending.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/mining/machine_vending.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/machine_vending.dm + +

+ + + + + + + + +
/obj/machinery/mineral/equipment_vendorMining Equipment Vendor
/obj/machinery/mineral/equipment_vendor/golemMining Equiment Vendor (Golem)
/obj/machinery/mineral/equipment_vendor/laborMining Equiment Vendor (Gulag)
/obj/machinery/mineral/equipment_vendor/explorerMining Equipment Vendor (Explorer)
/datum/data/mining_equipmentMining Equipment Datum
/obj/item/mining_voucherMining Equipment Voucher
/obj/item/card/mining_point_cardMining Point Card
+ + + diff --git a/code/modules/mining/mine_items.html b/code/modules/mining/mine_items.html new file mode 100644 index 0000000000000..292e531b8b7d6 --- /dev/null +++ b/code/modules/mining/mine_items.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/mining/mine_items.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/mine_items.dm + +

+ + + + + + +
/obj/effect/light_emitterLight
/obj/structure/closet/wardrobe/minerMiner Lockers
/obj/machinery/computer/shuttle/miningShuttle Computer
/obj/item/flashlight/lanternLantern
/obj/structure/closet/crate/miningcarMining car (Crate like thing, not the rail car)
+ + + diff --git a/code/modules/mining/minebot.html b/code/modules/mining/minebot.html new file mode 100644 index 0000000000000..33df9462bf367 --- /dev/null +++ b/code/modules/mining/minebot.html @@ -0,0 +1,34 @@ + + + + + + + code/modules/mining/minebot.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/mining/minebot.dm + +

+ + + + +
MINEDRONE_COLLECTMining drone
/obj/item/mine_bot_upgradeMinebot Upgrades
/obj/item/mining_drone_cubeMining drone cube

Define Details

+

MINEDRONE_COLLECT + + +

+

Mining drone

+ + + diff --git a/code/modules/mining/satchel_ore_boxdm.html b/code/modules/mining/satchel_ore_boxdm.html new file mode 100644 index 0000000000000..d33fa4b9cabf0 --- /dev/null +++ b/code/modules/mining/satchel_ore_boxdm.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mining/satchel_ore_boxdm.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mining/satchel_ore_boxdm.dm + +

+ + +
/obj/structure/ore_boxOre box
+ + + 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 0000000000000..54c4060e24559 --- /dev/null +++ b/code/modules/mob/living/brain/brain_emote.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/brain/brain_emote.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/brain/brain_emote.dm + +

+ + +
/datum/emote/living/brainEmotes usable by brains, but only while they're in MMIs.
+ + + 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 0000000000000..6b63235eb045f --- /dev/null +++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid_emote.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/carbon/alien/humanoid/humanoid_emote.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/carbon/alien/humanoid/humanoid_emote.dm + +

+ + +
/datum/emote/living/carbon/alien/humanoidEmotes usable by humanoid xenomorphs.
+ + + 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 0000000000000..296479704f73f --- /dev/null +++ b/code/modules/mob/living/carbon/carbon_stripping.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/carbon/carbon_stripping.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/carbon/carbon_stripping.dm + +

+ + +
/datum/strippable_item/handA strippable item for a hand
+ + + diff --git a/code/modules/mob/living/carbon/give.html b/code/modules/mob/living/carbon/give.html new file mode 100644 index 0000000000000..aa33d2bedf403 --- /dev/null +++ b/code/modules/mob/living/carbon/give.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/mob/living/carbon/give.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/carbon/give.dm + +

+ + + + +
/datum/status_effect/offering_itemStatus effect given to mobs after they've offered an item to another player using the Give Item action (/datum/click_intercept/give).
/datum/click_intercept/giveWhile a mob has this intercept, left clicking on a carbon mob will attempt to offer their currently held item to that mob.
/atom/movable/screen/alert/take_itemAlert 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.
+ + + 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 0000000000000..8de18fa99a5e7 --- /dev/null +++ b/code/modules/mob/living/carbon/human/body_accessories.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/mob/living/carbon/human/body_accessories.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/carbon/human/body_accessories.dm + +

+ + + + +
/datum/body_accessory/tail/wingler_tailJay wingler fluff tail
/datum/body_accessory/tail/tinyPretty ambiguous as to what species it belongs to, tail could've been injured or docked.
/datum/body_accessory/tail/shortSame as above.
+ + + 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 0000000000000..c13908667acf2 --- /dev/null +++ b/code/modules/mob/living/carbon/human/human_emote.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/carbon/human/human_emote.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/carbon/human/human_emote.dm + +

+ + +
/datum/emote/living/carbon/human/monkeySnowflake emotes only for le epic chimp
+ + + 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 0000000000000..a01879b4f8b1d --- /dev/null +++ b/code/modules/mob/living/carbon/human/physiology.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/carbon/human/physiology.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/carbon/human/physiology.dm + +

+ + +
/datum/physiologyDatum that stores several modifiers in a way that isn't cleared by changing species
+ + + 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 0000000000000..d9beca9de26e7 --- /dev/null +++ b/code/modules/mob/living/carbon/human/species/_species.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mob/living/carbon/human/species/_species.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/carbon/human/species/_species.dm + +

+ + + +
/proc/get_safe_speciesReturns a list of names of non-blacklisted or hazardous species.
+ + + 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 0000000000000..93fae7e5884c2 --- /dev/null +++ b/code/modules/mob/living/carbon/human/species/diona_species.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/carbon/human/species/diona_species.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/carbon/human/species/diona_species.dm + +

+ + +
/datum/species/diona/podSame 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
+ + + 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 0000000000000..45b0b2b59c259 --- /dev/null +++ b/code/modules/mob/living/carbon/human/species/skeleton_species.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/mob/living/carbon/human/species/skeleton_species.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/carbon/human/species/skeleton_species.dm + +

+ + + + +
/datum/species/skeletonThe OG skellybones, quite OP. As of this comment, only available through ash-drake loot (2023-03-07)
/datum/species/skeleton/lichWizard subtype, subtype to allow balancing separately from other skellies
/datum/species/skeleton/brittleThe most common (and weakest) type, legion corpses and skeleton map spawners are these
+ + + diff --git a/code/modules/mob/living/carbon/superheroes.html b/code/modules/mob/living/carbon/superheroes.html new file mode 100644 index 0000000000000..64a6fe0262e4b --- /dev/null +++ b/code/modules/mob/living/carbon/superheroes.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/carbon/superheroes.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/carbon/superheroes.dm + +

+ + +
/datum/spell/recruitPOWERS/ABILITIES CODE
+ + + diff --git a/code/modules/mob/living/silicon/ai/freelook.html b/code/modules/mob/living/silicon/ai/freelook.html new file mode 100644 index 0000000000000..3bcb7bff30635 --- /dev/null +++ b/code/modules/mob/living/silicon/ai/freelook.html @@ -0,0 +1,75 @@ + + + + + + + code/modules/mob/living/silicon/ai/freelook/README.md - Space Station 13 + + +
+ Space 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.
  • +
+ + + 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 0000000000000..f877c7dcba8cf --- /dev/null +++ b/code/modules/mob/living/silicon/pai/software/pai_software_base.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/silicon/pai/software/pai_software_base.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/silicon/pai/software/pai_software_base.dm + +

+ + +
/datum/pai_softwareDatum module for pAI software
+ + + 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 0000000000000..7a3d13fc8ba63 --- /dev/null +++ b/code/modules/mob/living/silicon/robot/robot_modules.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/mob/living/silicon/robot/robot_modules.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/silicon/robot/robot_modules.dm + +

+ + + + +
/obj/item/gun/syringemalfMalf Syringe Gun
/datum/robot_storage
/datum/robot_storage/materialThis datum is an alternative to the energy storages, instead being recharged in different ways
+ + + 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 0000000000000..eb10129d9e8f4 --- /dev/null +++ b/code/modules/mob/living/silicon/silicon_laws.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mob/living/silicon/silicon_laws.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/silicon/silicon_laws.dm + +

+ + + +
/proc/pick_unique_lawsetreturns a random non starting / kill crew lawset if the station has a unique ai lawset
+ + + 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 0000000000000..b6175b8b0d18f --- /dev/null +++ b/code/modules/mob/living/simple_animal/bot/griefsky.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mob/living/simple_animal/bot/griefsky.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/simple_animal/bot/griefsky.dm + +

+ + + +
/mob/living/simple_animal/bot/secbot/griefskyThis bot is powerful. If you managed to get 4 eswords somehow, you deserve this horror. Emag him for best results.
/mob/living/simple_animal/bot/secbot/griefsky/toyA toy version of general griefsky!
+ + + 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 0000000000000..864583b3da3d1 --- /dev/null +++ b/code/modules/mob/living/simple_animal/constructs.html @@ -0,0 +1,37 @@ + + + + + + + code/modules/mob/living/simple_animal/constructs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/simple_animal/constructs.dm + +

+ + + + + + + + + + + + +
/mob/living/simple_animal/hostile/construct/armouredJuggernaut
/mob/living/simple_animal/hostile/construct/armoured/hostileactually hostile, will move around, hit things
/mob/living/simple_animal/hostile/construct/wraithWraith
/mob/living/simple_animal/hostile/construct/wraith/hostileactually hostile, will move around, hit things
/mob/living/simple_animal/hostile/construct/wraith/hostile/bubblegumUsed in bubblegum summoning. Needs MOB_SIZE_LARGE so crushers don't suffer
/mob/living/simple_animal/hostile/construct/builderArtificer
/mob/living/simple_animal/hostile/construct/builder/hostileactually hostile, will move around, hit things, heal other constructs
/mob/living/simple_animal/hostile/construct/behemothBehemoth
/mob/living/simple_animal/hostile/construct/behemoth/hostileactually hostile, will move around, hit things
/mob/living/simple_animal/hostile/construct/harvesterHarvester
/mob/living/simple_animal/hostile/construct/harvester/hostileactually hostile, will move around, hit things
+ + + 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 0000000000000..c422d446f9179 --- /dev/null +++ b/code/modules/mob/living/simple_animal/friendly/dog.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mob/living/simple_animal/friendly/dog.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/simple_animal/friendly/dog.dm + +

+ + + +
/mob/living/simple_animal/pet/dog/corgi/puppy/voidTribute to the corgis born in nullspace
/mob/living/simple_animal/pet/dog/pugPugs
+ + + 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 0000000000000..c0ed71e548de6 --- /dev/null +++ b/code/modules/mob/living/simple_animal/hostile/illusion.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mob/living/simple_animal/hostile/illusion.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/simple_animal/hostile/illusion.dm + +

+ + + +
/mob/living/simple_animal/hostile/illusion/escapeActual Types
/mob/living/simple_animal/hostile/illusion/cultCult Illusions
+ + + 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 0000000000000..428723388f0f7 --- /dev/null +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/ancient_robot.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mob/living/simple_animal/hostile/megafauna/ancient_robot.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/simple_animal/hostile/megafauna/ancient_robot.dm + +

+ + + +
/obj/item/projectile/energy/tesla_boltLeaving here for adminbus / so vetus still uses it.
/obj/effect/temp_visual/dragon_swoop/bubblegum/ancient_robotthis is the worst path I have ever made
+ + + 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 0000000000000..d2a4ecaa01204 --- /dev/null +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm + +

+ + +
/obj/item/melee/energy/cleaving_saw/minernerfed saw because it is very murdery
+ + + 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 0000000000000..e0d66952efc0c --- /dev/null +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm + +

+ + + +
/obj/effect/temp_visual/hierophant/wallsmoothing and pooling were not friends, but pooling is dead.
/obj/effect/temp_visual/hierophant/chasera hierophant's chaser. follows target around, moving and producing a blast every speed deciseconds.
+ + + 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 0000000000000..8692fae06b298 --- /dev/null +++ b/code/modules/mob/living/simple_animal/hostile/mining/elites/goliath_broodmother.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/mob/living/simple_animal/hostile/mining/elites/goliath_broodmother.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/simple_animal/hostile/mining/elites/goliath_broodmother.dm + +

+ + +
/mob/living/simple_animal/hostile/asteroid/elite/broodmotherA 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:
+ + + 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 0000000000000..88935be56f253 --- /dev/null +++ b/code/modules/mob/living/simple_animal/hostile/mining/elites/herald.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/mob/living/simple_animal/hostile/mining/elites/herald.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/simple_animal/hostile/mining/elites/herald.dm + +

+ + +
/mob/living/simple_animal/hostile/asteroid/elite/heraldA 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:
+ + + 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 0000000000000..c678f91b6cf6a --- /dev/null +++ b/code/modules/mob/living/simple_animal/hostile/mining/elites/legionnaire.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/mob/living/simple_animal/hostile/mining/elites/legionnaire.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/simple_animal/hostile/mining/elites/legionnaire.dm + +

+ + +
/mob/living/simple_animal/hostile/asteroid/elite/legionnaireA towering skeleton, embodying the power of Legion. +As it's health gets lower, the head does more damage. +It's attacks are as follows:
+ + + 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 0000000000000..5f0be07894236 --- /dev/null +++ b/code/modules/mob/living/simple_animal/hostile/mining/elites/pandora.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/mob/living/simple_animal/hostile/mining/elites/pandora.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/simple_animal/hostile/mining/elites/pandora.dm + +

+ + +
/mob/living/simple_animal/hostile/asteroid/elite/pandoraA 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:
+ + + diff --git a/code/modules/mob/living/simple_animal/hostile/syndicate_mobs.html b/code/modules/mob/living/simple_animal/hostile/syndicate_mobs.html new file mode 100644 index 0000000000000..26a7e6cb752ce --- /dev/null +++ b/code/modules/mob/living/simple_animal/hostile/syndicate_mobs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/simple_animal/hostile/syndicate_mobs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/simple_animal/hostile/syndicate_mobs.dm + +

+ + +
/mob/living/simple_animal/hostile/syndicate/meleeSword and shield
+ + + 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 0000000000000..beabe6ee0ab22 --- /dev/null +++ b/code/modules/mob/living/simple_animal/hostile/venus_human_trap.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/simple_animal/hostile/venus_human_trap.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/simple_animal/hostile/venus_human_trap.dm + +

+ + +
/obj/structure/alien/resin/flower_bud_enemyinheriting basic attack/damage stuff from alien structures
+ + + 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 0000000000000..03c7a9f17027a --- /dev/null +++ b/code/modules/mob/living/simple_animal/hostile/winter_mobs.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/mob/living/simple_animal/hostile/winter_mobs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/living/simple_animal/hostile/winter_mobs.dm + +

+ + + + + +
/mob/living/simple_animal/hostile/winter/santa/stage_1stage 1: slow melee
/mob/living/simple_animal/hostile/winter/santa/stage_2stage 2: slow ranged
/mob/living/simple_animal/hostile/winter/santa/stage_3stage 3: fast rapidfire ranged
/mob/living/simple_animal/hostile/winter/santa/stage_4stage 4: fast spinebreaker
+ + + 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 0000000000000..b8207d5d35b7b --- /dev/null +++ b/code/modules/mob/living/simple_animal/slime/slime_emote.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/mob/living/simple_animal/slime/slime_emote.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/mob/living/simple_animal/slime/slime_emote.dm + +

+ + +
MOOD_RESETSentinel value; passing this as mood sets mood to null.

Define Details

+

MOOD_RESET + + +

+

Sentinel value; passing this as mood sets mood to null.

+ + + diff --git a/code/modules/mob/mob_misc_procs.html b/code/modules/mob/mob_misc_procs.html new file mode 100644 index 0000000000000..46a8b4131a889 --- /dev/null +++ b/code/modules/mob/mob_misc_procs.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mob/mob_misc_procs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/mob_misc_procs.dm + +

+ + + +
/proc/shake_cameraShake the camera of the person viewing the mob SO REAL!
+ + + 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 0000000000000..e2176a2932309 --- /dev/null +++ b/code/modules/mob/new_player/sprite_accessories/human/human_body_markings.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mob/new_player/sprite_accessories/human/human_body_markings.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/new_player/sprite_accessories/human/human_body_markings.dm + +

+ + + +
/datum/sprite_accessory/body_markings/tattooTattoos applied post-round startup with tattoo guns in item_defines.dm
/datum/sprite_accessory/body_markings/tattoo/tiger_bodyYep, this is repeated. To be fixed later
+ + + 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 0000000000000..b50792368b83d --- /dev/null +++ b/code/modules/mob/new_player/sprite_accessories/human/human_facial_hair.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/new_player/sprite_accessories/human/human_facial_hair.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/new_player/sprite_accessories/human/human_facial_hair.dm + +

+ + +
/datum/sprite_accessory/facial_hair/britstacheSTART VG HAIRSTYLES
+ + + 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 0000000000000..f710e780810a8 --- /dev/null +++ b/code/modules/mob/new_player/sprite_accessories/human/human_hair.html @@ -0,0 +1,34 @@ + + + + + + + code/modules/mob/new_player/sprite_accessories/human/human_hair.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/new_player/sprite_accessories/human/human_hair.dm + +

+ + + + + + + +
/datum/sprite_accessory/hair/shortEND VG HAIRSTYLES
/datum/sprite_accessory/hair/birdnestSTART VG HAIRSTYLES
/datum/sprite_accessory/hair/daveEND VG HAIRSTYLES//
/datum/sprite_accessory/hair/bun4Due to a vulp hairstyle called bun
/datum/sprite_accessory/hair/eighties_ponytail//END POLARIS HAIRSTYLES///
/datum/sprite_accessory/hair/fluff/pinapple_fluff_hairUme hairs end here/// +Fluff HairStyles// +Pineapple Salad hair fluff its for a slime..has to go under human
+ + + 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 0000000000000..30e22d2a38cd8 --- /dev/null +++ b/code/modules/mob/new_player/sprite_accessories/shared/shared_tail_markings.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/new_player/sprite_accessories/shared/shared_tail_markings.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/new_player/sprite_accessories/shared/shared_tail_markings.dm + +

+ + +
/datum/sprite_accessory/body_markings/tail/shared/short_tipSpecies-ambiguous, generic short tail.
+ + + 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 0000000000000..779a97deec32b --- /dev/null +++ b/code/modules/mob/new_player/sprite_accessories/skrell/skrell_face.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/new_player/sprite_accessories/skrell/skrell_face.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/new_player/sprite_accessories/skrell/skrell_face.dm + +

+ + +
/datum/sprite_accessory/hair/fluff/zeke_fluff_tentacleZeke Fluff hair
+ + + 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 0000000000000..2ef2f9211c922 --- /dev/null +++ b/code/modules/mob/new_player/sprite_accessories/tajaran/tajaran_head_markings.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/mob/new_player/sprite_accessories/tajaran/tajaran_head_markings.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/new_player/sprite_accessories/tajaran/tajaran_head_markings.dm + +

+ + + + +
/datum/sprite_accessory/body_markings/head/tajara/muzzle_alt_tajCompanion marking for Tajaran Belly 2.
/datum/sprite_accessory/body_markings/head/tajara/points_tajCompanion marking for Tajaran Points.
/datum/sprite_accessory/body_markings/head/tajara/patchy_tajCompanion marking for Tajaran Patches.
+ + + 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 0000000000000..17e3c81dc4836 --- /dev/null +++ b/code/modules/mob/new_player/sprite_accessories/tajaran/tajaran_tail_markings.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/new_player/sprite_accessories/tajaran/tajaran_tail_markings.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/new_player/sprite_accessories/tajaran/tajaran_tail_markings.dm + +

+ + +
/datum/sprite_accessory/body_markings/tail/tajara/taj_wingler_stripesTiger stripes.
+ + + 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 0000000000000..55adfc1ba4683 --- /dev/null +++ b/code/modules/mob/new_player/sprite_accessories/unathi/unathi_head_markings.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/mob/new_player/sprite_accessories/unathi/unathi_head_markings.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/new_player/sprite_accessories/unathi/unathi_head_markings.dm + +

+ + + + + +
/datum/sprite_accessory/body_markings/head/unathi/banded_unaCompanion marking for Unathi Banded.
/datum/sprite_accessory/body_markings/head/unathi/snout_narrow_unaCompanion marking for Unathi Narrow Belly.
/datum/sprite_accessory/body_markings/head/unathi/points_unaCompanion marking for Unathi Points.
/datum/sprite_accessory/body_markings/head/unathi/sharp/snout_narrow_una_sharpCompanion marking for Unathi Narrow Belly.
+ + + 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 0000000000000..e193c1c73cdfd --- /dev/null +++ b/code/modules/mob/new_player/sprite_accessories/vulpkanin/vulpkanin_head_markings.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/mob/new_player/sprite_accessories/vulpkanin/vulpkanin_head_markings.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mob/new_player/sprite_accessories/vulpkanin/vulpkanin_head_markings.dm + +

+ + + + + +
/datum/sprite_accessory/body_markings/head/vulpkanin/muzzle_vulpCompanion marking for Vulpkanin Belly Alt..
/datum/sprite_accessory/body_markings/head/vulpkanin/muzzle_ears_vulpCompanion marking for Vulpkanin Belly Alt..
/datum/sprite_accessory/body_markings/head/vulpkanin/points_fade_vulpCompanion marking for Vulpkanin Points Fade.
/datum/sprite_accessory/body_markings/head/vulpkanin/points_sharp_vulpCompanion marking for Vulpkanin Points Sharp.
+ + + diff --git a/code/modules/mod/adding_new_mod.html b/code/modules/mod/adding_new_mod.html new file mode 100644 index 0000000000000..6a31912ef9013 --- /dev/null +++ b/code/modules/mod/adding_new_mod.html @@ -0,0 +1,299 @@ + + + + + + + code/modules/mod/adding_new_mod.md - Space Station 13 + + +
+ Space 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.

+
/obj/item/mod/control/pre_equipped/psychological
+	theme = /datum/mod_theme/psychological
+	initial_modules = list(
+		/obj/item/mod/module/storage,
+		/obj/item/mod/module/flashlight,
+	)
+
+

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.

+
/obj/item/mod/construction/armor/psychological
+	theme = /datum/mod_theme/psychological
+
+

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.

+
			HELMET_LAYER = null,
+			HELMET_FLAGS = list(
+				UNSEALED_CLOTHING = SNUG_FIT|THICKMATERIAL,
+				SEALED_CLOTHING = STOPSPRESSUREDAMAGE|BLOCK_GAS_SMOKE_EFFECT,
+				UNSEALED_INVISIBILITY = HIDEFACIALHAIR|HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDESNOUT,
+				UNSEALED_COVER = HEADCOVERSMOUTH|HEADCOVERSEYES|PEPPERPROOF,
+			),
+
+

Otherwise, with an open helmet that becomes closed (like the engineering skin), we'd do this.

+
			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,
+			),
+
+

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

+
/obj/item/mod/module/neuron_healer/on_use()
+	. = ..()
+	if(!.)
+		return
+
+

After this, we want to put our special code, a basic effect of healing all mobs nearby for their brain damage and creating a beam to them.

+
/obj/item/mod/module/neuron_healer/on_use()
+	. = ..()
+	if(!.)
+		return
+	for(var/mob/living/carbon/carbon_mob in range(5, src))
+		if(carbon_mob == mod.wearer)
+			continue
+		carbon_mob.adjustOrganLoss(ORGAN_SLOT_BRAIN, -brain_damage_healed)
+		mod.wearer.Beam(carbon_mob, icon_state = "plasmabeam", time = 1.5 SECONDS)
+	playsound(src, 'sound/effects/magic.ogg', 100, TRUE)
+	drain_power(use_power_cost)
+
+

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.

+
/obj/item/mod/module/neuron_healer/advanced
+	name = "MOD advanced neuron healer module"
+	complexity = 0
+	brain_damage_healed = 50
+
+

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.

+ + + diff --git a/code/modules/mod/mod_construction.html b/code/modules/mod/mod_construction.html new file mode 100644 index 0000000000000..15bd798d31f5f --- /dev/null +++ b/code/modules/mod/mod_construction.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/mod/mod_construction.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mod/mod_construction.dm + +

+ + + + + +
/obj/item/mod/construction/plating/rescueI 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
/obj/item/mod/construction/plating/safeguardContinued 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.
/obj/item/mod/construction/plating/advancedThis 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.
/obj/item/mod/construction/plating/researchDon'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.
+ + + diff --git a/code/modules/mod/mod_control.html b/code/modules/mod/mod_control.html new file mode 100644 index 0000000000000..86647855fbe20 --- /dev/null +++ b/code/modules/mod/mod_control.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mod/mod_control.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mod/mod_control.dm + +

+ + +
/obj/item/modMODsuits, trade-off between armor and utility
+ + + diff --git a/code/modules/mod/mod_core.html b/code/modules/mod/mod_core.html new file mode 100644 index 0000000000000..9d354a94e7369 --- /dev/null +++ b/code/modules/mod/mod_core.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mod/mod_core.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mod/mod_core.dm + +

+ + +
/obj/item/mod/core/infiniteAdmin only.
+ + + diff --git a/code/modules/mod/mod_theme.html b/code/modules/mod/mod_theme.html new file mode 100644 index 0000000000000..72c31083af1bb --- /dev/null +++ b/code/modules/mod/mod_theme.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/mod/mod_theme.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mod/mod_theme.dm + +

+ + + + + + + +
/proc/setup_mod_themesGlobal proc that sets up all MOD themes as singletons in a list and returns it.
/datum/mod_themeMODsuit theme, instanced once and then used by MODsuits to grab various statistics.
/datum/mod_theme/standardWe don't want the civilian skin to apply to all modsuits, that causes issues.
/obj/item/mod/armor/mod_theme_responsoryThis has no slowdown active, and no variation between levels. I am ASSUMING this will be gamma only.
/obj/item/mod/armor/mod_theme_administrativeconsidering this should not be used, it's getting just DS armor, not infinity in everything.
+ + + diff --git a/code/modules/mod/mod_types.html b/code/modules/mod/mod_types.html new file mode 100644 index 0000000000000..011ab14345970 --- /dev/null +++ b/code/modules/mod/mod_types.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/mod/mod_types.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mod/mod_types.dm + +

+ + + + +
/obj/item/mod/control/pre_equipped/mining/vendorvisit robotics.
/obj/item/mod/control/pre_equipped/mining/asteroidThe asteroid skin, as that one looks more space worthy / older. Good for space ruins.
/obj/item/mod/control/pre_equipped/responsory/inquisitoryDiffrent look, as well as magic proof on TG. We don't have the magic proof stuff here, but it's perfect for inqusitors. Or if you want to give your ERT a fancy look.
+ + + diff --git a/code/modules/mod/modules/_modules.html b/code/modules/mod/modules/_modules.html new file mode 100644 index 0000000000000..12a9bf53d8524 --- /dev/null +++ b/code/modules/mod/modules/_modules.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mod/modules/_modules.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mod/modules/_modules.dm + +

+ + + +
/obj/item/mod/moduleMOD Module - A special device installed in a MODsuit allowing the suit to do new stuff.
/obj/item/mod/module/anomaly_lockedAnomaly Locked - Causes the module to not function without an anomaly.
+ + + diff --git a/code/modules/mod/modules/module_kinesis.html b/code/modules/mod/modules/module_kinesis.html new file mode 100644 index 0000000000000..a9262a3cf10c4 --- /dev/null +++ b/code/modules/mod/modules/module_kinesis.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mod/modules/module_kinesis.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mod/modules/module_kinesis.dm + +

+ + +
/obj/item/mod/module/anomaly_locked/kinesisKinesis - Gives you the ability to move and launch objects.
+ + + diff --git a/code/modules/mod/modules/module_pathfinder.html b/code/modules/mod/modules/module_pathfinder.html new file mode 100644 index 0000000000000..ffb2a4fcbe3d3 --- /dev/null +++ b/code/modules/mod/modules/module_pathfinder.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mod/modules/module_pathfinder.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mod/modules/module_pathfinder.dm + +

+ + +
/obj/item/mod/module/pathfinderPathfinder - Can fly the suit from a long distance to an implant installed in someone.
+ + + diff --git a/code/modules/mod/modules/modules_antag.html b/code/modules/mod/modules/modules_antag.html new file mode 100644 index 0000000000000..305b7141e7432 --- /dev/null +++ b/code/modules/mod/modules/modules_antag.html @@ -0,0 +1,36 @@ + + + + + + + code/modules/mod/modules/modules_antag.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mod/modules/modules_antag.dm + +

+ + + + + + + + + + + +
/obj/item/mod/module/armor_boosterArmor Booster - Grants your suit more armor and speed in exchange for EVA protection. Also acts as a welding screen.
/obj/item/mod/module/insigniaInsignia - Gives you a skin specific stripe.
/obj/item/mod/module/noslipAnti Slip - Prevents you from slipping on water.
/obj/item/mod/module/power_kickPower kick - Lets the user launch themselves at someone to kick them.
/obj/item/mod/module/plate_compressionPlate Compression - Compresses the suit to normal size
/obj/item/mod/module/stealthCloaking - Lowers the user's visibility, can be interrupted by being touched or attacked.
/obj/item/mod/module/status_readoutStatus Readout - Puts a lot of information including health, nutrition, fingerprints, temperature to the suit TGUI.
/obj/item/mod/module/ert_cameraCamera Module - Puts a camera in the modsuit that the ERT commander can see
/obj/item/mod/module/chameleonChameleon - lets the suit disguise as any item that would fit on that slot.
/obj/item/mod/module/energy_shieldEnergy Shield - Gives you a rechargeable energy shield that nullifies attacks.
+ + + diff --git a/code/modules/mod/modules/modules_engineering.html b/code/modules/mod/modules/modules_engineering.html new file mode 100644 index 0000000000000..1126600cf3078 --- /dev/null +++ b/code/modules/mod/modules/modules_engineering.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/mod/modules/modules_engineering.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mod/modules/modules_engineering.dm + +

+ + + + + + + +
/obj/item/mod/module/weldingWelding Protection - Makes the helmet protect from flashes and welding.
/obj/item/mod/module/t_rayT-Ray Scan - Scans the terrain for undertile objects.
/obj/item/mod/module/magbootMagnetic Stability - Gives the user a slowdown but makes them negate gravity and be immune to slips.
/obj/item/mod/module/rad_protectionRadiation Protection - Gives the user rad info in the ui, currently
/obj/item/mod/module/tetherEmergency Tether - Shoots a grappling hook projectile in 0g that throws the user towards it.
/obj/item/mod/module/firefighting_tankAtmos water tank module
+ + + diff --git a/code/modules/mod/modules/modules_general.html b/code/modules/mod/modules/modules_general.html new file mode 100644 index 0000000000000..ab3396d5a75ea --- /dev/null +++ b/code/modules/mod/modules/modules_general.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/mod/modules/modules_general.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mod/modules/modules_general.dm + +

+ + + + + + + + +
/obj/item/mod/module/storageStorage - Adds a storage component to the suit.
/obj/item/mod/module/jetpackIon Jetpack - Lets the user fly freely through space using battery charge.
/obj/item/mod/module/emp_shieldEMP Shield - Protects the suit from EMPs.
/obj/item/mod/module/flashlightFlashlight - Gives the suit a customizable flashlight.
/obj/item/mod/module/dispenserDispenser - Dispenses an item after a time passes.
/obj/item/mod/module/thermal_regulatorThermal Regulator - Regulates the wearer's core temperature.
/obj/item/mod/module/plasma_stabilizerPlasma Stabilizer - Prevents plasmamen from igniting in the suit
+ + + diff --git a/code/modules/mod/modules/modules_maint.html b/code/modules/mod/modules/modules_maint.html new file mode 100644 index 0000000000000..bcbf09cc90690 --- /dev/null +++ b/code/modules/mod/modules/modules_maint.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/mod/modules/modules_maint.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mod/modules/modules_maint.dm + +

+ + + + +
/obj/item/mod/module/springlockSpringlock Mechanism - allows your modsuit to activate faster, but reagents are very dangerous.
/obj/item/mod/module/balloonBalloon Blower - Blows a balloon.
/obj/item/mod/module/stampStamper - Extends a stamp that can switch between accept/deny modes.
+ + + diff --git a/code/modules/mod/modules/modules_medical.html b/code/modules/mod/modules/modules_medical.html new file mode 100644 index 0000000000000..cb97b8068dc09 --- /dev/null +++ b/code/modules/mod/modules/modules_medical.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/mod/modules/modules_medical.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mod/modules/modules_medical.dm + +

+ + + + +
/obj/item/mod/module/injectorInjector - Gives the suit an extendable large-capacity piercing syringe.
/obj/item/mod/module/defibrillatorDefibrillator - Gives the suit an extendable pair of shock paddles.
/obj/item/mod/module/monitorCrew Monitor - Deploys or retracts a built-in handheld crew monitor
+ + + diff --git a/code/modules/mod/modules/modules_science.html b/code/modules/mod/modules/modules_science.html new file mode 100644 index 0000000000000..4075af4d93c07 --- /dev/null +++ b/code/modules/mod/modules/modules_science.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mod/modules/modules_science.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mod/modules/modules_science.dm + +

+ + + +
/obj/item/mod/module/reagent_scannerReagent Scanner - Lets the user scan reagents.
/obj/item/mod/module/anomaly_locked/teleporterTeleporter - Lets the user teleport to a nearby location.
+ + + diff --git a/code/modules/mod/modules/modules_security.html b/code/modules/mod/modules/modules_security.html new file mode 100644 index 0000000000000..86872c82b2752 --- /dev/null +++ b/code/modules/mod/modules/modules_security.html @@ -0,0 +1,34 @@ + + + + + + + code/modules/mod/modules/modules_security.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mod/modules/modules_security.dm + +

+ + + + + + + + + +
/obj/item/mod/module/holsterHolster - Instantly holsters any not huge gun.
/obj/item/mod/module/dispenser/mirageMirage grenade dispenser - Dispenses grenades that copy the user's appearance.
/mob/living/simple_animal/hostile/illusion/mirageIt's just standing there, menacingly
/obj/item/mod/module/active_sonarActive Sonar - Displays a hud circle on the turf of any living creatures in the given radius
/obj/item/mod/module/anomaly_locked/firewallFirewall. Deployable dropwall that lights projectiles on fire.
/obj/item/mod/module/anomaly_locked/vortex_shotgunVortex arm mounted shotgun. Fucks up reality in front of it, very power draining. Compeating with the vortex arm and stealth armor after all
/obj/item/mod/module/anomaly_locked/cryogrenadeCryogrenade. Freezes foes in place, cools them
/obj/item/mod/module/dispenser/smokeSmoke Grenade Module, its tacticool.
+ + + diff --git a/code/modules/mod/modules/modules_service.html b/code/modules/mod/modules/modules_service.html new file mode 100644 index 0000000000000..4a052517ab2a8 --- /dev/null +++ b/code/modules/mod/modules/modules_service.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mod/modules/modules_service.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mod/modules/modules_service.dm + +

+ + +
/obj/item/mod/module/bikehornBike Horn - Plays a bike horn sound.
+ + + diff --git a/code/modules/mod/modules/modules_supply.html b/code/modules/mod/modules/modules_supply.html new file mode 100644 index 0000000000000..f4b44eddf8f15 --- /dev/null +++ b/code/modules/mod/modules/modules_supply.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/mod/modules/modules_supply.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mod/modules/modules_supply.dm + +

+ + + + + +
/obj/item/mod/module/gpsInternal GPS - Extends a GPS you can use.
/obj/item/mod/module/clampHydraulic Clamp - Lets you pick up and drop crates.
/obj/item/mod/module/drillDrill - Lets you dig through rock and basalt.
/obj/item/mod/module/orebagOre Bag - Lets you pick up ores and drop them from the suit.
+ + + diff --git a/code/modules/mod/modules/modules_visor.html b/code/modules/mod/modules/modules_visor.html new file mode 100644 index 0000000000000..4f6db69b907d7 --- /dev/null +++ b/code/modules/mod/modules/modules_visor.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mod/modules/modules_visor.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/mod/modules/modules_visor.dm + +

+ + +
/obj/item/mod/module/visorBase Visor - Adds a specific HUD and traits to you.
+ + + diff --git a/code/modules/newscaster/datums.html b/code/modules/newscaster/datums.html new file mode 100644 index 0000000000000..f5ebba8f81dac --- /dev/null +++ b/code/modules/newscaster/datums.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/newscaster/datums.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/newscaster/datums.dm + +

+ + + + +
/datum/feed_networkSingleton that contains all informations related to newscasters (channels, stories).
/datum/feed_messageDescribes a single feed story. Always owned by a /datum/feed_channel.
/datum/feed_channelDescribes a single feed channel. Owns a list of /datum/feed_message.
+ + + diff --git a/code/modules/newscaster/obj/newscaster.html b/code/modules/newscaster/obj/newscaster.html new file mode 100644 index 0000000000000..05197503ec078 --- /dev/null +++ b/code/modules/newscaster/obj/newscaster.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/newscaster/obj/newscaster.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/newscaster/obj/newscaster.dm + +

+ + +
/obj/machinery/newscasterFor all of the crew's news need. Includes reading, submitting and printing stories.
+ + + diff --git a/code/modules/newscaster/obj/newspaper.html b/code/modules/newscaster/obj/newspaper.html new file mode 100644 index 0000000000000..aef61f51a82db --- /dev/null +++ b/code/modules/newscaster/obj/newspaper.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/newscaster/obj/newspaper.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/newscaster/obj/newspaper.dm + +

+ + +
/obj/item/newspaperA newspaper displaying the stories of all channels contained within.
+ + + diff --git a/code/modules/paperwork/filingcabinet.html b/code/modules/paperwork/filingcabinet.html new file mode 100644 index 0000000000000..8621daa24bd14 --- /dev/null +++ b/code/modules/paperwork/filingcabinet.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/paperwork/filingcabinet.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/paperwork/filingcabinet.dm + +

+ + +
/obj/structure/filingcabinet/filingcabinetnot changing the path to avoid unecessary map issues, but please don't name stuff like this in the future -Pete
+ + + diff --git a/code/modules/paperwork/photocopier.html b/code/modules/paperwork/photocopier.html new file mode 100644 index 0000000000000..6e4c8d4e2e6fe --- /dev/null +++ b/code/modules/paperwork/photocopier.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/paperwork/photocopier.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/paperwork/photocopier.dm + +

+ + +
MAX_COPIES_PRINTABLEGlobal 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

+ + + diff --git a/code/modules/paperwork/photography.html b/code/modules/paperwork/photography.html new file mode 100644 index 0000000000000..26b9cb80f40d6 --- /dev/null +++ b/code/modules/paperwork/photography.html @@ -0,0 +1,37 @@ + + + + + + + code/modules/paperwork/photography.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/paperwork/photography.dm + +

+ + + + + + + +
/obj/item/camera_filmfilm
/obj/item/photophoto
/obj/item/storage/photo_albumphoto album
/obj/item/cameracamera
/obj/item/camera/digitaldigital camera
CAMERA_STATE_COOLDOWNvideo camera

Define Details

+

CAMERA_STATE_COOLDOWN + + +

+

video camera

+ + + diff --git a/code/modules/paperwork/silicon_photography.html b/code/modules/paperwork/silicon_photography.html new file mode 100644 index 0000000000000..31a6e60272f69 --- /dev/null +++ b/code/modules/paperwork/silicon_photography.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/paperwork/silicon_photography.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/paperwork/silicon_photography.dm + +

+ + + + + +
/datum/pictureAI-specific
/obj/item/camera/siliconcam/ai_cameracamera AI can take pictures with
/obj/item/camera/siliconcam/robot_cameracamera cyborgs can take pictures with
/obj/item/camera/siliconcam/drone_cameracurrently doesn't offer the verbs, thus cannot be used
+ + + diff --git a/code/modules/pda/cart.html b/code/modules/pda/cart.html new file mode 100644 index 0000000000000..e3af9dca00951 --- /dev/null +++ b/code/modules/pda/cart.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/pda/cart.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/pda/cart.dm + +

+ + +
/obj/item/cartridge/syndicate/nuclearneeded subtype so regular traitors can't open and close nuclear shuttle doors
+ + + diff --git a/code/modules/power/apc/apc.html b/code/modules/power/apc/apc.html new file mode 100644 index 0000000000000..52d0b4a3251f4 --- /dev/null +++ b/code/modules/power/apc/apc.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/power/apc/apc.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/power/apc/apc.dm + +

+ + + + + +
/obj/machinery/power/apc/worn_out
/obj/machinery/power/apc/off_stationAPC type used for when you don't want the power alarm on the APC to show up on AI reports
/obj/machinery/power/apc/off_station/empty_chargeAPCs used for ruins, this version also starts devoid of a charge
/obj/machinery/power/apc/syndicategeneral syndicate access
+ + + diff --git a/code/modules/power/cell.html b/code/modules/power/cell.html new file mode 100644 index 0000000000000..87f572ba1265e --- /dev/null +++ b/code/modules/power/cell.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/power/cell.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/power/cell.dm + +

+ + + + + +
/obj/item/stock_parts/cell/pulse200 pulse shots
/obj/item/stock_parts/cell/pulse/carbine25 pulse shots
/obj/item/stock_parts/cell/pulse/pistol10 pulse shots
/obj/item/stock_parts/cell/emproof/reactiveEMP proof so emp_act does not double dip.
+ + + diff --git a/code/modules/power/engines/singularity/narsie.html b/code/modules/power/engines/singularity/narsie.html new file mode 100644 index 0000000000000..b04332cc87bbb --- /dev/null +++ b/code/modules/power/engines/singularity/narsie.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/power/engines/singularity/narsie.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/power/engines/singularity/narsie.dm + +

+ + +
/obj/singularity/narsieMoving narsie to a child object of the singularity so it can be made to function differently. --NEO
+ + + diff --git a/code/modules/power/engines/singularity/singulogen.html b/code/modules/power/engines/singularity/singulogen.html new file mode 100644 index 0000000000000..273154cb2b1cb --- /dev/null +++ b/code/modules/power/engines/singularity/singulogen.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/power/engines/singularity/singulogen.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/power/engines/singularity/singulogen.dm + +

+ + +
/obj/machinery/the_singularitygenSINGULARITY SPAWNER
+ + + diff --git a/code/modules/power/engines/supermatter/supermatter.html b/code/modules/power/engines/supermatter/supermatter.html new file mode 100644 index 0000000000000..02e5dcb03c86f --- /dev/null +++ b/code/modules/power/engines/supermatter/supermatter.html @@ -0,0 +1,43 @@ + + + + + + + code/modules/power/engines/supermatter/supermatter.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/power/engines/supermatter/supermatter.dm + +

+ + + + + +
EVENT_POWER_PENALTY_THRESHOLDThe cutoff for the minimum amount of power required to trigger the crystal invasion delamination event.
SUPERMATTER_ACCENT_SOUND_MIN_COOLDOWNto prevent accent sounds from layering
SUPERMATTER_COLOURColours used for effects.
/obj/machinery/atmospherics/supermatter_crystal/shard/hugbox/fakecrystalHugbox 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.

+ + + 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 0000000000000..c79de4d1203ae --- /dev/null +++ b/code/modules/power/engines/tesla/energy_ball.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/power/engines/tesla/energy_ball.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/power/engines/tesla/energy_ball.dm + +

+ + +
/obj/singularity/energy_ballThe Tesla engine
+ + + diff --git a/code/modules/power/lights.html b/code/modules/power/lights.html new file mode 100644 index 0000000000000..a4b70c6733f94 --- /dev/null +++ b/code/modules/power/lights.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/power/lights.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/power/lights.dm + +

+ + + + + + + + +
/obj/machinery/light_constructIncomplete light tube fixture
/obj/machinery/light_construct/smallIncomplete light bulb fixture
/obj/machinery/lightThe standard light tube fixture
/obj/machinery/light/smallThe smaller light bulb fixture
/obj/item/lightParent type of light fittings (Light bulbs, light tubes)
/obj/item/light/tubeFor use in an empty /obj/machinery/light
/obj/item/light/bulbFor use in an empty /obj/machinery/light/small
+ + + diff --git a/code/modules/power/powernets.html b/code/modules/power/powernets.html new file mode 100644 index 0000000000000..bbb0772947630 --- /dev/null +++ b/code/modules/power/powernets.html @@ -0,0 +1,50 @@ + + + + + + + code/modules/power/powernets/README.md - Space Station 13 + + +
+ Space 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

+
    +
  1. Regional Powernets
  2. +
  3. Local Powernets
  4. +
+

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)

+ + + diff --git a/code/modules/power/powernets/local_powernet.html b/code/modules/power/powernets/local_powernet.html new file mode 100644 index 0000000000000..4cbe6f00ca443 --- /dev/null +++ b/code/modules/power/powernets/local_powernet.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/power/powernets/local_powernet.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/power/powernets/local_powernet.dm + +

+ + +
/datum/local_powernetManages all power related mechanics for a single /area +Machines in areas will directly register to this datum in order to receive power
+ + + diff --git a/code/modules/power/powernets/powernet_helpers.html b/code/modules/power/powernets/powernet_helpers.html new file mode 100644 index 0000000000000..7518109bb4b2a --- /dev/null +++ b/code/modules/power/powernets/powernet_helpers.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/power/powernets/powernet_helpers.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/power/powernets/powernet_helpers.dm + +

+ + + +
/proc/propagate_networkremove the old powernet and replace it with a new one throughout the network.
+ + + 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 0000000000000..6cad3709cee40 --- /dev/null +++ b/code/modules/procedural_mapping/mapGenerators/syndicate_mapgen.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/procedural_mapping/mapGenerators/syndicate_mapgen.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/procedural_mapping/mapGenerators/syndicate_mapgen.dm + +

+ + +
/datum/mapGenerator/syndicate/emptywalls and floor only
+ + + diff --git a/code/modules/projectiles/ammunition/energy_lens.html b/code/modules/projectiles/ammunition/energy_lens.html new file mode 100644 index 0000000000000..87c105c730566 --- /dev/null +++ b/code/modules/projectiles/ammunition/energy_lens.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/projectiles/ammunition/energy_lens.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/projectiles/ammunition/energy_lens.dm + +

+ + + + +
/obj/item/ammo_casing/energy/laser/cyborgto balance cyborg energy cost seperately
/obj/item/ammo_casing/energy/disabler/cyborgseperate balancing for cyborg, again
/obj/item/ammo_casing/energy/emitter/cyborg/protoneeded 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.
+ + + diff --git a/code/modules/projectiles/ammunition/magazines.html b/code/modules/projectiles/ammunition/magazines.html new file mode 100644 index 0000000000000..398f71969c4ea --- /dev/null +++ b/code/modules/projectiles/ammunition/magazines.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/projectiles/ammunition/magazines.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/projectiles/ammunition/magazines.dm + +

+ + + + +
/obj/item/ammo_box/magazine/internalINTERNAL MAGAZINES
/obj/item/ammo_box/magazine/m10mmEXTERNAL MAGAZINES
/obj/item/ammo_box/magazine/laser/ertUsed by red ERT. Keeps the size for them
+ + + diff --git a/code/modules/projectiles/guns/projectile/revolver.html b/code/modules/projectiles/guns/projectile/revolver.html new file mode 100644 index 0000000000000..9e3278922220b --- /dev/null +++ b/code/modules/projectiles/guns/projectile/revolver.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/projectiles/guns/projectile/revolver.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/projectiles/guns/projectile/revolver.dm + +

+ + +
/obj/item/gun/projectile/revolver/fingergunSummoned by the Finger Gun spell, from advanced mimery traitor item
+ + + diff --git a/code/modules/projectiles/guns/projectile/shotgun.html b/code/modules/projectiles/guns/projectile/shotgun.html new file mode 100644 index 0000000000000..ea2a201a06573 --- /dev/null +++ b/code/modules/projectiles/guns/projectile/shotgun.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/projectiles/guns/projectile/shotgun.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/projectiles/guns/projectile/shotgun.dm + +

+ + + +
/obj/item/gun/projectile/shotgun/riotfor spawn in the armory
/obj/item/gun/projectile/shotgun/automatic/combat/cyborgService Malfunction Borg Combat Shotgun Variant
+ + + diff --git a/code/modules/projectiles/guns/syringe_gun.html b/code/modules/projectiles/guns/syringe_gun.html new file mode 100644 index 0000000000000..7ce34ccbfa144 --- /dev/null +++ b/code/modules/projectiles/guns/syringe_gun.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/projectiles/guns/syringe_gun.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/projectiles/guns/syringe_gun.dm + +

+ + + + + +
/obj/item/gun/syringe/rapidsyringe/preloadedVersion that comes pre-loaded with a given amount of syringes.
/obj/item/gun/syringe/rapidsyringe/preloaded/halfVersion that comes loaded with half of the standard amount of syringes. Used in the uplink.
/obj/item/gun/syringe/rapidsyringe/preloaded/beaker_blasterFor shenanigans. This is essentially an RSG that never needs to be refilled with syringes.
/obj/item/gun/syringe/blowguncraftable bamboo syringe gun
+ + + diff --git a/code/modules/projectiles/projectile/bullets.html b/code/modules/projectiles/projectile/bullets.html new file mode 100644 index 0000000000000..839cb42c2c87f --- /dev/null +++ b/code/modules/projectiles/projectile/bullets.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/projectiles/projectile/bullets.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/projectiles/projectile/bullets.dm + +

+ + + + +
/obj/item/projectile/bullet/weakbulletbeanbag, heavy stamina damage
/obj/item/projectile/bullet/stunshottaser slugs for shotguns, nothing special
/obj/item/projectile/bullet/mime/fake...Rather a large amount of stamina damage. Used in the mime mecha
+ + + diff --git a/code/modules/projectiles/projectile_base.html b/code/modules/projectiles/projectile_base.html new file mode 100644 index 0000000000000..afb39ba09016d --- /dev/null +++ b/code/modules/projectiles/projectile_base.html @@ -0,0 +1,37 @@ + + + + + + + code/modules/projectiles/projectile_base.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/projectiles/projectile_base.dm + +

+ + + +
MOVES_HITSCANIs this a hitscan projectile or not, if so move like one
MUZZLE_EFFECT_PIXEL_INCREMENTHow 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.

+ + + diff --git a/code/modules/reagents/chemistry/chemical_reaction.html b/code/modules/reagents/chemistry/chemical_reaction.html new file mode 100644 index 0000000000000..56e2e0fb4375f --- /dev/null +++ b/code/modules/reagents/chemistry/chemical_reaction.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/reagents/chemistry/chemical_reaction.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/chemistry/chemical_reaction.dm + +

+ + + +
/proc/goonchem_vortexThrows or pulls objects to/from a chem reaction
+ + + 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 0000000000000..87bd2d3a7a3db --- /dev/null +++ b/code/modules/reagents/chemistry/reagents/admin_reagents.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/chemistry/reagents/admin_reagents.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/chemistry/reagents/admin_reagents.dm + +

+ + +
/datum/reagent/medicine/adminordrazineAn OP chemical for admins
+ + + diff --git a/code/modules/reagents/chemistry/reagents/alcohol.html b/code/modules/reagents/chemistry/reagents/alcohol.html new file mode 100644 index 0000000000000..c23e95f1e97f5 --- /dev/null +++ b/code/modules/reagents/chemistry/reagents/alcohol.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/reagents/chemistry/reagents/alcohol.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/chemistry/reagents/alcohol.dm + +

+ + + + + +
/datum/reagent/consumable/ethanol/suiciderotherwise known as "I want to get so smashed my liver gives out and I die from alcohol poisoning".
/datum/reagent/consumable/ethanol/bilkcocktail entities
/datum/reagent/consumable/ethanol/dragons_breathinaccessible to players, but here for admin shennanigans
/datum/reagent/consumable/ethanol/bacchus_blessingAn EXTREMELY powerful drink. Smashed in seconds, dead in minutes.
+ + + 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 0000000000000..492d2e30e8883 --- /dev/null +++ b/code/modules/reagents/chemistry/reagents/blob_reagents.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/reagents/chemistry/reagents/blob_reagents.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/chemistry/reagents/blob_reagents.dm + +

+ + + + + + + +
/datum/reagent/blob/ripping_tendrilsdoes brute and a little stamina damage
/datum/reagent/blob/boiling_oilsets you on fire, does burn damage
/datum/reagent/blob/envenomed_filamentstoxin, hallucination, and some bonus spore toxin
/datum/reagent/blob/lexorin_jellydoes tons of oxygen damage and a little brute
/datum/reagent/blob/kineticdoes semi-random brute damage
/datum/reagent/blob/cryogenic_liquiddoes low burn damage and stamina damage and cools targets down
+ + + diff --git a/code/modules/reagents/chemistry/reagents/drugs.html b/code/modules/reagents/chemistry/reagents/drugs.html new file mode 100644 index 0000000000000..29ad0a14355c5 --- /dev/null +++ b/code/modules/reagents/chemistry/reagents/drugs.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/reagents/chemistry/reagents/drugs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/chemistry/reagents/drugs.dm + +

+ + + + +
/datum/reagent/rotatiumRotatium. Fucks up your rotation and is hilarious
/proc/phase_filterThis 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
+ + + 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 0000000000000..1326e83bc8902 --- /dev/null +++ b/code/modules/reagents/chemistry/reagents/food_reagents.html @@ -0,0 +1,34 @@ + + + + + + + code/modules/reagents/chemistry/reagents/food_reagents.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/chemistry/reagents/food_reagents.dm + +

+ + + + + + + + +
/datum/reagent/consumableFood Reagents
/datum/reagent/consumable/nutrimentPure nutriment, universally digestable and thus slightly less effective
/datum/reagent/consumable/nutriment/proteinMeat-based protein, digestable by carnivores and omnivores, worthless to herbivores
/datum/reagent/consumable/nutriment/plantmatterPlant-based biomatter, digestable by herbivores and omnivores, worthless to carnivores
/datum/reagent/questionmarkFood Related, but non-nutritious +food poisoning
/datum/reagent/vomitVomit
/datum/reagent/consumable/entpolyLavaland Flora Reagents
+ + + diff --git a/code/modules/reagents/chemistry/reagents/medicine.html b/code/modules/reagents/chemistry/reagents/medicine.html new file mode 100644 index 0000000000000..d453374cfeccf --- /dev/null +++ b/code/modules/reagents/chemistry/reagents/medicine.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/reagents/chemistry/reagents/medicine.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/chemistry/reagents/medicine.dm + +

+ + + +
/datum/reagent/medicine/syndicate_nanitesUsed exclusively by Syndicate medical cyborgs
/datum/reagent/medicine/earthsbloodCreated by ambrosia gaia plants
+ + + 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 0000000000000..86897bd92cdd2 --- /dev/null +++ b/code/modules/reagents/chemistry/reagents/misc_reagents.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/reagents/chemistry/reagents/misc_reagents.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/chemistry/reagents/misc_reagents.dm + +

+ + + + +
/datum/reagent/jestosteroneFormerly known as Nitrogen tungstide hypochlorite before NT fired the chemists for trying to be funny
/datum/reagent/plantnutrientHydroponics stuff
/datum/reagent/eyenewtAlchemical Reagents
+ + + diff --git a/code/modules/reagents/chemistry/reagents/toxins.html b/code/modules/reagents/chemistry/reagents/toxins.html new file mode 100644 index 0000000000000..4c1856c24a1c9 --- /dev/null +++ b/code/modules/reagents/chemistry/reagents/toxins.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/reagents/chemistry/reagents/toxins.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/chemistry/reagents/toxins.dm + +

+ + + + + +
/datum/reagent/beer2disguised as normal beer for use by emagged service borgs
/datum/reagent/pestkillerTo-Do; make this more realistic.
/datum/reagent/tesliumTeslium. Causes periodic shocks, and makes shocks against the target much more effective.
/datum/reagent/teslium/blobThis version has it's shocks much less frequently, while retaining the shock multiplier
+ + + diff --git a/code/modules/reagents/chemistry/reagents/water.html b/code/modules/reagents/chemistry/reagents/water.html new file mode 100644 index 0000000000000..77053f0ec5e81 --- /dev/null +++ b/code/modules/reagents/chemistry/reagents/water.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/chemistry/reagents/water.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/chemistry/reagents/water.dm + +

+ + +
/datum/reagent/fuel/unholywaterif you somehow managed to extract this from someone, dont splash it on yourself and have a smoke
+ + + diff --git a/code/modules/reagents/chemistry/reagents_datum.html b/code/modules/reagents/chemistry/reagents_datum.html new file mode 100644 index 0000000000000..cd18d90b0d681 --- /dev/null +++ b/code/modules/reagents/chemistry/reagents_datum.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/reagents/chemistry/reagents_datum.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/chemistry/reagents_datum.dm + +

+ + + +
/proc/fire_flash_logFlashfire is a proc used to log fire causing chemical reactions.
+ + + diff --git a/code/modules/reagents/chemistry/reagents_holder.html b/code/modules/reagents/chemistry/reagents_holder.html new file mode 100644 index 0000000000000..0541a9fcbc449 --- /dev/null +++ b/code/modules/reagents/chemistry/reagents_holder.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/reagents/chemistry/reagents_holder.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/chemistry/reagents_holder.dm + +

+ + + + +
/datum/reagentsThe holder is the datum that holds a list of all reagents +currently in the object.
/proc/get_unrestricted_random_reagent_idReturns a random reagent ID, with real non blacklisted balance boosting action!
+ + + diff --git a/code/modules/reagents/chemistry/recipes/drinks_reactions.html b/code/modules/reagents/chemistry/recipes/drinks_reactions.html new file mode 100644 index 0000000000000..2877521bd481c --- /dev/null +++ b/code/modules/reagents/chemistry/recipes/drinks_reactions.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/chemistry/recipes/drinks_reactions.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/chemistry/recipes/drinks_reactions.dm + +

+ + +
/datum/chemical_reaction/sbitenDRINKS THAT REQUIRED IMPROVED SPRITES BELOW:: -Agouri
+ + + 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 0000000000000..0d5c022704f7c --- /dev/null +++ b/code/modules/reagents/chemistry/recipes/food_reactions.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/chemistry/recipes/food_reactions.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/chemistry/recipes/food_reactions.dm + +

+ + +
/datum/chemical_reaction/cookiedoughCookies by Ume
+ + + diff --git a/code/modules/reagents/chemistry/recipes/pyrotechnics.html b/code/modules/reagents/chemistry/recipes/pyrotechnics.html new file mode 100644 index 0000000000000..34321e56ca5c5 --- /dev/null +++ b/code/modules/reagents/chemistry/recipes/pyrotechnics.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/chemistry/recipes/pyrotechnics.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/chemistry/recipes/pyrotechnics.dm + +

+ + +
/datum/chemical_reaction/phlogiston_fireThis MUST be above the smoke recipe.
+ + + 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 0000000000000..f84ca6435d970 --- /dev/null +++ b/code/modules/reagents/chemistry/recipes/toxins_reactions.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/chemistry/recipes/toxins_reactions.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/chemistry/recipes/toxins_reactions.dm + +

+ + +
/datum/chemical_reaction/pestkillerTo-Do make this more realistic
+ + + diff --git a/code/modules/reagents/reagent_containers/applicator.html b/code/modules/reagents/reagent_containers/applicator.html new file mode 100644 index 0000000000000..c7030bb9e3814 --- /dev/null +++ b/code/modules/reagents/reagent_containers/applicator.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/reagent_containers/applicator.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/applicator.dm + +

+ + +
/obj/item/reagent_containers/applicator/dual/syndiIt magically goes through hardsuits. Don't ask how.
+ + + 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 0000000000000..e597f5886569b --- /dev/null +++ b/code/modules/reagents/reagent_containers/chemical_bottle.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/reagent_containers/chemical_bottle.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/chemical_bottle.dm + +

+ + +
/obj/item/reagent_containers/glass/bottle/traitorTraitor Poison Bottle
+ + + diff --git a/code/modules/reagents/reagent_containers/dropper.html b/code/modules/reagents/reagent_containers/dropper.html new file mode 100644 index 0000000000000..c69905d8a34ab --- /dev/null +++ b/code/modules/reagents/reagent_containers/dropper.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/reagent_containers/dropper.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/dropper.dm + +

+ + +
/obj/item/reagent_containers/dropperDroppers.
+ + + 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 0000000000000..8339f1be7eb46 --- /dev/null +++ b/code/modules/reagents/reagent_containers/glass_containers.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/reagent_containers/glass_containers.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/glass_containers.dm + +

+ + +
/obj/item/reagent_containers/glass(Mixing)Glass.
+ + + diff --git a/code/modules/reagents/reagent_containers/hypospray.html b/code/modules/reagents/reagent_containers/hypospray.html new file mode 100644 index 0000000000000..9fa514b3e738b --- /dev/null +++ b/code/modules/reagents/reagent_containers/hypospray.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/reagents/reagent_containers/hypospray.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/hypospray.dm + +

+ + + + +
/obj/item/reagent_containers/hyposprayMARK: HYPOSPRAY
/obj/item/reagent_containers/hypospray/autoinjector/teporonebasilisks
/obj/item/reagent_containers/hypospray/autoinjector/stimpackgoliath kiting
+ + + 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 0000000000000..f3637c545a4ad --- /dev/null +++ b/code/modules/reagents/reagent_containers/iv_bag.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/reagent_containers/iv_bag.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/iv_bag.dm + +

+ + +
/obj/item/reagent_containers/iv_bag/bloodDon't use this - just an abstract type to allow blood bags to have a common blood_type var for ease of creation.
+ + + diff --git a/code/modules/reagents/reagent_containers/pill.html b/code/modules/reagents/reagent_containers/pill.html new file mode 100644 index 0000000000000..a058b1a859baa --- /dev/null +++ b/code/modules/reagents/reagent_containers/pill.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/reagent_containers/pill.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/pill.dm + +

+ + +
/obj/item/reagent_containers/pillA swallowable pill. Can be dissolved in reagent containers.
+ + + diff --git a/code/modules/reagents/reagent_containers/spray.html b/code/modules/reagents/reagent_containers/spray.html new file mode 100644 index 0000000000000..db14c8620d1f1 --- /dev/null +++ b/code/modules/reagents/reagent_containers/spray.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/reagents/reagent_containers/spray.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/spray.dm + +

+ + + +
/obj/item/reagent_containers/spray/plantbgonePlant-B-Gone +-- Skie
/obj/item/reagent_containers/spray/sticky_tarSticky tar spray
+ + + diff --git a/code/modules/recycling/belt-placer.html b/code/modules/recycling/belt-placer.html new file mode 100644 index 0000000000000..04d79c248da87 --- /dev/null +++ b/code/modules/recycling/belt-placer.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/recycling/belt-placer.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/recycling/belt-placer.dm + +

+ + +
/obj/item/storage/conveyorStores conveyor belts, click floor to make belt, use a conveyor switch on this to link all belts to that lever.
+ + + diff --git a/code/modules/redis/redis_callback.html b/code/modules/redis/redis_callback.html new file mode 100644 index 0000000000000..2108f224b0541 --- /dev/null +++ b/code/modules/redis/redis_callback.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/redis/redis_callback.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/redis/redis_callback.dm + +

+ + +
/datum/redis_callbackCallback datum for subscribed redis channel handling
+ + + diff --git a/code/modules/redis/redis_message.html b/code/modules/redis/redis_message.html new file mode 100644 index 0000000000000..ebf04fbccd487 --- /dev/null +++ b/code/modules/redis/redis_message.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/redis/redis_message.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/redis/redis_message.dm + +

+ + +
/datum/redis_messageHolder datum for redis messages
+ + + diff --git a/code/modules/research/designs.html b/code/modules/research/designs.html new file mode 100644 index 0000000000000..5f14166c80131 --- /dev/null +++ b/code/modules/research/designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs.dm + +

+ + +
/datum/design
+ + + 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 0000000000000..08432c08364fd --- /dev/null +++ b/code/modules/research/designs/AI_module_designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs/AI_module_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/AI_module_designs.dm + +

+ + +
/datum/design/freeform_moduleAI Module Disks
+ + + diff --git a/code/modules/research/designs/autolathe_designs.html b/code/modules/research/designs/autolathe_designs.html new file mode 100644 index 0000000000000..df6ac8817e81f --- /dev/null +++ b/code/modules/research/designs/autolathe_designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs/autolathe_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/autolathe_designs.dm + +

+ + +
/datum/design/bucketAutolathe Designs
+ + + diff --git a/code/modules/research/designs/biogenerator_designs.html b/code/modules/research/designs/biogenerator_designs.html new file mode 100644 index 0000000000000..110d646b6d977 --- /dev/null +++ b/code/modules/research/designs/biogenerator_designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs/biogenerator_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/biogenerator_designs.dm + +

+ + +
/datum/design/milkBiogenerator Designs
+ + + diff --git a/code/modules/research/designs/bluespace_designs.html b/code/modules/research/designs/bluespace_designs.html new file mode 100644 index 0000000000000..8b6c1ed53b85b --- /dev/null +++ b/code/modules/research/designs/bluespace_designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs/bluespace_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/bluespace_designs.dm + +

+ + +
/datum/design/bluespace_crystalBluespace
+ + + 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 0000000000000..78dbaba09f757 --- /dev/null +++ b/code/modules/research/designs/comp_board_designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs/comp_board_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/comp_board_designs.dm + +

+ + +
/datum/design/aicoreComputer Boards
+ + + diff --git a/code/modules/research/designs/equipment_designs.html b/code/modules/research/designs/equipment_designs.html new file mode 100644 index 0000000000000..b277d0aa03c03 --- /dev/null +++ b/code/modules/research/designs/equipment_designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs/equipment_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/equipment_designs.dm + +

+ + +
/datum/design/exwelderEquipment
+ + + diff --git a/code/modules/research/designs/janitorial_designs.html b/code/modules/research/designs/janitorial_designs.html new file mode 100644 index 0000000000000..56669b04eb882 --- /dev/null +++ b/code/modules/research/designs/janitorial_designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs/janitorial_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/janitorial_designs.dm + +

+ + +
/datum/design/advmopJanitorial Designs
+ + + diff --git a/code/modules/research/designs/machine_designs.html b/code/modules/research/designs/machine_designs.html new file mode 100644 index 0000000000000..a110142a12249 --- /dev/null +++ b/code/modules/research/designs/machine_designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs/machine_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/machine_designs.dm + +

+ + +
/datum/design/thermomachineMachine Boards
+ + + diff --git a/code/modules/research/designs/mecha_designs.html b/code/modules/research/designs/mecha_designs.html new file mode 100644 index 0000000000000..88d99cfdb7cf2 --- /dev/null +++ b/code/modules/research/designs/mecha_designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs/mecha_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/mecha_designs.dm + +

+ + +
/datum/design/ripley_mainMecha Module Disks
+ + + diff --git a/code/modules/research/designs/mechfabricator_designs.html b/code/modules/research/designs/mechfabricator_designs.html new file mode 100644 index 0000000000000..f21be2236ae9e --- /dev/null +++ b/code/modules/research/designs/mechfabricator_designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs/mechfabricator_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/mechfabricator_designs.dm + +

+ + +
/datum/design/borg_suitMecha Designs
+ + + diff --git a/code/modules/research/designs/medical_designs.html b/code/modules/research/designs/medical_designs.html new file mode 100644 index 0000000000000..bb5bf61fc702b --- /dev/null +++ b/code/modules/research/designs/medical_designs.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/research/designs/medical_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/medical_designs.dm + +

+ + + + +
/datum/design/adv_reagent_scannerMedical Tools
/datum/design/cyberimp_weldingCybernetic Implants
/datum/design/bio_chip_implanterRegular Implants
+ + + diff --git a/code/modules/research/designs/mining_designs.html b/code/modules/research/designs/mining_designs.html new file mode 100644 index 0000000000000..eed4f2481665d --- /dev/null +++ b/code/modules/research/designs/mining_designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs/mining_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/mining_designs.dm + +

+ + +
/datum/design/drillMining
+ + + diff --git a/code/modules/research/designs/misc_designs.html b/code/modules/research/designs/misc_designs.html new file mode 100644 index 0000000000000..9515157b4c0d5 --- /dev/null +++ b/code/modules/research/designs/misc_designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs/misc_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/misc_designs.dm + +

+ + +
/datum/design/design_diskMisc Designs
+ + + diff --git a/code/modules/research/designs/modsuit_designs.html b/code/modules/research/designs/modsuit_designs.html new file mode 100644 index 0000000000000..e856a2e43f7e3 --- /dev/null +++ b/code/modules/research/designs/modsuit_designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs/modsuit_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/modsuit_designs.dm + +

+ + +
/datum/design/mod_shellMOD
+ + + diff --git a/code/modules/research/designs/power_designs.html b/code/modules/research/designs/power_designs.html new file mode 100644 index 0000000000000..9cf5bff7762b3 --- /dev/null +++ b/code/modules/research/designs/power_designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs/power_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/power_designs.dm + +

+ + +
/datum/design/basic_cellPower Designs
+ + + diff --git a/code/modules/research/designs/smelting_designs.html b/code/modules/research/designs/smelting_designs.html new file mode 100644 index 0000000000000..7805e83dacee9 --- /dev/null +++ b/code/modules/research/designs/smelting_designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs/smelting_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/smelting_designs.dm + +

+ + +
/datum/design/smelterSMELTABLE ALLOYS
+ + + 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 0000000000000..3c2074c1a79d9 --- /dev/null +++ b/code/modules/research/designs/stock_parts_designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs/stock_parts_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/stock_parts_designs.dm + +

+ + +
/datum/design/basic_capacitorStock Parts
+ + + diff --git a/code/modules/research/designs/telecomms_designs.html b/code/modules/research/designs/telecomms_designs.html new file mode 100644 index 0000000000000..8767d15f5defa --- /dev/null +++ b/code/modules/research/designs/telecomms_designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs/telecomms_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/telecomms_designs.dm + +

+ + +
/datum/design/telecomms_coreTelecomms Equipment
+ + + diff --git a/code/modules/research/designs/weapon_designs.html b/code/modules/research/designs/weapon_designs.html new file mode 100644 index 0000000000000..972d7246ac425 --- /dev/null +++ b/code/modules/research/designs/weapon_designs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/research/designs/weapon_designs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/designs/weapon_designs.dm + +

+ + +
/datum/design/nuclear_gunWeapons
+ + + diff --git a/code/modules/research/research.html b/code/modules/research/research.html new file mode 100644 index 0000000000000..6e5fa4ac3e057 --- /dev/null +++ b/code/modules/research/research.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/research/research.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/research.dm + +

+ + + + + +
/datum/research
/datum/research/autolathe/gammaGamma Armoury autolathe files
/datum/tech
/datum/tech/toxinsnot meant to be raised by deconstruction, do not give objects toxins as an origin_tech
+ + + diff --git a/code/modules/research/xenobiology/xenobiology.html b/code/modules/research/xenobiology/xenobiology.html new file mode 100644 index 0000000000000..f6710c17e6e29 --- /dev/null +++ b/code/modules/research/xenobiology/xenobiology.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/research/xenobiology/xenobiology.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/research/xenobiology/xenobiology.dm + +

+ + + +
/obj/item/slime_extractSlime Extracts
/obj/item/slimepotionSlime-derived potions
+ + + diff --git a/code/modules/response_team/ert_outfits.html b/code/modules/response_team/ert_outfits.html new file mode 100644 index 0000000000000..045d5dc1496d4 --- /dev/null +++ b/code/modules/response_team/ert_outfits.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/response_team/ert_outfits.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/response_team/ert_outfits.dm + +

+ + + + + + + +
/datum/outfit/job/centcom/response_team/commanderCOMMANDER
/datum/outfit/job/centcom/response_team/securitySECURITY
/datum/outfit/job/centcom/response_team/engineerENGINEER
/datum/outfit/job/centcom/response_team/medicMEDIC
/datum/outfit/job/centcom/response_team/paranormalPARANORMAL
/datum/outfit/job/centcom/response_team/janitorialJANITORIAL
+ + + 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 0000000000000..d73b9613c905f --- /dev/null +++ b/code/modules/ruins/lavalandruin_code/dead_ratvar.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/ruins/lavalandruin_code/dead_ratvar.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/ruins/lavalandruin_code/dead_ratvar.dm + +

+ + + +
/obj/effect/clockwork/overlay/floor/bloodcultthis is used by BLOOD CULT, it shouldn't use such a path...
/obj/item/clockwork/alloy_shards/medium/gear_bit/largegives more power
+ + + 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 0000000000000..e41644d308e66 --- /dev/null +++ b/code/modules/ruins/lavalandruin_code/sin_ruins.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/ruins/lavalandruin_code/sin_ruins.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/ruins/lavalandruin_code/sin_ruins.dm + +

+ + + + + +
/obj/structure/cursed_slot_machineGreed's slot machine: Used in the Greed ruin. Deals damage on each use, with a successful use giving a d20 of fate.
/obj/effect/gluttonyGluttony's wall: Used in the Gluttony ruin. Only lets the overweight through.
/obj/structure/mirror/magic/pridePride's mirror: Used in the Pride ruin.
/obj/item/kitchen/knife/envyEnvy's knife: Found in the Envy ruin. Attackers take on the appearance of whoever they strike.
+ + + 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 0000000000000..a254add30b857 --- /dev/null +++ b/code/modules/security_levels/security_level_datums.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/security_levels/security_level_datums.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/security_levels/security_level_datums.dm + +

+ + + + + + + + +
/datum/security_levelSecurity levels
/datum/security_level/greenGREEN
/datum/security_level/blueBLUE
/datum/security_level/redRED
/datum/security_level/gammaGamma
/datum/security_level/epsilonEpsilon
/datum/security_level/deltaDELTA
+ + + diff --git a/code/modules/server_commands/servermsg.html b/code/modules/server_commands/servermsg.html new file mode 100644 index 0000000000000..29d37b19edccc --- /dev/null +++ b/code/modules/server_commands/servermsg.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/server_commands/servermsg.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/server_commands/servermsg.dm + +

+ + +
/datum/server_commandDatum to handle both sending and receiving of server commands
+ + + diff --git a/code/modules/shuttle.html b/code/modules/shuttle.html new file mode 100644 index 0000000000000..59eb3380ec463 --- /dev/null +++ b/code/modules/shuttle.html @@ -0,0 +1,154 @@ + + + + + + + code/modules/shuttle/README.md - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/shuttle/README.md + +

+ + +
+ + +Important note: +

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 systemIntroduction +

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 portsobj 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:

+
  |||
+  |||
+  |||
+ |||||
+||||||D
+|||||||
+||| |||
+
+

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().

+ + + diff --git a/code/modules/shuttle/shuttle_manipulator.html b/code/modules/shuttle/shuttle_manipulator.html new file mode 100644 index 0000000000000..c0c6ef4e1ef05 --- /dev/null +++ b/code/modules/shuttle/shuttle_manipulator.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/shuttle/shuttle_manipulator.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/shuttle/shuttle_manipulator.dm + +

+ + +
PREVIEW_OR_SHUTTLE_SPAWN_COOLDOWNWe 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

+ + + diff --git a/code/modules/space_management/level_traits.html b/code/modules/space_management/level_traits.html new file mode 100644 index 0000000000000..02f8eeb4f4346 --- /dev/null +++ b/code/modules/space_management/level_traits.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/space_management/level_traits.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/space_management/level_traits.dm + +

+ + + +
/proc/get_all_linked_levels_zposProc to get a list of all the linked-together Z-Levels
+ + + diff --git a/code/modules/space_management/space_transition.html b/code/modules/space_management/space_transition.html new file mode 100644 index 0000000000000..e0f64982dd6ff --- /dev/null +++ b/code/modules/space_management/space_transition.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/space_management/space_transition.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/space_management/space_transition.dm + +

+ + +
/datum/pointthis is explicitly utilitarian datum type made specially for the space map generation and are absolutely unusable for anything else
+ + + diff --git a/code/modules/station_goals/bluespace_tap.html b/code/modules/station_goals/bluespace_tap.html new file mode 100644 index 0000000000000..4b305e617153d --- /dev/null +++ b/code/modules/station_goals/bluespace_tap.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/station_goals/bluespace_tap.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/station_goals/bluespace_tap.dm + +

+ + +
/obj/machinery/power/bluespace_tapA station goal that consumes enormous amounts of power to generate (mostly fluff) rewards
+ + + diff --git a/code/modules/supply/supply_README.html b/code/modules/supply/supply_README.html new file mode 100644 index 0000000000000..eaa5438dd7210 --- /dev/null +++ b/code/modules/supply/supply_README.html @@ -0,0 +1,43 @@ + + + + + + + code/modules/supply/supply_README.md - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/supply/supply_README.md + +

+ + +
IMPORTANT SUPPLY PACKS NOTESPack 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
  • +
+ + + 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 0000000000000..1ef3cb743fe45 --- /dev/null +++ b/code/modules/supply/supply_packs/pack_abstract.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/supply/supply_packs/pack_abstract.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/supply/supply_packs/pack_abstract.dm + +

+ + + +
/datum/supply_packs/abstractAbstract 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.
/datum/supply_packs/abstract/admin_notifyA sample supply pack that notifies admins when it is purchased, but provides no items.
+ + + 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 0000000000000..af0c78bece07c --- /dev/null +++ b/code/modules/supply/supply_packs/pack_emergency.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/supply/supply_packs/pack_emergency.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/supply/supply_packs/pack_emergency.dm + +

+ + +
/datum/supply_packs/emergencySection header - use these to set default supply group and crate type for sections
+ + + 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 0000000000000..8ba52f4fa0457 --- /dev/null +++ b/code/modules/supply/supply_packs/pack_engineering.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/supply/supply_packs/pack_engineering.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/supply/supply_packs/pack_engineering.dm + +

+ + +
/datum/supply_packs/engineering/toolsthe most robust crate
+ + + 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 0000000000000..1c3a56a5d034f --- /dev/null +++ b/code/modules/supply/supply_packs/pack_miscellaneous.html @@ -0,0 +1,34 @@ + + + + + + + code/modules/supply/supply_packs/pack_miscellaneous.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/supply/supply_packs/pack_miscellaneous.dm + +

+ + + + + + + + + +
/datum/supply_packs/misc/paperPaper Work
/datum/supply_packs/misc/janitorJanitor Supplies
/datum/supply_packs/misc/servicecostumeCostumes
/datum/supply_packs/misc/formalwearThis is a very classy crate.
/datum/supply_packs/misc/teamcolorsFor team sports like space polo
/datum/supply_packs/misc/poloFor space polo! Or horsehead Quiditch
/datum/supply_packs/misc/boxingFor non log spamming cargo brawls!
/datum/supply_packs/misc/station_goalStation Goals
+ + + 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 0000000000000..29c8a7699bcd6 --- /dev/null +++ b/code/modules/supply/supply_packs/pack_organic.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/supply/supply_packs/pack_organic.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/supply/supply_packs/pack_organic.dm + +

+ + + + +
/datum/supply_packs/misc/randomised/ingredientsits a bit hacky...
/datum/supply_packs/organic/cowlivestock
/datum/supply_packs/organic/hydroponics/// hippy gear +-- Skie
+ + + 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 0000000000000..cba25560824f9 --- /dev/null +++ b/code/modules/supply/supply_packs/pack_security.html @@ -0,0 +1,34 @@ + + + + + + + code/modules/supply/supply_packs/pack_security.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/supply/supply_packs/pack_security.dm + +

+ + + + + + + + + +
/datum/supply_packs/security/helmetsArmor: Basic
/datum/supply_packs/security/batonWeapons: Basic
/datum/supply_packs/security/armoryArmory stuff
/datum/supply_packs/security/armory/riothelmetsArmor: Specialist
/datum/supply_packs/security/armory/ballisticWeapons: Specialist
/datum/supply_packs/security/armory/epistolcosts 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
/datum/supply_packs/security/armory/mindshieldImplants & etc
/datum/supply_packs/security/officerpackStarter pack for an officer. Contains everything in a locker but backpack (officer already start with one). Convenient way to equip new officer on highpop.
+ + + 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 0000000000000..9fafc2d44a2cb --- /dev/null +++ b/code/modules/supply/supply_packs/pack_shuttle.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/supply/supply_packs/pack_shuttle.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/supply/supply_packs/pack_shuttle.dm + +

+ + + +
/datum/supply_packs/abstract/shuttleA "supply pack" that allows for purchasing a custom shuttle.
/datum/supply_packs/abstract/admin_notify/donationsSimple supply pack for easy admin modification
+ + + diff --git a/code/modules/surgery/abstract_steps.html b/code/modules/surgery/abstract_steps.html new file mode 100644 index 0000000000000..229aea2d0b7ed --- /dev/null +++ b/code/modules/surgery/abstract_steps.html @@ -0,0 +1,54 @@ + + + + + + + code/modules/surgery/abstract_steps.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/surgery/abstract_steps.dm + +

+ + + + + + + +
SURGERY_TOOL_HANDThis 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.
/datum/surgery/intermediateA 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.
/datum/surgery_step/proxyHere'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.
/datum/surgery_step/proxy/open_organProxy surgery step to allow healing bleeding, bones, and burns. +Should be added into surgeries just after the first three standard steps.
/datum/surgery_step/proxy/ibMend IB without healing bones
/datum/surgery_step/proxy/robotics/repair_limbThe robotic equivalent

Define Details

+

SURGERY_TOOL_HAND + + +

+

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:

+
+ + + diff --git a/code/modules/surgery/bones.html b/code/modules/surgery/bones.html new file mode 100644 index 0000000000000..b3a7caf0f18d2 --- /dev/null +++ b/code/modules/surgery/bones.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/surgery/bones.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/surgery/bones.dm + +

+ + +
/datum/surgery/bone_repairSurgery Datums
+ + + diff --git a/code/modules/surgery/organs/augments_arms.html b/code/modules/surgery/organs/augments_arms.html new file mode 100644 index 0000000000000..169c7dd2f2c9a --- /dev/null +++ b/code/modules/surgery/organs/augments_arms.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/surgery/organs/augments_arms.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/surgery/organs/augments_arms.dm + +

+ + + +
/obj/item/organ/internal/cyberimp/arm/janitorial/advancedERT implant, i dont overly expect this to get into the hands of crew
/obj/item/organ/internal/cyberimp/arm/janitorial/advanced/lits for ERT, but still probably a good idea.
+ + + diff --git a/code/modules/surgery/organs/blood.html b/code/modules/surgery/organs/blood.html new file mode 100644 index 0000000000000..24c37f1b58bb6 --- /dev/null +++ b/code/modules/surgery/organs/blood.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/surgery/organs/blood.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/surgery/organs/blood.dm + +

+ + +
EXOTIC_BLEED_MULTIPLIERBLOOD SYSTEM

Define Details

+

EXOTIC_BLEED_MULTIPLIER + + +

+

BLOOD SYSTEM

+ + + 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 0000000000000..87263a8709e2b --- /dev/null +++ b/code/modules/surgery/organs/organ_datums/heart_datum.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/surgery/organs/organ_datums/heart_datum.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/surgery/organs/organ_datums/heart_datum.dm + +

+ + +
/datum/organ/heart/always_beatingA subtype that is always beating. Abductor glands and demon hearts use this.
+ + + diff --git a/code/modules/surgery/organs/organ_external.html b/code/modules/surgery/organs/organ_external.html new file mode 100644 index 0000000000000..5ca6c38eeb35b --- /dev/null +++ b/code/modules/surgery/organs/organ_external.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/surgery/organs/organ_external.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/surgery/organs/organ_external.dm + +

+ + +
/obj/item/organ/externalEXTERNAL ORGANS
+ + + diff --git a/code/modules/surgery/organs/organ_extractor.html b/code/modules/surgery/organs/organ_extractor.html new file mode 100644 index 0000000000000..ddc7827be4d7e --- /dev/null +++ b/code/modules/surgery/organs/organ_extractor.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/surgery/organs/organ_extractor.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/surgery/organs/organ_extractor.dm + +

+ + +
/obj/item/organ_extractor/abductorAdvanced abductor version. Is a lot faster with implanting into others
+ + + 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 0000000000000..5dbf547defe9b --- /dev/null +++ b/code/modules/surgery/organs/subtypes/diona_organs.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/surgery/organs/subtypes/diona_organs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/surgery/organs/subtypes/diona_organs.dm + +

+ + + + + + + +
/obj/item/organ/internal/heart/dionaTurns into a nymph instantly, no transplanting possible.
/obj/item/organ/internal/brain/dionaTurns into a nymph instantly, no transplanting possible.
/obj/item/organ/internal/kidneys/dionaTurns into a nymph instantly, no transplanting possible.
/obj/item/organ/internal/appendix/dionaTurns into a nymph instantly, no transplanting possible.
/obj/item/organ/internal/eyes/dionaTurns into a nymph instantly, no transplanting possible.
/obj/item/organ/internal/liver/dionaTurns into a nymph instantly, no transplanting possible.
+ + + 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 0000000000000..238a1a3ec7ef3 --- /dev/null +++ b/code/modules/surgery/organs/subtypes/standard_organs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/surgery/organs/subtypes/standard_organs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/surgery/organs/subtypes/standard_organs.dm + +

+ + +
/obj/item/organ/external/chestORGAN DEFINES
+ + + 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 0000000000000..dc4b380d1fbd9 --- /dev/null +++ b/code/modules/surgery/organs/subtypes/tajaran_organs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/surgery/organs/subtypes/tajaran_organs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/surgery/organs/subtypes/tajaran_organs.dm + +

+ + +
/obj/item/organ/internal/eyes/tajaran/farwaBeing the lesser form of Tajara, Farwas have an utterly incurable version of their colourblindness.
+ + + 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 0000000000000..1889df785bca9 --- /dev/null +++ b/code/modules/surgery/organs/subtypes/vulpkanin_organs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/surgery/organs/subtypes/vulpkanin_organs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/surgery/organs/subtypes/vulpkanin_organs.dm + +

+ + +
/obj/item/organ/internal/eyes/vulpkanin/wolpinBeing the lesser form of Vulpkanin, Wolpins have an utterly incurable version of their colourblindness.
+ + + diff --git a/code/modules/surgery/organs/vocal_cords.html b/code/modules/surgery/organs/vocal_cords.html new file mode 100644 index 0000000000000..cb0cf22d682e6 --- /dev/null +++ b/code/modules/surgery/organs/vocal_cords.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/surgery/organs/vocal_cords.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/surgery/organs/vocal_cords.dm + +

+ + +
/obj/item/organ/internal/vocal_cordsorgans that are activated through speech with the :x channel
+ + + diff --git a/code/modules/surgery/organs_internal.html b/code/modules/surgery/organs_internal.html new file mode 100644 index 0000000000000..1cf4994648d16 --- /dev/null +++ b/code/modules/surgery/organs_internal.html @@ -0,0 +1,38 @@ + + + + + + + code/modules/surgery/organs_internal.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/surgery/organs_internal.dm + +

+ + + + +
GHETTO_DISINFECT_AMOUNTAmount of units to transfer from the container to the organs during disinfection step.
MITO_REVIVAL_COSTAmount of mito necessary to revive an organ
/datum/surgery_step/proxy/manipulate_organsThe surgery step to trigger this whole situation

Define Details

+

GHETTO_DISINFECT_AMOUNT + + +

+

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

+ + + diff --git a/code/modules/surgery/other.html b/code/modules/surgery/other.html new file mode 100644 index 0000000000000..dde6d7a19fae8 --- /dev/null +++ b/code/modules/surgery/other.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/surgery/other.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/surgery/other.dm + +

+ + +
/datum/surgery_step/fix_dead_tissueDebridement
+ + + diff --git a/code/modules/surgery/surgery.html b/code/modules/surgery/surgery.html new file mode 100644 index 0000000000000..410f72b0177dd --- /dev/null +++ b/code/modules/surgery/surgery.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/surgery/surgery.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/surgery/surgery.dm + +

+ + + + + + +
/datum/surgeryDatum Surgery Helpers
/proc/spread_germs_to_organSpread some nasty germs to an organ.
/proc/spread_germs_by_incisionSpread germs directly from a tool.
+ + + diff --git a/code/modules/surgery/tools.html b/code/modules/surgery/tools.html new file mode 100644 index 0000000000000..8b6f71c888155 --- /dev/null +++ b/code/modules/surgery/tools.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/surgery/tools.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/surgery/tools.dm + +

+ + + + +
/obj/item/scalpel/laserparent type
/obj/item/scalpel/laser/laser1lasers also count as catuarys
/obj/item/scalpel/laser/managersuper tool! Retractor/hemostat
+ + + diff --git a/code/modules/telesci/gps.html b/code/modules/telesci/gps.html new file mode 100644 index 0000000000000..f7e589202a49b --- /dev/null +++ b/code/modules/telesci/gps.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/telesci/gps.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/telesci/gps.dm + +

+ + +
/obj/item/gpsA small item that reports its current location. Has a tag to help distinguish between them.
+ + + diff --git a/code/modules/telesci/rcs.html b/code/modules/telesci/rcs.html new file mode 100644 index 0000000000000..bd0a25105c437 --- /dev/null +++ b/code/modules/telesci/rcs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/telesci/rcs.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/telesci/rcs.dm + +

+ + +
/obj/item/rcsUsed to teleport crates and closets to cargo telepads.
+ + + diff --git a/code/modules/telesci/telepad.html b/code/modules/telesci/telepad.html new file mode 100644 index 0000000000000..bc409d2bedbf3 --- /dev/null +++ b/code/modules/telesci/telepad.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/telesci/telepad.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/telesci/telepad.dm + +

+ + + +
/obj/machinery/telepadSCI TELEPAD
/obj/item/telepad_beaconTELEPAD CALLER
+ + + diff --git a/code/modules/tgs.html b/code/modules/tgs.html new file mode 100644 index 0000000000000..ae04622b84f8b --- /dev/null +++ b/code/modules/tgs.html @@ -0,0 +1,40 @@ + + + + + + + code/modules/tgs/README.md - Space Station 13 + + +
+ Space 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. +
      +
    • v3210 contains the final TGS3 API.
    • +
    • v4 is the legacy DMAPI 4 (Used in TGS 4.0.X versions).
    • +
    • v5 is the current DMAPI version used by TGS >=4.1.
    • +
    +
  • +
  • LICENSE is the MIT license for the DMAPI.
  • +
+

APIs communicate with TGS in two ways. All versions implement TGS -> DM communication using /world/Topic. DM -> TGS communication, called the bridge method, is different for each version.

+ + + diff --git a/code/modules/tgs/core.html b/code/modules/tgs/core.html new file mode 100644 index 0000000000000..0ca0658fb4319 --- /dev/null +++ b/code/modules/tgs/core.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/tgs/core/README.md - Space Station 13 + + +
+ Space 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
  • +
+ + + diff --git a/code/modules/tgs/v3210.html b/code/modules/tgs/v3210.html new file mode 100644 index 0000000000000..cea0fd8896d7c --- /dev/null +++ b/code/modules/tgs/v3210.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/tgs/v3210/README.md - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

DMAPI V3 + +

+ + +

This DMAPI implements bridge using file output which TGS monitors for.

+
    +
  • v3_api.dm contains the bulk of the API code.
  • +
  • v3_commands.dm contains functions relating to /datum/tgs_chat_commands.
  • +
+ + + diff --git a/code/modules/tgs/v4.html b/code/modules/tgs/v4.html new file mode 100644 index 0000000000000..28aab75a1ae06 --- /dev/null +++ b/code/modules/tgs/v4.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/tgs/v4/README.md - Space Station 13 + + +
+ Space 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_api.dm contains the bulk of the API code.
  • +
  • v4_commands.dm contains functions relating to /datum/tgs_chat_commands.
  • +
+ + + diff --git a/code/modules/tgs/v5.html b/code/modules/tgs/v5.html new file mode 100644 index 0000000000000..c19e21bd2f607 --- /dev/null +++ b/code/modules/tgs/v5.html @@ -0,0 +1,38 @@ + + + + + + + code/modules/tgs/v5/README.md - Space Station 13 + + +
+ Space 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.
  • +
  • _v5_defines.dm contains constant definitions.
  • +
  • v5_api.dm contains the bulk of the API code.
  • +
  • v5_bridge.dm contains functions related to making bridge requests.
  • +
  • v5_chunking.dm contains common function for splitting large raw data sets into chunks BYOND can natively process.
  • +
  • v5_commands.dm contains functions relating to /datum/tgs_chat_commands.
  • +
  • v5_serializers.dm contains function to help convert interop /datums into a JSON encodable list() format.
  • +
  • v5_topic.dm contains functions related to processing topic requests.
  • +
  • v5_undefs.dm Undoes the work of _defines.dm.
  • +
+ + + diff --git a/code/modules/tgui/external.html b/code/modules/tgui/external.html new file mode 100644 index 0000000000000..445cfe78edc0e --- /dev/null +++ b/code/modules/tgui/external.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/external.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/external.dm + +

+ + + +
/proc/tgui_TopicMiddleware for /client/Topic.
+ + + 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 0000000000000..515bc26926ae0 --- /dev/null +++ b/code/modules/tgui/modules/ghost_hud_panel.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/tgui/modules/ghost_hud_panel.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/modules/ghost_hud_panel.dm + +

+ + +
/datum/ui_module/ghost_hud_panelAllows ghosts to view a TGUI window which contains toggles for all HUD types available to them.
+ + + diff --git a/code/modules/tgui/plugins/modal.html b/code/modules/tgui/plugins/modal.html new file mode 100644 index 0000000000000..aea0b05e192f9 --- /dev/null +++ b/code/modules/tgui/plugins/modal.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/tgui/plugins/modal.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/plugins/modal.dm + +

+ + + + + + +
/datum/ui_modalModal datum (contains base information for a modal)
/datum/ui_modal/inputInput modal - has a text entry that can be used to enter an answer
/datum/ui_modal/input/choiceChoice modal - has a dropdown menu that can be used to select an answer
/datum/ui_modal/input/bentoBento modal - Similar to choice, it displays the choices in a grid of images
/datum/ui_modal/booleanBoolean modal - has yes/no buttons that do different actions depending on which is pressed
+ + + diff --git a/code/modules/tgui/plugins/tgui_login.html b/code/modules/tgui/plugins/tgui_login.html new file mode 100644 index 0000000000000..d657f706a4706 --- /dev/null +++ b/code/modules/tgui/plugins/tgui_login.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/tgui/plugins/tgui_login.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/plugins/tgui_login.dm + +

+ + +
/datum/ui_loginLogin state (there should be only one for one datum)
+ + + diff --git a/code/modules/tgui/states/always.html b/code/modules/tgui/states/always.html new file mode 100644 index 0000000000000..df975ccdafb6c --- /dev/null +++ b/code/modules/tgui/states/always.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/always.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/states/always.dm + +

+ + +

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

+ + + diff --git a/code/modules/tgui/states/conscious.html b/code/modules/tgui/states/conscious.html new file mode 100644 index 0000000000000..8bd0f85d9d8eb --- /dev/null +++ b/code/modules/tgui/states/conscious.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/conscious.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/states/conscious.dm + +

+ + +

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

+ + + diff --git a/code/modules/tgui/states/contained.html b/code/modules/tgui/states/contained.html new file mode 100644 index 0000000000000..feef3f4c12bd4 --- /dev/null +++ b/code/modules/tgui/states/contained.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/contained.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/states/contained.dm + +

+ + +

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

+ + + diff --git a/code/modules/tgui/states/deep_inventory.html b/code/modules/tgui/states/deep_inventory.html new file mode 100644 index 0000000000000..5244b4f7c18ce --- /dev/null +++ b/code/modules/tgui/states/deep_inventory.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/deep_inventory.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/states/deep_inventory.dm + +

+ + +

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

+ + + diff --git a/code/modules/tgui/states/hands.html b/code/modules/tgui/states/hands.html new file mode 100644 index 0000000000000..e27bae9a2ab74 --- /dev/null +++ b/code/modules/tgui/states/hands.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/hands.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/states/hands.dm + +

+ + +

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

+ + + diff --git a/code/modules/tgui/states/human_adjacent.html b/code/modules/tgui/states/human_adjacent.html new file mode 100644 index 0000000000000..e6c16380e72a0 --- /dev/null +++ b/code/modules/tgui/states/human_adjacent.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/human_adjacent.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/states/human_adjacent.dm + +

+ + +

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

+ + + diff --git a/code/modules/tgui/states/not_incapacitated.html b/code/modules/tgui/states/not_incapacitated.html new file mode 100644 index 0000000000000..b5eca4ae58b6d --- /dev/null +++ b/code/modules/tgui/states/not_incapacitated.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/not_incapacitated.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/states/not_incapacitated.dm + +

+ + +

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

+ + + diff --git a/code/modules/tgui/states/notcontained.html b/code/modules/tgui/states/notcontained.html new file mode 100644 index 0000000000000..feec236eacd27 --- /dev/null +++ b/code/modules/tgui/states/notcontained.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/notcontained.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/states/notcontained.dm + +

+ + +

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

+ + + diff --git a/code/modules/tgui/states/physical.html b/code/modules/tgui/states/physical.html new file mode 100644 index 0000000000000..869885618428c --- /dev/null +++ b/code/modules/tgui/states/physical.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/physical.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/states/physical.dm + +

+ + +

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

+ + + diff --git a/code/modules/tgui/states/self.html b/code/modules/tgui/states/self.html new file mode 100644 index 0000000000000..fb53e32114ab8 --- /dev/null +++ b/code/modules/tgui/states/self.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/self.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/states/self.dm + +

+ + +

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

+ + + diff --git a/code/modules/tgui/tgui_datum.html b/code/modules/tgui/tgui_datum.html new file mode 100644 index 0000000000000..ea961ed460c4e --- /dev/null +++ b/code/modules/tgui/tgui_datum.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/tgui_datum.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/tgui_datum.dm + +

+ + +
/datum/tguiCopyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT
+ + + 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 0000000000000..c5e4c14466256 --- /dev/null +++ b/code/modules/tgui/tgui_input/alert_input.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/tgui/tgui_input/alert_input.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/tgui_input/alert_input.dm + +

+ + + + +
/proc/tgui_alertCreates a TGUI alert window and returns the user's response.
/datum/tgui_alertDatum used for instantiating and using a TGUI-controlled modal that prompts the user with +a message and has buttons for responses.
+ + + 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 0000000000000..e8a251367136a --- /dev/null +++ b/code/modules/tgui/tgui_input/list_input.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/tgui/tgui_input/list_input.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/tgui_input/list_input.dm + +

+ + + + +
/proc/tgui_input_listCreates a TGUI input list window and returns the user's response.
/datum/tgui_list_inputClient does NOT have tgui_input on: Returns regular input
+ + + 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 0000000000000..e60497b8811af --- /dev/null +++ b/code/modules/tgui/tgui_input/number_input.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/tgui/tgui_input/number_input.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/tgui_input/number_input.dm + +

+ + + + +
/proc/tgui_input_numberCreates a TGUI window with a number input. Returns the user's response as num | null.
/datum/tgui_input_numberDatum used for instantiating and using a TGUI-controlled number input that prompts the user with +a message and has an input for number entry.
+ + + 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 0000000000000..529a6e24744b3 --- /dev/null +++ b/code/modules/tgui/tgui_input/text_input.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/tgui/tgui_input/text_input.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/tgui_input/text_input.dm + +

+ + + + +
/proc/tgui_input_textCreates a TGUI window with a text input. Returns the user's response.
/datum/tgui_input_texttgui_input_text
+ + + diff --git a/code/modules/tgui/tgui_panel.html b/code/modules/tgui/tgui_panel.html new file mode 100644 index 0000000000000..9a1ba68eebbbf --- /dev/null +++ b/code/modules/tgui/tgui_panel.html @@ -0,0 +1,46 @@ + + + + + + + code/modules/tgui/tgui_panel/README.md - Space Station 13 + + +
+ Space 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:

+
{
+	"sequence": 0,
+	"content": {
+		"type": ". . .", // ?optional
+		"text": ". . .", // ?optional !atleast-one
+		"html": ". . .", // ?optional !atleast-one
+		"avoidHighlighting": 0 // ?optional
+	},
+}
+
+Reliability +

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.

+ + + diff --git a/code/modules/tgui/tgui_panel/telemetry.html b/code/modules/tgui/tgui_panel/telemetry.html new file mode 100644 index 0000000000000..d85440a873e04 --- /dev/null +++ b/code/modules/tgui/tgui_panel/telemetry.html @@ -0,0 +1,41 @@ + + + + + + + code/modules/tgui/tgui_panel/telemetry.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Define Details
+
+

code/modules/tgui/tgui_panel/telemetry.dm + +

+ + + +
TGUI_TELEMETRY_MAX_CONNECTIONSCopyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT
TGUI_TELEMETRY_RESPONSE_WINDOWMaximum 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.

+ + + 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 0000000000000..a228730083d9a --- /dev/null +++ b/code/modules/tgui/tgui_panel/tgui_panel.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/tgui_panel/tgui_panel.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/tgui_panel/tgui_panel.dm + +

+ + +
/datum/tgui_panelCopyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT
+ + + 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 0000000000000..4a3ede1d21666 --- /dev/null +++ b/code/modules/tgui/tgui_panel/tgui_panel_message.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/tgui_panel/tgui_panel_message.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/tgui_panel/tgui_panel_message.dm + +

+ + + +
/proc/message_to_htmlMessage-related procs
+ + + 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 0000000000000..f829a0bc020bd --- /dev/null +++ b/code/modules/tgui/tgui_panel/to_chat.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/tgui/tgui_panel/to_chat.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/tgui_panel/to_chat.dm + +

+ + + + + + +

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

/proc/to_chat_immediateCircumvents the message queue and sends the message to the recipient (target) as soon as possible. +trailing_newline, confidential, and handle_whitespace currently have no effect, please fix this in the future or remove the arguments to lower cache!
/proc/to_chatSends the message to the recipient (target).
+ + + diff --git a/code/modules/tgui/tgui_window.html b/code/modules/tgui/tgui_window.html new file mode 100644 index 0000000000000..4cc836745ae18 --- /dev/null +++ b/code/modules/tgui/tgui_window.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/tgui_window.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui/tgui_window.dm + +

+ + +
/datum/tgui_windowCopyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT
+ + + 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 0000000000000..6125573c29c5b --- /dev/null +++ b/code/modules/tgui_input/say_modal/tgui_say_modal.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/tgui_input/say_modal/tgui_say_modal.dm - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

code/modules/tgui_input/say_modal/tgui_say_modal.dm + +

+ + +
/datum/tgui_sayThe tgui say modal. This initializes an input window which hides until +the user presses one of the speech hotkeys. Once something is entered, it will +delegate the speech to the proper channel.
+ + + diff --git a/datum.html b/datum.html new file mode 100644 index 0000000000000..de1b246c992d5 --- /dev/null +++ b/datum.html @@ -0,0 +1,543 @@ + + + + + + + /datum - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

datum + + + +

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

Vars

cached_refA 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
isprocessingUsed by SSprocessing
status_traitsStatus traits attached to this datum
tgui_shared_statesglobal

Procs

CanProcCallProc to check if a datum allows proc calls on it
GetComponentReturn any component assigned to this datum of the given type
GetComponentsGet all components of a given type that are attached to this datum
GetExactComponentReturn any component assigned to this datum of the exact given type
LoadComponentGet existing component of type, or create it and return a reference to it
RegisterSignalRegister to listen for a signal from the passed in target
RegisterSignalsRegisters multiple signals to the same proc.
TakeComponentTransfer this component to another parent
TransferComponentTransfer a single component from the source datum, to the target.
TransferComponentsTransfer all components to target
UIDGets or creates the UID of a datum
UnregisterSignalStop listening to a given signal from target
_AddComponentCreates an instance of new_type in the datum and attaches to it as parent
_AddElementFinds the singleton for the element type given and attaches it to src
_RemoveElementFinds the singleton for the element type given and detaches it from src +You only need additional arguments beyond the type if you're using ELEMENT_BESPOKE
_SendSignalInternal proc to handle most all of the signaling procedure
p_theyThese are generally cheaper than looping contents so they go first
signal_qdel
string_assoc_listCaches associative lists with non-numeric stringify-able index keys and stringify-able values (text/typepath -> text/path/number).
ui_actpublic
ui_assetspublic
ui_closepublic
ui_datapublic
ui_hostprivate
ui_interactExternal tgui definitions, such as src_object APIs.
ui_modal_actCall this from a proc that is called in ui_act() to process modal actions
ui_modal_answerCalls the source's currently assigned modal's (if there is one) on_answer() proc. Private.
ui_modal_bentoOpens a bento input UI modal
ui_modal_booleanOpens a yes/no UI modal
ui_modal_choiceOpens a dropdown input UI modal
ui_modal_clearClears the current modal for a given datum
ui_modal_dataCall this from ui_data() to return modal information if needed
ui_modal_inputOpens a text input UI modal
ui_modal_messageOpens a message UI modal
ui_modal_newRegisters a given modal to a source. Private.
ui_modal_preprocess_answerPasses an answer from JS through the modal's proc.
ui_stateprivate
ui_static_datapublic
ui_statusBase state and helpers for states. Just does some sanity checks, +implement a proper state for in-depth checks.
update_static_datapublic
+

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

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

GetComponent +

+

Return any component assigned to this datum of the given type

+

This will throw an error if it's possible to have more than one component of that type on the parent

+

Arguments:

+

GetComponents +

+

Get all components of a given type that are attached to this datum

+

Arguments:

+

GetExactComponent +

+

Return any component assigned to this datum of the exact given type

+

This will throw an error if it's possible to have more than one component of that type on the parent

+

Arguments:

+

LoadComponent +

+

Get existing component of type, or create it and return a reference to it

+

Use this if the item needs to exist at the time of this call, but may not have been created before now

+

Arguments:

+

RegisterSignal +

+

Register to listen for a signal from the passed in target

+

This sets up a listening relationship such that when the target object emits a signal +the source datum this proc is called upon, will receive a callback to the given proctype +Return values from procs registered must be a bitfield

+

Arguments:

+

RegisterSignals +

+

Registers multiple signals to the same proc.

TakeComponent +

+

Transfer this component to another parent

+

Component is taken from source datum

+

Arguments:

+

TransferComponent +

+

Transfer a single component from the source datum, to the target.

+

Arguments:

+

TransferComponents +

+

Transfer all components to target

+

All components from source datum are taken

+

Arguments:

+

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:

+

_AddComponent +

+

Creates an instance of new_type in the datum and attaches to it as parent

+

Sends the COMSIG_COMPONENT_ADDED signal to the datum

+

Returns the component that was created. Or the old component in a dupe situation where COMPONENT_DUPE_UNIQUE was set

+

If this tries to add a component to an incompatible type, the component will be deleted and the result will be null. This is very unperformant, try not to do it

+

Properly handles duplicate situations based on the dupe_mode var

_AddElement +

+

Finds the singleton for the element type given and attaches it to src

_RemoveElement +

+

Finds the singleton for the element type given and detaches it from src +You only need additional arguments beyond the type if you're using ELEMENT_BESPOKE

_SendSignal +

+

Internal proc to handle most all of the signaling procedure

+

Will runtime if used on datums with an empty component list

+

Use the SEND_SIGNAL define instead

p_they +

+

These are generally cheaper than looping contents so they go first

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:

+

ui_modal_answer +

+

Calls the source's currently assigned modal's (if there is one) on_answer() proc. Private.

+

Arguments:

+

ui_modal_bento +

+

Opens a bento input UI modal

+

Internally checks if the answer is in the list of choices. +Arguments:

+

ui_modal_boolean +

+

Opens a yes/no UI modal

+

Arguments:

+

ui_modal_choice +

+

Opens a dropdown input UI modal

+

Internally checks if the answer is in the list of choices. +Arguments:

+

ui_modal_clear +

+

Clears the current modal for a given datum

+

Arguments:

+

ui_modal_data +

+

Call this from ui_data() to return modal information if needed

+

Arguments:

+

ui_modal_input +

+

Opens a text input UI modal

+

Arguments:

+

ui_modal_message +

+

Opens a message UI modal

+

Arguments:

+

ui_modal_new +

+

Registers a given modal to a source. Private.

+

Arguments:

+

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:

+

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

+ + + diff --git a/datum/action.html b/datum/action.html new file mode 100644 index 0000000000000..04f8e0dc0a2ac --- /dev/null +++ b/datum/action.html @@ -0,0 +1,50 @@ + + + + + + + /datum/action - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

action + + + +

+ + + + +

Vars

default_button_positionWhere any buttons we create should be by default. Accepts screen_loc and location defines
show_to_observersWhether or not this will be shown to observers
viewersMap of huds viewing a button with our action -> their button
+

Var Details

default_button_position + + + + +

+

Where any buttons we create should be by default. Accepts screen_loc and location defines

show_to_observers + + + + +

+

Whether or not this will be shown to observers

viewers + + + + +

+

Map of huds viewing a button with our action -> their button

+ + + diff --git a/datum/action/changeling.html b/datum/action/changeling.html new file mode 100644 index 0000000000000..d5d955d06f3f7 --- /dev/null +++ b/datum/action/changeling.html @@ -0,0 +1,106 @@ + + + + + + + /datum/action/changeling - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

changeling + + + +

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

Vars

activeIf this power is active or not. Used for toggleable abilities.
bypass_fake_deathIf this power can be used while the changeling has the TRAIT_FAKEDEATH trait.
categoryDatum path used to determine the location and name of the power in changeling evolution menu UI
chemical_costChemical cost to use this power.
clingA reference to the changeling's changeling antag datum.
dna_costThe cost of purchasing the power.
helptextA description of what the power does.
power_typeDetermines whether the power is always given to the changeling or if it must be purchased.
req_dnaThe amount of victims the changeling needs to absorb before they can use this power. Changelings always start with a value of 1.
req_humanIf you need to be in human form to activate this power.
req_statWhat 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.

+ + + diff --git a/datum/action/changeling/biodegrade.html b/datum/action/changeling/biodegrade.html new file mode 100644 index 0000000000000..d4f0cd602a005 --- /dev/null +++ b/datum/action/changeling/biodegrade.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/changeling/biodegrade - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

biodegrade + + + +

+ + + +

Vars

current_handCurrent hand given to human, null is we did not give hand, object if hand is given
handType of acid hand we give to person
+

Var Details

current_hand + + + + +

+

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

+ + + diff --git a/datum/action/changeling/environmental_adaptation.html b/datum/action/changeling/environmental_adaptation.html new file mode 100644 index 0000000000000..97871b89a1790 --- /dev/null +++ b/datum/action/changeling/environmental_adaptation.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/changeling/environmental_adaptation - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

environmental_adaptation + + + +

+ + + +

Vars

is_activeis ability active (we are invisible)?
recharge_slowdownHow 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

+ + + diff --git a/datum/action/changeling/evolution_menu.html b/datum/action/changeling/evolution_menu.html new file mode 100644 index 0000000000000..e38e356104eb1 --- /dev/null +++ b/datum/action/changeling/evolution_menu.html @@ -0,0 +1,50 @@ + + + + + + + /datum/action/changeling/evolution_menu - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

evolution_menu + + + +

+ + + + +

Vars

ability_tabsA 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_abilitiesA list containing the typepaths of bought changeling abilities. For use with the UI.
view_modeWhich 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.

+ + + diff --git a/datum/action/changeling/spiders.html b/datum/action/changeling/spiders.html new file mode 100644 index 0000000000000..0c47e9cc86118 --- /dev/null +++ b/datum/action/changeling/spiders.html @@ -0,0 +1,50 @@ + + + + + + + /datum/action/changeling/spiders - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

spiders + + + +

+ + + + +

Vars

is_operatingChecks if changeling is already spawning a spider
spider_counterThis var keeps track of the changeling's spider count

Procs

sting_actionMakes 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.

+ + + diff --git a/datum/action/changeling/sting.html b/datum/action/changeling/sting.html new file mode 100644 index 0000000000000..834452eae9475 --- /dev/null +++ b/datum/action/changeling/sting.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/changeling/sting - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

sting + + + +

+ + +

Vars

click_overrideA 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.

+ + + diff --git a/datum/action/changeling/weapon.html b/datum/action/changeling/weapon.html new file mode 100644 index 0000000000000..bd36e9e8a9634 --- /dev/null +++ b/datum/action/changeling/weapon.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/changeling/weapon - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

weapon + + + +

+ + +

Vars

recharge_slowdownHow 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?

+ + + diff --git a/datum/action/guardian/reset_guardian.html b/datum/action/guardian/reset_guardian.html new file mode 100644 index 0000000000000..ad7b75e69720d --- /dev/null +++ b/datum/action/guardian/reset_guardian.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/guardian/reset_guardian - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

Reset guardian action + + + +

+ +

Allows the guardian host to exchange their guardian's player for another.

+

Procs

reset_cooldownTakes 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.

+ + + diff --git a/datum/action/innate/cocoon.html b/datum/action/innate/cocoon.html new file mode 100644 index 0000000000000..d6e8781611e6e --- /dev/null +++ b/datum/action/innate/cocoon.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/innate/cocoon - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

cocoon + + + +

+ + +

Procs

emergeRemoves moth from cocoon, restores burnt wings

Proc Details

emerge +

+

Removes moth from cocoon, restores burnt wings

+ + + diff --git a/datum/action/innate/cult/blood_spell.html b/datum/action/innate/cult/blood_spell.html new file mode 100644 index 0000000000000..75abcca301adb --- /dev/null +++ b/datum/action/innate/cult/blood_spell.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/innate/cult/blood_spell - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

blood_spell + + + +

+ +

The next generation of talismans, handles storage/creation of blood magic

+

Vars

positionedHave we already been positioned into our starting location?
+

Var Details

positioned + + + + +

+

Have we already been positioned into our starting location?

+ + + diff --git a/datum/action/innate/elite_attack.html b/datum/action/innate/elite_attack.html new file mode 100644 index 0000000000000..abdc231ebda16 --- /dev/null +++ b/datum/action/innate/elite_attack.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/innate/elite_attack - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

elite_attack + + + +

+ + + +

Vars

chosen_attack_numThe internal attack ID for the elite's OpenFire() proc to use
chosen_messageThe 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

+ + + diff --git a/datum/action/item_action/agent_box.html b/datum/action/item_action/agent_box.html new file mode 100644 index 0000000000000..12752fdfdbe47 --- /dev/null +++ b/datum/action/item_action/agent_box.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/item_action/agent_box - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

agent_box + + + +

+ + +

Vars

on_cooldownIf TRUE, the box can't be deployed
+

Var Details

on_cooldown + + + + +

+

If TRUE, the box can't be deployed

+ + + diff --git a/datum/action/item_action/mod/activate.html b/datum/action/item_action/mod/activate.html new file mode 100644 index 0000000000000..e7a4b927811df --- /dev/null +++ b/datum/action/item_action/mod/activate.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/item_action/mod/activate - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

activate + + + +

+ + + +

Vars

readyFirst time clicking this will set it to TRUE, second time will activate it.

Procs

reset_readyResets 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.

+ + + 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 0000000000000..17665c71b8316 --- /dev/null +++ b/datum/action/item_action/mod/pinned_module.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/item_action/mod/pinned_module - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

pinned_module + + + +

+ + + +

Vars

moduleModule we are linked to.
pinner_uidA ref to the mob we are pinned to.
+

Var Details

module + + + + +

+

Module we are linked to.

pinner_uid + + + + +

+

A ref to the mob we are pinned to.

+ + + diff --git a/datum/action/item_action/mod_recall.html b/datum/action/item_action/mod_recall.html new file mode 100644 index 0000000000000..54edc1273259a --- /dev/null +++ b/datum/action/item_action/mod_recall.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/item_action/mod_recall - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

mod_recall + + + +

+ + +

Vars

recall_cooldownThe cooldown for the recall.
+

Var Details

recall_cooldown + + + + +

+

The cooldown for the recall.

+ + + 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 0000000000000..caeaaffc58bc5 --- /dev/null +++ b/datum/action/item_action/organ_action/toggle/sensory_enhancer.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/item_action/organ_action/toggle/sensory_enhancer - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

sensory_enhancer + + + +

+ + +

Vars

injection_amountKeeps 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

+ + + diff --git a/datum/action_group.html b/datum/action_group.html new file mode 100644 index 0000000000000..949b642a939eb --- /dev/null +++ b/datum/action_group.html @@ -0,0 +1,133 @@ + + + + + + + /datum/action_group - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

action_group + + + +

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

Vars

actionsThe action buttons we're managing
column_maxMax amount of buttons we can have per row +Indexes at 1
landingOur landing screen object
locationThe screen location we go by
max_rowsHow many rows of actions we can have at max before we just stop hiding +Indexes at 1
north_offsetThe initial vertical offset of our action buttons
ownerThe hud we're owned by
pixel_horiz_offsetThe pixel horizontal offset of our action buttons
pixel_north_offsetThe pixel vertical offset of our action buttons
row_offsetHow far "ahead" of the first row we start. Lets us "scroll" our rows +Indexes at 1

Procs

ButtonNumberToScreenCoordsAccepts a number represeting our position in the group, indexes at 0 to make the math nicer
clear_landingClears any landing objects we may currently have
generate_landingGenerates a landing object that can be dropped on to join this group
sizeReturns 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

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

+ + + diff --git a/datum/admins.html b/datum/admins.html new file mode 100644 index 0000000000000..26bbd210dca47 --- /dev/null +++ b/datum/admins.html @@ -0,0 +1,125 @@ + + + + + + + /datum/admins - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

admins + + + +

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

Vars

href_tokenUnique-to-session randomly generated token given to each admin to help add detail to logs on admin interactions with hrefs
marked_datumOur currently linked marked datum
rightsBitflag containing the current rights this admin holder is assigned to
team_switch_tab_indexOur index into GLOB.antagonist_teams, so that admins can have pretty tabs in the Check Teams menu.

Procs

ccbdb_lookup_callbackCCBDB Lookup Callback
check_teamsOpens a window which lists the teams for the round.
create_ccbdb_lookupCCBDB Lookup Initiator
list_teamsReturns HTML content for the "check teams" window.
modify_traitsAllow admin to add or remove traits of datum
restartadmins2.dm merge
show_player_panelPanels
station_traits_panelOpens the station traits admin panel
+

Var Details

href_token + + + + +

+

Unique-to-session randomly generated token given to each admin to help add detail to logs on admin interactions with hrefs

marked_datum + + + + +

+

Our currently linked marked datum

rights + + + + +

+

Bitflag containing the current rights this admin holder is assigned to

team_switch_tab_index + + + + +

+

Our index into GLOB.antagonist_teams, so that admins can have pretty tabs in the Check Teams menu.

Proc Details

ccbdb_lookup_callback +

+

CCBDB Lookup Callback

+

Callback assigned in /datum/admins/proc/create_ccbdb_lookup for async operations without a sleep()

+

Arguments:

+

check_teams +

+

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:

+

list_teams +

+

Returns HTML content for the "check teams" window.

modify_traits +

+

Allow admin to add or remove traits of datum

restart +

+

admins2.dm merge

show_player_panel +

+

Panels

station_traits_panel +

+

Opens the station traits admin panel

+ + + diff --git a/datum/ai_laws.html b/datum/ai_laws.html new file mode 100644 index 0000000000000..f67d0b80605d0 --- /dev/null +++ b/datum/ai_laws.html @@ -0,0 +1,72 @@ + + + + + + + /datum/ai_laws - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

ai_laws + + + +

+ + + + + + + +

Vars

unique_aiIs this lawset used by the unique ai trait?

Procs

clear_zeroth_lawsClear Laws
delete_lawRemove Laws
get_state_lawStating Laws
set_state_lawSet
set_zeroth_lawAdd Laws
+

Var Details

unique_ai + + + + +

+

Is this lawset used by the unique ai trait?

Proc Details

clear_zeroth_laws +

+

Clear Laws

delete_law +

+

Remove Laws

get_state_law +

+

Stating Laws

+

Get

set_state_law +

+

Set

set_zeroth_law +

+

Add Laws

+ + + diff --git a/datum/announcement_configuration.html b/datum/announcement_configuration.html new file mode 100644 index 0000000000000..4dbeebe295fd6 --- /dev/null +++ b/datum/announcement_configuration.html @@ -0,0 +1,66 @@ + + + + + + + /datum/announcement_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

announcement_configuration + + + +

+ + + + + + +

Vars

add_logWhether or not to log the announcement when made.
global_announcementGlobal announcements are received regardless of being in range of a +radio, unless you're in the lobby, to prevent metagaming.
log_nameThe name used when describing the announcement type in logs.
soundWhat sound to play when the announcement is made.
styleA CSS class name.
+

Var Details

add_log + + + + +

+

Whether or not to log the announcement when made.

global_announcement + + + + +

+

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.

+ + + diff --git a/datum/announcer.html b/datum/announcer.html new file mode 100644 index 0000000000000..f0fdd7e277df7 --- /dev/null +++ b/datum/announcer.html @@ -0,0 +1,36 @@ + + + + + + + /datum/announcer - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

announcer + + + +

+ + +

Vars

authorThe name used to sign off on announcements.
+

Var Details

author + + + + +

+

The name used to sign off on announcements.

+ + + diff --git a/datum/antagonist.html b/datum/antagonist.html new file mode 100644 index 0000000000000..d1365ae5c6814 --- /dev/null +++ b/datum/antagonist.html @@ -0,0 +1,404 @@ + + + + + + + /datum/antagonist - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

antagonist + + + +

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

Vars

antag_datum_blacklistList of other antag datum types that this type can't coexist with.
antag_hud_nameHolds the name of the hud's icon in the .dmi files, i.e "hudtraitor", "hudvampire", etc.
antag_hud_typeHolds the type of antagonist hud this datum will get, i.e. ANTAG_HUD_TRAITOR, ANTAG_HUD_VAMPIRE, etc.
antag_memoryAntagonist 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_fontIntro Blurb Font
blurb_text_colorIntro Blurbs text colour
blurb_text_outline_widthIntro Blurbs outline width
clown_gain_textIf the owner is a clown, this text will be displayed to them when they gain this datum.
clown_removal_textIf the owner is a clown, this text will be displayed to them when they lose this datum.
clown_text_span_classThe spawn class to use for gain/removal clown text
give_objectivesShould we automatically give this antagonist objectives upon them gaining the datum?
job_rankUsed to determine if the player jobbanned from this role. Things like SPECIAL_ROLE_TRAITOR should go here to determine the role.
nameThe name of the antagonist.
objective_holderList of objectives connected to this datum.
ownerMind that owns this datum.
replace_bannedShould we replace the role-banned player with a ghost?
roundend_categorySection of roundend report, datums with same category will be displayed together, also default header for the section.
show_in_roundendSet to false to hide the antagonists from roundend report.
silentShould the owner mob get a greeting text? Determines whether or not the greet() proc is called.
special_roleThe special role that will be applied to the owner's special_role var. i.e. SPECIAL_ROLE_TRAITOR, SPECIAL_ROLE_VAMPIRE.
wiki_page_nameThe 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]

Procs

add_antag_hudAdds this datum's antag hud to antag_mob.
add_antag_objectiveCreate and add an objective of the given type.
add_owner_to_gamemodeAdds the owner to their respective gamemode's list. For example SSticker.mode.traitors |= owner.
apply_innate_effectsThis handles the application of antag huds/special abilities.
can_be_ownedLoops through the owner's antag_datums list and determines if this one is blacklisted by any others.
create_teamCreates a new antagonist team.
custom_blurbThis is the custom blurb message used on login for an antagonist.
detach_from_ownerRemoves 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.
farewellDisplays 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!"
finalize_antagGive the antag any final information or items.
get_antag_objectivesGet all of this antagonist's objectives, including from the team.
get_teamReturns the team the antagonist belongs to, if any.
give_objectivesGive the antagonist their objectives. Base proc, override as needed.
greetDisplays a message and their objectives to the antag mob after the datum is added to them, i.e. "Greetings you are a traitor! etc.
handle_clown_mutationHandles adding and removing the clumsy mutation from clown antags.
has_antag_objectivesDo we have any objectives at all, including from a team. +Faster than get_antag_objectives()
is_bannedChecks if the person trying to receive this datum is role banned from it.
on_body_transferRemoves antagonist datum effects from the old body and applies it to the new one.
on_gainProc called when the datum is given to a mind.
remove_antag_hudRemoves this datum's antag hud from antag_mob.
remove_antag_objectiveComplement to add_antag_objective that removes the objective. +Currently unused.
remove_innate_effectsThis handles the removal of antag huds/special abilities.
remove_owner_from_gamemodeRemoves the owner from their respective gamemode's list. For example SSticker.mode.traitors -= owner.
replace_banned_playerAttempts to replace the role banned antag with a ghost player.
restore_last_hud_and_roleRe-sets the antag hud and special_role of the owner to that of the previous antag datum they had before this one was added.
+

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

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

give_objectives + + + + +

+

Should we automatically give this antagonist objectives upon them gaining the datum?

job_rank + + + + +

+

Used to determine if the player jobbanned from this role. Things like SPECIAL_ROLE_TRAITOR should go here to determine the role.

name + + + + +

+

The name of the antagonist.

objective_holder + + + + +

+

List of objectives connected to this datum.

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:

+

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:

+

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:

+

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.

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:

+

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:

+

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:

+

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:

+

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.

+ + + diff --git a/datum/antagonist/changeling.html b/datum/antagonist/changeling.html new file mode 100644 index 0000000000000..12afa6f945b63 --- /dev/null +++ b/datum/antagonist/changeling.html @@ -0,0 +1,331 @@ + + + + + + + /datum/antagonist/changeling - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

changeling + + + +

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

Vars

absorbed_countNumber of victims the changeling has absorbed.
absorbed_dnaList of /datum/dna which have been absorbed through the DNA sting or absorb power.
absorbed_languagesList of /datum/language UIDs, learned from absorbed victims.
acquired_powersA list of instanced /datum/action/changeling the changeling has aquired.
can_respecIf the changeling can respec their purchased abilities.
changelingIDThe changeling's identifier when speaking in the hivemind, i.e. "Mr. Delta 123".
chem_chargesThe current amount of chemicals the changeling has stored.
chem_recharge_rateThe amount of chemicals that recharges per Life() call.
chem_recharge_slowdownAmount of chemical recharge slowdown, calculated as chem_recharge_rate - chem_recharge_slowdown
chem_storageThe total amount of chemicals able to be stored.
chosen_stingThe current sting power the changeling has active.
dna_maxHow many total DNA strands the changeling can store for transformation.
genetic_pointsThe amount of points available to purchase changeling abilities.
innate_powersA list of /datum/action/changeling typepaths with a power_type of CHANGELING_INNATE_POWER.
is_absorbingIf the changeling is in the process of absorbing someone.
mimicingA name that will display in place of the changeling's real name when speaking.
protected_dnaList of /datum/dna which are not lost when the changeling has no more room for DNA.
purchaseable_powersA list of /datum/action/changeling typepaths with a power_type of CHANGELING_PURCHASABLE_POWER.
regeneratingIf the changeling is in the process of regenerating from their fake death.
sting_rangeThe range of changeling stings.

Procs

absorb_dnaAbsorb the the target's DNA and their languages.
add_new_languagesStore the languages from the new_languages list into the absorbed_languages list. Teaches the changeling the new languages.
can_absorb_dnaReturns TRUE if the changeling can absorb the target mob's DNA.
get_dnaGets a /datum/dna that matches the passed in tDNA. Also used as a check to see if the changeling has this DNA already stored.
get_powers_of_typeGets a list of changeling action typepaths based on the passed in power_type.
give_powerGives the changeling the passed in power. Subtracts the cost of the power from our genetic points.
remove_changeling_powersRemoves a changeling's abilities.
remove_specific_powerRemoves all power_type abilities that the changeling has. Refunds the cost of the power from our genetic points.
remove_unnatural_languagesRemoves all the languages the mob L has absorbed throughout their life as a changeling and should no longer have.
respecResets 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_dnaPrompt the changeling with a list of names associated with their stored DNA. Return a /datum/dna based on the name chosen.
store_dnaStore the target DNA. If the DNA belongs to one of the changeling's "escape with identity" objectives, make the DNA protected.
trim_dnaClears the most "stale" DNA from the absorbed_dna list.
try_respecRespec the changeling's powers after first checking if they're able to respec.
update_languagesTeach the changeling every language in the absorbed_language list. Already known languages will be ignored.
using_stale_dnaDetermines if the changeling's current DNA is stale.
+

Var Details

absorbed_count + + + + +

+

Number of victims the changeling has absorbed.

absorbed_dna + + + + +

+

List of /datum/dna which have been absorbed through the DNA sting or absorb power.

absorbed_languages + + + + +

+

List of /datum/language UIDs, learned from absorbed victims.

acquired_powers + + + + +

+

A list of instanced /datum/action/changeling the changeling has aquired.

can_respec + + + + +

+

If the changeling can respec their purchased abilities.

changelingID + + + + +

+

The changeling's identifier when speaking in the hivemind, i.e. "Mr. Delta 123".

chem_charges + + + + +

+

The current amount of chemicals the changeling has stored.

chem_recharge_rate + + + + +

+

The amount of chemicals that recharges per Life() call.

chem_recharge_slowdown + + + + +

+

Amount of chemical recharge slowdown, calculated as chem_recharge_rate - chem_recharge_slowdown

chem_storage + + + + +

+

The total amount of chemicals able to be stored.

chosen_sting + + + + +

+

The current sting power the changeling has active.

dna_max + + + + +

+

How many total DNA strands the changeling can store for transformation.

genetic_points + + + + +

+

The amount of points available to purchase changeling abilities.

innate_powers + + + + +

+

A list of /datum/action/changeling typepaths with a power_type of CHANGELING_INNATE_POWER.

is_absorbing + + + + +

+

If the changeling is in the process of absorbing someone.

mimicing + + + + +

+

A name that will display in place of the changeling's real name when speaking.

protected_dna + + + + +

+

List of /datum/dna which are not lost when the changeling has no more room for DNA.

purchaseable_powers + + + + +

+

A list of /datum/action/changeling typepaths with a power_type of CHANGELING_PURCHASABLE_POWER.

regenerating + + + + +

+

If the changeling is in the process of regenerating from their fake death.

sting_range + + + + +

+

The range of changeling stings.

Proc Details

absorb_dna +

+

Absorb the the target's DNA and their languages.

+

Arguments:

+

add_new_languages +

+

Store the languages from the new_languages list into the absorbed_languages list. Teaches the changeling the new languages.

+

Arguments:

+

can_absorb_dna +

+

Returns TRUE if the changeling can absorb the target mob's DNA.

+

Arguments:

+

get_dna +

+

Gets a /datum/dna that matches the passed in tDNA. Also used as a check to see if the changeling has this DNA already stored.

+

Arguments:

+

get_powers_of_type +

+

Gets a list of changeling action typepaths based on the passed in power_type.

+

Arguments:

+

give_power +

+

Gives the changeling the passed in power. Subtracts the cost of the power from our genetic points.

+

Arugments:

+

remove_changeling_powers +

+

Removes a changeling's abilities.

+

Arguments:

+

remove_specific_power +

+

Removes all power_type abilities that the changeling has. Refunds the cost of the power from our genetic points.

+

Arugments:

+

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:

+

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:

+

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:

+

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.

+ + + diff --git a/datum/antagonist/mindslave.html b/datum/antagonist/mindslave.html new file mode 100644 index 0000000000000..20bc3a165e2d6 --- /dev/null +++ b/datum/antagonist/mindslave.html @@ -0,0 +1,43 @@ + + + + + + + /datum/antagonist/mindslave - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

mindslave + + + +

+ + + +

Vars

greet_textCustom greeting text if you don't want to use the basic greeting. Specify this when making a new mindslave datum with New().
masterA reference to the mind who minslaved us.
+

Var Details

greet_text + + + + +

+

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.

+ + + diff --git a/datum/antagonist/traitor.html b/datum/antagonist/traitor.html new file mode 100644 index 0000000000000..691c2c9dda46f --- /dev/null +++ b/datum/antagonist/traitor.html @@ -0,0 +1,92 @@ + + + + + + + /datum/antagonist/traitor - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

traitor + + + +

+ + + + + + + + + + +

Vars

give_codewordsShould the traitor get codewords?
give_uplinkShould we give the traitor their uplink?

Procs

add_law_zeroGives traitor AIs, and their connected cyborgs, a law 0. Additionally gives the AI their choose modules action button.
finalize_antagGive human traitors their uplink, and AI traitors their law 0. Play the traitor an alert sound.
forge_ai_objectivesCreate and assign a full set of AI traitor objectives.
forge_human_objectivesCreate and assign a full set of randomized human traitor objectives.
forge_single_human_objectiveCreate and assign a single randomized human traitor objective.
give_codewordsNotify the traitor of their codewords and write them to antag_memory (notes).
give_uplinkGives a traitor human their uplink, and uplink code.
+

Var Details

give_codewords + + + + +

+

Should the traitor get codewords?

+

Should we give the traitor their uplink?

Proc Details

add_law_zero +

+

Gives traitor AIs, and their connected cyborgs, a law 0. Additionally gives the AI their choose modules action button.

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.

forge_single_human_objective +

+

Create and assign a single randomized human traitor objective.

give_codewords +

+

Notify the traitor of their codewords and write them to antag_memory (notes).

+

Gives a traitor human their uplink, and uplink code.

+ + + diff --git a/datum/antagonist/vampire.html b/datum/antagonist/vampire.html new file mode 100644 index 0000000000000..9de1297fe529a --- /dev/null +++ b/datum/antagonist/vampire.html @@ -0,0 +1,130 @@ + + + + + + + /datum/antagonist/vampire - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

vampire + + + +

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

Vars

drained_humanslist of the peoples UIDs that we have drained, and how much blood from each one
drainingwho the vampire is draining of blood
iscloakinghandles the vampire cloak toggle
nullifiedNullrods and holywater make their abilities cost more
powerslist of available powers and passives
subclasswhat vampire subclass the vampire is.
upgrade_tiersa list of powers that all vampires unlock and at what blood level they unlock them, the rest of their powers are found in the vampire_subclass datum

Procs

adjust_bloodHandles unique drain ID checks and increases vampire's total and usable blood by blood_amount. Checks for ability upgrades.
change_subclassRemove the vampire's current subclass and add the specified one.
clear_subclassRemove and delete the vampire's current subclass and all associated abilities.
remove_all_powersRemoves all of the vampire's current powers.
subtract_usable_bloodSafely subtract vampire's bloodusable. Clamped between 0 and bloodtotal.
+

Var Details

drained_humans + + + + +

+

list of the peoples UIDs that we have drained, and how much blood from each one

draining + + + + +

+

who the vampire is draining of blood

iscloaking + + + + +

+

handles the vampire cloak toggle

nullified + + + + +

+

Nullrods and holywater make their abilities cost more

powers + + + + +

+

list of available powers and passives

subclass + + + + +

+

what vampire subclass the vampire is.

upgrade_tiers + + + + +

+

a list of powers that all vampires unlock and at what blood level they unlock them, the rest of their powers are found in the vampire_subclass datum

Proc Details

adjust_blood +

+

Handles unique drain ID checks and increases vampire's total and usable blood by blood_amount. Checks for ability upgrades.

+

Arguments:

+

change_subclass +

+

Remove the vampire's current subclass and add the specified one.

+

Arguments:

+

clear_subclass +

+

Remove and delete the vampire's current subclass and all associated abilities.

+

Arguments:

+

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:

+
+ + + diff --git a/datum/antagonist/wizard/apprentice.html b/datum/antagonist/wizard/apprentice.html new file mode 100644 index 0000000000000..be2d84982e4ac --- /dev/null +++ b/datum/antagonist/wizard/apprentice.html @@ -0,0 +1,43 @@ + + + + + + + /datum/antagonist/wizard/apprentice - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

apprentice + + + +

+ + + +

Vars

class_typeThe class type of this apprentice,
my_teacherTemporary 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.

+ + + diff --git a/datum/antagonist/wizard/construct.html b/datum/antagonist/wizard/construct.html new file mode 100644 index 0000000000000..4d174fb0bb569 --- /dev/null +++ b/datum/antagonist/wizard/construct.html @@ -0,0 +1,36 @@ + + + + + + + /datum/antagonist/wizard/construct - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

construct + + + +

+ + +

Vars

my_creatorTemporary 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.

+ + + diff --git a/datum/asset.html b/datum/asset.html new file mode 100644 index 0000000000000..84d64a3ed18c4 --- /dev/null +++ b/datum/asset.html @@ -0,0 +1,35 @@ + + + + + + + /datum/asset - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

asset + + + +

+ + +

Procs

get_serialized_url_mappingsReturns a cached tgui message of URL mappings

Proc Details

get_serialized_url_mappings +

+

Returns a cached tgui message of URL mappings

+ + + diff --git a/datum/asset/simple.html b/datum/asset/simple.html new file mode 100644 index 0000000000000..0fd9d3fafab81 --- /dev/null +++ b/datum/asset/simple.html @@ -0,0 +1,50 @@ + + + + + + + /datum/asset/simple - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

simple + + + +

+ +

If you don't need anything complicated.

+ + +

Vars

assetsList of assets for this datum in the form of asset_filename = asset_file. At runtime the asset_file will be converted into a asset_cache datum
keep_local_nameTRUE for keeping local asset names when browse_rsc backend is used
legacySet to true to have this asset also be sent via 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

+ + + diff --git a/datum/asset/simple/icon_states.html b/datum/asset/simple/icon_states.html new file mode 100644 index 0000000000000..cde12ebb2cabc --- /dev/null +++ b/datum/asset/simple/icon_states.html @@ -0,0 +1,43 @@ + + + + + + + /datum/asset/simple/icon_states - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

icon_states + + + +

+ +

Generates assets based on iconstates of a single icon

+ +

Vars

generic_icon_namesGenerate icon filenames using GENERATE_ASSET_NAME instead the "[prefix].[icon_state_name].png" format
prefixUsed 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")

+ + + diff --git a/datum/asset/simple/namespaced.html b/datum/asset/simple/namespaced.html new file mode 100644 index 0000000000000..789cf5dd6d0de --- /dev/null +++ b/datum/asset/simple/namespaced.html @@ -0,0 +1,42 @@ + + + + + + + /datum/asset/simple/namespaced - Space Station 13 + + +
+ Space 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)

+

Vars

parentsparents - list of the parent asset or assets (in name = file assoicated format) for this namespace. +parent assets must be referenced by their generated url, but if an update changes a parent asset, it won't change the namespace's identity.
+

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.

+ + + diff --git a/datum/asset/spritesheet.html b/datum/asset/spritesheet.html new file mode 100644 index 0000000000000..a24a5f851ae58 --- /dev/null +++ b/datum/asset/spritesheet.html @@ -0,0 +1,65 @@ + + + + + + + /datum/asset/spritesheet - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

spritesheet + + + +

+ + + + + +

Vars

sizes"32x32" -> list(10, icon/normal, icon/stripped)
sprites"foo_bar" -> list("32x32", 5)

Procs

ModifyInsertedA simple proc handing the Icon for you to modify before it gets turned into an asset.
icon_size_idReturns 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:

+

icon_size_id +

+

Returns the size class (ex design32x32) for a given sprite's icon

+

Arguments:

+
+ + + diff --git a/datum/asset_cache_item.html b/datum/asset_cache_item.html new file mode 100644 index 0000000000000..37b868efde300 --- /dev/null +++ b/datum/asset_cache_item.html @@ -0,0 +1,102 @@ + + + + + + + /datum/asset_cache_item - Space Station 13 + + +
+ Space 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.

+ + + + + + + + +

Vars

extour file extension e.g. .png, .gif, etc
hashmd5() of the file this asset item represents.
keep_local_nameTRUE for keeping local asset names when browse_rsc backend is used
legacyShould this file also be sent via the legacy browse_rsc system +when cdn transports are enabled?
namethe name of this asset item, becomes the key in SSassets.cache list
namespaceUsed by the cdn system to keep legacy css assets with their parent +css file. (css files resolve urls relative to the css file, so the +legacy system can't be used if the css file itself could go out over +the cdn)
namespace_parentTrue if this is the parent css or html file for an asset's namespace
resourcethe file this asset represents

Procs

NewPass in a valid file_hash if you have one to save it from needing to do it again. +Pass in a valid dmi file path string e.g. "icons/path/to/dmi_file.dmi" to make generating the hash less expensive
+

Var Details

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

+ + + diff --git a/datum/asset_transport.html b/datum/asset_transport.html new file mode 100644 index 0000000000000..300c9507f0296 --- /dev/null +++ b/datum/asset_transport.html @@ -0,0 +1,112 @@ + + + + + + + /datum/asset_transport - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

asset_transport + + + +

+ +

Base browse_rsc asset transport

+ + + + + + + +

Vars

dont_mutate_filenamesDon't mutate the filename of assets when sending via browse_rsc. +This is to make it easier to debug issues with assets, and allow server operators to bypass issues that make it to production. +If turning this on fixes asset issues, something isn't using SSassets.transport.get_asset_url and the asset isn't marked legacy, fix one of those.

Procs

InitializeInitialize - Called when SSassets initializes.
LoadCalled when the transport is loaded by the config controller, not called on the default transport unless it gets loaded by a config change.
get_asset_urlReturns a url for a given asset. +asset_name - Name of the asset. +asset_cache_item - asset cache item datum for the asset, optional, overrides asset_name
register_assetRegister a browser asset with the asset cache system. +returns a /datum/asset_cache_item. +mutiple calls to register the same asset under the same asset_name return the same datum.
send_assetsSends a list of browser assets to a client +client - a client or mob +asset_list - A list of asset filenames to be sent to the client. Can optionally be assoicated with the asset's asset_cache_item datum. +Returns TRUE if any assets were sent.
send_assets_slowPrecache files without clogging up the browse() queue, used for passively sending files on connection start.
validate_configCheck the config is valid to load this transport +Returns TRUE or FALSE
+

Var Details

dont_mutate_filenames + + + + +

+

Don't mutate the filename of assets when sending via browse_rsc. +This is to make it easier to debug issues with assets, and allow server operators to bypass issues that make it to production. +If turning this on fixes asset issues, something isn't using 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:

+

send_assets +

+

Sends a list of browser assets to a client +client - a client or mob +asset_list - A list of asset filenames to be sent to the client. Can optionally be assoicated with the asset's asset_cache_item datum. +Returns TRUE if any assets were sent.

send_assets_slow +

+

Precache files without clogging up the browse() queue, used for passively sending files on connection start.

validate_config +

+

Check the config is valid to load this transport +Returns TRUE or FALSE

+ + + diff --git a/datum/asset_transport/webroot.html b/datum/asset_transport/webroot.html new file mode 100644 index 0000000000000..70c3ee36793b9 --- /dev/null +++ b/datum/asset_transport/webroot.html @@ -0,0 +1,80 @@ + + + + + + + /datum/asset_transport/webroot - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

webroot + + + +

+ +

CDN Webroot asset transport.

+ + + + + +

Procs

get_asset_urlReturns a url for a given asset. +asset_name - Name of the asset. +asset_cache_item - asset cache item datum for the asset, optional, overrides asset_name
load_existing_assetsProcesses thru any assets that were registered before we were loaded as a transport.
register_assetRegister a browser asset with the asset cache system +We also save it to the CDN webroot at this step instead of waiting for send_assets() +asset_name - the identifier of the asset +asset - the actual asset file or an asset_cache_item datum.
save_asset_to_webrootSaves the asset to the webroot taking into account namespaces and hashes.
send_assetswebroot asset sending - does nothing unless passed legacy assets
send_assets_slowwebroot slow asset sending - does nothing.

Proc Details

get_asset_url +

+

Returns a url for a given asset. +asset_name - Name of the asset. +asset_cache_item - asset cache item datum for the asset, optional, overrides asset_name

load_existing_assets +

+

Processes thru any assets that were registered before we were loaded as a transport.

register_asset +

+

Register a browser asset with the asset cache system +We also save it to the CDN webroot at this step instead of waiting for send_assets() +asset_name - the identifier of the asset +asset - the actual asset file or an asset_cache_item datum.

save_asset_to_webroot +

+

Saves the asset to the webroot taking into account namespaces and hashes.

send_assets +

+

webroot asset sending - does nothing unless passed legacy assets

send_assets_slow +

+

webroot slow asset sending - does nothing.

+ + + diff --git a/datum/barsign.html b/datum/barsign.html new file mode 100644 index 0000000000000..dc776d2beb2f1 --- /dev/null +++ b/datum/barsign.html @@ -0,0 +1,43 @@ + + + + + + + /datum/barsign - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

barsign + + + +

+ + + +

Vars

hiddenSigns that should never be accessed by players via the selection menu.
syndicateSigns 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.

+ + + diff --git a/datum/bitfield.html b/datum/bitfield.html new file mode 100644 index 0000000000000..18d21d2bf1b8e --- /dev/null +++ b/datum/bitfield.html @@ -0,0 +1,43 @@ + + + + + + + /datum/bitfield - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

bitfield + + + +

+ +

Specifies a bitfield for smarter debugging

+ +

Vars

flagsAn associative list of the readable flag and its true value
variableThe variable name that contains the bitfield
+

Var Details

flags + + + + +

+

An associative list of the readable flag and its true value

variable + + + + +

+

The variable name that contains the bitfield

+ + + diff --git a/datum/body_accessory.html b/datum/body_accessory.html new file mode 100644 index 0000000000000..bb6cad911bcf5 --- /dev/null +++ b/datum/body_accessory.html @@ -0,0 +1,36 @@ + + + + + + + /datum/body_accessory - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

body_accessory + + + +

+ + +

Vars

has_behindIf 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".

+ + + diff --git a/datum/browser.html b/datum/browser.html new file mode 100644 index 0000000000000..b93999a37376f --- /dev/null +++ b/datum/browser.html @@ -0,0 +1,85 @@ + + + + + + + /datum/browser - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

browser + + + +

+ + + + + + + + + +

Vars

atom_uidUID of the host atom
contentHTML content of the browser datum
head_contentHeader HTML content of the browser datum
include_default_stylesheetShould default stylesheets be loaded
scriptsAssoc list of script files for use by the datum
stylesheetsAssoc list of stylesheets for use by the datum
window_idwindow_id is used as the window name for browse and onclose calls
window_optionsVarious 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

+ + + diff --git a/datum/buildmode_mode/tilting.html b/datum/buildmode_mode/tilting.html new file mode 100644 index 0000000000000..c2115cfcc91b3 --- /dev/null +++ b/datum/buildmode_mode/tilting.html @@ -0,0 +1,36 @@ + + + + + + + /datum/buildmode_mode/tilting - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

tilting + + + +

+ + +

Vars

tilterThe thing we're tilting over
+

Var Details

tilter + + + + +

+

The thing we're tilting over

+ + + diff --git a/datum/cachedbook.html b/datum/cachedbook.html new file mode 100644 index 0000000000000..42e446d7d34e2 --- /dev/null +++ b/datum/cachedbook.html @@ -0,0 +1,35 @@ + + + + + + + /datum/cachedbook - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

cachedbook + + + +

+ +

Datum used to cache the SQL DB books locally in order to achieve a performance gain.

+

Procs

LoadFromRowhelper 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

+ + + diff --git a/datum/callback/verb_callback.html b/datum/callback/verb_callback.html new file mode 100644 index 0000000000000..cf7fbae633f6e --- /dev/null +++ b/datum/callback/verb_callback.html @@ -0,0 +1,36 @@ + + + + + + + /datum/callback/verb_callback - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

verb_callback + + + +

+ +

like normal callbacks but they also record their creation time for measurement purposes

+

Vars

creation_timethe 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

+ + + diff --git a/datum/candidate_poll.html b/datum/candidate_poll.html new file mode 100644 index 0000000000000..274abb014a7e3 --- /dev/null +++ b/datum/candidate_poll.html @@ -0,0 +1,68 @@ + + + + + + + /datum/candidate_poll - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

candidate_poll + + + +

+ + + + + +

Procs

remove_candidateAttempts to remove a signed-up mob from a poll.
sign_upAttempts to sign a (controlled) mob up
time_leftReturns the time left for a poll
trim_candidatesDeletes any candidates who may have disconnected from the list

Proc Details

remove_candidate +

+

Attempts to remove a signed-up mob from a poll.

+

Arguments:

+

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:

+

time_left +

+

Returns the time left for a poll

trim_candidates +

+

Deletes any candidates who may have disconnected from the list

+ + + diff --git a/datum/changeling_power_category.html b/datum/changeling_power_category.html new file mode 100644 index 0000000000000..d3e3b5a3a0f09 --- /dev/null +++ b/datum/changeling_power_category.html @@ -0,0 +1,43 @@ + + + + + + + /datum/changeling_power_category - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

changeling_power_category + + + +

+ + + +

Vars

nameThe name of the category
priorityThe 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

+ + + diff --git a/datum/character_save.html b/datum/character_save.html new file mode 100644 index 0000000000000..2e5c4672fe0a7 --- /dev/null +++ b/datum/character_save.html @@ -0,0 +1,80 @@ + + + + + + + /datum/character_save - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

character_save + + + +

+ + + + + + + + +

Vars

body_accessoryThe body accessory name of the mob (e.g. wings, tail).
custom_emotesCustom emote text ("name" = "emote text")
cyborg_brain_typeIf a spawned cyborg should have an MMI, a positronic, or a robobrain. MMI by default
from_dbIs this character from the DB?
slot_numberCharacter slot number, used for saves and stuff.
valid_saveIs this character valid to be picked? This is necessary to avoid someone getting a bald human called "Character 30"

Procs

loadLoad 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?

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

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.

+ + + diff --git a/datum/chat_payload.html b/datum/chat_payload.html new file mode 100644 index 0000000000000..31a9836f1eff2 --- /dev/null +++ b/datum/chat_payload.html @@ -0,0 +1,64 @@ + + + + + + + /datum/chat_payload - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

chat_payload + + + +

+ +

Stores information about a chat payload

+ + + + +

Vars

contentMessage we are sending
resendsResend count
sequenceSequence number of this payload

Procs

get_content_as_htmlReturns an HTML-encoded message from our contents.
into_messageConverts the chat payload into a JSON string
+

Var Details

content + + + + +

+

Message we are sending

resends + + + + +

+

Resend count

sequence + + + + +

+

Sequence number of this payload

Proc Details

get_content_as_html +

+

Returns an HTML-encoded message from our contents.

into_message +

+

Converts the chat payload into a JSON string

+ + + diff --git a/datum/chatmessage.html b/datum/chatmessage.html new file mode 100644 index 0000000000000..9746be7cb1182 --- /dev/null +++ b/datum/chatmessage.html @@ -0,0 +1,161 @@ + + + + + + + /datum/chatmessage - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Chat Message Overlay + + + +

+ +

Datum for generating a message overlay on the map

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

Vars

animate_lifespanOur animation lifespan, how long this message will last
animate_startWhen we started animating the message
approx_linesContains the approximate amount of lines for height decay
current_z_idxThe current index used for adjusting the layer of each sequential chat message such that recent messages will overlay older ones
messageThe visual element of the chat messsage
message_locThe location in which the message is appearing
owned_byThe client who heard this message

Procs

NewConstructs a chat message overlay
colorize_stringGets a color for a name, will return the same color for a given string consistently within a round.atom
finish_image_generationfinishes 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_imageGenerates a chat message image representation
get_current_alphaReturns the current alpha of the message based on the time spent
on_parent_qdelCalls qdel on the chatmessage when its parent is deleted, used to register qdel signal
sanitize_colorEnsures a colour is bright enough for the system
+

Var Details

animate_lifespan + + + + +

+

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:

+

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:

+

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:

+

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:

+
+ + + diff --git a/datum/chemical_production_mode.html b/datum/chemical_production_mode.html new file mode 100644 index 0000000000000..5b66efbe09974 --- /dev/null +++ b/datum/chemical_production_mode.html @@ -0,0 +1,47 @@ + + + + + + + /datum/chemical_production_mode - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

chemical_production_mode + + + +

+ + + +

Vars

production_iconFontAwesome icon name

Procs

configure_itempublic
+

Var Details

production_icon + + + + +

+

FontAwesome icon name

Proc Details

configure_item +

+

public

+

Configures the icon of the specified container P.

+

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.

+ + + diff --git a/datum/chemical_reaction.html b/datum/chemical_reaction.html new file mode 100644 index 0000000000000..056db5cd5280d --- /dev/null +++ b/datum/chemical_reaction.html @@ -0,0 +1,65 @@ + + + + + + + /datum/chemical_reaction - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

chemical_reaction + + + +

+ + + + + +

Vars

required_containerThe container required for the reaction to happen. +Leave this null if you want the reaction to happen anywhere.
required_otherExtra requirements for the reaction to happen.
required_reagentsA list of IDs of the required reagents.
result_amountThis 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.

+ + + diff --git a/datum/chemical_reaction/zombie.html b/datum/chemical_reaction/zombie.html new file mode 100644 index 0000000000000..62c7996d2425c --- /dev/null +++ b/datum/chemical_reaction/zombie.html @@ -0,0 +1,50 @@ + + + + + + + /datum/chemical_reaction/zombie - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

zombie + + + +

+ + + + +

Vars

amt_req_curesThe amount of reagents to pick from get_possible_cures()
cure_levelThe cure level of the reagent, level 4 cure requires level 3 cure, which requires level 2 cure, etc
required_symptomA 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

+ + + diff --git a/datum/click_intercept.html b/datum/click_intercept.html new file mode 100644 index 0000000000000..e4328ce69cc58 --- /dev/null +++ b/datum/click_intercept.html @@ -0,0 +1,73 @@ + + + + + + + /datum/click_intercept - Space Station 13 + + +
+ Space 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.

+ + + + +

Vars

buttonsAny atom/movable/screen/buttons the client is meant to receive when assigned this click intercept datum.
holderA reference to the client which is assigned this click intercept datum.

Procs

InterceptClickOnCalled in various mob's ClickOn procs, which happens when they click on an object in the world.
create_buttonsBase proc, intended to be overriden. Code that adds datum specific buttons to the list of buttons, should go here.
quitCalled 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.

+

Arguments:

+

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.

+ + + diff --git a/datum/click_intercept/give.html b/datum/click_intercept/give.html new file mode 100644 index 0000000000000..e0c45dddc4349 --- /dev/null +++ b/datum/click_intercept/give.html @@ -0,0 +1,36 @@ + + + + + + + /datum/click_intercept/give - Space Station 13 + + +
+ Space 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.

+

Vars

item_offeredIf 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.

+ + + diff --git a/datum/client_login_processor.html b/datum/client_login_processor.html new file mode 100644 index 0000000000000..00a2c2f6d29ec --- /dev/null +++ b/datum/client_login_processor.html @@ -0,0 +1,74 @@ + + + + + + + /datum/client_login_processor - Space Station 13 + + +
+ Space 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

+

Also if you have used other languages before with "interface" types (Java, C# (Microsoft Java), etc), +treat this class as one of those. [get_query(client/C)] and [process_result(datum/db_query/Q, client/C)] MUST be overriden

+ + +

Vars

priorityThe login priority. A lower priority will fire first

Procs

get_queryQuery Getter
process_resultResult Processor
+

Var Details

priority + + + + +

+

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:

+

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:

+
+ + + diff --git a/datum/cloning_data.html b/datum/cloning_data.html new file mode 100644 index 0000000000000..9feab43617397 --- /dev/null +++ b/datum/cloning_data.html @@ -0,0 +1,68 @@ + + + + + + + /datum/cloning_data - Space Station 13 + + +
+ Space 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.

+ + + + +

Vars

genetic_infoThe patient's DNA
limbsThe 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)
mindUIDA reference to the patient's mind.
nameThe patient's name.
organsThe 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)
+

Var Details

genetic_info + + + + +

+

The patient's DNA

limbs + + + + +

+

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)

+ + + diff --git a/datum/code_revision.html b/datum/code_revision.html new file mode 100644 index 0000000000000..bc60d042b2e67 --- /dev/null +++ b/datum/code_revision.html @@ -0,0 +1,78 @@ + + + + + + + /datum/code_revision - Space Station 13 + + +
+ Space 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

+ + + + + +

Vars

commit_dateDate that this commit was made
commit_hashCurrent commit hash the server is running
origin_commitOrigin commit (Only set if running TGS, and will only be different if the server is running testmerges)
testmergesList of testmerges (If applicable)

Procs

get_testmerge_chatmessageTestmerge Chat Message Helper
log_infoCode Revision Logging Helper
+

Var Details

commit_date + + + + +

+

Date that this commit was made

commit_hash + + + + +

+

Current commit hash the server is running

origin_commit + + + + +

+

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:

+

log_info +

+

Code Revision Logging Helper

+

Small proc to simplify logging all this stuff

+ + + diff --git a/datum/component.html b/datum/component.html new file mode 100644 index 0000000000000..b6fa7e6c60498 --- /dev/null +++ b/datum/component.html @@ -0,0 +1,178 @@ + + + + + + + /datum/component - Space Station 13 + + +
+ Space 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

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

Vars

can_transferOnly set to true if you are able to properly transfer this component
dupe_modeDefines how duplicate existing components are handled when added to a datum
dupe_typeThe type to check for duplication
parentThe datum this components belongs to

Procs

DestroyProperly removes the component from parent and cleans up references
InheritComponentCalled on a component when a component of the same type was added to the same parent
InitializeCalled during component creation with the same arguments as in new excluding parent.
NewCreate a new component.
PostTransferCallback Just after a component is transferred
PreTransferCallback Just before this component is transferred
RegisterWithParentRegister the component with the parent object
RemoveComponentRemoves the component from parent, ends up with a null parent
UnregisterFromParentUnregister from our parent object
_GetInverseTypeListInternal proc to create a list of our type and all parent types
_JoinParentInternal proc to handle behaviour of components when joining a parent
_RemoveFromParentInternal proc to handle behaviour when being removed from a parent
ui_hostReturn the object that is the host of any UI's that this component has
+

Var Details

can_transfer + + + + +

+

Only set to true if you are able to properly transfer this component

+

At a minimum RegisterWithParent and UnregisterFromParent should be used

+

Make sure you also implement PostTransfer for any post transfer handling

dupe_mode + + + + +

+

Defines how duplicate existing components are handled when added to a datum

+

See COMPONENT_DUPE_* definitions for available options

dupe_type + + + + +

+

The type to check for duplication

+

null means exact match on type (default)

+

Any other type means that and all subtypes

parent + + + + +

+

The datum this components belongs to

Proc Details

Destroy +

+

Properly removes the component from parent and cleans up references

+

Arguments:

+

InheritComponent +

+

Called on a component when a component of the same type was added to the same parent

+

See /datum/component/var/dupe_mode

+

C's type will always be the same of the called component

Initialize +

+

Called during component creation with the same arguments as in new excluding parent.

+

Do not call qdel(src) from this function, return COMPONENT_INCOMPATIBLE instead

New +

+

Create a new component.

+

Additional arguments are passed to Initialize()

+

Arguments:

+

PostTransfer +

+

Callback Just after a component is transferred

+

Use this to do any special setup you need to do after being moved to a new object

+

Do not call qdel(src) from this function, return COMPONENT_INCOMPATIBLE instead

PreTransfer +

+

Callback Just before this component is transferred

+

Use this to do any special cleanup you might need to do before being deregged from an object

RegisterWithParent +

+

Register the component with the parent object

+

Use this proc to register with your parent object

+

Overridable proc that's called when added to a new parent

RemoveComponent +

+

Removes the component from parent, ends up with a null parent

UnregisterFromParent +

+

Unregister from our parent object

+

Use this proc to unregister from your parent object

+

Overridable proc that's called when removed from a parent

_GetInverseTypeList +

+

Internal proc to create a list of our type and all parent types

_JoinParent +

+

Internal proc to handle behaviour of components when joining a parent

_RemoveFromParent +

+

Internal proc to handle behaviour when being removed from a parent

ui_host +

+

Return the object that is the host of any UI's that this component has

+ + + diff --git a/datum/component/automatic_fire.html b/datum/component/automatic_fire.html new file mode 100644 index 0000000000000..70b166fd388f0 --- /dev/null +++ b/datum/component/automatic_fire.html @@ -0,0 +1,101 @@ + + + + + + + /datum/component/automatic_fire - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

automatic_fire + + + +

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

Vars

allow_akimboShould dual wielding be allowed?
autofire_shot_delayTime between individual shots.
current_windup_reductionthe reduction to shot delay for windup
mouse_statusThis 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.
timeridTimer for tracking the spindown reset timings
windup_autofirewindup autofire vars +Whether the delay between shots increases over time, simulating a spooling weapon
windup_autofire_capHow high of a reduction that current_windup_reduction can reach
windup_autofire_reduction_multiplierthe percentage of autfire_shot_delay that is added to current_windup_reduction
windup_spindownHow long it takes for weapons that have spooled-up to reset back to the original firing speed

Procs

windup_resetReset 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).

+ + + diff --git a/datum/component/boomerang.html b/datum/component/boomerang.html new file mode 100644 index 0000000000000..e1c432c20acd1 --- /dev/null +++ b/datum/component/boomerang.html @@ -0,0 +1,97 @@ + + + + + + + /datum/component/boomerang - Space Station 13 + + +
+ Space 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.

+ + + + + + +

Vars

boomerang_throw_rangeHow far should the boomerang try to travel to return to the thrower?
last_boomerang_throwThis cooldown prevents our 2 throwing signals from firing too often based on how we implement those signals within thrown impacts.
thrower_easy_catch_enabledIf this boomerang is thrown, does it re-enable the throwers throw mode?

Procs

aerodynamic_swingProc that triggers when the thrown boomerang has been fully thrown, rethrowing the boomerang back to the thrower, and producing visible feedback.
prepare_throwProc'd before the first thrown is performed in order to gather information regarding each throw as well as handle throw_mode as necessary.
return_hit_throwProc that triggers when the thrown boomerang hits an object.
return_missed_throwProc 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.

+

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.

+

return_hit_throw +

+

Proc that triggers when the thrown boomerang hits an object.

+

return_missed_throw +

+

Proc that triggers when the thrown boomerang does not hit a target.

+
+ + + diff --git a/datum/component/boss_music.html b/datum/component/boss_music.html new file mode 100644 index 0000000000000..8e0e206e639b5 --- /dev/null +++ b/datum/component/boss_music.html @@ -0,0 +1,82 @@ + + + + + + + /datum/component/boss_music - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

boss_music + + + +

+ +

Attaches to a hostile simplemob and plays that music while they have a target.

+ + + + + + +

Vars

boss_trackThe music track we will play to players.
music_callbacksList of callback timers, used to clear out mobs listening to boss music after track_duration.
players_listening_uidsList of all mobs listening to the boss music currently. Cleared on Destroy or after track_duration.
track_durationHow long the track is, used to clear players out when the music is supposed to end.

Procs

clear_targetRemoves 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_deathCalled when a mob listening to boss music dies- ends their music early.
on_target_foundHandles 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.

+ + + diff --git a/datum/component/caltrop.html b/datum/component/caltrop.html new file mode 100644 index 0000000000000..e8ca82250b942 --- /dev/null +++ b/datum/component/caltrop.html @@ -0,0 +1,64 @@ + + + + + + + /datum/component/caltrop - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

caltrop + + + +

+ + + + + + +

Vars

flagsShoebypassing, walking interaction, silence
max_damageMaximum damage when crossed
min_damageMinimum damage when crossed
probabilityProbability of stunning and doing daamge
weaken_durationDuration of weaken when crossed
+

Var Details

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

+ + + diff --git a/datum/component/codeword_hearing.html b/datum/component/codeword_hearing.html new file mode 100644 index 0000000000000..42745176da521 --- /dev/null +++ b/datum/component/codeword_hearing.html @@ -0,0 +1,62 @@ + + + + + + + /datum/component/codeword_hearing - Space Station 13 + + +
+ Space 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)].

+ + + +

Vars

replace_regexRegex for matching words or phrases you want highlighted.
sourceThe source of this component. Used to identify the source in delete_if_from_source since this component is COMPONENT_DUPE_ALLOWED.
span_classThe to use for highlighting matches.

Procs

delete_if_from_sourceSince 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.

+ + + diff --git a/datum/component/connect_mob_behalf.html b/datum/component/connect_mob_behalf.html new file mode 100644 index 0000000000000..fd7182e4bff59 --- /dev/null +++ b/datum/component/connect_mob_behalf.html @@ -0,0 +1,52 @@ + + + + + + + /datum/component/connect_mob_behalf - Space Station 13 + + +
+ Space 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

+ + +

Vars

connectionsAn assoc list of signal -> procpath to register to the mob our client "owns"
trackedThe master client we're working with
tracked_mobThe mob we're currently tracking
+

Var Details

connections + + + + +

+

An assoc list of signal -> procpath to register to the mob our client "owns"

tracked + + + + +

+

The master client we're working with

tracked_mob + + + + +

+

The mob we're currently tracking

+ + + diff --git a/datum/component/construct_held_body.html b/datum/component/construct_held_body.html new file mode 100644 index 0000000000000..74243c386e8f0 --- /dev/null +++ b/datum/component/construct_held_body.html @@ -0,0 +1,37 @@ + + + + + + + /datum/component/construct_held_body - Space Station 13 + + +
+ Space 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.

+

Vars

held_bodyA 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

+ + + diff --git a/datum/component/corpse_description.html b/datum/component/corpse_description.html new file mode 100644 index 0000000000000..13138a7300bbc --- /dev/null +++ b/datum/component/corpse_description.html @@ -0,0 +1,44 @@ + + + + + + + /datum/component/corpse_description - Space Station 13 + + +
+ Space 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

+ +

Vars

description_textWhat do we display on examine?
naive_descriptionWhat do we display if examined by a clown?
+

Var Details

description_text + + + + +

+

What do we display on examine?

naive_description + + + + +

+

What do we display if examined by a clown?

+ + + diff --git a/datum/component/deadchat_control.html b/datum/component/deadchat_control.html new file mode 100644 index 0000000000000..1592d0edc52cb --- /dev/null +++ b/datum/component/deadchat_control.html @@ -0,0 +1,122 @@ + + + + + + + /datum/component/deadchat_control - Space Station 13 + + +
+ Space 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!

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

Vars

ckey_to_cooldownAssoc 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_modeA bitfield containing the mode which this component uses (DEADCHAT_DEMOCRACY_MODE or DEADCHAT_ANARCHY_MODE) and other settings)
generated_point_of_interestSet 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_cooldownIn 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.
inputsAssoc list of key-chat command string, value-callback pairs. list("right" = CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(_step), src, EAST))
on_removalCallback invoked when this component is Destroy()ed to allow the parent to return to a non-deadchat controlled state.
orbitersList of everything orbitting this component's parent.
timeridThe id for the DEADCHAT_DEMOCRACY_MODE looping vote timer.

Procs

_stepDummy to call since we can't proc reference builtins
end_cooldownRemoves the ghost from the ckey_to_cooldown list and lets them know they are free to submit a command for the parent again.
on_examineInforms any examiners to the inputs available as part of deadchat control, as well as the current operating mode and cooldowns.
waive_automutePrevents 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.

+

Arguments:

+
+ + + diff --git a/datum/component/deadchat_control/cardinal_movement.html b/datum/component/deadchat_control/cardinal_movement.html new file mode 100644 index 0000000000000..db7922e5499dc --- /dev/null +++ b/datum/component/deadchat_control/cardinal_movement.html @@ -0,0 +1,37 @@ + + + + + + + /datum/component/deadchat_control/cardinal_movement - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

cardinal_movement + + + +

+ + +

Procs

InitializeDeadchat Moves Things

Proc Details

Initialize +

+

Deadchat Moves Things

+

A special variant of the deadchat_control component that comes pre-baked with all the hottest inputs for a spicy +singularity or vomit goose.

+ + + diff --git a/datum/component/deadchat_control/human.html b/datum/component/deadchat_control/human.html new file mode 100644 index 0000000000000..f1a3e45468953 --- /dev/null +++ b/datum/component/deadchat_control/human.html @@ -0,0 +1,37 @@ + + + + + + + /datum/component/deadchat_control/human - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

human + + + +

+ + +

Procs

InitializeDeadchat Moves Things

Proc Details

Initialize +

+

Deadchat Moves Things

+

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.

+ + + diff --git a/datum/component/deadchat_control/immovable_rod.html b/datum/component/deadchat_control/immovable_rod.html new file mode 100644 index 0000000000000..d99842f071135 --- /dev/null +++ b/datum/component/deadchat_control/immovable_rod.html @@ -0,0 +1,37 @@ + + + + + + + /datum/component/deadchat_control/immovable_rod - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

immovable_rod + + + +

+ + +

Procs

InitializeDeadchat Moves Things

Proc Details

Initialize +

+

Deadchat Moves Things

+

A special variant of the deadchat_control component that comes pre-baked with all the hottest inputs for spicy +immovable rod.

+ + + diff --git a/datum/component/debris.html b/datum/component/debris.html new file mode 100644 index 0000000000000..9bf5111f3b477 --- /dev/null +++ b/datum/component/debris.html @@ -0,0 +1,57 @@ + + + + + + + /datum/component/debris - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

debris + + + +

+ + + + + +

Vars

debrisIcon state of debris when impacted by a projectile
debris_amountAmount of debris particles
debris_scaleScale of particle debris
debris_velocityVelocity of debris particles
+

Var Details

debris + + + + +

+

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

+ + + diff --git a/datum/component/defib.html b/datum/component/defib.html new file mode 100644 index 0000000000000..454e2fa0140e3 --- /dev/null +++ b/datum/component/defib.html @@ -0,0 +1,158 @@ + + + + + + + /datum/component/defib - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

defib + + + +

+ +

A component for an item that attempts to defibrillate a mob when activated.

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

Vars

actual_unit_uiduid to an item that should be making noise and handling things that our direct parent shouldn't be concerned with.
busyIf the defib is actively performing a defib cycle
combatIf it should penetrate space suits
cooldownCooldown length for this defib in deciseconds
emag_proofIf true, this cannot be emagged.
emp_proofIf true, EMPs will have no effect.
heart_attack_chanceIf combat is true, this determines whether or not it should always cause a heart attack.
on_cooldownWhether or not we're currently on cooldown
roboticIf this is being used by a borg or not, with necessary safeties applied if so.
safetyWhether the safeties are enabled or not
speed_multiplierHow fast the defib should work.

Procs

InitializeCreate a new defibrillation component.
defibrillatePerform a defibrillation.
fibrillateInflict stamina loss (and possibly inflict cardiac arrest) on someone.
get_effect_targetGet the "parent" that effects (emags, EMPs) should be applied onto.
trigger_defibStart 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

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.

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

speed_multiplier + + + + +

+

How fast the defib should work.

Proc Details

Initialize +

+

Create a new defibrillation component.

+

Arguments:

+

defibrillate +

+

Perform a defibrillation.

fibrillate +

+

Inflict stamina loss (and possibly inflict cardiac arrest) on someone.

+

Arguments:

+

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.

+ + + diff --git a/datum/component/emissive_blocker.html b/datum/component/emissive_blocker.html new file mode 100644 index 0000000000000..0e5219a3ce269 --- /dev/null +++ b/datum/component/emissive_blocker.html @@ -0,0 +1,43 @@ + + + + + + + /datum/component/emissive_blocker - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

emissive_blocker + + + +

+ + + +

Vars

stored_blockerStores either the mutable_appearance or a list of them

Procs

update_generic_blockUpdates 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

+ + + diff --git a/datum/component/footstep.html b/datum/component/footstep.html new file mode 100644 index 0000000000000..b1ab063dede5c --- /dev/null +++ b/datum/component/footstep.html @@ -0,0 +1,85 @@ + + + + + + + /datum/component/footstep - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

footstep + + + +

+ +

Footstep component. Plays footsteps at parents location when it is appropriate.

+ + + + + + + +

Vars

e_rangee_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_soundsThis can be a list OR a soundfile OR null. Determines whatever sound gets played.
footstep_typefootstep_type is a define which determines what kind of sounds should get chosen.
sound_varyWhether or not to add variation to the sounds played
stepsHow many steps the parent has taken since the last time a footstep was played.
volumevolume determines the extra volume of the footstep. This is multiplied by the base volume, should there be one.

Procs

play_simplestep_machinePrepares a footstep for machine walking
prepare_stepPrepares 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)

+ + + diff --git a/datum/component/label.html b/datum/component/label.html new file mode 100644 index 0000000000000..1f0241342374e --- /dev/null +++ b/datum/component/label.html @@ -0,0 +1,94 @@ + + + + + + + /datum/component/label - Space Station 13 + + +
+ Space 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.

+ + + + + +

Vars

label_nameThe name of the label the player is applying to the parent.

Procs

ExamineThis proc will trigger when someone examines the parent. +It will attach the text found in the body of the proc to the examine_list and display it to the player examining the parent.
InheritComponentThis proc will fire after the parent is hit by a hand labeler which is trying to apply another label. +Since the parent already has a label, it will remove the old one from the parent's name, and apply the new one.
OnAttackbyThis proc will trigger when any object is used to attack the parent.
apply_labelApplies a label to the name of the parent in the format of: "parent_name (label)"
remove_labelRemoves the label from the parent's name
+

Var Details

label_name + + + + +

+

The name of the label the player is applying to the parent.

Proc Details

Examine +

+

This proc will trigger when someone examines the parent. +It will attach the text found in the body of the proc to the examine_list and display it to the player examining the parent.

+

Arguments:

+

InheritComponent +

+

This proc will fire after the parent is hit by a hand labeler which is trying to apply another label. +Since the parent already has a label, it will remove the old one from the parent's name, and apply the new one.

OnAttackby +

+

This proc will trigger when any object is used to attack the parent.

+

If the attacking object is not a hand labeler, it will return. +If the attacking object is a hand labeler it will restore the name of the parent to what it was before this component was added to it, and the component will be deleted.

+

Arguments:

+

apply_label +

+

Applies a label to the name of the parent in the format of: "parent_name (label)"

remove_label +

+

Removes the label from the parent's name

+ + + diff --git a/datum/component/label/goal.html b/datum/component/label/goal.html new file mode 100644 index 0000000000000..7203a7f17471a --- /dev/null +++ b/datum/component/label/goal.html @@ -0,0 +1,51 @@ + + + + + + + /datum/component/label/goal - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

goal + + + +

+ +

A verson of the label component specific to labelling goal items.

+ + +

Procs

ExamineAdds detailed information to the examine text.
apply_labelApplies a static label to the parent's name. +We do this instead of using label_name so it's easier to identify goal objects at a glance.
remove_labelRemoves the label from the parent's name

Proc Details

Examine +

+

Adds detailed information to the examine text.

apply_label +

+

Applies a static label to the parent's name. +We do this instead of using label_name so it's easier to identify goal objects at a glance.

remove_label +

+

Removes the label from the parent's name

+ + + diff --git a/datum/component/orbiter.html b/datum/component/orbiter.html new file mode 100644 index 0000000000000..52617436562b2 --- /dev/null +++ b/datum/component/orbiter.html @@ -0,0 +1,187 @@ + + + + + + + /datum/component/orbiter - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

orbiter + + + +

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

Vars

orbit_dataCached transforms from before the orbiter started orbiting, to be restored on stopping their orbit
orbiter_listList of observers orbiting the parent

Procs

InheritComponentSee atom/movable/proc/orbit for parameter definitions
InitializeSee atom/movable/proc/orbit for parameter definitions
begin_orbitSee atom/movable/proc/orbit for parameter definitions
end_orbitEnd 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_transformGet cached transform of the given orbiter.
get_orbit_paramsGet the given orbiter's orbit parameters bitfield
get_orbiter_layerGet the layer the given orbiter was on before they started orbiting
handle_parent_moveThe 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_hierarchyReturns TRUE if atom_to_find is transitively a parent of src.
on_intermediate_moveCalled when an intermediate (somewhere between the topmost and the orbited) atom moves. +This atom will now become the leader.
on_remove_childCallback 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_reactCalled when the orbiter themselves moves.
parent_move_reactSignal 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_signalsRegister 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_signalsRemove all orbit-related signals in the object hierarchy above start.
store_orbit_dataorbit 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.

+ + + diff --git a/datum/component/parry.html b/datum/component/parry.html new file mode 100644 index 0000000000000..b30ab9e4868bf --- /dev/null +++ b/datum/component/parry.html @@ -0,0 +1,85 @@ + + + + + + + /datum/component/parry - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

parry + + + +

+ + + + + + + + + +

Vars

examine_textText to be shown to users who examine the parent. Will list which type of attacks it can parry.
no_parry_soundDo we wish to mute the parry sound?
parry_cooldownthe time between parry attempts
parry_time_out_timethe max time since time_parried that the shield is still considered "active"
parryable_attack_typesthe attack types that are considered for parrying
stamina_coefficientstamina_coefficient * damage * time_since_time_parried = stamina damage taken per non perfect parry
stamina_constantthe flat amount of damage the shield user takes per non-perfect parry
time_parriedthe world.time we last parried at
+

Var Details

examine_text + + + + +

+

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

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

+ + + diff --git a/datum/component/proximity_monitor.html b/datum/component/proximity_monitor.html new file mode 100644 index 0000000000000..38994c05f1d3d --- /dev/null +++ b/datum/component/proximity_monitor.html @@ -0,0 +1,191 @@ + + + + + + + /datum/component/proximity_monitor - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Basic Proximity Monitor + + + +

+ +

Attaching this component to an atom means that the atom will be able to detect mobs or objects moving within a specified radius of it.

+

The component creates several /obj/effect/abstract/proximity_checker objects, which follow the parent AKA hasprox_receiver around, always making sure it's at the center. +When something crosses one of these proximiy checkers, the hasprox_receiver will have the HasProximity() proc called on it, with the crossing mob/obj as the argument.

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

Vars

always_activeShould the parent always detect proximity and update the field on movement, even if it's not on a turf?
field_checker_typeThe type of checker object that should be used for the main field.
hasprox_receiverThe primary atom the component is attached to and that will be receiving HasProximity() calls. Same as the parent.
nested_receiver_locsA list which contains references to movable atoms which the hasprox_receiver has moved into. +Used to handle complex situations where the receiver is nested several layers deep into an object. +For example: inside of a box, that's inside of a bag, which is worn on a human. In this situation there are 3 locations we need to listen to for movement.
proximity_checkersA list of currently created /obj/effect/abstract/proximity_checker in use with this component.
radiusThe radius of the field, in tiles.

Procs

clear_nested_locsRemoves and unregisters signals from all objects currently in the nested_receiver_locs list.
create_prox_checkersCalled in Initialize(). Generates a set of proximity checker objects around the parent.
create_single_prox_checkerCreates a single proximity checker object, at the given location and of the given type. Adds it to the proximity checkers list.
map_nested_locsRegisters signals to any nested locations the hasprox_receiver is in, excluding turfs, so they can be monitored for movement.
move_prox_checkersRelays basic directional movement from the hasprox_receiver or host, to all objects in the proximity_checkers list.
on_disposal_enterCalled when the receiver or an atom in the nested_receiver_locs list moves into a disposals holder object.
on_disposal_exitCalled when the receiver or an atom in the nested_receiver_locs list moves out of a disposals holder object.
on_nested_loc_moveCalled when an atom in nested_receiver_locs list moves, if one exists.
on_receiver_moveCalled when the hasprox_receiver moves.
recenter_prox_checkersRe-centers all of the proximity_checkers around the parent's current location.
set_radiusSpecifies a new radius for the field. Creates or deletes proximity_checkers accordingly.
toggle_checkersUpdate all of the component's proximity checker's to either become active or not active.
+

Var Details

always_active + + + + +

+

Should the parent always detect proximity and update the field on movement, even if it's not on a turf?

field_checker_type + + + + +

+

The type of checker object that should be used for the main field.

hasprox_receiver + + + + +

+

The primary atom the component is attached to and that will be receiving HasProximity() calls. Same as the parent.

nested_receiver_locs + + + + +

+

A list which contains references to movable atoms which the hasprox_receiver has moved into. +Used to handle complex situations where the receiver is nested several layers deep into an object. +For example: inside of a box, that's inside of a bag, which is worn on a human. In this situation there are 3 locations we need to listen to for movement.

proximity_checkers + + + + +

+

A list of currently created /obj/effect/abstract/proximity_checker in use with this component.

radius + + + + +

+

The radius of the field, in tiles.

Proc Details

clear_nested_locs +

+

Removes and unregisters signals from all objects currently in the nested_receiver_locs list.

create_prox_checkers +

+

Called in Initialize(). Generates a set of proximity checker objects around the parent.

create_single_prox_checker +

+

Creates a single proximity checker object, at the given location and of the given type. Adds it to the proximity checkers list.

+

Arguments:

+

map_nested_locs +

+

Registers signals to any nested locations the hasprox_receiver is in, excluding turfs, so they can be monitored for movement.

move_prox_checkers +

+

Relays basic directional movement from the hasprox_receiver or host, to all objects in the proximity_checkers list.

+

Arguments:

+

on_disposal_enter +

+

Called when the receiver or an atom in the nested_receiver_locs list moves into a disposals holder object.

+

This proc receives arguments, but they aren't needed.

on_disposal_exit +

+

Called when the receiver or an atom in the nested_receiver_locs list moves out of a disposals holder object.

+

This proc receives arguments, but they aren't needed.

on_nested_loc_move +

+

Called when an atom in nested_receiver_locs list moves, if one exists.

+

Arguments:

+

on_receiver_move +

+

Called when the hasprox_receiver moves.

+

Arguments:

+

recenter_prox_checkers +

+

Re-centers all of the proximity_checkers around the parent's current location.

set_radius +

+

Specifies a new radius for the field. Creates or deletes proximity_checkers accordingly.

+

This proc can have a high cost due to the news and qdels of the proximity checkers, depending on the number of calls you need to make to it.

+

Arguments: +new_radius - the new value that proximity_radius should be set to.

toggle_checkers +

+

Update all of the component's proximity checker's to either become active or not active.

+

Arguments:

+
+ + + diff --git a/datum/component/radioactive.html b/datum/component/radioactive.html new file mode 100644 index 0000000000000..58322f6ab1887 --- /dev/null +++ b/datum/component/radioactive.html @@ -0,0 +1,36 @@ + + + + + + + /datum/component/radioactive - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

radioactive + + + +

+ + +

Vars

hl3_release_datethe half-life measured in ticks
+

Var Details

hl3_release_date + + + + +

+

the half-life measured in ticks

+ + + diff --git a/datum/component/scope.html b/datum/component/scope.html new file mode 100644 index 0000000000000..93239d0304eba --- /dev/null +++ b/datum/component/scope.html @@ -0,0 +1,118 @@ + + + + + + + /datum/component/scope - Space Station 13 + + +
+ Space 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.

+ + + + + + + + + + +

Vars

allow_middle_clickDo we let the user scope and click on the middle of their screen?
item_action_typeif not null, an item action will be added. Redundant if the mode is ZOOM_METHOD_RIGHT_CLICK or ZOOM_METHOD_WIELD.
movement_cancels_scopeDo we have the scope cancel on move?
range_modifierHow 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_scopeTime to scope up, if you want the scope to take time to boot up. Used by the LWAP
trackerFullscreen object we use for tracking.
tracker_owner_ckeyThe owner of the tracker's ckey. For comparing with the current owner mob, in case the client has left it (e.g. ghosted).
zoom_methodThe method which we zoom in and out

Procs

get_targetWe find and return the best target to hit on a given turf.
stop_zoomingWe stop zooming, canceling processing, resetting stuff back to normal and deleting our tracker.
zoomWe start zooming by adding our tracker overlay and starting our processing.
+

Var Details

allow_middle_click + + + + +

+

Do we let the user scope and click on the middle of their screen?

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.

movement_cancels_scope + + + + +

+

Do we have the scope cancel on move?

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).

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:

+

stop_zooming +

+

We stop zooming, canceling processing, resetting stuff back to normal and deleting our tracker.

+

Arguments:

+

zoom +

+

We start zooming by adding our tracker overlay and starting our processing.

+

Arguments:

+
+ + + diff --git a/datum/component/shielded.html b/datum/component/shielded.html new file mode 100644 index 0000000000000..1d50ae80c30a3 --- /dev/null +++ b/datum/component/shielded.html @@ -0,0 +1,185 @@ + + + + + + + /datum/component/shielded - Space Station 13 + + +
+ Space 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.

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

Vars

charge_add_cdThe cooldown tracking when we last replenished a charge
charge_increment_delayOnce we go unhit long enough to recharge, we replenish charges this often. The floor is effectively 1 second, AKA how often SSdcs processes
charge_recoveryHow many charges we recover on each charge increment
current_chargesHow many charges we currently have
lose_multiple_chargesShould the shield lose charges equal to the damage dealt by a hit?
max_chargesHow many charges we can have max, and how many we start with
on_hit_effectsA callback for the sparks/message that play when a charge is used, see /datum/component/shielded/proc/default_run_hit_callback
recently_hit_cdThe cooldown tracking when we were last hit
recharge_pathThe item we use for recharging
recharge_start_delayHow long we have to avoid being hit to replenish charges. If set to 0, we never recharge lost charges
shieldThe visual effect
shield_iconWhat icon is used when someone has a functional shield up
shield_icon_fileWhat .dmi we're pulling the shield icon from
shield_inhandDo 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_alphaShould the shield's alpha change to show its remaining charge
wearerThe person currently wearing us

Procs

actually_run_hit_callbackThe wrapper to invoke the on_hit callback, so we don't have to worry about blocking in the signal handler
default_run_hit_callbackDefault on_hit proc, since cult robes are stupid and have different descriptions/sparks
lost_wearerEither we've been dropped or our wearer has been QDEL'd. Either way, they're no longer our problem
on_equippedCheck if we've been equipped to a valid slot to shield
on_hit_reactThis 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_overlaysUsed to draw the shield overlay on the wearer
+

Var Details

charge_add_cd + + + + +

+

The cooldown tracking when we last replenished a charge

charge_increment_delay + + + + +

+

Once we go unhit long enough to recharge, we replenish charges this often. The floor is effectively 1 second, AKA how often SSdcs processes

charge_recovery + + + + +

+

How many charges we recover on each charge increment

current_charges + + + + +

+

How many charges we currently have

lose_multiple_charges + + + + +

+

Should the shield lose charges equal to the damage dealt by a hit?

max_charges + + + + +

+

How many charges we can have max, and how many we start with

on_hit_effects + + + + +

+

A callback for the sparks/message that play when a charge is used, see /datum/component/shielded/proc/default_run_hit_callback

recently_hit_cd + + + + +

+

The cooldown tracking when we were last hit

recharge_path + + + + +

+

The item we use for recharging

recharge_start_delay + + + + +

+

How long we have to avoid being hit to replenish charges. If set to 0, we never recharge lost charges

shield + + + + +

+

The visual effect

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

+ + + diff --git a/datum/component/slippery.html b/datum/component/slippery.html new file mode 100644 index 0000000000000..5f19ee68672a4 --- /dev/null +++ b/datum/component/slippery.html @@ -0,0 +1,96 @@ + + + + + + + /datum/component/slippery - Space Station 13 + + +
+ Space 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.

+ + + + + + + + +

Vars

descriptionText that gets displayed in the slip proc, i.e. "user slips on [description]"
horizontal_requiredTRUE the player will only slip if the mob this datum is attached to is horizontal
knockdownThe amount of knockdown to apply after slip.
slip_alwaysFALSE if you want no slip shoes to make you immune to the slip
slip_chanceThe chance that walking over the parent will slip you.
slip_tilesThe amount of tiles someone will be moved after slip.
slip_verbThe verb that players will see when someone slips on the parent. In the form of "You [slip_verb]ped on".
walking_is_safeTRUE If this slip can be avoided by walking.

Procs

SlipCalled whenever the parent receives either the MOVABLE_CROSSED signal or the ATOM_ENTERED signal.
+

Var Details

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 either the MOVABLE_CROSSED signal or 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.

+ + + diff --git a/datum/component/squeak.html b/datum/component/squeak.html new file mode 100644 index 0000000000000..bf97965bb16c5 --- /dev/null +++ b/datum/component/squeak.html @@ -0,0 +1,50 @@ + + + + + + + /datum/component/squeak - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

squeak + + + +

+ + + + +

Vars

sound_extra_rangeextra-range for this component's sound
sound_falloff_distancewhen sounds start falling off for the squeak
sound_falloff_exponentsound exponent for squeak. Defaults to 10 as squeaking is loud and annoying enough.
+

Var Details

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.

+ + + diff --git a/datum/component/sticky.html b/datum/component/sticky.html new file mode 100644 index 0000000000000..fc801f5d88aca --- /dev/null +++ b/datum/component/sticky.html @@ -0,0 +1,50 @@ + + + + + + + /datum/component/sticky - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

sticky + + + +

+ + + + +

Vars

attached_toThe atom we are stickied to
drop_on_attached_destroyDo we drop on attached_to's destroy? If not, we qdel
overlayOur priority overlay put on top of attached_to
+

Var Details

attached_to + + + + +

+

The atom we are stickied to

drop_on_attached_destroy + + + + +

+

Do we drop on attached_to's destroy? If not, we qdel

overlay + + + + +

+

Our priority overlay put on top of attached_to

+ + + diff --git a/datum/component/surgery_initiator.html b/datum/component/surgery_initiator.html new file mode 100644 index 0000000000000..76cff8fe714b2 --- /dev/null +++ b/datum/component/surgery_initiator.html @@ -0,0 +1,127 @@ + + + + + + + /datum/component/surgery_initiator - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Surgery Initiator + + + +

+ +

Allows an item to start (or prematurely stop) a surgical operation.

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

Vars

can_cancelIf true, can be used with a cautery in the off-hand to cancel a surgery.
can_cancel_before_firstIf 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_standerIf 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_surgeryIf present, this surgery TYPE will be attempted when the item is used. +Useful for things like limb reattachments that don't need a scalpel.
valid_starting_typesBitfield 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.

Procs

InitializeCreate a new surgery initiating component.
attempt_cancel_surgeryDoes the surgery de-initiation.
can_start_surgeryWe haven't even started yet. Any surgery can be cancelled at this point.
do_initiate_surgery_momentMeat and potatoes of starting surgery.
initiate_surgery_momentDoes the surgery initiation.
on_parent_sharpness_changeKeep tabs on the attached item's sharpness. +This component gets added in atoms when they're made sharp as well.
show_starting_messageHandle 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.

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:

+

attempt_cancel_surgery +

+

Does the surgery de-initiation.

can_start_surgery +

+

We haven't even started yet. Any surgery can be cancelled at this point.

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

+ + + diff --git a/datum/component/tilted.html b/datum/component/tilted.html new file mode 100644 index 0000000000000..20bcfe9b16be6 --- /dev/null +++ b/datum/component/tilted.html @@ -0,0 +1,58 @@ + + + + + + + /datum/component/tilted - Space Station 13 + + +
+ Space 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

+ + + +

Vars

block_interactionsWhether we should block any interactions with it
rotated_angleThe angle by which we rotated as a result of tilting. Should help us avoid cases where something gets tilted until it's upright.
untilt_durationHow long it should take to untilt

Procs

untiltUntilt a tilted object.
+

Var Details

block_interactions + + + + +

+

Whether we should block any interactions with it

rotated_angle + + + + +

+

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.

+ + + diff --git a/datum/component/two_handed.html b/datum/component/two_handed.html new file mode 100644 index 0000000000000..48e8c7cbed32f --- /dev/null +++ b/datum/component/two_handed.html @@ -0,0 +1,235 @@ + + + + + + + /datum/component/two_handed - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

two_handed + + + +

+ +

Two Handed Component

+

When applied to an item it will make it two handed

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

Vars

attacksoundPlay sound on attack when wielded
force_multiplierThe multiplier applied to force when wielded, does not work with force_wielded, and force_unwielded
force_unwieldedThe force of the item when unweilded
force_wieldedThe force of the item when weilded
icon_wieldedThe icon that will be used when wielded
offhand_itemReference to the offhand created for the item
only_sharp_when_wieldedWhether or not the object is only sharp when wielded. If it's never sharp, ignore this.
require_twohandsDoes it have to be held in both hands
sharpened_increaseThe amount of increase recived from sharpening the item
unwield_callbackA callback on the parent to be called when the item is unwielded
unwieldsoundPlay sound when unwielded
wield_callbackA callback on the parent to be called when the item is wielded
wieldedAre we holding the two handed item properly
wieldsoundPlay sound when wielded

Procs

InitializeTwo Handed component
on_attackon_attack triggers on attack with the parent item
on_attack_selfTriggered on attack self of the item containing the component
on_destroyTriggered on destroy of the component's offhand
on_dropTriggered on drop of item containing the component
on_equipTriggered on equip of the item containing the component
on_movedon_moved Triggers on item moved
on_sharpenon_sharpen Triggers on usage of a sharpening stone on the item
on_swapping_handson_swap_hands Triggers on swapping hands, blocks swap if the other hand is busy
on_update_iconon_update_icon triggers on call to update parent items icon
unwieldUnwield the two handed item
wieldWield the two handed item in both hands
+

Var Details

attacksound + + + + +

+

Play sound on attack when wielded

force_multiplier + + + + +

+

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:

+

on_attack +

+

on_attack triggers on attack with the parent item

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:

+

wield +

+

Wield the two handed item in both hands

+

vars:

+
+ + + diff --git a/datum/configuration_section.html b/datum/configuration_section.html new file mode 100644 index 0000000000000..9f466d2861e66 --- /dev/null +++ b/datum/configuration_section.html @@ -0,0 +1,36 @@ + + + + + + + /datum/configuration_section - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

configuration_section + + + +

+ + +

Vars

protection_stateSee __config_defines.dm
+

Var Details

protection_state + + + + +

+

See __config_defines.dm

+ + + diff --git a/datum/configuration_section/admin_configuration.html b/datum/configuration_section/admin_configuration.html new file mode 100644 index 0000000000000..10dcaa99a2682 --- /dev/null +++ b/datum/configuration_section/admin_configuration.html @@ -0,0 +1,78 @@ + + + + + + + /datum/configuration_section/admin_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

admin_configuration + + + +

+ +

Config holder for all admin related things

+ + + + + + +

Vars

allow_admin_ooc_colourDo we want to allow admins to set their own OOC colour?
ckey_rank_mapAssoc list of admin ckeys and their ranks. key: ckey | value: rank name
common_cid_mapAssoc list of CIDs which shouldnt be banned due to mass collisions
enable_localhost_autoadminDo we want to auto enable admin rights if you connect from localhost?
rank_colour_mapAssoc list of admin ranks and their colours. key: rank | value: rank colour
rank_rights_mapAssoc list of admin ranks and their stuff. key: rank name string | value: list of rights
use_database_adminsDo we want to load admins from the database?
+

Var Details

allow_admin_ooc_colour + + + + +

+

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?

+ + + diff --git a/datum/configuration_section/afk_configuration.html b/datum/configuration_section/afk_configuration.html new file mode 100644 index 0000000000000..3a9602ab411dc --- /dev/null +++ b/datum/configuration_section/afk_configuration.html @@ -0,0 +1,57 @@ + + + + + + + /datum/configuration_section/afk_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

afk_configuration + + + +

+ +

Config holder for all AFK related things

+ + + +

Vars

auto_cryo_minutesMinutes before someone is auto moved to cryo
auto_despawn_minutesMinutes before someone is auto despawned
ssd_auto_cryo_minutesTime before SSD people are auto cryo'd
warning_minutesMinutes before someone gets an AFK warning
+

Var Details

auto_cryo_minutes + + + + +

+

Minutes before someone is auto moved to cryo

auto_despawn_minutes + + + + +

+

Minutes before someone is auto despawned

ssd_auto_cryo_minutes + + + + +

+

Time before SSD people are auto cryo'd

warning_minutes + + + + +

+

Minutes before someone gets an AFK warning

+ + + diff --git a/datum/configuration_section/asset_cache_configuration.html b/datum/configuration_section/asset_cache_configuration.html new file mode 100644 index 0000000000000..6a5e4c4f7d9a7 --- /dev/null +++ b/datum/configuration_section/asset_cache_configuration.html @@ -0,0 +1,73 @@ + + + + + + + /datum/configuration_section/asset_cache_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

asset_cache_configuration + + + +

+ + + + + +

Vars

asset_cdn_urlURL 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_webrootLocal 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_preloadWhether to make server passively send all browser assets to each client in the background +(instead of waiting for them to be needed)
asset_transportType 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".

+ + + diff --git a/datum/configuration_section/custom_sprites_configuration.html b/datum/configuration_section/custom_sprites_configuration.html new file mode 100644 index 0000000000000..932e74d502fd4 --- /dev/null +++ b/datum/configuration_section/custom_sprites_configuration.html @@ -0,0 +1,64 @@ + + + + + + + /datum/configuration_section/custom_sprites_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

custom_sprites_configuration + + + +

+ +

Config holder for all things regarding custom sprites

+ + + + +

Vars

ai_core_ckeysList of ckeys that have custom AI core skins
ai_hologram_ckeysList of ckeys that have custom AI hologram skins
cyborg_ckeysList of ckeys that have custom cyborg skins
ipc_screen_mapAssoc of ckeys that have custom pAI screens. Key: ckey | value: list of icon states
pai_holoform_ckeysList of ckeys that have custom pAI holoforms
+

Var Details

ai_core_ckeys + + + + +

+

List of ckeys that have custom AI core skins

ai_hologram_ckeys + + + + +

+

List of ckeys that have custom AI hologram skins

cyborg_ckeys + + + + +

+

List of ckeys that have custom cyborg skins

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

+ + + diff --git a/datum/configuration_section/database_configuration.html b/datum/configuration_section/database_configuration.html new file mode 100644 index 0000000000000..2e8f755f72c91 --- /dev/null +++ b/datum/configuration_section/database_configuration.html @@ -0,0 +1,92 @@ + + + + + + + /datum/configuration_section/database_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

database_configuration + + + +

+ +

Config holder for all database related things

+ + + + + + + + +

Vars

addressAddress of the SQL server
async_query_timeoutTime in seconds for async queries to time out
async_thread_limitThread limit for async queries
dbDatabase name
enabledSQL enabled or not
passwordSQL password
portPort of the SQL server
usernameSQL usename
versionWhat SQL version are we on
+

Var Details

address + + + + +

+

Address of the SQL server

async_query_timeout + + + + +

+

Time in seconds for async queries to time out

async_thread_limit + + + + +

+

Thread limit for async queries

db + + + + +

+

Database name

enabled + + + + +

+

SQL enabled or not

password + + + + +

+

SQL password

port + + + + +

+

Port of the SQL server

username + + + + +

+

SQL usename

version + + + + +

+

What SQL version are we on

+ + + diff --git a/datum/configuration_section/discord_configuration.html b/datum/configuration_section/discord_configuration.html new file mode 100644 index 0000000000000..0b7f23e851ee5 --- /dev/null +++ b/datum/configuration_section/discord_configuration.html @@ -0,0 +1,78 @@ + + + + + + + /datum/configuration_section/discord_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

discord_configuration + + + +

+ +

Config holder for all things relating to discord webhooks

+ + + + + + +

Vars

admin_role_idAdmin role to ping if no admins are online. Disables if empty string
admin_webhook_urlsList of all URLs for the mentor webhooks
forward_all_ahelpsDo we want to forward all ahelps or just ones sent with no active admins
main_webhook_urlsList of all URLs for the main webhooks
mentor_role_idMentor role to ping if no mentors are online. Disables if empty string
mentor_webhook_urlsList of all URLs for the admin webhooks
webhooks_enabledAre webhooks enabled at all
+

Var Details

admin_role_id + + + + +

+

Admin role to ping if no admins are online. Disables if empty string

admin_webhook_urls + + + + +

+

List of all URLs for the mentor 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 admin webhooks

webhooks_enabled + + + + +

+

Are webhooks enabled at all

+ + + diff --git a/datum/configuration_section/event_configuration.html b/datum/configuration_section/event_configuration.html new file mode 100644 index 0000000000000..eff20e2199b93 --- /dev/null +++ b/datum/configuration_section/event_configuration.html @@ -0,0 +1,64 @@ + + + + + + + /datum/configuration_section/event_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

event_configuration + + + +

+ +

Config holder for all stuff relating to ingame random events

+ + + + +

Vars

delay_lower_boundAssoc list of lower bounds of event delays. key: severity | value: delay (deciseconds)
delay_upper_boundAssoc list of lower bounds of event delays. key: severity | value: delay (deciseconds)
enable_random_eventsDo we want to enable random events at all
expected_round_lengthExpected time of a round in deciseconds
first_run_timesAssoc 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

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)

+ + + diff --git a/datum/configuration_section/gamemode_configuration.html b/datum/configuration_section/gamemode_configuration.html new file mode 100644 index 0000000000000..66e85b109d40d --- /dev/null +++ b/datum/configuration_section/gamemode_configuration.html @@ -0,0 +1,106 @@ + + + + + + + /datum/configuration_section/gamemode_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

gamemode_configuration + + + +

+ +

Config holder for everything regarding gamemodes

+ + + + + + + + + + +

Vars

add_random_station_traitsShould we generate random station traits at game start?
antag_account_age_restrictionShould antags be restricted based on account age?
disable_certain_round_early_endRounds such as rev, wizard and malf end instantly when the antag has won. Enable the setting below to not do that.
enable_gamemode_player_limitEnable player limits on gamemodes? Disabling can be useful for testing
gamemode_namesAssoc list of gamemode names (key: config-tag | value: mode name)
gamemodesList of all gamemodes (value: config-tag)
prevent_mindshield_antagsPrevent mindshield roles getting antagonist status
probabilitiesAssoc list of gamemode probabilities (key: config-tag | value: probability)
traitor_objectives_amountAmount of objectives traitors should get. Does not include escape or hijack.
traitor_scalingScale amount of traitors with population
votable_modesList 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)

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)

+ + + diff --git a/datum/configuration_section/general_configuration.html b/datum/configuration_section/general_configuration.html new file mode 100644 index 0000000000000..0596ea7fecd5b --- /dev/null +++ b/datum/configuration_section/general_configuration.html @@ -0,0 +1,323 @@ + + + + + + + /datum/configuration_section/general_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

general_configuration + + + +

+ +

Config holder for all general/misc things

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

Vars

allow_antag_hudAllow players to use AntagHUD?
allow_character_metadataAllow character OOC notes
allow_holidaysAnnounce holidays (christmas, halloween, etc etc)
auto_disable_oocAuto disable OOC on roundstart?
base_loadout_pointsAmount of loadout points non-donors should get
bomb_capBomb cap (Devastation) Other values will be calculated around this
breakable_bonesDo we want to allow bones to break?
byond_account_age_thresholdBYOND account age threshold for first join alerts
cryo_penalty_periodRespawnability loss penalty for eary cryoing (minutes)
developer_express_startAuto start the game if on a local test server
disable_ambient_noiseDisable ambient sound and white noise
disable_cid_warning_popupDisable a popup if 2 users are on the same CID?
disable_lobby_musicDisable lobby music?
enable_auto_muteEnable auto muting in all chat channels
enable_auto_profilerEnable automatic profiling to profile.json
enable_cloningEnable/disable cloning
enable_night_shiftsEnable night-shift lighting?
enable_ooc_emojiEnable OOC emojis?
enable_revival_pod_plantsEnable/disable revival pod plants
enabled_cid_randomiser_busterEnable CID randomiser buster?
forbid_singulo_possessionForbid admins from posessing and flying the singulo round
ghost_interactionAllow ghosts to spin chairs round
guest_banBan all Guest BYOND accounts
lobby_timeTime in seconds for the pregame lobby. Measured in seconds
max_client_cid_historyMax CIDs a client can have history of before a warning is thrown
minimum_client_buildMinimum client build. Keep above 1421 due to exploits
monkey_cube_capCap for monkey cube monkey spawns
popup_admin_pmForce open a PM window when replied to? This is very annoying
random_ai_lawsetEnable random AI lawsets from the default=TRUE pool
randomise_shift_timeRandomise shift time instead of it always being 12:00?
reactionary_explosionsEnable to make explosions react to obstacles instead of ignoring them
respawn_enabledEnable respawns by default?
restart_timeoutDefault timeout for world reboot. Measured in seconds
restrict_antag_hud_rejoinForbid players from rejoining if they use AntagHUD?
revival_brain_lifeTime for a brain to keep its spark of life (deciseconds)
roundstart_observer_periodObservers 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_featuresServer features in a newline
server_nameServer name for the BYOND hub
server_tag_lineTagline for the hub entry
ssd_warningShow a warning to players to make them accept touching an SSD
starlightEnable/disable starlight to light up space
start_now_confirmationGive a confirm button for the "Start Now" verb
+

Var Details

allow_antag_hud + + + + +

+

Allow players to use AntagHUD?

allow_character_metadata + + + + +

+

Allow character OOC notes

allow_holidays + + + + +

+

Announce holidays (christmas, halloween, etc etc)

auto_disable_ooc + + + + +

+

Auto disable OOC on roundstart?

base_loadout_points + + + + +

+

Amount of loadout points non-donors should get

bomb_cap + + + + +

+

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

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_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_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

+ + + diff --git a/datum/configuration_section/ipintel_configuration.html b/datum/configuration_section/ipintel_configuration.html new file mode 100644 index 0000000000000..b6b821df4869e --- /dev/null +++ b/datum/configuration_section/ipintel_configuration.html @@ -0,0 +1,92 @@ + + + + + + + /datum/configuration_section/ipintel_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

ipintel_configuration + + + +

+ +

Config holder for all things relating to IPIntel

+ + + + + + + + +

Vars

bad_rating0-1 float for percentage threshold to kick people out
contact_emailIPIntel contact email. Required.
details_urlDetails URL for more info on an IP, including ASN. IP is tacked straight on the end.
enabledIs IPIntel enabled
hours_save_badHow many hours to save bad matches for. Cached due to rate limits
hours_save_goodHow many hours to save good matches for. Cached due to rate limits
ipintel_domainIPIntel Domain. Do not prefix with a protocol
playtime_ignore_thresholdDo not proxy-check players with more hours than the below threshold
whitelist_modeAre 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)

+ + + diff --git a/datum/configuration_section/job_configuration.html b/datum/configuration_section/job_configuration.html new file mode 100644 index 0000000000000..cc30daf7c7936 --- /dev/null +++ b/datum/configuration_section/job_configuration.html @@ -0,0 +1,120 @@ + + + + + + + /datum/configuration_section/job_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

job_configuration + + + +

+ +

Config holder for all job related things

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

Vars

allow_aiAllow non-admins to play as AI
assistant_limitLimit amount of assistants?
assistant_maint_accessGrant assistants maint access
assistant_security_ratioIf yes to above, ratio of assistants per security officer (IE: 4:1)
enable_exp_admin_bypassAllow admins to bypass EXP restrictions
enable_exp_restrictionsLockout jobs based on EXP
enable_exp_trackingEnable EXP logging and tracking
enable_job_amount_overridesEnable loading of job overrides from the config
guest_job_banPrevent guests from playing high profile roles
highpop_job_mapMap of job:amount for highpop. key: Job | value: amount
lowpop_job_mapMap of job:amount for lowpop. key: Job | value: amount
restrict_jobs_on_account_ageDo we want to restrict jobs based on account age
restrict_jobs_on_account_age_admin_bypassAllow admins to bypass age-based job restrictions
+

Var Details

allow_ai + + + + +

+

Allow non-admins to play as AI

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

+ + + diff --git a/datum/configuration_section/logging_configuration.html b/datum/configuration_section/logging_configuration.html new file mode 100644 index 0000000000000..09eec3b4cd5f4 --- /dev/null +++ b/datum/configuration_section/logging_configuration.html @@ -0,0 +1,141 @@ + + + + + + + /datum/configuration_section/logging_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

logging_configuration + + + +

+ +

Config holder for all things regarding logging

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

Vars

access_loggingLog client access (login/logout)
admin_loggingLog admin actions
admin_warning_loggingLog admin warning messages
adminchat_loggingLog asay messages
attack_loggingEnable logging of attacks between players
debug_loggingLog debug messages
emote_loggingEnable logging of emotes
game_loggingLog game events (roundstart, results, a lot of other things)
href_loggingLog hrefs
ooc_loggingLog OOC messages
pda_loggingEnable logging of PDA messages
runtime_loggingEnable runtime logging
say_loggingLog ingame say messages
vote_loggingEnable logging of votes and their results
whisper_loggingEnable logging of whipers
world_loggingEnable world.log output logging
+

Var Details

access_logging + + + + +

+

Log client access (login/logout)

admin_logging + + + + +

+

Log admin actions

admin_warning_logging + + + + +

+

Log admin warning messages

adminchat_logging + + + + +

+

Log asay messages

attack_logging + + + + +

+

Enable logging of attacks between players

debug_logging + + + + +

+

Log debug messages

emote_logging + + + + +

+

Enable logging of emotes

game_logging + + + + +

+

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

+ + + diff --git a/datum/configuration_section/mc_configuration.html b/datum/configuration_section/mc_configuration.html new file mode 100644 index 0000000000000..735935409321e --- /dev/null +++ b/datum/configuration_section/mc_configuration.html @@ -0,0 +1,71 @@ + + + + + + + /datum/configuration_section/mc_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

mc_configuration + + + +

+ +

Config holder for all things regarding the MC

+ + + + + +

Vars

base_tickrateBase MC tick rate
highpop_disable_thresholdMC Highpop disable threshold
highpop_enable_thresholdMC Highpop enable threshold
highpop_tickrateHighpop MC tickrate
ticklagServer ticklag
world_init_tick_limitTick limit % during world Init
+

Var Details

base_tickrate + + + + +

+

Base MC tick rate

highpop_disable_threshold + + + + +

+

MC Highpop disable threshold

highpop_enable_threshold + + + + +

+

MC Highpop enable threshold

highpop_tickrate + + + + +

+

Highpop MC tickrate

ticklag + + + + +

+

Server ticklag

world_init_tick_limit + + + + +

+

Tick limit % during world Init

+ + + diff --git a/datum/configuration_section/metrics_configuration.html b/datum/configuration_section/metrics_configuration.html new file mode 100644 index 0000000000000..a809e350808c3 --- /dev/null +++ b/datum/configuration_section/metrics_configuration.html @@ -0,0 +1,50 @@ + + + + + + + /datum/configuration_section/metrics_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

metrics_configuration + + + +

+ +

Config holder for stuff relating to metrics management

+ + +

Vars

enable_metricsAre metrics enabled or disabled
metrics_api_tokenEndpoint authorisation API key
metrics_endpointEndpoint to send metrics to, including protocol
+

Var Details

enable_metrics + + + + +

+

Are metrics enabled or disabled

metrics_api_token + + + + +

+

Endpoint authorisation API key

metrics_endpoint + + + + +

+

Endpoint to send metrics to, including protocol

+ + + diff --git a/datum/configuration_section/movement_configuration.html b/datum/configuration_section/movement_configuration.html new file mode 100644 index 0000000000000..cbad2f867aacc --- /dev/null +++ b/datum/configuration_section/movement_configuration.html @@ -0,0 +1,85 @@ + + + + + + + /datum/configuration_section/movement_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

movement_configuration + + + +

+ +

Config holder for values relating to mob movement speeds

+ + + + + + + +

Vars

alien_delayMove delay for xenomorphs
animal_delayMove delay for other simple animals
base_run_speedBase run speed before modifiers
base_walk_speedBase walk speed before modifiers
crawling_speed_reductioncrawling speed modifier
human_delayMove delay for humanoids
robot_delayMove delay for cyborgs
slime_delayMove delay for slimes (xenobio, not slimepeople)
+

Var Details

alien_delay + + + + +

+

Move delay for xenomorphs

animal_delay + + + + +

+

Move delay for other simple animals

base_run_speed + + + + +

+

Base run speed before modifiers

base_walk_speed + + + + +

+

Base walk speed before modifiers

crawling_speed_reduction + + + + +

+

crawling speed modifier

human_delay + + + + +

+

Move delay for humanoids

robot_delay + + + + +

+

Move delay for cyborgs

slime_delay + + + + +

+

Move delay for slimes (xenobio, not slimepeople)

+ + + diff --git a/datum/configuration_section/overflow_configuration.html b/datum/configuration_section/overflow_configuration.html new file mode 100644 index 0000000000000..23e4de1c60cc2 --- /dev/null +++ b/datum/configuration_section/overflow_configuration.html @@ -0,0 +1,50 @@ + + + + + + + /datum/configuration_section/overflow_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

overflow_configuration + + + +

+ +

Config holder for all overflow-server related things

+ + +

Vars

overflow_server_locationLocation of the overflow server
overflow_whitelistList of ckeys who will never be routed to the overflow server
reroute_capAmount 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.

+ + + diff --git a/datum/configuration_section/redis_configuration.html b/datum/configuration_section/redis_configuration.html new file mode 100644 index 0000000000000..a90adc94ddcc0 --- /dev/null +++ b/datum/configuration_section/redis_configuration.html @@ -0,0 +1,43 @@ + + + + + + + /datum/configuration_section/redis_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

redis_configuration + + + +

+ +

Config holder for all redis related things

+ +

Vars

connstringRedis connection string. Includes passphrase if needed.
enabledRedis enabled or not
+

Var Details

connstring + + + + +

+

Redis connection string. Includes passphrase if needed.

enabled + + + + +

+

Redis enabled or not

+ + + diff --git a/datum/configuration_section/ruin_configuration.html b/datum/configuration_section/ruin_configuration.html new file mode 100644 index 0000000000000..2c0e3b0205416 --- /dev/null +++ b/datum/configuration_section/ruin_configuration.html @@ -0,0 +1,78 @@ + + + + + + + /datum/configuration_section/ruin_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

ruin_configuration + + + +

+ +

Config holder for all things regarding space ruins and lavaland ruins

+ + + + + + +

Vars

active_lava_ruinsList of all active lavaland ruins
active_space_ruinsList of all active space ruins
enable_lavalandWhether to load the lavaland Z-level
enable_space_ruinsEnable or disable all ruins, including lavaland ruins and lavaland tendrils.
extra_levels_maxMaximum number of extra zlevels to fill with ruins
extra_levels_minMinimum number of extra zlevels to fill with ruins
lavaland_ruin_budgetBudget for lavaland ruins
+

Var Details

active_lava_ruins + + + + +

+

List of all active lavaland ruins

active_space_ruins + + + + +

+

List of all active space ruins

enable_lavaland + + + + +

+

Whether to load the lavaland Z-level

enable_space_ruins + + + + +

+

Enable or disable all ruins, including lavaland ruins and lavaland tendrils.

extra_levels_max + + + + +

+

Maximum number of extra zlevels to fill with ruins

extra_levels_min + + + + +

+

Minimum number of extra zlevels to fill with ruins

lavaland_ruin_budget + + + + +

+

Budget for lavaland ruins

+ + + diff --git a/datum/configuration_section/system_configuration.html b/datum/configuration_section/system_configuration.html new file mode 100644 index 0000000000000..d7057113ffc02 --- /dev/null +++ b/datum/configuration_section/system_configuration.html @@ -0,0 +1,127 @@ + + + + + + + /datum/configuration_section/system_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

system_configuration + + + +

+ +

Config holder for stuff relating to server backend management and secrets

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

Vars

api_hostInternal API host
api_keyInternal API key
enable_multi_instance_supportDo we want to enable instancing stuff at all?
external_tos_handlerAre we using an external handler for TOS
instance_idServer instance ID
internal_ipServer internal IP
is_productionIs this server a production server (Has higher security and requires 2FA)
override_mapMap datum of the map to use, overriding the defaults, and data/next_map.txt
region_mapAssoc list of region names and their server IPs. Used for geo-routing.
shutdown_on_rebootDo we want the server to kill on reboot instead of keeping the same DD session
shutdown_shell_commandIf above is true, you can run a shell command
toast_on_init_completeSend a system toast on init completion?
topic_ip_ratelimit_bypassList of IP addresses which bypass world topic rate limiting
topic_keyPassword for authorising world/Topic requests
+

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

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

region_map + + + + +

+

Assoc list of region names and their server IPs. Used for geo-routing.

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 + + + + +

+

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

+ + + diff --git a/datum/configuration_section/url_configuration.html b/datum/configuration_section/url_configuration.html new file mode 100644 index 0000000000000..c9a3187e240d7 --- /dev/null +++ b/datum/configuration_section/url_configuration.html @@ -0,0 +1,134 @@ + + + + + + + /datum/configuration_section/url_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

url_configuration + + + +

+ +

Config holder for all the server URLs

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

Vars

banappeals_urlURL for the server ban appeals forum
centcom_ban_db_urlURL for the CentCom Ban DB API
discord_forum_urlURL for a discord invite going via the forums
discord_urlURL for a direct discord invite
donations_urlURL for server donations
exploit_urlURL for the server exploit report locaion
forum_link_urlURL for linking ingame accounts and forum accounts. Token is appended to end
forum_playerinfo_urlURL for pulling player info on webtools
forum_urlURL for the server forums
github_urlURL for the server github repository
round_stats_urlURL for the stats page
rsc_urlsList of URLs for the server RSC data
rules_urlURL for the server rules
server_urlServer URL for auto-reconnecting people at end round
wiki_urlURL for the server wiki
+

Var Details

banappeals_url + + + + +

+

URL for the server ban appeals forum

centcom_ban_db_url + + + + +

+

URL for the CentCom Ban DB API

discord_forum_url + + + + +

+

URL for a discord invite going via the forums

discord_url + + + + +

+

URL for a direct discord invite

donations_url + + + + +

+

URL for server donations

exploit_url + + + + +

+

URL for the server exploit report locaion

+

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

+ + + diff --git a/datum/configuration_section/vote_configuration.html b/datum/configuration_section/vote_configuration.html new file mode 100644 index 0000000000000..ef588e7e0d3c5 --- /dev/null +++ b/datum/configuration_section/vote_configuration.html @@ -0,0 +1,85 @@ + + + + + + + /datum/configuration_section/vote_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

vote_configuration + + + +

+ +

Config holder for stuff relating to the ingame vote system

+ + + + + + + +

Vars

autotransfer_initial_timeTime before the first shuttle vote (deciseconds)
autotransfer_interval_timeTime between subsequent shuttle votes if the first one is not successful (deciseconds)
disable_default_voteDefault to players not voting
enable_map_votingEnable map voting?
map_vote_day_typesDictionary of day number (string) to vote string
non_repeating_mapsIf TRUE, you will not be able to vote for the current map
prevent_dead_votingPrevent dead players from voting
vote_timeHow long will a vote last for in deciseconds
+

Var Details

autotransfer_initial_time + + + + +

+

Time before the first shuttle vote (deciseconds)

autotransfer_interval_time + + + + +

+

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

+ + + diff --git a/datum/construction.html b/datum/construction.html new file mode 100644 index 0000000000000..cfd24cfd2197e --- /dev/null +++ b/datum/construction.html @@ -0,0 +1,36 @@ + + + + + + + /datum/construction - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

construction + + + +

+ + +

Vars

taskpathPath of job objective completed.
+

Var Details

taskpath + + + + +

+

Path of job objective completed.

+ + + diff --git a/datum/construction/mecha.html b/datum/construction/mecha.html new file mode 100644 index 0000000000000..b6e8ec1a03d14 --- /dev/null +++ b/datum/construction/mecha.html @@ -0,0 +1,35 @@ + + + + + + + /datum/construction/mecha - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

mecha + + + +

+ + +

Procs

custom_actionConstruction datums

Proc Details

custom_action +

+

Construction datums

+ + + diff --git a/datum/contractor_hub.html b/datum/contractor_hub.html new file mode 100644 index 0000000000000..e6341669af4b8 --- /dev/null +++ b/datum/contractor_hub.html @@ -0,0 +1,209 @@ + + + + + + + /datum/contractor_hub - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Syndicate Hub + + + +

+ +

Describes and manages the contracts and rewards for a single contractor.

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

Vars

completed_contractsThe number of completed contracts.
contractor_uplinkThe contractor uplink associated to this hub.
contractsThe contracts offered by the hub.
current_contractThe current contract in progress.
dead_penaltyTC 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_thresholdsCompleting 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_contractsThe number of contracts to generate initially.
ownerThe contractor associated to this hub.
pageCurrent UI page index.
purchasesList of purchases that can be done for Rep.
repAmount of Contractor Rep available for spending.
rep_per_completionHow much Contractor Rep to earn per contract completion.
reward_tc_availableAmount of telecrystals available for redeeming.
reward_tc_paid_outTotal amount of paid out telecrystals since the start.
targetsList 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_variationMaximum 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)

Procs

calculate_tc_rewardGenerates an amount of TC to be used as a contract reward for the given difficulty.
claim_tcGives any unclaimed TC to the given mob.
first_loginCalled when the loading animation completes for the first time.
generate_contractsRegenerates a list of contracts for the contractor to take up.
is_user_authorizedReturns whether the given mob is allowed to connect to the uplink.
on_completionCalled when a /datum/syndicate_contract has been completed.
+

Var Details

completed_contracts + + + + +

+

The number of completed contracts.

+

The contractor uplink associated to this hub.

contracts + + + + +

+

The contracts offered by the hub.

current_contract + + + + +

+

The current contract in progress.

dead_penalty + + + + +

+

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:

+

claim_tc +

+

Gives any unclaimed TC to the given mob.

+

Arguments:

+

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.

+

Arguments:

+

on_completion +

+

Called when a /datum/syndicate_contract has been completed.

+

Arguments:

+
+ + + diff --git a/datum/controller.html b/datum/controller.html new file mode 100644 index 0000000000000..9c1c04ab5752e --- /dev/null +++ b/datum/controller.html @@ -0,0 +1,35 @@ + + + + + + + /datum/controller - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

controller + + + +

+ + +

Procs

log_startup_progressStandardized method for tracking startup times.

Proc Details

log_startup_progress +

+

Standardized method for tracking startup times.

+ + + diff --git a/datum/controller/global_vars.html b/datum/controller/global_vars.html new file mode 100644 index 0000000000000..20844a324eaaa --- /dev/null +++ b/datum/controller/global_vars.html @@ -0,0 +1,582 @@ + + + + + + + /datum/controller/global_vars - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

global_vars + + + +

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

Vars

AdminProcCallCountHow many procs have been called
AdminProcCallSpamPreventionList to handle proc call spam prevention
AdminProcCallerWho is currently calling procs
LastAdminCalledProcLast proc called
LastAdminCalledTargetLast target to have a proc called on it
LastAdminCalledTargetUIDUID of the admin who last called
PDAsGlobal list of all PDAs in the world
acid_overlayACID
active_security_positionsActive security roles
admin_mutes_assocAssociative list of people who are muted via admin mutes
admin_objective_listStores objective names as list keys, and their corresponding typepaths as list values.
admin_statetgui state: admin_state
allNewscastersGlobal list that contains all existing newscasters in the world.
all_objectivesStores a reference to every objective which currently exists.
always_statetgui state: always_state
blurb_witnessesList of ckeys that have seen a blurb of a given key.
character_physiquesGlobal list for descriptors
command_head_positionsOnly roles that are command of departments, for revolution and similar stuff
command_positionsAll roles that are within the command category
configurationGlobal configuration datum holder for all the config sections
conscious_statetgui state: conscious_state
deep_inventory_statetgui state: contained_state
default_statetgui state: default_state
dna_activity_boundsDNA 2: The Spaghetti Strikes Back
dna_mutationsAssoc list. Key = type of the mutation, value = the mutation
dooc_enabledIs OOC currently enabled for dead people?
dsay_enabledIs deadchat currently enabled?
em_mask_matrixA globaly cached version of EM_MASK_MATRIX for quick access.
enter_allowedAllow new players to enter the game?
frozen_atom_listFreeze Mob/Mech Verb -- Ported from NSS Pheonix (Unbound Travels)//////
game_yearThe current game year
ghost_hud_panelStores an instance of /datum/ui_module/ghost_hud_panel so that ghosts can use this to open their HUD panel.
gravity_generatorsGlobal list of all active gravity generators. Keyed by the Z level
hands_statetgui state: hands_state
hudsGLOBAL HUD LIST
human_adjacent_statetgui state: human_adjacent_state
inventory_statetgui state: inventory_state
join_motdJoin MOTD for the server
join_tosJoin TOS for the server
library_catalogLibrary Catalog global is for storing a library catalog datum that will track book, category, and report lists for the library
looc_enabledIs LOOC currently enabled?
looping_soundsList of looping sounds
marker_beacon_colorsMarker Beacons
mod_themesGlobal list of all /datum/mod_theme
mouse_respawn_timeAmount of time (in minutes) that must pass between a player dying as a mouse and repawning as a mouse
multiverseMultiverse Blade
news_networkThe feed network singleton. Contains all channels (which contain all stories).
next_unique_datum_idThe next UID to be used (Increments by 1 for each UID)
not_incapacitated_statetgui state: not_incapacitated_state
not_incapacitated_turf_statetgui state: not_incapacitated_turf_state
notcontained_statetgui state: notcontained_state
observer_statetgui state: observer_state
ooc_enabledIs OOC currently enabled?
physical_obscured_statetgui state: physical_obscured_state
physical_statetgui state: physical_state
security_positionsRoles that include any semblence of security, mostly for jobbans
seeds_cached_base64_iconsStores a list of the cached seed icons. Used in the seed extractor and the gene modder
self_statetgui state: self_state
slower_restartWill our restart be slower?
smokes_activeCounter for the current amount of smoke
sparks_activeCounter for the current amount of sparks
strippable_statetgui state: strippable_state
tcomms_machinesGlobal list for all telecomms machines in the world
tgs_logLog of TGS stuff that can be viewed ingame
tilt_critsList of possible crits from things tipping over
trait_name_mapvalue -> trait name, generated on use from trait_by_type global
ui_loginstgui login
ui_modalsui modals
uid_logLog of all UIDs created in the round. Assoc list with type as key and amount as value
viewer_statetgui state: viewer_state
wire_color_directoryList of wire colors for each object type of that round. One for airlocks, one for vendors, etc.
world_topic_handlersList of all world topic handler datums. Populated inside makeDatumRefLists()
world_topic_spam_prevention_handlersList of all world topic spam prevention handlers. See code/modules/world_topic/_spam_prevention_handler.dm
+

Var Details

AdminProcCallCount + + + + +

+

How many procs have been called

AdminProcCallSpamPrevention + + + + +

+

List to handle proc call spam prevention

AdminProcCaller + + + + +

+

Who is currently calling procs

LastAdminCalledProc + + + + +

+

Last proc called

LastAdminCalledTarget + + + + +

+

Last target to have a proc called on it

LastAdminCalledTargetUID + + + + +

+

UID of the admin who last called

PDAs + + + + +

+

Global list of all PDAs in the world

acid_overlay + + + + +

+

ACID

active_security_positions + + + + +

+

Active security roles

admin_mutes_assoc + + + + +

+

Associative list of people who are muted via admin mutes

admin_objective_list + + + + +

+

Stores objective names as list keys, and their corresponding typepaths as list values.

admin_state + + + + +

+

tgui state: admin_state

+

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

allNewscasters + + + + +

+

Global list that contains all existing newscasters in the world.

all_objectives + + + + +

+

Stores a reference to every objective which currently exists.

always_state + + + + +

+

tgui state: always_state

+

Always grants the user UI_INTERACTIVE. Period.

blurb_witnesses + + + + +

+

List of ckeys that have seen a blurb of a given key.

character_physiques + + + + +

+

Global list for descriptors

command_head_positions + + + + +

+

Only roles that are command of departments, for revolution and similar stuff

command_positions + + + + +

+

All roles that are within the command category

configuration + + + + +

+

Global configuration datum holder for all the config sections

conscious_state + + + + +

+

tgui state: conscious_state

+

Only checks if the user is conscious.

deep_inventory_state + + + + +

+

tgui state: contained_state

+

Checks that the user is inside the src_object.

+

tgui state: deep_inventory_state

+

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

default_state + + + + +

+

tgui state: default_state

+

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

+

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

dna_activity_bounds + + + + +

+

DNA 2: The Spaghetti Strikes Back

+

@author N3X15 nexisentertainment@gmail.com

dna_mutations + + + + +

+

Assoc list. Key = type of the mutation, value = the mutation

dooc_enabled + + + + +

+

Is OOC currently enabled for dead people?

dsay_enabled + + + + +

+

Is deadchat currently enabled?

em_mask_matrix + + + + +

+

A globaly cached version of EM_MASK_MATRIX for quick access.

enter_allowed + + + + +

+

Allow new players to enter the game?

frozen_atom_list + + + + +

+

Freeze Mob/Mech Verb -- Ported from NSS Pheonix (Unbound Travels)//////

+

Allows admin's to right click on any mob/mech and freeze them in place.

game_year + + + + +

+

The current game year

ghost_hud_panel + + + + +

+

Stores an instance of /datum/ui_module/ghost_hud_panel so that ghosts can use this to open their HUD panel.

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.

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.

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

library_catalog + + + + +

+

Library Catalog global is for storing a library catalog datum that will track book, category, and report lists for the library

looc_enabled + + + + +

+

Is LOOC currently enabled?

looping_sounds + + + + +

+

List of looping sounds

marker_beacon_colors + + + + +

+

Marker Beacons

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)

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.

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

strippable_state + + + + +

+

tgui state: strippable_state

+

Checks if user can strip the mob src_object

tcomms_machines + + + + +

+

Global list for all telecomms machines in the world

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:

+ +

How to use (DM side):

+
    +
  1. Call /obj/proc/ui_login_act at the start of your ui_act() proc
  2. +
  3. Call /obj/proc/ui_login_data in your ui_data() proc while passing the data list
  4. +
  5. In your object, call /obj/proc/ui_login_get to get the current login state.
  6. +
  7. Optional: call /obj/proc/ui_login_attackby in your attackby() to make the login process easier.
  8. +
+

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

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.

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

+ + + diff --git a/datum/controller/master.html b/datum/controller/master.html new file mode 100644 index 0000000000000..ad8d425a6ab6e --- /dev/null +++ b/datum/controller/master.html @@ -0,0 +1,178 @@ + + + + + + + /datum/controller/master - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

master + + + +

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

Vars

current_runlevelFor scheduling different subsystems for different stages of the round
current_ticklimitCurrent tick limit, assigned before running a subsystem. Used by CHECK_TICK as well so that the procs subsystems call can obey that SS's tick limits
initializations_finished_with_no_players_logged_inDid inits finish with no one logged in
iterationHow many times have we ran
last_init_infoLast reported init info
last_runworld.time of last fire, for tracking lag outside of the mc
last_type_processedThe type of the last subsystem to be fire()'d.
make_runtimeSet this to 1 to debug the MC with a detailed stack trace. Do not set on a production server.
map_loadingAre we loading in a new map?
processingAre we processing (higher values increase the processing delay by n ticks)
queue_headStart of queue linked list
queue_priority_countRunning total so that we don't have to loop thru the queue each run to split up the tick
queue_priority_count_bgSame, but for background subsystems
queue_tailEnd of queue linked list (used for appending to the list)
random_seedRandom seed generated for randomness if entropy is required
skip_ticksOnly run ticker subsystems for the next n ticks.
sleep_deltaHow long is the MC sleeping between runs, read only (set by Loop() based off of anti-tick-contention heuristics)
sleep_offline_after_initializationsDo we want to sleep until players log in?
ss_in_init_orderCache for the loading screen - cleared after
subsystemsList of subsystems to fire().

Procs

RunQueueRunQueue - Run thru the queue of subsystems to run, running them while balancing out their allocated tick precentage +Returns 0 if runtimed, a negitive number for logic errors, and a positive number if the operation completed without errors
+

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

initializations_finished_with_no_players_logged_in + + + + +

+

Did inits finish with no one logged in

iteration + + + + +

+

How many times have we ran

last_init_info + + + + +

+

Last reported init info

last_run + + + + +

+

world.time of last fire, for tracking lag outside of the mc

last_type_processed + + + + +

+

The type of the last subsystem to be fire()'d.

make_runtime + + + + +

+

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

+ + + diff --git a/datum/controller/subsystem.html b/datum/controller/subsystem.html new file mode 100644 index 0000000000000..9ea4dabf1ea91 --- /dev/null +++ b/datum/controller/subsystem.html @@ -0,0 +1,312 @@ + + + + + + + /datum/controller/subsystem - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Subsystem base class + + + +

+ +

Defines a subsystem to be managed by the Master Controller

+

Simply define a child of this subsystem, using the [SUBSYSTEM_DEF] macro, and the MC will handle registration. +Changing the name is required

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

Vars

can_fireSet to 0 to prevent fire() calls, mostly for admin use or subsystems that may be resumed later +use the [SS_NO_FIRE] flag instead for systems that never fire to keep it from even being added to list that is checked every tick
costRunning average of the amount of milliseconds it takes the subsystem to complete a run (including all resumes but not the time spent paused)
cpu_displayTab to display in under the MC subtabs
failure_strikesHow many times we suspect a subsystem type has crashed the MC, 3 strikes and you're out!
fire_sleep_countAmount 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_orderOrder of initialization. Higher numbers are initialized first, lower numbers later. Use or create defines such as [INIT_ORDER_DEFAULT] so we can see the order in one file.
initializedThis var is set to TRUE after the subsystem has been initialized.
last_fireLast world.time the subsystem completed a run (as in wasn't paused by [MC_TICK_CHECK])
nameName of the subsystem - you must change this
next_fireScheduled world.time for next fire()
offline_implicationsWhat are the implications of this SS being offlined?
paused_tick_usageTracks how much of a tick the subsystem has consumed in the current run
paused_ticksTracks how many fires the subsystem has consecutively paused on in the current run
postponed_firesHow many fires have we been requested to postpone
priorityPriority Weight: When mutiple subsystems need to run in the same tick, higher priority subsystems will be given a higher share of the tick before MC_TICK_CHECK triggers a sleep, higher priority subsystems also run before lower priority subsystems
queue_nextNext subsystem in the queue of subsystems to run this tick
queue_prevPrevious subsystem in the queue of subsystems to run this tick
queued_priorityPriority at the time the subsystem entered the queue. Needed to avoid changes in priority (by admins and the like) from breaking things.
queued_timeTime the subsystem entered the queue, (for timing and priority reasons)
runlevelsBitmap of what game states can this subsystem fire at. See [RUNLEVELS_DEFAULT] for more details.
ss_idSS ID - Again, change this but keep it snake_case
stateTracks the current execution state of the subsystem. Used to handle subsystems that sleep in fire so the mc doesn't run them again while they are sleeping
tick_allocation_avgHow much of a tick (in percents of a tick) do we get allocated by the mc on avg.
tick_allocation_lastHow much of a tick (in percents of a tick) were we allocated last fire.
tick_overrunRunning average of the amount of tick usage (in percents of a game tick) the subsystem has spent past its allocated time without pausing
tick_usageRunning average of the amount of tick usage in percents of a tick it takes the subsystem to complete a run
ticksTracks how many fires the subsystem takes to complete a run on average.
times_firedTracks the amount of completed runs for the subsystem
waitTime to wait (in deciseconds) between each call to fire(). Must be a positive integer.

Procs

PreInitdatum/controller/subsystem/New()
enqueueQueue it to run. +(we loop thru a linked list until we get to the end or find the right point) +(this lets us sort our run order correctly without having to re-sort the entire already sorted list)
firepreviously, this would have been named 'process()' but that name is used everywhere for different things! +fire() seems more suitable. This is the procedure that gets called every 'wait' deciseconds. +Sleeping in here prevents future fires until returned.
get_costReturns what to display as the ms cost for this subsystem.
get_metricsReturns the metrics for the subsystem.
igniteThis is used so the mc knows when the subsystem sleeps. do not override.
postponeCauses the next "cycle" fires to be missed. Effect is accumulative but can reset by calling update_nextfire(reset_time = TRUE)
update_nextfire
+

Var Details

can_fire + + + + +

+

Set to 0 to prevent fire() calls, mostly for admin use or subsystems that may be resumed later +use the [SS_NO_FIRE] flag instead for systems that never fire to keep it from even being added to list that is checked every tick

cost + + + + +

+

Running average of the amount of milliseconds it takes the subsystem to complete a run (including all resumes but not the time spent paused)

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.

postpone +

+

Causes the next "cycle" fires to be missed. Effect is accumulative but can reset by calling update_nextfire(reset_time = TRUE)

update_nextfire +

+
+ + + diff --git a/datum/controller/subsystem/air.html b/datum/controller/subsystem/air.html new file mode 100644 index 0000000000000..3a8cf927d2056 --- /dev/null +++ b/datum/controller/subsystem/air.html @@ -0,0 +1,232 @@ + + + + + + + /datum/controller/subsystem/air - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

air + + + +

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

Vars

added_bound_mixturesThe number of bound mixtures that were added during this processing cycle.
atmos_machineryThe set of active atmos machinery. Length shown in SS Info as AM.
bound_mixturesThe 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_machineryThe cost of a pass through atmos machinery, shown in SS Info's C block as AM.
cost_bound_mixturesThe cost of a pass through bound gas mixtures, shown in SS Info's C block as BM.
cost_fullHow long we took for a full pass through the subsystem. Custom-tracked version of cost.
cost_hotspotsThe cost of a pass through hotspots, shown in SS Info's C block as HS.
cost_interesting_tilesThe cost of a pass through interesting tiles, shown in SS Info's C block as IT.
cost_milla_tickThe cost of a MILLA tick in ms, shown in SS Info's C block as MT.
cost_pipenetsThe cost of a pass through pipenets, shown in SS Info's C block as PN.
cost_pipenets_to_buildThe cost of a pass through building pipenets, shown in SS Info's C block as DPN.
currentpartWhich step we're currently on, used to let us resume if our time budget elapses.
currentrunAn arbitrary list of stuff currently being processed.
healthyIs MILLA (and hence SSair) reliably healthy?
hotspotsThe set of current active hotspots. Length shown in SS Info as HS.
icon_managerPipe overlay/underlay icon manager
in_milla_safe_codeAre we currently running in a MILLA-safe context, i.e. is is_synchronous guaranteed to be TRUE. Nothing outside of this file should change this.
interesting_tile_countThe length of the most recent interesting tiles list, shown in SS Info as IT.
is_synchronousIs MILLA currently in synchronous mode? TRUE if data is fresh and changes can be made, FALSE if data is from last tick and changes cannot be made (because this tick is still processing).
last_bound_mixturesThe number of bound mixtures we saw when we last stopped processing them.
last_unhealthyWhen was MILLA last seen unhealthy?
machinery_to_constructA list of atmos machinery to set up in Initialize.
milla_tick_startWhen did we start the last MILLA tick?
original_bound_mixturesThe original length of bound_mixtures.
pipenetsThe set of active pipenets. Length shown in SS Info as PN.
pipenets_to_buildThe set of pipenets that need to be built. Length shown in SS Info as PTB.
time_sleptHow long we spent sleeping while waiting for MILLA to finish the last tick, shown in SS Info's C block as ZZZ.
waiting_for_syncA list of callbacks waiting for MILLA to finish its tick and enter synchronous mode.

Procs

synchronizeSimilar 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.

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.

healthy + + + + +

+

Is MILLA (and hence SSair) reliably healthy?

hotspots + + + + +

+

The set of current active hotspots. Length shown in SS Info as HS.

icon_manager + + + + +

+

Pipe overlay/underlay icon manager

in_milla_safe_code + + + + +

+

Are we currently running in a MILLA-safe context, i.e. is is_synchronous 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.

is_synchronous + + + + +

+

Is MILLA currently in synchronous mode? TRUE if data is fresh and changes can be made, FALSE if data is from last tick and changes cannot be made (because this tick is still processing).

last_bound_mixtures + + + + +

+

The number of bound mixtures we saw when we last stopped processing them.

last_unhealthy + + + + +

+

When was MILLA last seen unhealthy?

machinery_to_construct + + + + +

+

A list of atmos machinery to set up in Initialize.

milla_tick_start + + + + +

+

When did we start the last MILLA 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.

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.

Proc Details

synchronize +

+

Similar to addtimer, but triggers once MILLA enters synchronous mode.

+ + + diff --git a/datum/controller/subsystem/ambience.html b/datum/controller/subsystem/ambience.html new file mode 100644 index 0000000000000..0a2dc5f45d06c --- /dev/null +++ b/datum/controller/subsystem/ambience.html @@ -0,0 +1,36 @@ + + + + + + + /datum/controller/subsystem/ambience - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

ambience + + + +

+ + +

Vars

ambience_listening_clientsAssoc list of listening client - next ambience time
+

Var Details

ambience_listening_clients + + + + +

+

Assoc list of listening client - next ambience time

+ + + diff --git a/datum/controller/subsystem/assets.html b/datum/controller/subsystem/assets.html new file mode 100644 index 0000000000000..6db40fe639f2a --- /dev/null +++ b/datum/controller/subsystem/assets.html @@ -0,0 +1,36 @@ + + + + + + + /datum/controller/subsystem/assets - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

assets + + + +

+ + +

Vars

cacheContains /datum/asset_cache_item
+

Var Details

cache + + + + +

+

Contains /datum/asset_cache_item

+ + + diff --git a/datum/controller/subsystem/blackbox.html b/datum/controller/subsystem/blackbox.html new file mode 100644 index 0000000000000..52dba59e5d565 --- /dev/null +++ b/datum/controller/subsystem/blackbox.html @@ -0,0 +1,159 @@ + + + + + + + /datum/controller/subsystem/blackbox - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

blackbox + + + +

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

Vars

feedbackList of all recorded feedback
research_levelsList of highest tech levels attained that isn't lost lost by destruction of RD computers
sealedIs it time to stop tracking stats?
versionsAssociative list of any feedback variables that have had their format changed since creation and their current version, remember to update this

Procs

LogBroadcastRadio broadcast logging helper
ReportDeathDeath reporting proc
SealBlackbox Sealer
ShutdownShutdown Helper
find_feedback_datumHelper to find and return a feeedback datum
log_researchResearch level broadcast logging helper
record_feedbackMain feedback recording proc
record_feedback_recurse_listRecursive list recorder
+

Var Details

feedback + + + + +

+

List of all recorded feedback

research_levels + + + + +

+

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:

+

ReportDeath +

+

Death reporting proc

+

Called when humans and cyborgs die, and logs death info to the death table

+

Arguments:

+

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:

+

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:

+

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:

+

record_feedback_recurse_list +

+

Recursive list recorder

+

Used by the above proc for nested tallies

+

Arguments:

+
+ + + diff --git a/datum/controller/subsystem/chat.html b/datum/controller/subsystem/chat.html new file mode 100644 index 0000000000000..6c3511f6c3279 --- /dev/null +++ b/datum/controller/subsystem/chat.html @@ -0,0 +1,50 @@ + + + + + + + /datum/controller/subsystem/chat - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

chat + + + +

+ + + + +

Vars

client_to_payloadsAssociates a ckey with a list of messages to send to them.
client_to_reliability_historyAssociates a ckey with an associative list of their last CHAT_RELIABILITY_HISTORY_SIZE messages.
client_to_sequence_numberAssociates 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.

+ + + diff --git a/datum/controller/subsystem/cleanup.html b/datum/controller/subsystem/cleanup.html new file mode 100644 index 0000000000000..cb0965a679dca --- /dev/null +++ b/datum/controller/subsystem/cleanup.html @@ -0,0 +1,36 @@ + + + + + + + /datum/controller/subsystem/cleanup - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

cleanup + + + +

+ + +

Vars

lists_to_cleanA 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.

+ + + diff --git a/datum/controller/subsystem/dbcore.html b/datum/controller/subsystem/dbcore.html new file mode 100644 index 0000000000000..1519ff9e5fe35 --- /dev/null +++ b/datum/controller/subsystem/dbcore.html @@ -0,0 +1,200 @@ + + + + + + + /datum/controller/subsystem/dbcore - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

dbcore + + + +

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

Vars

active_queriesList of currenty processing queries
connectionConnection handle. This is an arbitrary handle returned from rust_g.
failed_connection_timeoutTimeout of failed connections
failed_connectionsAmount of failed connections
last_errorLast error to occur
schema_validIs the DB schema valid
total_errorsSQL errors that have occured mid round

Procs

CheckSchemaVersionSchema Version Checker
ConnectConnection Creator
DisconnectDisconnection Handler
ErrorMsgError Message Helper
IsConnectedIsConnected Helper
MassExecuteHandler to allow many queries to be executed en masse
NewQueryNew Query Invoker
ReportErrorError Reporting Helper
SetRoundEndRound End Time Setter
SetRoundIDRound ID Setter
SetRoundStartRound End Time Setter
ShutdownShutdown Handler
+

Var Details

active_queries + + + + +

+

List of currenty processing queries

connection + + + + +

+

Connection handle. This is an arbitrary handle returned from rust_g.

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, RUST_G 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:

+

NewQuery +

+

New Query Invoker

+

Checks to make sure this query isnt being invoked by admin fuckery, then returns a new /datum/db_query

+

Arguments:

+

ReportError +

+

Error Reporting Helper

+

Pretty much just sets last_error to the error argument

+

Arguments:

+

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.

+ + + diff --git a/datum/controller/subsystem/debugview.html b/datum/controller/subsystem/debugview.html new file mode 100644 index 0000000000000..adb37954464b3 --- /dev/null +++ b/datum/controller/subsystem/debugview.html @@ -0,0 +1,36 @@ + + + + + + + /datum/controller/subsystem/debugview - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

debugview + + + +

+ + +

Vars

processingList of clients currently processing
+

Var Details

processing + + + + +

+

List of clients currently processing

+ + + diff --git a/datum/controller/subsystem/economy.html b/datum/controller/subsystem/economy.html new file mode 100644 index 0000000000000..0a5bfe023dbc8 --- /dev/null +++ b/datum/controller/subsystem/economy.html @@ -0,0 +1,296 @@ + + + + + + + /datum/controller/subsystem/economy - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

economy + + + +

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

Vars

account_counterTotal 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_messageRemarks from Centcom on how well you checked the last order.
credits_per_designcredits gained per research design sold
credits_per_easy_reagent_goalcredits 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_intelcredits gained per intel sold
credits_per_manifestcredits gained per slip returned
credits_per_mechcredits gained per working mech sold
credits_per_plasmacredits gained per plasma sold
credits_per_salvagepoints gained per salvage sold
credits_per_virology_goalpoints gained per virology goal
current_10_minute_spendingamount of money spent in this 15 minute slot during the round
delivery_listCrates that will be on next shuttle
discovered_plantsTypepaths for unusual plants we've already sent CentComm, associated with their potencies
economy_datalist 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_cargocredits lost for sending unsecured cargo
fine_for_messy_shuttlecredits lost for sending a messy shuttle
fine_for_selling_trashcredits lost for sending unwanted items
money_account_databasesList of all money account databases existing in the round
next_data_checktime to next stats check
next_mail_delayTime until the next mail shipment
next_paycheck_delay///Paycheck Variables///// +time to next payday
ordernumCurrent Order number
pack_price_modifierThe modifier on crate prices to multiple the price by.
payday_counttotal paydays this round
request_listRequested crates, waiting for approval by department heads
shopping_listApproved Crates, waiting to be delivered
space_credits_createdThe amount of space credits that have been created out of thin air, does not include credits created at round-start
space_credits_destroyedThe amount of space credits that have been irreversibly deleted/removed from the round
supply_packsFull list of all available supply packs to purchase
total_credit_transfersThe amount of transfers (that are worth more than a few credits) that have been accepted during the round
total_space_cashThe 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_creditsThe absolute total amount of space credits in various economy systems, does not count space cash
total_vendor_transactionsthe amount of venor purchases during the round

Procs

firecreate main station accounts
generate_supply_orderSupply Stuff
paydayPaycheck Stuff
+

Var Details

account_counter + + + + +

+

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

fire +

+

create main station accounts

generate_supply_order +

+

Supply Stuff

payday +

+

Paycheck Stuff

+ + + diff --git a/datum/controller/subsystem/ghost_spawns.html b/datum/controller/subsystem/ghost_spawns.html new file mode 100644 index 0000000000000..d8c15ea0ed80c --- /dev/null +++ b/datum/controller/subsystem/ghost_spawns.html @@ -0,0 +1,107 @@ + + + + + + + /datum/controller/subsystem/ghost_spawns - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

ghost_spawns + + + +

+ + + + + + + + +

Vars

currently_pollingList of polls currently ongoing, to be checked on next fire()
next_poll_to_finishThe poll that's closest to finishing
polls_activeWhether there are active polls or not
total_pollsNumber of polls performed since the start

Procs

is_eligibleReturns whether an observer is eligible to be an event mob
poll_candidatesPolls for candidates with a question and a preview of the role
polling_finishedCalled 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:

+

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:

+

polling_finished +

+

Called by the subsystem when a poll's timer runs out

+

Can be called manually to finish a poll prematurely +Arguments:

+
+ + + diff --git a/datum/controller/subsystem/heartbeat.html b/datum/controller/subsystem/heartbeat.html new file mode 100644 index 0000000000000..20ff98c2796c2 --- /dev/null +++ b/datum/controller/subsystem/heartbeat.html @@ -0,0 +1,43 @@ + + + + + + + /datum/controller/subsystem/heartbeat - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

heartbeat + + + +

+ + + +

Vars

last_heartbeatLast time we got a heartbeat from TGS
warning_trippedHas a warning been sent this round?
+

Var Details

last_heartbeat + + + + +

+

Last time we got a heartbeat from TGS

warning_tripped + + + + +

+

Has a warning been sent this round?

+ + + diff --git a/datum/controller/subsystem/http.html b/datum/controller/subsystem/http.html new file mode 100644 index 0000000000000..8996f2e514682 --- /dev/null +++ b/datum/controller/subsystem/http.html @@ -0,0 +1,68 @@ + + + + + + + /datum/controller/subsystem/http - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

http + + + +

+ + + + + + +

Vars

active_async_requestsList of all async HTTP requests in the processing chain
logging_enabledVariable 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_requestsTotal requests the SS has processed in a round

Procs

create_async_requestAsync request creator
make_blocking_requestBlocking request creator
+

Var Details

active_async_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

+ + + diff --git a/datum/controller/subsystem/input.html b/datum/controller/subsystem/input.html new file mode 100644 index 0000000000000..df8097540d191 --- /dev/null +++ b/datum/controller/subsystem/input.html @@ -0,0 +1,36 @@ + + + + + + + /datum/controller/subsystem/input - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

input + + + +

+ + +

Vars

processingList of clients whose input to process in loop.
+

Var Details

processing + + + + +

+

List of clients whose input to process in loop.

+ + + diff --git a/datum/controller/subsystem/jobs.html b/datum/controller/subsystem/jobs.html new file mode 100644 index 0000000000000..b09eb2dbb9dcc --- /dev/null +++ b/datum/controller/subsystem/jobs.html @@ -0,0 +1,82 @@ + + + + + + + /datum/controller/subsystem/jobs - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

jobs + + + +

+ + + + + + + + +

Vars

drunken_spawningDo we spawn people drunkenly due to the party last night?
failed_head_antag_rollA list of minds that have failed to roll antagonist. Cleared when job selection finishes.
late_arrivals_spawningDo we spawn everyone at shuttle due to late arivals?
station_departmentslist of station departments and their associated roles and economy payments

Procs

CheckHeadPositionsThis proc is called at the start of the level loop of DivideOccupations() and will cause head jobs to be checked before any other jobs of the same level
DivideOccupationsProc DivideOccupations +fills var "assigned_role" for all ready players. +This proc must not have any side effect besides of modifying "assigned_role".
FillHeadPositionThis proc is called before the level loop of DivideOccupations() 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
+

Var Details

drunken_spawning + + + + +

+

Do we spawn people drunkenly due to the party last night?

failed_head_antag_roll + + + + +

+

A list of minds that have failed to roll antagonist. Cleared when job selection finishes.

late_arrivals_spawning + + + + +

+

Do we spawn everyone at shuttle due to late arivals?

station_departments + + + + +

+

list of station departments and their associated roles and economy payments

Proc Details

CheckHeadPositions +

+

This proc is called at the start of the level loop of DivideOccupations() and will cause head jobs to be checked before any other jobs of the same level

DivideOccupations +

+

Proc DivideOccupations +fills var "assigned_role" for all ready players. +This proc must not have any side effect besides of modifying "assigned_role".

FillHeadPosition +

+

This proc is called before the level loop of DivideOccupations() 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

+ + + diff --git a/datum/controller/subsystem/late_mapping.html b/datum/controller/subsystem/late_mapping.html new file mode 100644 index 0000000000000..860ae14b0a46c --- /dev/null +++ b/datum/controller/subsystem/late_mapping.html @@ -0,0 +1,43 @@ + + + + + + + /datum/controller/subsystem/late_mapping - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

late_mapping + + + +

+ + + +

Vars

bridge_spawnersList of all bridge spawners to process
maze_generatorsList of all maze generators to process
+

Var Details

bridge_spawners + + + + +

+

List of all bridge spawners to process

maze_generators + + + + +

+

List of all maze generators to process

+ + + diff --git a/datum/controller/subsystem/machines.html b/datum/controller/subsystem/machines.html new file mode 100644 index 0000000000000..8dbc798f04c96 --- /dev/null +++ b/datum/controller/subsystem/machines.html @@ -0,0 +1,36 @@ + + + + + + + /datum/controller/subsystem/machines - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

machines + + + +

+ + +

Vars

powernetsAll regional powernets (/datum/regional_powernet) in the world
+

Var Details

powernets + + + + +

+

All regional powernets (/datum/regional_powernet) in the world

+ + + diff --git a/datum/controller/subsystem/mapping.html b/datum/controller/subsystem/mapping.html new file mode 100644 index 0000000000000..84baa6cad8789 --- /dev/null +++ b/datum/controller/subsystem/mapping.html @@ -0,0 +1,85 @@ + + + + + + + /datum/controller/subsystem/mapping - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

mapping + + + +

+ + + + + + + + + +

Vars

cave_themeWhat primary cave theme we have picked for cave generation today.
environmentsA mapping of environment names to MILLA environment IDs.
existing_station_areasList of areas that exist on the station this shift
ghostteleportlocsList of all areas that can be accessed via IC and OOC means
lavaland_themeWhat do we have as the lavaland theme today?
map_datumWhat map datum are we using
next_mapWhat map will be used next round
teleportlocsList of all areas that can be accessed via IC means
+

Var Details

cave_theme + + + + +

+

What primary cave theme we have picked for cave generation today.

environments + + + + +

+

A mapping of environment names to MILLA environment IDs.

existing_station_areas + + + + +

+

List of areas that exist on the station this shift

ghostteleportlocs + + + + +

+

List of all areas that can be accessed via IC and OOC means

lavaland_theme + + + + +

+

What do we have as the lavaland theme today?

map_datum + + + + +

+

What map datum are we using

next_map + + + + +

+

What map will be used next round

teleportlocs + + + + +

+

List of all areas that can be accessed via IC means

+ + + diff --git a/datum/controller/subsystem/metrics.html b/datum/controller/subsystem/metrics.html new file mode 100644 index 0000000000000..2ebb556f12533 --- /dev/null +++ b/datum/controller/subsystem/metrics.html @@ -0,0 +1,36 @@ + + + + + + + /datum/controller/subsystem/metrics - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

metrics + + + +

+ + +

Vars

world_init_timeThe 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

+ + + diff --git a/datum/controller/subsystem/mobs.html b/datum/controller/subsystem/mobs.html new file mode 100644 index 0000000000000..685267bb1da09 --- /dev/null +++ b/datum/controller/subsystem/mobs.html @@ -0,0 +1,36 @@ + + + + + + + /datum/controller/subsystem/mobs - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

mobs + + + +

+ + +

Vars

xenobiology_mobsThe 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

+ + + diff --git a/datum/controller/subsystem/persistent_data.html b/datum/controller/subsystem/persistent_data.html new file mode 100644 index 0000000000000..04a39e700ce07 --- /dev/null +++ b/datum/controller/subsystem/persistent_data.html @@ -0,0 +1,56 @@ + + + + + + + /datum/controller/subsystem/persistent_data - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

persistent_data + + + +

+ + + + +

Vars

data_savedSet to true after a the end of the round to prevent griefing being saved
registered_atomsList of atoms registered into the subsystem for persistent data storage. Can be anything at all

Procs

registerProc to register an atom with SSpersistent_data
+

Var Details

data_saved + + + + +

+

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:

+
+ + + diff --git a/datum/controller/subsystem/ping.html b/datum/controller/subsystem/ping.html new file mode 100644 index 0000000000000..e848a32741431 --- /dev/null +++ b/datum/controller/subsystem/ping.html @@ -0,0 +1,36 @@ + + + + + + + /datum/controller/subsystem/ping - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

ping + + + +

+ + +

Vars

current_runList 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

+ + + diff --git a/datum/controller/subsystem/processing/dcs.html b/datum/controller/subsystem/processing/dcs.html new file mode 100644 index 0000000000000..11d9bf932f8ab --- /dev/null +++ b/datum/controller/subsystem/processing/dcs.html @@ -0,0 +1,41 @@ + + + + + + + /datum/controller/subsystem/processing/dcs - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

dcs + + + +

+ + +

Procs

GetIdFromArgumentsGenerates an id for bespoke elements when given the argument list +Generating the id here is a bit complex because we need to support named arguments +Named arguments can appear in any order and we need them to appear after ordered arguments +We assume that no one will pass in a named argument with a value of null

Proc Details

GetIdFromArguments +

+

Generates an id for bespoke elements when given the argument list +Generating the id here is a bit complex because we need to support named arguments +Named arguments can appear in any order and we need them to appear after ordered arguments +We assume that no one will pass in a named argument with a value of null

+ + + diff --git a/datum/controller/subsystem/processing/instruments.html b/datum/controller/subsystem/processing/instruments.html new file mode 100644 index 0000000000000..16d5c2c31d586 --- /dev/null +++ b/datum/controller/subsystem/processing/instruments.html @@ -0,0 +1,136 @@ + + + + + + + /datum/controller/subsystem/processing/instruments - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

instruments + + + +

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

Vars

current_instrument_channelsCurrent number of channels allocated for instruments
instrument_dataList of all instrument data, associative id = datum
max_instrument_channelsMaximum instrument channels total instruments are allowed to use. This is so you don't have instruments deadlocking all sound channels.
musician_hearcheck_mindelayDeciseconds 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_maxlinecharsMax characters per line in songs
musician_maxlinesMax lines in songs
songsList of all song datums.
synthesizer_instrument_idsSingle cached list for synthesizer instrument ids, so you don't have to have a new list with every synthesizer.

Procs

get_instrumentReturns the instrument datum at the given ID or path
initialize_instrument_dataInitializes all instrument datums
on_song_delCalled when a datum/song is deleted
on_song_newCalled when a datum/song is created
reserve_instrument_channelReserves 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:

+

initialize_instrument_data +

+

Initializes all instrument datums

on_song_del +

+

Called when a datum/song is deleted

+

Arguments:

+

on_song_new +

+

Called when a datum/song is created

+

Arguments:

+

reserve_instrument_channel +

+

Reserves a sound channel for a given instrument datum

+

Arguments:

+
+ + + diff --git a/datum/controller/subsystem/processing/projectiles.html b/datum/controller/subsystem/processing/projectiles.html new file mode 100644 index 0000000000000..9c875423c32ab --- /dev/null +++ b/datum/controller/subsystem/processing/projectiles.html @@ -0,0 +1,50 @@ + + + + + + + /datum/controller/subsystem/processing/projectiles - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

projectiles + + + +

+ + + + +

Vars

global_iterations_per_moveMaximum iterations a move can perform.
global_max_tick_movesMaximum moves a projectile can make per tick.
global_pixel_speedHow 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.

+ + + diff --git a/datum/controller/subsystem/processing/radiation.html b/datum/controller/subsystem/processing/radiation.html new file mode 100644 index 0000000000000..81af8a4b0597c --- /dev/null +++ b/datum/controller/subsystem/processing/radiation.html @@ -0,0 +1,36 @@ + + + + + + + /datum/controller/subsystem/processing/radiation - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

radiation + + + +

+ + +

Vars

all_radiationsLazy list of all radioactive components
+

Var Details

all_radiations + + + + +

+

Lazy list of all radioactive components

+ + + diff --git a/datum/controller/subsystem/processing/station.html b/datum/controller/subsystem/processing/station.html new file mode 100644 index 0000000000000..f7ab0b90c67c4 --- /dev/null +++ b/datum/controller/subsystem/processing/station.html @@ -0,0 +1,64 @@ + + + + + + + /datum/controller/subsystem/processing/station - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

station + + + +

+ + + + + + +

Vars

selectable_traits_by_typesAssoc list of trait type || assoc list of traits with weighted value. Used for picking traits from a specific category.
station_traitsA list of currently active station traits

Procs

SetupTraitsRolls for the amount of traits and adds them to the traits list
pick_traitsPicks 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_traitCreates 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.

+ + + diff --git a/datum/controller/subsystem/profiler.html b/datum/controller/subsystem/profiler.html new file mode 100644 index 0000000000000..78c7c40da45df --- /dev/null +++ b/datum/controller/subsystem/profiler.html @@ -0,0 +1,71 @@ + + + + + + + /datum/controller/subsystem/profiler - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

profiler + + + +

+ + + + + + + +

Vars

mfetch_costTime it took to fetch map profile data (ms)
mwrite_costTime it took to write the map file (ms)
nfetch_costTime it took to fetch normal profile data (ms)
nwrite_costTime it took to write the normal file (ms)
send_encode_costTime it took to encode the data for redis (ms)
send_ffi_costTime 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)

+ + + diff --git a/datum/controller/subsystem/queue.html b/datum/controller/subsystem/queue.html new file mode 100644 index 0000000000000..c2873996a70ef --- /dev/null +++ b/datum/controller/subsystem/queue.html @@ -0,0 +1,64 @@ + + + + + + + /datum/controller/subsystem/queue - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

queue + + + +

+ + + + + + +

Vars

last_letin_timeLast world.time we let a ckey in. 3 second delay between each letin to avoid a mass bubble
persist_queueWhether to persist these settings over multiple rounds
queue_bypass_listList of ckeys allowed to bypass queue this round
queue_enabledWhether the queue is enabled or not
queue_thresholdThreshold of players to queue new people
+

Var Details

last_letin_time + + + + +

+

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

+ + + diff --git a/datum/controller/subsystem/redis.html b/datum/controller/subsystem/redis.html new file mode 100644 index 0000000000000..678030d886847 --- /dev/null +++ b/datum/controller/subsystem/redis.html @@ -0,0 +1,50 @@ + + + + + + + /datum/controller/subsystem/redis - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

redis + + + +

+ + + + +

Vars

connectedAre we connected
queueMessage queue (If messages are sent before the SS has init'd)
subbed_channelsAmount of subscribed channels on the redis server
+

Var Details

connected + + + + +

+

Are we connected

queue + + + + +

+

Message queue (If messages are sent before the SS has init'd)

subbed_channels + + + + +

+

Amount of subscribed channels on the redis server

+ + + diff --git a/datum/controller/subsystem/security_level.html b/datum/controller/subsystem/security_level.html new file mode 100644 index 0000000000000..97c3824ebe358 --- /dev/null +++ b/datum/controller/subsystem/security_level.html @@ -0,0 +1,141 @@ + + + + + + + /datum/controller/subsystem/security_level - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

security_level + + + +

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

Vars

available_levelsA list of initialised security level datums
current_security_levelCurrently set security level
security_level_set_timer_idOption reference of a timer id of the latest set security level. Only set when security level is changed to one with set_delay > 0

Procs

announce_security_levelHandles announcements of the newly set security level
do_set_levelActually sets the security level after the announcement
get_colored_current_security_level_nameReturns security level name formatted with it's color
get_current_level_as_numberReturns the current security level as a number +In case the subsystem hasn't finished initializing yet, returns default security level
get_current_level_as_textReturns the current security level as text
number_level_to_textConverts a number security level to a text
pre_set_levelDo things before the actual security level set, like executing security level specific pre change behavior
set_levelSets a new security level as our current level
text_level_to_numberConverts a text security level to a number
+

Var Details

available_levels + + + + +

+

A list of initialised security level datums

current_security_level + + + + +

+

Currently set security level

security_level_set_timer_id + + + + +

+

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:

+

do_set_level +

+

Actually sets the security level after the announcement

+

Sends COMSIG_SECURITY_LEVEL_CHANGED in the end

+

Arguments:

+

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:

+

pre_set_level +

+

Do things before the actual security level set, like executing security level specific pre change behavior

+

Arguments:

+

set_level +

+

Sets a new security level as our current level

+

This is how everything should change the security level

+

Arguments:

+

text_level_to_number +

+

Converts a text security level to a number

+

Arguments:

+
+ + + diff --git a/datum/controller/subsystem/shuttle.html b/datum/controller/subsystem/shuttle.html new file mode 100644 index 0000000000000..7f7bcacd2d8a3 --- /dev/null +++ b/datum/controller/subsystem/shuttle.html @@ -0,0 +1,87 @@ + + + + + + + /datum/controller/subsystem/shuttle - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

shuttle + + + +

+ + + + + + + + + +

Vars

custom_escape_shuttle_loadingWhether or not a custom shuttle is currently loading at centcomm.
custom_shuttle_orderedWhether or not a custom shuttle has been ordered.
emergency_locked_inHave we locked in the emergency shuttle, to prevent people from breaking things / wasting player money?
hostile_environmentsThings blocking escape shuttle from leaving.
loading_shuttle_at_preview_templateWhether or not a shuttle is currently being loaded at the template landmark, if it exists.
refuel_delayDefault refuel delay
supply_shuttle_turfsSupply shuttle turfs to make mail be put down faster

Procs

replace_shuttleCreate a new shuttle and replace the emergency shuttle with it. +if loaded shuttle is passed in, a new one will not be loaded.
+

Var Details

custom_escape_shuttle_loading + + + + +

+

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.

loading_shuttle_at_preview_template + + + + +

+

Whether or not a shuttle is currently being loaded at the template landmark, if it exists.

refuel_delay + + + + +

+

Default refuel delay

supply_shuttle_turfs + + + + +

+

Supply shuttle turfs to make mail be put down faster

Proc Details

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.

+ + + diff --git a/datum/controller/subsystem/sounds.html b/datum/controller/subsystem/sounds.html new file mode 100644 index 0000000000000..a0521a4d221c9 --- /dev/null +++ b/datum/controller/subsystem/sounds.html @@ -0,0 +1,169 @@ + + + + + + + /datum/controller/subsystem/sounds - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

sounds + + + +

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

Vars

channel_listList of all channels as numbers
channel_random_lowlower 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_highhigher 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_minAmount 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_channelsAssociative list of all reserved channels associated to their position. "[channel_number]" = index as number
using_channelsAssoc list, "[channel]" = either the datum using it or TRUE for an unsafe-reserved (datumless reservation) channel
using_channels_by_datumAssoc list datum = list(channel1, channel2, ...) for what channels something reserved.

Procs

available_channels_leftHow many channels we have left
free_channelFrees a channel and updates the datastructure. Private proc.
free_datum_channelsFrees all the channels a datum is using
free_datumless_channelsFrees all datumless channels
free_sound_channelRemoves a channel from using list
random_available_channelRandom available channel, returns number
random_available_channel_textRandom available channel, returns text
reserve_channelReserves a channel and updates the datastructure. Private proc.
reserve_sound_channelReserves a channel for a datum. Automatic cleanup only when the datum is deleted.
reserve_sound_channel_datumlessNO AUTOMATIC CLEANUP - If you use this, you better manually free it later!
setup_available_channelsSets up all available sound channels
+

Var Details

channel_list + + + + +

+

List of all channels as numbers

channel_random_low + + + + +

+

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:

+

free_datumless_channels +

+

Frees all datumless channels

free_sound_channel +

+

Removes a channel from using list

+

Arguments:

+

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:

+

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

+ + + diff --git a/datum/controller/subsystem/statpanels.html b/datum/controller/subsystem/statpanels.html new file mode 100644 index 0000000000000..ad1986f0a7e4e --- /dev/null +++ b/datum/controller/subsystem/statpanels.html @@ -0,0 +1,80 @@ + + + + + + + /datum/controller/subsystem/statpanels - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

statpanels + + + +

+ + + + + + + + +

Vars

default_waitHow many subsystem fires between most tab updates
mc_waitHow many subsystem fires between updates of the MC tab
num_firesHow many full runs this subsystem has completed. used for variable rate refreshes.
status_waitHow many subsystem fires between updates of the status tab

Procs

immediate_send_stat_dataimmediately update the active statpanel tab of the target client
refresh_client_obj_viewSet the atoms we're meant to display
return_object_imagesReturns all our ready object tab images +Returns a list in the form list(list(object_name, object_ref, loaded_image), ...)
+

Var Details

default_wait + + + + +

+

How many subsystem fires between most tab updates

mc_wait + + + + +

+

How many subsystem fires between updates of the MC tab

num_fires + + + + +

+

How many full runs this subsystem has completed. used for variable rate refreshes.

status_wait + + + + +

+

How many subsystem fires between updates of the status tab

Proc Details

immediate_send_stat_data +

+

immediately update the active statpanel tab of the target client

refresh_client_obj_view +

+

Set the atoms we're meant to display

return_object_images +

+

Returns all our ready object tab images +Returns a list in the form list(list(object_name, object_ref, loaded_image), ...)

+ + + diff --git a/datum/controller/subsystem/tgui.html b/datum/controller/subsystem/tgui.html new file mode 100644 index 0000000000000..9935d4b8ead52 --- /dev/null +++ b/datum/controller/subsystem/tgui.html @@ -0,0 +1,202 @@ + + + + + + + /datum/controller/subsystem/tgui - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

tgui + + + +

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

Vars

basehtmlThe HTML base used for all UIs.
current_runA list of UIs scheduled to process
open_uisA list of open UIs
open_uis_by_srcA list of open UIs, grouped by src_object.

Procs

close_all_uispublic
close_uispublic
close_user_uispublic
force_close_all_windowspublic
force_close_windowpublic
get_open_uipublic
on_closeprivate
on_logoutprivate
on_openprivate
on_transferprivate
request_pooled_windowpublic
try_update_uipublic
update_uispublic
update_user_uispublic
+

Var Details

basehtml + + + + +

+

The HTML base used for all UIs.

current_run + + + + +

+

A list of UIs scheduled to process

open_uis + + + + +

+

A list of open UIs

open_uis_by_src + + + + +

+

A list of open UIs, grouped by src_object.

Proc Details

close_all_uis +

+

public

+

Close all UIs regardless of their attachment to src_object.

+

return int The number of UIs closed.

close_uis +

+

public

+

Close all UIs attached to src_object.

+

required src_object datum The object/datum which owns the UIs.

+

return int The number of UIs closed.

close_user_uis +

+

public

+

Close all UIs belonging to a user.

+

required user mob The mob who opened/is using the UI. +optional src_object datum If provided, only close UIs belonging this src_object.

+

return int The number of UIs closed.

force_close_all_windows +

+

public

+

Force closes all tgui windows.

+

required user mob

force_close_window +

+

public

+

Force closes the tgui window by window_id.

+

required user mob +required window_id string

get_open_ui +

+

public

+

Get a open UI given a user and src_object.

+

required user mob The mob who opened/is using the UI. +required src_object datum The object/datum which owns the UI.

+

return datum/tgui The found UI.

on_close +

+

private

+

Remove a UI from the list of open UIs.

+

required ui datum/tgui The UI to be removed.

+

return bool If the UI was removed or not.

on_logout +

+

private

+

Handle client logout, by closing all their UIs.

+

required user mob The mob which logged out.

+

return int The number of UIs closed.

on_open +

+

private

+

Add a UI to the list of open UIs.

+

required ui datum/tgui The UI to be added.

on_transfer +

+

private

+

Handle clients switching mobs, by transferring their UIs.

+

required user source The client's original mob. +required user target The client's new mob.

+

return bool If the UIs were transferred.

request_pooled_window +

+

public

+

Requests a usable tgui window from the pool. +Returns null if pool was exhausted.

+

required user mob +return datum/tgui

try_update_ui +

+

public

+

Try to find an instance of a UI, and push an update to it.

+

required user mob The mob who opened/is using the UI. +required src_object datum The object/datum which owns the UI. +optional ui datum/tgui The UI to be updated, if it exists. +optional force_open bool If the UI should be re-opened instead of updated.

+

return datum/tgui The found UI.

update_uis +

+

public

+

Update all UIs attached to src_object.

+

required src_object datum The object/datum which owns the UIs.

+

return int The number of UIs updated.

update_user_uis +

+

public

+

Update all UIs belonging to a user.

+

required user mob The mob who opened/is using the UI. +optional src_object datum If provided, only update UIs belonging this src_object.

+

return int The number of UIs updated.

+ + + diff --git a/datum/controller/subsystem/throwing.html b/datum/controller/subsystem/throwing.html new file mode 100644 index 0000000000000..cb5ae46f1df77 --- /dev/null +++ b/datum/controller/subsystem/throwing.html @@ -0,0 +1,57 @@ + + + + + + + /datum/controller/subsystem/throwing - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

throwing + + + +

+ + + + + +

Vars

impact_soundsHow many throw impact sounds have happened this tick.
impact_sounds_capHow many throw impact sounds we allow per tick.
last_impact_soundsHow many sounds there were last tick.
skipped_soundsHow 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.

+ + + diff --git a/datum/controller/subsystem/ticker.html b/datum/controller/subsystem/ticker.html new file mode 100644 index 0000000000000..dacbec40ca3c9 --- /dev/null +++ b/datum/controller/subsystem/ticker.html @@ -0,0 +1,239 @@ + + + + + + + /datum/controller/subsystem/ticker - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

ticker + + + +

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

Vars

Bible_deity_nameName of the bible deity
Bible_icon_stateicon_state the chaplain has chosen for his bible
Bible_item_stateitem_state the chaplain has chosen for his bible
Bible_nameName of the bible
cinematicUsed for station explosion cinematic
cult_dataCult 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
current_stateCurrent status of the game. See code__DEFINES\game.dm
delay_endIf set to TRUE, the round will not restart on it's own
end_stateServer end state (Did we end properly or reboot or nuke or what)
flagged_antag_rollersList of ckeys who had antag rolling issues flagged
force_endingDo we want to force-end as soon as we can
force_startDo we want to force-start as soon as we can
hide_modeLeave here at FALSE ! setup() will take care of it when needed for Secret mode -walter0o
login_musicThe current pick of lobby music played in the lobby
mindsList of all minds in the game. Used for objective tracking
modeOur current game mode
mode_resultGamemode result (For things like cult or nukies which can end multiple ways)
next_autotransferHolder for inital autotransfer vote timer
pregame_timeleftThis is used for calculations for the statpanel
random_playersIf set to nonzero, ALL players who latejoin or declare-ready join will have random appearances/genders
real_reboot_timeTime the real reboot kicks in
round_end_announcedSpam Prevention. Announce round end only once.
round_start_timeTime the game should start, relative to world.time
scoreDatum used to generate the end of round scoreboard.
selected_tipWhat will be the tip of the round?
ticker_goingIs the ticker currently processing? If FALSE, roundstart is delayed
time_game_startedTime that the round started
tippedDid we broadcast the tip of the round yet?
triaiGlobal holder for triple AI mode

Procs

event_blackboxThis 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.
+

Var Details

Bible_deity_name + + + + +

+

Name of the bible deity

Bible_icon_state + + + + +

+

icon_state the chaplain has chosen for his bible

Bible_item_state + + + + +

+

item_state the chaplain has chosen for his bible

Bible_name + + + + +

+

Name of the bible

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

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)

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_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

event_blackbox +

+

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.

+ + + diff --git a/datum/controller/subsystem/tickets.html b/datum/controller/subsystem/tickets.html new file mode 100644 index 0000000000000..138acc8f6dc7d --- /dev/null +++ b/datum/controller/subsystem/tickets.html @@ -0,0 +1,111 @@ + + + + + + + /datum/controller/subsystem/tickets - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

tickets + + + +

+ + + + + + + + + +

Vars

anchor_link_extraText that will be added to the anchor link
db_save_idDB ID for these tickets to be logged with
open_detail_uisWho has what tickets open? Maps client -> open ticket number.
other_ticket_nameThe name of the other ticket type to convert to
other_ticket_permissionWhich permission to look for when seeing if there is staff available for the other ticket type

Procs

makeUrlMessageWill 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_staffSends 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
newHelpRequestWill 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

+

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

+ + + diff --git a/datum/controller/subsystem/timer.html b/datum/controller/subsystem/timer.html new file mode 100644 index 0000000000000..cbfd57f9f03c0 --- /dev/null +++ b/datum/controller/subsystem/timer.html @@ -0,0 +1,141 @@ + + + + + + + /datum/controller/subsystem/timer - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

timer + + + +

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

Vars

bucket_auto_resetBoolean operator controlling if the timer SS will automatically reset buckets if it fails to invoke callbacks for an extended period of time
bucket_countHow many timers are in the buckets
bucket_listList of buckets, each bucket holds every timer that has to run that byond tick
bucket_reset_countHow many times bucket was reset
bucket_resolutionworld.tick_lag the bucket was designed for
clienttime_timersSpecial timers that run in real-time, not BYOND time; these are more expensive to run and maintain
hashesA hashlist dictionary used for storing unique timers
head_offsetworld.time of the first entry in the bucket list, effectively the 'start time' of the current buckets
last_invoke_tickContains the last time that a timer's callback was invoked, or the last tick the SS fired if no timers are being processed
last_invoke_warningContains the last time that a warning was issued for not invoking callbacks
next_clienttime_timer_indexKeeps track of the next index to work on for client timers
practical_offsetIndex of the wrap around pivot for buckets. buckets before this are later running buckets wrapped around from the end of the bucket list.
second_queueQueue used for storing timers that do not fit into the current buckets
timer_id_dictList of all active timers associated to their timer ID (for easy lookup)

Procs

get_timer_debug_stringGenerates a string with details about the timed event for debugging purposes
reset_bucketsDestroys the existing buckets and creates new buckets from the existing timed events
+

Var Details

bucket_auto_reset + + + + +

+

Boolean operator controlling if the timer SS will automatically reset buckets if it fails to invoke callbacks for an extended period of time

bucket_count + + + + +

+

How many timers are in the buckets

bucket_list + + + + +

+

List of buckets, each bucket holds every timer that has to run that byond tick

bucket_reset_count + + + + +

+

How many times bucket was reset

bucket_resolution + + + + +

+

world.tick_lag the bucket was designed for

clienttime_timers + + + + +

+

Special timers that run in real-time, not BYOND time; these are more expensive to run and maintain

hashes + + + + +

+

A hashlist dictionary used for storing unique timers

head_offset + + + + +

+

world.time of the first entry in the bucket list, effectively the 'start time' of the current buckets

last_invoke_tick + + + + +

+

Contains the last time that a timer's callback was invoked, or the last tick the SS fired if no timers are being processed

last_invoke_warning + + + + +

+

Contains the last time that a warning was issued for not invoking callbacks

next_clienttime_timer_index + + + + +

+

Keeps track of the next index to work on for client timers

practical_offset + + + + +

+

Index of the wrap around pivot for buckets. buckets before this are later running buckets wrapped around from the end of the bucket list.

second_queue + + + + +

+

Queue used for storing timers that do not fit into the current buckets

timer_id_dict + + + + +

+

List of all active timers associated to their timer ID (for easy lookup)

Proc Details

get_timer_debug_string +

+

Generates a string with details about the timed event for debugging purposes

reset_buckets +

+

Destroys the existing buckets and creates new buckets from the existing timed events

+ + + diff --git a/datum/controller/subsystem/verb_manager.html b/datum/controller/subsystem/verb_manager.html new file mode 100644 index 0000000000000..edb59fa2d82b0 --- /dev/null +++ b/datum/controller/subsystem/verb_manager.html @@ -0,0 +1,107 @@ + + + + + + + /datum/controller/subsystem/verb_manager - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

verb_manager + + + +

+ + + + + + + + + + +

Vars

FOR_ADMINS_IF_VERBS_FUCKED_immediately_execute_all_verbsif this is true all verbs immediately execute and dont queue. in case the mc is fucked or something
always_queuealways queue if possible. overides can_queue_admin_verbs but not FOR_ADMINS_IF_VERBS_FUCKED_immediately_execute_all_verbs
can_queue_admin_verbsif TRUE we treat usr's with holders just like usr's without holders. otherwise they always execute immediately
message_admins_on_queueif 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_queuelist 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_secondrunning average of how many verb callbacks are executed every second. used for the stat entry

Procs

can_queue_verbsubsystem-specific check for whether a callback can be queued. +intended so that subsystem subtypes can verify whether
queue_verbqueue 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()
run_verb_queueruns 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().
+

Var Details

FOR_ADMINS_IF_VERBS_FUCKED_immediately_execute_all_verbs + + + + +

+

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().

+ + + diff --git a/datum/controller/subsystem/vote.html b/datum/controller/subsystem/vote.html new file mode 100644 index 0000000000000..cc272d661ebce --- /dev/null +++ b/datum/controller/subsystem/vote.html @@ -0,0 +1,36 @@ + + + + + + + /datum/controller/subsystem/vote - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

vote + + + +

+ + +

Vars

active_voteActive vote, if any
+

Var Details

active_vote + + + + +

+

Active vote, if any

+ + + diff --git a/datum/crafting_recipe.html b/datum/crafting_recipe.html new file mode 100644 index 0000000000000..175b1ce9ce555 --- /dev/null +++ b/datum/crafting_recipe.html @@ -0,0 +1,113 @@ + + + + + + + /datum/crafting_recipe - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

crafting_recipe + + + +

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

Vars

alert_admins_on_craftWill this recipe send an admin message when it's completed.
always_availableIs this recipe always available, or does it need to be learned first.
blacklistType paths of items explicitly not allowed as an ingredient.
categoryWhat category it's shown under in the crafting UI.
nameIn-game display name.
partsType paths of items that will be placed inside the result.
pathtoolsType paths of items needed but not consumed.
reqsType paths of items consumed associated with how many are needed.
resultType paths of item(s) resulting from this craft.
subcategoryWhat subcategory it's shown under in the crafting UI. (e.g 'Ammo' under 'Weapons')
timeCrafting time in deciseconds.
toolsTool behaviours of items needed but not consumed.
+

Var Details

alert_admins_on_craft + + + + +

+

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.

+ + + diff --git a/datum/custom_user_item.html b/datum/custom_user_item.html new file mode 100644 index 0000000000000..b2badc833218c --- /dev/null +++ b/datum/custom_user_item.html @@ -0,0 +1,101 @@ + + + + + + + /datum/custom_user_item - Space Station 13 + + +
+ Space 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.

+ + + + + + + + +

Vars

all_characters_allowedCan this be used on all characters?
all_jobs_allowedAre all jobs allowed?
allowed_jobsList of allowed jobs
characer_nameName of the character that can have this item.
item_desc_overrideCustom item description override
item_name_overrideCustom item name override
object_typepathCustom item typepath
raw_job_maskRaw job mask

Procs

parse_infoCUI Info Parser
+

Var Details

all_characters_allowed + + + + +

+

Can this be used on all characters?

all_jobs_allowed + + + + +

+

Are all jobs allowed?

allowed_jobs + + + + +

+

List of allowed jobs

characer_name + + + + +

+

Name of the character that can have this item.

item_desc_override + + + + +

+

Custom item description override

item_name_override + + + + +

+

Custom item name override

object_typepath + + + + +

+

Custom item typepath

raw_job_mask + + + + +

+

Raw job mask

Proc Details

parse_info +

+

CUI Info Parser

+

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:

+
+ + + diff --git a/datum/data/pda/app/nanobank.html b/datum/data/pda/app/nanobank.html new file mode 100644 index 0000000000000..da5af8167dc27 --- /dev/null +++ b/datum/data/pda/app/nanobank.html @@ -0,0 +1,57 @@ + + + + + + + /datum/data/pda/app/nanobank - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

nanobank + + + +

+ + + + + +

Vars

account_databasemoney account database this PDA is connected to
last_transactionworld time of last transaction, used for cooldowns (to protect against transfer spams or accidental double clicks)
user_accountthe money account tethered to this program

Procs

input_account_pinattempted new security level is NOT an available option, likely user spoofing values
+

Var Details

account_database + + + + +

+

money account database this PDA is connected to

last_transaction + + + + +

+

world time of last transaction, used for cooldowns (to protect against transfer spams or accidental double clicks)

user_account + + + + +

+

the money account tethered to this program

Proc Details

input_account_pin +

+

attempted new security level is NOT an available option, likely user spoofing values

+ + + diff --git a/datum/data/vending_product.html b/datum/data/vending_product.html new file mode 100644 index 0000000000000..80f74314345fa --- /dev/null +++ b/datum/data/vending_product.html @@ -0,0 +1,57 @@ + + + + + + + /datum/data/vending_product - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

vending_product + + + +

+ +

Datum used to hold information about a product in a vending machine

+ + + +

Vars

amountHow many of this product we currently have
max_amountHow many we can store at maximum
pricePrice to buy one
product_pathTypepath 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

price + + + + +

+

Price to buy one

product_path + + + + +

+

Typepath of the product that is created when this record "sells"

+ + + diff --git a/datum/db_query.html b/datum/db_query.html new file mode 100644 index 0000000000000..fbe99c3914432 --- /dev/null +++ b/datum/db_query.html @@ -0,0 +1,173 @@ + + + + + + + /datum/db_query - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

db_query + + + +

+ +

Datum based handler for all database queries

+

Holds information regarding inputs, status, and outputs

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

Vars

affectedHow many rows were affected by the query
argumentsAn associative list of parameters to be substituted into the statement
connectionThe connection being used with this query
in_progressIs the query currently in progress
itemList of data values populated by NextRow()
last_activityWhat was our last activity
last_activity_timeWhen was our last activity
last_errorWhat was our last error, if any
last_insert_idID of the last inserted row
next_row_to_takeCounter of the next row to take
rowsList of all rows returned
sqlThe SQL statement being executed with :parameter placeholders

Procs

ActivityActivity Update Handler
ExecuteMain Execution Handler
NextRowProc to get the next row in a DB query
run_queryActual Query Runner
warn_executeWrapped for warning on execution
+

Var Details

affected + + + + +

+

How many rows were affected by the query

arguments + + + + +

+

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

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:

+

Execute +

+

Main Execution Handler

+

Invoked by [warn_execute()] +This handles query error logging, as well as invoking the actual runner +Arguments:

+

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:

+

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:

+
+ + + diff --git a/datum/department_member.html b/datum/department_member.html new file mode 100644 index 0000000000000..c5f1aadff34e6 --- /dev/null +++ b/datum/department_member.html @@ -0,0 +1,57 @@ + + + + + + + /datum/department_member - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

department_member + + + +

+ + + + + +

Vars

can_approve_cratesCan this department member approve crates for the department?
member_accountThis department members money account
nameName of the department member
roleOccupation of the department member
+

Var Details

can_approve_crates + + + + +

+

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

+ + + diff --git a/datum/design.html b/datum/design.html new file mode 100644 index 0000000000000..a27e9243f2a2f --- /dev/null +++ b/datum/design.html @@ -0,0 +1,39 @@ + + + + + + + /datum/design - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

design + + + +

+ +
				Design Datums						 
+
+

All the data for building stuff. +Datum for object designs, used in construction

+

Vars

requires_whitelistDetermines 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

+ + + diff --git a/datum/discord_embed.html b/datum/discord_embed.html new file mode 100644 index 0000000000000..77e78e557c16e --- /dev/null +++ b/datum/discord_embed.html @@ -0,0 +1,75 @@ + + + + + + + /datum/discord_embed - Space Station 13 + + +
+ Space 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

+ + + + + +

Vars

embed_colourColour of the strip on the side of the embed. Must be in hexadecimal WITHOUT leading hash
embed_contentContent of the embed
embed_timestampTimestamp the embed was sent at. Must be in 8601 format. Will be autoset on /New()
embed_titleTitle of the embed
fieldsList of all fields in the embed

Procs

serialize2listEmbed Serializer
+

Var Details

embed_colour + + + + +

+

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

+ + + diff --git a/datum/discord_embed_field.html b/datum/discord_embed_field.html new file mode 100644 index 0000000000000..daa6beb996c02 --- /dev/null +++ b/datum/discord_embed_field.html @@ -0,0 +1,52 @@ + + + + + + + /datum/discord_embed_field - Space Station 13 + + +
+ Space 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

+ + +

Vars

field_contentContent of the field
field_nameName of the field
inlineInline flag
+

Var Details

field_content + + + + +

+

Content of the field

field_name + + + + +

+

Name of the field

inline + + + + +

+

Inline flag

+ + + diff --git a/datum/discord_manager.html b/datum/discord_manager.html new file mode 100644 index 0000000000000..e3bfef2ddc51a --- /dev/null +++ b/datum/discord_manager.html @@ -0,0 +1,43 @@ + + + + + + + /datum/discord_manager - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

discord_manager + + + +

+ + + +

Vars

last_administration_pingLast 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_pingLast 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.

+ + + diff --git a/datum/discord_webhook_payload.html b/datum/discord_webhook_payload.html new file mode 100644 index 0000000000000..e232eff1e4637 --- /dev/null +++ b/datum/discord_webhook_payload.html @@ -0,0 +1,62 @@ + + + + + + + /datum/discord_webhook_payload - Space Station 13 + + +
+ Space 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

+ + + +

Vars

embedsList of all embed objects in the message
webhook_contentContent of the webhook message
webhook_nameName the webhook user should post as

Procs

serialize2jsonWebhook Serializer
+

Var Details

embeds + + + + +

+

List of all embed objects in the message

webhook_content + + + + +

+

Content of the webhook message

webhook_name + + + + +

+

Name the webhook user should post as

Proc Details

serialize2json +

+

Webhook Serializer

+

Converts the DM webhook object into JSON for a POST request. +Not called serialize() because thats a proc at the /datum level already

+ + + diff --git a/datum/disease.html b/datum/disease.html new file mode 100644 index 0000000000000..a2eb437a4c5a6 --- /dev/null +++ b/datum/disease.html @@ -0,0 +1,57 @@ + + + + + + + /datum/disease - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

disease + + + +

+ + + + + +

Vars

allow_deadAllow the virus to infect and process while the affected_mob is dead
discoveredIf TRUE, this virus will show up on medical HUDs. Automatically set when it reaches mid-stage.
discovery_thresholdThe fraction of stages the virus must at least be at to show up on medical HUDs. Rounded up.
medical_nameUsed for identification of viruses in the Medical Records Virus Database
+

Var Details

allow_dead + + + + +

+

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.

medical_name + + + + +

+

Used for identification of viruses in the Medical Records Virus Database

+ + + diff --git a/datum/disease/wizarditis.html b/datum/disease/wizarditis.html new file mode 100644 index 0000000000000..feb8a9432b69d --- /dev/null +++ b/datum/disease/wizarditis.html @@ -0,0 +1,36 @@ + + + + + + + /datum/disease/wizarditis - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

wizarditis + + + +

+ + +

Vars

magic_fashionA mapping of num2text(SLOT_HUD_XYZ) -> item path
+

Var Details

magic_fashion + + + + +

+

A mapping of num2text(SLOT_HUD_XYZ) -> item path

+ + + diff --git a/datum/disease/zombie.html b/datum/disease/zombie.html new file mode 100644 index 0000000000000..385cee1a4b924 --- /dev/null +++ b/datum/disease/zombie.html @@ -0,0 +1,43 @@ + + + + + + + /datum/disease/zombie - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

zombie + + + +

+ + + +

Vars

cure_stageHow far this particular virus is in being cured (0-4)
stage_timerCooldown until the virus can advance to the next stage
+

Var Details

cure_stage + + + + +

+

How far this particular virus is in being cured (0-4)

stage_timer + + + + +

+

Cooldown until the virus can advance to the next stage

+ + + diff --git a/datum/dmm_suite.html b/datum/dmm_suite.html new file mode 100644 index 0000000000000..917261a03511a --- /dev/null +++ b/datum/dmm_suite.html @@ -0,0 +1,82 @@ + + + + + + + /datum/dmm_suite - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

dmm_suite + + + +

+ + + + +

Procs

load_mapConstruct the model map and control the loading process
parse_gridFill 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)
parse_valueTries 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 :

+
    +
  1. Makes an associative mapping of model_keys with model +e.g aa = /turf/simulated/wall{icon_state = "rock"}
  2. +
  3. Read the map line by line, parsing the result (using parse_grid)
  4. +
+

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 :

+
    +
  1. +

    Read the model string, member by member (delimiter is ',')

    +
  2. +
  3. +

    Get the path of the atom and store it into a list

    +
  4. +
  5. +

    a) Check if the member has variables (text within '{' and '}')

    +
  6. +
  7. +

    b) Construct an associative list with found variables, if any (the atom index in members is the same as its variables in members_attributes)

    +
  8. +
  9. +

    Instanciates the atom with its variables

    +
  10. +

parse_value +

+

Tries to parse the given value_text. Will fallback on the value_text as a string if it fails

+ + + diff --git a/datum/effect_system.html b/datum/effect_system.html new file mode 100644 index 0000000000000..f37c6652e81c1 --- /dev/null +++ b/datum/effect_system.html @@ -0,0 +1,36 @@ + + + + + + + /datum/effect_system - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

effect_system + + + +

+ + +

Vars

numberThe number of objects the effect system will spawn
+

Var Details

number + + + + +

+

The number of objects the effect system will spawn

+ + + diff --git a/datum/element.html b/datum/element.html new file mode 100644 index 0000000000000..9a8d6b892720c --- /dev/null +++ b/datum/element.html @@ -0,0 +1,61 @@ + + + + + + + /datum/element - Space Station 13 + + +
+ Space 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.

+ + + +

Vars

element_flagsOption flags for element behaviour
id_arg_indexThe index of the first attach argument to consider for duplicate elements

Procs

AttachActivates the functionality defined by the element on the given target datum
DetachDeactivates the functionality defines by the element on the given datum
+

Var Details

element_flags + + + + +

+

Option flags for element behaviour

id_arg_index + + + + +

+

The index of the first attach argument to consider for duplicate elements

+

Is only used when flags contains ELEMENT_BESPOKE

+

This is infinity so you must explicitly set this

Proc Details

Attach +

+

Activates the functionality defined by the element on the given target datum

Detach +

+

Deactivates the functionality defines by the element on the given datum

+ + + diff --git a/datum/element/bombable_turf.html b/datum/element/bombable_turf.html new file mode 100644 index 0000000000000..a3ab1d5e69353 --- /dev/null +++ b/datum/element/bombable_turf.html @@ -0,0 +1,51 @@ + + + + + + + /datum/element/bombable_turf - Space Station 13 + + +
+ Space 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

+ + +

Procs

detonateIf we get blowed up, move to the next turf
on_examinedShow a little extra on examine
turf_changedIf 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

+ + + diff --git a/datum/element/shatters_when_thrown.html b/datum/element/shatters_when_thrown.html new file mode 100644 index 0000000000000..235f7d4174bd4 --- /dev/null +++ b/datum/element/shatters_when_thrown.html @@ -0,0 +1,64 @@ + + + + + + + /datum/element/shatters_when_thrown - Space Station 13 + + +
+ Space 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

+ + + + +

Vars

number_of_shardsHow many shards total are made when the thing we're attached to shatters
shard_typeWhat type of item is spawned as a 'shard' once the shattering happens
shattering_soundWhat sound plays when the thing we're attached to shatters

Procs

on_throw_impactTells the parent to shatter if we are thrown and impact something
shatterHandles 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

+ + + diff --git a/datum/element/squish.html b/datum/element/squish.html new file mode 100644 index 0000000000000..1ad6078bcf414 --- /dev/null +++ b/datum/element/squish.html @@ -0,0 +1,30 @@ + + + + + + + /datum/element/squish - Space Station 13 + + +
+ Space 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

+ + + diff --git a/datum/element/strippable.html b/datum/element/strippable.html new file mode 100644 index 0000000000000..0ae3cfd421fc4 --- /dev/null +++ b/datum/element/strippable.html @@ -0,0 +1,43 @@ + + + + + + + /datum/element/strippable - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

strippable + + + +

+ +

An element for atoms that, when dragged and dropped onto a mob, opens a strip panel.

+ +

Vars

itemsAn assoc list of keys to /datum/strippable_item
strip_menusAn existing strip menus
+

Var Details

items + + + + +

+

An assoc list of keys to /datum/strippable_item

strip_menus + + + + +

+

An existing strip menus

+ + + diff --git a/datum/emote.html b/datum/emote.html new file mode 100644 index 0000000000000..9d5b503ad8ff4 --- /dev/null +++ b/datum/emote.html @@ -0,0 +1,540 @@ + + + + + + + /datum/emote - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Emote + + + +

+ +

Most of the text that's not someone talking is based off of this.

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

Vars

age_basedWhether or not to adjust the frequency of the emote sound based on age.
audio_cooldownHow long is the cooldown on the audio of the emote, if it has one?
bypass_unintentional_cooldownIf true, an emote will completely bypass any cooldown when called unintentionally. Necessary for things like deathgasp.
cooldownThe cooldown between the uses of the emote.
emote_target_typeIf our target behavior isn't to ignore, what should we look for with targets?
emote_typeWhether the emote is visible or audible.
hands_use_checkChecks if the mob can use its hands before performing the emote.
keyWhat calls the emote.
key_third_personThis will also call the emote.
max_stat_allowedHow 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_allowedSame 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.
messageMessage displayed when emote is used.
message_AIMessage displayed if the user is an AI.
message_alienMessage displayed if the user is a grown alien.
message_larvaMessage displayed if the user is an alien larva.
message_mimeMessage displayed if the user is a mime.
message_monkeyMessage displayed if the user is a monkey.
message_observerMessage to display if the user is a spooky observer ghost.
message_paramMessage 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_postfixMessage 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_robotMessage displayed if the user is a robot.
message_simpleMessage to display if the user is a simple_animal.
mob_type_allowed_typecacheTypes that are allowed to use that emote.
mob_type_blacklist_typecacheTypes that are NOT allowed to use that emote.
mob_type_ignore_stat_typecacheTypes that can use this emote regardless of their state.
muzzle_ignoreIf the emote type is EMOTE_MOUTH but should still bypass a muzzle.
muzzled_noisesSounds emitted when the user is muzzled. Generally used like "[user] makes a pick(muzzled_noises) noise!"
only_forced_audioIf true, this emote will only make a sound effect when called unintentionally.
only_unintentionalWhether or not the emote can even be called at all if it's not intentional
param_descDescription appended to the emote name describing what the target should be, like for help commands.
soundSound to play when emote is called. If you want to adjust this dynamically, see get_sound().
species_type_blacklist_typecacheSpecies types which the emote will be exclusively not available to. Should be subclasses of /datum/species
species_type_whitelist_typecacheSpecies types which the emote will be exclusively available to. Should be subclasses of /datum/species
stat_allowedHow conscious do you need to be to use this emote intentionally?
target_behaviorIf we get a target, how do we want to treat it?
unintentional_audio_cooldownIf the emote is triggered unintentionally, how long would that cooldown be?
unintentional_stat_allowedHow conscious do you need to be to have this emote forced out of you?
varyWhether or not to vary the sound of the emote.
volumeHow loud is the audio emote?

Procs

act_on_targetPerform an action on the target of an emote, if one was found.
can_run_emoteCheck to see if the user is allowed to run the emote.
can_vocalize_emotesReturn 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_cooldownCheck 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.
find_targetFind a target for the emote based on the message parameter fragment passed in.
get_soundTo get the sound that the emote plays, for special sound interactions depending on the mob.
get_volumeGet the volume of the audio emote to play.
play_sound_effectPlay 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.
replace_pronounReplace pronouns in the inputed string with the user's proper pronouns.
reset_emoteReset 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_emoteHandles the modifications and execution of emotes.
runechat_emoteSend an emote to runechat for all (listening) users in the vicinity.
select_message_typeSelects the message type to override the message with.
select_paramReplaces the %t in the message in message_param by params.
should_play_soundCheck to see if the user should play a sound when performing the emote.
try_run_emoteTry 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.

+

can_run_emote +

+

Check to see if the user is allowed to run the emote.

+

Arguments:

+ +

Returns a bool about whether or not the user can run the emote.

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:

+ +

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.

+ +

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:

+ +

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:

+ +

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.

+

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:

+ +

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:

+ +

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:

+ +

Returns TRUE if it was able to run the emote, FALSE otherwise.

runechat_emote +

+

Send an emote to runechat for all (listening) users in the vicinity.

+

select_message_type +

+

Selects the message type to override the message with.

+

Arguments:

+ +

Returns the new message, or msg directly, if no change was needed.

select_param +

+

Replaces the %t in the message in message_param by params.

+

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:

+ +

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:

+ +

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.

+ +

Returns TRUE if the emote was able to be run (or failed successfully), or FALSE if the emote is unusable.

+ + + diff --git a/datum/emote/living/brain.html b/datum/emote/living/brain.html new file mode 100644 index 0000000000000..232eb72ef2657 --- /dev/null +++ b/datum/emote/living/brain.html @@ -0,0 +1,36 @@ + + + + + + + /datum/emote/living/brain - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

brain + + + +

+ +

Emotes usable by brains, but only while they're in MMIs.

+

Vars

self_messageThe 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

+ + + diff --git a/datum/emote/living/carbon/human.html b/datum/emote/living/carbon/human.html new file mode 100644 index 0000000000000..1080a87840474 --- /dev/null +++ b/datum/emote/living/carbon/human.html @@ -0,0 +1,45 @@ + + + + + + + /datum/emote/living/carbon/human - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

human + + + +

+ + + +

Vars

species_custom_messagesCustom messages that should be applied based on species +Should be an associative list of species name: message
species_custom_mime_messagesCustom 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

+ + + diff --git a/datum/emote/living/carbon/human/highfive.html b/datum/emote/living/carbon/human/highfive.html new file mode 100644 index 0000000000000..787923df59d88 --- /dev/null +++ b/datum/emote/living/carbon/human/highfive.html @@ -0,0 +1,43 @@ + + + + + + + /datum/emote/living/carbon/human/highfive - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

highfive + + + +

+ + + +

Vars

action_nametitle override, used for the re-use message.
statusStatus 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

+ + + 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 0000000000000..0c20278be07e4 --- /dev/null +++ b/datum/emote/living/carbon/human/highfive/rps.html @@ -0,0 +1,36 @@ + + + + + + + /datum/emote/living/carbon/human/highfive/rps - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

rps + + + +

+ + +

Vars

moveIf the user used parameters, the move that will be made.
+

Var Details

move + + + + +

+

If the user used parameters, the move that will be made.

+ + + diff --git a/datum/emote/living/simple_animal/slime.html b/datum/emote/living/simple_animal/slime.html new file mode 100644 index 0000000000000..554c79945d1d9 --- /dev/null +++ b/datum/emote/living/simple_animal/slime.html @@ -0,0 +1,36 @@ + + + + + + + /datum/emote/living/simple_animal/slime - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

slime + + + +

+ + +

Vars

moodApply 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.

+ + + diff --git a/datum/enchantment.html b/datum/enchantment.html new file mode 100644 index 0000000000000..65a93915ef1a8 --- /dev/null +++ b/datum/enchantment.html @@ -0,0 +1,71 @@ + + + + + + + /datum/enchantment - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

enchantment + + + +

+ + + + + + + +

Vars

applied_traitsIf the spellblade has traits, has it applied them?
cooldownstores the world.time after which it can be used again, the initial(cooldown) is the cooldown between activations.
descused for wizards/cultists examining the runes on the blade
nameused for blackbox logging
powerused for damage values
rangedwhether the enchant procs despite not being in proximity
+

Var Details

applied_traits + + + + +

+

If the spellblade has traits, has it applied them?

cooldown + + + + +

+

stores the world.time after which it can be used again, the initial(cooldown) is the 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

+ + + diff --git a/datum/event.html b/datum/event.html new file mode 100644 index 0000000000000..512c0508e8394 --- /dev/null +++ b/datum/event.html @@ -0,0 +1,194 @@ + + + + + + + /datum/event - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

event + + + +

+ +

NOTE: Times are measured in master controller ticks!

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

Vars

activeForHow long the event has existed. You don't need to change this.
announceWhenWhen in the lifetime to call announce().
endWhenWhen in the lifetime the event should end.
endedAtWhen this event ended.
impact_areaThe area the event will hit
isRunningIf this event is currently running. You should not change this.
nameThe human-readable name of the event
noAutoEndDoes the event end automatically after endWhen passes?
severitySeverity. Lower means less severe, higher means more severe. Does not have to be supported. Is set on New().
startWhenWhen in the lifetime to call start().
startedAtWhen this event started.

Procs

announceCalled when the tick is equal to the announceWhen variable.
endCalled on or after the tick is equal or more than endWhen
fake_announceOverride 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.
killCalled when start(), announce() and end() has all been called.
lastProcessAtReturns the latest point of event processing.
processDo not override this proc, instead use the appropiate procs.
setupCalled first before processing.
startCalled when the tick is equal to the startWhen variable.
tickCalled 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?

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.

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.

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.

+ + + diff --git a/datum/event/anomaly.html b/datum/event/anomaly.html new file mode 100644 index 0000000000000..0006d27077dc7 --- /dev/null +++ b/datum/event/anomaly.html @@ -0,0 +1,43 @@ + + + + + + + /datum/event/anomaly - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

anomaly + + + +

+ + + +

Vars

announce_soundSound effect used
prefix_messageThe prefix message for the anomaly annoucement.
+

Var Details

announce_sound + + + + +

+

Sound effect used

prefix_message + + + + +

+

The prefix message for the anomaly annoucement.

+ + + diff --git a/datum/event/bureaucratic_error.html b/datum/event/bureaucratic_error.html new file mode 100644 index 0000000000000..aa01f3091894d --- /dev/null +++ b/datum/event/bureaucratic_error.html @@ -0,0 +1,43 @@ + + + + + + + /datum/event/bureaucratic_error - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

bureaucratic_error + + + +

+ + + +

Vars

blacklisted_jobsJobs that are not allowed to be picked for the bureaucratic error
uncommon_jobsJobs 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

+ + + diff --git a/datum/event/disease_outbreak.html b/datum/event/disease_outbreak.html new file mode 100644 index 0000000000000..c9391f8c79649 --- /dev/null +++ b/datum/event/disease_outbreak.html @@ -0,0 +1,36 @@ + + + + + + + /datum/event/disease_outbreak - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

disease_outbreak + + + +

+ + +

Vars

chosen_diseaseThe type of disease that patient zero will be infected with.
+

Var Details

chosen_disease + + + + +

+

The type of disease that patient zero will be infected with.

+ + + diff --git a/datum/event/infestation.html b/datum/event/infestation.html new file mode 100644 index 0000000000000..b8424110fadfb --- /dev/null +++ b/datum/event/infestation.html @@ -0,0 +1,57 @@ + + + + + + + /datum/event/infestation - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

infestation + + + +

+ + + + + +

Vars

spawn_area_typeThe area we'll be spawning things in
spawn_areasAll possible areas for spawning, matched with their pretty names
verminWhich kind of vermin we'll be spawning (one of the three defines)
vermstringPretty name for the vermin we're spawning
+

Var Details

spawn_area_type + + + + +

+

The area we'll be spawning things in

spawn_areas + + + + +

+

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

+ + + diff --git a/datum/event/tear.html b/datum/event/tear.html new file mode 100644 index 0000000000000..a9ff57099d883 --- /dev/null +++ b/datum/event/tear.html @@ -0,0 +1,31 @@ + + + + + + + /datum/event/tear - Space Station 13 + + +
+ Space 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.

+ + + diff --git a/datum/event_meta.html b/datum/event_meta.html new file mode 100644 index 0000000000000..d073dff6ea8a1 --- /dev/null +++ b/datum/event_meta.html @@ -0,0 +1,85 @@ + + + + + + + /datum/event_meta - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

event_meta + + + +

+ + + + + + + + + +

Vars

enabledWhether or not the event is available for random selection at all.
max_weightThe maximum weight that this event will have.
min_weightThe minimum weight that this event will have. Only used if non-zero.
one_shotIf true, then the event will not be re-added to the list of available events
role_weightsA list of roles that add weight to the event
severitythe current severity of this event
weightThe base weight of this event. A zero means it may never fire, but see get_weight()
weight_modA 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.

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

role_weights + + + + +

+

A list of roles that add weight to the event

severity + + + + +

+

the current severity of this event

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

+ + + diff --git a/datum/feed_channel.html b/datum/feed_channel.html new file mode 100644 index 0000000000000..30778ad0c4961 --- /dev/null +++ b/datum/feed_channel.html @@ -0,0 +1,160 @@ + + + + + + + /datum/feed_channel - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Feed Channel + + + +

+ +

Describes a single feed channel. Owns a list of /datum/feed_message.

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

Vars

admin_lockedWhether the channel is admin-locked.
authorThe author of the channel.
author_ckeyThe author's ckey
backup_authorThe fallback author name to display if the channel is censored.
censoredWhether the channel is censored or not.
channel_nameThe name of the channel.
descriptionThe description of the channel.
frozenWhether the channel is frozen or not.
iconThe channel's icon.
is_publicWhether the channel is public or not.
messagesLazy list. Contains all /datum/feed_message pertaining to the channel.

Procs

add_messageAdds a new story to the channel and network singleton.
can_modifyReturns whether the given user can edit or delete this channel.
can_publishReturns whether the given user can publish new stories to this channel.
clearClears the channel's information.
get_announce_textReturns the text to be said by newscasters when announcing new news from a channel.
+

Var Details

admin_locked + + + + +

+

Whether the channel is admin-locked.

author + + + + +

+

The author of the channel.

author_ckey + + + + +

+

The author's ckey

backup_author + + + + +

+

The fallback author name to display if the channel is censored.

censored + + + + +

+

Whether the channel is censored or not.

channel_name + + + + +

+

The name of the channel.

description + + + + +

+

The description of the channel.

frozen + + + + +

+

Whether the channel is frozen or not.

icon + + + + +

+

The channel's icon.

is_public + + + + +

+

Whether the channel is public or not.

messages + + + + +

+

Lazy list. Contains all /datum/feed_message pertaining to the channel.

Proc Details

add_message +

+

Adds a new story to the channel and network singleton.

+

Arguments:

+

can_modify +

+

Returns whether the given user can edit or delete this channel.

+

Arguments:

+

can_publish +

+

Returns whether the given user can publish new stories to this channel.

+

Arguments:

+

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:

+
+ + + diff --git a/datum/feed_message.html b/datum/feed_message.html new file mode 100644 index 0000000000000..51056c0462662 --- /dev/null +++ b/datum/feed_message.html @@ -0,0 +1,100 @@ + + + + + + + /datum/feed_message - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Feed Message + + + +

+ +

Describes a single feed story. Always owned by a /datum/feed_channel.

+ + + + + + + + + +

Vars

admin_lockedWhether the story is admin-locked.
authorThe author of the story.
author_ckeyThe author's ckey (admins are watching you post WGW in the newscaster)
bodyThe textual contents of the story.
censor_flagsFlags that dictate the story should be censored.
imgThe story's icon.
publish_timeThe world.time at which the story was published.
titleThe title of the story.
view_countThe number of views the story has.

Procs

clearClears the story's information.
+

Var Details

admin_locked + + + + +

+

Whether the story is admin-locked.

author + + + + +

+

The author of the story.

author_ckey + + + + +

+

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.

+ + + diff --git a/datum/feed_network.html b/datum/feed_network.html new file mode 100644 index 0000000000000..3bb62661b497d --- /dev/null +++ b/datum/feed_network.html @@ -0,0 +1,83 @@ + + + + + + + /datum/feed_network - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Feed Network + + + +

+ +

Singleton that contains all informations related to newscasters (channels, stories).

+ + + + + +

Vars

channelsContains all of the feed channels created during the round.
storiesContains all of the feed stories created during the round.
wanted_issueThe current wanted issue.

Procs

get_channel_by_authorReturns the /datum/feed_channel with the given author, or null if not found.
get_channel_by_idxReturns the /datum/feed_channel at the given index, or null if not found.
get_channel_by_nameReturns the /datum/feed_channel with the given name, or null if not found.
+

Var Details

channels + + + + +

+

Contains all of the feed channels created during the round.

stories + + + + +

+

Contains all of the feed stories created during the round.

wanted_issue + + + + +

+

The current wanted issue.

Proc Details

get_channel_by_author +

+

Returns the /datum/feed_channel with the given author, or null if not found.

+

Arguments:

+

get_channel_by_idx +

+

Returns the /datum/feed_channel at the given index, or null if not found.

+

Arguments:

+

get_channel_by_name +

+

Returns the /datum/feed_channel with the given name, or null if not found.

+

Arguments:

+
+ + + diff --git a/datum/feedback_variable.html b/datum/feedback_variable.html new file mode 100644 index 0000000000000..d3b72a93d09d7 --- /dev/null +++ b/datum/feedback_variable.html @@ -0,0 +1,29 @@ + + + + + + + /datum/feedback_variable - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

feedback_variable + + + +

+ +

Datum to hold feedback data, which gets logged at round end

+

Holds all the information being logged

+ + + diff --git a/datum/flagged_book.html b/datum/flagged_book.html new file mode 100644 index 0000000000000..ec264c2714290 --- /dev/null +++ b/datum/flagged_book.html @@ -0,0 +1,50 @@ + + + + + + + /datum/flagged_book - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

flagged_book + + + +

+ + + + +

Vars

bookidbook id of the book this flag is attached to
category_idthe id of the report category
reporterThe ckey of the player who reported it
+

Var Details

bookid + + + + +

+

book id of the book this flag is attached to

category_id + + + + +

+

the id of the report category

reporter + + + + +

+

The ckey of the player who reported it

+ + + diff --git a/datum/food_processor_process.html b/datum/food_processor_process.html new file mode 100644 index 0000000000000..15c914f84b823 --- /dev/null +++ b/datum/food_processor_process.html @@ -0,0 +1,35 @@ + + + + + + + /datum/food_processor_process - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

food_processor_process + + + +

+ + +

Procs

process_foodWHO NAME A PARAMETER FOR A PROC "what" holy hell

Proc Details

process_food +

+

WHO NAME A PARAMETER FOR A PROC "what" holy hell

+ + + diff --git a/datum/food_processor_process/mob.html b/datum/food_processor_process/mob.html new file mode 100644 index 0000000000000..d9e7b349ce1fc --- /dev/null +++ b/datum/food_processor_process/mob.html @@ -0,0 +1,35 @@ + + + + + + + /datum/food_processor_process/mob - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

mob + + + +

+ + +

Procs

process_foodEND OBJECT RECIPIES

Proc Details

process_food +

+

END OBJECT RECIPIES

+ + + diff --git a/datum/game_mode.html b/datum/game_mode.html new file mode 100644 index 0000000000000..4d9443f9253c9 --- /dev/null +++ b/datum/game_mode.html @@ -0,0 +1,233 @@ + + + + + + + /datum/game_mode - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

game_mode + + + +

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

Vars

abducteesA list which contains the minds of all abductees
abductor_teamsHow many abductor teams do we have
abductorsA list which contains the minds of all abductors
apprenticesA list of all minds that are wizard apprentices
changelingsA list of all minds which have the changeling antag datum
cult_teamThe cult team datum
ertA list of all the minds that have the ERT special role
greyshirtsA list of all the greyshirt minds
head_revolutionariesA list of all the minds of head revolutionaries
implantedAn associative list with mindslave minds as keys and their master's minds as values.
rev_teamThe revololution team datum
revolutionariesA list of all the minds of revolutionaries
single_antag_positionsEach item in this list can only be rolled once on average.
superheroesA list of all the minds with the superhero special role
supervillainsA list of all the minds with the supervillain special role
syndicatesA list of all the nuclear operatives' minds
tdm_gamemodeThis 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.
traitorsA list of all minds which have the traitor antag datum.
vampire_enthralledA list of all minds which are thralled by a vampire
vampiresA list of all minds which have the vampire antag datum
wizardsA list of all minds which have the wizard special role
zombie_infectedA list of all minds that are infected with the zombie virus, but aren't zombies yet
zombiesA list of all minds that are zombies

Procs

can_startcan_start() +Checks to see if the game can be setup and ran with the current number of players or whatnot.
get_end_of_round_antagonist_statisticsGets the value of all end of round stats through auto_declare and returns them
post_setuppost_setup() +Everyone should now be on the station and have their normal gear. This is the place to give the special roles extra things
pre_setuppre_setup() +Attempts to select players for special roles the mode might have.
processprocess() +Called by the gameticker
+

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

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

implanted + + + + +

+

An associative list with mindslave minds as keys and their master's minds as values.

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.

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.

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.

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

+ + + diff --git a/datum/game_mode/changeling.html b/datum/game_mode/changeling.html new file mode 100644 index 0000000000000..12b07014e2b47 --- /dev/null +++ b/datum/game_mode/changeling.html @@ -0,0 +1,43 @@ + + + + + + + /datum/game_mode/changeling - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

changeling + + + +

+ + + +

Vars

changeling_amountThe total number of changelings allowed to be picked.
pre_changelingsA list containing references to the minds of soon-to-be changelings. This is seperate to avoid duplicate entries in the changelings list.
+

Var Details

changeling_amount + + + + +

+

The total number of changelings allowed to be picked.

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.

+ + + diff --git a/datum/game_mode/traitor.html b/datum/game_mode/traitor.html new file mode 100644 index 0000000000000..f9fe83c8429b2 --- /dev/null +++ b/datum/game_mode/traitor.html @@ -0,0 +1,50 @@ + + + + + + + /datum/game_mode/traitor - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

traitor + + + +

+ + + + +

Vars

pre_traitorsA list containing references to the minds of soon-to-be traitors. This is seperate to avoid duplicate entries in the traitors list.
traitor_scaling_coeffHow much the amount of players get divided by to determine the number of traitors.
traitors_possibleHard limit on traitors if scaling is turned off.
+

Var Details

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.

traitor_scaling_coeff + + + + +

+

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.

+ + + diff --git a/datum/game_mode/traitor/changeling.html b/datum/game_mode/traitor/changeling.html new file mode 100644 index 0000000000000..3f3f0ce6d6e2f --- /dev/null +++ b/datum/game_mode/traitor/changeling.html @@ -0,0 +1,36 @@ + + + + + + + /datum/game_mode/traitor/changeling - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

changeling + + + +

+ + +

Vars

pre_changelingsA list containing references to the minds of soon-to-be changelings. This is seperate to avoid duplicate entries in the changelings list.
+

Var Details

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.

+ + + diff --git a/datum/game_mode/vampire.html b/datum/game_mode/vampire.html new file mode 100644 index 0000000000000..0715377b2d186 --- /dev/null +++ b/datum/game_mode/vampire.html @@ -0,0 +1,36 @@ + + + + + + + /datum/game_mode/vampire - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

vampire + + + +

+ + +

Vars

pre_vampireslist of minds of soon to be vampires
+

Var Details

pre_vampires + + + + +

+

list of minds of soon to be vampires

+ + + diff --git a/datum/game_mode/wizard/raginmages.html b/datum/game_mode/wizard/raginmages.html new file mode 100644 index 0000000000000..4cc26ed898310 --- /dev/null +++ b/datum/game_mode/wizard/raginmages.html @@ -0,0 +1,36 @@ + + + + + + + /datum/game_mode/wizard/raginmages - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

raginmages + + + +

+ + +

Vars

have_we_populated_magivendsTracks 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

+ + + diff --git a/datum/gas_mixture.html b/datum/gas_mixture.html new file mode 100644 index 0000000000000..b70483b07dbaa --- /dev/null +++ b/datum/gas_mixture.html @@ -0,0 +1,210 @@ + + + + + + + /datum/gas_mixture - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

gas_mixture + + + +

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

Vars

fuel_burntHow much fuel this gas mixture burnt last reaction.
innate_heat_capacityHeat capacity intrinsic to the container of this gas mixture.
synchronizedIs this mixture currently synchronized with MILLA? Always true for non-bound mixtures.
volumeThe volume this gas mixture fills.
waiting_for_syncTracks the callbacks from synchronize() that haven't run yet.

Procs

archiveUpdate archived versions of variables. Returns: TRUE in all cases
boolean_removeOnly removes the gas if we have more than the amount
copy_from_turfCopies all gas info from the turf into the gas list along with temperature +Returns: TRUE if we are mutable, FALSE otherwise
get_breath_partial_pressureTakes 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_pressureinverse
heat_capacityjoules per kelvin
mergeMerges all air from giver into self. Deletes giver. Returns: TRUE if we are mutable, FALSE otherwise
mimicDon't make calculations if there is no difference.
reactPerforms various reactions such as combustion or fusion (LOL) +Returns: TRUE if any reaction took place; FALSE otherwise
removeProportionally removes amount of gas from the gas_mixture. +Returns: gas_mixture with the gases removed
remove_ratioProportionally removes amount of gas from the gas_mixture. +Returns: gas_mixture with the gases removed
return_pressureCalculate pressure in kilopascals
return_volumeCalculate volume in liters
set_dirtyMarks this gas mixture as changed from MILLA. Does nothing on non-bound mixtures.
sharePerforms air sharing calculations between two gas_mixtures assuming only 1 boundary length +Returns: amount of gas exchanged (+ if sharer received)
temperature_sharePerforms temperature sharing calculations (via conduction) between two gas_mixtures assuming only 1 boundary length +Returns: new temperature of the sharer
thermal_energyCalculate thermal energy in joules
total_molesCalculate moles
+

Var Details

fuel_burnt + + + + +

+

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.

waiting_for_sync + + + + +

+

Tracks the callbacks from synchronize() that haven't run yet.

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

mimic +

+

Don't make calculations if there is no difference.

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

+ + + diff --git a/datum/gas_mixture/bound_to_turf.html b/datum/gas_mixture/bound_to_turf.html new file mode 100644 index 0000000000000..608328a68a288 --- /dev/null +++ b/datum/gas_mixture/bound_to_turf.html @@ -0,0 +1,32 @@ + + + + + + + /datum/gas_mixture/bound_to_turf - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

bound_to_turf + + + +

+ +

Mathematical proofs: +get_breath_partial_pressure(gas_pp) --> gas_pp/total_moles()breath_pp = pp +get_true_breath_pressure(pp) --> gas_pp = pp/breath_pptotal_moles()

+

10/205 = 2.5 +10 = 2.5/520

+ + + diff --git a/datum/gear.html b/datum/gear.html new file mode 100644 index 0000000000000..5732d3c6e13df --- /dev/null +++ b/datum/gear.html @@ -0,0 +1,106 @@ + + + + + + + /datum/gear - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

gear + + + +

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

Vars

allowed_rolesList of job roles which can spawn with the item.
costLoadout points cost to select the item listing.
descriptionDescription of the item listing. If left blank will default to the description of the pathed item.
display_nameDisplayed name of the item listing.
donator_tierPatreon donator tier needed to select this item listing.
gear_tweaksList of datums which will alter the item after it has been spawned. (NYI)
main_typepathSet on empty category datums to skip them being added to the list. (/datum/gear/accessory, /datum/gear/suit/coat/job, etc.)
pathTypepath of the item.
slotSlot to equip the item to.
sort_categoryLoadout category of the item listing.
subtype_selection_costDoes selecting a second item with the same main_typepath cost loadout points.
+

Var Details

allowed_roles + + + + +

+

List of job roles which can spawn with the item.

cost + + + + +

+

Loadout points cost to select the item listing.

description + + + + +

+

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.

+ + + diff --git a/datum/http_request.html b/datum/http_request.html new file mode 100644 index 0000000000000..9d02ad9170ffb --- /dev/null +++ b/datum/http_request.html @@ -0,0 +1,156 @@ + + + + + + + /datum/http_request - Space Station 13 + + +
+ Space 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

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

Vars

_raw_responseThe raw response, which will be decoeded into a /datum/http_response
bodyBody of the request being sent
cbCallback for executing after async requests. Will be called with an argument of /datum/http_response as first argument
headersRequest headers being sent
idThe ID of the request (Only set if it is an async request)
in_progressIs the request in progress? (Only set if it is an async request)
methodHTTP method used
output_fileIf present, response body will be saved to this file.
urlURL that the request is being sent to

Procs

begin_asyncAsync execution starter
build_optionsOptions builder
execute_blockingBlocking executor
into_responseResponse deserializer
is_completeAsync completion checker
preparePreparation handler
+

Var Details

_raw_response + + + + +

+

The raw response, which will be decoeded into a /datum/http_response

body + + + + +

+

Body of the request being sent

cb + + + + +

+

Callback for executing after async requests. Will be called with an argument of /datum/http_response as first argument

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

output_file + + + + +

+

If present, response body will be saved to this file.

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)

build_options +

+

Options builder

+

Builds options for if we want to download files with SShttp

execute_blocking +

+

Blocking executor

+

Remains as a proof of concept to show it works, but should NEVER be used to do FFI halting the entire DD process up +Async rqeuests are much preferred, but also require the subsystem to be firing for them to be answered

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:

+
+ + + diff --git a/datum/http_response.html b/datum/http_response.html new file mode 100644 index 0000000000000..6d047afe75c71 --- /dev/null +++ b/datum/http_response.html @@ -0,0 +1,66 @@ + + + + + + + /datum/http_response - Space Station 13 + + +
+ Space 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

+ + + + +

Vars

bodyThe body of the response from the server
errorRaw response if we errored
erroredHas the request errored
headersAssociative list of headers sent from the server
status_codeThe HTTP status code of the response
+

Var Details

body + + + + +

+

The body of the response from the server

error + + + + +

+

Raw response if we errored

errored + + + + +

+

Has the request errored

headers + + + + +

+

Associative list of headers sent from the server

status_code + + + + +

+

The HTTP status code of the response

+ + + diff --git a/datum/hud.html b/datum/hud.html new file mode 100644 index 0000000000000..f4d4ebea9f523 --- /dev/null +++ b/datum/hud.html @@ -0,0 +1,170 @@ + + + + + + + /datum/hud - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

hud + + + +

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

Vars

floating_actionsA list of action buttons which aren't owned by any action group, and are just floating somewhere on the hud.
hotkey_ui_hiddenThis is to hide the buttons that can be used via hotkeys. (hotkeybuttons list of buttons)
hotkeybuttonsthe buttons that can be used via hotkeys
hud_shownUsed for the HUD toggle (F12)
hud_versionCurrent displayed version of the HUD
inv_slotsatom/movable/screen/inventory objects, ordered by their slot ID.
inventory_shownWhether or not their toggleable inventory (generally their contents on the left) is expanded
listed_actionsaction group for expanded actions, the normal action set
palette_actionsthe groups of actions, such as palette (previously normal) actions
plane_master_controllersAssoc list of controller groups, associated with key string group name with value of the plane master controller ref
screentip_textUI for screentips that appear when you mouse over things
toggleable_inventorythe screen objects which can be hidden (your human items on the left)

Procs

build_action_groupsGenerates and fills new action groups with our mob's current actions
generate_landingsGenerates visual landings for all groups that the button is not a memeber of
get_action_buttons_iconsThis 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.
hide_actionRemoves the passed in action from its current position on the screen
hide_landingsClears all currently visible landings
show_hudShows this hud's hud to some mob
view_audit_buttonsEnsures all of our buttons are properly within the bounds of our client's view, moves them if they're not
+

Var Details

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

+

view_audit_buttons +

+

Ensures all of our buttons are properly within the bounds of our client's view, moves them if they're not

+ + + diff --git a/datum/input_data.html b/datum/input_data.html new file mode 100644 index 0000000000000..4bf77162187ed --- /dev/null +++ b/datum/input_data.html @@ -0,0 +1,71 @@ + + + + + + + /datum/input_data - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

input_data + + + +

+ + + + + + + +

Vars

desired_move_dirBitflags of the direction the client wishes to move. Updated instantaneously.
desired_move_dir_addBitflags of the buffered direction the client wishes to move. Reset on client/Move().
desired_move_dir_subBitflags of the buffered direction the client wishes not to move. Reset on client/Move().
key_combos_heldAssociative list of currently held key combos.
keys_heldAssociative list of currently held keys. Format: keys_held[key], associated value is world.time where key was pressed.
move_lockWhether the movement should be locked in place.
+

Var Details

desired_move_dir + + + + +

+

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.

+ + + diff --git a/datum/instrument.html b/datum/instrument.html new file mode 100644 index 0000000000000..099f95da22952 --- /dev/null +++ b/datum/instrument.html @@ -0,0 +1,152 @@ + + + + + + + /datum/instrument - Space Station 13 + + +
+ Space 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.

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

Vars

HIGHEST_KEYDon't touch this
LOWEST_KEYDon't touch this x2
abstract_typeUsed for categorization subtypes
admin_onlyOh no - For truly troll instruments.
categoryCategory
idUniquely identifies this instrument so runtime changes are possible as opposed to paths. If this is unset, things will use path instead.
instrument_flagsSee __DEFINES/flags/instruments.dm
legacy_instrument_extFor legacy instruments, our file extension
legacy_instrument_pathFor legacy instruments, the path to our notes
nameName of the instrument
real_samplesWrite 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
samplesassoc list key = /datum/instrument_key. do not fill this yourself!
songs_usingWhat songs are using us
volume_multiplierVolume 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)

Procs

InitializeInitializes the instrument, calculating its samples if necessary.
calculate_samplesFor 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_readyChecks if this instrument is ready to play.
+

Var Details

HIGHEST_KEY + + + + +

+

Don't touch this

LOWEST_KEY + + + + +

+

Don't touch this x2

abstract_type + + + + +

+

Used for categorization subtypes

admin_only + + + + +

+

Oh no - For truly troll instruments.

category + + + + +

+

Category

id + + + + +

+

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.

+ + + diff --git a/datum/instrument_key.html b/datum/instrument_key.html new file mode 100644 index 0000000000000..43d2924eac7a2 --- /dev/null +++ b/datum/instrument_key.html @@ -0,0 +1,65 @@ + + + + + + + /datum/instrument_key - Space Station 13 + + +
+ Space 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.*

+ + + + +

Vars

deviationDeviation up/down from the pivot point that uses its sample. Used to calculate frequency.
frequencyThe frequency to play the sample to get our desired note.
keyThe numerical key of what this is, from 1 to 127 on a standard piano keyboard.
sampleThe actual sample file that will be loaded when playing.

Procs

calculateCalculates and stores our deviation.
+

Var Details

deviation + + + + +

+

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.

+ + + diff --git a/datum/ipintel.html b/datum/ipintel.html new file mode 100644 index 0000000000000..39f4aab038ae8 --- /dev/null +++ b/datum/ipintel.html @@ -0,0 +1,71 @@ + + + + + + + /datum/ipintel - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

ipintel + + + +

+ + + + + + + +

Vars

cacheWhether this was loaded from the cache or not
cachedateThe date it was cached
cacheminutesagoHow many minutes ago it was cached
cacherealtimeThe real time it was cached
intelThe current rating, 0-1 float.
ipThe IP being checked
+

Var Details

cache + + + + +

+

Whether this was loaded from the cache or not

cachedate + + + + +

+

The date it was cached

cacheminutesago + + + + +

+

How many minutes ago it was cached

cacherealtime + + + + +

+

The real time it was cached

intel + + + + +

+

The current rating, 0-1 float.

ip + + + + +

+

The IP being checked

+ + + diff --git a/datum/ipintel_manager.html b/datum/ipintel_manager.html new file mode 100644 index 0000000000000..f7f51b3baf375 --- /dev/null +++ b/datum/ipintel_manager.html @@ -0,0 +1,153 @@ + + + + + + + /datum/ipintel_manager - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

ipintel_manager + + + +

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

Procs

get_ip_intelGet IP intel
ip_intel_queryPerforms the remote IPintel lookup
ipintel_badip_checkIP Rating Checker
ipintel_handle_errorError handler
ipintel_is_bannedIPIntel Ban Checker
log_ipintelLogs an IPintel error
vpn_whitelist_addVPN whitelist adder
vpn_whitelist_checkVPN whitelist checker
vpn_whitelist_panelVPN whitelist panel
vpn_whitelist_removeVPN whitelist remover

Proc Details

get_ip_intel +

+

Get IP intel

+

Performs a lookup of the rating for an IP provided

+

Arguments:

+

ip_intel_query +

+

Performs the remote IPintel lookup

+

Arguments:

+

ipintel_badip_check +

+

IP Rating Checker

+

Checks if a provided IP passes the config threshold for denial

+

Arguments:

+

ipintel_handle_error +

+

Error handler

+

Handles an IP intel error, also throttling the susbystem if required

+

Arguments:

+

ipintel_is_banned +

+

IPIntel Ban Checker

+

Checks if a user is banned due to IPintel. It will check configuration, DB, whitelist checks, and more

+

Arguments:

+

log_ipintel +

+

Logs an IPintel error

+

Pretty self explanatory. Logs errors regarding ipintel.

+

Arguments:

+

vpn_whitelist_add +

+

VPN whitelist adder

+

Adds a ckey to the VPN whitelist. Asks the admin to also provide a link to their request.

+

Arguments:

+

vpn_whitelist_check +

+

VPN whitelist checker

+

Checks if a ckey is whitelisted to be using a VPN against the DB

+

Arguments:

+

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:

+

vpn_whitelist_remove +

+

VPN whitelist remover

+

Removes a ckey from the VPN whitelist. Pretty simple.

+

Arguments:

+
+ + + diff --git a/datum/job.html b/datum/job.html new file mode 100644 index 0000000000000..5691da635414d --- /dev/null +++ b/datum/job.html @@ -0,0 +1,134 @@ + + + + + + + /datum/job - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

job + + + +

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

Vars

accessJob access. A list of constants from access_defines.dm.
blacklisted_disabilitiesCannot pick this job if the character has these disabilities
department_account_accessCan this role access its department money account?
department_flagDepartment(s) Bitflag, used for Databse entries - DO NOT JUST EDIT THESE
department_headlist of the names of departments heads (as strings)
flagJob Bitflag, used for Database entries - DO NOT JUST EDIT THESE
has_bank_accountDoes this job get a bank account?
important_informationText 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_gamemodeBoolean detailing if this job has been banned because of a gamemode restriction i.e. The revolution has won, no more command
job_department_flagsFlags for identifying by department, because we need other shit that isnt for the database
job_departmentsList of the department(s) this job is a part of
missing_limbs_allowedIf this job could have any amputated limbs
required_objectivesJob Objectives that crew with this job will have a roundstart

Procs

barred_by_disabilityReturns true if the character has a disability the selected job doesn't allow
barred_by_missing_limbsReturns 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)

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

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

+ + + diff --git a/datum/job_ban.html b/datum/job_ban.html new file mode 100644 index 0000000000000..0bc8a5c91c4cd --- /dev/null +++ b/datum/job_ban.html @@ -0,0 +1,78 @@ + + + + + + + /datum/job_ban - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

job_ban + + + +

+ + + + + + + + +

Vars

a_ckeyAdmin who did it
bantimeTime of ban
bantypeType of ban
durationDuration (if temp)
expiration_timeExpiry time (if temp)
jobJob banned itself
reasonReason for ban
+

Var Details

a_ckey + + + + +

+

Admin who did it

bantime + + + + +

+

Time of ban

bantype + + + + +

+

Type of ban

duration + + + + +

+

Duration (if temp)

expiration_time + + + + +

+

Expiry time (if temp)

job + + + + +

+

Job banned itself

reason + + + + +

+

Reason for ban

+ + + diff --git a/datum/job_ban_holder.html b/datum/job_ban_holder.html new file mode 100644 index 0000000000000..e36cec86d3ca7 --- /dev/null +++ b/datum/job_ban_holder.html @@ -0,0 +1,36 @@ + + + + + + + /datum/job_ban_holder - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

job_ban_holder + + + +

+ +

Holder for job bans

+

Vars

job_bansAssoc list of job banned:ban holder
+

Var Details

job_bans + + + + +

+

Assoc list of job banned:ban holder

+ + + diff --git a/datum/job_objective.html b/datum/job_objective.html new file mode 100644 index 0000000000000..4549a27ea6c27 --- /dev/null +++ b/datum/job_objective.html @@ -0,0 +1,85 @@ + + + + + + + /datum/job_objective - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

job_objective + + + +

+ + + + + + + + + +

Vars

completedHas this objective been completed?
completion_paymenthow many credits are awarded upon completion of job objective
descriptionshort description of what the objective entails, should include how to complete the objective if not immediately clear
gives_payoutdoes this objective give out monetary rewards upon completion?
objective_nameFluff name of the objective
ownerWho owns the objective
owner_accountWhich money account this objective is tied to, makes life easier during payout (signficantly)
payout_givenHas the owner been rewarded yet?
+

Var Details

completed + + + + +

+

Has this objective been completed?

completion_payment + + + + +

+

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?

+ + + diff --git a/datum/jps_node.html b/datum/jps_node.html new file mode 100644 index 0000000000000..fca3c12bfac55 --- /dev/null +++ b/datum/jps_node.html @@ -0,0 +1,85 @@ + + + + + + + /datum/jps_node - Space Station 13 + + +
+ Space 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

+ + + + + + + +

Vars

diagonal_move_multMultiplier for making diagonals more expensive
f_valueThe A* node weight (f_value = number_of_tiles + heuristic)
heuristicThe A* node heuristic (a rough estimate of how far we are from the goal.)
jumpsHow many steps it took to get here from the last node
node_goalNodes store the endgoal so they can process their heuristic without a reference to the pathfind datum
number_tilesHow many steps it's taken to get here from the start
previous_nodeThe node we just came from
tileThe turf associated with this node
+

Var Details

diagonal_move_mult + + + + +

+

Multiplier for making diagonals more expensive

f_value + + + + +

+

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

previous_node + + + + +

+

The node we just came from

tile + + + + +

+

The turf associated with this node

+ + + diff --git a/datum/keybinding.html b/datum/keybinding.html new file mode 100644 index 0000000000000..854bf88dacbbe --- /dev/null +++ b/datum/keybinding.html @@ -0,0 +1,110 @@ + + + + + + + /datum/keybinding - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

keybinding + + + +

+ + + + + + + + + +

Vars

categoryThe UI category to belong to.
keysThe default key(s) assigned to the keybind.
nameThe user-facing name.

Procs

can_useReturns whether the keybinding can be pressed by the client's current mob.
downCalled when the client presses the keybind.
should_start_loopingCalled on keybind press to determine looping behaviour. +If TRUE is returned, the client will be added to SSinput's processing loop. Use VERY sparingly.
should_stop_loopingCalled on keybind release to determine looping behaviour. +If TRUE is returned, the client will be removed from SSinput's processing loop.
upCalled when the client releases the keybind.
+

Var Details

category + + + + +

+

The UI category to belong to.

keys + + + + +

+

The default key(s) assigned to the keybind.

name + + + + +

+

The user-facing name.

Proc Details

can_use +

+

Returns whether the keybinding can be pressed by the client's current mob.

+

Arguments:

+

down +

+

Called when the client presses the keybind.

+

Arguments:

+

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:

+

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:

+

up +

+

Called when the client releases the keybind.

+

Arguments:

+
+ + + diff --git a/datum/keybinding/admin.html b/datum/keybinding/admin.html new file mode 100644 index 0000000000000..9fa5952b8cbfa --- /dev/null +++ b/datum/keybinding/admin.html @@ -0,0 +1,36 @@ + + + + + + + /datum/keybinding/admin - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

admin + + + +

+ + +

Vars

rightsThe rights to use with [/proc/check_rights] if any
+

Var Details

rights + + + + +

+

The rights to use with [/proc/check_rights] if any

+ + + diff --git a/datum/keybinding/carbon/intent.html b/datum/keybinding/carbon/intent.html new file mode 100644 index 0000000000000..1fabb795fb843 --- /dev/null +++ b/datum/keybinding/carbon/intent.html @@ -0,0 +1,36 @@ + + + + + + + /datum/keybinding/carbon/intent - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

intent + + + +

+ + +

Vars

intentThe intent to switch to.
+

Var Details

intent + + + + +

+

The intent to switch to.

+ + + diff --git a/datum/keybinding/carbon/intent/hold.html b/datum/keybinding/carbon/intent/hold.html new file mode 100644 index 0000000000000..ed3d39f35cafb --- /dev/null +++ b/datum/keybinding/carbon/intent/hold.html @@ -0,0 +1,36 @@ + + + + + + + /datum/keybinding/carbon/intent/hold - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

hold + + + +

+ + +

Vars

prev_intentThe previous intent before holding.
+

Var Details

prev_intent + + + + +

+

The previous intent before holding.

+ + + diff --git a/datum/keybinding/client/communication.html b/datum/keybinding/client/communication.html new file mode 100644 index 0000000000000..e1b5b4bf00cf3 --- /dev/null +++ b/datum/keybinding/client/communication.html @@ -0,0 +1,43 @@ + + + + + + + /datum/keybinding/client/communication - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

communication + + + +

+ + + +

Vars

mute_categoryUsed to map muted categories to channels
required_rightsUsed 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

+ + + diff --git a/datum/keybinding/mob/face_dir.html b/datum/keybinding/mob/face_dir.html new file mode 100644 index 0000000000000..34ffc97162ac5 --- /dev/null +++ b/datum/keybinding/mob/face_dir.html @@ -0,0 +1,36 @@ + + + + + + + /datum/keybinding/mob/face_dir - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

face_dir + + + +

+ + +

Vars

dirThe direction to face towards.
+

Var Details

dir + + + + +

+

The direction to face towards.

+ + + diff --git a/datum/keybinding/movement.html b/datum/keybinding/movement.html new file mode 100644 index 0000000000000..9cf1212502fb9 --- /dev/null +++ b/datum/keybinding/movement.html @@ -0,0 +1,36 @@ + + + + + + + /datum/keybinding/movement - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

movement + + + +

+ + +

Vars

move_dirThe direction to move to when held.
+

Var Details

move_dir + + + + +

+

The direction to move to when held.

+ + + diff --git a/datum/keybinding/robot/module.html b/datum/keybinding/robot/module.html new file mode 100644 index 0000000000000..ef8992f6c9288 --- /dev/null +++ b/datum/keybinding/robot/module.html @@ -0,0 +1,36 @@ + + + + + + + /datum/keybinding/robot/module - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

module + + + +

+ + +

Vars

module_numberThe module number.
+

Var Details

module_number + + + + +

+

The module number.

+ + + diff --git a/datum/language.html b/datum/language.html new file mode 100644 index 0000000000000..09eae8daeb7c8 --- /dev/null +++ b/datum/language.html @@ -0,0 +1,36 @@ + + + + + + + /datum/language - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

language + + + +

+ + +

Vars

join_overrideDo 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 ". "

+ + + diff --git a/datum/lavaland_theme.html b/datum/lavaland_theme.html new file mode 100644 index 0000000000000..fc4e140481203 --- /dev/null +++ b/datum/lavaland_theme.html @@ -0,0 +1,59 @@ + + + + + + + /datum/lavaland_theme - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

lavaland_theme + + + +

+ + + + + +

Vars

nameName of lavaland theme
planet_icon_stateIcon state of planet present on background of station Z-level
primary_turf_typeTypepath of turf the /turf/simulated/floor/lava/mapping_lava will be changed to on Late Initialization

Procs

setupThis 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

Proc Details

setup +

+

This proc should do all theme specific thing. +Now it only generates rivers, but it can do all stuff you desire.

+ + + diff --git a/datum/library_catalog.html b/datum/library_catalog.html new file mode 100644 index 0000000000000..f519135202521 --- /dev/null +++ b/datum/library_catalog.html @@ -0,0 +1,78 @@ + + + + + + + /datum/library_catalog - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

library_catalog + + + +

+ + + + + + + + +

Vars

booksList of all programmatic books, automatically generated upon New()
categoriesList of all book categories, automatically generated upon New()
flagged_booksLists of all reported books in the current round
report_typesList of all report categories, automatically generated upon New()

Procs

get_book_category_by_idExternal proc that Returns a book library_category datum that matches the provided cat_id
get_programmatic_book_by_idExternal proc that Returns a report programmaticbook datum that matches the provided bookid
get_report_category_by_idExternal 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

+ + + diff --git a/datum/local_powernet.html b/datum/local_powernet.html new file mode 100644 index 0000000000000..5c2a1fd91a471 --- /dev/null +++ b/datum/local_powernet.html @@ -0,0 +1,202 @@ + + + + + + + /datum/local_powernet - Space Station 13 + + +
+ Space 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

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

Vars

active_consumptionThe amount of total power consumed consumed in only this cycle
environment_consumptionThe amount of power consumed by environment in this power cycle
environment_poweredIs the environment power channel on?
equipment_consumptionThe amount of power consumed by equipment in this power cycle
equipment_poweredIs the equipment power channel on?
lighting_consumptionThe amount of power consumed by lighting in this power cycle
lighting_poweredIs the lighting power channel on?
passive_consumptionThe amount of the total power consumed passively in power cycles (i.e, each cycle), does not include power channels that are off
passive_environment_consumptionThe amount of power consumed by environment in every power cycle
passive_equipment_consumptionThe amount of power consumed by equipment in every power cycle
passive_lighting_consumptionThe amount of power consumed by lighting in every power cycle
power_flagsBit Flags indicating special behaviour on this powernet, always powered, never powered, etc
powernet_apcThe APC associated with this powernet
powernet_areaThe area this local powernet is attached to
registered_machinesAll machines registered to this local powernet, strictly typed to machines, everything else needs to register power change signals

Procs

adjust_static_powerAdjust static power for a specified channel, does not check to see if channel has power flowing into it
get_channel_usagereturns active + passive power of a channel, if the channel is not powered it returns 0 watts
handle_flickerHandles flicker operations for apc processing, will flicker machines and lights in the powernet's area by random chance
has_powerchecks to see if the given channel in this local powernet has power
power_change
register_machinetethers a machine to this local powernet
set_power_channelsets a power channel on or off and adjusts total power usage accordingly
unregister_machineuntethers a machine to this local powernet
use_active_powerAdd 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_consumption + + + + +

+

The amount of the total power consumed passively in power cycles (i.e, each cycle), does not include power channels that are off

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

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

+ + + diff --git a/datum/log_viewer.html b/datum/log_viewer.html new file mode 100644 index 0000000000000..479baecac7239 --- /dev/null +++ b/datum/log_viewer.html @@ -0,0 +1,50 @@ + + + + + + + /datum/log_viewer - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

log_viewer + + + +

+ + + +

Procs

get_earliest_log_index
get_latest_log_index

Proc Details

get_earliest_log_index +

+

get_latest_log_index +

+
+ + + diff --git a/datum/looping_sound.html b/datum/looping_sound.html new file mode 100644 index 0000000000000..d95ce01e65aa7 --- /dev/null +++ b/datum/looping_sound.html @@ -0,0 +1,43 @@ + + + + + + + /datum/looping_sound - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

looping_sound + + + +

+ + + +

Vars

area_soundIf this sound is based off of an area
channelChannel of the audio, random otherwise
+

Var Details

area_sound + + + + +

+

If this sound is based off of an area

channel + + + + +

+

Channel of the audio, random otherwise

+ + + diff --git a/datum/looping_sound/decreasing.html b/datum/looping_sound/decreasing.html new file mode 100644 index 0000000000000..2b2307023d575 --- /dev/null +++ b/datum/looping_sound/decreasing.html @@ -0,0 +1,43 @@ + + + + + + + /datum/looping_sound/decreasing - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

decreasing + + + +

+ +

Looping sounds that decrease volume by a specified % each loop until it reaches a specified total % volume.

+ +

Vars

decrease_by_amountHow much, as a % of original, to decrease the volume by each loop
decrease_to_amountWhat 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

+ + + diff --git a/datum/map.html b/datum/map.html new file mode 100644 index 0000000000000..413aefe9a37a2 --- /dev/null +++ b/datum/map.html @@ -0,0 +1,73 @@ + + + + + + + /datum/map - Space Station 13 + + +
+ Space 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

+ + + + + +

Vars

fluff_nameName of the map to be shown in the statpanel
map_pathPath to the map file
min_players_randomMinimum amount of players required for this map to be eligible in random map picks.
technical_nameName to be used when using the map from a technical standpoint. Used in TGUI Nanomaps among other things.
voteableIs this map voteable?
webmap_urlURL to the maps webmap
+

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

+ + + diff --git a/datum/map_template.html b/datum/map_template.html new file mode 100644 index 0000000000000..17046c4081eb1 --- /dev/null +++ b/datum/map_template.html @@ -0,0 +1,36 @@ + + + + + + + /datum/map_template - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

map_template + + + +

+ + +

Vars

ci_excludeDo 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

+ + + diff --git a/datum/martial_art.html b/datum/martial_art.html new file mode 100644 index 0000000000000..ed3c4ae70ddfd --- /dev/null +++ b/datum/martial_art.html @@ -0,0 +1,148 @@ + + + + + + + /datum/martial_art - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

martial_art + + + +

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

Vars

baseThe permanent style.
block_chanceChance to block melee attacks using items while on throw mode.
can_horizontally_grabWhether or not you can grab someone while horizontal with this Martial Art
can_parryIf the martial art allows parrying.
combo_timerStores the timer_id for the combo timeout timer
combosWhat combos can the user do? List of combo types.
current_combosWhat combos are currently (possibly) being performed.
deflection_chanceChance to deflect projectiles while on throw mode.
has_explaination_verbIf the martial art has it's own explaination verb.
in_stanceIf the user is preparing a martial arts stance.
no_batonSet to TRUE to prevent users of this style from using stun batons (and stunprods)
no_baton_reasonMessage displayed when someone uses a baton when its forbidden by a martial art
no_gunsSet 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_messageMessage to tell the style user if they try and use a gun while no_guns = TRUE (DISHONORABRU!)
reroute_deflectionCan it reflect projectiles in a random direction?
weightThe priority of which martial art is picked from all the ones someone knows, the higher the number, the higher the priority.

Procs

get_highest_weightReturns the martial art with the highest weight from all the ones someone knows.
+

Var Details

base + + + + +

+

The permanent style.

block_chance + + + + +

+

Chance to block melee attacks using items while on throw mode.

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.

+ + + diff --git a/datum/martial_art/muscle_implant.html b/datum/martial_art/muscle_implant.html new file mode 100644 index 0000000000000..cd67408c3c668 --- /dev/null +++ b/datum/martial_art/muscle_implant.html @@ -0,0 +1,43 @@ + + + + + + + /datum/martial_art/muscle_implant - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

muscle_implant + + + +

+ + + +

Vars

is_empedAre we EMP'ed?
punch_damageHow much damage should our punches deal
+

Var Details

is_emped + + + + +

+

Are we EMP'ed?

punch_damage + + + + +

+

How much damage should our punches deal

+ + + diff --git a/datum/martial_combo.html b/datum/martial_combo.html new file mode 100644 index 0000000000000..dc1ad2272255c --- /dev/null +++ b/datum/martial_combo.html @@ -0,0 +1,78 @@ + + + + + + + /datum/martial_combo - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

martial_combo + + + +

+ + + + + + + + +

Vars

combo_text_overrideHow to do the combo. If null it'll auto generate it from the steps
combos_require_same_targetIf you require to do the combo's on the same target
current_combo_targetWho is the target the combo is being executed on
current_step_indexWhat index to check
explaination_textWhat does it do
nameName used to explain the combo
stepsWhich steps need to be performed
+

Var Details

combo_text_override + + + + +

+

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

+ + + diff --git a/datum/milla_safe.html b/datum/milla_safe.html new file mode 100644 index 0000000000000..cda5f74be6687 --- /dev/null +++ b/datum/milla_safe.html @@ -0,0 +1,77 @@ + + + + + + + /datum/milla_safe - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

milla_safe + + + +

+ +

Create a subclass of this and implement on_run to manipulate tile air safely.

+ + + + + + +

Procs

add_turf_airAdd air to a turf. Only use from on_run.
get_turf_airFetch the air for a turf. Only use from on_run.
invoke_asyncCall this to make the subclass run when it's safe to do so. Args will be passed to on_run.
on_runAll subclasses should implement this.
private_unsafe_invokeDo not call this yourself. This is what is called to run your code from a safe context.
set_turf_airCompletely replace the air for a turf. Only use from on_run.
soft_assert_safeUsed 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.

+ + + diff --git a/datum/milla_safe/hotspot_burn_plasma.html b/datum/milla_safe/hotspot_burn_plasma.html new file mode 100644 index 0000000000000..3a3a706111950 --- /dev/null +++ b/datum/milla_safe/hotspot_burn_plasma.html @@ -0,0 +1,35 @@ + + + + + + + /datum/milla_safe/hotspot_burn_plasma - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

hotspot_burn_plasma + + + +

+ + +

Procs

on_runBurns the air affected by this hotspot. A hotspot is effectively a gas fire that might not cover the entire tile yet. This proc makes that "partial fire" burn, altering the tile as a whole, and potentially setting the entire tile on fire.

Proc Details

on_run +

+

Burns the air affected by this hotspot. A hotspot is effectively a gas fire that might not cover the entire tile yet. This proc makes that "partial fire" burn, altering the tile as a whole, and potentially setting the entire tile on fire.

+ + + diff --git a/datum/mimic_form.html b/datum/mimic_form.html new file mode 100644 index 0000000000000..dad7daabfc5b5 --- /dev/null +++ b/datum/mimic_form.html @@ -0,0 +1,50 @@ + + + + + + + /datum/mimic_form - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

mimic_form + + + +

+ + + + +

Vars

appearanceHow does the form look like?
examine_textWhat is the examine text paired with this form
nameWhat the name of the form is
+

Var Details

appearance + + + + +

+

How does the form look like?

examine_text + + + + +

+

What is the examine text paired with this form

name + + + + +

+

What the name of the form is

+ + + diff --git a/datum/mind.html b/datum/mind.html new file mode 100644 index 0000000000000..7cc19bf6c2268 --- /dev/null +++ b/datum/mind.html @@ -0,0 +1,180 @@ + + + + + + + /datum/mind - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

mind + + + +

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

Vars

antag_datumsA list of all the antagonist datums that the player is (does not include undatumized antags)
has_been_revTracks if this mind has been a rev or not
job_objectivesa list of objectives that a player with this job could complete for space credit rewards
kudos_received_fromList of people who we've received kudos from.
original_mob_UIDThe 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_nameThe original mob's name. Used in Dchat messages
teamsA lazy list of all teams the player is part of but doesnt have an antag role for, (i.e. a custom admin team)

Procs

TopicImpanted
add_antag_datumCreate and/or add the datum_type_or_instance antag datum to the src mind.
add_mind_objectiveAdd an objective to the mind
get_all_objectivesGets every objective this mind owns, including all of those from any antag datums they have, and returns them as a list.
get_hijack_speedThis proc sets the hijack speed for a mob. If greater than zero, they can hijack. Outputs in seconds.
has_antag_datumReturns an antag datum instance if the src mind has the specified datum_type. Returns null otherwise.
has_objectivesA quicker version of get_all_objectives() but only for seeing if they have any objectives at all
memory_edit_nuclearEnthralled
remove_all_antag_datumsRemoves all antag datums from the src mind.
remove_antag_datumRemove the specified datum_type antag datum from the src mind.
remove_mind_objectiveCompletely 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)

has_been_rev + + + + +

+

Tracks if this mind has been a rev or not

job_objectives + + + + +

+

a list of objectives that a player with this job could complete for space credit rewards

kudos_received_from + + + + +

+

List of people who we've received kudos from.

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

Topic +

+

Impanted

+

REVOLUTION

+

WIZARD

+

CHANGELING

+

VAMPIRE

+

NUCLEAR

+

Abductors

+

Zombies

+

TRAITOR

+

CULT

+

SILICON

add_antag_datum +

+

Create and/or add the datum_type_or_instance antag datum to the src mind.

+

Arguments:

+

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 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:

+

has_objectives +

+

A quicker version of get_all_objectives() but only for seeing if they have any objectives at all

memory_edit_nuclear +

+

Enthralled

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:

+

remove_mind_objective +

+

Completely remove the given objective from the mind, and include antagdatums/teams if remove_from_everything is true

+ + + diff --git a/datum/mod_theme.html b/datum/mod_theme.html new file mode 100644 index 0000000000000..2c8ac040d54ab --- /dev/null +++ b/datum/mod_theme.html @@ -0,0 +1,169 @@ + + + + + + + /datum/mod_theme - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

mod_theme + + + +

+ +

MODsuit theme, instanced once and then used by MODsuits to grab various statistics.

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

Vars

allowed_suit_storageAllowed items in the chestplate's suit storage.
armor_type_1Armor shared across the MOD parts.
armor_type_2the actual armor object placed in a datum as I am tired and I just want this to work
atom_flagsAtom flags shared across the MOD parts.
charge_drainHow much battery power the MOD uses by just being on
complexity_maxHow much modules can the MOD carry without malfunctioning.
default_skinDefault skin of the MOD.
descDescription added to the MOD.
extended_descExtended description on examine_more
inbuilt_modulesList 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_temperatureMax heat protection shared across the MOD parts.
min_cold_protection_temperatureMax cold protection shared across the MOD parts.
nameTheme name for the MOD.
resistance_flagsResistance flags shared across the MOD parts.
siemens_coefficientSiemens shared across the MOD parts.
skinsList of skins with their appropriate clothing flags.
slot_flagsThe slot this mod theme fits on
slowdown_activeSlowdown of the MOD when active.
slowdown_inactiveSlowdown of the MOD when not active.
ui_themeTheme used by the MOD TGUI.
+

Var Details

allowed_suit_storage + + + + +

+

Allowed items in the chestplate's suit storage.

armor_type_1 + + + + +

+

Armor shared across the MOD parts.

armor_type_2 + + + + +

+

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

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.

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.

+ + + diff --git a/datum/money_account.html b/datum/money_account.html new file mode 100644 index 0000000000000..302c298a4dc52 --- /dev/null +++ b/datum/money_account.html @@ -0,0 +1,148 @@ + + + + + + + /datum/money_account - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

money_account + + + +

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

Vars

account_logTracking log of all actions on the account, for IC usage & can have entries deleted
account_nameFull name of the account, set at creation of the account
account_numberUnique Account Number Identifier for the account -Username
account_pin4 digit pin password for accessing the money account -Password
account_typeType of account this is
associated_nanobank_programsThe nanobank programs associated with this account, used for notifying crew members through PDA, this is a lazy list
credit_balanceHow many space credits are in the account
database_holderreference to parent account database, only used for GC
hidden_account_logTracking log of all actions on the account, used for admin logging and debugging
pay_check_bonusespay bonuses for the next pay period for this account, this is a lazy list
pay_check_deductionspay deductions for the next pay period for this account, this is a lazy list
payday_amountthe amount this account receives every payday
security_levelLevel of security on the money account
suspendedBool - Is this account locked out from being used completely?
transfer_requestsThe requests made to this money_account used for ATM and NanoBank credit transfers, this is a lazy list

Procs

deposit_creditsset proc for depositing money, changing credit_balance should always be done through procs
set_creditssets 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

+ + + diff --git a/datum/money_account_database.html b/datum/money_account_database.html new file mode 100644 index 0000000000000..b069c8c8761b9 --- /dev/null +++ b/datum/money_account_database.html @@ -0,0 +1,64 @@ + + + + + + + /datum/money_account_database - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

money_account_database + + + +

+ + + + + + +

Vars

database_logslist of actions taken on the money account database, such as creating/deleting accounts
hidden_database_logsTracking log of all actions on the account databse, used for admin logging and debugging
onlineWill the database permit actions on it? Useful for random events
user_accountslist of money account datums for individual users

Procs

find_user_accounttakes 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

+ + + diff --git a/datum/money_account_database/main_station.html b/datum/money_account_database/main_station.html new file mode 100644 index 0000000000000..1585c1b3ae349 --- /dev/null +++ b/datum/money_account_database/main_station.html @@ -0,0 +1,36 @@ + + + + + + + /datum/money_account_database/main_station - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

main_station + + + +

+ + +

Vars

department_accountslist of money accounts for each department on station
+

Var Details

department_accounts + + + + +

+

list of money accounts for each department on station

+ + + diff --git a/datum/movement_detector.html b/datum/movement_detector.html new file mode 100644 index 0000000000000..596588cbf084e --- /dev/null +++ b/datum/movement_detector.html @@ -0,0 +1,59 @@ + + + + + + + /datum/movement_detector - Space Station 13 + + +
+ Space 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

+ + + +

Vars

listenerListener is whatever callback that will increase the tracking of the movable, usually on stepped.

Procs

move_reactReacts to any movement that would cause a change in coordinates of the tracked movable atom +This works by detecting movement of either the tracked object, or anything it is inside, recursively
trackSets up tracking of the given movable atom
untrackStops tracking
+

Var Details

listener + + + + +

+

Listener is whatever callback that will increase the tracking of the movable, usually on stepped.

Proc Details

move_react +

+

Reacts to any movement that would cause a change in coordinates of the tracked movable atom +This works by detecting movement of either the tracked object, or anything it is inside, recursively

track +

+

Sets up tracking of the given movable atom

untrack +

+

Stops tracking

+ + + diff --git a/datum/mutation.html b/datum/mutation.html new file mode 100644 index 0000000000000..184ebb530cdd5 --- /dev/null +++ b/datum/mutation.html @@ -0,0 +1,78 @@ + + + + + + + /datum/mutation - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

mutation + + + +

+ + + + + + + + +

Vars

activation_messagesPossible activation messages
blockWhat gene activates this? Set in initialize()!
deactivation_messagesPossible deactivation messages
descDescription of the gene
instabilityChance of the gene to cause adverse effects when active
nameDisplay name
traits_to_addTrait to give, if any
+

Var Details

activation_messages + + + + +

+

Possible activation messages

block + + + + +

+

What gene activates this? Set in initialize()!

deactivation_messages + + + + +

+

Possible deactivation messages

desc + + + + +

+

Description of the gene

instability + + + + +

+

Chance of the gene to cause adverse effects when active

name + + + + +

+

Display name

traits_to_add + + + + +

+

Trait to give, if any

+ + + diff --git a/datum/nttc_configuration.html b/datum/nttc_configuration.html new file mode 100644 index 0000000000000..36b1c2af2cb64 --- /dev/null +++ b/datum/nttc_configuration.html @@ -0,0 +1,64 @@ + + + + + + + /datum/nttc_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

nttc_configuration + + + +

+ + + + + + +

Vars

all_jobsAssociative list of all jobs and their department color classes
cc_jobsList of CentComm jobs
ert_jobsList of ERT jobs
headsList of Command jobs
tsf_jobsList of SolGov Marine jobs
+

Var Details

all_jobs + + + + +

+

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

+ + + diff --git a/datum/object_window_info.html b/datum/object_window_info.html new file mode 100644 index 0000000000000..5bec1c5c4654a --- /dev/null +++ b/datum/object_window_info.html @@ -0,0 +1,100 @@ + + + + + + + /datum/object_window_info - Space Station 13 + + +
+ Space 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

+ + + + + + + + +

Vars

actively_trackingAre we currently tracking a turf?
atoms_to_imageslist of atom -> image string for objects we have had in the right click tab +this is our caching
atoms_to_imagifylist of atoms to turn into images for the object tab
atoms_to_showlist of atoms to show to our client via the object tab, at least currently
max_indexThe maximum index currently sent to the client.
min_indexThe minimum index currently sent to the client.
parentOur owner client

Procs

processTakes a client, attempts to generate object images for it +We will update the client with any improvements we make when we're done
viewing_atom_deletedClears any cached object window stuff +We use hard refs cause we'd need a signal for this anyway. Cleaner this way
+

Var Details

actively_tracking + + + + +

+

Are we currently tracking a turf?

atoms_to_images + + + + +

+

list of atom -> image string for objects we have had in the right click tab +this is our caching

atoms_to_imagify + + + + +

+

list of atoms to turn into images for the object tab

atoms_to_show + + + + +

+

list of atoms to show to our client via the object tab, at least currently

max_index + + + + +

+

The maximum index currently sent to the client.

min_index + + + + +

+

The minimum index currently sent to the client.

parent + + + + +

+

Our owner client

Proc Details

process +

+

Takes a client, attempts to generate object images for it +We will update the client with any improvements we make when we're done

viewing_atom_deleted +

+

Clears any cached object window stuff +We use hard refs cause we'd need a signal for this anyway. Cleaner this way

+ + + diff --git a/datum/objective.html b/datum/objective.html new file mode 100644 index 0000000000000..8cd68674711e3 --- /dev/null +++ b/datum/objective.html @@ -0,0 +1,134 @@ + + + + + + + /datum/objective - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

objective + + + +

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

Vars

completedIf the objective has been completed.
explanation_textWhat the owner is supposed to do to complete the objective.
martyr_compatibleIf the objective is compatible with martyr objective, i.e. if you can still do it while dead.
nameProper 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_targetIf the objective should have find_target() called for it.
ownerOwner 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.
targetThe target of the objective.
target_amountIf they are focused on a particular number. Steal objectives have their own counter.
teamThe team the objective belongs to, if any.

Procs

establish_signalsThis is for objectives that need to register signals, so place them in here.
get_ownersGet all owners of the objective, including ones from the objective's team, if it has one.
on_target_cryoCalled when the objective's target goes to cryo.
post_target_cryoCalled a tick after when the objective's target goes to cryo.
update_explanation_textThis is for objectives that have reason to update their text, such as target changes.
+

Var Details

completed + + + + +

+

If the objective has been completed.

explanation_text + + + + +

+

What the owner is supposed to do to complete the objective.

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_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.

target + + + + +

+

The target of the objective.

target_amount + + + + +

+

If they are focused on a particular number. Steal objectives have their own counter.

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.

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.

post_target_cryo +

+

Called a tick after 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.

+ + + diff --git a/datum/objective/contract.html b/datum/objective/contract.html new file mode 100644 index 0000000000000..7d8aa34af7b73 --- /dev/null +++ b/datum/objective/contract.html @@ -0,0 +1,134 @@ + + + + + + + /datum/objective/contract - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Contract Objective + + + +

+ +

Describes the target to kidnap and the extraction area of a /datum/syndicate_contract.

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

Vars

candidate_zonesAssociated lazy list of areas the contractor can pick from and extract the kidnapee there. +Structure: EXTRACTION_DIFFICULTY_(EASY|MEDIUM|HARD) => /area
chosen_difficultyThe contract's difficulty. Determines the reward on completion.
extraction_zoneThe designated area where the kidnapee must be extracted to complete the objective.
forbidden_jobsJobs that cannot be the kidnapping target.
name_fixerName fixer regex because area names have rogue characters sometimes.
owning_contractThe owning /datum/syndicatce_contract.
possible_zone_namesStatic 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()
possible_zonesStatic list that is basically /datum/objective/contract/var/possible_zone_names but with area names replaced by /area objects if available.
target_blacklistList of people who cannot be selected as contract target.

Procs

can_start_extraction_processReturns whether the extraction process can be started.
choose_difficultyUpdates the objective's information with the given difficulty.
pick_candidate_zoneAssigns 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.

owning_contract + + + + +

+

The owning /datum/syndicatce_contract.

possible_zone_names + + + + +

+

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()

possible_zones + + + + +

+

Static list that is basically /datum/objective/contract/var/possible_zone_names but with area names replaced by /area objects if available.

target_blacklist + + + + +

+

List of people who cannot be selected as contract target.

Proc Details

can_start_extraction_process +

+

Returns whether the extraction process can be started.

+

Arguments:

+

choose_difficulty +

+

Updates the objective's information with the given difficulty.

+

Arguments:

+

pick_candidate_zone +

+

Assigns a randomly selected zone to the contract's selectable zone at the given difficulty.

+

Arguments:

+
+ + + diff --git a/datum/objective/escape/escape_with_identity.html b/datum/objective/escape/escape_with_identity.html new file mode 100644 index 0000000000000..cf9c2260bd8a0 --- /dev/null +++ b/datum/objective/escape/escape_with_identity.html @@ -0,0 +1,43 @@ + + + + + + + /datum/objective/escape/escape_with_identity - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

escape_with_identity + + + +

+ + + +

Vars

has_assassinate_objectiveIf the objective has an assassinate objective tied to it.
target_real_nameStored 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.

+ + + diff --git a/datum/objective/experiment.html b/datum/objective/experiment.html new file mode 100644 index 0000000000000..dc5e9bc118fd3 --- /dev/null +++ b/datum/objective/experiment.html @@ -0,0 +1,36 @@ + + + + + + + /datum/objective/experiment - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

experiment + + + +

+ + +

Vars

abductor_team_numberWhich abductor team number does this belong to.
+

Var Details

abductor_team_number + + + + +

+

Which abductor team number does this belong to.

+ + + diff --git a/datum/objective/pulse_demon/drain.html b/datum/objective/pulse_demon/drain.html new file mode 100644 index 0000000000000..62f887c347162 --- /dev/null +++ b/datum/objective/pulse_demon/drain.html @@ -0,0 +1,36 @@ + + + + + + + /datum/objective/pulse_demon/drain - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

drain + + + +

+ + +

Vars

amountAmount 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

+ + + diff --git a/datum/objective/pulse_demon/infest.html b/datum/objective/pulse_demon/infest.html new file mode 100644 index 0000000000000..b6521037fc168 --- /dev/null +++ b/datum/objective/pulse_demon/infest.html @@ -0,0 +1,36 @@ + + + + + + + /datum/objective/pulse_demon/infest - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

infest + + + +

+ + +

Vars

amountAmount 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

+ + + diff --git a/datum/objective_holder.html b/datum/objective_holder.html new file mode 100644 index 0000000000000..f202055568a88 --- /dev/null +++ b/datum/objective_holder.html @@ -0,0 +1,129 @@ + + + + + + + /datum/objective_holder - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

objective_holder + + + +

+ +

An objective holder for minds, antag datums, and teams.

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

Vars

assigned_targetsA list of strings which contain targets of the antagonist's objectives. Used to prevent duplicate objectives.
objective_ownerWho do we belong to [mind, antagonist, team]
objectivesOur list of current objectives
on_add_callbackA 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_callbackA 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.

Procs

add_objectiveAdd an objective.
clearClear all objectives of a certain type
get_objectivesGet all of the objectives we own
handle_objectiveHandles the searching of targets for objectives that need it.
has_objectivesDo we have any objectives
remove_objectiveRemove an objective and deletes it. You should never need to transfer an objective.
replace_objectiveReplace old_objective with new_objective
set_callbacksSets 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.

Proc Details

add_objective +

+

Add an objective.

+

clear +

+

Clear all objectives of a certain type

+

get_objectives +

+

Get all of the objectives we own

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.

+ + + diff --git a/datum/organ.html b/datum/organ.html new file mode 100644 index 0000000000000..fc4471d2acb97 --- /dev/null +++ b/datum/organ.html @@ -0,0 +1,56 @@ + + + + + + + /datum/organ - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

organ + + + +

+ + + + + +

Procs

on_insertCalled when the linked organ is inserted.
on_removeCalled when the linked organ is removed.
on_replaceCalled when another organ is removed, and this organ datum takes its place in the organ_owner.
on_successful_empOnly 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

+ + + diff --git a/datum/organ/lungs.html b/datum/organ/lungs.html new file mode 100644 index 0000000000000..642b40027e5f0 --- /dev/null +++ b/datum/organ/lungs.html @@ -0,0 +1,42 @@ + + + + + + + /datum/organ/lungs - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

lungs + + + +

+ + + +

Procs

check_breathLUNG ATMOS CODE, VENTURE FURTHER IF YOU DARE!!!
on_successful_empLung atmos code ends here. Thank god...

Proc Details

check_breath +

+

LUNG ATMOS CODE, VENTURE FURTHER IF YOU DARE!!!

on_successful_emp +

+

Lung atmos code ends here. Thank god...

+ + + diff --git a/datum/outfit.html b/datum/outfit.html new file mode 100644 index 0000000000000..5b7118c26841c --- /dev/null +++ b/datum/outfit.html @@ -0,0 +1,36 @@ + + + + + + + /datum/outfit - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

outfit + + + +

+ + +

Vars

toggle_helmetShould 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

+ + + diff --git a/datum/pai_save.html b/datum/pai_save.html new file mode 100644 index 0000000000000..062824312b042 --- /dev/null +++ b/datum/pai_save.html @@ -0,0 +1,64 @@ + + + + + + + /datum/pai_save - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

pai_save + + + +

+ + + + + + +

Vars

descriptionpAI's description
ooc_commentspAI's OOC comments
ownerClient that owns the pAI
pai_namepAI's name
rolepAI's role
+

Var Details

description + + + + +

+

pAI's description

ooc_comments + + + + +

+

pAI's OOC comments

owner + + + + +

+

Client that owns the pAI

pai_name + + + + +

+

pAI's name

role + + + + +

+

pAI's role

+ + + diff --git a/datum/pai_software.html b/datum/pai_software.html new file mode 100644 index 0000000000000..3428ebf92c24a --- /dev/null +++ b/datum/pai_software.html @@ -0,0 +1,159 @@ + + + + + + + /datum/pai_software - Space Station 13 + + +
+ Space 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)

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

Vars

defaultDo we have this software installed by default
idID for the software. This must be unique
nameName for the software. This is used as the button text when buying or opening/toggling the software
pai_holderpAI which holds this software
ram_costRAM cost; pAIs start with 100 RAM, spending it on programs
template_fileTemplate for the TGUI file
toggle_softwareWhether this software is a toggle or not
ui_iconIcon for inside the UI

Procs

NewNew handler
get_app_dataHandler for the app's UI data
get_holding_mobHelper proc so that pAIs can get the mob holding them
is_activeHelper for checking if a toggle is enabled or not
toggleHandler for toggling toggle apps on and off
ui_actui_act sanity check helper
+

Var Details

default + + + + +

+

Do we have this software installed by default

id + + + + +

+

ID for the software. This must be unique

name + + + + +

+

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:

+

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:

+

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:

+

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:

+

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:

+

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

+ + + diff --git a/datum/pai_software/atmosphere_sensor.html b/datum/pai_software/atmosphere_sensor.html new file mode 100644 index 0000000000000..2eea119053b45 --- /dev/null +++ b/datum/pai_software/atmosphere_sensor.html @@ -0,0 +1,36 @@ + + + + + + + /datum/pai_software/atmosphere_sensor - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

atmosphere_sensor + + + +

+ + +

Vars

scannerIntegrated PDA atmos scan module to reduce duplicated code
+

Var Details

scanner + + + + +

+

Integrated PDA atmos scan module to reduce duplicated code

+ + + diff --git a/datum/pai_software/door_jack.html b/datum/pai_software/door_jack.html new file mode 100644 index 0000000000000..47169e1a521b3 --- /dev/null +++ b/datum/pai_software/door_jack.html @@ -0,0 +1,74 @@ + + + + + + + /datum/pai_software/door_jack - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

door_jack + + + +

+ + + + + + + +

Vars

cableThe cable being plugged into a door
hackdoorThe door being hacked
hackingAre we hacking?
progressProgress on hacking the door

Procs

cleanup_hackDoor jack cleanup proc
hackloopDoor jack hack loop
+

Var Details

cable + + + + +

+

The cable being plugged into a door

hackdoor + + + + +

+

The door being hacked

hacking + + + + +

+

Are we hacking?

progress + + + + +

+

Progress on hacking the door

Proc Details

cleanup_hack +

+

Door jack cleanup proc

+

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

+ + + diff --git a/datum/pai_software/med_records.html b/datum/pai_software/med_records.html new file mode 100644 index 0000000000000..292e82e7917f1 --- /dev/null +++ b/datum/pai_software/med_records.html @@ -0,0 +1,36 @@ + + + + + + + /datum/pai_software/med_records - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

med_records + + + +

+ + +

Vars

integrated_recordsIntegrated medical records module to reduce duplicated code
+

Var Details

integrated_records + + + + +

+

Integrated medical records module to reduce duplicated code

+ + + diff --git a/datum/pai_software/sec_records.html b/datum/pai_software/sec_records.html new file mode 100644 index 0000000000000..00e36207cc00a --- /dev/null +++ b/datum/pai_software/sec_records.html @@ -0,0 +1,36 @@ + + + + + + + /datum/pai_software/sec_records - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

sec_records + + + +

+ + +

Vars

integrated_recordsIntegrated security records module to reduce duplicated code
+

Var Details

integrated_records + + + + +

+

Integrated security records module to reduce duplicated code

+ + + diff --git a/datum/painter.html b/datum/painter.html new file mode 100644 index 0000000000000..6e1d417aa6370 --- /dev/null +++ b/datum/painter.html @@ -0,0 +1,81 @@ + + + + + + + /datum/painter - Space Station 13 + + +
+ Space 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.

+ + + + + + +

Vars

holderThe parent /obj/item/painter which this datum is linked to.
module_descDesc of the holder when using this module.
module_nameName of the holder when using this module.
module_stateIcon and Item state of the holder when using this module.
paint_settingThe current colour or icon state setting.

Procs

paint_atomContains code to apply the paint_setting variable onto the target atom.
pick_colorContains code to choose a new colour or icon state for the paint_setting variable.
+

Var Details

holder + + + + +

+

The parent /obj/item/painter which this datum is linked to.

module_desc + + + + +

+

Desc of the holder when using this module.

module_name + + + + +

+

Name of the holder when using this module.

module_state + + + + +

+

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.

+ + + diff --git a/datum/pathfind.html b/datum/pathfind.html new file mode 100644 index 0000000000000..dc8ced246cd58 --- /dev/null +++ b/datum/pathfind.html @@ -0,0 +1,161 @@ + + + + + + + /datum/pathfind - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

pathfind + + + +

+ +

The datum used to handle the JPS pathfinding, completely self-contained

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

Vars

avoidA 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
callerThe thing that we're actually trying to path for
diagonal_safetyEnsures diagonal moves won't use invalid midstep turfs by splitting them into two orthogonal moves if necessary
endThe turf we're trying to path to (note that this won't track a moving target)
idAn ID card representing what access we have and what doors we can open. Its location relative to the pathing atom is irrelevant
max_distanceI don't know what this does vs , but they limit how far we can search before giving up on a path
mintargetdistHow far away we have to get to the end target before we can call it quits
openThe open list/stack we pop nodes out from (TODO: make this a normal list and macro-ize the heap operations to reduce proc overhead)
pathThe list we compile at the end if successful to pass back
simulated_onlySpace is big and empty, if this is TRUE then we ignore pathing through unsimulated tiles
sourcesAn assoc list that serves as the closed list & tracks what turfs came from where. Key is the turf, and the value is what turf it came from
startThe turf where we started at

Procs

diag_scan_specFor performing diagonal scans from a given starting turf.
lateral_scan_specFor performing lateral scans from a given starting turf.
searchsearch() is the proc you call to kick off and handle the actual pathfinding, and kills the pathfind datum instance when it's done.
unwind_pathCalled 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

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

caller + + + + +

+

The thing that we're actually trying to path for

diagonal_safety + + + + +

+

Ensures diagonal moves won't use invalid midstep turfs by splitting them into two orthogonal moves if necessary

end + + + + +

+

The turf we're trying to path to (note that this won't track a moving target)

id + + + + +

+

An ID card representing what access we have and what doors we can open. Its location relative to the pathing atom is irrelevant

max_distance + + + + +

+

I don't know what this does vs , but they limit how far we can search before giving up on a path

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

simulated_only + + + + +

+

Space is big and empty, if this is TRUE then we ignore pathing through unsimulated tiles

sources + + + + +

+

An assoc list that serves as the closed list & tracks what turfs came from where. Key is the turf, and the value is what turf it came from

start + + + + +

+

The turf where we started at

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:

+

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:

+

search +

+

search() is the proc you call to kick off and handle the actual pathfinding, and kills the pathfind datum instance when it's done.

+

If a valid path was found, it's returned as a list. If invalid or cross-z-level params are entered, or if there's no valid path found, we +return null, which /proc/get_path_to translates to an empty list (notable for simple bots, who need empty lists)

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

+ + + diff --git a/datum/pathfinding_mover.html b/datum/pathfinding_mover.html new file mode 100644 index 0000000000000..16baf4c46c74a --- /dev/null +++ b/datum/pathfinding_mover.html @@ -0,0 +1,134 @@ + + + + + + + /datum/pathfinding_mover - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

pathfinding_mover + + + +

+ +

A generalized datum for pathfinding, and moving to a target.

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

Vars

consider_movement_delayDo we consider movement delay? Disable for non-mobs
last_movement_delayRequires consider_movement_delay = TRUE, saves the last movement delay to prevent diagonal weirdness
max_triesmax amount of tries before resetting path to null
move_speedHow many 2-tick delays per move (5 = 1 second)
move_ticksA counter for move_speed via modulo
on_set_path_nullCallback invoked on failure
on_successCallback invoked on success
ownerCan be a simplemob bot, a drone, or even a pathfinding modsuit module (currently only implemented for drones)
owner_move_delayThe delay called as part of Move()
pathList of turfs through which a mod 'steps' to reach the waypoint
targetThe target turf we are after
triesHow many times have we tried to move?

Procs

generalized_stepTake our next step in our pathfinding algorithm
processUsing fast process, see if we should take the next step yet
startStart 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

+ + + diff --git a/datum/physiology.html b/datum/physiology.html new file mode 100644 index 0000000000000..85c5572c543a2 --- /dev/null +++ b/datum/physiology.html @@ -0,0 +1,148 @@ + + + + + + + /datum/physiology - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

physiology datum + + + +

+ +

Datum that stores several modifiers in a way that isn't cleared by changing species

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

Vars

armorinternal armor datum
bleed_mod% bleeding modifier
brain_mod% of brain damage taken from all sources
brute_mod% of brute damage taken from all sources
burn_mod% of burn damage taken from all sources
clone_mod% of clone damage taken from all sources
cold_mod% 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_bonusBonus 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_coeffresistance to shocks
stamina_mod% of stamina damage taken from all sources
stun_mod% stun modifier
tox_mod% of toxin damage taken from all sources
+

Var Details

armor + + + + +

+

internal armor datum

bleed_mod + + + + +

+

% bleeding modifier

brain_mod + + + + +

+

% of brain damage taken from all sources

brute_mod + + + + +

+

% of brute damage taken from all sources

burn_mod + + + + +

+

% of burn damage taken from all sources

clone_mod + + + + +

+

% of clone damage taken from all sources

cold_mod + + + + +

+

% 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

+ + + diff --git a/datum/pipes/transit.html b/datum/pipes/transit.html new file mode 100644 index 0000000000000..6ac8f8d170877 --- /dev/null +++ b/datum/pipes/transit.html @@ -0,0 +1,36 @@ + + + + + + + /datum/pipes/transit - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

transit + + + +

+ +

Pipe types for transit tubes.

+

Vars

construction_typeThe 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.

+ + + diff --git a/datum/plant_gene.html b/datum/plant_gene.html new file mode 100644 index 0000000000000..67b1bb80a4565 --- /dev/null +++ b/datum/plant_gene.html @@ -0,0 +1,36 @@ + + + + + + + /datum/plant_gene - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

plant_gene + + + +

+ + +

Vars

dangerousUsed 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

+ + + diff --git a/datum/point_precise.html b/datum/point_precise.html new file mode 100644 index 0000000000000..498507ad8ef3e --- /dev/null +++ b/datum/point_precise.html @@ -0,0 +1,35 @@ + + + + + + + /datum/point_precise - Space Station 13 + + +
+ Space 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!

+

Procs

NewFirst argument can also be a /datum/position or /atom.

Proc Details

New +

+

First argument can also be a /datum/position or /atom.

+ + + diff --git a/datum/point_precise/vector.html b/datum/point_precise/vector.html new file mode 100644 index 0000000000000..bcaf5ae674fe5 --- /dev/null +++ b/datum/point_precise/vector.html @@ -0,0 +1,64 @@ + + + + + + + /datum/point_precise/vector - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

vector + + + +

+ + + + + + +

Vars

mpxCalculated x movement amounts to prevent having to do trig every step.
mpyCalculated y movement amounts to prevent having to do trig every step.
speedPixels per iteration

Procs

set_angleCalculations use "byond angle" where north is 0 instead of 90, and south is 180 instead of 270.
set_locationSame 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

+ + + diff --git a/datum/preference_toggle.html b/datum/preference_toggle.html new file mode 100644 index 0000000000000..197a0c0a87b54 --- /dev/null +++ b/datum/preference_toggle.html @@ -0,0 +1,92 @@ + + + + + + + /datum/preference_toggle - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

preference_toggle + + + +

+ + + + + + + + + + +

Vars

blackbox_messageMessage for the blackbox, legacy verbs so we can't just use the name
descriptionDescription of what the pref setting does
disable_messageMessage to display when this toggle is disabled
enable_messageMessage to display when this toggle is enabled
nameName of the preference toggle. Don't set this if you don't want it to appear in game
preftoggle_bitflagBitflag this datum will set to
preftoggle_categoryCategory of the toggle
preftoggle_toggleWhat toggles to set this to?
rights_requiredRights 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

+ + + diff --git a/datum/preferences.html b/datum/preferences.html new file mode 100644 index 0000000000000..887ebf36a1538 --- /dev/null +++ b/datum/preferences.html @@ -0,0 +1,209 @@ + + + + + + + /datum/preferences - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

preferences + + + +

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

Vars

_2fa_status2FA status
active_characterThe current active character
admin_sound_ckey_ignoreList of admin ckeys this player wont hear sounds from
character_savesList of all character saves we have. This is indexed based on the slot number
characters_loadedHave we loaded characters already?
colourblind_modeColourblind mode
ghost_darkness_levelHow dark things are if client is a ghost, 0-255
keybindingsActive keybinds (currently useable by the mob/client)
keybindings_overridesKeybinding overrides ("name" => ["key"...])
screentip_colorColor of screentips at top of screen
screentip_modeScreentip Mode, in pixels. 8 is small, 15 is mega big, 0 is off.
server_regionPlayer's region override for routing optimisation
successful_loadDid we load successfully?
viewrangeView range preference for this client
volume_mixerVolume mixer, indexed by channel as TEXT (numerical indexes will not work). Volume goes from 0 to 100.
volume_mixer_savingThe volume mixer save timer handle. Used to debounce the DB call to save, to avoid spamming.

Procs

build_loadoutRebuilds the loadout_gear list of the [active_character], and returns the total end cost.
deserialize_volume_mixerReturns a volume mixer list from text, usually from the DB.
get_channel_volumeReturns a volume multiplier for the given channel, from 0 to 1 (default).
save_volume_mixerSaves [/datum/preferences/proc/volume_mixer] for the current client.
serialize_volume_mixerReturns a DB-friendly version of a volume mixer list.
set_channel_volumeChanges 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?

colourblind_mode + + + + +

+

Colourblind mode

ghost_darkness_level + + + + +

+

How dark things are if client is a ghost, 0-255

keybindings + + + + +

+

Active keybinds (currently useable by the mob/client)

keybindings_overrides + + + + +

+

Keybinding overrides ("name" => ["key"...])

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.

+

If the item's /datum/gear/var/subtype_selection_cost is FALSE, any future items with the same /datum/gear/var/main_typepath will have their cost skipped. +If adding the item will take the total cost over the maximum, it won't be added to the list.

+

Arguments:

+

deserialize_volume_mixer +

+

Returns a volume mixer list from text, usually from the DB.

+

Failure to deserialize will return the current value.

+

Arguments

+

get_channel_volume +

+

Returns a volume multiplier for the given channel, from 0 to 1 (default).

+

Arguments:

+

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

+

set_channel_volume +

+

Changes a channel's volume then queues it for DB save.

+

Arguments:

+
+ + + diff --git a/datum/qdel_item.html b/datum/qdel_item.html new file mode 100644 index 0000000000000..0d4afe47b845c --- /dev/null +++ b/datum/qdel_item.html @@ -0,0 +1,36 @@ + + + + + + + /datum/qdel_item - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

qdel_item + + + +

+ + +

Vars

reference_averageAverage 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

+ + + diff --git a/datum/radiation_wave.html b/datum/radiation_wave.html new file mode 100644 index 0000000000000..0b632140bd5c2 --- /dev/null +++ b/datum/radiation_wave.html @@ -0,0 +1,92 @@ + + + + + + + /datum/radiation_wave - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

radiation_wave + + + +

+ + + + + + + + + + +

Vars

__dirsThe directions to the side of the wave, stored for easy looping
can_contaminateWhether or not this radiation wave can create contaminated objects
intensityHow strong it was originaly
master_turfThe center of the wave
move_dirThe direction of movement
range_modifierHigher than 1 makes it drop off faster, 0.5 makes it drop off half etc
remaining_contamHow much contaminated material it still has
sourceThe thing that spawned this radiation wave
stepsHow far we've moved
+

Var Details

__dirs + + + + +

+

The directions to the side of the wave, stored for easy looping

can_contaminate + + + + +

+

Whether or not this radiation wave can create contaminated objects

intensity + + + + +

+

How strong it was originaly

master_turf + + + + +

+

The center of the wave

move_dir + + + + +

+

The direction of movement

range_modifier + + + + +

+

Higher than 1 makes it drop off faster, 0.5 makes it drop off half etc

remaining_contam + + + + +

+

How much contaminated material it still has

source + + + + +

+

The thing that spawned this radiation wave

steps + + + + +

+

How far we've moved

+ + + diff --git a/datum/rcd_act.html b/datum/rcd_act.html new file mode 100644 index 0000000000000..d5c3dbe45305e --- /dev/null +++ b/datum/rcd_act.html @@ -0,0 +1,92 @@ + + + + + + + /datum/rcd_act - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

rcd_act + + + +

+ +

A generic action for an RCD.

+ + + + + + + + +

Vars

costHow much compressed matter this action costs.
delayHow long this action takes.
end_effect_typeThe effect (if any) to create when the action completes.
modeThe mode the RCD must be in.
start_effect_typeThe effect (if any) to create when the action starts.
start_messageThe message (if any) to send the user when the action starts.

Procs

actPerform the act. You should usually override this.
can_actTest to see if the act is possible. You should usually override this.
try_actAttempt 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.

+ + + diff --git a/datum/reagent.html b/datum/reagent.html new file mode 100644 index 0000000000000..c2dc477472ca0 --- /dev/null +++ b/datum/reagent.html @@ -0,0 +1,83 @@ + + + + + + + /datum/reagent - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

reagent + + + +

+ + + + + + + + +

Vars

addiction_decay_ratehow quickly the addiction threshold var decays
allowed_overdose_processIf this variable is true, chemicals will continue to process in mobs when overdosed.
colorThe color of the agent outside of containers.
holderA reference to the holder the chemical is 'in'.

Procs

reaction_mobReact with a mob.
reaction_objReact with an object.
reaction_turfReact with a turf.
+

Var Details

addiction_decay_rate + + + + +

+

how quickly the addiction threshold var decays

allowed_overdose_process + + + + +

+

If this variable is true, chemicals will continue to process in mobs when overdosed.

color + + + + +

+

The color of the agent outside of containers.

holder + + + + +

+

A reference to the holder the chemical is 'in'.

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_turf +

+

React with a turf.

+

You'll want to put stuff like extra slippery floors for lube or something in here.

+ + + diff --git a/datum/reagent/aranesp.html b/datum/reagent/aranesp.html new file mode 100644 index 0000000000000..12667ad8d377c --- /dev/null +++ b/datum/reagent/aranesp.html @@ -0,0 +1,36 @@ + + + + + + + /datum/reagent/aranesp - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

aranesp + + + +

+ + +

Vars

tenacityhow 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

+ + + diff --git a/datum/reagent/mephedrone.html b/datum/reagent/mephedrone.html new file mode 100644 index 0000000000000..8cfc1d3e925fa --- /dev/null +++ b/datum/reagent/mephedrone.html @@ -0,0 +1,71 @@ + + + + + + + /datum/reagent/mephedrone - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

mephedrone + + + +

+ + + + + + + +

Vars

changeling_chemical_trackerKeeps track of how many chemicals we are delaying the changeling by.

Procs

dodge_bulletsTries to dodge incoming bullets if we aren't disabled for any reasons
no_hud_cheeseSo. 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_2This part of the anticheese sets up the basic visual effects normally setup when the reagent gets into your system.
no_hud_cheese_3This part sets up the OD visual effects.
on_movementLeaves 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

+ + + diff --git a/datum/reagent/methamphetamine.html b/datum/reagent/methamphetamine.html new file mode 100644 index 0000000000000..18de225c83288 --- /dev/null +++ b/datum/reagent/methamphetamine.html @@ -0,0 +1,36 @@ + + + + + + + /datum/reagent/methamphetamine - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

methamphetamine + + + +

+ + +

Vars

tenacitymodifier to the stun time of the mob taking the drug
+

Var Details

tenacity + + + + +

+

modifier to the stun time of the mob taking the drug

+ + + diff --git a/datum/reagent/oil.html b/datum/reagent/oil.html new file mode 100644 index 0000000000000..f8575956d6fed --- /dev/null +++ b/datum/reagent/oil.html @@ -0,0 +1,36 @@ + + + + + + + /datum/reagent/oil - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

oil + + + +

+ + +

Vars

reagent_after_burningWhat this becomes after burning.
+

Var Details

reagent_after_burning + + + + +

+

What this becomes after burning.

+ + + diff --git a/datum/reagents.html b/datum/reagents.html new file mode 100644 index 0000000000000..18987d61196b5 --- /dev/null +++ b/datum/reagents.html @@ -0,0 +1,210 @@ + + + + + + + /datum/reagents - Space Station 13 + + +
+ Space 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)

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

Vars

maximum_volumeThis is the maximum volume of the holder.
my_atomThis is the atom the holder is 'in'. Useful if you need to find the location. (i.e. for explosions)
reagent_listAll contained reagents. More specifically, references to the reagent datums.
total_volumeThe total volume of all reagents in this holder.

Procs

add_reagentAttempts to add X of the matching reagent to the holder.
clear_reagentsRemove all reagents from the holder.
del_reagentCompletely remove the reagent with the matching ID.
get_master_reagent_idGet the id of the reagent there is the most of in this holder
get_reagent_amountReturns the amount of the matching reagent inside the holder.
handle_reactionsCheck all recipes and, on a match, uses them.
has_reagentReturn whether the holder contains the reagent.
isolate_reagentRemove all reagents but the specified one.
metabolizeCalled by /mob/living/proc/Life. You shouldn't have to use this one directly.
overdose_listReturns a list of all the chemical IDs in the reagent holder that are overdosing.
reactionCalls the appropriate reaction procs of the reagents.
remove_anyRemoves reagents from the holder until the passed amount is matched.
remove_reagentThe exact opposite of the add_reagent proc.
trans_id_toSame 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_toEqually transfer the contents of the holder to another objects holder.
update_totalUpdate 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).

+ + + diff --git a/datum/reagents_editor.html b/datum/reagents_editor.html new file mode 100644 index 0000000000000..fa6cd4bc9293b --- /dev/null +++ b/datum/reagents_editor.html @@ -0,0 +1,36 @@ + + + + + + + /datum/reagents_editor - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

reagents_editor + + + +

+ + +

Vars

editorsIndexed by target.UID
+

Var Details

editors + + + + +

+

Indexed by target.UID

+ + + diff --git a/datum/recipe.html b/datum/recipe.html new file mode 100644 index 0000000000000..3b91cd5b1cd16 --- /dev/null +++ b/datum/recipe.html @@ -0,0 +1,66 @@ + + + + + + + /datum/recipe - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

recipe + + + +

+ + + + +

Vars

duplicateWhether or not an upgraded kitchen machine will create more products using the same amount of ingredients

Procs

check_items_assoc_listSimilarly 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_listSimilarly 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.

+ + + diff --git a/datum/redis_callback.html b/datum/redis_callback.html new file mode 100644 index 0000000000000..be4e3bdefa8c5 --- /dev/null +++ b/datum/redis_callback.html @@ -0,0 +1,52 @@ + + + + + + + /datum/redis_callback - Space Station 13 + + +
+ Space 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

+ +

Vars

channelChannel for this callback to listen on

Procs

on_messageMessage handler callback
+

Var Details

channel + + + + +

+

Channel for this callback to listen on

Proc Details

on_message +

+

Message handler 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:

+
+ + + diff --git a/datum/redis_message.html b/datum/redis_message.html new file mode 100644 index 0000000000000..bc55b976280ad --- /dev/null +++ b/datum/redis_message.html @@ -0,0 +1,46 @@ + + + + + + + /datum/redis_message - Space Station 13 + + +
+ Space 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.

+ +

Vars

channelDestination channel for this message
messageMessage for that channel
+

Var Details

channel + + + + +

+

Destination channel for this message

message + + + + +

+

Message for that channel

+ + + diff --git a/datum/regional_powernet.html b/datum/regional_powernet.html new file mode 100644 index 0000000000000..a2f492c0b00ce --- /dev/null +++ b/datum/regional_powernet.html @@ -0,0 +1,141 @@ + + + + + + + /datum/regional_powernet - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

regional_powernet + + + +

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

Vars

available_powerthe current available power in the powernet
cablesA list of All cables & junctions in this powernet
excess_powerexcess power on the powernet (typically avail-load)
nodesAll Power Machines that are connected to this powernet
numberThe Powernet Unique ID Number
power_demandthe current load on the powernet, increased by each machine at processing
queued_power_demandload applied to powernet between power ticks.
queued_power_productionwhat available power was gathered last tick, then becomes...
smoothed_available_powerthe available power as it appears on the power console (gradually updated)
smoothed_demandthe load as it appears on the power console (gradually updated)

Procs

add_cableadd a cable to the current powernet
add_machineadd a power machine to the current powernet
calculate_power_balanceReturns the non-clamped difference between available power on the net and the demanded power, i.g. consumption vs. supply
calculate_surplusReturns the clamped difference between available power on the net and the demanded power, i.g. the surplus power available
remove_cableremove a cable from the current powernet, if the powernet is empty after, delete it
remove_machineremove 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

cables + + + + +

+

A list of All cables & junctions in this powernet

excess_power + + + + +

+

excess power on the powernet (typically avail-load)

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

queued_power_demand + + + + +

+

load applied to powernet between power ticks.

queued_power_production + + + + +

+

what available power was gathered last tick, then becomes...

smoothed_available_power + + + + +

+

the available power as it appears on the power console (gradually updated)

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

+ + + diff --git a/datum/rep_purchase.html b/datum/rep_purchase.html new file mode 100644 index 0000000000000..cb4720cd83a37 --- /dev/null +++ b/datum/rep_purchase.html @@ -0,0 +1,84 @@ + + + + + + + /datum/rep_purchase - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Rep Purchase + + + +

+ +

Describes something that can be purchased with Contractor Rep.

+ + + + + +

Vars

costThe price in Contractor Rep of the purchase.
descriptionThe description of the purchase.
nameThe display name of the purchase.
stockHow many times the purchase can be made. +-1 means infinite stock.

Procs

buyAttempts to perform the purchase.
on_buyCalled when the purchase was made successfully.
+

Var Details

cost + + + + +

+

The price in Contractor Rep of the purchase.

description + + + + +

+

The description of the purchase.

name + + + + +

+

The display name of the purchase.

stock + + + + +

+

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:

+

on_buy +

+

Called when the purchase was made successfully.

+

Arguments:

+
+ + + diff --git a/datum/rep_purchase/blackout.html b/datum/rep_purchase/blackout.html new file mode 100644 index 0000000000000..47d38a3028b53 --- /dev/null +++ b/datum/rep_purchase/blackout.html @@ -0,0 +1,43 @@ + + + + + + + /datum/rep_purchase/blackout - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

Rep Purchase - Blackout + + + +

+ + + +

Vars

cooldownHow long a contractor must wait before calling another blackout, in deciseconds.
next_blackoutStatic cooldown variable for blackouts.
+

Var Details

cooldown + + + + +

+

How long a contractor must wait before calling another blackout, in deciseconds.

next_blackout + + + + +

+

Static cooldown variable for blackouts.

+ + + diff --git a/datum/rep_purchase/item.html b/datum/rep_purchase/item.html new file mode 100644 index 0000000000000..4f5a460d8b449 --- /dev/null +++ b/datum/rep_purchase/item.html @@ -0,0 +1,36 @@ + + + + + + + /datum/rep_purchase/item - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

Rep Purchase - Item + + + +

+ +

Describes an item that can be purchased with Contractor Rep.

+

Vars

item_typeThe 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.

+ + + diff --git a/datum/research.html b/datum/research.html new file mode 100644 index 0000000000000..ac004729194a7 --- /dev/null +++ b/datum/research.html @@ -0,0 +1,46 @@ + + + + + + + /datum/research - Space Station 13 + + +
+ Space 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 console.

+ +

Vars

blacklisted_designsList of designs that have been blacklisted by the server controller
unblacklisted_designsUsed 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

unblacklisted_designs + + + + +

+

Used during the rnd sync system, to ensure that blacklists are reverted, then cleared.

+ + + diff --git a/datum/response_team.html b/datum/response_team.html new file mode 100644 index 0000000000000..4fa0638e25a24 --- /dev/null +++ b/datum/response_team.html @@ -0,0 +1,36 @@ + + + + + + + /datum/response_team - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

response_team + + + +

+ + +

Vars

silentWhether the ERT announcement should be hidden from the station
+

Var Details

silent + + + + +

+

Whether the ERT announcement should be hidden from the station

+ + + diff --git a/datum/resumable_cost_counter.html b/datum/resumable_cost_counter.html new file mode 100644 index 0000000000000..12d1cdf8fbfd8 --- /dev/null +++ b/datum/resumable_cost_counter.html @@ -0,0 +1,42 @@ + + + + + + + /datum/resumable_cost_counter - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

resumable_cost_counter + + + +

+ +

A cost counter for resumable, repeating processes.

+ +

Procs

record_progressUpdates the counter based on the time spent making progress and whether we finished the task.
to_stringGets a display string for this cost counter.

Proc Details

record_progress +

+

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.

+ + + diff --git a/datum/river_spawner.html b/datum/river_spawner.html new file mode 100644 index 0000000000000..78ca00d4342e7 --- /dev/null +++ b/datum/river_spawner.html @@ -0,0 +1,93 @@ + + + + + + + /datum/river_spawner - Space Station 13 + + +
+ Space 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.

+ + + + + + + +

Vars

river_turf_typeThe base type that makes up the river.
shoreline_turf_typeThe turf used when a spread of the tile stops.
spread_probThe initial probability that a river tile will spread to adjacent tiles.
spread_prob_lossThe amount reduced from spread_prob on every spread iteration to cause falloff.
target_zThe 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.
whitelist_area_typeThe area that the spawner is allowed to spread or detour to.
whitelist_turf_typeThe type that the spawner is allowed to spread or detour to.

Procs

generateGenerate a river between the bounds specified by (min_x, min_y) and +(max_x, max_y).
+

Var Details

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.

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

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.

+ + + diff --git a/datum/robot_storage.html b/datum/robot_storage.html new file mode 100644 index 0000000000000..625cfa4d50e40 --- /dev/null +++ b/datum/robot_storage.html @@ -0,0 +1,87 @@ + + + + + + + /datum/robot_storage - Space Station 13 + + +
+ Space 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.
+
+ + + + + +

Vars

amountCurrent amount of materials.
max_amountThe max amount of materials the stack can hold at once.
nameThe name of the storage.
statpanel_nameThe name that will be displayed in the status panel.

Procs

add_chargeCalled whenever the cyborg is recharging and gains charge on its stack, or when clicking on other same-type stacks in the world.
use_chargeCalled 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:

+

use_charge +

+

Called whenever the cyborg uses one of its stacks. Subtract the amount used from this datum's amount variable.

+

Arguments:

+
+ + + diff --git a/datum/robot_storage/energy.html b/datum/robot_storage/energy.html new file mode 100644 index 0000000000000..3cd12840fac51 --- /dev/null +++ b/datum/robot_storage/energy.html @@ -0,0 +1,36 @@ + + + + + + + /datum/robot_storage/energy - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

energy + + + +

+ + +

Vars

recharge_rateThe amount of energy the stack will regain while charging.
+

Var Details

recharge_rate + + + + +

+

The amount of energy the stack will regain while charging.

+ + + diff --git a/datum/robot_storage/material.html b/datum/robot_storage/material.html new file mode 100644 index 0000000000000..6596c5a3c7598 --- /dev/null +++ b/datum/robot_storage/material.html @@ -0,0 +1,43 @@ + + + + + + + /datum/robot_storage/material - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

material + + + +

+ +

This datum is an alternative to the energy storages, instead being recharged in different ways

+ +

Vars

add_to_storageDoes this get added to the autorefill from the ORM
stackWhat stacktype do we originally have
+

Var Details

add_to_storage + + + + +

+

Does this get added to the autorefill from the ORM

stack + + + + +

+

What stacktype do we originally have

+ + + diff --git a/datum/scoreboard.html b/datum/scoreboard.html new file mode 100644 index 0000000000000..5326cc5090be1 --- /dev/null +++ b/datum/scoreboard.html @@ -0,0 +1,274 @@ + + + + + + + /datum/scoreboard - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

scoreboard + + + +

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

Vars

all_arrestedDid the crew catch all of the antags alive?
crewscoreOverall combined score for the whole round.
damaged_healthHow damaged was the most injured person on the shuttle?
damaged_jobWhat was the job of the most injured person on the shuttle?
damaged_keyWhat was the ckey of the most injured person on the shuttle?
damaged_nameWhat was the name of the most injured person on the shuttle?
dead_aiIf the AI is dead, big points penalty.
disc_secureIs the NAD safe and secure?
mess_bonusIf there are no messes on the station anywhere, huge bonus.
nukedWas the station blown into little bits?
nuked_penaltyPoints penalty for being blown to little bits.
power_bonusIf all APCs on the station are running optimally, big bonus.
richest_cashHow much money did the richest person on the shuttle have?
richest_jobWhat was the job of the richest person on the shuttle?
richest_keyWhat was the ckey of the richest person on the shuttle?
richest_nameWhat was the name of the richest person on the shuttle?
score_arrestedHow many antagonists are alive in the brig? (Nuke ops & Revolution)
score_clown_abuseHow many times was the clown punched, struck, or otherwise maligned?
score_dead_commandHow many command members died? (Revolution)
score_dead_crewHow many people /didn't/ get out alive?
score_diseaseHow many rampant, uncured diseases are on board the station?
score_escapeesHow many people got out alive?
score_events_enduredHow many random events did the station survive?
score_food_eatenHow much noms were had by the crew?
score_greentextWere the antagonists successful?
score_mealsHow many meals were made?
score_messHow much blood, puke, stains etc went uncleaned?
score_ops_killedHow many operatives were killed? (Nuke ops & Revolution)
score_ore_minedHow much ore has been mined on the mining z level?
score_power_lossHow many APCs have poor charge?
score_research_doneHow much research was done by science?
score_things_harvestedHow many harvests have hydroponics done?
score_things_shippedHow many useful items have cargo shipped out?

Procs

get_score_container_worthA recursive function to properly determine the cash on the wealthiest escapee
get_score_person_worthA 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_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

+ + + diff --git a/datum/security_level.html b/datum/security_level.html new file mode 100644 index 0000000000000..72c9721d1231f --- /dev/null +++ b/datum/security_level.html @@ -0,0 +1,129 @@ + + + + + + + /datum/security_level - Space Station 13 + + +
+ Space 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.

+

Base type is abstract

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

Vars

ai_announcement_soundThe AI announcement sound about code change, that will be played after main sound
colorColor of security level
elevating_to_announcement_textOur announcement when elevating to this level
elevating_to_announcement_titleOur announcement title when elevating to this level
elevating_to_soundThe sound that we will play when elevated to this security level
lowering_to_announcement_textOur announcement when lowering to this level
lowering_to_announcement_titleOur announcement title when lowering to this level
lowering_to_soundThe sound that we will play when lowered to this security level
nameThe name of this security level.
number_levelThe numerical level of this security level, see defines for more information.
set_delayThe delay, after which the security level will be set
status_display_dataThe status display data that will be posted to all status displays on security level set
status_display_modeThe status display that will be posted to all status displays on security level set

Procs

pre_changeShould 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

+ + + diff --git a/datum/security_level/blue.html b/datum/security_level/blue.html new file mode 100644 index 0000000000000..7edd57a3d71e4 --- /dev/null +++ b/datum/security_level/blue.html @@ -0,0 +1,29 @@ + + + + + + + /datum/security_level/blue - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

blue + + + +

+ +

BLUE

+

Caution advised

+ + + diff --git a/datum/security_level/delta.html b/datum/security_level/delta.html new file mode 100644 index 0000000000000..f639bace524d4 --- /dev/null +++ b/datum/security_level/delta.html @@ -0,0 +1,29 @@ + + + + + + + /datum/security_level/delta - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

delta + + + +

+ +

DELTA

+

Station self-destruiction mechanism has been engaged

+ + + diff --git a/datum/security_level/epsilon.html b/datum/security_level/epsilon.html new file mode 100644 index 0000000000000..7687db312d2e1 --- /dev/null +++ b/datum/security_level/epsilon.html @@ -0,0 +1,29 @@ + + + + + + + /datum/security_level/epsilon - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

epsilon + + + +

+ +

Epsilon

+

Station is not longer under the Central Command and to be destroyed by Death Squad (Or maybe not)

+ + + diff --git a/datum/security_level/gamma.html b/datum/security_level/gamma.html new file mode 100644 index 0000000000000..427b59bd9e272 --- /dev/null +++ b/datum/security_level/gamma.html @@ -0,0 +1,29 @@ + + + + + + + /datum/security_level/gamma - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

gamma + + + +

+ +

Gamma

+

Station major hostile threats

+ + + diff --git a/datum/security_level/green.html b/datum/security_level/green.html new file mode 100644 index 0000000000000..5ec56abb2952c --- /dev/null +++ b/datum/security_level/green.html @@ -0,0 +1,29 @@ + + + + + + + /datum/security_level/green - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

green + + + +

+ +

GREEN

+

No threats

+ + + diff --git a/datum/security_level/red.html b/datum/security_level/red.html new file mode 100644 index 0000000000000..e788a81c6dad5 --- /dev/null +++ b/datum/security_level/red.html @@ -0,0 +1,29 @@ + + + + + + + /datum/security_level/red - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

red + + + +

+ +

RED

+

Hostile threats

+ + + diff --git a/datum/server_command.html b/datum/server_command.html new file mode 100644 index 0000000000000..f041c58cff95d --- /dev/null +++ b/datum/server_command.html @@ -0,0 +1,60 @@ + + + + + + + /datum/server_command - Space Station 13 + + +
+ Space 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

+ + + +

Vars

command_argsAssociative list of command args
command_nameThe command name (must be unique)
ignoreselfDoes the sending server want to ignore this command? This is almost always yes unless you are doing testing stuff
sourceThe source BYOND server for this message
+

Var Details

command_args + + + + +

+

Associative list of command args

command_name + + + + +

+

The command name (must be unique)

ignoreself + + + + +

+

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

+ + + diff --git a/datum/server_configuration.html b/datum/server_configuration.html new file mode 100644 index 0000000000000..4ea4067439b8f --- /dev/null +++ b/datum/server_configuration.html @@ -0,0 +1,183 @@ + + + + + + + /datum/server_configuration - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

server_configuration + + + +

+ +

Represents a base configuration datum. Has everything else bundled into it

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

Vars

adminHolder for the admin configuration datum
afkHolder for the AFK configuration datum
asset_cacheHolder for the asset cache configuration datum
custom_spritesHolder for the custom sprites configuration datum
databaseHolder for the DB configuration datum
discordHolder for the Discord configuration datum
eventHolder for the Event configuration datum
gamemodeHolder for the gamemode configuration datum
generalHolder for the general configuration datum
ipintelHolder for the IPIntel configuration datum
jobsHolder for the job configuration datum
loggingHolder for the logging configuration datum
mcHolder for the MC configuration datum
metricsHolder for the metrics configuration datum
movementHolder for the movement configuration datum
overflowHolder for the overflow configuration datum
raw_dataRaw data. Stored here to avoid passing data between procs constantly
redisHolder for the redis configuration datum
ruinsHolder for the ruins configuration datum
systemHolder for the system configuration datum
urlHolder for the URL configuration datum
voteHolder for the voting configuration datum
+

Var Details

admin + + + + +

+

Holder for the admin configuration datum

afk + + + + +

+

Holder for the AFK configuration datum

asset_cache + + + + +

+

Holder for the asset cache configuration datum

custom_sprites + + + + +

+

Holder for the custom sprites configuration datum

database + + + + +

+

Holder for the DB configuration datum

discord + + + + +

+

Holder for the Discord configuration datum

event + + + + +

+

Holder for the Event configuration datum

gamemode + + + + +

+

Holder for the gamemode configuration datum

general + + + + +

+

Holder for the general configuration datum

ipintel + + + + +

+

Holder for the IPIntel configuration datum

jobs + + + + +

+

Holder for the job 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

url + + + + +

+

Holder for the URL configuration datum

vote + + + + +

+

Holder for the voting configuration datum

+ + + diff --git a/datum/song.html b/datum/song.html new file mode 100644 index 0000000000000..39372e94495b2 --- /dev/null +++ b/datum/song.html @@ -0,0 +1,525 @@ + + + + + + + /datum/song - Space Station 13 + + +
+ Space 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.

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

Vars

allowed_instrument_idsWhat instruments our built in picker can use. The picker won't show unless this is longer than one.
cached_exponential_dropoffDo not directly set, use update_sustain()
cached_legacy_dirCached legacy dir for legacy instruments
cached_legacy_extCached legacy ext for legacy instruments
cached_linear_dropoff/////// DO NOT DIRECTLY SET THESE! +Do not directly set, use update_sustain()
cached_samplesCached list of samples, referenced directly from the instrument for synthesized instruments
channels_idleList of channels that aren't being used, as text. This is to prevent unnecessary freeing and reallocations from SSsounds/SSinstruments.
channels_playingChannel as text = current volume percentage but it's 0 to 100 instead of 0 to 1.
compiled_chordsPlaying 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_chordCurrent chord we're on.
debug_modeIf this is enabled, some things won't be strictly cleared when they usually are (liked compiled_chords on play stop)
delay_byAmount of delay to wait before playing the next chord
editingAre we currently editing?
elapsed_delayCurrent 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_noteShould we not decay our last played note?
hearing_mobsThe list of mobs that can hear us
helpIs the help screen open?
instrument_rangeHow far we can be heard
last_channel_playedLast channel to play. text.
last_hearcheckLast world.time we checked for who can hear us
legacyAre we operating in legacy mode (so if the instrument is a legacy instrument)
linesOur song lines
max_repeatsMaximum times we can repeat
max_sound_channelsMax sound channels to occupy
max_volumeMax volume
min_volumeMin volume - This is so someone doesn't decide it's funny to set it to 0 and play invisible songs.
nameName of the song
note_shift////////// !!FUN!! - Only works in synthesized mode! ///////////////// +Note numbers to shift.
octave_minDO NOT TOUCH THESE
parentThe atom we're attached to/playing from
playingAre we currently playing?
repeatRepeats left
sustain_dropoff_volumeWhen a note is considered dead if it is below this in volume
sustain_exponential_dropoffExponential sustain dropoff rate per decisecond
sustain_linear_durationTotal duration of linear sustain for 100 volume note to get to SUSTAIN_DROPOFF
sustain_modeThe kind of sustain we're using
tempodelay between notes in deciseconds
user_playingPerson playing us
using_instrument///////// Cached instrument variables ///////////// +Instrument we are currently using
using_sound_channelsCurrent channels, so we can save a length() call.
volumeOur volume

Procs

compile_chordsCompiles chords.
compile_legacyCompiles 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_synthesizedCompiles 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_hearcheckChecks and stores which mobs can hear us. Terminates sounds for mobs that leave our range.
get_bpmGets our beats per minute based on our tempo.
parse_songParses a song the user has input into lines and stores them.
play_chordPlays a chord.
playkey_legacyProc to play a legacy note. Just plays the sound to hearing mobs (and does hearcheck if necessary), no fancy channel/sustain/management.
playkey_synthPlays a specific numerical key from our instrument to anyone who can hear us. +Does a hearing check if enough time has passed.
pop_channelPops 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_decayDecays our channels and updates their volumes to mobs who can hear us.
process_songProcesses our song.
sanitize_tempoSanitizes tempo to a value that makes sense and fits the current world.tick_lag.
set_bpmSets our tempo from a beats-per-minute, sanitizing it to a valid number first.
set_dropoff_volumeSetter for setting how low the volume has to get before a note is considered "dead" and dropped
set_exponential_drop_rateSetter for setting exponential falloff factor.
set_instrumentSets our instrument, caching anything necessary for faster accessing. Accepts an ID, typepath, or instantiated instrument datum.
set_linear_falloff_durationSetter for setting linear falloff duration.
set_volumeSetter for setting output volume.
should_stop_playingChecks if we should halt playback.
start_playingAttempts to start playing our song.
stop_playingStops playing, terminating all sounds if in synthesized mode. Clears hearing_mobs.
tempodiv_to_delayConverts a tempodiv to ticks to elapse before playing the next chord, taking into account our tempo.
terminate_all_soundsStops all sounds we are "responsible" for. Only works in synthesized mode.
terminate_sound_mobStops all sounds we are responsible for in a given person. Only works in synthesized mode.
update_sustainUpdates 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:

+

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:

+

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.

+ + + diff --git a/datum/sortInstance.html b/datum/sortInstance.html new file mode 100644 index 0000000000000..b3d9be1803122 --- /dev/null +++ b/datum/sortInstance.html @@ -0,0 +1,45 @@ + + + + + + + /datum/sortInstance - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

sortInstance + + + +

+ + +

Procs

gallopRightLike 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.

+

@param key the key whose insertion point to search for +@param a the array in which to search +@param base the index of the first element in the range +@param len the length of the range; must be > 0 +@param 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. +@param c the comparator used to order the range, and to search +@return the int k, 0 <= k <= n such that a[b + k - 1] <= key < a[b + k]

+ + + diff --git a/datum/species.html b/datum/species.html new file mode 100644 index 0000000000000..2418e45ad978a --- /dev/null +++ b/datum/species.html @@ -0,0 +1,154 @@ + + + + + + + /datum/species - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

species + + + +

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

Vars

armorAdditional armour value for the species.
article_overrideArticle 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_bodyaccName of default body accessory if any.
inherent_biotypesbitfield of biotypes the mob belongs to.
inherent_traitsGeneric traits tied to having the species.
max_ageMaximum age this species can have
min_ageMinimum age this species can have
nameSpecies name
name_pluralPluralized name (since "[name]s" is not always valid)
optional_body_accessoryWhether the presence of a body accessory on this species is optional or not.
special_step_soundsSounds to override barefeet walking
sprite_sheet_nameThe corresponding key for spritesheets
tailName of tail image in species effects icon file.
winglike tail but wings

Procs

create_organsHandles creation of mob organs.
get_species_runechat_colorSpecies-specific runechat colour handler
+

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.

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

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.

special_step_sounds + + + + +

+

Sounds to override barefeet walking

sprite_sheet_name + + + + +

+

The corresponding key for spritesheets

tail + + + + +

+

Name of tail image in species effects icon file.

wing + + + + +

+

like tail but wings

Proc Details

create_organs +

+

Handles creation of mob organs.

+

Arguments:

+

get_species_runechat_color +

+

Species-specific runechat colour handler

+

Checks the species datum flags and returns the appropriate colour +Can be overridden on subtypes to short-circuit these checks (Example: Grey colour is eye colour) +Arguments:

+
+ + + diff --git a/datum/species/skeleton.html b/datum/species/skeleton.html new file mode 100644 index 0000000000000..273ab8ba54dad --- /dev/null +++ b/datum/species/skeleton.html @@ -0,0 +1,43 @@ + + + + + + + /datum/species/skeleton - Space Station 13 + + +
+ Space 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)

+ +

Vars

milk_fracture_repair_probabilityHow likely (in %) are we to heal a fracture?
milk_heal_amountHow 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()

+ + + diff --git a/datum/spell.html b/datum/spell.html new file mode 100644 index 0000000000000..4d72de0a2e25e --- /dev/null +++ b/datum/spell.html @@ -0,0 +1,248 @@ + + + + + + + /datum/spell - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

spell + + + +

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

Vars

base_cooldownrecharge time in deciseconds
cooldown_handlerhandles a given spells cooldowns. tracks the time until its off cooldown,
create_attack_logsdoes this spell generate attack logs?
create_custom_logsIf this spell creates custom logs using the write_custom_logs() proc. Will ignore create_attack_logs
custom_handlerWhich spell_handler is used in addition to the normal spells behaviour, can be null. Set this in create_new_handler if needed
holy_area_cancastWhether or not the spell functions in a holy place
selection_activated_messageThe message displayed when a click based spell gets activated
selection_deactivated_messageThe message displayed when a click based spell gets deactivated
smoke_typeDetermines if the spell has smoke, and if so what effect the smoke has. See spell defines.
spell_handlersList with the handler datums per spell type. Key = src.type, value = the handler datum created by create_new_handler()
targetingWhich targeting system is used. Set this in create_new_targeting
targeting_datumsList with the targeting datums per spell type. Key = src.type, value = the targeting datum created by create_new_targeting()

Procs

castThe proc where the actual spell gets cast.
choose_targetsWill try to choose targets using the targeting variable and perform the spell if it can +Do not override this! Override create_new_targeting instead
create_new_cooldownCreates 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_handlerCreates 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_targetingCreates and returns the targeting datum for this spell type. Override this! +Should return a value of type /datum/spell_targeting
on_mind_transferThis 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_upgradeLets the spell have a special effect applied to it when upgraded. By default, does nothing.
performHandles all the code for performing a spell once the targets are known
should_remove_click_interceptCalled in try_perform before removing the click interceptor. useful to override if you have a spell that requires more than 1 click
spend_spell_costWill spend the cost of using this spell once. Will update the action button's icon if there is any
try_performWill try and perform the spell using the given targets and user. Will spend one charge of the spell
valid_targetAllows for spell specific target validation. Will be used by the spell_targeting datums
write_custom_logsWill write additional logs if create_custom_logs is TRUE and the caster has a ckey. Override this
+

Var Details

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

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()

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:

+

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:

+

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:

+

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:

+

try_perform +

+

Will try and perform the spell using the given targets and user. Will spend one charge of the spell

+

Arguments:

+

valid_target +

+

Allows for spell specific target validation. Will be used by the spell_targeting datums

+

Arguments:

+

write_custom_logs +

+

Will write additional logs if create_custom_logs is TRUE and the caster has a ckey. Override this

+

Arguments:

+
+ + + 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 0000000000000..2c9d0a49cd713 --- /dev/null +++ b/datum/spell/ai_spell/ranged/core_tilt.html @@ -0,0 +1,43 @@ + + + + + + + /datum/spell/ai_spell/ranged/core_tilt - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

core_tilt + + + +

+ + + +

Vars

roll_over_cooldownHow long does it take for the ability to cool down, on top of [roll_over_time]?
roll_over_timeHow long does it take us to roll?
+

Var Details

roll_over_cooldown + + + + +

+

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?

+ + + diff --git a/datum/spell/alien_spell.html b/datum/spell/alien_spell.html new file mode 100644 index 0000000000000..29a0d599d63b2 --- /dev/null +++ b/datum/spell/alien_spell.html @@ -0,0 +1,50 @@ + + + + + + + /datum/spell/alien_spell - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

alien_spell + + + +

+ + + + +

Vars

create_custom_logsEvery alien spell creates only logs, no attack messages on someone placing weeds, but you DO get attack messages on neurotoxin and corrosive acid
plasma_costHow much plasma it costs to use this

Procs

NewEvery 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

+ + + diff --git a/datum/spell/aoe.html b/datum/spell/aoe.html new file mode 100644 index 0000000000000..1000be022adf2 --- /dev/null +++ b/datum/spell/aoe.html @@ -0,0 +1,36 @@ + + + + + + + /datum/spell/aoe - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

aoe + + + +

+ + +

Vars

aoe_rangeHow far does it effect
+

Var Details

aoe_range + + + + +

+

How far does it effect

+ + + diff --git a/datum/spell/aoe/revenant.html b/datum/spell/aoe/revenant.html new file mode 100644 index 0000000000000..0e4dca098ad36 --- /dev/null +++ b/datum/spell/aoe/revenant.html @@ -0,0 +1,64 @@ + + + + + + + /datum/spell/aoe/revenant - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

revenant + + + +

+ + + + + + +

Vars

cast_amountHow much essence it costs to use
lockedIf it's locked and needs to be unlocked before use
revealHow long it reveals the revenant in deciseconds
stunHow long it stuns the revenant in deciseconds
unlock_amountHow much essence it costs to unlock
+

Var Details

cast_amount + + + + +

+

How much essence it costs to use

locked + + + + +

+

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

+ + + diff --git a/datum/spell/aoe/revenant/haunt_object.html b/datum/spell/aoe/revenant/haunt_object.html new file mode 100644 index 0000000000000..33ac248bb82dd --- /dev/null +++ b/datum/spell/aoe/revenant/haunt_object.html @@ -0,0 +1,71 @@ + + + + + + + /datum/spell/aoe/revenant/haunt_object - Space Station 13 + + +
+ Space 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!

+ + + + + +

Vars

attack_timersA list of all attack timers started by this spell being cast
max_targetsThe maximum number of objects to haunt

Procs

attackHandles finding a valid target and throwing us at it
make_spookyHandles making an object haunted and setting it up to attack
set_outlineSets the glow on the haunted object, scales up based on throwforce
stop_timersStop 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

attack +

+

Handles finding a valid target and throwing us at it

make_spooky +

+

Handles making an object haunted and setting it up to attack

set_outline +

+

Sets the glow on the haunted object, scales up based on throwforce

stop_timers +

+

Stop all attack timers cast by the previous spell use

+ + + diff --git a/datum/spell/charge_up.html b/datum/spell/charge_up.html new file mode 100644 index 0000000000000..9422644703705 --- /dev/null +++ b/datum/spell/charge_up.html @@ -0,0 +1,71 @@ + + + + + + + /datum/spell/charge_up - Space Station 13 + + +
+ Space 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

+ + + + + +

Vars

charge_soundThe sound charging up your power will make. Be sure to include a channel when creating the sound
charge_up_overlayThe overlay used to show that you are charging. Create this in the New of the spell
max_charge_timeHow long you can charge for
start_charging_textThe text shown when you start charging
stop_charging_fail_textThe text shown when you are over the charge limit and thus can't stop.
stop_charging_textThe 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

+ + + diff --git a/datum/spell/charge_up/bounce.html b/datum/spell/charge_up/bounce.html new file mode 100644 index 0000000000000..6cfcdf37ed83e --- /dev/null +++ b/datum/spell/charge_up/bounce.html @@ -0,0 +1,71 @@ + + + + + + + /datum/spell/charge_up/bounce - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — 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

+ + + +

Procs

apply_bounce_effectThe proc called when a bounce hits a target. Override this to add an effect +The user itself is never hit
create_beamCalled when a bounce travels from one mob to another
get_bounce_amountHow much bounces should there be in total?
get_bounce_energyHow much energy should each bounce have?

Proc Details

apply_bounce_effect +

+

The proc called when a bounce hits a target. Override this to add an effect +The user itself is never hit

+

Arguments:

+

create_beam +

+

Called when a bounce travels from one mob to another

+

Arguments:

+

get_bounce_amount +

+

How much bounces should there be in total?

get_bounce_energy +

+

How much energy should each bounce have?

+ + + diff --git a/datum/spell/hackerman_deck.html b/datum/spell/hackerman_deck.html new file mode 100644 index 0000000000000..20299cad3ded0 --- /dev/null +++ b/datum/spell/hackerman_deck.html @@ -0,0 +1,36 @@ + + + + + + + /datum/spell/hackerman_deck - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

hackerman_deck + + + +

+ + +

Vars

recent_hackingHow 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.

+ + + diff --git a/datum/spell/mimic.html b/datum/spell/mimic.html new file mode 100644 index 0000000000000..7300986256ebd --- /dev/null +++ b/datum/spell/mimic.html @@ -0,0 +1,64 @@ + + + + + + + /datum/spell/mimic - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

mimic + + + +

+ + + + + + +

Vars

available_formsWhich forms the user can become
max_formsHow many forms the user can remember
next_override_indexWhich index will be overriden next when the user wants to remember another form
perfect_disguiseIf a message is shown when somebody examines the user from close range
selected_formWhich form is currently selected
+

Var Details

available_forms + + + + +

+

Which forms the user can become

max_forms + + + + +

+

How many forms the user can remember

next_override_index + + + + +

+

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

+ + + diff --git a/datum/spell/morph_spell.html b/datum/spell/morph_spell.html new file mode 100644 index 0000000000000..9847d538304be --- /dev/null +++ b/datum/spell/morph_spell.html @@ -0,0 +1,36 @@ + + + + + + + /datum/spell/morph_spell - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

morph_spell + + + +

+ + +

Vars

hunger_costHow much food it costs the morph to use this
+

Var Details

hunger_cost + + + + +

+

How much food it costs the morph to use this

+ + + diff --git a/datum/spell/projectile.html b/datum/spell/projectile.html new file mode 100644 index 0000000000000..33be8bfd8041d --- /dev/null +++ b/datum/spell/projectile.html @@ -0,0 +1,36 @@ + + + + + + + /datum/spell/projectile - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

projectile + + + +

+ + +

Vars

proj_typeThe projectile we spawn. Make sure to override this
+

Var Details

proj_type + + + + +

+

The projectile we spawn. Make sure to override this

+ + + diff --git a/datum/spell/spacetime_dist.html b/datum/spell/spacetime_dist.html new file mode 100644 index 0000000000000..2a8e7d4737d21 --- /dev/null +++ b/datum/spell/spacetime_dist.html @@ -0,0 +1,64 @@ + + + + + + + /datum/spell/spacetime_dist - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

spacetime_dist + + + +

+ + + + + + +

Vars

durationThe duration of the scramble
effectsA lazylist of all scramble effects this spell has created.
readyWhether we're ready to cast again yet or not. In the event someone lowers their cooldown with charge.
scramble_radiusThe radius of the scramble around the caster. Increased by 3 * spell_level

Procs

clean_turfsCallback 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.

+ + + diff --git a/datum/spell/summonitem.html b/datum/spell/summonitem.html new file mode 100644 index 0000000000000..3a1521eecb00b --- /dev/null +++ b/datum/spell/summonitem.html @@ -0,0 +1,36 @@ + + + + + + + /datum/spell/summonitem - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

summonitem + + + +

+ + +

Vars

blacklisted_summonsList 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

+ + + diff --git a/datum/spell/touch/alien_spell.html b/datum/spell/touch/alien_spell.html new file mode 100644 index 0000000000000..33368fe899148 --- /dev/null +++ b/datum/spell/touch/alien_spell.html @@ -0,0 +1,57 @@ + + + + + + + /datum/spell/touch/alien_spell - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

alien_spell + + + +

+ + + + + +

Vars

base_cooldownExtremely fast cooldown, only present so the cooldown system doesn't explode
create_custom_logsEvery 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_messageWe want a special on remove message, so we got this variable to do so
plasma_costHow much plasma it costs to use this
+

Var Details

base_cooldown + + + + +

+

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

+ + + diff --git a/datum/spell/turf_teleport.html b/datum/spell/turf_teleport.html new file mode 100644 index 0000000000000..9999156f6b9cd --- /dev/null +++ b/datum/spell/turf_teleport.html @@ -0,0 +1,36 @@ + + + + + + + /datum/spell/turf_teleport - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

turf_teleport + + + +

+ + +

Vars

include_light_turfsWhether the spell can teleport to light locations
+

Var Details

include_light_turfs + + + + +

+

Whether the spell can teleport to light locations

+ + + diff --git a/datum/spell/vampire.html b/datum/spell/vampire.html new file mode 100644 index 0000000000000..d02d446632058 --- /dev/null +++ b/datum/spell/vampire.html @@ -0,0 +1,36 @@ + + + + + + + /datum/spell/vampire - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

vampire + + + +

+ + +

Vars

required_bloodHow much blood this ability costs to use
+

Var Details

required_blood + + + + +

+

How much blood this ability costs to use

+ + + diff --git a/datum/spell/vampire/arena.html b/datum/spell/vampire/arena.html new file mode 100644 index 0000000000000..d28b8c053ecb8 --- /dev/null +++ b/datum/spell/vampire/arena.html @@ -0,0 +1,43 @@ + + + + + + + /datum/spell/vampire/arena - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

arena + + + +

+ + + +

Vars

all_temp_wallsHolds a reference to all arena walls so we can qdel them easily with dispel()
timerHolds 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

+ + + diff --git a/datum/spell/vampire/soul_anchor.html b/datum/spell/vampire/soul_anchor.html new file mode 100644 index 0000000000000..6e6366496a18d --- /dev/null +++ b/datum/spell/vampire/soul_anchor.html @@ -0,0 +1,43 @@ + + + + + + + /datum/spell/vampire/soul_anchor - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

soul_anchor + + + +

+ + + +

Vars

making_anchorAre we making an anchor?
timerHolds 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

+ + + diff --git a/datum/spell_cooldown.html b/datum/spell_cooldown.html new file mode 100644 index 0000000000000..9060a899e390e --- /dev/null +++ b/datum/spell_cooldown.html @@ -0,0 +1,57 @@ + + + + + + + /datum/spell_cooldown - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

spell_cooldown + + + +

+ + + + + +

Vars

recharge_durationthe amount of time that must pass before a spell can be used again
recharge_timethe world.time the spell will be available again
spell_parentholds a ref to the spell
starts_off_cooldowndoes it start off cooldown?
+

Var Details

recharge_duration + + + + +

+

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?

+ + + diff --git a/datum/spell_cooldown/charges.html b/datum/spell_cooldown/charges.html new file mode 100644 index 0000000000000..cd1b6ad1af388 --- /dev/null +++ b/datum/spell_cooldown/charges.html @@ -0,0 +1,57 @@ + + + + + + + /datum/spell_cooldown/charges - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

charges + + + +

+ + + + + +

Vars

charge_durationthe cooldown between uses of charges
charge_timethe time at which a spell charge can be used
current_chargesthe number of charges we currently have
max_chargesthe max number of charges a spell can have
+

Var Details

charge_duration + + + + +

+

the cooldown between uses of charges

charge_time + + + + +

+

the time at which a spell charge can be used

current_charges + + + + +

+

the number of charges we currently have

max_charges + + + + +

+

the max number of charges a spell can have

+ + + diff --git a/datum/spell_handler/alien.html b/datum/spell_handler/alien.html new file mode 100644 index 0000000000000..bde578c02d0ab --- /dev/null +++ b/datum/spell_handler/alien.html @@ -0,0 +1,36 @@ + + + + + + + /datum/spell_handler/alien - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

alien + + + +

+ + +

Vars

plasma_costAmount of plasma required to use this ability
+

Var Details

plasma_cost + + + + +

+

Amount of plasma required to use this ability

+ + + diff --git a/datum/spell_handler/morph.html b/datum/spell_handler/morph.html new file mode 100644 index 0000000000000..4bcd8d5a527c5 --- /dev/null +++ b/datum/spell_handler/morph.html @@ -0,0 +1,36 @@ + + + + + + + /datum/spell_handler/morph - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

morph + + + +

+ + +

Vars

hunger_costHow much food it costs the morph to use this
+

Var Details

hunger_cost + + + + +

+

How much food it costs the morph to use this

+ + + diff --git a/datum/spell_handler/vampire.html b/datum/spell_handler/vampire.html new file mode 100644 index 0000000000000..91066ba8f5691 --- /dev/null +++ b/datum/spell_handler/vampire.html @@ -0,0 +1,36 @@ + + + + + + + /datum/spell_handler/vampire - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

vampire + + + +

+ + +

Vars

deduct_blood_on_castIf 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

+ + + diff --git a/datum/spell_targeting.html b/datum/spell_targeting.html new file mode 100644 index 0000000000000..f82a94ea7d638 --- /dev/null +++ b/datum/spell_targeting.html @@ -0,0 +1,158 @@ + + + + + + + /datum/spell_targeting - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

spell_targeting + + + +

+ +

The base class for the targeting systems spells use.

+

To create a new targeting datum you just inherit from this base type and override the /datum/spell_targeting/proc/choose_targets proc. +Override the /datum/spell_targeting/proc/valid_target proc for more complex validations. +More complex behaviour like auto targeting and click based activation is possible.

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

Vars

allowed_typeWhich type the targets have to be
include_userIf it includes user. Not always used in all spell_targeting objects
max_targetsHow many targets are allowed. INFINITY is used to target unlimited targets
rangeThe range of the spell; outer radius for aoe spells
selection_typeCan be SPELL_SELECTION_RANGE or SPELL_SELECTION_VIEW
try_auto_targetWhether or not the spell will try to auto target first before setting up the intercept click
use_intercept_clickWhether or not the targeting is done by intercepting a click or not
use_obstacle_checkIf 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_userWhether or not the spell should use the turf of the user as starting point

Procs

InterceptClickOnCalled when the parent spell intercepts the click
attempt_auto_targetWill attempt to auto target the spell. Only works with 1 target currently
choose_targetsCalled when choosing the targets for the parent spell
obstacle_checkChecks 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.
valid_targetChecks 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:

+

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:

+

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:

+

valid_target +

+

Checks whether or not the given target is valid. Calls spell.valid_target as well

+

Arguments:

+
+ + + diff --git a/datum/spell_targeting/aoe.html b/datum/spell_targeting/aoe.html new file mode 100644 index 0000000000000..aa83dad7c2fdb --- /dev/null +++ b/datum/spell_targeting/aoe.html @@ -0,0 +1,36 @@ + + + + + + + /datum/spell_targeting/aoe - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

aoe + + + +

+ +

An area of effect based spell targeting system. Will return all targets in the given range

+

Vars

inner_radiusThe radius of turfs not being affected. -1 is inactive
+

Var Details

inner_radius + + + + +

+

The radius of turfs not being affected. -1 is inactive

+ + + diff --git a/datum/spell_targeting/click.html b/datum/spell_targeting/click.html new file mode 100644 index 0000000000000..628bc523dee68 --- /dev/null +++ b/datum/spell_targeting/click.html @@ -0,0 +1,36 @@ + + + + + + + /datum/spell_targeting/click - Space Station 13 + + +
+ Space 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

+

Vars

click_radiusHow 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

+ + + diff --git a/datum/spell_targeting/spiral.html b/datum/spell_targeting/spiral.html new file mode 100644 index 0000000000000..cec8700055d8e --- /dev/null +++ b/datum/spell_targeting/spiral.html @@ -0,0 +1,30 @@ + + + + + + + /datum/spell_targeting/spiral - Space Station 13 + + +
+ Space 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.

+ + + diff --git a/datum/spell_targeting/targeted.html b/datum/spell_targeting/targeted.html new file mode 100644 index 0000000000000..cf6adb2d2368a --- /dev/null +++ b/datum/spell_targeting/targeted.html @@ -0,0 +1,50 @@ + + + + + + + /datum/spell_targeting/targeted - Space Station 13 + + +
+ Space 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.

+ + +

Vars

can_hit_target_more_than_onceOnly important if max_targets > 1, affects if the spell can be cast multiple times at one person from one cast
random_targetChooses random viable target instead of asking the caster
target_priorityWho 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

+ + + diff --git a/datum/sprite_accessory/hair/dave.html b/datum/sprite_accessory/hair/dave.html new file mode 100644 index 0000000000000..261c43d9f6abd --- /dev/null +++ b/datum/sprite_accessory/hair/dave.html @@ -0,0 +1,29 @@ + + + + + + + /datum/sprite_accessory/hair/dave - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

dave + + + +

+ +

END VG HAIRSTYLES//

+

START POLARIS HAIRSTYLES

+ + + diff --git a/datum/sprite_accessory/hair/eighties_ponytail.html b/datum/sprite_accessory/hair/eighties_ponytail.html new file mode 100644 index 0000000000000..d3989f799ce94 --- /dev/null +++ b/datum/sprite_accessory/hair/eighties_ponytail.html @@ -0,0 +1,29 @@ + + + + + + + /datum/sprite_accessory/hair/eighties_ponytail - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

eighties_ponytail + + + +

+ +

//END POLARIS HAIRSTYLES///

+

Ume hairstyles

+ + + diff --git a/datum/stack_recipe.html b/datum/stack_recipe.html new file mode 100644 index 0000000000000..26863423cfa85 --- /dev/null +++ b/datum/stack_recipe.html @@ -0,0 +1,127 @@ + + + + + + + /datum/stack_recipe - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

stack_recipe + + + +

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

Vars

cult_structureResulting atom is a cult structure
max_res_amountMaximum amount of atoms made
on_floorRequires a floor underneath to make
on_floor_or_latticeRequires a floor OR lattice underneath to make
one_per_turfOnly one resulting atom is allowed per turf
req_amountRequired stack amount to make
res_amountAmount of atoms made
result_typeResulting typepath of crafted atom
timeTime to make
titleVisible title of recipe
window_checksRequires a valid window location to make

Procs

do_buildCreates 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_buildWhat should be done after the object is built? obj/item/stack/O 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_buildReturns 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_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/O 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()

+ + + diff --git a/datum/station_department.html b/datum/station_department.html new file mode 100644 index 0000000000000..2da7279be3cec --- /dev/null +++ b/datum/station_department.html @@ -0,0 +1,99 @@ + + + + + + + /datum/station_department - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

station_department + + + +

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

Vars

account_accessThe access need to get into this department account, this is a one req access list, used especialy for supply computer
account_base_payThe amount this department will be payed every payday at a minimum (unless deducted otherwise)
account_starting_balanceThe amount this departments will get endowed with a roundstart in their money account
auto_approval_capIf there is auto approval, is it capped?
crate_auto_approveWill this department's account auto approve crates?
department_accountThe money account tied to this department
department_namename of department, used to determine department money account names as well
department_rolesA list of occupation names in this department
head_of_staffThe occupation name of the person in charge of this department officially

Procs

has_account_accesschecks 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

+ + + diff --git a/datum/station_goal/secondary.html b/datum/station_goal/secondary.html new file mode 100644 index 0000000000000..259c94e27eeeb --- /dev/null +++ b/datum/station_goal/secondary.html @@ -0,0 +1,92 @@ + + + + + + + /datum/station_goal/secondary - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

secondary + + + +

+ + + + + + + + + + +

Vars

abstractAbstract goals can't be used directly.
admin_descAdmin-only shor description of the goal.
departmentAssigned department. Should match the values used for requests consoles.
personal_accountThe money account of the person who requested the goal.
progressProgress type of this goal.
progress_typeType path of the progress tracker used.
requester_nameThe person who requested the goal.
should_send_crateShould we (still) send a personal crate on the next shipment?
trackerTracker that manages the goal progress, permanent and temporary.
+

Var Details

abstract + + + + +

+

Abstract goals can't be used directly.

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.

+ + + diff --git a/datum/station_goal/secondary/variety_food.html b/datum/station_goal/secondary/variety_food.html new file mode 100644 index 0000000000000..9409da2979c12 --- /dev/null +++ b/datum/station_goal/secondary/variety_food.html @@ -0,0 +1,43 @@ + + + + + + + /datum/station_goal/secondary/variety_food - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

variety_food + + + +

+ + + +

Vars

amount_perHow many of each food type are needed.
different_typesHow many different types of food are needed.
+

Var Details

amount_per + + + + +

+

How many of each food type are needed.

different_types + + + + +

+

How many different types of food are needed.

+ + + diff --git a/datum/station_state.html b/datum/station_state.html new file mode 100644 index 0000000000000..64884fbdec7c6 --- /dev/null +++ b/datum/station_state.html @@ -0,0 +1,78 @@ + + + + + + + /datum/station_state - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

station_state + + + +

+ + + + + + + + +

Vars

doorAmount of airlocks
floorAmount of floors
grilleAmount of grilles (without windows)
machAmount of machines
r_wallAmount of reinforced walles
wallAmount of regular walls
windowAmount of full windows
+

Var Details

door + + + + +

+

Amount of airlocks

floor + + + + +

+

Amount of floors

grille + + + + +

+

Amount of grilles (without windows)

mach + + + + +

+

Amount of machines

r_wall + + + + +

+

Amount of reinforced walles

wall + + + + +

+

Amount of regular walls

window + + + + +

+

Amount of full windows

+ + + diff --git a/datum/station_trait.html b/datum/station_trait.html new file mode 100644 index 0000000000000..be4b4998e0d10 --- /dev/null +++ b/datum/station_trait.html @@ -0,0 +1,134 @@ + + + + + + + /datum/station_trait - Space Station 13 + + +
+ Space 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.

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

Vars

blacklistWhat traits are incompatible with this one?
can_revertWhether or not this trait can be reverted by an admin
dynamic_threat_idThe ID that we look for in dynamic.json. Not synced with 'name' because I can already see this go wrong
forceWhether this trait is always enabled; generally used for debugging
nameName of the trait
report_messageWhat message to show in the centcom report?
show_in_reportDoes this trait show in the centcom report?
trait_flagsExtra flags for station traits such as it being abstract, planetary or space only
trait_processesWhether or not this trait uses process()
trait_to_giveWhat code-trait does this station trait give? gives none if null
trait_typeThe type of this trait. Used to classify how this trait influences the station
weightChance relative to other traits of its type to be picked

Procs

get_reporttype of info the centcom report has on this trait, if any.
on_round_startProc ran when round starts. Use this for roundstart effects.
revertWill 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.

+ + + diff --git a/datum/station_trait/cybernetic_revolution.html b/datum/station_trait/cybernetic_revolution.html new file mode 100644 index 0000000000000..517b9c7602933 --- /dev/null +++ b/datum/station_trait/cybernetic_revolution.html @@ -0,0 +1,36 @@ + + + + + + + /datum/station_trait/cybernetic_revolution - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

cybernetic_revolution + + + +

+ +

NOTE: THIS MAKES EMP MUCH MORE EXPENSIVE.

+

Vars

job_to_cyberneticList 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.

+ + + 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 0000000000000..0808ef4dce912 --- /dev/null +++ b/datum/station_trait/random_event_weight_modifier.html @@ -0,0 +1,57 @@ + + + + + + + /datum/station_trait/random_event_weight_modifier - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

random_event_weight_modifier + + + +

+ + + + + +

Vars

disable_is_one_shotDo we want to turn off is one shot?
event_namesThe names of the event we modify.
event_severityThe severity of the event we modify.
weight_multiplierMultiplier 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

+ + + diff --git a/datum/status_effect.html b/datum/status_effect.html new file mode 100644 index 0000000000000..b77fad4462de8 --- /dev/null +++ b/datum/status_effect.html @@ -0,0 +1,35 @@ + + + + + + + /datum/status_effect - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

status_effect + + + +

+ + +

Procs

before_removeCalled before being removed; returning FALSE will cancel removal

Proc Details

before_remove +

+

Called before being removed; returning FALSE will cancel removal

+ + + diff --git a/datum/status_effect/blooddrunk.html b/datum/status_effect/blooddrunk.html new file mode 100644 index 0000000000000..dadf5899f92ec --- /dev/null +++ b/datum/status_effect/blooddrunk.html @@ -0,0 +1,36 @@ + + + + + + + /datum/status_effect/blooddrunk - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

blooddrunk + + + +

+ + +

Vars

chariotIf 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.

+ + + diff --git a/datum/status_effect/bubblegum_curse.html b/datum/status_effect/bubblegum_curse.html new file mode 100644 index 0000000000000..5b7f19a9a09c4 --- /dev/null +++ b/datum/status_effect/bubblegum_curse.html @@ -0,0 +1,43 @@ + + + + + + + /datum/status_effect/bubblegum_curse - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

bubblegum_curse + + + +

+ + + +

Vars

coward_checkingAre we starting the process to check if the person has still gotten out of range of bubble / crossed zlvls.
damageThe damage the status effect does per tick.
+

Var Details

coward_checking + + + + +

+

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.

+ + + diff --git a/datum/status_effect/cursed.html b/datum/status_effect/cursed.html new file mode 100644 index 0000000000000..08aca5decc5b1 --- /dev/null +++ b/datum/status_effect/cursed.html @@ -0,0 +1,107 @@ + + + + + + + /datum/status_effect/cursed - Space Station 13 + + +
+ Space 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.

+ + + + + + + + + + +

Vars

branded_handThe hand we are branded to.
curse_countThe amount of times we have been "applied" to the target.
damage_chanceRaw probability we have to deal damage this tick.
max_curse_countThe max number of curses a target can incur with this status effect.
monologuingAre we currently in the process of sending a monologue?

Procs

check_cursesChecks 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_cursesCleans 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_effectsMakes a nice lorey message about the curse level we're at. I think it's nice
on_deathIf our owner dies without getting gibbed, we gib them, because fuck you baltamore
on_stat_changedIf our owner's stat changes, rapidly surge the damage chance.
update_curse_countHandles 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.

+ + + diff --git a/datum/status_effect/fake_virus.html b/datum/status_effect/fake_virus.html new file mode 100644 index 0000000000000..f067d712665fc --- /dev/null +++ b/datum/status_effect/fake_virus.html @@ -0,0 +1,57 @@ + + + + + + + /datum/status_effect/fake_virus - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

fake_virus + + + +

+ + + + + +

Vars

current_fake_diseaseWhich disease we are going to fake?
fake_emoteFake virus emotes with three stages
fake_msgFake virus messages by with three stages
msg_stageSo 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

+ + + diff --git a/datum/status_effect/fleshmend.html b/datum/status_effect/fleshmend.html new file mode 100644 index 0000000000000..2d3a468fe3ac8 --- /dev/null +++ b/datum/status_effect/fleshmend.html @@ -0,0 +1,50 @@ + + + + + + + /datum/status_effect/fleshmend - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

fleshmend + + + +

+ + + + +

Vars

active_instancesa list of integers, one for each remaining instance of fleshmend.
freezingThis diminishes the healing of fleshmend if the user is cold when it is activated
toleranceThis 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.

+ + + diff --git a/datum/status_effect/high_five.html b/datum/status_effect/high_five.html new file mode 100644 index 0000000000000..54df78a14e57b --- /dev/null +++ b/datum/status_effect/high_five.html @@ -0,0 +1,71 @@ + + + + + + + /datum/status_effect/high_five - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

high_five + + + +

+ + + + + + + +

Vars

critical_successMessage displayed when wizards perform this together
item_pathItem to be shown in the pop-up balloon.
requestMessage displayed when this status effect is applied.
sound_effectSound effect played when this emote is completed.
successMessage displayed when normal people perform this together

Procs

wiz_cleanupSo we don't leave folks with god-mode
+

Var Details

critical_success + + + + +

+

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

+ + + diff --git a/datum/status_effect/high_five/rps.html b/datum/status_effect/high_five/rps.html new file mode 100644 index 0000000000000..25d42f0d44315 --- /dev/null +++ b/datum/status_effect/high_five/rps.html @@ -0,0 +1,36 @@ + + + + + + + /datum/status_effect/high_five/rps - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

rps + + + +

+ + +

Vars

moveThe move that you'll be making.
+

Var Details

move + + + + +

+

The move that you'll be making.

+ + + diff --git a/datum/status_effect/hippocraticOath.html b/datum/status_effect/hippocraticOath.html new file mode 100644 index 0000000000000..3090591c1ee1a --- /dev/null +++ b/datum/status_effect/hippocraticOath.html @@ -0,0 +1,43 @@ + + + + + + + /datum/status_effect/hippocraticOath - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

hippocraticOath + + + +

+ + + +

Vars

heal_pointsHow many points the rod has to heal with, maxes at 50, or whatever heal_points_max is set to.
max_heal_pointsMax 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

+ + + diff --git a/datum/status_effect/his_grace.html b/datum/status_effect/his_grace.html new file mode 100644 index 0000000000000..3112651ac8775 --- /dev/null +++ b/datum/status_effect/his_grace.html @@ -0,0 +1,36 @@ + + + + + + + /datum/status_effect/his_grace - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

his_grace + + + +

+ + +

Vars

toolboxAttached His Grace toolbox
+

Var Details

toolbox + + + + +

+

Attached His Grace toolbox

+ + + diff --git a/datum/status_effect/incapacitating/sleeping.html b/datum/status_effect/incapacitating/sleeping.html new file mode 100644 index 0000000000000..721c5988b3cf7 --- /dev/null +++ b/datum/status_effect/incapacitating/sleeping.html @@ -0,0 +1,38 @@ + + + + + + + /datum/status_effect/incapacitating/sleeping - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

sleeping + + + +

+ + +

Vars

voluntaryWhether 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.

+ + + diff --git a/datum/status_effect/limited_bonus.html b/datum/status_effect/limited_bonus.html new file mode 100644 index 0000000000000..f54cbfe3caa1d --- /dev/null +++ b/datum/status_effect/limited_bonus.html @@ -0,0 +1,51 @@ + + + + + + + /datum/status_effect/limited_bonus - Space Station 13 + + +
+ Space 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.

+ + +

Vars

bonus_timeHow much extra time has been added
bonus_time_per_tickHow much extra time to apply per tick
max_bonus_timeHow much maximum bonus time can be active at once
+

Var Details

bonus_time + + + + +

+

How much extra time has been added

bonus_time_per_tick + + + + +

+

How much extra time to apply per tick

max_bonus_time + + + + +

+

How much maximum bonus time can be active at once

+ + + diff --git a/datum/status_effect/lwap_scope.html b/datum/status_effect/lwap_scope.html new file mode 100644 index 0000000000000..a61b1d22dac20 --- /dev/null +++ b/datum/status_effect/lwap_scope.html @@ -0,0 +1,36 @@ + + + + + + + /datum/status_effect/lwap_scope - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

lwap_scope + + + +

+ + +

Vars

locksThe 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.

+ + + diff --git a/datum/status_effect/shadow_mend.html b/datum/status_effect/shadow_mend.html new file mode 100644 index 0000000000000..98fb478e8d93b --- /dev/null +++ b/datum/status_effect/shadow_mend.html @@ -0,0 +1,36 @@ + + + + + + + /datum/status_effect/shadow_mend - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

shadow_mend + + + +

+ + +

Vars

devilIf 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

+ + + diff --git a/datum/status_effect/speedlegs.html b/datum/status_effect/speedlegs.html new file mode 100644 index 0000000000000..477f2e03b24b1 --- /dev/null +++ b/datum/status_effect/speedlegs.html @@ -0,0 +1,36 @@ + + + + + + + /datum/status_effect/speedlegs - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

speedlegs + + + +

+ + +

Vars

clingA reference to the changeling's changeling antag datum.
+

Var Details

cling + + + + +

+

A reference to the changeling's changeling antag datum.

+ + + diff --git a/datum/status_effect/transient.html b/datum/status_effect/transient.html new file mode 100644 index 0000000000000..7a74a122a2d8f --- /dev/null +++ b/datum/status_effect/transient.html @@ -0,0 +1,44 @@ + + + + + + + /datum/status_effect/transient - Space Station 13 + + +
+ Space 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).

+ +

Vars

strengthHow much strength left before expiring? time in deciseconds.

Procs

calc_decayReturns 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.

+ + + diff --git a/datum/status_effect/transient/hallucination.html b/datum/status_effect/transient/hallucination.html new file mode 100644 index 0000000000000..b345cbb5ccaa4 --- /dev/null +++ b/datum/status_effect/transient/hallucination.html @@ -0,0 +1,39 @@ + + + + + + + /datum/status_effect/transient/hallucination - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

hallucination + + + +

+ + +

Procs

hallucinateSpawns an hallucination for the mob.

Proc Details

hallucinate +

+

Spawns an hallucination for the mob.

+

Arguments:

+
+ + + diff --git a/datum/strip_menu.html b/datum/strip_menu.html new file mode 100644 index 0000000000000..47233fe8d202f --- /dev/null +++ b/datum/strip_menu.html @@ -0,0 +1,57 @@ + + + + + + + /datum/strip_menu - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

strip_menu + + + +

+ +

A representation of the stripping UI

+ + + +

Vars

base64_cacheAssociated list of "[icon][icon_state]" = base64 representation of icon. Used for PERFORMANCE.
interactionsA lazy list of user mobs to a list of strip menu keys that they're interacting with
ownerThe owner who has the element /datum/element/strippable
strippableThe strippable element itself
+

Var Details

base64_cache + + + + +

+

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

+ + + diff --git a/datum/strippable_item.html b/datum/strippable_item.html new file mode 100644 index 0000000000000..29a9ad704b518 --- /dev/null +++ b/datum/strippable_item.html @@ -0,0 +1,151 @@ + + + + + + + /datum/strippable_item - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

strippable_item + + + +

+ +

A representation of an item that can be stripped down

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

Vars

keyThe STRIPPABLE_ITEM_* key

Procs

alternate_actionPerforms an alternative action on this strippable_item. +has_alternate_action needs to be TRUE. +Returns FALSE if blocked by signal, TRUE otherwise.
finish_equipThe proc that places the item on the source. This should not yield.
finish_unequipThe proc that unequips the item from the source. This should not yield.
get_alternate_actionsReturns 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_actionActions that can happen to that body part, regardless if there is an item or not. As long as it is not obscured
get_itemGets the item from the given source.
get_obscuringReturns a STRIPPABLE_OBSCURING_* define to report on whether or not this is obscured.
in_thief_modeReturns whether the user is in "thief mode" where stripping/equipping is silent and stealing from pockets moves stuff to your hands
should_showReturns whether or not this item should show.
start_equipStart the equipping process. This is the proc you should yield in. +Returns TRUE/FALSE depending on if it is allowed.
start_unequipStart the unequipping process. This is the proc you should yield in. +Returns TRUE/FALSE depending on if it is allowed.
try_equipTries to equip the item onto the given source. +Returns TRUE/FALSE depending on if it is allowed. +This should be used for checking if an item CAN be equipped. +It should not perform the equipping itself.
try_unequipTries to unequip the item from the given source. +Returns TRUE/FALSE depending on if it is allowed. +This should be used for checking if it CAN be unequipped. +It should not perform the unequipping itself.
+

Var Details

key + + + + +

+

The STRIPPABLE_ITEM_* key

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.

+ + + diff --git a/datum/strippable_item/hand.html b/datum/strippable_item/hand.html new file mode 100644 index 0000000000000..1f8a9d842cb6d --- /dev/null +++ b/datum/strippable_item/hand.html @@ -0,0 +1,36 @@ + + + + + + + /datum/strippable_item/hand - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

hand + + + +

+ +

A strippable item for a hand

+

Vars

which_handWhich hand?
+

Var Details

which_hand + + + + +

+

Which hand?

+ + + diff --git a/datum/strippable_item/mob_item_slot.html b/datum/strippable_item/mob_item_slot.html new file mode 100644 index 0000000000000..fc8a1c0923915 --- /dev/null +++ b/datum/strippable_item/mob_item_slot.html @@ -0,0 +1,43 @@ + + + + + + + /datum/strippable_item/mob_item_slot - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

mob_item_slot + + + +

+ +

A preset for equipping items onto mob slots

+ +

Vars

item_slotThe SLOT_FLAG_* to equip to.

Procs

get_equip_delayReturns the delay of equipping this item to a mob
+

Var Details

item_slot + + + + +

+

The SLOT_FLAG_* to equip to.

Proc Details

get_equip_delay +

+

Returns the delay of equipping this item to a mob

+ + + 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 0000000000000..9876e117fd33a --- /dev/null +++ b/datum/strippable_item/mob_item_slot/pocket.html @@ -0,0 +1,36 @@ + + + + + + + /datum/strippable_item/mob_item_slot/pocket - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

pocket + + + +

+ + +

Vars

pocket_sideWhich pocket we're referencing. Used for visible text.
+

Var Details

pocket_side + + + + +

+

Which pocket we're referencing. Used for visible text.

+ + + diff --git a/datum/supermatter_event.html b/datum/supermatter_event.html new file mode 100644 index 0000000000000..ad788ddaf11eb --- /dev/null +++ b/datum/supermatter_event.html @@ -0,0 +1,36 @@ + + + + + + + /datum/supermatter_event - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

supermatter_event + + + +

+ + +

Vars

threat_levelProbability of the event not running, higher tiers being rarer
+

Var Details

threat_level + + + + +

+

Probability of the event not running, higher tiers being rarer

+ + + diff --git a/datum/supply_order.html b/datum/supply_order.html new file mode 100644 index 0000000000000..b95b410b13ec5 --- /dev/null +++ b/datum/supply_order.html @@ -0,0 +1,92 @@ + + + + + + + /datum/supply_order - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

supply_order + + + +

+ + + + + + + + + + +

Vars

commentReason/purpose for order given by orderer
objectThe supply pack this order is for
ordered_by_departmentThe station department datum of the person's department who ordered the supply order
orderedbyThe person who ordered the supply order
orderedbyRankThe occupation/assignment of the person who ordered the supply order
orderedbyaccountThe account tied to this order, important for personal orders
ordernumThe orders ID number
requires_cargo_approvaldoes this order need to be approve by carg?
requires_head_approvaldoes this order need to be approve by the department head?
+

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?

+ + + diff --git a/datum/supply_packs.html b/datum/supply_packs.html new file mode 100644 index 0000000000000..e9beb1ff0a55b --- /dev/null +++ b/datum/supply_packs.html @@ -0,0 +1,206 @@ + + + + + + + /datum/supply_packs - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

supply_packs + + + +

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

Vars

accessIf the container is lockable, the access to require for it.
amountThe number of crates that get generated by this pack.
announce_beaconsParticular beacons that we'll notify the relevant department when we reach
are_you_sure_you_want_to_be_bannedIf 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_hiddenIf TRUE, this pack is only visible on a cmagged supply console.
containernameThe name to give the container itself.
containertypeThe type of container that the contents will arrive in.
containsOBJ: What is inside the crate
contains_specialSTRING: What is inside the crate
contrabandIf TRUE, this pack is only visible on a hacked supply console.
costThe cost of this pack.
department_restrictionsDetermines which departments do not need QM approval to order this supply pack
groupThe pack group this should appear in.
hiddenIf TRUE, this pack is only visible on an emagged supply console.
manifestThe manifest contents for this order.
nameThe name of this supply pack.
order_typePath of the type of order that should be generated from this order
singletonIf true, this pack can only be ordered in units of 1.
singleton_group_idIdentifier indicating the specific "set" of singletons that this belongs to. +Only one item in this set can be in the shopping cart at once.
specialA special pack that should not appear unless certain circumstances are fulfilled (event, station goals, admin packs)
special_enabledIf this pack is special, whether it should be visible or not.
ui_manifestList of names for being done in TGUI

Procs

can_orderDefine a special condition as to whether or not this crate can currently be ordered.
create_orderCreate a supply order for this pack.
on_order_confirmCalled 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.

+ + + diff --git a/datum/supply_packs/abstract/shuttle.html b/datum/supply_packs/abstract/shuttle.html new file mode 100644 index 0000000000000..49ecde17436d9 --- /dev/null +++ b/datum/supply_packs/abstract/shuttle.html @@ -0,0 +1,45 @@ + + + + + + + /datum/supply_packs/abstract/shuttle - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

shuttle + + + +

+ +

A "supply pack" that allows for purchasing a custom shuttle.

+ +

Vars

speed_factorThe base speed multiplier to apply to the shuttle. 2 means it arrives twice as fast.
templateThe 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.

+ + + diff --git a/datum/surgery.html b/datum/surgery.html new file mode 100644 index 0000000000000..1d85351bc7ff3 --- /dev/null +++ b/datum/surgery.html @@ -0,0 +1,227 @@ + + + + + + + /datum/surgery - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

surgery + + + +

+ +

Datum Surgery Helpers

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

Vars

abstractWhether or not this should be a selectable surgery at all
can_cancelWhether this surgery can be stopped after the first step with a cautery
cancel_on_organ_changeWhether this surgery should be cancelled when an organ change happens. (removed if requires bodypart, or added if doesn't require bodypart)
descDescription of the surgery
ignore_clothesWhether you need to remove clothes to perform the surgery
locationLocation of the surgery
lying_requiredDoes the victim (patient) need to be lying down?
nameName of the surgery
organ_to_manipulateBody 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_locsBody locations this surgery can be performed on
replaced_byDon't show this surgery if this type exists. Set to /datum/surgery if you want to hide a "base" surgery.
requires_bodypartSurgery is only available if the target bodypart is present (or if it's missing)
requires_organic_bodypartWhether we can perform the surgery on a robotic limb
requires_real_bodypartSome surgeries might work on limbs that don't really exist (like chainsaw arms or flashlight eyes)
self_operableCan the surgery be performed on yourself?
speed_modifierSurgery step speed modifier
step_in_progressIf we're currently performing a step
step_numberHow far along we are in a surgery being performed.
stepsSurgical steps that go into performing this procedure
targetTarget of the surgery
target_mobtypesMobs on which this can be performed

Procs

can_startWhether or not we can start this surgery. +If this returns FALSE, this surgery won't show up in the list.
get_surgery_next_stepGet the next step in the current surgery, or null if we're on the last one.
get_surgery_stepGet the current surgery step we're on
handle_organ_state_changeHandle 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_compatibleGet whether the target organ is compatible with the current surgery.
next_stepTry 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

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

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.

+ + + diff --git a/datum/surgery_step.html b/datum/surgery_step.html new file mode 100644 index 0000000000000..ecab76374f3a1 --- /dev/null +++ b/datum/surgery_step.html @@ -0,0 +1,244 @@ + + + + + + + /datum/surgery_step - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

surgery_step + + + +

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

Vars

accept_any_itemDoes the surgery step accept any item? If true, ignores implements. Compatible with accept_hand.
accept_handdoes the surgery step require an open hand? If true, ignores implements. Compatible with accept_any_item.
allowed_toolsType 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_levelHow much blood this step can get on surgeon. See SURGERY_BLOODSPREAD_* defines
can_infectWhether this surgery step can cause an infection.
chems_neededList 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.
implement_typeThe 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)
repeatableIs 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_chemsDo we require any of the needed chems, or all of them?
silicons_ignore_probWhether silicons ignore any probabilities (and are therefore "perfect" surgeons)
timeduration of the step
times_repeatedHow many times this step has been automatically repeated.

Procs

can_repeatDetermines whether or not this surgery step can repeat if its end/fail steps returned SURGERY_STEP_RETRY.
chem_checkCheck that the target contains the chems we expect them to.
deal_painTry to inflict pain during a surgery, a surgeon's dream come true. +This will wake up the user if they're voluntarily sleeping.
end_stepFinish 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.
fail_stepPlay 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.
get_step_informationGet the action that will be performed during this surgery step, in context of the surgery it is a part of.
initiateInitiate 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.
is_valid_toolWhether 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:
slowdown_immuneCheck for mobs that would be immune to surgery slowdowns/speedups.
tool_checkGet whether the tool should be usable in its current state. Useful for checks to see if a welder is on, for example.
try_opTry 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.

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)

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)

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:

+ +

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.

+

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:

+

slowdown_immune +

+

Check for mobs that would be immune to surgery slowdowns/speedups.

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:

+

try_op +

+

Try to perform an operation on a user. +Arguments:

+
+ + + diff --git a/datum/surgery_step/internal.html b/datum/surgery_step/internal.html new file mode 100644 index 0000000000000..fad055510c771 --- /dev/null +++ b/datum/surgery_step/internal.html @@ -0,0 +1,36 @@ + + + + + + + /datum/surgery_step/internal - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

internal + + + +

+ + +

Procs

get_organ_listGet 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

+ + + diff --git a/datum/surgery_step/proxy.html b/datum/surgery_step/proxy.html new file mode 100644 index 0000000000000..676a0ea568eae --- /dev/null +++ b/datum/surgery_step/proxy.html @@ -0,0 +1,93 @@ + + + + + + + /datum/surgery_step/proxy - Space Station 13 + + +
+ Space 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.

+ + + + +

Vars

branchesOptional surgery TYPES that we can branch out to +Note that these must not share any starting tools.
branches_initInitialized versions of types specified in branches. +Don't fill this yourself, instead fill branches with surgery TYPES.
insert_self_afterWhether 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_toolsThese 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.

Procs

try_next_stepTest 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:

+
+ + + diff --git a/datum/syndicate_contract.html b/datum/syndicate_contract.html new file mode 100644 index 0000000000000..f2c104d3a4f33 --- /dev/null +++ b/datum/syndicate_contract.html @@ -0,0 +1,355 @@ + + + + + + + /datum/syndicate_contract - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Syndicate Contract + + + +

+ +

Describes a contract that can be completed by a Contractor.

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

Vars

chosen_difficultyThe selected difficulty.
completed_timeFormatted station time at which the contract was completed, if applicable.
contractThe /datum/objective/contract associated to this contract.
credits_baseThe base credits reward upon completion. Multiplied by the two lower bounds below.
dead_extractionWhether the contract was completed with the victim being dead on extraction.
extraction_cooldownCooldown before making another extraction request in deciseconds.
extraction_deadlineThe world.time at which the current extraction fulton will vanish and another extraction can be requested.
extraction_flareThe flare indicating the extraction point.
extraction_portalThe extraction portal.
extraction_timer_handleDeadline reached timer handle. Deletes the portal and tells the agent to call extraction again.
fail_reasonVisual reason as to why the contract failed, if applicable.
fluff_messageFluff message explaining why the kidnapee is the target.
nt_am_board_resignedWhether the additional fluff story from any contractor completing all of their contracts was made already or not.
owning_hubThe owning contractor hub.
portal_durationHow long an extraction portal remains before going away. Should be less than /datum/syndicate_contract/var/extraction_cooldown.
prison_timeHow long a target remains in the Syndicate jail.
prisoner_timer_handlePrisoner jail timer handle. On completion, returns the prisoner back to station.
reward_creditsAmount of credits the contractor will receive upon completion.
reward_tcAmount of telecrystals the contract will receive upon completion, depending on the chosen difficulty. +Structure: EXTRACTION_DIFFICULTY_(EASY|MEDIUM|HARD) => number
statusCurrent contract status.
target_nameName of the target to display on the UI.
target_photoThe target's photo to display on the UI.
temp_objsTemporary objects that are available to the kidnapee during their time in jail. These are deleted when the victim is returned.
victim_belongingsThe kidnapee's belongings. Set upon extraction by the contractor.

Procs

clean_upCleans up the contract.
completeMarks the contract as completed and gives the rewards to the contractor.
deadline_reachedCalled when the extraction window closes.
default_damageDefault damage if no injury is possible.
failMarks the contract as failed and stops it.
generateFills the contract with valid data to be used.
handle_target_experienceHandles the target's experience from extraction.
handle_target_returnHandles the target's return to station.
initiateBegins the contract if possible.
injure_targetHandles the target's injury/interrogation at the Syndicate Jail.
invalidateMarks the contract as invalid and effectively cancels it for later use.
notify_completionNotifies the uplink's holder that a contract has been completed.
open_extraction_portalOpens the extraction portal.
start_extraction_processInitiates the extraction process if conditions are met.
target_receivedCalled when a contract target has been extracted through the portal.
+

Var Details

chosen_difficulty + + + + +

+

The selected difficulty.

completed_time + + + + +

+

Formatted station time at which the contract was completed, if applicable.

contract + + + + +

+

The /datum/objective/contract associated to this contract.

credits_base + + + + +

+

The base credits reward upon completion. Multiplied by the two lower bounds below.

dead_extraction + + + + +

+

Whether the contract was completed with the victim being dead on extraction.

extraction_cooldown + + + + +

+

Cooldown before making another extraction request in deciseconds.

extraction_deadline + + + + +

+

The world.time at which the current extraction fulton will vanish and another extraction can be requested.

extraction_flare + + + + +

+

The flare indicating the extraction point.

extraction_portal + + + + +

+

The extraction portal.

extraction_timer_handle + + + + +

+

Deadline reached timer handle. Deletes the portal and tells the agent to call extraction again.

fail_reason + + + + +

+

Visual reason as to why the contract failed, if applicable.

fluff_message + + + + +

+

Fluff message explaining why the kidnapee is the target.

nt_am_board_resigned + + + + +

+

Whether the additional fluff story from any contractor completing all of their contracts was made already or not.

owning_hub + + + + +

+

The owning contractor hub.

portal_duration + + + + +

+

How long an extraction portal remains before going away. Should be less than /datum/syndicate_contract/var/extraction_cooldown.

prison_time + + + + +

+

How long a target remains in the Syndicate jail.

prisoner_timer_handle + + + + +

+

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:

+

deadline_reached +

+

Called when the extraction window closes.

default_damage +

+

Default damage if no injury is possible.

+

Arguments:

+

fail +

+

Marks the contract as failed and stops it.

+

Arguments:

+

generate +

+

Fills the contract with valid data to be used.

handle_target_experience +

+

Handles the target's experience from extraction.

+

Arguments:

+

handle_target_return +

+

Handles the target's return to station.

+

Arguments:

+

initiate +

+

Begins the contract if possible.

+

Arguments:

+

injure_target +

+

Handles the target's injury/interrogation at the Syndicate Jail.

+

Arguments:

+

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:

+

open_extraction_portal +

+

Opens the extraction portal.

+

Arguments:

+

start_extraction_process +

+

Initiates the extraction process if conditions are met.

+

Arguments:

+

target_received +

+

Called when a contract target has been extracted through the portal.

+

Arguments:

+
+ + + diff --git a/datum/tarot.html b/datum/tarot.html new file mode 100644 index 0000000000000..af350ae3ead9d --- /dev/null +++ b/datum/tarot.html @@ -0,0 +1,57 @@ + + + + + + + /datum/tarot - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

tarot + + + +

+ + + + + +

Vars

card_iconWhat icon is used for the card?
descDesc used for the card description of the card
nameName used for the card
reversedAre we reversed? Used for the card back.
+

Var Details

card_icon + + + + +

+

What icon is used for the card?

desc + + + + +

+

Desc used for the card description of the card

name + + + + +

+

Name used for the card

reversed + + + + +

+

Are we reversed? Used for the card back.

+ + + diff --git a/datum/tcomms_message.html b/datum/tcomms_message.html new file mode 100644 index 0000000000000..05038fb03d818 --- /dev/null +++ b/datum/tcomms_message.html @@ -0,0 +1,173 @@ + + + + + + + /datum/tcomms_message - Space Station 13 + + +
+ Space 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

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

Vars

connectionOrigin of the signal
dataThe signal data (See defines/radio.dm)
follow_targetFollow target for AI use
freqWhat frequency the message is sent on
message_piecesPieces of the message
needs_tcommsDid the signal come from a device that requires tcomms to function
passShould this signal be re-broadcasted (Can be modified by NTTC, defaults to TRUE)
pre_modify_namesender_name before modify_message modifies it, because it introduces html tags.
radioThe radio it was sent from
rejectIs this signal meant to be rejected
senderWho sent it
sender_jobWhat job are they
sender_nameWho sent the message
sender_rankWhat rank are they (this is used for formatting)
source_levelSource Z-level
verbageVerbage used
vmaskWas it sent with a voice changer
vnameVoice name if the person doesnt have a name (diona, alien, etc)
zlevelsList of all channels this can be sent or received on

Procs

DestroyDestructor for the TCM datum.
+

Var Details

connection + + + + +

+

Origin of the signal

data + + + + +

+

The signal data (See defines/radio.dm)

follow_target + + + + +

+

Follow target for AI use

freq + + + + +

+

What frequency the message is sent on

message_pieces + + + + +

+

Pieces of the message

needs_tcomms + + + + +

+

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)

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

+ + + diff --git a/datum/team.html b/datum/team.html new file mode 100644 index 0000000000000..bf71dbdf74da1 --- /dev/null +++ b/datum/team.html @@ -0,0 +1,211 @@ + + + + + + + /datum/team - Space Station 13 + + +
+ Space 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.

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

Vars

antag_datum_typeType of antag datum members of this team have. Also given to new members added by admins.
blackbox_save_nameThe name to save objective successes under in the blackboxes. Saves nothing if blank.
membersA list of minds who belong to this team.
nameThe name of the team.
objective_holderA list of objectives which all team members share.

Procs

add_memberAdds new_member to this team.
add_team_objectiveAdds a team objective to each member's matching antag datum.
admin_add_memberAdds a new member to this team from a list of players in the round.
admin_add_objectiveAllows admins to add a team objective. +Minimize overriding this proc please.
admin_announce_objectivesAllows admins to announce objectives to all team members.
admin_communicateAllows admins to send a message to all members of this team.
admin_remove_memberAllows admins to remove a team member.
admin_remove_objectiveAllows admins to remove a team objective.
admin_rename_teamAllows admins to rename the team.
get_admin_commandsA 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_objectivesReturns 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_memberReturn an antag datum from a member which is linked with this team.
get_target_excludesSpecial overrides for teams for target exclusion from objectives.
handle_adding_admin_objectiveOverridable 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_memberAn 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_memberAn internal proc for teams to remove a member.
on_round_endDisplays the roundend stats for teams
remove_memberRemoves member from this team. +This is an interface proc, to prevent handle_removing_member from being called multiple times.
remove_team_objectiveRemove a team objective from each member's matching antag datum.
+

Var Details

antag_datum_type + + + + +

+

Type of antag datum members of this team have. Also given to new members added by admins.

blackbox_save_name + + + + +

+

The name to save objective successes under in the blackboxes. Saves nothing if blank.

members + + + + +

+

A list of minds who belong to this team.

name + + + + +

+

The name of the team.

objective_holder + + + + +

+

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.

+ + + diff --git a/datum/team/cult.html b/datum/team/cult.html new file mode 100644 index 0000000000000..1181ff7f10733 --- /dev/null +++ b/datum/team/cult.html @@ -0,0 +1,146 @@ + + + + + + + /datum/team/cult - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

cult + + + +

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

Vars

ascend_numberHow many crew need to be converted to ascend
ascend_percentUsed for the CentComm announcement at ascension
cult_ascendantDoes the cult have halos
cult_risenDoes the cult have glowing eyes
cult_statusVariable used for tracking the progress of the cult's sacrifices & god summonings
is_in_transitionBoolean that prevents all_members_timer from being called multiple times
mirror_shields_activeAre cultist mirror shields active yet?
obj_summonGod summon objective added when ready_to_summon() is called
rise_numberHow many crew need to be converted to rise

Procs

all_members_timerThis 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_transferMakes sure that the signal stays on the correct body when a cultist changes bodies
cult_threshold_checkDecides at the start of the round how many conversions are needed to rise/ascend.
current_sac_objectiveReturn the current sacrifice objective datum, if any
get_admin_commandsADMIN STUFF DOWN YONDER
get_cultistsReturns 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

rise_number + + + + +

+

How many crew need to be converted to rise

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.

+

Below 100 players, CULT_RISEN_LOW and CULT_ASCENDANT_LOW are used. +Above 100 players, CULT_RISEN_HIGH and CULT_ASCENDANT_HIGH are used.

current_sac_objective +

+

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 a list ([1] = Cultists, [2] = Constructs), or as one combined number.

+
+ + + diff --git a/datum/team/revolution.html b/datum/team/revolution.html new file mode 100644 index 0000000000000..1ee9050969f3d --- /dev/null +++ b/datum/team/revolution.html @@ -0,0 +1,82 @@ + + + + + + + /datum/team/revolution - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

revolution + + + +

+ + +

Procs

need_another_headrev

Proc Details

need_another_headrev +

+
+ + + diff --git a/datum/tech.html b/datum/tech.html new file mode 100644 index 0000000000000..09edbde4dd832 --- /dev/null +++ b/datum/tech.html @@ -0,0 +1,31 @@ + + + + + + + /datum/tech - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types +
+
+

tech + + + +

+ +
				Technology Datums					
+
+

Includes all the various technoliges and what they make. +Datum of individual technologies.

+ + + diff --git a/datum/tgs_chat_channel.html b/datum/tgs_chat_channel.html new file mode 100644 index 0000000000000..fc21d1ec9d417 --- /dev/null +++ b/datum/tgs_chat_channel.html @@ -0,0 +1,78 @@ + + + + + + + /datum/tgs_chat_channel - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

tgs_chat_channel + + + +

+ +

Represents a connected chat channel.

+ + + + + + +

Vars

connection_nameName of the chat connection. This is the IRC server address or the Discord guild.
custom_tagTag string associated with the channel in TGS.
embeds_supported[TRUE]/[FALSE] if the channel supports embeds.
friendly_nameUser friendly name of the channel.
idTGS internal channel ID.
is_admin_channel[TRUE]/[FALSE] based on if the server operator has marked this channel for game admins only.
is_private_channel[TRUE]/[FALSE] if the channel is a private message channel for a /datum/tgs_chat_user.
+

Var Details

connection_name + + + + +

+

Name of the chat connection. This is the IRC server address or the Discord guild.

custom_tag + + + + +

+

Tag string associated with the channel in TGS.

embeds_supported + + + + +

+

[TRUE]/[FALSE] if the channel supports embeds.

friendly_name + + + + +

+

User friendly name of the channel.

id + + + + +

+

TGS internal channel ID.

is_admin_channel + + + + +

+

[TRUE]/[FALSE] based on if the server operator has marked this channel for game admins only.

is_private_channel + + + + +

+

[TRUE]/[FALSE] if the channel is a private message channel for a /datum/tgs_chat_user.

+ + + diff --git a/datum/tgs_chat_command.html b/datum/tgs_chat_command.html new file mode 100644 index 0000000000000..3269a996d1970 --- /dev/null +++ b/datum/tgs_chat_command.html @@ -0,0 +1,66 @@ + + + + + + + /datum/tgs_chat_command - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

tgs_chat_command + + + +

+ +

User definable chat command.

+ + + + +

Vars

admin_onlyIf this command should be available to game administrators only.
help_textThe help text displayed for this command.
ignore_typeA subtype of /datum/tgs_chat_command that is ignored when enumerating available commands. Use this to create shared base /datums for commands.
nameThe string to trigger this command on a chat bot. e.g @bot name ... or !tgs name ....

Procs

RunProcess command activation. Should return a /datum/tgs_message_content to respond to the issuer with.
+

Var Details

admin_only + + + + +

+

If this command should be available to game administrators only.

help_text + + + + +

+

The help text displayed for this command.

ignore_type + + + + +

+

A subtype of /datum/tgs_chat_command that is ignored when enumerating available commands. Use this to create shared base /datums for commands.

name + + + + +

+

The string to trigger this command on a chat bot. e.g @bot name ... or !tgs name ....

Proc Details

Run +

+

Process command activation. Should return a /datum/tgs_message_content to respond to the issuer with.

+

sender - The /datum/tgs_chat_user who issued the command. +params - The trimmed string following the command `/datum/tgs_chat_command/var/name].

+ + + diff --git a/datum/tgs_chat_embed/footer.html b/datum/tgs_chat_embed/footer.html new file mode 100644 index 0000000000000..2a5642c4fd54a --- /dev/null +++ b/datum/tgs_chat_embed/footer.html @@ -0,0 +1,36 @@ + + + + + + + /datum/tgs_chat_embed/footer - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

footer + + + +

+ +

See https://discord.com/developers/docs/resources/channel#embed-object-embed-footer-structure for details.

+

Vars

textMust be set in New().
+

Var Details

text + + + + +

+

Must be set in New().

+ + + diff --git a/datum/tgs_chat_embed/media.html b/datum/tgs_chat_embed/media.html new file mode 100644 index 0000000000000..d97dcf74e1206 --- /dev/null +++ b/datum/tgs_chat_embed/media.html @@ -0,0 +1,36 @@ + + + + + + + /datum/tgs_chat_embed/media - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

media + + + +

+ +

Common datum for similar discord embed medias.

+

Vars

urlMust be set in New().
+

Var Details

url + + + + +

+

Must be set in New().

+ + + diff --git a/datum/tgs_chat_embed/structure.html b/datum/tgs_chat_embed/structure.html new file mode 100644 index 0000000000000..31851aa21f9a3 --- /dev/null +++ b/datum/tgs_chat_embed/structure.html @@ -0,0 +1,64 @@ + + + + + + + /datum/tgs_chat_embed/structure - Space Station 13 + + +
+ Space 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.

+ + + + +

Vars

colourColour must be #AARRGGBB or #RRGGBB hex string.
imageSee https://discord.com/developers/docs/resources/channel#embed-object-embed-image-structure for details.
thumbnailSee https://discord.com/developers/docs/resources/channel#embed-object-embed-thumbnail-structure for details.
timestampTimestamp must be encoded as: time2text(world.timeofday, "YYYY-MM-DD hh:mm:ss"). Use the active timezone.
videoSee https://discord.com/developers/docs/resources/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.

+ + + diff --git a/datum/tgs_chat_user.html b/datum/tgs_chat_user.html new file mode 100644 index 0000000000000..040a29152a66a --- /dev/null +++ b/datum/tgs_chat_user.html @@ -0,0 +1,57 @@ + + + + + + + /datum/tgs_chat_user - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

tgs_chat_user + + + +

+ + + + + +

Vars

channelThe /datum/tgs_chat_channel the user was from.
friendly_nameThe user's display name.
idTGS internal user ID.
mentionThe string to use to ping this user in a message.
+

Var Details

channel + + + + +

+

The /datum/tgs_chat_channel the user was from.

friendly_name + + + + +

+

The user's display name.

id + + + + +

+

TGS internal user ID.

mention + + + + +

+

The string to use to ping this user in a message.

+ + + diff --git a/datum/tgs_event_handler.html b/datum/tgs_event_handler.html new file mode 100644 index 0000000000000..1a4c0c54a9bc2 --- /dev/null +++ b/datum/tgs_event_handler.html @@ -0,0 +1,44 @@ + + + + + + + /datum/tgs_event_handler - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

tgs_event_handler + + + +

+ +

User definable handler for TGS events.

+ +

Vars

receive_health_checksIf the handler receieves TGS_EVENT_HEALTH_CHECK events.

Procs

HandleEventUser definable callback for handling TGS events.
+

Var Details

receive_health_checks + + + + +

+

If the handler receieves TGS_EVENT_HEALTH_CHECK events.

Proc Details

HandleEvent +

+

User definable callback for handling TGS events.

+

event_code - One of the TGS_EVENT_ defines. Extra parameters will be documented in each.

+ + + diff --git a/datum/tgs_message_content.html b/datum/tgs_message_content.html new file mode 100644 index 0000000000000..aa21fb7bef628 --- /dev/null +++ b/datum/tgs_message_content.html @@ -0,0 +1,43 @@ + + + + + + + /datum/tgs_message_content - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

tgs_message_content + + + +

+ +

User definable chat message.

+ +

Vars

embedThe /datum/tgs_chat_embed to embed in the message. Not supported on all chat providers.
textThe 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().

+ + + diff --git a/datum/tgs_revision_information.html b/datum/tgs_revision_information.html new file mode 100644 index 0000000000000..6210801a0696a --- /dev/null +++ b/datum/tgs_revision_information.html @@ -0,0 +1,50 @@ + + + + + + + /datum/tgs_revision_information - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

tgs_revision_information + + + +

+ +

Represents git revision information.

+ + +

Vars

commitFull SHA of the commit.
origin_commitFull sha of last known remote commit. This may be null if the TGS repository is not currently tracking a remote branch.
timestampISO 8601 timestamp of when the commit was created.
+

Var Details

commit + + + + +

+

Full SHA of the commit.

origin_commit + + + + +

+

Full sha of last known remote commit. This may be null if the TGS repository is not currently tracking a remote branch.

timestamp + + + + +

+

ISO 8601 timestamp of when the commit was created.

+ + + diff --git a/datum/tgs_revision_information/test_merge.html b/datum/tgs_revision_information/test_merge.html new file mode 100644 index 0000000000000..4fda4db6965cd --- /dev/null +++ b/datum/tgs_revision_information/test_merge.html @@ -0,0 +1,78 @@ + + + + + + + /datum/tgs_revision_information/test_merge - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

test_merge + + + +

+ +

Represents a merge of a GitHub pull request.

+ + + + + + +

Vars

authorThe Username of the test merge source's author.
bodyThe test merge source's body when it was merged.
commentOptional comment left by the TGS user who initiated the merge.
head_commitThe SHA of the test merge when that was merged.
numberThe test merge number.
titleThe test merge source's title when it was merged.
urlAn http URL to the test merge source.
+

Var Details

author + + + + +

+

The Username of the test merge source's author.

body + + + + +

+

The test merge source's body when it was merged.

comment + + + + +

+

Optional comment left by the TGS user who initiated the merge.

head_commit + + + + +

+

The SHA of the test merge when that was merged.

number + + + + +

+

The test merge number.

title + + + + +

+

The test merge source's title when it was merged.

url + + + + +

+

An http URL to the test merge source.

+ + + diff --git a/datum/tgs_version.html b/datum/tgs_version.html new file mode 100644 index 0000000000000..5dff3a99b4946 --- /dev/null +++ b/datum/tgs_version.html @@ -0,0 +1,71 @@ + + + + + + + /datum/tgs_version - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

tgs_version + + + +

+ +

Represents a version.

+ + + + + +

Vars

deprecated_patchLegacy version number. Generally null.
deprefixed_parameterString value minus prefix.
minorThe minor version number. null for wildcards.
patchThe patch version number. null for wildcards.
raw_parameterUnparsed string value.
suiteThe suite/major version number.
+

Var Details

deprecated_patch + + + + +

+

Legacy version number. Generally null.

deprefixed_parameter + + + + +

+

String value minus prefix.

minor + + + + +

+

The minor version number. null for wildcards.

patch + + + + +

+

The patch version number. null for wildcards.

raw_parameter + + + + +

+

Unparsed string value.

suite + + + + +

+

The suite/major version number.

+ + + diff --git a/datum/tgui.html b/datum/tgui.html new file mode 100644 index 0000000000000..0dc82c038ee88 --- /dev/null +++ b/datum/tgui.html @@ -0,0 +1,256 @@ + + + + + + + /datum/tgui - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

tgui + + + +

+ +

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

+

tgui datum (represents a UI).

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

Vars

asset_dataAsset data to be sent with every update
autoupdateUpdate the UI every MC tick.
closingStops further updates when close() was called.
initializedIf the UI has been initialized yet.
interfaceThe interface (template) to be used for this UI.
opened_atTime of opening the window.
refresh_cooldownRate limit client refreshes to prevent DoS.
refreshingTimed refreshing state
src_objectThe object which owns the UI.
stateTopic state used to determine status/interactability.
statusThe status/visibility of the UI.
titleThe title of te UI.
userThe mob who opened/is using the UI.
windowThe window_id for browse() and onclose().
window_keyKey that is used for remembering the window geometry.
window_sizeDeprecated: Window size.

Procs

Newpublic
closepublic
get_payloadprivate
on_messageprivate
openpublic
processprivate
process_statusprivate
send_assetpublic
send_full_updatepublic
send_updatepublic
set_autoupdatepublic
set_statepublic
+

Var Details

asset_data + + + + +

+

Asset data to be sent with every update

autoupdate + + + + +

+

Update the UI every MC tick.

closing + + + + +

+

Stops further updates when close() was called.

initialized + + + + +

+

If the UI has been initialized yet.

interface + + + + +

+

The interface (template) to be used for this UI.

opened_at + + + + +

+

Time of opening the window.

refresh_cooldown + + + + +

+

Rate limit client refreshes to prevent DoS.

refreshing + + + + +

+

Timed refreshing state

src_object + + + + +

+

The object which owns the UI.

state + + + + +

+

Topic state used to determine status/interactability.

status + + + + +

+

The status/visibility of the UI.

title + + + + +

+

The title of 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

+ + + diff --git a/datum/tgui_alert.html b/datum/tgui_alert.html new file mode 100644 index 0000000000000..3720da90a5f68 --- /dev/null +++ b/datum/tgui_alert.html @@ -0,0 +1,109 @@ + + + + + + + /datum/tgui_alert - Space Station 13 + + +
+ Space 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.

+ + + + + + + + + + +

Vars

autofocusThe bool that controls if this modal should grab window focus
buttonsThe list of buttons (responses) provided on the TGUI window
choiceThe button that the user has pressed, null if no selection has been made
closedBoolean field describing if the tgui_alert was closed by the user.
deletion_timerThe attached timer that handles this objects timeout deletion
messageThe textual body of the TGUI window
start_timeThe time at which the tgui_alert was created, for displaying timeout progress.
stateThe TGUI UI state that will be returned in ui_state(). Default: always_state
timeoutThe lifespan of the tgui_alert, after which the window will close and delete itself.
titleThe title of the TGUI window

Procs

waitWaits for a user's response to the tgui_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.

+ + + diff --git a/datum/tgui_input_number.html b/datum/tgui_input_number.html new file mode 100644 index 0000000000000..822933c9b597f --- /dev/null +++ b/datum/tgui_input_number.html @@ -0,0 +1,132 @@ + + + + + + + /datum/tgui_input_number - Space Station 13 + + +
+ Space 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.

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

Vars

closedBoolean field describing if the tgui_input_number was closed by the user.
defaultThe default (or current) value, shown as a default. Users can press reset with this.
deletion_timerThe attached timer that handles this objects timeout deletion
entryThe entry that the user has return_typed in.
max_valueThe maximum value that can be entered.
messageThe prompt's body, if any, of the TGUI window.
min_valueThe minimum value that can be entered.
round_valueWhether the submitted number is rounded down into an integer.
start_timeThe time at which the number input was created, for displaying timeout progress.
stateThe TGUI UI state that will be returned in ui_state(). Default: always_state
timeoutThe lifespan of the number input, after which the window will close and delete itself.
titleThe title of the TGUI window

Procs

DestroyChecks for empty numbers - bank accounts, etc. +Sanity check
waitWaits for a user's response to the tgui_input_number's prompt before returning. Returns early if +the window was closed by the user.
+

Var Details

closed + + + + +

+

Boolean field describing if the tgui_input_number was closed by the user.

default + + + + +

+

The default (or current) value, shown as a default. Users can press reset with this.

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

Destroy +

+

Checks for empty numbers - bank accounts, etc. +Sanity check

wait +

+

Waits for a user's response to the tgui_input_number's prompt before returning. Returns early if +the window was closed by the user.

+ + + diff --git a/datum/tgui_input_text.html b/datum/tgui_input_text.html new file mode 100644 index 0000000000000..6e1a950e947d1 --- /dev/null +++ b/datum/tgui_input_text.html @@ -0,0 +1,137 @@ + + + + + + + /datum/tgui_input_text - Space Station 13 + + +
+ Space 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.

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

Vars

closedBoolean field describing if the tgui_input_text was closed by the user.
defaultThe default (or current) value, shown as a default.
deletion_timerThe attached timer that handles this objects timeout deletion
encodeWhether the input should be stripped using html_encode
entryThe entry that the user has return_typed in.
max_lengthThe maximum length for text entry
messageThe prompt's body, if any, of the TGUI window.
multilineMultiline input for larger input boxes.
start_timeThe time at which the text input was created, for displaying timeout progress.
stateThe TGUI UI state that will be returned in ui_state(). Default: always_state
timeoutThe lifespan of the text input, after which the window will close and delete itself.
titleThe title of the TGUI window

Procs

set_entrySets the return value for the tgui text proc. +If html encoding is enabled, the text will be encoded. +This can sometimes result in a string that is longer than the max length. +If the string is longer than the max length, it will be clipped.
waitWaits for a user's response to the tgui_input_text's prompt before returning. Returns early if +the window was closed by the user.
+

Var Details

closed + + + + +

+

Boolean field describing if the tgui_input_text was closed by the user.

default + + + + +

+

The default (or current) value, shown as a default.

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.

+ + + diff --git a/datum/tgui_list_input.html b/datum/tgui_list_input.html new file mode 100644 index 0000000000000..de4d1f1c18cee --- /dev/null +++ b/datum/tgui_list_input.html @@ -0,0 +1,125 @@ + + + + + + + /datum/tgui_list_input - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

tgui_list_input + + + +

+ +

Client does NOT have tgui_input on: Returns regular input

+tgui_list_input +

Datum used for instantiating and using a TGUI-controlled list input that prompts the user with +a message and shows a list of selectable options

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

Vars

choiceThe button that the user has pressed, null if no selection has been made
closedBoolean field describing if the tgui_list_input was closed by the user.
defaultThe default button to be selected
deletion_timerThe attached timer that handles this objects timeout deletion
invalidWhether the tgui list input is invalid or not (i.e. due to all list entries being null)
itemsThe list of items (responses) provided on the TGUI window
items_mapButtons (strings specifically) mapped to the actual value (e.g. a mob or a verb)
messageThe textual body of the TGUI window
start_timeThe time at which the tgui_list_input was created, for displaying timeout progress.
stateThe TGUI UI state that will be returned in ui_state(). Default: always_state
timeoutThe lifespan of the tgui_list_input, after which the window will close and delete itself.
titleThe title of the TGUI window

Procs

waitWaits for a user's response to the tgui_list_input's prompt before returning. Returns early if +the window was closed by the user.
+

Var Details

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

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.

+ + + diff --git a/datum/tgui_panel.html b/datum/tgui_panel.html new file mode 100644 index 0000000000000..127a5ccff587f --- /dev/null +++ b/datum/tgui_panel.html @@ -0,0 +1,134 @@ + + + + + + + /datum/tgui_panel - Space Station 13 + + +
+ Space 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.

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

Vars

telemetry_analyzed_atTime of telemetry analysis completion
telemetry_connectionsList of previous client connections
telemetry_requested_atTime of telemetry request

Procs

analyze_telemetryprivate
initializepublic
is_readypublic
on_initialize_timed_outprivate
on_messageprivate
play_musicpublic
request_telemetryprivate
send_roundrestartpublic
stop_musicpublic
+

Var Details

telemetry_analyzed_at + + + + +

+

Time of telemetry analysis completion

telemetry_connections + + + + +

+

List of previous client connections

telemetry_requested_at + + + + +

+

Time of telemetry request

Proc Details

analyze_telemetry +

+

private

+

Analyzes a telemetry packet.

+

Is currently only useful for detecting ban evasion attempts.

initialize +

+

public

+

Initializes tgui panel.

is_ready +

+

public

+

TRUE if panel is initialized and ready to receive messages.

on_initialize_timed_out +

+

private

+

Called when initialization has timed out.

on_message +

+

private

+

Callback for handling incoming tgui messages.

play_music +

+

public

+

Sends music data to the browser.

+

Optional settings:

+ +

required url string Must be an https URL. +optional extra_data list Optional settings.

request_telemetry +

+

private

+

Requests some telemetry from the client.

send_roundrestart +

+

public

+

Sends a round restart notification.

stop_music +

+

public

+

Stops playing music through the browser.

+ + + diff --git a/datum/tgui_say.html b/datum/tgui_say.html new file mode 100644 index 0000000000000..baeae7df4c6c6 --- /dev/null +++ b/datum/tgui_say.html @@ -0,0 +1,169 @@ + + + + + + + /datum/tgui_say - Space Station 13 + + +
+ Space 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.

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

Vars

clientThe user who opened the window
windowThe modal window
window_openBoolean for whether the tgui_say was opened by the user.

Procs

NewCreates the new input window to exist in the background.
closeCloses the window serverside. Closes any open chat bubbles +regardless of preference.
delegate_speechDelegates the speech to the proper channel.
handle_entryHandles text entry and forced speech.
initializeAfter a brief period, injects the scripts into +the window to listen for open commands.
loadEnsures nothing funny is going on window load. +Minimizes the window, sets max length, closes all +typing and thinking indicators. This is triggered +as soon as the window sends the "ready" message.
on_messageThe equivalent of ui_act, this waits on messages from the window +and delegates actions.
openSets the window as "opened" server side, though it is already +visible to the user. We do this to set local vars & +start typing (if enabled and in an IC channel).
start_thinkingSets the mob as "thinking" - with indicator
start_typingHandles the user typing. After a brief period of inactivity, +signals the client mob to revert to the "thinking" icon.
stop_thinkingSpecial exemptions +Removes typing/thinking indicators and flags the mob as not thinking
stop_typingCallback to remove the typing indicator after a brief period of inactivity. +If the user was typing IC, the thinking indicator is shown.
+

Var Details

client + + + + +

+

The user who opened the window

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 +

+

Special exemptions +Removes typing/thinking indicators and flags the mob as not thinking

stop_typing +

+

Callback to remove the typing indicator after a brief period of inactivity. +If the user was typing IC, the thinking indicator is shown.

+ + + diff --git a/datum/tgui_window.html b/datum/tgui_window.html new file mode 100644 index 0000000000000..e42e0fd88b8c3 --- /dev/null +++ b/datum/tgui_window.html @@ -0,0 +1,185 @@ + + + + + + + /datum/tgui_window - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

tgui_window + + + +

+ +

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

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

Procs

Newpublic
acquire_lockpublic
can_be_suspendedpublic
closepublic
flush_message_queueprivate
initializepublic
is_readypublic
on_messageprivate
reinitializepublic
release_lockpublic
replace_htmlpublic
send_assetpublic
send_messagepublic
send_raw_messagepublic
subscribepublic
unsubscribepublic

Proc Details

New +

+

public

+

Create a new tgui window.

+

required client /client +required id string A unique window identifier.

acquire_lock +

+

public

+

Acquire the window lock. Pool will not be able to provide this window +to other UIs for the duration of the lock.

+

Can be given an optional tgui datum, which will be automatically +subscribed to incoming messages via the on_message proc.

+

optional ui /datum/tgui

can_be_suspended +

+

public

+

Checks if the window can be sanely suspended.

+

return bool

close +

+

public

+

Close the UI.

+

optional can_be_suspended bool

flush_message_queue +

+

private

+

Sends queued messages if the queue wasn't empty.

initialize +

+

public

+

Initializes the window with a fresh page. Puts window into the "loading" +state. You can begin sending messages right after initializing. Messages +will be put into the queue until the window finishes loading.

+

optional strict_mode bool - Enables strict error handling and BSOD. +optional fancy bool - If TRUE and if this is NOT a panel, will hide the window titlebar. +optional assets list - List of assets to load during initialization. +optional inline_html string - Custom HTML to inject. +optional inline_js string - Custom JS to inject. +optional inline_css string - Custom CSS to inject.

is_ready +

+

public

+

Checks if the window is ready to receive data.

+

return bool

on_message +

+

private

+

Callback for handling incoming tgui messages.

reinitialize +

+

public

+

Reinitializes the panel with previous data used for initialization.

release_lock +

+

public

+

Release the window lock.

replace_html +

+

public

+

Replaces the inline HTML content.

+

required inline_html string HTML to inject

send_asset +

+

public

+

Makes an asset available to use in tgui.

+

required asset datum/asset

+

return bool - TRUE if any assets had to be sent to the client

send_message +

+

public

+

Sends a message to tgui window.

+

required type string Message type +required payload list Message payload +optional force bool Send regardless of the ready status.

send_raw_message +

+

public

+

Sends a raw payload to tgui window.

+

required message string JSON+urlencoded blob to send. +optional force bool Send regardless of the ready status.

subscribe +

+

public

+

Subscribes the datum to consume window messages on a specified proc.

+

Note, that this supports only one subscriber, because code for that +is simpler and therefore faster. If necessary, this can be rewritten +to support multiple subscribers.

unsubscribe +

+

public

+

Unsubscribes the datum. Do not forget to call this when cleaning up.

+ + + diff --git a/datum/theft_objective.html b/datum/theft_objective.html new file mode 100644 index 0000000000000..f7bd6c2e93b10 --- /dev/null +++ b/datum/theft_objective.html @@ -0,0 +1,43 @@ + + + + + + + /datum/theft_objective - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

theft_objective + + + +

+ +

.

+ +

Vars

job_possessionIf a steal objective has forbidden jobs, and the forbidden jobs would not be in the possession of this item, set this to false
special_equipmentDo we have a special item we give to somewhen when they get this objective?
+

Var Details

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

special_equipment + + + + +

+

Do we have a special item we give to somewhen when they get this objective?

+ + + diff --git a/datum/thrownthing.html b/datum/thrownthing.html new file mode 100644 index 0000000000000..3480a49a381a7 --- /dev/null +++ b/datum/thrownthing.html @@ -0,0 +1,50 @@ + + + + + + + /datum/thrownthing - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

thrownthing + + + +

+ + + + +

Vars

block_movementWill 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
dodgeableWhen 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
should_block_movementCan a thrown mob move themselves to stop the throw?
+

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

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

should_block_movement + + + + +

+

Can a thrown mob move themselves to stop the throw?

+ + + diff --git a/datum/ticket.html b/datum/ticket.html new file mode 100644 index 0000000000000..708e3db708198 --- /dev/null +++ b/datum/ticket.html @@ -0,0 +1,162 @@ + + + + + + + /datum/ticket - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

ticket + + + +

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

Vars

adminwho_dataList of adminwho data
client_ckeyckey of the client who opened the ticket.
first_raw_responseThe first raw response. Used for ticket conversions
ingame_time_openedIngame time the ticket was opened
lastResponseTimeWhen the staff last responded.
lastStaffResponseLast staff member who responded.
locationSentThe location the player was when they sent the ticket.
mobControlledThe mob the player was controlling when they sent the ticket.
real_time_openedReal time the ticket was opened.
staffAssignedStaff member who has assigned themselves to this ticket.
staff_ckeyStaff member ckey who took it
staff_take_timeThe time the staff member took the ticket
ticketCooldownCooldown before allowing the user to open another ticket.
ticketNumTicket number.
ticketStateState of the ticket, open, closed, resolved etc.
ticket_convertedHas the ticket been converted to another type? (Mhelp to Ahelp, etc.)
ticket_responsesContent of the staff help.
timeUntilStaleWhen the ticket goes stale.
titleThe initial message from the user.
+

Var Details

adminwho_data + + + + +

+

List of adminwho data

client_ckey + + + + +

+

ckey of the client who opened the ticket.

first_raw_response + + + + +

+

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.

+ + + diff --git a/datum/ticket_response.html b/datum/ticket_response.html new file mode 100644 index 0000000000000..9b66f1830afd3 --- /dev/null +++ b/datum/ticket_response.html @@ -0,0 +1,50 @@ + + + + + + + /datum/ticket_response - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

ticket_response + + + +

+ + + + +

Vars

response_textText of this response
response_timeThe time of the response
response_userWho made the response
+

Var Details

response_text + + + + +

+

Text of this response

response_time + + + + +

+

The time of the response

response_user + + + + +

+

Who made the response

+ + + diff --git a/datum/tilt_crit.html b/datum/tilt_crit.html new file mode 100644 index 0000000000000..ece2c2d409e09 --- /dev/null +++ b/datum/tilt_crit.html @@ -0,0 +1,86 @@ + + + + + + + /datum/tilt_crit - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

tilt_crit + + + +

+ +

Framework for custom vendor crits.

+ + + + + + +

Vars

fall_towards_mobIf we should be thrown against the mob or not.
harmlessIf it'll deal damage or not
nameName of a crit. Only crits with a name will be options.
valid_typecacheTypecache of valid types
valid_types_whitelistList of types which we should be valid for

Procs

is_validReturn whether or not the crit selected is valid.
tip_crit_effectPerform 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:

+
+ + + diff --git a/datum/timedevent.html b/datum/timedevent.html new file mode 100644 index 0000000000000..ce5138c440a1b --- /dev/null +++ b/datum/timedevent.html @@ -0,0 +1,156 @@ + + + + + + + /datum/timedevent - Space Station 13 + + +
+ Space 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

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

Vars

bucket_joinedBoolean indicating if timer joined into bucket
bucket_posInitial bucket position
callBackThe callback to invoke after the timer completes
flagsFlags associated with the timer, see _DEFINES/subsystems.dm
hashUnique hash generated when TIMER_UNIQUE flag is present
idID used for timers when the TIMER_STOPPABLE flag is present
nameAn informative name generated for the timer as its representation in strings, useful for debugging
nextNext timed event in the bucket
prevPrevious timed event in the bucket
sourceThe source of the timedevent, whatever called addtimer
spentTime at which the timer was invoked or destroyed
timeToRunThe time at which the callback should be invoked at
waitThe length of the timer

Procs

bucketEjectRemoves this timed event from any relevant buckets, or the secondary queue
bucketJoinAttempts to add this timed event to a bucket, will enter the secondary queue +if there are no appropriate buckets at this time.
getTimerInfoReturns debug information about timer
getcallingtypeReturns a string of the type of the callback for this timer
+

Var Details

bucket_joined + + + + +

+

Boolean indicating if timer joined into bucket

bucket_pos + + + + +

+

Initial bucket position

callBack + + + + +

+

The callback to invoke after the timer completes

flags + + + + +

+

Flags associated with the timer, see _DEFINES/subsystems.dm

hash + + + + +

+

Unique hash generated when TIMER_UNIQUE flag is present

id + + + + +

+

ID used for timers when the TIMER_STOPPABLE flag is present

name + + + + +

+

An informative name generated for the timer as its representation in strings, useful for debugging

next + + + + +

+

Next timed event in the bucket

prev + + + + +

+

Previous timed event in the bucket

source + + + + +

+

The source of the timedevent, whatever called addtimer

spent + + + + +

+

Time at which the timer was invoked or destroyed

timeToRun + + + + +

+

The time at which the callback should be invoked at

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

+ + + diff --git a/datum/traders.html b/datum/traders.html new file mode 100644 index 0000000000000..ab56f2e40e2e4 --- /dev/null +++ b/datum/traders.html @@ -0,0 +1,78 @@ + + + + + + + /datum/traders - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

traders + + + +

+ + + + + + + + +

Vars

dock_siteWhat specific station the traders came from
trader_locationWhere the traders originate from
trader_major_specialWhat big ticket faction gear do they start with
trader_minor_specialWhat standard faction gear do they start with
trader_outfitWhat outfit do the traders spawn with
trader_speciesWhat species the traders consist of
trader_typeWhat faction the trader is
+

Var Details

dock_site + + + + +

+

What specific station the traders came from

trader_location + + + + +

+

Where the traders originate from

trader_major_special + + + + +

+

What big ticket faction gear do they start with

trader_minor_special + + + + +

+

What standard faction gear do they start with

trader_outfit + + + + +

+

What outfit do the traders spawn with

trader_species + + + + +

+

What species the traders consist of

trader_type + + + + +

+

What faction the trader is

+ + + diff --git a/datum/transaction.html b/datum/transaction.html new file mode 100644 index 0000000000000..81460acb61d0c --- /dev/null +++ b/datum/transaction.html @@ -0,0 +1,71 @@ + + + + + + + /datum/transaction - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

transaction + + + +

+ + + + + + + +

Vars

accountthe account this log is attached to, used for money db level logging
amountIf money is utilized/changed during this transaction, how much
is_depositWhether or not this added or money from the account
purposeWhat this transaction is doing
timewhen the transaction occurred
transactorWho performed the action
+

Var Details

account + + + + +

+

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

+ + + diff --git a/datum/transfer_request.html b/datum/transfer_request.html new file mode 100644 index 0000000000000..a5edddf0b19d1 --- /dev/null +++ b/datum/transfer_request.html @@ -0,0 +1,57 @@ + + + + + + + /datum/transfer_request - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

transfer_request + + + +

+ + + + + +

Vars

amounthow much money is being request
purposereason for transfer request
requesting_accountthe money account that is requesting money
timewhen the money was requested
+

Var Details

amount + + + + +

+

how much money is being request

purpose + + + + +

+

reason for transfer request

requesting_account + + + + +

+

the money account that is requesting money

time + + + + +

+

when the money was requested

+ + + diff --git a/datum/ui_modal.html b/datum/ui_modal.html new file mode 100644 index 0000000000000..8c83388260bd7 --- /dev/null +++ b/datum/ui_modal.html @@ -0,0 +1,57 @@ + + + + + + + /datum/ui_modal - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

ui_modal + + + +

+ +

Modal datum (contains base information for a modal)

+ + +

Procs

on_answerCalled when a modal receives an answer
preprocess_answerCalled when it's time to pre-process the answer before using it
to_dataCreates a list that describes a modal visually to be passed to JS

Proc Details

on_answer +

+

Called when a modal receives an answer

+

Arguments:

+

preprocess_answer +

+

Called when it's time to pre-process the answer before using it

+

Arguments:

+

to_data +

+

Creates a list that describes a modal visually to be passed to JS

+ + + diff --git a/datum/ui_modal/input/bento.html b/datum/ui_modal/input/bento.html new file mode 100644 index 0000000000000..908140a29641c --- /dev/null +++ b/datum/ui_modal/input/bento.html @@ -0,0 +1,29 @@ + + + + + + + /datum/ui_modal/input/bento - Space Station 13 + + +
+ Space 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.

+ + + diff --git a/datum/ui_module/colour_matrix_tester.html b/datum/ui_module/colour_matrix_tester.html new file mode 100644 index 0000000000000..8456da2139737 --- /dev/null +++ b/datum/ui_module/colour_matrix_tester.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ui_module/colour_matrix_tester - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

colour_matrix_tester + + + +

+ + +

Vars

target_datumThe 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

+ + + diff --git a/datum/ui_module/crew_monitor.html b/datum/ui_module/crew_monitor.html new file mode 100644 index 0000000000000..bf13734e41cdc --- /dev/null +++ b/datum/ui_module/crew_monitor.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ui_module/crew_monitor - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

crew_monitor + + + +

+ + +

Vars

ignore_sensorsIf true, we'll see everyone, regardless of their suit sensors.
+

Var Details

ignore_sensors + + + + +

+

If true, we'll see everyone, regardless of their suit sensors.

+ + + diff --git a/datum/ui_module/emojipedia.html b/datum/ui_module/emojipedia.html new file mode 100644 index 0000000000000..a6c58a604b284 --- /dev/null +++ b/datum/ui_module/emojipedia.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ui_module/emojipedia - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

emojipedia + + + +

+ + +

Vars

emoji_listStore the list of potential emojis here.
+

Var Details

emoji_list + + + + +

+

Store the list of potential emojis here.

+ + + diff --git a/datum/ui_module/ert_manager.html b/datum/ui_module/ert_manager.html new file mode 100644 index 0000000000000..0b8bb80a75bd8 --- /dev/null +++ b/datum/ui_module/ert_manager.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ui_module/ert_manager - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

ert_manager + + + +

+ + +

Vars

cyborg_securityThe 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

+ + + diff --git a/datum/ui_module/ghost_hud_panel.html b/datum/ui_module/ghost_hud_panel.html new file mode 100644 index 0000000000000..4d5c563db8893 --- /dev/null +++ b/datum/ui_module/ghost_hud_panel.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ui_module/ghost_hud_panel - Space Station 13 + + +
+ Space 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.

+

Vars

hud_type_lookupAssociative 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.

+ + + diff --git a/datum/ui_module/library_manager.html b/datum/ui_module/library_manager.html new file mode 100644 index 0000000000000..7cf38bdae3bf4 --- /dev/null +++ b/datum/ui_module/library_manager.html @@ -0,0 +1,71 @@ + + + + + + + /datum/ui_module/library_manager - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

library_manager + + + +

+ + + + + + + +

Vars

cached_booksWhere we will store our cachedbook datums
page_stateTGUI page we are currently on
reportslist of assoc lists detailing each invidual reports, can contain multiple reports for same book
selected_ckeyCkey's books we are viewing
view_bookinformation for the book we are opening in browserui
view_book_pagebrowserui 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

+ + + diff --git a/datum/ui_module/robot_self_diagnosis.html b/datum/ui_module/robot_self_diagnosis.html new file mode 100644 index 0000000000000..f5f3effe66242 --- /dev/null +++ b/datum/ui_module/robot_self_diagnosis.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ui_module/robot_self_diagnosis - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

robot_self_diagnosis + + + +

+ + +

Vars

ownerThe robot who can use this UI to diagnose themselves.
+

Var Details

owner + + + + +

+

The robot who can use this UI to diagnose themselves.

+ + + diff --git a/datum/ui_state.html b/datum/ui_state.html new file mode 100644 index 0000000000000..34acdadd45ec8 --- /dev/null +++ b/datum/ui_state.html @@ -0,0 +1,40 @@ + + + + + + + /datum/ui_state - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

ui_state + + + +

+ + +

Procs

can_use_topicprivate

Proc Details

can_use_topic +

+

private

+

Checks if a user can use src_object's UI, and returns the state. +Can call a mob proc, which allows overrides for each mob.

+

required src_object datum The object/datum which owns the UI. +required user mob The mob who opened/is using the UI.

+

return UI_state The state of the UI.

+ + + diff --git a/datum/uplink_item.html b/datum/uplink_item.html new file mode 100644 index 0000000000000..d0132c48e90d9 --- /dev/null +++ b/datum/uplink_item.html @@ -0,0 +1,162 @@ + + + + + + + /datum/uplink_item - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

uplink_item + + + +

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

Vars

abstractIs what we're spawning abstract?
can_discountCan this be sold at a discount?
categoryWhat category is the item listed under
costHow many TC does this cost?
descDescription of the item in the uplink
excludefromEmpty list does nothing. Place the name of uplink type you don't want this item to be available in here.
hijack_onlyCan this item be purchased only during hijackings?
itemWhat is spawned when we purchase this?
jobIs this job locked?
limited_stockCan you only buy so many? -1 allows for infinite purchases
nameName of the item in the uplink
referenceUsed for discounts. Any unique string will do.
refund_amountspecified refund amount in case there needs to be a TC penalty for refunds.
refund_pathAlternative path for refunds, in case the item purchased isn't what is actually refunded (ie: holoparasites).
refundableCan you refund this in the uplink?
speciesThis makes an item on the uplink only show up to the specified species
surplusChance of being included in the surplus crate (when pick() selects it)
uplinktypesEmpty list means it is in all the uplink types. Otherwise place the uplink type here.
uses_special_spawnOur 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?

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

+ + + diff --git a/datum/uplink_item/species_restricted/prescan.html b/datum/uplink_item/species_restricted/prescan.html new file mode 100644 index 0000000000000..838997765981b --- /dev/null +++ b/datum/uplink_item/species_restricted/prescan.html @@ -0,0 +1,36 @@ + + + + + + + /datum/uplink_item/species_restricted/prescan - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

prescan + + + +

+ + +

Vars

speciesA 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

+ + + diff --git a/datum/vampire_subclass.html b/datum/vampire_subclass.html new file mode 100644 index 0000000000000..78d60c71c75b7 --- /dev/null +++ b/datum/vampire_subclass.html @@ -0,0 +1,71 @@ + + + + + + + /datum/vampire_subclass - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

vampire_subclass + + + +

+ + + + + + + +

Vars

full_power_overrideIf 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_abilitiesA list of the powers a vampire unlocks when it reaches full power.
improved_rejuv_healingWhether or not a vampire heals more based on damage taken.
nameThe subclass' name. Used for blackbox logging.
standard_powersA 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_capmaximun number of thralls a vampire may have at a time. incremented as they grow stronger, up to a cap at full power.
+

Var Details

full_power_override + + + + +

+

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.

+ + + diff --git a/datum/virology_goal.html b/datum/virology_goal.html new file mode 100644 index 0000000000000..774b3a19451f6 --- /dev/null +++ b/datum/virology_goal.html @@ -0,0 +1,43 @@ + + + + + + + /datum/virology_goal - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

virology_goal + + + +

+ + + +

Vars

delivered_amountThe amount of units currently already delivered
delivery_goalThe 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

+ + + diff --git a/datum/vote.html b/datum/vote.html new file mode 100644 index 0000000000000..05979e36e1d7f --- /dev/null +++ b/datum/vote.html @@ -0,0 +1,85 @@ + + + + + + + /datum/vote - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

vote + + + +

+ + + + + + + + + +

Vars

choicesChoices available in the vote
initiatorPerson who started the vote
is_customWas this vote custom started?
questionThe question being asked
show_countsDo we want to show the vote counts as it goes
started_timeworld.time the vote started at
vote_result_typeVote result type. This determines how a winner is picked
vote_type_textVote type text, for showing in UIs and stuff
+

Var Details

choices + + + + +

+

Choices available in the vote

initiator + + + + +

+

Person who started the vote

is_custom + + + + +

+

Was this vote custom started?

question + + + + +

+

The question being asked

show_counts + + + + +

+

Do we want to show the vote counts as it goes

started_time + + + + +

+

world.time the vote started at

vote_result_type + + + + +

+

Vote result type. This determines how a winner is picked

vote_type_text + + + + +

+

Vote type text, for showing in UIs and stuff

+ + + diff --git a/datum/weather/solar_flare.html b/datum/weather/solar_flare.html new file mode 100644 index 0000000000000..92514147e0da7 --- /dev/null +++ b/datum/weather/solar_flare.html @@ -0,0 +1,36 @@ + + + + + + + /datum/weather/solar_flare - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

solar_flare + + + +

+ + +

Vars

semi_protected_areasAreas 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.

+ + + diff --git a/datum/wires.html b/datum/wires.html new file mode 100644 index 0000000000000..138ff97a9d853 --- /dev/null +++ b/datum/wires.html @@ -0,0 +1,398 @@ + + + + + + + /datum/wires - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

wires + + + +

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

Vars

assembliesAn associative list of signalers attached to the wires. The wire color is the key, and the signaler object reference is the value.
colorsAn associative list with the wire color as the key, and the wire define as the value.
cut_wiresA list of all cut wires. The same values that can go into wires will get added and removed from this list.
holderThe atom the wires belong too. For example: an airlock.
holder_typeThe holder type; used to make sure that the holder is the correct type.
labelledTRUE if the wires are labelled for every user
proper_nameThe 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".
randomizeTRUE if the wires will be different every time a new wire datum is created.
wire_countThe total number of wires that our holder atom has.
wiresA list of all wires. For a list of valid wires defines that can go here, see code/__DEFINES/wires.dm

Procs

InteractProc called when the user attempts to interact with wires UI.
add_dudsAdds in dud wires, which do nothing when cut/pulsed.
attach_assemblyProc called when a mob tries to attach a signaler to a wire.
cutCut or mend a wire. Calls on_cut().
cut_allCuts all wires.
cut_colorCut the wire which corresponds with the passed in color.
cut_randomCuts a random wire.
detach_assemblyProc called when a mob tries to detach a signaler from a wire.
emp_pulseUse this proc if you want wires to be pulsed on EMP
get_attachedGets the signaler attached to the given wire color, if there is one.
get_statusBase 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_wireGets the wire associated with the color passed in.
get_wire_nameGet 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.
interactableBase 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_cutDetermines if all of the wires are cut. Returns TRUE they're all cut, FALSE otherwise.
is_attachedChecks if the given wire has a signaler on it.
is_color_cutDetermines if the wire associated with the passed in color, is cut or not. Returns TRUE if it's cut, FALSE otherwise.
is_cutDetermines if the passed in wire is cut or not. Returns TRUE if it's cut, FALSE otherwise.
is_dudDetermines if the passed in wire is a dud or not. Returns TRUE if the wire is a dud, FALSE otherwise.
is_dud_colorReturns TRUE if the wire that corresponds to the passed in color is a dud. FALSE otherwise.
on_cutProc called when any wire is cut.
on_pulseProc called when any wire is pulsed.
pulsePulses the given wire. Calls on_pulse().
pulse_assemblyProc called when an attached signaler receives a signal.
pulse_colorPulses the wire associated with the given color.
randomizeRandomly generates a new set of wires. and corresponding colors from the given pool. Assigns the information as an associative list, to colors.
repairRepairs all cut wires.
shuffle_wiresClears the colors list, and randomizes it to a new set of color-to-wire relations.
ui_hostUsers 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.

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:

+

add_duds +

+

Adds in dud wires, which do nothing when cut/pulsed.

+

Arguments:

+

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:

+

cut +

+

Cut or mend a wire. Calls on_cut().

+

Arugments:

+

cut_all +

+

Cuts all wires.

cut_color +

+

Cut the wire which corresponds with the passed in color.

+

Arugments:

+

cut_random +

+

Cuts a random 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:

+

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:

+

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:

+

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:

+

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:

+

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:

+

is_cut +

+

Determines if the passed in wire is cut or not. Returns TRUE if it's cut, FALSE otherwise.

+

Arugments:

+

is_dud +

+

Determines if the passed in wire is a dud or not. Returns TRUE if the wire is a dud, FALSE otherwise.

+

Arugments:

+

is_dud_color +

+

Returns TRUE if the wire that corresponds to the passed in color is a dud. FALSE otherwise.

+

Arugments:

+

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:

+

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:

+

pulse +

+

Pulses the given wire. Calls on_pulse().

+

Arugments:

+

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:

+

pulse_color +

+

Pulses the wire associated with the given color.

+

Arugments:

+

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.

+ + + diff --git a/datum/world_topic_handler.html b/datum/world_topic_handler.html new file mode 100644 index 0000000000000..5b8fc355fb75c --- /dev/null +++ b/datum/world_topic_handler.html @@ -0,0 +1,69 @@ + + + + + + + /datum/world_topic_handler - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

world_topic_handler + + + +

+ + + + + +

Vars

requires_commskeySet this to TRUE if the topic handler needs an authorised comms key
topic_keyKey which invokes this topic

Procs

executeActually executes the user's topic
invokeInvokes the world/Topic handler
+

Var Details

requires_commskey + + + + +

+

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:

+

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:

+
+ + + diff --git a/datum/world_topic_spam_prevention_handler.html b/datum/world_topic_spam_prevention_handler.html new file mode 100644 index 0000000000000..0a17355e7f4a5 --- /dev/null +++ b/datum/world_topic_spam_prevention_handler.html @@ -0,0 +1,73 @@ + + + + + + + /datum/world_topic_spam_prevention_handler - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

world_topic_spam_prevention_handler + + + +

+ + + + + + + +

Vars

ipIP. Used purely for select purposes.
last_requestTime of last request
locked_outIs this IP currently locked out
strikesAmount of strikes. [WORLD_TOPIC_STRIKES_THRESHOLD] strikes is a lockout of [WORLD_TOPIC_LOCKOUT_TIME]
unlock_timeUnlock time

Procs

check_lockoutLockout handler
+

Var Details

ip + + + + +

+

IP. Used purely for select purposes.

last_request + + + + +

+

Time of last request

locked_out + + + + +

+

Is this IP currently locked out

strikes + + + + +

+

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

+ + + diff --git a/datum/zlev_manager.html b/datum/zlev_manager.html new file mode 100644 index 0000000000000..170c0ac467b6b --- /dev/null +++ b/datum/zlev_manager.html @@ -0,0 +1,35 @@ + + + + + + + /datum/zlev_manager - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

zlev_manager + + + +

+ + +

Procs

increase_max_zlevel_toSPACE ALLOCATION

Proc Details

increase_max_zlevel_to +

+

SPACE ALLOCATION

+ + + diff --git a/dmdoc.css b/dmdoc.css new file mode 100644 index 0000000000000..367f005d2a85d --- /dev/null +++ b/dmdoc.css @@ -0,0 +1,112 @@ +body { + margin: auto; + background: #f4f4f4; + color: #333333; + font-size: 16px; + line-height: 1.3; + max-width: 73%; + overflow-y: scroll; + font-family: Arial, Helvetica, sans-serif; +} +pre, code { + background: white; + tab-size: 4; + -moz-tab-size: 4; +} +pre { + padding: 8px; + white-space: pre-wrap; +} +code { + font-family: Consolas, "DejaVu Sans Mono", "Courier New", Courier, monospace; +} +a { + color: #333333; +} +article { + margin: 2.5% auto; +} +header, footer { + margin: 2.5% -6px; + border: 1px solid #444444; + border-radius: 5px; + padding: 5px; +} +h1 aside, h2 aside, h3 aside, h4 aside, h5 aside { + display: inline; + font-weight: normal; + font-size: smaller; +} +aside.declaration, aside.parent { + display: inline-block; + position: relative; + text-align: right; + width: 100px; + margin-right: -100px; + right: 105px; +} +aside.declaration { + font-style: italic; +} +table.summary tr:first-child > td > :first-child { + margin-top: 0; +} +table.summary tr:last-child > td > :last-child { + margin-bottom: 0; +} +table.summary th, table.summary td { + text-align: left; + vertical-align: top; + padding-left: 0; + padding-right: 1em; +} +table.summary th { + padding-left: 1em; + padding-bottom: 4px; + text-indent: -1em; +} +.no-substance { + color: #888888; +} +:target { + background-color: white; + border-radius: 5px; + padding-left: 3px; + padding-right: 3px; + margin-left: -3px; + margin-right: 3px; +} +img[src="git.png"] { + opacity: 0.8; +} +.expander { + cursor: pointer; + display: inline-block; + position: relative; + text-align: right; + width: 50px; + margin-right: -50px; + right: 53px; +} + +@media (prefers-color-scheme: dark) { + body { + background-color: #151520; + color: #e0e0e0; + } + a { + color: #e0e0e0; + } + header, footer { + border-color: #d0d0d0; + } + .no-substance { + color: #bbbbbb; + } + pre, code, :target { + background-color: #252530; + } + img[src="git.png"] { + filter: invert(1); + } +} diff --git a/dmdoc.js b/dmdoc.js new file mode 100644 index 0000000000000..6bf31f7e94411 --- /dev/null +++ b/dmdoc.js @@ -0,0 +1,58 @@ +// ---------------------------------------------------------------------------- +// Index page tree browsing + +document.addEventListener("DOMContentLoaded", function() { + var items = document.getElementsByClassName("index-tree"); + var nodes = []; + + for (var i = 0; i < items.length; ++i) { + var node = items[i]; + var parent = node.parentElement; + if (!parent || parent.tagName.toLowerCase() != "li") { + continue; + } + node.hidden = true; + parent.style.listStyle = "none"; + var expander = document.createElement("span"); + expander.className = "expander"; + expander.textContent = "\u2795"; + expander.addEventListener("click", function(node) { + return function(event) { + if (event.target.tagName.toLowerCase() == "a") { + return; + } + event.preventDefault(); + event.stopPropagation(true); + node.hidden = !node.hidden; + this.textContent = node.hidden ? "\u2795" : "\u2796"; + }; + }(node)); + + if (node.parentElement.parentElement.classList.contains("modules")) { + node.hidden = false; + expander.textContent = "\u2796"; + } + + parent.insertBefore(expander, parent.firstChild); + nodes.push({ node, expander }); + } + + if (nodes.length) { + var toggle = document.createElement("a"); + toggle.href = "#"; + toggle.appendChild(document.createTextNode("Toggle All")); + toggle.addEventListener("click", function(event) { + event.preventDefault(); + + var hidden = !nodes[1].node.hidden; + for (var i = 0; i < nodes.length; ++i) { + nodes[i].node.hidden = hidden; + nodes[i].expander.textContent = hidden ? "\u2795" : "\u2796"; + } + }); + + var header = document.getElementsByTagName("header")[0]; + header.appendChild(document.createTextNode(" \u2014 ")); + header.appendChild(toggle); + } +}); diff --git a/git.png b/git.png new file mode 100644 index 0000000000000..c190e8538b5c1 Binary files /dev/null and b/git.png differ diff --git a/global.html b/global.html new file mode 100644 index 0000000000000..dbcab23d763a3 --- /dev/null +++ b/global.html @@ -0,0 +1,1344 @@ + + + + + + + (global) - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

(global) + + + +

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

Vars

FailsafeFailsafe
MasterStonedMC
SSambienceThe subsystem used to play ambience to users every now and then, makes them real excited.
SSchatCopyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT
SScleanup
SSpersistent_data
SStguitgui subsystem
SStimer
SSverb_managerSSverb_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.

Procs

HTTPGetHTTP Get (Powered by RUSTG)
HeapPathWeightCompareTODO: Macro this to reduce proc overhead
MakeAPICallInternal API Caller
RoundDiagBarDiagnostic HUDs!
_queue_verbqueue 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.
add_attack_logsCreates 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.
add_verbhandles adding verbs and updating the stat panel browser
addtimerCreate a new timer and insert it in the queue. +You should not call this directly, and should instead use the addtimer macro, which includes source information.
announce_merge_conflict_markerWe 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.
atmos_scanOutputs a message to the user describing the target's gasmixes. +Used in chat-based gas scans.
avoid_assoc_duplicate_keystakes 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
bangCreates a flashing effect that blinds and deafens mobs within range
broadcast_messageMessage Broadcast Proc
check_active_security_force
check_rights_allRequires the holder to have all the rights specified
client2rankcolourProc to generate a "rank colour" from a client
compare_listcompare two lists, returns TRUE if they are the same
costly_icon2assetCostlier version of icon2asset() that uses getFlatIcon() to account for overlays, underlays, etc. Use with extreme moderation, ESPECIALLY on mobs.
create_shrapnelCreates an explosion of shrapnel at a turf.
create_strippable_listCreates an assoc list of keys to /datum/strippable_item
cut_relative_directionTakes a screen_loc string and cut out any directions like NORTH or SOUTH
delete_all_SS_and_recreate_masterDelete all existing SS to basically start over
deltimerDelete a timer
do_teleportWill teleport the given atom to the given destination using the other parameters
emissive_appearanceProduces 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.
emissive_blockerProduces a mutable appearance glued to the EMISSIVE_PLANE dyed to be the EM_BLOCK_COLOR.
emoji_parseTurns :ai: into an emoji in text.
empulseWill cause an EMP on the given epicenter. +This proc can sleep depending on the affected objects. So assume it sleeps!
finish_unequip_mobA utility function for /datum/strippable_items to finish unequipping an item from a mob.
fire_flash_logFlashfire is a proc used to log fire causing chemical reactions.
format_si_suffixFormats num with an SI prefix.
generate_and_hash_rsc_fileGenerates a filename for a given asset. +Like generate_asset_name(), except returns the rsc reference and the rsc file hash as well as the asset name (sans extension) +Used so that certain asset files dont have to be hashed twice
get_admin_objective_targetsAllows admins to safely pick from SSticker.minds for objectives
get_all_linked_levels_zposProc to get a list of all the linked-together Z-Levels
get_allowed_instrument_idsGet all non admin_only instruments as a list of text ids.
get_antag_type_strings_listA proc that return an array of capitalized strings containing name of the antag types they are
get_antag_type_truncated_plaintext_stringA proc that return a string containing all the singled out antags . Empty string if not antag
get_atoms_of_typeReturns a list of atoms in a location of a given type. Can be refined to look for pixel-shift.
get_bbox_of_atomsGet a bounding box of a list of atoms.
get_channel_nameReturns the clean name of an audio channel.
get_chemscan_resultsHEALTH ANALYZER
get_departments_from_jobmatches a string job name to their department(s) and returns it as a list
get_dummy_savefileGets a dummy savefile for usage in icon generation. +Savefiles generated from this proc will be empty.
get_edge_target_turfReturns the turf located at the map edge in the specified direction relative to target_atom used for mass driver
get_icon_dmi_pathGiven an icon object, dmi file path, or atom/image/mutable_appearance, attempts to find and return an associated dmi file path. +A weird quirk about dm is that /icon objects represent both compile-time or dynamic icons in the rsc, +But stringifying rsc references returns a dmi file path +ONLY if that icon represents a completely unchanged dmi file from when the game was compiled. +So if the given object is associated with an icon that was in the rsc when the game was compiled, this returns a path. otherwise it returns ""
get_lineGet a list of turfs in a line from starting_atom to ending_atom.
get_living_playersThis proc returns every player with a client who is not a ghost or a new_player
get_path_toThis 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.
get_rad_contentsA 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
get_ranged_target_turf_directGet ranged target turf, but with direct targets as opposed to directions
get_safe_speciesReturns a list of names of non-blacklisted or hazardous species.
get_unrestricted_random_reagent_idReturns a random reagent ID, with real non blacklisted balance boosting action!
get_valid_screen_locationReturns a valid location to place a screen object without overflowing the viewport
get_valid_vent_spawnsReturns a list of vents that can be used as a potential spawn if they meet the criteria set by the arguments
goonchem_vortexThrows or pulls objects to/from a chem reaction
icon2assetThe dmi file path we attempt to return if the given object argument is associated with a stringifiable icon +If successful, this looks like "icons/path/to/dmi_file.dmi" +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:
icon2base64Converts 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_existsChecks if the given iconstate exists in the given file, caching the result. Setting no_sprite to TRUE will print a stack trace ONCE.
is_bad_connectionConnection checker
is_color_darkGiven a color in the format of "#RRGGBB", will return if the color is dark.
is_special_characterADMIN HELPER PROCS +A proc that return whether the mob is a "Special Character" aka Antagonist
is_type_in_UID_listIf 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_filegiven a text string, returns whether it is a valid dmi icons folder path
locateUIDLocates a datum based off of the UID
makeDatumRefListsInitial Building
make_associativeA proc for turning a list into an associative list.
md5asfileSave file as an external file then md5 it. +Used because md5ing files stored in the rsc sometimes gives incorrect md5 results.
md5filepathReturns the md5 of a file at a given path.
message_adminTicketSends 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_mentorTicketSends 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_to_htmlMessage-related procs
offset_to_screen_locTakes 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_modifiersReturns a turf based on text inputs, original turf and viewing client
phase_filterThis 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_uniquePicks 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
pick_unique_lawsetreturns a random non starting / kill crew lawset if the station has a unique ai lawset
pickweightPicks an element based on its weight. +L - The input list
propagate_networkremove the old powernet and replace it with a new one throughout the network.
radial_menu_helperSimilar 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_accessoryReturns a random body accessory for a given species name. Can be null based on is_optional argument.
recover_all_SS_and_recreate_masterRecreate all SSs which will still cause data survive due to Recover(), the new Master will then find and take them from global.vars
remove_verbhandles removing verb and sending it to browser to update, use this for removing verbs
round_healthrounds value to limited symbols after the period for organ damage and other values
rustg_get_versionGets the version of rust_g
rustg_redis_disconnect_rqDisconnects from a previously connected redis server
rustg_unix_timestampReturns the timestamp as a string
safe_get_ckeySafe ckey getter
sanitize_for_icsanitize() with a pre-set list of characters to remove from IC speech.
screen_loc_to_offsetTakes 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_clockTake a value in seconds and makes it display like a clock. Hours are stripped. (mm:ss)
seconds_to_full_clockTake a value in seconds and makes it display like a clock (h:mm:ss)
seedifyConvert a grown object into seeds.
setup_mod_themesGlobal proc that sets up all MOD themes as singletons in a list and returns it.
shake_cameraShake the camera of the person viewing the mob SO REAL!
show_blurbShows a ticker reading out the given text on a client's screen.
spread_germs_by_incisionSpread germs directly from a tool.
spread_germs_to_organSpread some nasty germs to an organ.
start_unequip_mobA utility function for /datum/strippable_items to start unequipping an item from a mob.
start_watchReturns "watch handle" (really just a timestamp :V)
stop_watchReturns number of seconds elapsed. +@param wh number The "Watch Handle" from start_watch(). (timestamp)
strip_html_tagsStrips HTML tags (and only tags) from the input. +The result may still include HTML entities, like ' for '
tgui_TopicMiddleware for /client/Topic.
tgui_alertCreates a TGUI alert window and returns the user's response.
tgui_input_listCreates a TGUI input list window and returns the user's response.
tgui_input_numberCreates a TGUI window with a number input. Returns the user's response as num | null.
tgui_input_textCreates a TGUI window with a text input. Returns the user's response.
to_chatSends the message to the recipient (target).
to_chat_immediateCircumvents the message queue and sends the message to the recipient (target) as soon as possible. +trailing_newline, confidential, and handle_whitespace currently have no effect, please fix this in the future or remove the arguments to lower cache!
trim_lengthReturns a string that does not exceed max_length characters in size
type_list_to_counted_assoc_listThis proc takes a list of types, and returns them in the format below. +[type] = amount of type in list. +Useful for recipes.
view_to_pixelsTakes a string or num view, and converts it to pixel width/height in a list(pixel_width, pixel_height)
wiki_linkCreates a hyperlink for a specified wiki article.
+

Var Details

Failsafe + + + + +

+

Failsafe

+

Pretty much pokes the MC to make sure it's still alive.

Master + + + + +

+

StonedMC

+

Designed to properly split up a given tick among subsystems +Note: if you read parts of this code and think "why is it doing it that way" +Odds are, there is a reason

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.

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.

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.

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.

Proc Details

HTTPGet +

+

HTTP Get (Powered by RUSTG)

+

This proc should be used as a replacement for [world.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.Export()] format (https://secure.byond.com/docs/ref/index.html#/world/proc/Export), with the above exception

+

Arguments:

+

HeapPathWeightCompare +

+

TODO: Macro this to reduce proc overhead

MakeAPICall +

+

Internal API Caller

+

Makes calls to the internal Paradise API and returns a /datum/http_response.

+

Arguments:

+

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.

+

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:

+

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:

+

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.

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:

+

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:

+

check_active_security_force +

+

check_rights_all +

+

Requires the holder to have all the rights specified

+

rights_required = R_ADMIN|R_EVENT means they must have both flags, or it will return false

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:

+

compare_list +

+

compare two lists, returns TRUE if they are the same

costly_icon2asset +

+

Costlier version of icon2asset() that uses getFlatIcon() to account for overlays, underlays, etc. Use with extreme moderation, ESPECIALLY on mobs.

create_shrapnel +

+

Creates an explosion of shrapnel at a turf.

+

create_strippable_list +

+

Creates an assoc list of keys to /datum/strippable_item

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:

+

do_teleport +

+

Will teleport the given atom to the given destination using the other parameters

+

Arguments:

+

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.

emissive_blocker +

+

Produces a mutable appearance glued to the EMISSIVE_PLANE dyed to be the EM_BLOCK_COLOR.

emoji_parse +

+

Turns :ai: into an emoji in text.

empulse +

+

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

finish_unequip_mob +

+

A utility function for /datum/strippable_items to finish unequipping an item from a mob.

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:

+

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

get_admin_objective_targets +

+

Allows admins to safely pick from SSticker.minds for objectives

+

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_antag_type_strings_list +

+

A proc that return an array of capitalized strings containing name of the antag types they are

+

Arguments:

+

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:

+

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:

+

get_bbox_of_atoms +

+

Get a bounding box of a list of atoms.

+

Arguments:

+ +

Returns: list(x1, y1, x2, y2)

get_channel_name +

+

Returns the clean name of an audio channel.

+

Arguments:

+

get_chemscan_results +

+

HEALTH ANALYZER

get_departments_from_job +

+

matches a string job name to their department(s) and returns it as a list

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_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.

+

Uses the ultra-fast Bresenham Line-Drawing Algorithm.

get_living_players +

+

This proc returns every player with a client who is not a ghost or a new_player

get_path_to +

+

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.

+

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.

+

Arguments:

+

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 +

+

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:

+

get_safe_species +

+

Returns a list of names of non-blacklisted or hazardous species.

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

+ +

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:

+

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:

+

icon2asset +

+

The dmi file path we attempt to return if the given object argument is associated with a stringifiable icon +If successful, this looks like "icons/path/to/dmi_file.dmi" +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:

+

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.

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:

+

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:

+

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

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:

+

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_to_html +

+

Message-related procs

+

Message format (/list):

+ +

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

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:

+

pick_unique_lawset +

+

returns a random non starting / kill crew lawset if the station has a unique ai lawset

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

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:

+

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_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:

+

round_health +

+

rounds value to limited symbols after the period for organ damage and other values

rustg_get_version +

+

Gets the version of rust_g

rustg_redis_disconnect_rq +

+

Disconnects from a previously connected redis server

rustg_unix_timestamp +

+

Returns the timestamp as a string

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:

+

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.

+

targets = mob or list of mobs to show it to. +duration = how long it lingers after it finishes ticking. +message = the message to display. Due to using maptext it isn't very flexible format-wise. 11px font, up to 480 pixels per line. Use \n for line breaks. Single-character HTML tags (, , etc.) are handled correctly but others display strangely. Note that maptext can display text macros in strange ways, ex. \improper showing as "ÿ". Lines containing only spaces, including ones only containing "\improper ", don't display. +scroll_down = by default each line pushes the previous line upwards - this tells it to start high and scroll down. Ticks on \n - does not autodetect line breaks in long strings. +screen_position = screen loc for the bottom-left corner of the blurb. +text_alignment = "right", "left", or "center" +text_color = 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.

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.
  • +

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)

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_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_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.
  • +

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! +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

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)

+

Creates a hyperlink for a specified wiki article.

+ + + diff --git a/index.html b/index.html new file mode 100644 index 0000000000000..8c2b807cb9c0b --- /dev/null +++ b/index.html @@ -0,0 +1,3640 @@ + + + + + + + Index - Space Station 13 + + + + + +
+ Space Station 13 - + Modules - + Types +
+
+

Space Station 13

+ + + +

Modules +

+ + + + +

Types +

+
    +
  • (global)
  • +
  • area
      +
    • awaycontent - AWAY AREAS
    • +
    • lavaland - Lavaland Areas
        +
      • surface/outdoors
          +
        • outpost/catwalk - subtype of /surface so storms hit there
        • +
        • unexplored - monsters and ruins spawn here
            +
          • danger - megafauna will also spawn here
          • +
        • +
      • +
    • +
    • mine - Mine areas
        +
      • outpost - Outpost areas
          +
        • engineering - basically engi and atmos combined. I'm keeping it as "engineering" code wise, but "Life Support" sounds cooler in-game
        • +
      • +
    • +
    • start - will be unused once kurper gets his login interface patch done
    • +
    • station/maintenance/assembly_line - Derelict Assembly Line
    • +
    • syndicate_depot/core
    • +
  • +
  • atom
      +
    • movable
        +
      • 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.
      • +
      • screen
          +
        • action_landing - Exists so you have a place to put your buttons when you move them around
        • +
        • alert
            +
          • augury
              +
            • meteor - Meteor alert. +Appears during a meteor storm and allows for auto-following of debris.
            • +
          • +
          • hunger/fat
              +
            • machine - Machine "hunger"
            • +
            • vampire - Vampire "hunger"
            • +
          • +
          • status_effect/offering_item
          • +
          • 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.
        • +
        • button_palette
        • +
        • 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
          • +
          • 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
          • +
        • +
        • 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".
        • +
        • movable
        • +
        • palette_scroll
        • +
        • plane_master/emissive - Things placed on this mask the lighting plane. Doesn't render directly.
        • +
        • text/blurb
        • +
      • +
    • +
  • +
  • client
  • +
  • datum
      +
    • action
        +
      • changeling
          +
        • biodegrade
        • +
        • dissonant_shriek/cyberrev - A more expensive version, used during rounds with cyber rev station trait for balance reasons.
        • +
        • environmental_adaptation
        • +
        • evolution_menu
        • +
        • spiders
        • +
        • sting
            +
          • cryo - Enable when mob cooling is fixed so that frostoil actually makes you cold, instead of mostly just hungry.
          • +
        • +
        • suit
            +
          • armor - *
            +|ARMOR| +*
          • +
          • organic_space_suit -
            +|SPACE SUIT + HELMET
            | +*
            *
          • +
        • +
        • weapon
            +
          • arm_blade - *
            +|ARM BLADE| +*
          • +
          • shield -
            +|SHIELD
            | +*
          • +
          • tentacle -
            +|COMBAT TENTACLES
            | +*
            *
          • +
        • +
      • +
      • Base guardian host action - These are used by guardian hosts to interact with their guardians. These are not buttons that guardians themselves use.
          +
        • Communicate action - Allows the guardian host to communicate with their guardian.
        • +
        • Recall guardian action - Allows the guardian host to recall their guardian.
        • +
        • Reset guardian action - Allows the guardian host to exchange their guardian's player for another.
        • +
      • +
      • innate
          +
        • cocoon
        • +
        • cult
            +
          • blood_magic - Blood magic handles the creation of blood spells (formerly talismans)
          • +
          • blood_spell - The next generation of talismans, handles storage/creation of blood magic
          • +
        • +
        • demon/whisper - The Powers
        • +
        • elite_attack
        • +
      • +
      • item_action
      • +
    • +
    • action_group
    • +
    • admins
    • +
    • ai_laws
        +
      • antimov - Antimov
      • +
      • asimov - Asimov
      • +
      • cctv - CCTV
      • +
      • corporate - Corporate
      • +
      • crewsimov - Crewsimov
      • +
      • deathsquad - Deathsquad
      • +
      • drone - Drone
      • +
      • ert_override - ERT
      • +
      • hippocratic - Hippocratic Oath
      • +
      • maintain - Station Efficiency
      • +
      • nanotrasen - Nanotrasen/Malf
      • +
      • nanotrasen_aggressive - Nanotrasen Aggressive
      • +
      • ninja_override - Ninja
      • +
      • paladin - P.A.L.A.D.I.N.
      • +
      • peacekeeper - Peacekeeper
      • +
      • pranksimov - Pranksimov
      • +
      • quarantine - Quarantine.
      • +
      • robocop - Robocop
      • +
      • syndicate_override - Syndicate
      • +
      • tyrant - T.Y.R.A.N.T.
      • +
    • +
    • announcement_configuration
    • +
    • announcer
    • +
    • antagonist
    • +
    • asset
        +
      • group - For registering or sending multiple others at once
      • +
      • simple - If you don't need anything complicated.
          +
        • 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)
        • +
      • +
      • spritesheet
          +
        • chem_master - Pill sprites for UIs
        • +
        • orbit_job - Sprites for Orbit Role UI
        • +
      • +
    • +
    • asset_cache_item - An internal datum containing info on items in the asset cache. Mainly used to cache md5 info for speed.
    • +
    • asset_transport - Base browse_rsc asset transport
        +
      • webroot - CDN Webroot asset transport.
      • +
    • +
    • async_input - THIS WILL BE REMOVED IN THE FUTURE, I STRONGLY SUGGEST AGAINST USING THIS - GDN
    • +
    • barsign
    • +
    • bitfield - Specifies a bitfield for smarter debugging
    • +
    • body_accessory
        +
      • tail
          +
        • short - Same as above.
        • +
        • tiny - Pretty ambiguous as to what species it belongs to, tail could've been injured or docked.
        • +
        • wingler_tail - Jay wingler fluff tail
        • +
      • +
    • +
    • borrowbook - Datum used to keep track of who has borrowed what when and for how long.
    • +
    • browser
    • +
    • buildmode_mode/tilting
    • +
    • 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
    • +
    • candidate_poll
    • +
    • changeling_power_category
    • +
    • character_save
    • +
    • chat_payload - Stores information about a chat payload
    • +
    • Chat Message Overlay - Datum for generating a message overlay on the map
    • +
    • chemical_production_mode
    • +
    • chemical_reaction
        +
      • cookiedough - Cookies by Ume
      • +
      • pestkiller - To-Do make this more realistic
      • +
      • phlogiston_fire - This MUST be above the smoke recipe.
      • +
      • sbiten - DRINKS THAT REQUIRED IMPROVED SPRITES BELOW:: -Agouri
      • +
      • zombie
      • +
    • +
    • 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.
      • +
    • +
    • Client Login Processor Framework - The holder class for all client data processing
    • +
    • cloning_data - A datum to store the information gained by scanning a patient OR the fixes to be made to their body.
    • +
    • code_revision - Code Revision Datum
    • +
    • Component - The component datum
        +
      • automatic_fire
      • +
      • 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.
      • +
      • caltrop
      • +
      • codeword_hearing - Component that allows for highlighting of words or phrases in chat based on regular expressions.
      • +
      • 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
      • +
      • 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
      • +
      • deadchat_control - Deadchat Plays Things - The Componenting
      • +
      • debris
      • +
      • defib - A component for an item that attempts to defibrillate a mob when activated.
      • +
      • emissive_blocker
      • +
      • footstep - Footstep component. Plays footsteps at parents location when it is appropriate.
      • +
      • label - The label component.
          +
        • 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.
      • +
      • orbiter
      • +
      • parry
      • +
      • Basic Proximity Monitor - Attaching this component to an atom means that the atom will be able to detect mobs or objects moving within a specified radius of it.
      • +
      • radioactive
      • +
      • scope - A component that allows players to use the item to zoom out. Mainly intended for firearms, but now works with other items too.
      • +
      • shielded - The shielded component causes the parent item to nullify a certain number of attacks against the wearer, see: shielded vests.
      • +
      • Slip Component - This is a component that can be applied to any movable atom (mob or obj).
      • +
      • squeak
      • +
      • sticky
      • +
      • Surgery Initiator - Allows an item to start (or prematurely stop) a surgical operation.
      • +
      • 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
      • +
      • two_handed - Two Handed Component
      • +
    • +
    • configuration_section
    • +
    • construction
    • +
    • Syndicate Hub - Describes and manages the contracts and rewards for a single contractor.
    • +
    • controller
    • +
    • coords - Simple datum for storing coordinates.
    • +
    • crafting_recipe
        +
      • rake - Category resorting incoming
      • +
    • +
    • Custom User Item - Holder for CUIs
    • +
    • data
        +
      • mining_equipment - Mining Equipment Datum
      • +
      • pda/app/nanobank
      • +
      • vending_product - Datum used to hold information about a product in a vending machine
      • +
    • +
    • db_query - Datum based handler for all database queries
    • +
    • department_member
    • +
    • design
        +
      • adv_reagent_scanner - Medical Tools
      • +
      • advmop - Janitorial Designs
      • +
      • aicore - Computer Boards
      • +
      • basic_capacitor - Stock Parts
      • +
      • basic_cell - Power Designs
      • +
      • bio_chip_implanter - Regular Implants
      • +
      • bluespace_crystal - Bluespace
      • +
      • borg_suit - Mecha Designs
      • +
      • bucket - Autolathe Designs
      • +
      • cyberimp_welding - Cybernetic Implants
      • +
      • design_disk - Misc Designs
      • +
      • drill - Mining
      • +
      • exwelder - Equipment
      • +
      • freeform_module - AI Module Disks
      • +
      • milk - Biogenerator Designs
      • +
      • mod_shell - MOD
      • +
      • nuclear_gun - Weapons
      • +
      • ripley_main - Mecha Module Disks
      • +
      • smelter - SMELTABLE ALLOYS
      • +
      • telecomms_core - Telecomms Equipment
      • +
      • thermomachine - Machine Boards
      • +
    • +
    • Discord Embed - Holder datum for discord embeds
    • +
    • Discord Embed Field - Holder datum for discord embed fields
    • +
    • discord_manager
    • +
    • Discord Webhook Payload - Holder datum for discord webhook POST send data
    • +
    • disease
    • +
    • dmm_suite
    • +
    • effect_system
    • +
    • element - A holder for simple behaviour that can be attached to many different types
        +
      • 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
      • +
      • shatters_when_thrown - When attached to something, will make that thing shatter into shards on throw impact or z level falling
      • +
      • squish - squish.dm
      • +
      • strippable - An element for atoms that, when dragged and dropped onto a mob, opens a strip panel.
      • +
    • +
    • Emote - Most of the text that's not someone talking is based off of this.
        +
      • living
          +
        • brain - Emotes usable by brains, but only while they're in MMIs.
        • +
        • carbon
            +
          • alien/humanoid - Emotes usable by humanoid xenomorphs.
          • +
          • human
              +
            • highfive
            • +
            • monkey - Snowflake emotes only for le epic chimp
            • +
          • +
        • +
        • simple_animal/slime
        • +
      • +
    • +
    • enchantment
    • +
    • event - NOTE: Times are measured in master controller ticks!
    • +
    • event_meta
    • +
    • Feed Channel - Describes a single feed channel. Owns a list of /datum/feed_message.
    • +
    • Feed Message - Describes a single feed story. Always owned by a /datum/feed_channel.
    • +
    • Feed Network - Singleton that contains all informations related to newscasters (channels, stories).
    • +
    • feedback_variable - Datum to hold feedback data, which gets logged at round end
    • +
    • flagged_book
    • +
    • food_processor_process
        +
      • meat - OBJECT RECIPIES
      • +
      • mob
          +
        • slime - MOB RECIPIES
        • +
      • +
    • +
    • game_mode
    • +
    • gas_mixture
        +
      • bound_to_turf - Mathematical proofs: +get_breath_partial_pressure(gas_pp) --> gas_pp/total_moles()breath_pp = pp +get_true_breath_pressure(pp) --> gas_pp = pp/breath_pptotal_moles()
      • +
      • readonly - A gas mixture that should not be modified after creation.
      • +
    • +
    • gear
    • +
    • HTTP Request - Holder datum for ingame HTTP requests
    • +
    • HTTP Response - Holder datum for HTTP responses
    • +
    • hud
    • +
    • 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.
    • +
    • input_data
    • +
    • 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.*
    • +
    • ipintel
    • +
    • ipintel_manager
    • +
    • job
    • +
    • job_ban
    • +
    • job_ban_holder - Holder for job bans
    • +
    • job_objective
    • +
    • 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
    • +
    • keybinding
    • +
    • language
    • +
    • lavaland_theme
    • +
    • library_catalog
    • +
    • 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
    • +
    • log_viewer
    • +
    • looping_sound
        +
      • decreasing - Looping sounds that decrease volume by a specified % each loop until it reaches a specified total % volume.
      • +
      • kitchen/microwave - KITCHEN MACHINERY
      • +
    • +
    • map - Map Datum
    • +
    • mapGenerator/syndicate/empty - walls and floor only
    • +
    • map_template
    • +
    • martial_art
    • +
    • martial_combo
    • +
    • middleClickOverride/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.
    • +
    • mimic_form
    • +
    • mind
    • +
    • mindslaves - Master Servent Datum Sytems,Based on TG Gang system
    • +
    • mod_theme - MODsuit theme, instanced once and then used by MODsuits to grab various statistics.
        +
      • standard - We don't want the civilian skin to apply to all modsuits, that causes issues.
      • +
    • +
    • money_account
    • +
    • money_account_database
    • +
    • movement_detector - A datum to handle the busywork of registering signals to handle in depth tracking of a movable
    • +
    • mutation
        +
      • grant_spell/morph - Vanilla Morph
      • +
    • +
    • nttc_configuration
    • +
    • 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
    • +
    • objective
    • +
    • objective_holder - An objective holder for minds, antag datums, and teams.
    • +
    • organ
        +
      • heart/always_beating - A subtype that is always beating. Abductor glands and demon hearts use this.
      • +
      • lungs
      • +
    • +
    • outfit
        +
      • admin
          +
        • modsuit/wizard - Technically not a MODsuit, we'll bundle it up in here for the future when it does become one
        • +
        • tournament
            +
          • tournament_chef - Steven Seagal FTW
          • +
          • tournament_gangster - gangster are supposed to fight each other. --rastaf0
          • +
        • +
      • +
      • job/centcom/response_team
          +
        • commander - COMMANDER
        • +
        • engineer - ENGINEER
        • +
        • janitorial - JANITORIAL
        • +
        • medic - MEDIC
        • +
        • paranormal - PARANORMAL
        • +
        • security - SECURITY
        • +
      • +
    • +
    • pai_save
    • +
    • pAI Software - Datum module for pAI software
    • +
    • Painter Datum - Contains variables for updating holder, as well as procs for choosing a colour and painting an atom.
        +
      • pipe/window - Yes, this is a pipe painter subtype.
      • +
    • +
    • pathfind - The datum used to handle the JPS pathfinding, completely self-contained
    • +
    • pathfinding_mover - A generalized datum for pathfinding, and moving to a target.
    • +
    • physiology datum - Datum that stores several modifiers in a way that isn't cleared by changing species
    • +
    • picture - AI-specific
    • +
    • pipes
        +
      • atmospheric/bent - Why is this not atmospheric/simple/bent you ask? Because otherwise the ordering of the pipes in the UI menu gets weird
      • +
      • transit - Pipe types for transit tubes.
      • +
    • +
    • plant_gene
        +
      • trait
          +
        • fire_resistance - Lavaland
        • +
        • plant_type - Parent type
        • +
      • +
    • +
    • point - this is explicitly utilitarian datum type made specially for the space map generation and are absolutely unusable for anything else
    • +
    • 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!
        +
      • vector
          +
        • processed - pixel_speed is per decisecond.
        • +
      • +
    • +
    • position - For positions with map x/y/z and pixel x/y so you don't have to return lists. Could use addition/subtraction in the future I guess.
    • +
    • preference_toggle
    • +
    • preferences
    • +
    • qdel_item
    • +
    • radiation_wave
    • +
    • rcd_act - A generic action for an RCD.
    • +
    • reagent
        +
      • aranesp
      • +
      • beer2 - disguised as normal beer for use by emagged service borgs
      • +
      • blob
          +
        • boiling_oil - sets you on fire, does burn damage
        • +
        • cryogenic_liquid - does low burn damage and stamina damage and cools targets down
        • +
        • envenomed_filaments - toxin, hallucination, and some bonus spore toxin
        • +
        • kinetic - does semi-random brute damage
        • +
        • lexorin_jelly - does tons of oxygen damage and a little brute
        • +
        • ripping_tendrils - does brute and a little stamina damage
        • +
      • +
      • consumable - Food Reagents
          +
        • entpoly - Lavaland Flora Reagents
        • +
        • ethanol
            +
          • bacchus_blessing - An EXTREMELY powerful drink. Smashed in seconds, dead in minutes.
          • +
          • bilk - cocktail entities
          • +
          • dragons_breath - inaccessible to players, but here for admin shennanigans
          • +
          • suicider - otherwise known as "I want to get so smashed my liver gives out and I die from alcohol poisoning".
          • +
        • +
        • nutriment - Pure nutriment, universally digestable and thus slightly less effective
            +
          • plantmatter - Plant-based biomatter, digestable by herbivores and omnivores, worthless to carnivores
          • +
          • protein - Meat-based protein, digestable by carnivores and omnivores, worthless to herbivores
          • +
        • +
      • +
      • eyenewt - Alchemical Reagents
      • +
      • fuel/unholywater - if you somehow managed to extract this from someone, dont splash it on yourself and have a smoke
      • +
      • jestosterone - Formerly known as Nitrogen tungstide hypochlorite before NT fired the chemists for trying to be funny
      • +
      • medicine
          +
        • adminordrazine - An OP chemical for admins
        • +
        • earthsblood - Created by ambrosia gaia plants
        • +
        • syndicate_nanites - Used exclusively by Syndicate medical cyborgs
        • +
      • +
      • mephedrone
      • +
      • methamphetamine
      • +
      • oil
      • +
      • pestkiller - To-Do; make this more realistic.
      • +
      • plantnutrient - Hydroponics stuff
      • +
      • questionmark - Food Related, but non-nutritious +food poisoning
      • +
      • rotatium - Rotatium. Fucks up your rotation and is hilarious
      • +
      • teslium - Teslium. Causes periodic shocks, and makes shocks against the target much more effective.
          +
        • blob - This version has it's shocks much less frequently, while retaining the shock multiplier
        • +
      • +
      • vomit - Vomit
      • +
    • +
    • Reagents Holder - The holder is the datum that holds a list of all reagents +currently in the object.
    • +
    • reagents_editor
    • +
    • recipe
        +
      • microwave/wrap - FOOD ADDITTIONS
      • +
      • oven
          +
        • cookies - cookies by Ume
        • +
        • turkey - Magic
        • +
      • +
    • +
    • Redis callback - Callback datum for subscribed redis channel handling
    • +
    • Redis message - Holder datum for redis messages
    • +
    • regional_powernet
    • +
    • Rep Purchase - Describes something that can be purchased with Contractor Rep.
        +
      • Rep Purchase - Blackout
      • +
      • Rep Purchase - Item - Describes an item that can be purchased with Contractor Rep.
          +
        • Rep Purchase - Contractor Balloon
        • +
        • Rep Purchase - Contractor Baton
        • +
        • Rep Purchase - Emergency escape flare
        • +
        • Rep Purchase - Fulton Extraction Kit
        • +
        • Rep Purchase - Contractor Pinpointer
        • +
        • Rep Purchase - Contractor Zippo Lighter
        • +
      • +
      • Rep Purchase - Contract Reroll
      • +
    • +
    • research
        +
      • autolathe/gamma - Gamma Armoury autolathe files
      • +
    • +
    • response_team
    • +
    • resumable_cost_counter - A cost counter for resumable, repeating processes.
    • +
    • 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.
    • +
    • robot_storage
        +
      • energy
      • +
      • material - This datum is an alternative to the energy storages, instead being recharged in different ways
      • +
    • +
    • scoreboard
    • +
    • security_level - Security levels
    • +
    • Server Command - Datum to handle both sending and receiving of server commands
    • +
    • server_configuration - Represents a base configuration datum. Has everything else bundled into it
    • +
    • Song datum - These are the actual backend behind instruments. +They attach to an atom and provide the editor + playback functionality.
    • +
    • sortInstance
    • +
    • spacevine_mutation
        +
      • aggressive_spread - very OP, but im out of other ideas currently
      • +
      • explosive - OH SHIT IT CAN CHAINREACT RUN!!!
      • +
    • +
    • species
        +
      • 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
      • +
      • skeleton - The OG skellybones, quite OP. As of this comment, only available through ash-drake loot (2023-03-07)
          +
        • brittle - The most common (and weakest) type, legion corpses and skeleton map spawners are these
        • +
        • lich - Wizard subtype, subtype to allow balancing separately from other skellies
        • +
      • +
    • +
    • spell
        +
      • ai_spell/ranged/core_tilt
      • +
      • alien_spell
          +
        • regurgitate - First we check if there is a living queen
        • +
      • +
      • aoe
          +
        • conjure/construct/lesser - Construct Spells
        • +
        • revenant
            +
          • hallucinations - Gives everyone in a 7 tile radius 2 minutes of hallucinations
          • +
          • haunt_object - Makes objects be haunted and then throws them at conscious people to do damage, spooky!
          • +
        • +
      • +
      • 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
        • +
      • +
      • hackerman_deck
      • +
      • mimic
      • +
      • morph_spell
      • +
      • projectile
      • +
      • recruit - POWERS/ABILITIES CODE
      • +
      • spacetime_dist
      • +
      • summonitem
      • +
      • touch/alien_spell
      • +
      • turf_teleport
      • +
      • vampire
      • +
    • +
    • spell_cooldown
    • +
    • 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
          • +
        • +
      • +
      • facial_hair/britstache - START VG HAIRSTYLES
      • +
      • hair
          +
        • birdnest - START VG HAIRSTYLES
        • +
        • bun4 - Due to a vulp hairstyle called bun
        • +
        • dave - END VG HAIRSTYLES//
        • +
        • eighties_ponytail - //END POLARIS HAIRSTYLES///
        • +
        • fluff
            +
          • pinapple_fluff_hair - Ume hairs end here/// +Fluff HairStyles// +Pineapple Salad hair fluff its for a slime..has to go under human
          • +
          • zeke_fluff_tentacle - Zeke Fluff hair
          • +
        • +
        • short - END VG HAIRSTYLES
        • +
      • +
    • +
    • stack_recipe
    • +
    • station_department
    • +
    • station_goal/secondary
    • +
    • station_state
    • +
    • 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.
    • +
    • status_effect
        +
      • blooddrunk
      • +
      • bubblegum_curse
      • +
      • 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.
      • +
      • fake_virus
      • +
      • fleshmend
      • +
      • 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
      • +
      • high_five
      • +
      • hippocraticOath
      • +
      • his_grace
      • +
      • his_wrath - does minor damage over time unless holding His Grace
      • +
      • incapacitating/sleeping
      • +
      • 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.
      • +
      • lwap_scope
      • +
      • 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).
      • +
      • shadow_mend
      • +
      • speedlegs
      • +
      • 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.
        • +
        • hallucination
        • +
        • silence/absolute - this one will mute all emote sounds including gasps
        • +
      • +
    • +
    • strip_menu - A representation of the stripping UI
    • +
    • strippable_item - A representation of an item that can be stripped down
    • +
    • supermatter_event
    • +
    • supply_order
    • +
    • supply_packs
        +
      • 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
        • +
        • station_goal - Station Goals
        • +
        • 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
        • +
        • 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.
        • +
      • +
    • +
    • surgery - Datum Surgery Helpers
        +
      • bone_repair - Surgery Datums
      • +
      • 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.
      • +
    • +
    • surgery_step
        +
      • fix_dead_tissue - Debridement
      • +
      • internal
      • +
      • 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.
        • +
        • robotics/repair_limb - The robotic equivalent
        • +
      • +
    • +
    • symptom/dizzy - Not the egg
    • +
    • Syndicate Contract - Describes a contract that can be completed by a Contractor.
    • +
    • tarot
        +
      • reversed/the_fool - REVERSED ARCANA
      • +
      • the_stars - I'm sorry matt, this is very funny.
      • +
    • +
    • Telecommunications Message - Datum which holds all the data for a message being sent
    • +
    • Antagonist Team - Datum used by team antagonists to track it's members and objectives the team needs to complete.
    • +
    • tech
        +
      • toxins - not meant to be raised by deconstruction, do not give objects toxins as an origin_tech
      • +
    • +
    • tgs_chat_channel - Represents a connected chat channel.
    • +
    • tgs_chat_command - User definable chat command.
    • +
    • tgs_chat_embed
        +
      • 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.
      • +
    • +
    • tgs_chat_user
    • +
    • tgs_event_handler - User definable handler for TGS events.
    • +
    • tgs_message_content - User definable chat message.
    • +
    • tgs_revision_information - Represents git revision information.
        +
      • test_merge - Represents a merge of a GitHub pull request.
      • +
    • +
    • tgs_version - Represents a version.
    • +
    • tgui - Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT
    • +
    • tgui_alert - Datum used for instantiating and using a TGUI-controlled modal that prompts the user with +a message and has buttons for responses.
    • +
    • tgui_input_number - Datum used for instantiating and using a TGUI-controlled number input that prompts the user with +a message and has an input for number entry.
    • +
    • tgui_input_text - tgui_input_text
    • +
    • tgui_list_input - Client does NOT have tgui_input on: Returns regular input
    • +
    • 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
    • +
    • theft_objective - .
    • +
    • thrownthing
    • +
    • ticket
    • +
    • ticket_response
    • +
    • tilt_crit - Framework for custom vendor crits.
    • +
    • Timed Event - This is the actual timer, it contains the callback and necessary data to maintain +the timer.
    • +
    • traders
    • +
    • transaction
    • +
    • transfer_request
    • +
    • ui_login - Login state (there should be only one for one datum)
    • +
    • ui_modal - Modal datum (contains base information for a modal)
        +
      • boolean - Boolean modal - has yes/no buttons that do different actions depending on which is pressed
      • +
      • input - Input modal - has a text entry that can be used to enter an answer
          +
        • bento - Bento modal - Similar to choice, it displays the choices in a grid of images
        • +
        • choice - Choice modal - has a dropdown menu that can be used to select an answer
        • +
      • +
    • +
    • ui_module
    • +
    • ui_state
    • +
    • uplink_item
        +
      • 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.
      • +
      • species_restricted/prescan
      • +
      • stealthy_weapons/combat_minus - Nukies get combat gloves plus instead
      • +
    • +
    • vampire_subclass
    • +
    • virology_goal
    • +
    • vote
    • +
    • weather/solar_flare
    • +
    • wires
    • +
    • world_topic_handler
    • +
    • world_topic_spam_prevention_handler
    • +
    • zlev_manager
    • +
  • +
  • mob
      +
    • camera/aiEye/remote/xenobio
    • +
    • dead/observer
    • +
    • living
        +
      • carbon
      • +
      • silicon
      • +
      • simple_animal
          +
        • bot
            +
          • floorbot
          • +
          • mulebot
          • +
          • secbot/griefsky - This bot is powerful. If you managed to get 4 eswords somehow, you deserve this horror. Emag him for best results.
              +
            • toy - A toy version of general griefsky!
            • +
          • +
        • +
        • butterfly
        • +
        • demon
            +
          • pulse_demon
          • +
          • slaughter - The Monster
              +
            • cult - Summoned as part of the cult objective "Bring the Slaughter"
            • +
          • +
        • +
        • hostile
            +
          • asteroid/elite
              +
            • 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:
            • +
          • +
          • blob - You will appear adjacent to the beacon
          • +
          • construct
              +
            • armoured - Juggernaut
                +
              • hostile - actually hostile, will move around, hit things
              • +
            • +
            • behemoth - Behemoth
                +
              • hostile - actually hostile, will move around, hit things
              • +
            • +
            • builder - Artificer
                +
              • hostile - actually hostile, will move around, hit things, heal other constructs
              • +
            • +
            • harvester - Harvester
                +
              • hostile - actually hostile, will move around, hit things
              • +
            • +
            • wraith - Wraith
                +
              • hostile - actually hostile, will move around, hit things
                  +
                • bubblegum - Used in bubblegum summoning. Needs MOB_SIZE_LARGE so crushers don't suffer
                • +
              • +
            • +
          • +
          • gorilla
          • +
          • guardian
          • +
          • illusion
              +
            • cult - Cult Illusions
            • +
            • escape - Actual Types
            • +
            • mirage - It's just standing there, menacingly
            • +
          • +
          • malf_drone
          • +
          • megafauna
          • +
          • mimic/copy/vendor
          • +
          • morph
          • +
          • poison
          • +
          • syndicate/melee - Sword and shield
          • +
          • winter/santa
              +
            • stage_1 - stage 1: slow melee
            • +
            • stage_2 - stage 2: slow ranged
            • +
            • stage_3 - stage 3: fast rapidfire ranged
            • +
            • stage_4 - stage 4: fast spinebreaker
            • +
          • +
        • +
        • lizard
        • +
        • parrot
        • +
        • pet
            +
          • cat/cak
          • +
          • dog
              +
            • corgi
                +
              • puppy/void - Tribute to the corgis born in nullspace
              • +
            • +
            • pug - Pugs
            • +
          • +
        • +
        • possessed_object
        • +
        • revenant
        • +
        • slime
        • +
      • +
    • +
  • +
  • obj
      +
    • airlock_filler_object
    • +
    • docking_port/mobile
    • +
    • effect
        +
      • 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
        • +
        • Basic Proximity Checker - Inteded for use with the proximity checker component /datum/component/proximity_monitor. +Whenever a movable atom crosses this object, it calls HasProximity() on the object which is listening for proximity (hasprox_receiver).
        • +
      • +
      • anomaly
      • +
      • baseturf_helper - Set the baseturfs of every turf in the /area/ it is placed.
      • +
      • beam/i_beam - IBeam
      • +
      • clockwork/overlay/floor/bloodcult - this is used by BLOOD CULT, it shouldn't use such a path...
      • +
      • Contractor Extraction Flare - Used to designate where the /obj/effect/portal/advanced/contractor should spawn during the extraction process.
      • +
      • countdown
      • +
      • cross_action/spacetime_dist
      • +
      • decal/cleanable
          +
        • blood
            +
          • gibs/cleangibs - most ironic name ever...
          • +
          • slime - this is the alien blood file, slimes are aliens.
          • +
        • +
        • confetti - PARTY TIME!
        • +
        • pie_smudge - honk
        • +
        • tar
        • +
        • trail_holder - not a child of blood on purpose
        • +
      • +
      • dummy/slaughter - Can't use the wizard one, blocked by jaunt/slow
      • +
      • gibspawner
      • +
      • gluttony - Gluttony's wall: Used in the Gluttony ruin. Only lets the overweight through.
      • +
      • guardianshield
      • +
      • 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 - Audio - Plays a random sound.
            +
          • Hallucination - Audio (Localized) - Plays a random sound at a random location around the target.
          • +
        • +
        • Hallucination - Bolts - Visually bolts a random number of airlocks around the target.
            +
          • Hallucination - Bolts (Moderate) - A variation that affects more airlocks.
          • +
        • +
        • Hallucination - Chaser - A generic hallucination that chases the target.
        • +
        • Hallucination - Chasms - Displays fake chasms around the target that if crossed, cause them to trip.
        • +
        • Hallucination - Delamination Alarm - A fake radio message and audio that alerts of an increasing SM unstability.
        • +
        • Hallucination - Delusion - Changes the appearance of all humans around the target.
        • +
        • Hallucination - Energy Sword - A series of localized audio playback simulating an energy sword murder.
        • +
        • Hallucination - Fake Alert - Displays a random alert on the target's HUD.
        • +
        • Hallucination - Fake Danger - Sends a random danger message to the target's chat.
        • +
        • 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 - Fake Weapon - Displays a random fake weapon wielded by a human around the target.
        • +
        • Hallucination - Gunfire - A series of localized audio playback simulating a gunshot murder.
        • +
        • Hallucination - Husks - A random number of fake husks around the target.
        • +
        • Hallucination - Loose Energy Ball - A progressive hallucination that begins with intermittent explosions, before displaying an energy ball that shocks the target.
        • +
        • Hallucination - Plasma Flood - A fake plasma flood emanating from a nearby vent.
        • +
        • Hallucination - Self Delusion - Changes the target's appearance to something else temporarily.
        • +
        • Hallucination - Speech - Causes the target to hear a fake message from a random mob around them.
        • +
        • Hallucination - Stunprodding - A series of localized audio playback simulating a kidnapping with a stunprod.
        • +
        • Hallucination - Terror Infestation - Creates spider webs and a terror spider near a random vent around the target.
        • +
        • Hallucination - Tripper - A generic hallucination that causes the target to trip if they cross it.
            +
          • Hallucination - Chasm - A fake chasm that if crossed by the target, causes them to trip.
          • +
          • Hallucination - Spider Web - A fake spider web that trips the target if crossed.
          • +
        • +
        • Hallucination - Xeno Pounce - An imaginary alien hunter pounces towards the target.
        • +
        • xeno_pouncer
        • +
      • +
      • hotspot/fake - Largely for the fireflash procs below
      • +
      • immovablerod
      • +
      • landmark
          +
        • mob_spawner - Mob spawners, spawns a mob and deletes the landmark
            +
          • goldgrub - 75% chance to get a magmawing watcher, and 25% chance to get a icewing watcher (1/133, 1/400 respectively)
          • +
        • +
        • newplayer_start - There should only be one of these, in the lobby art area
        • +
        • river_waypoint
        • +
      • +
      • light_emitter - Light
      • +
      • mapping_helpers/bombable_wall - Apply to a wall (or floor, technically) to ensure it is instantly destroyed by any explosion, even if usually invulnerable
      • +
      • mazegen
      • +
      • mob_spawn
          +
        • corpse - these mob spawn subtypes trigger immediately (New or Initialize) and are not player controlled... since they're dead, you know?
        • +
        • human
            +
          • alive/space_bar_patron - Alive ones, used as "core" for ghost roles now and in future.
          • +
          • corpse/abductor - Corpses, they can be used for "decoration" purpose.
          • +
        • +
        • mouse - Non-human spawners
        • +
      • +
      • particle_effect
          +
        • ion_trails - Ion trails for jetpacks, ion thrusters and other space-flying things
        • +
        • smoke - SMOKE SYSTEMS
        • +
        • sparks/sparkles - SPARKLE FIREWORKS
        • +
      • +
      • portal
      • +
      • rune
          +
        • Blood Boil Rune - When invoked deals up to 30 burn damage to nearby non-cultists and sets them on fire.
        • +
        • wall
        • +
      • +
      • spawner
          +
        • airlock/long - Long and thin
            +
          • square - Square
          • +
        • +
        • 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.
        • +
        • lootdrop
        • +
        • random_barrier/possibly_welded_airlock - these have no access restrictions, so for internal maintenance only
        • +
        • themed_mess
        • +
        • window/reinforced/polarized
        • +
      • +
      • tear - The portal used in the /datum/event/tear midround.
      • +
      • temp_visual
          +
        • decoy/mephedrone_afterimage
        • +
        • dragon_swoop/bubblegum/ancient_robot - this is the worst path I have ever made
        • +
        • explosion
        • +
        • getaway_flare - Because the original contractor flare is not a temp visual, for some reason.
        • +
        • heal - color is white by default, set to whatever is needed
        • +
        • hierophant
            +
          • chaser - a hierophant's chaser. follows target around, moving and producing a blast every speed deciseconds.
          • +
          • wall - smoothing and pooling were not friends, but pooling is dead.
          • +
        • +
        • single_user - A visual effect that will be shown only to a particular user for a period of time.
        • +
        • sonar_ping
        • +
      • +
      • watcher_orbiter - Orbiting visual which shoots at mining mobs
      • +
    • +
    • item
        +
      • abductor/gizmo - SCIENTIST GEAR
      • +
      • aiModule
          +
        • antimov - Antimov +-- TLE
        • +
        • asimov - Asimov +-- TLE
        • +
        • cctv - CCTV
        • +
        • corp - Corporate
        • +
        • crewsimov - Crewsimov +-- TLE
        • +
        • drone - Drone
        • +
        • freeform - New Freeform +Slightly more dynamic freeform module -- TLE
        • +
        • freeformcore - Freeform Core +Slightly more dynamic freeform module -- TLE
        • +
        • hippocratic - Hippocratic Oath
        • +
        • maintain - Station Efficiency
        • +
        • nanotrasen - Nanotrasen +-- TLE
        • +
        • nanotrasen_aggressive - NT Aggressive
        • +
        • oneCrewMember - oneCrewMember
        • +
        • oxygen - OxygenIsToxicToCrew
        • +
        • paladin - P.A.L.A.D.I.N. +-- NEO
        • +
        • peacekeeper - Peacekeeper
        • +
        • pranksimov - Pranksimov
        • +
        • protectStation - ProtectStation
        • +
        • purge - Purge +-- TLE
        • +
        • quarantine - Quarantine
        • +
        • reset - Reset
        • +
        • robocop - Robocop +-- TLE
        • +
        • safeguard - Safeguard
        • +
        • syndicate - Hacked AI Module +Slightly more dynamic freeform module -- TLE
        • +
        • toyAI - Ion Module +-- Incoming //No actual reason to inherit from ion boards here, either. sigh ~Miauw
        • +
        • tyrant - T.Y.R.A.N.T. +-- Darem
        • +
      • +
      • airlock_electronics
      • +
      • ammo_box/magazine
          +
        • internal - INTERNAL MAGAZINES
        • +
        • laser/ert - Used by red ERT. Keeps the size for them
        • +
        • m10mm - EXTERNAL MAGAZINES
        • +
        • wt550m9
        • +
      • +
      • ammo_casing
          +
        • energy
            +
          • arc_revolver
          • +
          • 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
          • +
        • +
      • +
      • analyzer - GAS ANALYZER
      • +
      • antag_spawner
          +
        • morph - MORPH
        • +
        • nuke_ops - BORGS AND OPERATIVES
            +
          • borg_tele - SYNDICATE BORG
          • +
        • +
        • pulse_demon - Pulse Demon
        • +
        • revenant - Revenant
        • +
        • slaughter_demon - ////////SLAUGHTER DEMON +Warning edgiest item in the game
        • +
      • +
      • assembly
      • +
      • Banhammer
      • +
      • barcodescanner
      • +
      • barsign_electronics
      • +
      • batterer
      • +
      • beach_ball
      • +
      • beacon/bacon - Probably a better way of doing this, I'm lazy.
      • +
      • bedsheet/fluff/hugosheet - HugoLuman: Dan Martinez
      • +
      • bikehorn/fluff/pinkbikehorn - Xerdies: Squiddle Toodle
      • +
      • Implants - Code for implants that can be inserted into a person and have some sort of passive or triggered action.
          +
        • explosive
        • +
        • gorilla_rampage - Dumb path but easier to search for admins
        • +
        • mod
        • +
        • Stealth Implant - Implant which allows you to summon an MGS-style cardboard box that turns you invisble after a short delay.
        • +
        • traitor
        • +
      • +
      • blank_tarot_card
      • +
      • bodyanalyzer - BODY ANALYZERS
      • +
      • bombcore - Bomb Cores
          +
        • training - Bomb Core Subtypes
        • +
      • +
      • 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.
          +
        • granter - Books that teach things.
        • +
        • 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
          • +
        • +
      • +
      • borg - Cyborg Spec Items
      • +
      • butcher_chainsaw - CHAINSAW
      • +
      • camera - camera
          +
        • digital - digital camera
        • +
        • siliconcam
            +
          • ai_camera - camera AI can take pictures with
          • +
          • drone_camera - currently doesn't offer the verbs, thus cannot be used
          • +
          • robot_camera - camera cyborgs can take pictures with
          • +
        • +
      • +
      • camera_bug
      • +
      • camera_film - film
      • +
      • candle
      • +
      • card
          +
        • id
        • +
        • mining_point_card - Mining Point Card
        • +
      • +
      • cardboard_cutout/adaptive - Purchased by Syndicate agents, these cutouts are indistinguishable from normal cutouts but aren't discolored when their appearance is changed
      • +
      • cardhand
      • +
      • cartridge
          +
        • syndicate/nuclear - needed subtype so regular traitors can't open and close nuclear shuttle doors
        • +
      • +
      • circuitboard
          +
        • mecha - Circuitboards
        • +
      • +
      • claymore/fluff - MrBarrelrolll: Maximus Greenwood
      • +
      • clockwork/alloy_shards/medium/gear_bit/large - gives more power
      • +
      • clothing
          +
        • accessory
            +
          • medal
              +
            • fluff
                +
              • XannZxiax - Sagrotter: Xann Zxiax
              • +
              • elo - V-Force_Bomber: E.L.O.
              • +
              • panzermedal - PanzerSkull: GRN-DER
              • +
            • +
            • gold/heroism/hardmode_full - Kill every hardmode boss. In a shift. Good luck.
            • +
            • recruiter - Prize for the NT Recruiter emagged arcade
            • +
          • +
          • necklace/locket/fluff/fethasnecklace - Fethas: Sefra'neem
          • +
          • pin/pride
          • +
          • rbscarf - Rb303: Isthel Eisenwald
          • +
          • scarf - No overlay
          • +
          • waistcoat - No overlay
          • +
        • +
        • ears/headphones
        • +
        • glasses
            +
          • hud
              +
            • security/sunglasses/fluff
                +
              • eyepro - ///////// Clothing ////////////
              • +
              • voxxyhud - LP Spartan: Kaskreyarawkta
              • +
            • +
          • +
          • meson
              +
            • engine/tray - atmos techs have lived far too long without tray goggles while those damned engineers get their dual-purpose gogles all to themselves
            • +
            • fluff/book_berner_1 - Adrkiller59: Adam Cooper
            • +
          • +
          • monocle/fluff/trubus - Trubus: Wolf O'Shaw
          • +
          • sunglasses_fake/fluff/kaki - Rapidvalj: Kakicharakiti
          • +
        • +
        • gloves
            +
          • color
              +
            • black/krav_maga/combat - for nukies
            • +
            • fyellow - Cheap Chinese Crap
            • +
          • +
          • ring
              +
            • fluff/benjaminfallout - Benjaminfallout: Pretzel Brassheart
            • +
            • silver/blessed - todo
            • +
          • +
        • +
        • head
            +
          • beanie - Default is white, this is meant to be seen
          • +
          • beret/purple - Fluff?
          • +
          • cardborg
          • +
          • fluff
              +
            • chronx - chronx100: Hughe O'Splash
            • +
            • elo - V-Force_Bomber: E.L.O.
            • +
            • heather_winceworth - ///////// Hats //////////// +Regens: Heather Winceworth
            • +
            • kaki - Rapidvalj: Kakicharakiti
            • +
            • kiahat - FullOfSkittles: Kiachi
            • +
            • lfbowler - Lightfire: Hyperion
            • +
            • linda - Epic_Charger: Linda Clark
            • +
            • pinesalad_horns - Pineapple Salad: Dan Jello
            • +
            • sigholt - sigholtstarsong: Sigholt Starsong
            • +
            • sparkyninja_beret - Sparkyninja: Neil Wilkinson
            • +
          • +
          • helmet
              +
            • abductor - AGENT GEAR
            • +
            • fluff/merchant_sallet - Travelling Merchant: Trav Noble. This >>IS NOT<< what they spawn in with
            • +
            • space/plasmaman/lf53_fluff - LightFire53: Ikelos
            • +
          • +
          • hooded
              +
            • berserker
            • +
            • hood/fluff
                +
              • linda - Epic_Charger: Linda Clark
              • +
              • shesi - MrSynnester : Shesi Skaklas
              • +
              • xantholne - Xantholne: Meex Zwichsnicrur
              • +
            • +
          • +
          • pirate/fluff/stumpy - MrFroztee: Stumpy
          • +
          • stalhelm - Why do these exist - Because they aren't specifically Nazi Germany
          • +
          • valkyriehelmet - R3Valkyrie: Rikki
          • +
          • wizard/fake/fluff/dreamy - phantasmicdream : Dreamy Rockwall
          • +
        • +
        • mask
            +
          • bandana/fluff/dar - ///////// Masks //////////// +sasanek12: Dar'Konr
          • +
          • facehugger
              +
            • toy - Mining Equipment Vendor Items
            • +
          • +
          • gas
              +
            • fluff
                +
              • kiamask - FullOfSkittles: Kiachi
              • +
              • kikerimask - Gangelwaefre: Kikeri
              • +
              • yahiyamask - Asmerath: Yahiya
              • +
            • +
            • sechailer/fluff/spartan - LP Spartan: Kaskreyarawkta
            • +
          • +
          • holo_cigar
          • +
          • muzzle
          • +
        • +
        • shoes
            +
          • black/fluff/chronx - chronx100: Hughe O'Splash
          • +
          • combat - basic syndicate combat boots for nuke ops and mob corpses
              +
            • swat - overpowered gimmick boots
            • +
          • +
          • galoshes/dry/lightweight - for red janitor ert.
          • +
          • magboots
              +
            • elite - For the Syndicate Strike Team/SolGov/Tactical Teams
            • +
            • wizard - bundled with the wiz hardsuit
            • +
          • +
        • +
        • suit
            +
          • advanced_protective_suit - Advanced Protective Suit, AKA, God Mode in wearable form.
          • +
          • armor
              +
            • reactive
                +
              • random - Spawner for random reactive armor
              • +
              • repulse
              • +
            • +
            • shodanscoat - RazekPraxis: SHODAN
            • +
            • vest/fluff/tactical - m3hillus: Medusa Schlofield
            • +
          • +
          • bloated_human - OH MY GOD WHAT HAVE YOU DONE!?!?!?
          • +
          • chaplain_hoodie/fluff/chronx - chronx100: Hughe O'Splash
          • +
          • draculacoat - Bleh!
          • +
          • fluff - Suits
              +
            • cheeky_sov_coat - CheekyCrenando: Srusu Rskuzu
            • +
            • dusty_jacket - ComputerlessCitizen: Screech
            • +
            • kluys - Kluys: Cripty Pandaen
            • +
            • pineapple - Pineapple Salad: Dan Jello
            • +
            • stobarico_greatcoat - Stobarico: F.U.R.R.Y
            • +
            • supplymaster_jacket - Denthamos: Henry Grandpa Gadow
            • +
            • vetcoat - Furasian: Fillmoore Grayson
                +
              • navy - Furasian: Fillmoore Grayson
              • +
              • red - Furasian: Fillmoore Grayson
              • +
            • +
          • +
          • hooded
              +
            • bee_costume - It's Hip!
            • +
            • cultrobes/cult_shield
            • +
            • explorer - Explorer's Suit and Mask
            • +
            • fluff/bone - Doru7: Jack Bone
            • +
            • hoodie
                +
              • fluff
                  +
                • linda - Epic_Charger: Linda Clark
                • +
                • xantholne - Xantholne: Meex Zwichsnicrur
                • +
                • xydonus - Xydonus: Rsik Ugsharki Atan | Based off of the bomber jacket, but with a hood slapped on (for allowed suit storage)
                • +
              • +
              • hylo - Hylocereus: Sam Aria
              • +
            • +
            • wintercoat/fluff/shesi - MrSynnester : Shesi Skaklas
            • +
          • +
          • jacket
              +
            • dtx - AffectedArc07: DTX
            • +
            • fluff
                +
              • elliot_windbreaker - DaveTheHeadcrab: Elliot Campbell
              • +
              • jacksvest - Anxipal: Jack Harper
              • +
              • kidosvest - Anxipal: Kido Qasteth
              • +
            • +
            • miljacket/patch - sniper_fairy : P.A.T.C.H.
            • +
          • +
          • storage
              +
            • fox - Shoes +Sets
            • +
            • labcoat/fluff
                +
              • aeneas_rinil - Socialsystem: Lynn Fea
              • +
              • ionward_labcoat - Ionward: Gemini
              • +
              • pulsecoat - ozewse : Daniel Harper : Donated to them by Runemeds, who is the original donor.
              • +
              • red - Sweetjealousy: Sophie Faust-Noms
              • +
            • +
          • +
        • +
        • under
            +
          • color/purple/sensor - for jani ert
          • +
          • fluff - Uniforms
              +
            • aegis - PlagueWalker: A.E.G.I.S.
            • +
            • benjaminfallout - Benjaminfallout: Pretzel Brassheart
            • +
            • counterfeitguise_uniform - thatdanguy23 : Rissa Williams
            • +
            • elishirt - FlattestGuitar9: Eli Randolph
            • +
            • elo_turtleneck - vforcebomber: E.L.O.
            • +
            • honourable - MrBarrelrolll: Maximus Greenwood
            • +
            • jane_sidsuit - SyndiGirl: Zoey Scyth
            • +
            • jay_turtleneck - Jayfeather: Jay Wingler
            • +
            • kharshai - Kharshai: Athena Castile
            • +
            • kiaoutfit - FullOfSkittles: Kiachi
            • +
            • kikeridress - Gangelwaefre: Kikeri
            • +
            • lfvicsuit - Lightfire: Hyperion
            • +
            • soviet_casual_uniform - Norstead : Natalya Sokolova
            • +
            • xantholne - Xantholne: Meex Zwichsnicrur
            • +
          • +
          • psysuit - Don't modify the path, used by a fluff item
              +
            • fluff/isaca_sirius_1 - Xilia: Isaca Sirius
            • +
          • +
          • rank/medical/gown - Seems like it should be here for organisational purposes
          • +
        • +
      • +
      • contract - Apprentice Contract
      • +
      • Contractor Uplink - A contractor's point of contact with their Contractor Hub.
      • +
      • crowbar/fluff/zelda_creedy_1 - Zomgponies: Griffin Rowley
      • +
      • crusher_trophy
      • +
      • crutches
      • +
      • deck
          +
        • unum - A deck of unum cards. Classic.
        • +
      • +
      • defibrillator
      • +
      • desk_bell
      • +
      • destTagger
      • +
      • detonator
      • +
      • dice - depreciated d6, use /obj/item/dice/d6 if you actually want a d6
      • +
      • disk/nuclear
      • +
      • door_remote/janikeyring
      • +
      • eftpos
      • +
      • electropack
      • +
      • encryptionkey
          +
        • heads/ai_integrated - ported from bay, this goes 'inside' the AI.
        • +
        • syndicate/all_channels - has to be a subtype and stuff
        • +
      • +
      • envelope
      • +
      • extinguisher
      • +
      • fireaxe - DEM AXES MAN, marker -Agouri
          +
        • boneaxe - Blatant imitation of the fireaxe, but made out of bone.
        • +
      • +
      • flash
          +
        • synthetic - just a regular flash now
        • +
      • +
      • flashlight
          +
        • lantern - Lantern
        • +
        • spotlight - invisible lighting source
        • +
      • +
      • fluff
          +
        • bird_painter - BirdtTalon: Kahkiri
        • +
        • cardgage_helmet_kit - captain cardgage: Richard Ulery
        • +
        • desolate_baton_kit - DesolateG: Micheal Smith
        • +
        • desolate_coat_kit - DesolateG: Micheal Smith
        • +
        • dogwhistle - phantasmicdream: Zeke Varloss
        • +
        • fei_gasmask_kit - Fei Hazelwood: Tariq Yon-Dale
        • +
        • k3_webbing_modkit - IK3I: Yakikatachi
        • +
        • lighty_plasman_modkit - LightFire53: Ikelos
        • +
        • merchant_sallet_modkit - Travelling Merchant: Trav Noble. This is what they spawn in with
        • +
        • pinapplehairgel - Pineapple Salad: Dan Jello
        • +
        • pyro_wintersec_kit - DarkLordpyro: Valthorne Haliber
        • +
        • rapid_wheelchair_kit - Rapidvalj: Hakikarahiti
        • +
        • rsik_katana - Xydonus: Rsik Ugsharki Atan
        • +
        • sylus_conversion_kit - Decemviri: Sylus Cain
        • +
        • tattoo_gun - Generic tattoo gun, make subtypes for different folks
        • +
        • zekemirror - phantasmicdream : Zeke Varloss
        • +
      • +
      • food - Food.
          +
        • snacks
            +
          • badrecipe - FOOD END
          • +
          • choc_pile - for reagent chocolate being spilled on turfs
          • +
          • chocolatebar
          • +
          • cookiedough - cookies by Ume
          • +
          • customizable
              +
            • fullycustom - In the event you fuckers find something I forgot to add a customizable food for.
            • +
          • +
          • egg/watcher - Egg which hatches into a helpful pet. Or you can eat it if you want.
          • +
          • grown
              +
            • ash_flora/shavings - for actual crafting
            • +
          • +
          • mashed_potatoes - mashed taters
          • +
          • warmdonkpocket
          • +
        • +
      • +
      • garrote - 12TC traitor item
          +
        • improvised - Made via tablecrafting
        • +
      • +
      • geiger_counter - DISCLAIMER: I know nothing about how real-life Geiger counters work. This will not be realistic. ~Xhuis
      • +
      • GPS - A small item that reports its current location. Has a tag to help distinguish between them.
      • +
      • grenade
          +
        • barrier/dropwall
        • +
        • chem_grenade
            +
          • adv_release - Intended for weaker, but longer lasting effects. Could have some interesting uses.
          • +
          • cryo - Intended for rare cryogenic mixes. Cools the area moderately upon detonation.
          • +
          • pyro - Intended for pyrotechnical mixes. Produces a small fire upon detonation, igniting potentially flammable mixtures.
          • +
        • +
        • clusterbuster/mega_bang - Clusterbuster of Clusterbusters
        • +
        • cryogrenade_mod
        • +
        • jaunter_grenade
        • +
        • mirage
        • +
        • plastic
        • +
        • smokebomb - We need to clear the walk_to on destroy to allow a grenade which uses walk_to or related to properly GC
        • +
      • +
      • gripper
          +
        • universal - Universal gripper. Not supplied to any cyborg by default. Could be varedited onto a borg for event stuff. Functions almost like a real hand!
        • +
      • +
      • grown - Grown weapons
          +
        • bananapeel/specialpeel - used by /obj/item/clothing/shoes/clown_shoes/banana_shoes
        • +
        • nettle - abstract type
        • +
        • sunflower - FLOWER POWER!
        • +
      • +
      • guardiancreator - Creation
      • +
      • gun
          +
        • energy
        • +
        • projectile
            +
          • revolver/fingergun - Summoned by the Finger Gun spell, from advanced mimery traitor item
          • +
          • shotgun
              +
            • automatic/combat/cyborg - Service Malfunction Borg Combat Shotgun Variant
            • +
            • riot - for spawn in the armory
            • +
          • +
        • +
        • syringe
            +
          • blowgun - craftable bamboo syringe gun
          • +
          • rapidsyringe
              +
            • preloaded - Version that comes pre-loaded with a given amount of syringes.
                +
              • beaker_blaster - For shenanigans. This is essentially an RSG that never needs to be refilled with syringes.
              • +
              • half - Version that comes loaded with half of the standard amount of syringes. Used in the uplink.
              • +
            • +
          • +
        • +
        • syringemalf - Malf Syringe Gun
        • +
      • +
      • hand_tele
      • +
      • handheld_defibrillator
      • +
      • his_grace
      • +
      • hivelordstabilizer - Hivelord stabilizer
      • +
      • inflatable/cyborg
      • +
      • instrument
          +
        • guitar/cyborg - This is a special guitar for the emagged service borg that hits pretty hard and can still play music. Clonk.
        • +
      • +
      • kinetic_crusher - Mining Hammer
      • +
      • kirbyplants
      • +
      • kitchen
          +
        • cutter - circular cutter by Ume
        • +
        • knife/envy - Envy's knife: Found in the Envy ruin. Attackers take on the appearance of whoever they strike.
        • +
      • +
      • lazarus_injector - Lazarus Injector
      • +
      • Light item - Parent type of light fittings (Light bulbs, light tubes)
      • +
      • lighter
          +
        • zippo/fluff
            +
          • duckchan - Duckchan: Rybys Romney
          • +
          • michael_guess_1 - mrbits: Callista Gold
          • +
          • purple - GodOfOreos: Jason Conrad
          • +
          • warriorstar - Warriorstar: DEADLOCK
          • +
        • +
      • +
      • lightreplacer
      • +
      • magic_tarot_card
      • +
      • mail_scanner
      • +
      • malf_upgrade - AI Upgrades
      • +
      • matter_decompiler
      • +
      • mecha_parts - Mecha Parts
          +
        • chassis
            +
          • durand - Durand
          • +
          • firefighter - Firefighter
          • +
          • gygax - Gygax
          • +
          • honker - HONK
          • +
          • odysseus - Odysseus
          • +
          • phazon - Phazon
          • +
          • reticence - Reticence
          • +
          • ripley - Ripley
          • +
        • +
        • mecha_equipment
            +
          • anticcw_armor_booster - ///////////////////////// ARMOR BOOSTER MODULES ////////////////////////////////////////////////////////// +what is that noise? A BAWWW from TK mutants.
          • +
          • generator - GENERATOR
          • +
          • gravcatapult - GRAVITATIONAL CATAPULT
          • +
          • repair_droid - REPAIR DROID
          • +
          • teleporter - TELEPORTER
          • +
          • tesla_energy_relay - TESLA ENERGY RELAY
          • +
          • weapon/ballistic - else the mousetraps are useless
          • +
        • +
      • +
      • megaphone
      • +
      • melee
      • +
      • mine_bot_upgrade - Minebot Upgrades
      • +
      • mining_drone_cube - Mining drone cube
      • +
      • mining_scanner - Mining Scanner
      • +
      • mining_voucher - Mining Equipment Voucher
      • +
      • mmi
      • +
      • mobcapsule - Mob Capsule
      • +
      • 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.
          • +
        • +
        • control
            +
          • pre_equipped
              +
            • mining
                +
              • asteroid - The asteroid skin, as that one looks more space worthy / older. Good for space ruins.
              • +
              • vendor - visit robotics.
              • +
            • +
            • responsory
                +
              • inquisitory - Diffrent look, as well as magic proof on TG. We don't have the magic proof stuff here, but it's perfect for inqusitors. Or if you want to give your ERT a fancy look.
              • +
            • +
          • +
        • +
        • core
        • +
        • module - MOD Module - A special device installed in a MODsuit allowing the suit to do new stuff.
            +
          • active_sonar - Active Sonar - Displays a hud circle on the turf of any living creatures in the given radius
          • +
          • anomaly_locked - Anomaly Locked - Causes the module to not function without an anomaly.
              +
            • cryogrenade - Cryogrenade. Freezes foes in place, cools them
            • +
            • firewall - Firewall. Deployable dropwall that lights projectiles on fire.
            • +
            • kinesis - Kinesis - Gives you the ability to move and launch objects.
            • +
            • teleporter - Teleporter - Lets the user teleport to a nearby location.
            • +
            • teslawall
            • +
            • 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
            • +
          • +
          • armor_booster - Armor Booster - Grants your suit more armor and speed in exchange for EVA protection. Also acts as a welding screen.
          • +
          • ash_accretion
          • +
          • balloon - Balloon Blower - Blows a balloon.
          • +
          • bikehorn - Bike Horn - Plays a bike horn sound.
          • +
          • boot_heating
          • +
          • chameleon - Chameleon - lets the suit disguise as any item that would fit on that slot.
          • +
          • clamp - Hydraulic Clamp - Lets you pick up and drop crates.
          • +
          • defibrillator - Defibrillator - Gives the suit an extendable pair of shock paddles.
          • +
          • dispenser - Dispenser - Dispenses an item after a time passes.
              +
            • mirage - Mirage grenade dispenser - Dispenses grenades that copy the user's appearance.
            • +
            • smoke - Smoke Grenade Module, its tacticool.
            • +
          • +
          • dna_lock
          • +
          • drill - Drill - Lets you dig through rock and basalt.
          • +
          • emp_shield - EMP Shield - Protects the suit from EMPs.
          • +
          • energy_shield - Energy Shield - Gives you a rechargeable energy shield that nullifies attacks.
          • +
          • ert_camera - Camera Module - Puts a camera in the modsuit that the ERT commander can see
          • +
          • firefighting_tank - Atmos water tank module
          • +
          • flashlight - Flashlight - Gives the suit a customizable flashlight.
          • +
          • gps - Internal GPS - Extends a GPS you can use.
          • +
          • holster - Holster - Instantly holsters any not huge gun.
          • +
          • hydraulic
          • +
          • injector - Injector - Gives the suit an extendable large-capacity piercing syringe.
          • +
          • insignia - Insignia - Gives you a skin specific stripe.
          • +
          • jetpack - Ion Jetpack - Lets the user fly freely through space using battery charge.
          • +
          • magboot - Magnetic Stability - Gives the user a slowdown but makes them negate gravity and be immune to slips.
          • +
          • monitor - Crew Monitor - Deploys or retracts a built-in handheld crew monitor
          • +
          • noslip - Anti Slip - Prevents you from slipping on water.
          • +
          • orebag - Ore Bag - Lets you pick up ores and drop them from the suit.
          • +
          • pathfinder - Pathfinder - Can fly the suit from a long distance to an implant installed in someone.
          • +
          • plasma_stabilizer - Plasma Stabilizer - Prevents plasmamen from igniting in the suit
          • +
          • plate_compression - Plate Compression - Compresses the suit to normal size
          • +
          • power_kick - Power kick - Lets the user launch themselves at someone to kick them.
          • +
          • rad_protection - Radiation Protection - Gives the user rad info in the ui, currently
          • +
          • reagent_scanner - Reagent Scanner - Lets the user scan reagents.
          • +
          • sphere_transform
          • +
          • springlock - Springlock Mechanism - allows your modsuit to activate faster, but reagents are very dangerous.
          • +
          • stamp - Stamper - Extends a stamp that can switch between accept/deny modes.
          • +
          • status_readout - Status Readout - Puts a lot of information including health, nutrition, fingerprints, temperature to the suit TGUI.
          • +
          • stealth - Cloaking - Lowers the user's visibility, can be interrupted by being touched or attacked.
          • +
          • storage - Storage - Adds a storage component to the suit.
          • +
          • t_ray - T-Ray Scan - Scans the terrain for undertile objects.
          • +
          • tether - Emergency Tether - Shoots a grappling hook projectile in 0g that throws the user towards it.
          • +
          • thermal_regulator - Thermal Regulator - Regulates the wearer's core temperature.
          • +
          • visor - Base Visor - Adds a specific HUD and traits to you.
          • +
          • welding - Welding Protection - Makes the helmet protect from flashes and welding.
          • +
        • +
      • +
      • mod_defib
      • +
      • mop
          +
        • advanced/abductor - JANITORIAL TOOLS
        • +
      • +
      • mounted/frame
          +
        • alarm_frame - Handheld air alarm frame, for placing on walls.
        • +
        • light_fixture
        • +
      • +
      • multisword/pike - If We are to be used and spent, let it be for a noble purpose.
      • +
      • multitool - Multitool -- A multitool is used for hacking electronic devices.
      • +
      • necromantic_stone - Necromantic Stone
      • +
      • Newspaper - A newspaper displaying the stories of all channels contained within.
      • +
      • nuke_core/plutonium - The steal objective, so it doesnt mess with the SM sliver on pinpointers and objectives
      • +
      • nullrod
          +
        • claymore/bostaff - May as well make it a "claymore" and inherit the blocking
        • +
        • ert - ERT subtype, applies sanctified property to any derived rod
        • +
        • fluff - fluff subtype to be used for all donator nullrods
            +
          • chronx - chronx100: Hughe O'Splash
          • +
        • +
      • +
      • offhand - The offhand dummy item for two handed items
      • +
      • organ
          +
        • external - EXTERNAL ORGANS
            +
          • chest - ORGAN DEFINES
          • +
        • +
        • internal
            +
          • alien
          • +
          • appendix/diona - Turns into a nymph instantly, no transplanting possible.
          • +
          • body_egg/alien_embryo
          • +
          • brain
              +
            • diona - Turns into a nymph instantly, no transplanting possible.
            • +
          • +
          • cyberimp
              +
            • arm/janitorial/advanced - ERT implant, i dont overly expect this to get into the hands of crew
                +
              • l - its for ERT, but still probably a good idea.
              • +
            • +
            • brain
            • +
            • eyes/hud
            • +
          • +
          • eyes
              +
            • diona - Turns into a nymph instantly, no transplanting possible.
            • +
            • tajaran/farwa - Being the lesser form of Tajara, Farwas have an utterly incurable version of their colourblindness.
            • +
            • vulpkanin/wolpin - Being the lesser form of Vulpkanin, Wolpins have an utterly incurable version of their colourblindness.
            • +
          • +
          • heart
              +
            • cursed
            • +
            • demon - The Loot
            • +
            • diona - Turns into a nymph instantly, no transplanting possible.
            • +
            • gland/emp - TODO : Replace with something more interesting
            • +
          • +
          • kidneys/diona - Turns into a nymph instantly, no transplanting possible.
          • +
          • liver/diona - Turns into a nymph instantly, no transplanting possible.
          • +
          • regenerative_core - Hivelord core
              +
            • legion - Legion core
            • +
          • +
          • vocal_cords - organs that are activated through speech with the :x channel
          • +
        • +
      • +
      • organ_extractor/abductor - Advanced abductor version. Is a lot faster with implanting into others
      • +
      • painter
      • +
      • paintkit - Please don't use this for anything, it's a base type for custom mech paintjobs.
      • +
      • paper
          +
        • Safe Codes - Contains the (generated on map load) codes for all publicly known safes.
        • +
        • Telecommunications Password Paper - Piece of paper that spawns with the default link password
        • +
      • +
      • pda
      • +
      • photo - photo
      • +
      • pickaxe - Pickaxes & Drills & Shovels
          +
        • drill/cyborg/diamond - This is the BORG version!
        • +
      • +
      • pinpointer/crew
      • +
      • pizzabox/pizza_bomb
      • +
      • pneumatic_cannon
          +
        • ghetto - Obtainable by improvised methods; more gas per use, less capacity, but smaller
        • +
      • +
      • projectile
          +
        • baby_watcher_blast - Beam fired by a baby watcher, doesn't actually do less damage than its parent
        • +
        • beam/laser/sniper/pierce
        • +
        • bullet
            +
          • mime
              +
            • fake - ...Rather a large amount of stamina damage. Used in the mime mecha
            • +
            • nonlethal
            • +
          • +
          • shrapnel - Shrapnel that flies through the air and hits you
          • +
          • stunshot - taser slugs for shotguns, nothing special
          • +
          • weakbullet - beanbag, heavy stamina damage
          • +
        • +
        • energy/tesla_bolt - Leaving here for adminbus / so vetus still uses it.
        • +
        • magic/chaos
        • +
        • missile
        • +
      • +
      • radio
          +
        • borg - Exists so that borg radios and headsets can override it.
        • +
        • headset
            +
          • heads/ai_integrated - No need to care about icons, it should be hidden inside the AI anyway.
          • +
          • syndicate/alt - undisguised bowman with flash protection
          • +
        • +
        • intercom
        • +
      • +
      • rcd
      • +
      • Rapid Crate Sender (RCS) - Used to teleport crates and closets to cargo telepads.
      • +
      • reagent_containers
          +
        • applicator/dual/syndi - It magically goes through hardsuits. Don't ask how.
        • +
        • borghypo
        • +
        • condiment - Condiments
            +
          • saltshaker - Seperate from above since it's a small shaker rather then
          • +
        • +
        • 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.
            • +
          • +
        • +
        • dropper - Droppers.
        • +
        • glass - (Mixing)Glass.
            +
          • bottle/traitor - Traitor Poison Bottle
          • +
        • +
        • hypospray - MARK: HYPOSPRAY
            +
          • autoinjector
              +
            • stimpack - goliath kiting
            • +
            • teporone - basilisks
            • +
          • +
        • +
        • iv_bag/blood - Don't use this - just an abstract type to allow blood bags to have a common blood_type var for ease of creation.
        • +
        • Pill - A swallowable pill. Can be dissolved in reagent containers.
        • +
        • spray
            +
          • pestspray - -- Skie
          • +
          • plantbgone - Plant-B-Gone +-- Skie
          • +
          • sticky_tar - Sticky tar spray
          • +
          • weedspray - -- Skie
          • +
        • +
        • syringe
        • +
      • +
      • reagent_scanner - REAGENT SCANNERS
      • +
      • relic
      • +
      • resonator - Resonator
      • +
      • restraints
          +
        • handcuffs
            +
          • energy/cult - For the shackling spell
          • +
        • +
        • legcuffs
            +
          • beartrap
          • +
          • bola
              +
            • energy - For Security
            • +
            • tactical - traitor variant
            • +
          • +
        • +
      • +
      • robot_module
      • +
      • robotanalyzer - MACHINE ANALYZER
      • +
      • Safe Internals - Can be used to replace a safe's broken mechanism.
      • +
      • salvage
          +
        • loot - Loot salvage, gained from fighting space simplemobs.
        • +
        • ruin - Ruin Salvage, misc loot gained from looking around ruins.
        • +
      • +
      • scalpel
          +
        • alien - MEDICAL TOOLS
        • +
        • laser - parent type
            +
          • laser1 - lasers also count as catuarys
          • +
          • manager - super tool! Retractor/hemostat
          • +
        • +
      • +
      • scratch
      • +
      • screwdriver/abductor - ENGINEERING TOOLS
      • +
      • scrying - Scrying
      • +
      • seeds
          +
        • firelemon - combustible lemon is too long so firelemon
        • +
      • +
      • shield
      • +
      • shockpaddles
      • +
      • shrapnel - Shrapnel projectiles turn into this after trying to embed
      • +
      • slapper
      • +
      • slime_extract - Slime Extracts
      • +
      • slime_scanner - SLIME SCANNER
      • +
      • slimepotion - Slime-derived potions
      • +
      • snowball
      • +
      • soulstone
      • +
      • spear/bonespear - Blatant imitation of spear, but made out of bone. Not valid for explosive modification.
      • +
      • stack
          +
        • cable_coil
        • +
        • marker_beacon
            +
          • ten - miners start with 10 of these
          • +
          • thirty - and they're bought in stacks of 1, 10, or 30
          • +
        • +
        • sheet
            +
          • cardboard - BubbleWrap
          • +
          • fur - basic fur sheets
          • +
        • +
      • +
      • stock_parts/cell
          +
        • emproof/reactive - EMP proof so emp_act does not double dip.
        • +
        • pulse - 200 pulse shots
            +
          • carbine - 25 pulse shots
          • +
          • pistol - 10 pulse shots
          • +
        • +
      • +
      • storage
          +
        • backpack
            +
          • duffel
              +
            • syndie/med/surgery_fake - for maint spawns
            • +
          • +
          • fluff
              +
            • hiking - Pineapple Salad: Dan Jello
            • +
            • krich_back - lizardzsi: Krichahka
            • +
            • ssscratches_back - Ssscratches: Lasshy-Bot
            • +
            • syndiesatchel - SkeletalElite: Rawkkihiki
            • +
            • thebrew - Greey: Korala Ice
            • +
          • +
        • +
        • bag
            +
          • dice - Thankfully no longer a pill bottle.
          • +
          • ore/holding - miners, your messiah has arrived
          • +
        • +
        • belt
            +
          • grenade/tactical - Traitor bundle version
          • +
          • utility/syndi_researcher - A cool looking belt thats essentially a syndicate toolbox
          • +
        • +
        • bible
        • +
        • box
            +
          • stockparts/basic - for ruins where it's a bad idea to give access to an autolathe/protolathe, but still want to make stock parts accessible
          • +
          • syndie_kit
              +
            • bundle - Traitor bundles
                +
              • agent13 - 159
              • +
              • bond - 137TC
              • +
              • darklord - 170TC + Telekinesis
              • +
              • grenadier - 133TC + Tactical Grenadier Belt
              • +
              • hacker - 180TC
              • +
              • implant - 200TC
              • +
              • infiltrator - 155TC + RCD & Mesons Autoimplanter
              • +
              • maint_loot - syndie briefcase has 600 credits for 5 TC.
              • +
              • metroid - 75TC + modules + laser gun
              • +
              • payday - 185TC
              • +
              • professional - 164TC
              • +
              • spy - 172TC
              • +
              • thief - 160TC
              • +
            • +
            • contractor
            • +
          • +
        • +
        • conveyor - Stores conveyor belts, click floor to make belt, use a conveyor switch on this to link all belts to that lever.
        • +
        • firstaid/aquatic_kit - Aquatic Starter Kit
        • +
        • part_replacer - Stock Parts
        • +
        • photo_album - photo album
        • +
        • pill_bottle
        • +
        • secure
        • +
        • toolbox/fluff/lunchbox - godoforeos: Jason Conrad
        • +
      • +
      • storm_staff
      • +
      • supermatter_halberd - Supermatter Halberd, used by Oblivion Enforcers
      • +
      • syndicatedetonator - Syndicate Detonator (aka the big red button)
      • +
      • t_scanner - T-RAY SCANNER
      • +
      • taperecorder
      • +
      • tarot_card_pack
      • +
      • tarot_generator
      • +
      • telepad_beacon - TELEPAD CALLER
      • +
      • thermal_drill
      • +
      • toy
      • +
      • uplink
      • +
      • veilrender - Veil Render
      • +
      • watcher_hatchling - A cute pet who will occasionally attack lavaland mobs for you
      • +
      • weaponcrafting/gunkit - These gun kits are printed from the protolathe to then be used in making new weapons
      • +
      • wormhole_jaunter - Jaunter
      • +
    • +
    • machinery
    • +
    • mecha
    • +
    • singularity
        +
      • energy_ball - The Tesla engine
      • +
      • narsie - Moving narsie to a child object of the singularity so it can be made to function differently. --NEO
      • +
    • +
    • structure
        +
      • alien
          +
        • egg
        • +
        • resin/flower_bud_enemy - inheriting basic attack/damage stuff from alien structures
        • +
        • wallweed
        • +
        • weeds
        • +
      • +
      • barricade
          +
        • dropwall
        • +
        • wooden - BARRICADE TYPES
        • +
      • +
      • bed/abductor - STRUCTURES
      • +
      • blob
          +
        • captured_nuke - alternative to blob just straight up destroying nukes
        • +
      • +
      • bonfire - BONFIRES
          +
        • lit - haha empty define
        • +
      • +
      • cable
      • +
      • chair - fuck you Pete
      • +
      • closet
          +
        • cardboard
        • +
        • crate
            +
          • miningcar - Mining car (Crate like thing, not the rail car)
          • +
          • secure
              +
            • oldstation - Secure Crates: Access locked to Theta crew. Cannot be moved, destroyed, +emagged or EMPed because gamers can't be trusted not to game.
            • +
            • personal
            • +
          • +
        • +
        • secure_closet
            +
          • 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
        • +
        • wardrobe/miner - Miner Lockers
        • +
      • +
      • constructshell - Transferring to constructs
      • +
      • cult/functional
      • +
      • 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.
      • +
      • Disaster counter. - Tracks how many shifts it has been since the counter with that ID was exploded.
      • +
      • dispenser
      • +
      • displaycase
      • +
      • disposalholder
      • +
      • disposaloutlet
      • +
      • disposalpipe
      • +
      • door_assembly
      • +
      • dropwall_generator
      • +
      • elite_tumor
      • +
      • falsewall
      • +
      • filingcabinet/filingcabinet - not changing the path to avoid unecessary map issues, but please don't name stuff like this in the future -Pete
      • +
      • flora
          +
        • ash
            +
          • rock - Rocks
          • +
          • tall_shroom - exists only so that the spawning check doesn't allow these spawning near other things
          • +
        • +
        • grass/jungle
        • +
        • junglebush
        • +
        • tree/jungle
        • +
      • +
      • fluff
          +
        • drake_statue - Ash drake status spawn on either side of the necropolis gate in lavaland.
            +
          • falling - A variety of statue in disrepair; parts are broken off and a gemstone is missing
          • +
        • +
        • empty_cryostasis_sleeper - Empty cryostasis sleepers are created when a malfunctioning cryostasis sleeper in a lavaland shelter is activated
        • +
        • empty_sleeper - Empty sleepers are created by a good few ghost roles in lavaland.
        • +
        • empty_terrarium - Empty terrariums are created when a preserved terrarium in a lavaland seed vault is activated.
        • +
      • +
      • forcefield - Mimewalls
      • +
      • grille/broken - Pre-broken grilles for map placement
      • +
      • inflatable/door - Based on mineral door code
      • +
      • kitchenspike_frame - Kitchen Spike
      • +
      • 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.
      • +
      • mecha_wreckage - Mecha wreckage
      • +
      • mining_bomb
      • +
      • mirror/magic/pride - Pride's mirror: Used in the Pride ruin.
      • +
      • musician
      • +
      • ore_box - Ore box
      • +
      • plasticflaps/mining - A specific type for mining that doesn't allow airflow because of them damn crates
      • +
      • railing
          +
        • cap - aestetic "end" for railing
        • +
        • corner - aesthetic corner sharp edges hurt oof ouch
        • +
      • +
      • reagent_dispensers
      • +
      • respawner
      • +
      • roulette
      • +
      • Safe - A locked container that can only be opened by entering a combination through a dial.
          +
        • Floor Safe - Like a safe, but without density. Can be hidden with flooring.
        • +
      • +
      • shadowcocoon
      • +
      • sign/poster/ripped - POSTER VARIATIONS
      • +
      • sink/puddle - splishy splashy ^_^
      • +
      • spawner/nether/bluespace_tap
      • +
      • spider
      • +
      • statue/sandstone/venus - call me when we add marble i guess
      • +
      • table
          +
        • wood/poker - No specialties, Just a mapping object.
        • +
      • +
      • table_frame
      • +
      • transit_tube/station
      • +
      • transit_tube_pod
      • +
      • window
      • +
    • +
    • vehicle
    • +
  • +
  • procpath - Represents a proc or verb path.
  • +
  • sound - Default override for echo
  • +
  • turf
      +
    • simulated
        +
      • floor
          +
        • beach
            +
          • away
              +
            • coastline/dense - for boundary "walls"
            • +
            • sand/dense - for boundary "walls"
            • +
            • water/dense - for boundary "walls"
            • +
          • +
          • water - TODO - Refactor water so they share the same parent type - Or alternatively component something like that
          • +
        • +
        • grass
            +
          • 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.
        • +
        • light
        • +
        • plasteel/airless/indestructible - For bomb testing range
        • +
        • plating/asteroid
            +
          • airless/cave
              +
            • has_data - subtype for producing a tunnel with given data
            • +
            • volcanic/has_data - subtype for producing a tunnel with given data
            • +
          • +
          • basalt
              +
            • lava - lava underneath
            • +
            • 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.
            • +
          • +
        • +
        • transparent/glass
        • +
      • +
      • mineral - Mineral deposits +wall piece
      • +
      • wall
          +
        • indestructible/fakeglass
        • +
        • mineral
            +
          • plastitanium - Plastitanium walls
          • +
          • titanium - //////////////////Titanium walls///////////////////// +has to use this path due to how building walls works
          • +
        • +
      • +
    • +
    • space/transit
        +
      • east - moving to the east
      • +
      • north - moving to the north
      • +
    • +
  • +
  • world
  • +
+ + +
+ + + diff --git a/mob.html b/mob.html new file mode 100644 index 0000000000000..130a7d858a6b1 --- /dev/null +++ b/mob.html @@ -0,0 +1,702 @@ + + + + + + + /mob - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

mob + + + +

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

Vars

active_mutationsList of the active mutation types
alertslazy list. contains /atom/movable/screen/alert only, On /mob so clientless mobs will throw alerts properly
audio_emote_cd_statusCooldown on audio effects from emotes.
audio_emote_unintentional_cd_statusCooldown on audio effects from unintentional emotes.
blood_stateWeirdly named, effects how blood transfers onto objects
bloody_feetAssoc list for tracking how "bloody" a mobs feet are, used for creating bloody foot/shoeprints on turfs when moving
bloody_handsMakes items bloody if you touch them
buckledmovable atoms buckled to this mob
bucklingmovable atom we are buckled to
emote_cooldown_overrideOverride for cooldowns on non-audio emotes. Should be a number in deciseconds.
emotes_usedTracks last uses of emotes for cooldown purposes
feet_blood_DNABasically a lazy list, copies the DNA of blood you step in
feet_blood_coloraffects the blood color of your feet, color taken from the blood you step in
handTrue for left hand active, otherwise for right hand active
health_hud_overrideOverrides the health HUD element state if set.
hud_typeThe type of HUD that this mob uses. Not to
hud_usedThe instantiated version of the mob's hud.
input_focusThe datum receiving keyboard input. parent mob by default.
last_movement_dirThe direction they last moved
last_typedLast thing we typed in to the typing indicator, probably does not need to exist
last_typed_timeLast time we typed something in to the typing popup
memoryother mobs we wont move when we're grab pulled. Not empty only when being grab pulled
next_clickThis 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_adjustUnused
next_click_modifierUnused
next_move_adjustUnused, used to adjust our next move on a linar skill world.time + (how_many_deciseconds + Next move adjust) = Next move
next_move_modifierValue to multiply action delays by, actually used world.time + (how_many_deciseconds * Next move Adjust) = Next move
observersList of observers currently observing us.
open_uisTracks the open UIs that a mob has, used in TGUI for various things, such as updating UIs
runechat_msg_locationA soft reference to the location where this mob's runechat message will appear. Uses UID().
s_activeActive storage container
screensUsed for some screen objects
sound_environment_overrideOverride for sound_environments. If this is set the user will always hear a specific type of reverb (Instead of the area defined reverb)
speaks_oocDoes this mob speak OOC? +Controls whether they can say some symbols.
suicidingIs our mob currently suiciding? Used for suicide code along with many different revival checks
tgui_open_uisglobal
thinkingAffects if you have a thinking indicator
typingAffects if you have a typing indicator
zone_selectedThe zone this mob is currently targeting

Procs

ForceContractDiseaseForces 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
Process_SpacemoveProcess_Spacemove +Called by /client/Move() +For moving in space +Return 1 for movement 0 for none
adjust_nutritionAdjust the nutrition of a mob
become_mouseReturns true if the player successfully becomes a mouse
buckle_mobBuckle to another mob
can_bucklecan the mob be buckled to something by default?
can_resistCan this mob resist (default FALSE)
can_unbucklecan the mob be unbuckled from something by default?
can_use_audio_emoteHelper proc to determine if a mob can use emotes that make sound or not.
can_use_clickbindsCan this mob use keybinded click actions? (Altclick, Ctrlclick, ect)
create_chat_messageCreates a message overlay at a defined location for a given speaker
custom_emotePerform a custom emote.
emoteSend an emote.
flash_screen_colorFlash up a color as an overlay on a player's screen, then fade back to normal.
get_mob_buckling_heightreturns the height in pixel the mob should have when buckled to another mob.
get_telepathic_targetsReturns 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_reenterChecks if a mob's ghost can reenter their body or not. Used to check for DNR or AntagHUD.
hide_other_mob_action_buttonsHide another mob's action buttons from this mob
is_holdingCheck if an item is in one of our hands
manual_emoteAllows the intrepid coder to send a basic emote +Takes text as input, sends it out to those who need to know after some light parsing +If you need something more complex, make it into a datum emote +Arguments:
on_observing_action_grantedSignal 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_removedSignal 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.
pointedPoint at an atom
post_buckle_mobCall back post buckle to a mob to offset your visual height
post_unbuckle_mobCall back post unbuckle from a mob, (reset your visual height here)
run_modeproc version to finish /mob/verb/mode() execution. used in case the proc needs to be queued for the tick after its first called
run_pointedpossibly delayed verb that finishes the pointing process starting in [/mob/verb/pointed()]. +either called immediately or in the tick after pointed() was called, as per the [DEFAULT_QUEUE_OR_CALL_VERB()] macro
run_quick_equipproc extender of [/mob/verb/quick_equip] used to make the verb queuable if the server is overloaded
say_understandsChecks if the mob can understand the other speaker
set_invisibleProc to PROPERLY set mob invisibility, huds gotta get set too!
set_nutritionForce set the mob nutrition
set_thinking_indicatorToggles the floating thought bubble above a players head.
set_typing_indicatorToggles the floating chat bubble above a players head.
shared_ui_interactionpublic
show_other_mob_action_buttonsShow (most) of the another mob's action buttons to this mob
show_radsShow an overlay of radiation levels on radioactive objects.
shuttleRotateTurf rotate procs
special_get_hands_checkSpecal proc for special mobs that use "hands" in weird ways
start_audio_emote_cooldownStart the cooldown for an emote that plays audio.
throw_alertProc 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.
update_runechat_msg_locationUpdates the mob's runechat maptext display location.
usable_emote_keysGet 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

buckling + + + + +

+

movable atom we are buckled to

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

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.

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

zone_selected + + + + +

+

The zone this mob is currently targeting

Proc Details

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
  • +

Process_Spacemove +

+

Process_Spacemove +Called by /client/Move() +For moving in space +Return 1 for movement 0 for none

adjust_nutrition +

+

Adjust the nutrition of a mob

become_mouse +

+

Returns true if the player successfully becomes a mouse

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_buckle +

+

can the mob be buckled to something by default?

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)

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.
  • +

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.
  • +

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_mob_buckling_height +

+

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

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.

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_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)

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.
  • +

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
  • +

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.
  • +
+ + + diff --git a/mob/camera/aiEye/remote/xenobio.html b/mob/camera/aiEye/remote/xenobio.html new file mode 100644 index 0000000000000..a63347caf4007 --- /dev/null +++ b/mob/camera/aiEye/remote/xenobio.html @@ -0,0 +1,36 @@ + + + + + + + /mob/camera/aiEye/remote/xenobio - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

xenobio + + + +

+ + +

Vars

allowed_areaArea that the xenobio camera eye is allowed to travel
+

Var Details

allowed_area + + + + +

+

Area that the xenobio camera eye is allowed to travel

+ + + diff --git a/mob/dead/observer.html b/mob/dead/observer.html new file mode 100644 index 0000000000000..90742a38f5f66 --- /dev/null +++ b/mob/dead/observer.html @@ -0,0 +1,101 @@ + + + + + + + /mob/dead/observer - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

observer + + + +

+ + + + + + + + + + +

Vars

alive_runechat_colorThe "color" their runechat would have had
data_hud_seenDefines from __DEFINES/hud.dm go here based on which huds the ghost has activated.
gas_scantoggle for ghost gas analyzer
mob_observedUID of the mob which we are currently observing
plant_analyzertoggle for ghost plant analyzer

Procs

check_ahud_rejoin_eligibilityCheck 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_observeClean up observing
toggle_all_huds_offToggles off all HUDs for the ghost player.
toggle_all_huds_onToggles on all HUDs for the ghost player.
+

Var Details

alive_runechat_color + + + + +

+

The "color" their runechat would have had

data_hud_seen + + + + +

+

Defines from __DEFINES/hud.dm go here based on which huds the ghost has activated.

gas_scan + + + + +

+

toggle for ghost gas analyzer

mob_observed + + + + +

+

UID of the mob which we are currently observing

plant_analyzer + + + + +

+

toggle for ghost plant analyzer

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.
  • +
+ + + diff --git a/mob/living.html b/mob/living.html new file mode 100644 index 0000000000000..3caf0b220d2db --- /dev/null +++ b/mob/living.html @@ -0,0 +1,554 @@ + + + + + + + /mob/living - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

living + + + +

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

Vars

admin_prev_sleepingUsed for keeping track of previous sleeping value with admin freeze.
advanced_bullet_dodge_chanceThis 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.
flags_2Flag to enable these making trees semi-transparent if behind them
forced_lookThis can either be a numerical direction or a soft object reference (UID). It makes the mob always face towards the selected thing.
frozenUsed for preventing attacks on admin-frozen mobs.
holder_typethe type of holder that will be created when a mob gets scooped up
incorporeal_moveAllows mobs to move through dense areas without restriction. For instance, in space or out of holder objects.
last_taste_textStores a var of the last tast message we got. used so we don't spam people messages while they eat
last_taste_timeStores a var of the last world time we tasted something. used so we don't spam people messages while they eat
last_wordsFamous last words -- if succumbing, what the user's last words were
lying_angleNumber of degrees of rotation of a mob. 0 means no rotation, up-side facing NORTH. 90 means up-side rotated to face EAST, and so on.
restingif a mob is choosing to lay down
stamina_regen_block_modifierA multiplier for the ammount of time it takes for someone to regenerate stamina damage.

Procs

AdjustConfusedSets confusion to current amount + given, clamped between lower and higher bounds.
AdjustDizzySets dizziness to current amount + given, clamped between lower and higher bounds.
AdjustDrowsySets drowsiness to current amount + given, clamped between lower and higher bounds.
AdjustDrunkSets drunkenness to current amount + given, clamped between lower and higher bounds.
AdjustSleepingused for admin freezing.
ConfusedSets confusion if it's higher than current.
DizzySets dizziness if it's higher than current.
DrowsySets drowsiness if it's higher than current.
DrunkSets drunkenness if it's higher than current.
IsFrozenFROZEN
SetConfusedSets confusion if it's higher than zero.
SetDizzySets dizziness if it's higher than zero.
SetDrowsySets drowsiness if it's higher than zero.
SetDrunkSets drunkenness if it's higher than zero.
add_stun_absorptionSTUN ABSORPTION
admin_Freezemob freeze procs
advanced_bullet_dodgeTries 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_effectApplies a given status effect to this mob, returning the effect if it was successful or null otherwise
can_run_surgeryCheck to see if a surgical operation proposed on ourselves is valid or not. We are the target of the surgery
clear_forced_lookClears the mob's direction lock if enabled.
electrocute_actAs the name suggests, this should be called to apply electric shocks.
get_confusionReturns current amount of confusion, 0 if none.
get_dizzinessReturns current amount of dizziness, 0 if none.
get_drowsinessReturns current amount of drowsiness, 0 if none.
get_drunkennessReturns current amount of drunkenness, 0 if none.
grant_guardian_actionsGrants all existing /datum/action/guardian type actions to the src mob.
handle_fireBurns a mob and slowly puts the fires out. Returns TRUE if the mob is on fire
has_status_effectReturns the effect if the mob calling the proc owns the given status effect, or null otherwise
has_status_effect_listReturns a list of effects with matching IDs that the mod owns; use for effects there can be multiple of
has_status_effect_typeReturns the effect if the mob calling the proc owns the given status effect, but checks by type.
on_fakedeath_trait_gainCalled when [TRAIT_FAKEDEATH] is added to the mob.
on_fakedeath_trait_lossCalled when [TRAIT_FAKEDEATH] is removed from the mob.
on_floored_trait_gainCalled when TRAIT_FLOORED is added to the mob.
on_floored_trait_lossCalled when TRAIT_FLOORED is removed from the mob.
on_forced_standing_trait_gainCalled when [TRAIT_FORCED_STANDING] is added to the mob.
on_forced_standing_trait_lossCalled when [TRAIT_FORCED_STANDING] is removed from the mob.
on_handsblocked_trait_gainCalled when TRAIT_HANDS_BLOCKED is added to the mob.
on_handsblocked_trait_lossCalled when TRAIT_HANDS_BLOCKED is removed from the mob.
on_immobilized_trait_gainCalled when TRAIT_IMMOBILIZED is added to the mob.
on_immobilized_trait_lossCalled when TRAIT_IMMOBILIZED is removed from the mob.
on_knockedout_trait_gainCalled when TRAIT_KNOCKEDOUT is added to the mob.
on_knockedout_trait_lossCalled when TRAIT_KNOCKEDOUT is removed from the mob.
on_pull_blocked_trait_gainCalled when TRAIT_CANNOT_PULL is added to the mob.
on_pull_blocked_trait_lossCalled when TRAIT_CANNOT_PULL is removed from the mob.
on_restrained_trait_gainCalled when TRAIT_RESTRAINED is added to the mob.
on_restrained_trait_lossCalled when TRAIT_RESTRAINED is removed from the mob.
on_ui_blocked_trait_gainCalled when TRAIT_UI_BLOCKED is added to the mob.
on_ui_blocked_trait_lossCalled when TRAIT_UI_BLOCKED is removed from the mob.
register_init_signalsCalled on /mob/living/Initialize(mapload), for the mob to register to relevant signals.
remove_guardian_actionsRemoves all /datum/action/guardian type actions from the src mob.
remove_status_effectRemoves all of a given status effect from this mob, returning TRUE if at least one was removed
run_resistproc extender of [/mob/living/verb/resist] meant to make the process queable if the server is overloaded when the verb is called
set_forced_lookSets the mob's direction lock towards a given atom.
set_lying_angleChanges the inclination angle of a mob, used by humans and others to differentiate between standing up and prone positions.
shared_living_ui_distancepublic
transfer_blood_toBLOOD TRANSFERS
+

Var Details

admin_prev_sleeping + + + + +

+

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.

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.

holder_type + + + + +

+

the type of holder that will be created when a mob gets scooped up

incorporeal_move + + + + +

+

Allows mobs to move through dense areas without restriction. For instance, in space or out of holder objects.

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.

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.

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.
  • +

AdjustSleeping +

+

used for admin freezing.

Confused +

+

Sets confusion if it's higher than current.

Dizzy +

+

Sets dizziness if it's higher than current.

Drowsy +

+

Sets drowsiness if it's higher than current.

Drunk +

+

Sets drunkenness if it's higher than current.

IsFrozen +

+

FROZEN

SetConfused +

+

Sets confusion if it's higher than zero.

SetDizzy +

+

Sets dizziness if it's higher than zero.

SetDrowsy +

+

Sets drowsiness if it's higher than zero.

SetDrunk +

+

Sets drunkenness if it's higher than zero.

add_stun_absorption +

+

STUN ABSORPTION

admin_Freeze +

+

mob freeze procs

advanced_bullet_dodge +

+

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

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.
  • +

electrocute_act +

+

As the name suggests, this should be called to apply electric shocks.

get_confusion +

+

Returns current amount of confusion, 0 if none.

get_dizziness +

+

Returns current amount of dizziness, 0 if none.

get_drowsiness +

+

Returns current amount of drowsiness, 0 if none.

get_drunkenness +

+

Returns current amount of drunkenness, 0 if none.

grant_guardian_actions +

+

Grants all existing /datum/action/guardian type actions to the src mob.

+

Called whenever the host gains their gauardian.

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.

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.

on_floored_trait_gain +

+

Called when TRAIT_FLOORED is added to the mob.

on_floored_trait_loss +

+

Called when TRAIT_FLOORED is removed from the mob.

on_forced_standing_trait_gain +

+

Called when [TRAIT_FORCED_STANDING] is added to the mob.

on_forced_standing_trait_loss +

+

Called when [TRAIT_FORCED_STANDING] is removed from the mob.

on_handsblocked_trait_gain +

+

Called when TRAIT_HANDS_BLOCKED is added to the mob.

on_handsblocked_trait_loss +

+

Called when TRAIT_HANDS_BLOCKED is removed from the mob.

on_immobilized_trait_gain +

+

Called when TRAIT_IMMOBILIZED is added to the mob.

on_immobilized_trait_loss +

+

Called when TRAIT_IMMOBILIZED is removed from the mob.

on_knockedout_trait_gain +

+

Called when TRAIT_KNOCKEDOUT is added to the mob.

on_knockedout_trait_loss +

+

Called when TRAIT_KNOCKEDOUT is removed from the mob.

on_pull_blocked_trait_gain +

+

Called when TRAIT_CANNOT_PULL is added to the mob.

on_pull_blocked_trait_loss +

+

Called when TRAIT_CANNOT_PULL is removed from the mob.

on_restrained_trait_gain +

+

Called when TRAIT_RESTRAINED is added to the mob.

on_restrained_trait_loss +

+

Called when TRAIT_RESTRAINED is removed from the mob.

on_ui_blocked_trait_gain +

+

Called when TRAIT_UI_BLOCKED is added to the mob.

on_ui_blocked_trait_loss +

+

Called when TRAIT_UI_BLOCKED is removed from the mob.

register_init_signals +

+

Called on /mob/living/Initialize(mapload), 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_resist +

+

proc extender of [/mob/living/verb/resist] meant to make the process queable if the server is overloaded when the verb is called

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 +

+

BLOOD TRANSFERS

+ + + diff --git a/mob/living/carbon.html b/mob/living/carbon.html new file mode 100644 index 0000000000000..7d770f771fce4 --- /dev/null +++ b/mob/living/carbon.html @@ -0,0 +1,285 @@ + + + + + + + /mob/living/carbon - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

carbon + + + +

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

Vars

co2overloadtimeUsed to track how much CO2 is in our system. Too much CO2 means you get stunned and die
dreamingHow many dream messages we have left to send
handcuffedWhether or not the mob is handcuffed, restraints/handcuffs/ required for var/cuffed_state
headThe object stored on the head of the mob. Strangly not on the Human level
internal_organ_datumsAn associated list of strings that associate it with the organ datum, e.g. [ORGAN_DATUM_HEART] = /datum/organ/heart
last_pain_messageStores the last pain message we got. used to prevent chatspam from pain
legcuffedSame as handcuffs but for legs. Bear traps use this.
life_tickThe amount of life ticks that have processed on this mob.
next_pain_timeStores the last time we sent a pain message. used to prevent chatspam from pain
nightmareHow many nightmare messages we have left to send
poseActive emote/pose. Similar to flavor text
pulseCurrent pulse of this mob. Updated by handle_pulse on life
wear_suitThe object stored on the exosuit slot of the mob. Strangly not on the Human level
wetlevelTracks how wet the mob is. Only used for examining the mob

Procs

can_breathe_helmetReturns TRUE if an air tank compatible helmet is equipped.
can_breathe_internalsReturns TRUE if an air tank compatible mask or breathing tube is equipped.
can_breathe_maskReturns TRUE if an air tank compatible mask is equipped.
can_breathe_tubeReturns TRUE if a breathing tube is equipped.
can_feel_painWhether or not a mob can feel pain.
dreamDREAMS
electrocute_actAdds to the parent by also adding functionality to propagate shocks through pulling and doing some fluff effects.
examine_damage_flavorAdd specific damage flavor here.
examine_extra_damage_flavorAdd any extra info which should be within the "damage" block, the big warning span.
examine_extra_general_flavorAdd some last information in before HUDs get put through.
examine_handle_individual_limbSpecial handlers for processing limbs go here, based on limb names in examine_visible_clothing.
examine_start_damage_blockAdd whatever you want to start the damage block with here.
examine_visible_clothingGet the message parts, in order, for a proper examine. +Message parts should be as follows:
examine_what_am_iIdentify what this mob in particular is.
has_virusWhether a virus worthy displaying on the HUD is present.
is_in_critMedical HUD! Basic mode needs suit sensors on. +Whether the carbon mob is currently in crit.
pat_outHandles patting out a fire on someone.
secondary_shockCalled slightly after electrocute act to reduce jittering and apply a secondary knockdown.
toggle_giveToggles the /datum/click_intercept/give on or off for the src mob.
update_suit_sensorsHOOKS
+

Var Details

co2overloadtime + + + + +

+

Used to track how much CO2 is in our system. Too much CO2 means you get stunned 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

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.

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 slightly after electrocute act to reduce jittering and apply a secondary knockdown.

toggle_give +

+

Toggles the /datum/click_intercept/give on or off for the src mob.

update_suit_sensors +

+

HOOKS

+ + + diff --git a/mob/living/carbon/alien.html b/mob/living/carbon/alien.html new file mode 100644 index 0000000000000..ae13ab2e46605 --- /dev/null +++ b/mob/living/carbon/alien.html @@ -0,0 +1,37 @@ + + + + + + + /mob/living/carbon/alien - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

alien + + + +

+ + +

Procs

get_caste_organsreturns 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

+ + + diff --git a/mob/living/carbon/alien/humanoid/hunter.html b/mob/living/carbon/alien/humanoid/hunter.html new file mode 100644 index 0000000000000..ada69d4c8be01 --- /dev/null +++ b/mob/living/carbon/alien/humanoid/hunter.html @@ -0,0 +1,36 @@ + + + + + + + /mob/living/carbon/alien/humanoid/hunter - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

hunter + + + +

+ + +

Vars

on_leap_cooldownAre we on leap cooldown?
+

Var Details

on_leap_cooldown + + + + +

+

Are we on leap cooldown?

+ + + diff --git a/mob/living/carbon/human.html b/mob/living/carbon/human.html new file mode 100644 index 0000000000000..2bcb503128f0f --- /dev/null +++ b/mob/living/carbon/human.html @@ -0,0 +1,237 @@ + + + + + + + /mob/living/carbon/human - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

human + + + +

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

Vars

body_typeThe body type associated with the body
bodyparts_by_namemap organ names to organs
heightPlayers' height (more fluff)
physiquePlayers physique (even MORE fluff)
previous_damage_appearanceStores what the body last looked like. Prevents updating the body when we don't need to
receiving_cpr_fromUID of the person who is giving this mob CPR.
tailName of tail image in species effects icon file.
wingSame as tail but wing

Procs

RobotizeFor transforming humans into robots (cyborgs).
add_commentHelper function to add a "comment" to a data record. Used for medical or security records.
adjustBrainLosssums up all the damage of all the limbs
check_eye_protcheck_eye_prot() +Returns a number between -1 to 2
check_vital_organsReturns true if all the mob's vital organs are functional, otherwise returns false
electrocute_actCalculates the siemens coeff based on clothing and species, can also restart hearts.
get_cpr_timer_adjustmentGet the amount of time that this round of CPR should add to the death timer
get_runechat_colorHelper to get the mobs runechat colour span
handle_fireFIRE CODE
mind_checksHandles any adjustments to the mob after a mind transfer.
regrow_external_limb_if_missingRegrows a given external limb if it is missing. Does not add internal organs back in. +Returns whether or not it regrew the limb
sec_hud_set_IDSecurity HUDs! Basic mode shows only the job.
set_speciesChange a mob's species.
setup_dnaSets up DNA and species.
setup_otherSets up other variables and components that may be needed for gameplay.
tintchecktintcheck() +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_hairGenerates overlays for the hair layer.
+

Var Details

body_type + + + + +

+

The body type associated with the body

bodyparts_by_name + + + + +

+

map organ names to organs

height + + + + +

+

Players' height (more fluff)

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

receiving_cpr_from + + + + +

+

UID of the person who is giving this mob CPR.

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.
  • +

add_comment +

+

Helper function to add a "comment" to a data record. Used for medical or security records.

adjustBrainLoss +

+

sums up all the damage of all the limbs

check_eye_prot +

+

check_eye_prot() +Returns a number between -1 to 2

check_vital_organs +

+

Returns true if all the mob's vital organs are functional, otherwise returns false

electrocute_act +

+

Calculates the siemens coeff based on clothing and species, can also restart hearts.

get_cpr_timer_adjustment +

+

Get the amount of time that this round of CPR should add to the death timer

get_runechat_color +

+

Helper to get the mobs runechat colour span

+

Basically just a quick redirect to the DNA handler that gets the species-specific colour handler

handle_fire +

+

FIRE CODE

mind_checks +

+

Handles any adjustments to the mob after a mind transfer.

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_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.

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.

+ + + diff --git a/mob/living/carbon/human/monkey/magic.html b/mob/living/carbon/human/monkey/magic.html new file mode 100644 index 0000000000000..f4bdbfe1e004d --- /dev/null +++ b/mob/living/carbon/human/monkey/magic.html @@ -0,0 +1,36 @@ + + + + + + + /mob/living/carbon/human/monkey/magic - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

magic + + + +

+ + +

Vars

return_timerStores 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.

+ + + diff --git a/mob/living/silicon.html b/mob/living/silicon.html new file mode 100644 index 0000000000000..33f3e0ee238a7 --- /dev/null +++ b/mob/living/silicon.html @@ -0,0 +1,103 @@ + + + + + + + /mob/living/silicon - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

silicon + + + +

+ + + + + + + + + + +

Vars

is_centeredFor cyborgs with wide "heads", when false causes the hat icon to be stretched.

Procs

can_hearEAR DAMAGE
place_on_headAttempts to put an item on a silicon's head.
remove_from_headAttempts to remove any hats a silicon is wearing.
run_armorreturns the damage value of the attack after processing the silicons's various armor protections
subsystem_atmos_controlAtmos Control
subsystem_crew_monitorCrew Monitor
subsystem_law_managerLaw Manager
subsystem_power_monitorPower Monitor
+

Var Details

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

+ + + diff --git a/mob/living/silicon/ai.html b/mob/living/silicon/ai.html new file mode 100644 index 0000000000000..40376f4d444cb --- /dev/null +++ b/mob/living/silicon/ai.html @@ -0,0 +1,78 @@ + + + + + + + /mob/living/silicon/ai - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

ai + + + +

+ + + + + + + + +

Vars

ai_announcement_string_menuThe cached AI annoucement help menu.
allow_teleporterIf true, this AI core can use the teleporter.
announce_arrivalsIf our AI doesn't want to be the arrivals announcer, this gets set to FALSE.
cracked_cameraSet to true if the AI cracks it's camera by using the malf ability
purchased_modulesList of modules the AI has purchased malf upgrades for.
turrets_upgradedWhether or not the AI has upgraded their turrets

Procs

remove_malf_abilitiesRemoves all malfunction-related /datum/action's from the target AI.
+

Var Details

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.

cracked_camera + + + + +

+

Set to true if the AI cracks it's camera by using the malf ability

purchased_modules + + + + +

+

List of modules the AI has purchased malf upgrades for.

turrets_upgraded + + + + +

+

Whether or not the AI has upgraded their turrets

Proc Details

remove_malf_abilities +

+

Removes all malfunction-related /datum/action's from the target AI.

+ + + diff --git a/mob/living/silicon/pai.html b/mob/living/silicon/pai.html new file mode 100644 index 0000000000000..10ca186ed3b99 --- /dev/null +++ b/mob/living/silicon/pai.html @@ -0,0 +1,50 @@ + + + + + + + /mob/living/silicon/pai - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

pai + + + +

+ + + + +

Vars

active_softwareCurrently active software
installed_softwareList of all installed software
integ_signalerIntegrated remote signaler for signalling
+

Var Details

active_software + + + + +

+

Currently active software

installed_software + + + + +

+

List of all installed software

integ_signaler + + + + +

+

Integrated remote signaler for signalling

+ + + diff --git a/mob/living/silicon/robot.html b/mob/living/silicon/robot.html new file mode 100644 index 0000000000000..8fc527abcc250 --- /dev/null +++ b/mob/living/silicon/robot.html @@ -0,0 +1,413 @@ + + + + + + + /mob/living/silicon/robot - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

robot + + + +

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

Vars

allow_renameCan a robot rename itself with the Namepick verb?
base_iconThe default skin of some special robots.
braintypeDetermines if the robot is referred to as an "Android", "Robot", or "Cyborg" based on the type of brain inside.
brute_modIncoming brute damage is multiplied by this number.
burn_modIncoming burn damage is multiplied by this number.
can_lock_coverIf set to TRUE, a robot can re-lock its own cover.
componentsComponents are basically robot organs.
custom_eye_namesRobot skins with multiple variants for different modules. They require special handling to make their eyes display.
custom_panelDoes the robot have a non-default sprite for an open service panel?
custom_panel_namesRobot skins with non-default sprites for an open service panel.
damage_protectionAll incoming damage has this number subtracted from it.
ear_protectionIs the robot protected from the audio component of flashbangs? Prevents inflicting confusion.
emaggedHas the robot been emagged?
emp_protectionIs the robot immune to EMPs?
eye_protectionIs the robot protected from the visual portion of flashbangs and flashes(1)? Are they protected from laser pointer (2)?
floorbufferDoes the robot clean dirt under it when it moves onto a tile?
has_advanced_reagent_visionIf 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_cameraDetermines if a robot acts as a mobile security camera that can be observed through security consoles or by an AI.
identUsed when generating the number in default robot names.
ionpulseDoes the robot have ion thrusters installed?
ionpulse_onAre the robot's ion thrusters activated?
is_emaggableCan the robot be emagged?
lamp_intensityLuminosity of the headlamp. 0 is off. Higher settings than the minimum require power. Increments in steps of 2.
lamp_maxMaximum brightness of a robot's headlamp. Set as a var for easy adjusting.
lamp_rechargingFlag for if the headlamp is on cooldown after being forcibly disabled (e.g. by a shadow deamon).
last_camera_updateWhen the camera moved signal was sent last. Avoid overdoing it.
lawupdateDetermines if the robot tries to sync its laws to a connected AI.
lockchargeUsed when locking down a robot to preserve cell charge.
lockedIs the robot's cover locked?
low_power_modeHas the robot's power cell run out of charge?
mail_destinationInteger used to determine self-mailing location, used only by drones and saboteur robots.
mmiUsed for deconstruction to remember what the robot was constructed out of.
modtypeWhat specialisation the robot has.
modules_breakIf set to TRUE, the robot's 3 module slots will progressively become unusable as they take damage.
openedIs the robot's maintenance panel open?
pdahideIf set to TRUE, the robot will be hidden on the PDA messenger list.
req_accessUsed for robot access checks.
req_one_accessDetermines the ID access needed to unlock the robot's cover.
robot_suitUsed for deconstruction to remember what the robot was constructed out of.
scrambledcodesIf set to TRUE, a robot will not be visible on the robotics control console.
speedSpeed modifier. Positive numbers reduce speed, negative numbers increase it.
tracking_entitiesThe number of known entities currently accessing the internal camera.
weapons_unlockSetting to TRUE unlocks a borg's Safety Override modules.

Procs

get_module_spritesReturns an associative list of possible borg sprites based on the selected_module.
get_module_typesReturns a list of choosable module types, associated with the module icon for the radial menu.
initialize_moduleSets up the module items and sprites for the cyborg module chosen in pick_module().
observer_screen_updateUpdates the observers's screens with cyborg itemss. +Arguments
on_drop_hotkey_pressUsed in robot.dm when the user presses "Q" by default.
robot_module_hat_offsetSets 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_tagSet Mail Tag
spill_upgradesTake the borg's upgrades and spill them on the floor
+

Var Details

allow_rename + + + + +

+

Can a robot rename itself with the Namepick verb?

base_icon + + + + +

+

The default skin of some special robots.

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_eye_names + + + + +

+

Robot skins with multiple variants for different modules. They require special handling to make their eyes display.

custom_panel + + + + +

+

Does the robot have a non-default sprite for an open service panel?

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.

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?

eye_protection + + + + +

+

Is the robot protected from the visual portion of flashbangs and flashes(1)? Are they protected from laser pointer (2)?

floorbuffer + + + + +

+

Does the robot clean dirt under it when it moves onto a tile?

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.

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.

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.

speed + + + + +

+

Speed modifier. Positive numbers reduce speed, negative numbers increase it.

tracking_entities + + + + +

+

The number of known entities currently accessing the internal camera.

weapons_unlock + + + + +

+

Setting to TRUE unlocks a borg's Safety Override modules.

Proc Details

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.

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.)

+

Arguments:

+
    +
  • module - An icon_state for which the offset needs to be calculated.
  • +

set_mail_tag +

+

Set Mail Tag

spill_upgrades +

+

Take the borg's upgrades and spill them on the floor

+ + + diff --git a/mob/living/silicon/robot/drone.html b/mob/living/silicon/robot/drone.html new file mode 100644 index 0000000000000..385b2b9fc9d48 --- /dev/null +++ b/mob/living/silicon/robot/drone.html @@ -0,0 +1,36 @@ + + + + + + + /mob/living/silicon/robot/drone - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

drone + + + +

+ + +

Vars

sync_cooldownCooldown for law syncs
+

Var Details

sync_cooldown + + + + +

+

Cooldown for law syncs

+ + + diff --git a/mob/living/simple_animal.html b/mob/living/simple_animal.html new file mode 100644 index 0000000000000..ad916af3a7f51 --- /dev/null +++ b/mob/living/simple_animal.html @@ -0,0 +1,344 @@ + + + + + + + /mob/living/simple_animal - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

simple_animal + + + +

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

Vars

AIStatusThe 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_healthHealth of the mob before being admin-frozen, restored afterwards
animal_speciesSorry, no spider+corgi buttbabies.
armour_penetration_flatFlat armour reduction, occurs after percentage armour penetration.
armour_penetration_percentagePercentage armour reduction, happens before flat armour reduction.
atmos_requirementsAtmos 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_fireIf the mob can catch fire
can_collarCan add collar to mob or not, use the set_can_collar if you want to change this on runtime
can_crawlCan this simple mob crawl or not? If FALSE, it won't get immobilized by crawling
can_have_aiOnce we have become sentient, we can never go back
childtypeHot simple_animal baby making vars
cold_damage_per_tickSame as heat_damage_per_tick, only if the bodytemperature it's lower than minbodytemp
collar_typeIf the mob has collar sprites, define them.
damage_coeff1 for full damage , 0 for none , -1 for 1:1 heal from that source
death_soundThe sound played on death
del_on_deathCauses mob to be deleted on death, useful for mobs that spawn lootable corpses
emote_hearHearable emotes
emote_seeUnlike speak_emote, the list of things in this variable only show by themselves with no spoken text. IE: Ian barks, Ian yaps
environment_smashSet to 1 to allow breaking of crates,lockers,racks,tables; 2 for walls; 3 for Rwalls
fire_damageDamage the mob will take if it is on fire
flip_on_deathFlip the sprite upside down on death. Mostly here for things lacking custom dead sprites.
footstep_typeWhat kind of footstep this mob should have. Null if it shouldn't have any.
force_thresholdMinimum force required to deal any damage
friendlyIf the mob does no damage with it's attack
gold_core_spawnableIf the mob can be spawned with a gold slime core. HOSTILE_SPAWN are spawned with plasma, FRIENDLY_SPAWN are spawned with blood
healableHealable by medical stacks? Defaults to yes.
heat_damage_per_tickAmount of damage applied if animal's body temperature is higher than maxbodytemp
icon_gibWe only try to show a gibbing animation if this exists.
lootList of things spawned at mob's loc when it dies
master_commanderHolding var for determining who own/controls a sentient simple animal (for sentience potions).
melee_damage_lowerLETTING SIMPLE ANIMALS ATTACK? WHAT COULD GO WRONG. Defaults to zero so Ian can still be cuddly
melee_damage_typeDamage type of a simple mob's melee attack, should it do damage.
my_zI don't want to confuse this with client registered_z
obj_damageHow much damage this simple animal does to objects, if any
pass_door_while_hiddenAllows a mob to pass unbolted doors while hidden
sentience_typeSentience type, for slime potions
shouldwakeupConvenience var for forcibly waking up an idling AI on next check.
speedHigher speed is slower, negative speed is faster
stop_automated_movementUse this to temporarely stop random movement or to if you write special movement code for animals.
stop_automated_movement_when_pulledWhen set to TRUE this stops the animal from moving when someone is pulling it.
unique_petIf the mob can be renamed
unsuitable_atmos_damageThis damage is taken when atmos doesn't fit all the requirements above
wanderDoes the mob wander around when idle?
xenobiology_spawnedWas this mob spawned by xenobiology magic? Used for mobcapping.

Procs

handle_atom_delWe need to clear the reference to where we're walking to properly GC
+

Var Details

AIStatus + + + + +

+

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.

armour_penetration_flat + + + + +

+

Flat armour reduction, occurs after percentage armour penetration.

armour_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_collar + + + + +

+

Can add collar to mob or not, use the set_can_collar if you want to change this on runtime

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

collar_type + + + + +

+

If the mob has collar sprites, define them.

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

healable + + + + +

+

Healable by medical stacks? Defaults to yes.

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

pass_door_while_hidden + + + + +

+

Allows a mob to pass unbolted doors while hidden

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?

xenobiology_spawned + + + + +

+

Was this mob spawned by xenobiology magic? Used for mobcapping.

Proc Details

handle_atom_del +

+

We need to clear the reference to where we're walking to properly GC

+ + + diff --git a/mob/living/simple_animal/bot.html b/mob/living/simple_animal/bot.html new file mode 100644 index 0000000000000..5abdaab4191ea --- /dev/null +++ b/mob/living/simple_animal/bot.html @@ -0,0 +1,323 @@ + + + + + + + /mob/living/simple_animal/bot - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

bot + + + +

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

Vars

RadioThe bot's radio, for speaking to people.
access_cardThe ID card that the bot "holds"
ai_waypointThe end point of a bot's path, or the target location.
auto_patrolSet to make bot automatically patrol
awaiting_beaconCount of pticks awaiting a beacon response
base_speedThe speed at which the bot moves, or the number of times it moves per process() tick.
blockcountNumber of times retried a blocked path
bot_filterThe radio filter the bot uses to identify itself on the network.
bot_namestoring bot_name prior to pai and restoring it. MULEBOT uses this for suffix system
bot_purposeBot Purpose under Show Laws
bot_typeType of bot, one of the *_BOT defines.
calling_aiLinks a bot to the AI calling it.
control_freqBot control frequency
data_hud_typeThe type of data HUD the bot uses. Diagnostic by default.
declare_messageWhat the bot will display to the HUD user.
destinationDestination description tag
frustrationUsed by some bots for tracking failures to reach their target.
hackedUsed to differentiate between being hacked by silicons and emagged by humans.
hijackedIs currently hijacked by a pulse demon?
ignore_jobList of jobs claimed by bot
ignore_listList of unreachable targets for an ignore-list enabled bot to ignore.
ignore_list_cleanup_timerThis ticks up every automated action, at 300 we clean the ignore list
last_target_locationStoring last chased target known location
lost_targetWill be true if we lost target we were chasing
modeStandardizes the vars that indicate the bot is busy with its function.
modelThe type of bot it is.
nearest_beaconThe nearest beacon's tag
nearest_beacon_locThe nearest beacon's location
new_destinationPending new destination (waiting for beacon response)
next_destinationThe next destination in the patrol route
openMaint panel
pathList of turfs through which a bot 'steps' to reach the waypoint
patrol_targetThis is turf to navigate to (location of beacon)
radio_channelThe bot's default radio channel
radio_configWhich channels can the bot listen to
remote_disabledIf enabled, the AI cannot Remotely control a bot. It can still control it through cameras.
req_accessList of access values you can have to access the bot. Consider this as req_one_access
summon_targetThe turf of a user summoning a bot.
text_dehackText shown when resetting a bots hacked status to normal.
text_dehack_failShown when a silicon tries to reset a bot emagged with the emag item, which cannot be reset.
text_hackCustom text returned to a silicon upon hacking a bot.
triesNumber of times the bot tried and failed to move.
+

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_filter + + + + +

+

The radio filter the bot uses to identify itself on the network.

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.

control_freq + + + + +

+

Bot control frequency

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_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.

+ + + diff --git a/mob/living/simple_animal/bot/floorbot.html b/mob/living/simple_animal/bot/floorbot.html new file mode 100644 index 0000000000000..6095b0c79a5b8 --- /dev/null +++ b/mob/living/simple_animal/bot/floorbot.html @@ -0,0 +1,78 @@ + + + + + + + /mob/living/simple_animal/bot/floorbot - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

floorbot + + + +

+ + + + + + + + +

Vars

amountTiles in inventory
autotileFix the floor and include a tile.
eat_tilesAdd floor tiles to inventory
make_tilesConvert metal into floor tiles (drops on floor)
naggedPrevents the Floorbot nagging more than once per refill.
process_typeDetermines what to do when process_scan() receives a target. See process_scan() for details.
replace_tilesAdd tiles to existing floor
+

Var Details

amount + + + + +

+

Tiles in inventory

autotile + + + + +

+

Fix the floor and include a tile.

eat_tiles + + + + +

+

Add floor tiles to inventory

make_tiles + + + + +

+

Convert metal into floor tiles (drops on floor)

nagged + + + + +

+

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

+ + + diff --git a/mob/living/simple_animal/bot/mulebot.html b/mob/living/simple_animal/bot/mulebot.html new file mode 100644 index 0000000000000..a0847bc260ea4 --- /dev/null +++ b/mob/living/simple_animal/bot/mulebot.html @@ -0,0 +1,43 @@ + + + + + + + /mob/living/simple_animal/bot/mulebot - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

mulebot + + + +

+ + + +

Vars

next_move_timeworld.time of next move
step_delayDelay in deciseconds between each step
+

Var Details

next_move_time + + + + +

+

world.time of next move

step_delay + + + + +

+

Delay in deciseconds between each step

+ + + diff --git a/mob/living/simple_animal/butterfly.html b/mob/living/simple_animal/butterfly.html new file mode 100644 index 0000000000000..487a2dfd2486f --- /dev/null +++ b/mob/living/simple_animal/butterfly.html @@ -0,0 +1,35 @@ + + + + + + + /mob/living/simple_animal/butterfly - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

butterfly + + + +

+ + +

Procs

decomposeMade 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

+ + + diff --git a/mob/living/simple_animal/demon/pulse_demon.html b/mob/living/simple_animal/demon/pulse_demon.html new file mode 100644 index 0000000000000..275ac095804d5 --- /dev/null +++ b/mob/living/simple_animal/demon/pulse_demon.html @@ -0,0 +1,239 @@ + + + + + + + /mob/living/simple_animal/demon/pulse_demon - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

pulse_demon + + + +

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

Vars

apc_being_hijackedReference to the APC currently being hijacked.
apc_imagesImages of APCs currently being shown on the client.
bot_movedelayDelay tracker for movement inside bots.
cable_imagesImages of cables currently being shown on the client.
can_exit_cableControls whether the demon can move outside of cables. Toggled by a spell.
chargeCurrent quantity of power the demon currently holds, spent while purchasing, upgrading or using spells or upgrades. Use adjust_charge to modify this.
charge_drainedBook keeping for objective win conditions.
controlling_areaArea being controlled, should be maintained as long as the demon does not move outside a container (APC, object, robot, bot).
current_botInhabited bot, only maintained while inside the bot.
current_cableInhabited cable, only maintained while on top of the cable.
current_powerInhabited power source, maintained while inside, or while inside its area if it is an APC.
current_robotInhabited cyborg, only maintained while inside the cyborg.
current_weaponInhabited item, only items which can be used in rechargers can be hijacked. Only maintained while inside the item.
do_drainControls whether the demon will drain power from sources. Toggled by a spell.
emp_debounceTracking to prevent multiple EMPs in the same tick from instakilling a demon.
glow_colorThe color of light the demon emits. The range of the light is proportional to charge.
health_loss_rateAmount of health lost per Life tick when the power requirement was not met.
health_regen_rateAmount of health regenerated per Life tick when the power requirement was met.
hijack_timeThe time it takes to hijack APCs and cyborgs.
hijacked_apcsList of all previously hijacked APCs.
hijacked_robotsA cyborg that has already been hijacked can be re-entered instantly.
hurt_soundsList of sounds that is picked from when the demon dies or is EMP'd.
inside_cable_speedSpeed used while moving inside cables.
max_drain_rateMaximum value for power_drain_rate based on upgrades.
maxchargeMaximum quantity of power the demon can hold at once.
outside_cable_speedSpeed used while moving outside cables. Can be upgraded.
power_drain_rateAmount of power (in watts) to drain from power sources every Life tick.
power_per_regenAmount of power (in watts) required to regenerate health.
regen_lockLock health regeneration while this is not 0, decreases by 1 every Life tick.
speech_soundsList of sounds that is picked from when the demon speaks.
+

Var Details

apc_being_hijacked + + + + +

+

Reference to the APC currently being hijacked.

apc_images + + + + +

+

Images of APCs currently being shown on the client.

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 power the demon currently holds, spent while purchasing, upgrading or using spells or upgrades. Use adjust_charge to modify this.

charge_drained + + + + +

+

Book keeping for objective win conditions.

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 charge.

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.

maxcharge + + + + +

+

Maximum quantity of power the demon can hold at once.

outside_cable_speed + + + + +

+

Speed used while moving outside cables. Can be upgraded.

power_drain_rate + + + + +

+

Amount of power (in watts) to drain from power sources every Life tick.

power_per_regen + + + + +

+

Amount of power (in 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.

+ + + diff --git a/mob/living/simple_animal/hostile.html b/mob/living/simple_animal/hostile.html new file mode 100644 index 0000000000000..1095ac06a174f --- /dev/null +++ b/mob/living/simple_animal/hostile.html @@ -0,0 +1,56 @@ + + + + + + + /mob/living/simple_animal/hostile - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

hostile + + + +

+ + + + + +

Procs

AICanContinueAI Status
ListTargetsHOSTILE MOB TARGETTING AND AGGRESSION
aggro_fastShortcut proc to allow initiating combat slightly faster than waiting for normal processing.
deathEND HOSTILE MOB TARGETTING AND AGGRESSION

Proc Details

AICanContinue +

+

AI Status

ListTargets +

+

HOSTILE MOB TARGETTING AND AGGRESSION

aggro_fast +

+

Shortcut proc to allow initiating combat slightly faster than waiting for normal processing.

death +

+

END HOSTILE MOB TARGETTING AND AGGRESSION

+ + + 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 0000000000000..69fdbccc6b32e --- /dev/null +++ b/mob/living/simple_animal/hostile/asteroid/elite/broodmother.html @@ -0,0 +1,37 @@ + + + + + + + /mob/living/simple_animal/hostile/asteroid/elite/broodmother - Space Station 13 + + +
+ Space 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.
  • +
+ + + 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 0000000000000..df71556fe4002 --- /dev/null +++ b/mob/living/simple_animal/hostile/asteroid/elite/herald.html @@ -0,0 +1,37 @@ + + + + + + + /mob/living/simple_animal/hostile/asteroid/elite/herald - Space Station 13 + + +
+ Space 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.
  • +
+ + + 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 0000000000000..4c5122722418b --- /dev/null +++ b/mob/living/simple_animal/hostile/asteroid/elite/legionnaire.html @@ -0,0 +1,45 @@ + + + + + + + /mob/living/simple_animal/hostile/asteroid/elite/legionnaire - Space Station 13 + + +
+ Space 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.
  • +
+

Vars

chargingWhether 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

+ + + 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 0000000000000..3d2acb1a28dfb --- /dev/null +++ b/mob/living/simple_animal/hostile/asteroid/elite/pandora.html @@ -0,0 +1,37 @@ + + + + + + + /mob/living/simple_animal/hostile/asteroid/elite/pandora - Space Station 13 + + +
+ Space 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.
  • +
+ + + diff --git a/mob/living/simple_animal/hostile/construct.html b/mob/living/simple_animal/hostile/construct.html new file mode 100644 index 0000000000000..4093424c8e2bc --- /dev/null +++ b/mob/living/simple_animal/hostile/construct.html @@ -0,0 +1,50 @@ + + + + + + + /mob/living/simple_animal/hostile/construct - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

construct + + + +

+ + + + +

Vars

held_bodyThe body/brain of the player inside this construct, transferred over from the soulstone.
holyIs this a holy/purified construct?
playstyle_stringMessage 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.

+ + + 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 0000000000000..7d347d370bb78 --- /dev/null +++ b/mob/living/simple_animal/hostile/construct/armoured.html @@ -0,0 +1,35 @@ + + + + + + + /mob/living/simple_animal/hostile/construct/armoured - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

armoured + + + +

+ +

Juggernaut

+

Procs

update_health_hudui stuff

Proc Details

update_health_hud +

+

ui stuff

+ + + diff --git a/mob/living/simple_animal/hostile/gorilla.html b/mob/living/simple_animal/hostile/gorilla.html new file mode 100644 index 0000000000000..a07aa6058c4ee --- /dev/null +++ b/mob/living/simple_animal/hostile/gorilla.html @@ -0,0 +1,99 @@ + + + + + + + /mob/living/simple_animal/hostile/gorilla - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

gorilla + + + +

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

Vars

carriable_cacheTypecache of all the types we can pick up and carry
crate_limitThe max number of crates we can carry
crates_in_handA lazylist of all crates we are carrying
dismember_chanceChance to dismember while unconcious
is_bipedalIs the gorilla stood up or not?
stamina_damageAmount of stamina lost on a successful hit
throw_onhitChance of doing the throw or stamina damage, along with the flat damage amount

Procs

drop_all_cratesDrops all the crates in our crate list.
drop_random_crateDrops one random crates from our crate list.
get_target_bodypartsReturns 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.

+ + + diff --git a/mob/living/simple_animal/hostile/gorilla/cargo_domestic.html b/mob/living/simple_animal/hostile/gorilla/cargo_domestic.html new file mode 100644 index 0000000000000..885eaa26f7870 --- /dev/null +++ b/mob/living/simple_animal/hostile/gorilla/cargo_domestic.html @@ -0,0 +1,36 @@ + + + + + + + /mob/living/simple_animal/hostile/gorilla/cargo_domestic - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

cargo_domestic + + + +

+ + +

Vars

access_cardThe ID card that the gorilla is currently wearing.
+

Var Details

access_card + + + + +

+

The ID card that the gorilla is currently wearing.

+ + + diff --git a/mob/living/simple_animal/hostile/guardian.html b/mob/living/simple_animal/hostile/guardian.html new file mode 100644 index 0000000000000..b7bfaef2ace38 --- /dev/null +++ b/mob/living/simple_animal/hostile/guardian.html @@ -0,0 +1,36 @@ + + + + + + + /mob/living/simple_animal/hostile/guardian - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

guardian + + + +

+ + +

Vars

stealthy_deployingIf 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

+ + + 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 0000000000000..6dcc1d8819cfd --- /dev/null +++ b/mob/living/simple_animal/hostile/guardian/gaseous.html @@ -0,0 +1,50 @@ + + + + + + + /mob/living/simple_animal/hostile/guardian/gaseous - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

gaseous + + + +

+ + + + +

Vars

linda_flagsLinda flag for the expelled gas because we need to use special flags for it that are not readable in game well.
moles_of_gasMoles of gas being expelled.
possible_gasesPossible gases to expel, with how much 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 much moles they create.

+ + + 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 0000000000000..36eebc50295f1 --- /dev/null +++ b/mob/living/simple_animal/hostile/guardian/protector.html @@ -0,0 +1,36 @@ + + + + + + + /mob/living/simple_animal/hostile/guardian/protector - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

protector + + + +

+ + +

Vars

connected_shieldsThe 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

+ + + diff --git a/mob/living/simple_animal/hostile/malf_drone.html b/mob/living/simple_animal/hostile/malf_drone.html new file mode 100644 index 0000000000000..09b48a0e46ab1 --- /dev/null +++ b/mob/living/simple_animal/hostile/malf_drone.html @@ -0,0 +1,35 @@ + + + + + + + /mob/living/simple_animal/hostile/malf_drone - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

malf_drone + + + +

+ + +

Procs

advanced_bullet_dodgeWe overide the basic effect, as malfunctioning drones are in space, and use jets to dodge. Also lets us do cool effects.

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.

+ + + diff --git a/mob/living/simple_animal/hostile/megafauna.html b/mob/living/simple_animal/hostile/megafauna.html new file mode 100644 index 0000000000000..9201197563984 --- /dev/null +++ b/mob/living/simple_animal/hostile/megafauna.html @@ -0,0 +1,50 @@ + + + + + + + /mob/living/simple_animal/hostile/megafauna - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

megafauna + + + +

+ + + + +

Vars

enragedHas someone enabled hard mode?
enraged_lootPath of the hardmode loot disk, if applicable.

Procs

enrageThis 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.
+

Var Details

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.

+ + + 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 0000000000000..8430bd526048c --- /dev/null +++ b/mob/living/simple_animal/hostile/megafauna/ancient_robot.html @@ -0,0 +1,36 @@ + + + + + + + /mob/living/simple_animal/hostile/megafauna/ancient_robot - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

ancient_robot + + + +

+ + +

Vars

TRLegs and the connector for the legs
+

Var Details

TR + + + + +

+

Legs and the connector for the legs

+ + + 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 0000000000000..a186f9a25eb0b --- /dev/null +++ b/mob/living/simple_animal/hostile/megafauna/bubblegum.html @@ -0,0 +1,50 @@ + + + + + + + /mob/living/simple_animal/hostile/megafauna/bubblegum - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

bubblegum + + + +

+ + + + +

Vars

enraged_healingEnraged healing recived
second_lifeIs it on its enraged exclusive second life?
second_life_portalDoes 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?

+ + + 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 0000000000000..1fcf125ce0583 --- /dev/null +++ b/mob/living/simple_animal/hostile/megafauna/colossus.html @@ -0,0 +1,36 @@ + + + + + + + /mob/living/simple_animal/hostile/megafauna/colossus - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

colossus + + + +

+ + +

Vars

final_availableHave we used our final attack yet?
+

Var Details

final_available + + + + +

+

Have we used our final attack yet?

+ + + 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 0000000000000..d490189b2079e --- /dev/null +++ b/mob/living/simple_animal/hostile/megafauna/hierophant.html @@ -0,0 +1,36 @@ + + + + + + + /mob/living/simple_animal/hostile/megafauna/hierophant - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

hierophant + + + +

+ + +

Vars

colour_shiftingIf the hiero has changed colour, stop the rays animation.
+

Var Details

colour_shifting + + + + +

+

If the hiero has changed colour, stop the rays animation.

+ + + diff --git a/mob/living/simple_animal/hostile/mimic/copy/vendor.html b/mob/living/simple_animal/hostile/mimic/copy/vendor.html new file mode 100644 index 0000000000000..cfe214395c23a --- /dev/null +++ b/mob/living/simple_animal/hostile/mimic/copy/vendor.html @@ -0,0 +1,36 @@ + + + + + + + /mob/living/simple_animal/hostile/mimic/copy/vendor - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

vendor + + + +

+ + +

Vars

orig_vendorThe vendor we were turned from.
+

Var Details

orig_vendor + + + + +

+

The vendor we were turned from.

+ + + diff --git a/mob/living/simple_animal/hostile/morph.html b/mob/living/simple_animal/hostile/morph.html new file mode 100644 index 0000000000000..567af82811b90 --- /dev/null +++ b/mob/living/simple_animal/hostile/morph.html @@ -0,0 +1,94 @@ + + + + + + + /mob/living/simple_animal/hostile/morph - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

morph + + + +

+ + + + + + + + + + +

Vars

ambush_damageHow much damage a successful ambush attack does
ambush_preparedIf the morph is ready to perform an ambush
ambush_spellThe ambush action used by the morph
ambush_weakenHow much weaken a successful ambush attack applies
gathered_foodHow much the morph has gathered in terms of food. Used to reproduce and such
mimic_spellThe spell the morph uses to morph
morphedIf the morph is disguised or not
pass_airlock_spellThe spell the morph uses to pass through airlocks

Procs

add_foodAdds 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

+ + + diff --git a/mob/living/simple_animal/hostile/poison/giant_spider/hunter/infestation_spider.html b/mob/living/simple_animal/hostile/poison/giant_spider/hunter/infestation_spider.html new file mode 100644 index 0000000000000..55823f52ad865 --- /dev/null +++ b/mob/living/simple_animal/hostile/poison/giant_spider/hunter/infestation_spider.html @@ -0,0 +1,50 @@ + + + + + + + /mob/living/simple_animal/hostile/poison/giant_spider/hunter/infestation_spider - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

infestation_spider + + + +

+ +

Child of giant_spider because this should do everything the spider does and more

+ + +

Vars

current_orderHandles the spider's behavior
gibbedTo check and gib the spider when dead, then remove only one of the counter for the changeling owner
owner_UIDReferences to the owner changeling
+

Var Details

current_order + + + + +

+

Handles the spider's behavior

gibbed + + + + +

+

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

+ + + 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 0000000000000..bc066443b4eb4 --- /dev/null +++ b/mob/living/simple_animal/hostile/poison/terror_spider.html @@ -0,0 +1,36 @@ + + + + + + + /mob/living/simple_animal/hostile/poison/terror_spider - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

terror_spider + + + +

+ + +

Vars

loudspeakerDoes this terror speak loudly on the terror hivemind?
+

Var Details

loudspeaker + + + + +

+

Does this terror speak loudly on the terror hivemind?

+ + + diff --git a/mob/living/simple_animal/lizard.html b/mob/living/simple_animal/lizard.html new file mode 100644 index 0000000000000..26de33a17350f --- /dev/null +++ b/mob/living/simple_animal/lizard.html @@ -0,0 +1,36 @@ + + + + + + + /mob/living/simple_animal/lizard - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

lizard + + + +

+ + +

Vars

has_tailLizards start with a tail
+

Var Details

has_tail + + + + +

+

Lizards start with a tail

+ + + diff --git a/mob/living/simple_animal/parrot.html b/mob/living/simple_animal/parrot.html new file mode 100644 index 0000000000000..911ba1422ef4a --- /dev/null +++ b/mob/living/simple_animal/parrot.html @@ -0,0 +1,39 @@ + + + + + + + /mob/living/simple_animal/parrot - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

parrot + + + +

+ + +

Procs

try_grab_itemAttempts to pick up an adjacent item

Proc Details

try_grab_item +

+

Attempts to pick up an adjacent item

+

Arguments:

+
    +
  • I - The item to try and pick up
  • +
+ + + 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 0000000000000..294dce0b9cb90 --- /dev/null +++ b/mob/living/simple_animal/pet/cat/cak.html @@ -0,0 +1,36 @@ + + + + + + + /mob/living/simple_animal/pet/cat/cak - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

cak + + + +

+ + +

Vars

final_bitesNumber of times the corpse has been bitten
+

Var Details

final_bites + + + + +

+

Number of times the corpse has been bitten

+ + + 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 0000000000000..d93e102bb6c1e --- /dev/null +++ b/mob/living/simple_animal/pet/dog/corgi.html @@ -0,0 +1,64 @@ + + + + + + + /mob/living/simple_animal/pet/dog/corgi - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

corgi + + + +

+ + + + + + +

Vars

inventory_backCurrently worn item on the back slot
inventory_headCurrently worn item on the head slot
strippable_inventory_slotsItem slots that are available for this corgi to equip stuff into

Procs

drop_hatDeadchat plays command that drops the current hat off Ian.
find_new_hatDeadchat 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

strippable_inventory_slots + + + + +

+

Item slots that are available for this corgi to equip stuff into

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.

+ + + diff --git a/mob/living/simple_animal/possessed_object.html b/mob/living/simple_animal/possessed_object.html new file mode 100644 index 0000000000000..e949c2bf56ad5 --- /dev/null +++ b/mob/living/simple_animal/possessed_object.html @@ -0,0 +1,43 @@ + + + + + + + /mob/living/simple_animal/possessed_object - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

possessed_object + + + +

+ + + +

Vars

escape_chanceThe probability % of us escaping if stuffed into a bag/toolbox/etc
possessed_itemWhat is the actual item we are "possessing"
+

Var Details

escape_chance + + + + +

+

The probability % of us escaping if stuffed into a bag/toolbox/etc

possessed_item + + + + +

+

What is the actual item we are "possessing"

+ + + diff --git a/mob/living/simple_animal/revenant.html b/mob/living/simple_animal/revenant.html new file mode 100644 index 0000000000000..9233cc09ee8b6 --- /dev/null +++ b/mob/living/simple_animal/revenant.html @@ -0,0 +1,155 @@ + + + + + + + /mob/living/simple_animal/revenant - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

revenant + + + +

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

Vars

drained_mobscontains a list of UIDs of mobs who have been drained. cannot drain the same mob twice.
drainingIf the revenant is draining someone.
essenceThe resource of revenants. Max health is equal to three times this amount
essence_accumulatedHow much essence the revenant has stolen
essence_drainedHow much essence the revenant has drained.
essence_regen_amountHow much essence regenerates
essence_regen_capThe regeneration cap of essence (go figure); regenerates every Life() tick up to this amount.
essence_regeneratingIf the revenant regenerates essence or not; 1 for yes, 0 for no
icon_drainThe revant's icon while draining mobs
icon_idleThe revenant's idle icon
icon_revealThe revenant's revealed icon
icon_stunThe revenant's stunned icon
inhibitedIf the revenant's abilities are blocked by a chaplain's power.
perfectsoulsHow many perfect, regen-cap increasing souls the revenant has.
revealedIf the revenant can take damage from normal sources.
unreveal_timeHow long the revenant is revealed for, is about 2 seconds times this var.
unstun_timeHow long the revenant is stunned for, is about 2 seconds times this var.

Procs

ClickOnHarvest
+

Var Details

drained_mobs + + + + +

+

contains a list of UIDs of mobs who have been drained. cannot drain the same mob twice.

draining + + + + +

+

If the revenant is draining someone.

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

+ + + diff --git a/mob/living/simple_animal/slime.html b/mob/living/simple_animal/slime.html new file mode 100644 index 0000000000000..1dd9e56fad293 --- /dev/null +++ b/mob/living/simple_animal/slime.html @@ -0,0 +1,78 @@ + + + + + + + /mob/living/simple_animal/slime - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

slime + + + +

+ + + + + + + + +

Vars

AIprocDetermines if the AI loop is activated
AtkcoolAttack cooldown
DisciplineIf 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
SStunStun variable
TempstunTemporary temperature stuns
colourTIME FOR SUBSPECIES
effectmodCORE-CROSSING CODE
+

Var Details

AIproc + + + + +

+

Determines if the AI loop is activated

Atkcool + + + + +

+

Attack cooldown

Discipline + + + + +

+

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

+ + + diff --git a/obj.html b/obj.html new file mode 100644 index 0000000000000..305bf3d21b792 --- /dev/null +++ b/obj.html @@ -0,0 +1,273 @@ + + + + + + + /obj - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

obj + + + +

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

Vars

damage_deflectionDamage under this value will be completely ignored
emaggedIs it emagged or not?

Procs

GetExplosionBlockreturns how much the object blocks an explosion. Used by subtypes.
acid_actthe obj's reaction when touched by acid
acid_meltcalled when the obj is destroyed by acid.
acid_processingthe proc called by the acid subsystem to process the acid that's on the obj
bitmask_smoothObject override to prevent unanchored objects from smoothing
burncalled when the obj is destroyed by fire
extinguishCalled when the obj is no longer on fire.
fire_actFIRE
hulk_damageCalled to get the damage that hulks will deal to the obj.
modify_max_integritychanges max_integrity while retaining current health percentage, returns TRUE if the obj got broken.
obj_destructionwhat happens when the obj's integrity reaches zero.
play_attack_soundthe sound played when the obj is damaged.
run_obj_armorreturns the damage value of the attack after processing the obj's various armor protections
set_sharpnessSet whether the item should be sharp or not
ui_login_actCall this from a proc that is called in ui_act() to process login actions
ui_login_attackbyConvenience function to perform login actions when +the source object is hit by specific items.
ui_login_dataAppends login state data.
ui_login_ejectAttempts to eject the inserted ID.
ui_login_getReturns (or creates) the login state for the source object.
ui_login_insertAttempts to insert an object as an ID.
ui_login_loginAttempts to log in with the given login type.
ui_login_logoutAttempts to log out.
ui_login_on_loginCalled on successful login.
ui_login_on_logoutCalled on successful logout.
zap_actCalled when the obj is hit by a tesla bolt.
zap_buckle_checkOnly 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

damage_deflection + + + + +

+

Damage under this value will be completely ignored

emagged + + + + +

+

Is it emagged or not?

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

extinguish +

+

Called when the obj is no longer on fire.

fire_act +

+

FIRE

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.

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

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.

+ + + diff --git a/obj/airlock_filler_object.html b/obj/airlock_filler_object.html new file mode 100644 index 0000000000000..eeed6dfac6385 --- /dev/null +++ b/obj/airlock_filler_object.html @@ -0,0 +1,50 @@ + + + + + + + /obj/airlock_filler_object - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

airlock_filler_object + + + +

+ + + + +

Vars

filled_airlockThe door/airlock this fluff panel is attached to

Procs

CanPassMulti-tile airlocks (using a filler panel) have special handling for movables with PASS_FLAG_GLASS
pair_airlockMulti-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 +

+

Multi-tile airlocks (using a filler panel) have special handling for movables with PASS_FLAG_GLASS

pair_airlock +

+

Multi-tile airlocks pair with a filler panel, if one goes so does the other.

+ + + diff --git a/obj/docking_port/mobile.html b/obj/docking_port/mobile.html new file mode 100644 index 0000000000000..597c4a5904183 --- /dev/null +++ b/obj/docking_port/mobile.html @@ -0,0 +1,57 @@ + + + + + + + /obj/docking_port/mobile - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

mobile + + + +

+ + + + + +

Vars

lance_dockingIs this a shuttle that completely destroys whatever dares to get in it's way?
lockeddownIf this variable is true, shuttle is on lockdown, and other requests can not be processed
shuttle_speed_factorThe speed factor for this shuttle. Higher means faster.
uses_lockdownDoes this shuttle use the lockdown system?
+

Var Details

lance_docking + + + + +

+

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

shuttle_speed_factor + + + + +

+

The speed factor for this shuttle. Higher means faster.

uses_lockdown + + + + +

+

Does this shuttle use the lockdown system?

+ + + diff --git a/obj/docking_port/mobile/emergency.html b/obj/docking_port/mobile/emergency.html new file mode 100644 index 0000000000000..97cdbf0070f76 --- /dev/null +++ b/obj/docking_port/mobile/emergency.html @@ -0,0 +1,36 @@ + + + + + + + /obj/docking_port/mobile/emergency - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

emergency + + + +

+ + +

Vars

hijack_statusState of the emergency shuttles hijack status.
+

Var Details

hijack_status + + + + +

+

State of the emergency shuttles hijack status.

+ + + diff --git a/obj/effect/abstract/chasm_storage.html b/obj/effect/abstract/chasm_storage.html new file mode 100644 index 0000000000000..a67775d89cadf --- /dev/null +++ b/obj/effect/abstract/chasm_storage.html @@ -0,0 +1,41 @@ + + + + + + + /obj/effect/abstract/chasm_storage - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

chasm_storage + + + +

+ +

An abstract object which is basically just a bag that the chasm puts people inside

+

Procs

on_reviveCalled 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.

+ + + diff --git a/obj/effect/abstract/particle_holder.html b/obj/effect/abstract/particle_holder.html new file mode 100644 index 0000000000000..47e3612787e03 --- /dev/null +++ b/obj/effect/abstract/particle_holder.html @@ -0,0 +1,75 @@ + + + + + + + /obj/effect/abstract/particle_holder - Space Station 13 + + +
+ Space 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

+ + + + + +

Vars

holding_parentThe mob that is holding our item
last_attached_location_typetypepath of the last location we're in, if it's different when moved then we need to update vis contents
parentThe main item we're attached to at the moment, particle holders hold particles for something

Procs

on_movesignal called when parent is moved
on_qdelsignal called when parent is deleted
update_visual_contentslogic 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

+ + + diff --git a/obj/effect/abstract/proximity_checker.html b/obj/effect/abstract/proximity_checker.html new file mode 100644 index 0000000000000..ad481411cd642 --- /dev/null +++ b/obj/effect/abstract/proximity_checker.html @@ -0,0 +1,59 @@ + + + + + + + /obj/effect/abstract/proximity_checker - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Basic Proximity Checker + + + +

+ +

Inteded for use with the proximity checker component /datum/component/proximity_monitor. +Whenever a movable atom crosses this object, it calls HasProximity() on the object which is listening for proximity (hasprox_receiver).

+

Because these objects try to make the smallest footprint possible, when these objects move they should use direct loc setting only, and not forceMove! +The overhead for forceMove is very unnecessary, because for example turfs and areas don't need to know when these have entered or exited them, etc. +These are invisible objects who's sole purpose is to simply inform the receiver that something has moved within X tiles of the it.

+ + +

Vars

activeWhether or not the proximity checker is listening for things crossing it.
monitorThe component that this object is in use with, and that will receive HasProximity() calls.

Procs

CrossedCalled when something crossed over the proximity_checker. Notifies the hasprox_receiver it has proximity with something.
+

Var Details

active + + + + +

+

Whether or not the proximity checker is listening for things crossing it.

monitor + + + + +

+

The component that this object is in use with, and that will receive HasProximity() calls.

Proc Details

Crossed +

+

Called when something crossed over the proximity_checker. Notifies the hasprox_receiver it has proximity with something.

+

Arguments:

+
    +
  • atom/movable/AM - the atom crossing the proximity checker
  • +
  • oldloc - the location AM used to be at
  • +
+ + + diff --git a/obj/effect/anomaly.html b/obj/effect/anomaly.html new file mode 100644 index 0000000000000..fd47fc3b1c456 --- /dev/null +++ b/obj/effect/anomaly.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/anomaly - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

anomaly + + + +

+ + + +

Vars

drops_coreDo we drop a core when we're neutralized?
lifespanTime in deciseconds before the anomaly triggers
+

Var Details

drops_core + + + + +

+

Do we drop a core when we're neutralized?

lifespan + + + + +

+

Time in deciseconds before the anomaly triggers

+ + + diff --git a/obj/effect/anomaly/bluespace.html b/obj/effect/anomaly/bluespace.html new file mode 100644 index 0000000000000..320a560ca75c8 --- /dev/null +++ b/obj/effect/anomaly/bluespace.html @@ -0,0 +1,64 @@ + + + + + + + /obj/effect/anomaly/bluespace - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

bluespace + + + +

+ + + + + + +

Vars

fully_activeUsed by supermatter anomalies. If fully active, behaves like normal. Otherwise, will not teleport people, to keep them being telefragged into the SM
mass_teleportingDo we teleport everything around us to a beacon when despawning?
mob_rangeWhat is the range we will grab mobs to teleport from
other_rangeWhat is the range we will grab objects to teleport from
supermatter_spawnedDo 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?

+ + + diff --git a/obj/effect/countdown.html b/obj/effect/countdown.html new file mode 100644 index 0000000000000..ca7c58a51cbbe --- /dev/null +++ b/obj/effect/countdown.html @@ -0,0 +1,35 @@ + + + + + + + /obj/effect/countdown - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

countdown + + + +

+ + +

Procs

get_valueGet the value from our atom

Proc Details

get_value +

+

Get the value from our atom

+ + + diff --git a/obj/effect/cross_action/spacetime_dist.html b/obj/effect/cross_action/spacetime_dist.html new file mode 100644 index 0000000000000..019dea313733f --- /dev/null +++ b/obj/effect/cross_action/spacetime_dist.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/cross_action/spacetime_dist - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

spacetime_dist + + + +

+ + + +

Vars

cant_teleportUsed to prevent an infinite loop in the space tiime continuum
linked_distA flags which save people from being thrown about
+

Var Details

cant_teleport + + + + +

+

Used to prevent an infinite loop in the space tiime continuum

linked_dist + + + + +

+

A flags which save people from being thrown about

+ + + diff --git a/obj/effect/decal/cleanable.html b/obj/effect/decal/cleanable.html new file mode 100644 index 0000000000000..5afe719a09d82 --- /dev/null +++ b/obj/effect/decal/cleanable.html @@ -0,0 +1,64 @@ + + + + + + + /obj/effect/decal/cleanable - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

cleanable + + + +

+ + + + + + +

Vars

bloodiness0-100, amount of blood in this decal, used for making footprints and affecting the alpha of bloody footprints
gravity_checkfor blood n vomit in zero G --- IN GRAVITY=TRUE; NO GRAVITY=FALSE
mergeable_decalwhen another of the same type is made on the same tile will they merge --- YES=TRUE; NO=FLASE
planeprevents Ambient Occlusion effects around it ; Set to GAME_PLANE in Initialize() if on a wall
random_icon_stateswhen 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

gravity_check + + + + +

+

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

plane + + + + +

+

prevents Ambient Occlusion effects around it ; Set to GAME_PLANE in Initialize() if on a wall

random_icon_states + + + + +

+

when Initialized() its icon_state will be chosen from this list

+ + + diff --git a/obj/effect/decal/cleanable/tar.html b/obj/effect/decal/cleanable/tar.html new file mode 100644 index 0000000000000..8070f4ec753f4 --- /dev/null +++ b/obj/effect/decal/cleanable/tar.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/decal/cleanable/tar - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

tar + + + +

+ + +

Vars

targetThe turf that the tar is sitting on
+

Var Details

target + + + + +

+

The turf that the tar is sitting on

+ + + diff --git a/obj/effect/gibspawner.html b/obj/effect/gibspawner.html new file mode 100644 index 0000000000000..1340510aeb6a0 --- /dev/null +++ b/obj/effect/gibspawner.html @@ -0,0 +1,53 @@ + + + + + + + /obj/effect/gibspawner - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

gibspawner + + + +

+ + + +

Procs

gib_dnaAssigns DNA and blood colour to mob gibs.
spawn_gibsSpawns the gibs (and sparks if applicable) from the gib spawner.

Proc Details

gib_dna +

+

Assigns DNA and blood colour to mob gibs.

+

Returns FALSE if there was no DNA data to transfer to the gibs, and TRUE if there was. +Arguments:

+

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.
  • +
+ + + diff --git a/obj/effect/guardianshield.html b/obj/effect/guardianshield.html new file mode 100644 index 0000000000000..a17c9f2d325ba --- /dev/null +++ b/obj/effect/guardianshield.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/guardianshield - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

guardianshield + + + +

+ + +

Vars

shield_orientationIs the guardians shield the left or right shield?
+

Var Details

shield_orientation + + + + +

+

Is the guardians shield the left or right shield?

+ + + diff --git a/obj/effect/hallucination.html b/obj/effect/hallucination.html new file mode 100644 index 0000000000000..1491b49ffd344 --- /dev/null +++ b/obj/effect/hallucination.html @@ -0,0 +1,135 @@ + + + + + + + /obj/effect/hallucination - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Hallucination + + + +

+ +

Base object for hallucinations. Contains basic behaviour to display an icon only to the target.

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

Vars

durationDuration in deciseconds. Can also be a list with the form [lower bound, upper bound] for a random duration.
hallucination_iconHallucination icon.
hallucination_icon_stateHallucination icon state.
hallucination_layerHallucination layer.
hallucination_overrideHallucination override.
imagesLazy list of images created as part of the hallucination. Cleared on destruction.
targetThe mob that sees this hallucination.

Procs

add_iconAdds an image to the hallucination. Cleared on destruction.
clear_iconClears an image from the hallucination.
clear_icon_inClears an image from the hallucination after a delay.
clear_iconsClears all images from the hallucination.
play_sound_inPlays a sound to the target only.
+

Var Details

duration + + + + +

+

Duration in deciseconds. Can also be a list with the form [lower bound, upper bound] for a random duration.

hallucination_icon + + + + +

+

Hallucination icon.

hallucination_icon_state + + + + +

+

Hallucination icon state.

hallucination_layer + + + + +

+

Hallucination layer.

hallucination_override + + + + +

+

Hallucination override.

images + + + + +

+

Lazy list of images created as part of the hallucination. Cleared on destruction.

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.
  • +
+ + + diff --git a/obj/effect/hallucination/abduction.html b/obj/effect/hallucination/abduction.html new file mode 100644 index 0000000000000..bb55e78c7452d --- /dev/null +++ b/obj/effect/hallucination/abduction.html @@ -0,0 +1,61 @@ + + + + + + + /obj/effect/hallucination/abduction - Space Station 13 + + +
+ Space 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.

+ + + +

Vars

agentThe abductor agent hallucination.
scientistThe abductor scientist image handle.

Procs

do_spawn_scientistTimer called to actually spawn the scientist.
spawn_scientistCalled 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.

+ + + diff --git a/obj/effect/hallucination/assault.html b/obj/effect/hallucination/assault.html new file mode 100644 index 0000000000000..8d44516692a4e --- /dev/null +++ b/obj/effect/hallucination/assault.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/hallucination/assault - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

Hallucination - Assault + + + +

+ +

An imaginary attacker spawns close to the target and attacks them to stamcrit.

+

Vars

fake_attackerThe attacker hallucination.
+

Var Details

fake_attacker + + + + +

+

The attacker hallucination.

+ + + diff --git a/obj/effect/hallucination/audio.html b/obj/effect/hallucination/audio.html new file mode 100644 index 0000000000000..c7674fd8e027e --- /dev/null +++ b/obj/effect/hallucination/audio.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/hallucination/audio - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

Hallucination - Audio + + + +

+ +

Plays a random sound.

+

Vars

soundsAssociative 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.

+ + + diff --git a/obj/effect/hallucination/bolts.html b/obj/effect/hallucination/bolts.html new file mode 100644 index 0000000000000..31ebfb8c438b1 --- /dev/null +++ b/obj/effect/hallucination/bolts.html @@ -0,0 +1,73 @@ + + + + + + + /obj/effect/hallucination/bolts - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Hallucination - Bolts + + + +

+ +

Visually bolts a random number of airlocks around the target.

+ + + + +

Vars

bolt_amountThe maximum amount of airlocks to fake bolt.
bolt_durationThe duration of fake bolt in deciseconds.
boltedLazy list of fake bolted airlocks. Key is airlock, value is bolt overlay.

Procs

do_boltCalled in a timer to fake bolt the given airlock.
do_unboltCalled 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.
  • +
+ + + diff --git a/obj/effect/hallucination/chaser.html b/obj/effect/hallucination/chaser.html new file mode 100644 index 0000000000000..d1a396fd3985b --- /dev/null +++ b/obj/effect/hallucination/chaser.html @@ -0,0 +1,64 @@ + + + + + + + /obj/effect/hallucination/chaser - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Hallucination - Chaser + + + +

+ +

A generic hallucination that chases the target.

+ + + + +

Vars

think_intervalInterval between two thinks in deciseconds. Shouldn't be too low to prevent lag.
think_timerThink timer handle.

Procs

chaseCalled every Think when we are not close enough to the target.
thinkCalled at regular intervals to determine what to do.
within_rangeCalled 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.

+ + + diff --git a/obj/effect/hallucination/chaser/attacker.html b/obj/effect/hallucination/chaser/attacker.html new file mode 100644 index 0000000000000..dbde95ea83dd3 --- /dev/null +++ b/obj/effect/hallucination/chaser/attacker.html @@ -0,0 +1,75 @@ + + + + + + + /obj/effect/hallucination/chaser/attacker - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Hallucination - Attacker + + + +

+ +

A generic hallucination based on the Chaser that attacks if close enough.

+ + + + + +

Vars

attack_chanceChance to attack per Think spent in range.
damageStamina damage to heal on hit.
should_attack_weakenedWhether to attack if the target is knocked down.

Procs

attackCalled every Think when we are attacking the target.
attack_effectsCalled to handle the visual and audio effects of an attack.
on_knockdownCalled 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 +

+

Called every Think when we are attacking the target.

+

Arguments:

+
    +
  • was_weakened - Whether the target was already knocked down prior to this attack.
  • +

attack_effects +

+

Called to handle the visual and audio effects of an attack.

on_knockdown +

+

Called when one of our attacks put the target in stamina crit.

+ + + diff --git a/obj/effect/hallucination/chaser/attacker/abductor.html b/obj/effect/hallucination/chaser/attacker/abductor.html new file mode 100644 index 0000000000000..b71abd89c03c0 --- /dev/null +++ b/obj/effect/hallucination/chaser/attacker/abductor.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/hallucination/chaser/attacker/abductor - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

abductor + + + +

+ + +

Vars

owning_hallucinationThe hallucination that spawned us.
+

Var Details

owning_hallucination + + + + +

+

The hallucination that spawned us.

+ + + diff --git a/obj/effect/hallucination/chaser/attacker/assaulter.html b/obj/effect/hallucination/chaser/attacker/assaulter.html new file mode 100644 index 0000000000000..bae93c7688ac7 --- /dev/null +++ b/obj/effect/hallucination/chaser/attacker/assaulter.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/hallucination/chaser/attacker/assaulter - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

assaulter + + + +

+ + + +

Vars

attack_soundThe attack sound to play. Can be a file or text (passed to [/proc/get_sfx]).
attack_verbThe attack verb to display.
+

Var Details

attack_sound + + + + +

+

The attack sound to play. Can be a file or text (passed to [/proc/get_sfx]).

attack_verb + + + + +

+

The attack verb to display.

+ + + diff --git a/obj/effect/hallucination/chasms.html b/obj/effect/hallucination/chasms.html new file mode 100644 index 0000000000000..6fe627cf24e4e --- /dev/null +++ b/obj/effect/hallucination/chasms.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/hallucination/chasms - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

Hallucination - Chasms + + + +

+ +

Displays fake chasms around the target that if crossed, cause them to trip.

+ +

Vars

max_amountMaximum number of chasms to create.
min_amountMinimum number of chasms to create.
+

Var Details

max_amount + + + + +

+

Maximum number of chasms to create.

min_amount + + + + +

+

Minimum number of chasms to create.

+ + + diff --git a/obj/effect/hallucination/delusion.html b/obj/effect/hallucination/delusion.html new file mode 100644 index 0000000000000..566bffbf3d713 --- /dev/null +++ b/obj/effect/hallucination/delusion.html @@ -0,0 +1,35 @@ + + + + + + + /obj/effect/hallucination/delusion - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

Hallucination - Delusion + + + +

+ +

Changes the appearance of all humans around the target.

+

Procs

get_imageReturns 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.

+ + + diff --git a/obj/effect/hallucination/fake_alert.html b/obj/effect/hallucination/fake_alert.html new file mode 100644 index 0000000000000..efd8df439f073 --- /dev/null +++ b/obj/effect/hallucination/fake_alert.html @@ -0,0 +1,50 @@ + + + + + + + /obj/effect/hallucination/fake_alert - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

Hallucination - Fake Alert + + + +

+ +

Displays a random alert on the target's HUD.

+ + +

Vars

alert_categoryThe alert category that was affected(arc) as part of this hallucination.
alertsThe possible alerts to be displayed. Key is alert type, value is alert category.
severitiesAlert 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.

+ + + diff --git a/obj/effect/hallucination/fake_danger.html b/obj/effect/hallucination/fake_danger.html new file mode 100644 index 0000000000000..c1289dbb79c22 --- /dev/null +++ b/obj/effect/hallucination/fake_danger.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/hallucination/fake_danger - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

Hallucination - Fake Danger + + + +

+ +

Sends a random danger message to the target's chat.

+

Vars

messagesList of messages that may be displayed.
+

Var Details

messages + + + + +

+

List of messages that may be displayed.

+ + + diff --git a/obj/effect/hallucination/fake_item.html b/obj/effect/hallucination/fake_item.html new file mode 100644 index 0000000000000..6e73ba9ea1a56 --- /dev/null +++ b/obj/effect/hallucination/fake_item.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/hallucination/fake_item - Space Station 13 + + +
+ Space 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.

+

Vars

itemsStatic list of items this hallucination can be.
+

Var Details

items + + + + +

+

Static list of items this hallucination can be.

+ + + diff --git a/obj/effect/hallucination/fake_weapon.html b/obj/effect/hallucination/fake_weapon.html new file mode 100644 index 0000000000000..a74e3d4116f52 --- /dev/null +++ b/obj/effect/hallucination/fake_weapon.html @@ -0,0 +1,57 @@ + + + + + + + /obj/effect/hallucination/fake_weapon - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

Hallucination - Fake Weapon + + + +

+ +

Displays a random fake weapon wielded by a human around the target.

+ + + +

Vars

default_iconThe default LEFT-HAND icon file for weapons. Static.
right_hand_iconsStatic list of RIGHT-HAND counterpart for any LEFT-HAND icon files used above.
weaponsStatic list of weapons this hallucination can be. Key is icon state, value is LEFT-HAND icon file.
wielderThe mob wielding the fake weapon.
+

Var Details

default_icon + + + + +

+

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.

+ + + diff --git a/obj/effect/hallucination/husks.html b/obj/effect/hallucination/husks.html new file mode 100644 index 0000000000000..2234ece42b73e --- /dev/null +++ b/obj/effect/hallucination/husks.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/hallucination/husks - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

Hallucination - Husks + + + +

+ +

A random number of fake husks around the target.

+ +

Vars

num_baseThe base number of husks to create.
variationThe 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.

+ + + diff --git a/obj/effect/hallucination/loose_energy_ball.html b/obj/effect/hallucination/loose_energy_ball.html new file mode 100644 index 0000000000000..ac236ada030eb --- /dev/null +++ b/obj/effect/hallucination/loose_energy_ball.html @@ -0,0 +1,84 @@ + + + + + + + /obj/effect/hallucination/loose_energy_ball - Space Station 13 + + +
+ Space 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.

+ + + + + + +

Vars

length_phase_1Length of phase 1 in deciseconds.
length_phase_2Length of phase 2 in deciseconds.
length_phase_3Length of phase 3 in deciseconds.

Procs

phase_1First phase of the hallucination: intermittent, far-away explosion sounds.
phase_2Second phase of the hallucination: closer explosions and zap sounds from a random direction.
phase_3Third and final phase of the hallucination: an energy ball that approaches the target before shocking it.
phase_3_innerCalled 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.
  • +
+ + + diff --git a/obj/effect/hallucination/plasma_flood.html b/obj/effect/hallucination/plasma_flood.html new file mode 100644 index 0000000000000..ec30580bdbb88 --- /dev/null +++ b/obj/effect/hallucination/plasma_flood.html @@ -0,0 +1,75 @@ + + + + + + + /obj/effect/hallucination/plasma_flood - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Hallucination - Plasma Flood + + + +

+ +

A fake plasma flood emanating from a nearby vent.

+ + + + + +

Vars

expand_delayThe delay at which the plasma flood expands in deciseconds. Shouldn't be too low to prevent lag.
expand_queueList of turfs that need expanding from.
expand_timerExpand timer handle.
processedAssociative list of turfs that have already been processed.

Procs

create_plasmaCreates a fake plasma overlay on the given turf.
expandCalled 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.

+ + + diff --git a/obj/effect/hallucination/self_delusion.html b/obj/effect/hallucination/self_delusion.html new file mode 100644 index 0000000000000..c0bf45d800120 --- /dev/null +++ b/obj/effect/hallucination/self_delusion.html @@ -0,0 +1,35 @@ + + + + + + + /obj/effect/hallucination/self_delusion - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

Hallucination - Self Delusion + + + +

+ +

Changes the target's appearance to something else temporarily.

+

Procs

get_imageReturns 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.

+ + + diff --git a/obj/effect/hallucination/speech.html b/obj/effect/hallucination/speech.html new file mode 100644 index 0000000000000..eac5644bc9d9e --- /dev/null +++ b/obj/effect/hallucination/speech.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/hallucination/speech - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

Hallucination - Speech + + + +

+ +

Causes the target to hear a fake message from a random mob around them.

+

Vars

messagesList of messages that may be heard.
+

Var Details

messages + + + + +

+

List of messages that may be heard.

+ + + diff --git a/obj/effect/hallucination/tripper.html b/obj/effect/hallucination/tripper.html new file mode 100644 index 0000000000000..751655142e133 --- /dev/null +++ b/obj/effect/hallucination/tripper.html @@ -0,0 +1,57 @@ + + + + + + + /obj/effect/hallucination/tripper - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

Hallucination - Tripper + + + +

+ +

A generic hallucination that causes the target to trip if they cross it.

+ + + +

Vars

stunStun to add when crossed.
trip_chanceChance to trip when crossing.
weakenWeaken to add when crossed.

Procs

on_crossedCalled 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.

+ + + diff --git a/obj/effect/hallucination/xeno_pounce.html b/obj/effect/hallucination/xeno_pounce.html new file mode 100644 index 0000000000000..15d10fd3a175b --- /dev/null +++ b/obj/effect/hallucination/xeno_pounce.html @@ -0,0 +1,50 @@ + + + + + + + /obj/effect/hallucination/xeno_pounce - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

Hallucination - Xeno Pounce + + + +

+ +

An imaginary alien hunter pounces towards the target.

+ + +

Vars

num_pouncesMaximum number of times the alien will pounce.
pounce_intervalHow often to pounce in deciseconds.
xenoThe xeno hallucination reference.
+

Var Details

num_pounces + + + + +

+

Maximum number of times the alien will pounce.

pounce_interval + + + + +

+

How often to pounce in deciseconds.

xeno + + + + +

+

The xeno hallucination reference.

+ + + diff --git a/obj/effect/hallucination/xeno_pouncer.html b/obj/effect/hallucination/xeno_pouncer.html new file mode 100644 index 0000000000000..48d41c4e2449b --- /dev/null +++ b/obj/effect/hallucination/xeno_pouncer.html @@ -0,0 +1,46 @@ + + + + + + + /obj/effect/hallucination/xeno_pouncer - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

xeno_pouncer + + + +

+ + + +

Procs

leap_toThrows the xeno towards the given loc.
reset_iconResets the xeno's icon to a resting state.

Proc Details

leap_to +

+

Throws the xeno towards the given loc.

+

Arguments:

+
    +
  • dest - The loc to leap to.
  • +

reset_icon +

+

Resets the xeno's icon to a resting state.

+ + + diff --git a/obj/effect/immovablerod.html b/obj/effect/immovablerod.html new file mode 100644 index 0000000000000..2ed0a84a9a11d --- /dev/null +++ b/obj/effect/immovablerod.html @@ -0,0 +1,39 @@ + + + + + + + /obj/effect/immovablerod - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

immovablerod + + + +

+ + +

Procs

walk_in_directionRod will walk towards edge turf in the specified direction.

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.
  • +
+ + + diff --git a/obj/effect/immovablerod/smite.html b/obj/effect/immovablerod/smite.html new file mode 100644 index 0000000000000..0a09fbf6385dc --- /dev/null +++ b/obj/effect/immovablerod/smite.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/immovablerod/smite - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

smite + + + +

+ + +

Vars

exitThe 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

+ + + diff --git a/obj/effect/landmark/mob_spawner.html b/obj/effect/landmark/mob_spawner.html new file mode 100644 index 0000000000000..60165f42749c0 --- /dev/null +++ b/obj/effect/landmark/mob_spawner.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/landmark/mob_spawner - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

mob_spawner + + + +

+ +

Mob spawners, spawns a mob and deletes the landmark

+

Vars

mobtypeThe mob we use for the spawner
+

Var Details

mobtype + + + + +

+

The mob we use for the spawner

+ + + diff --git a/obj/effect/landmark/river_waypoint.html b/obj/effect/landmark/river_waypoint.html new file mode 100644 index 0000000000000..6d3cc42ad5d04 --- /dev/null +++ b/obj/effect/landmark/river_waypoint.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/landmark/river_waypoint - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

river_waypoint + + + +

+ + +

Vars

connectedWhether 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.

+ + + diff --git a/obj/effect/mazegen/generator.html b/obj/effect/mazegen/generator.html new file mode 100644 index 0000000000000..4939d0d9b832a --- /dev/null +++ b/obj/effect/mazegen/generator.html @@ -0,0 +1,78 @@ + + + + + + + /obj/effect/mazegen/generator - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

generator + + + +

+ + + + + + + + +

Vars

helper_modulesList of all helper modules being used in this maze
loot_modulesList of all loot modules being used in this maze
mheightMaze height
mwidthMaze width
potential_loot_spotsPotential loot spots
turf_listList of turfs to iterate in total
working_stack"Stack" structure to be used while iterating
+

Var Details

helper_modules + + + + +

+

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

+ + + diff --git a/obj/effect/mazegen/generator/blockwise.html b/obj/effect/mazegen/generator/blockwise.html new file mode 100644 index 0000000000000..90ca6aea5323a --- /dev/null +++ b/obj/effect/mazegen/generator/blockwise.html @@ -0,0 +1,50 @@ + + + + + + + /obj/effect/mazegen/generator/blockwise - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

blockwise + + + +

+ + + + +

Vars

floor_materialMaterial to make the floor out of
open_spotsList of open spots (speeds up calculations)
wall_materialMaterial to make the walls out of
+

Var Details

floor_material + + + + +

+

Material to make the floor out of

open_spots + + + + +

+

List of open spots (speeds up calculations)

wall_material + + + + +

+

Material to make the walls out of

+ + + diff --git a/obj/effect/mazegen/module_helper.html b/obj/effect/mazegen/module_helper.html new file mode 100644 index 0000000000000..b97a1a384f3ca --- /dev/null +++ b/obj/effect/mazegen/module_helper.html @@ -0,0 +1,41 @@ + + + + + + + /obj/effect/mazegen/module_helper - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

module_helper + + + +

+ + +

Procs

helper_runHelper handler proc

Proc Details

helper_run +

+

Helper handler proc

+

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
  • +
+ + + diff --git a/obj/effect/mazegen/module_loot.html b/obj/effect/mazegen/module_loot.html new file mode 100644 index 0000000000000..a8084505fa3c0 --- /dev/null +++ b/obj/effect/mazegen/module_loot.html @@ -0,0 +1,49 @@ + + + + + + + /obj/effect/mazegen/module_loot - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

module_loot + + + +

+ + + +

Vars

spawn_probabilityProbability for this to spawn in a dead end at all. 0-100%. I dont recommend using values higher than 10

Procs

spawn_lootLoot spawner proc
+

Var Details

spawn_probability + + + + +

+

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
  • +
+ + + diff --git a/obj/effect/mob_spawn/corpse.html b/obj/effect/mob_spawn/corpse.html new file mode 100644 index 0000000000000..6145a6c0ea465 --- /dev/null +++ b/obj/effect/mob_spawn/corpse.html @@ -0,0 +1,50 @@ + + + + + + + /obj/effect/mob_spawn/corpse - Space Station 13 + + +
+ Space 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?

+ + +

Vars

corpse_descriptionwhat environmental storytelling script should this corpse have
naive_corpse_descriptionoptionally different text to display if the target is a clown
spawn_whenwhen this mob spawn should auto trigger.
+

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

spawn_when + + + + +

+

when this mob spawn should auto trigger.

+ + + diff --git a/obj/effect/mob_spawn/human.html b/obj/effect/mob_spawn/human.html new file mode 100644 index 0000000000000..03e2d4cd8b2a4 --- /dev/null +++ b/obj/effect/mob_spawn/human.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/mob_spawn/human - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

human + + + +

+ + +

Vars

dna_scrambledShould we fully dna-scramble these humans?
+

Var Details

dna_scrambled + + + + +

+

Should we fully dna-scramble these humans?

+ + + diff --git a/obj/effect/portal.html b/obj/effect/portal.html new file mode 100644 index 0000000000000..ad49d517365b5 --- /dev/null +++ b/obj/effect/portal.html @@ -0,0 +1,64 @@ + + + + + + + /obj/effect/portal - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

portal + + + +

+ + + + + + +

Vars

create_sparksWhether or not portal use will cause sparks
creation_mob_ckeyThe ckey of the mob which was responsible for the creation of the portal. For example, the mob who used a wormhole jaunter.
creation_obj_dataThe UID and name of the object that created this portal. For example, a wormhole jaunter.
effect_cooldownThe time after which the effects should play again. Too many effects can lag the server
precisionHow 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

+ + + diff --git a/obj/effect/portal/advanced/contractor.html b/obj/effect/portal/advanced/contractor.html new file mode 100644 index 0000000000000..161193cfc47fb --- /dev/null +++ b/obj/effect/portal/advanced/contractor.html @@ -0,0 +1,50 @@ + + + + + + + /obj/effect/portal/advanced/contractor - Space Station 13 + + +
+ Space 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.

+ + +

Vars

contractThe contract associated with this portal.
contractor_mindThe mind of the contractor. Used to tell them they shouldn't be taking the portal.
target_mindThe 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.

+ + + diff --git a/obj/effect/portal/hand_tele.html b/obj/effect/portal/hand_tele.html new file mode 100644 index 0000000000000..f6befa46bc487 --- /dev/null +++ b/obj/effect/portal/hand_tele.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/portal/hand_tele - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

hand_tele + + + +

+ + + +

Vars

inactiveIf this is TRUE, you will not be able to teleport with that portal
unstable_timeAfter 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

+ + + diff --git a/obj/effect/rune.html b/obj/effect/rune.html new file mode 100644 index 0000000000000..be589f7a0c81f --- /dev/null +++ b/obj/effect/rune.html @@ -0,0 +1,147 @@ + + + + + + + /obj/effect/rune - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

rune + + + +

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

Vars

allow_excess_invokersIf nearby cultists will also chant when invoked
construct_invokeIf constructs can invoke it
cultist_descDescription that cultists see
cultist_nameName that cultists see
descDescription that non-cultists see
invocationWhat is said by cultists when the rune is invoked
invoke_damageHow much damage cultists take when invoking it (This includes constructs)
keywordThe actual keyword for the rune
nameName non-cultists see
req_cultistsThe amount of cultists required around the rune to invoke it. If only 1, any cultist can invoke it.
req_keywordIf the rune requires a keyword (e.g. Teleport runes)
rune_blood_colorThe color of the rune. (Based on species blood color)
rune_in_useUsed for some runes, this is for when you want a rune to not be usable when in use.
scribe_damageHow much damage you take from drawing the rune
scribe_delayHow long the rune takes to create (Currently only different for the Nar'Sie rune)

Procs

teleport_effectSpawns 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
  • +
+ + + diff --git a/obj/effect/rune/blood_boil.html b/obj/effect/rune/blood_boil.html new file mode 100644 index 0000000000000..7ac680429b0af --- /dev/null +++ b/obj/effect/rune/blood_boil.html @@ -0,0 +1,31 @@ + + + + + + + /obj/effect/rune/blood_boil - Space Station 13 + + +
+ Space 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.

+ + + diff --git a/obj/effect/rune/wall.html b/obj/effect/rune/wall.html new file mode 100644 index 0000000000000..e6874f7a22206 --- /dev/null +++ b/obj/effect/rune/wall.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/rune/wall - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

wall + + + +

+ + +

Vars

BThe 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

+ + + diff --git a/obj/effect/spawner.html b/obj/effect/spawner.html new file mode 100644 index 0000000000000..449c8ef77db74 --- /dev/null +++ b/obj/effect/spawner.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/spawner - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

spawner + + + +

+ + +

Procs

synchronize_variablesUsed 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

+ + + diff --git a/obj/effect/spawner/grouped_spawner.html b/obj/effect/spawner/grouped_spawner.html new file mode 100644 index 0000000000000..73ab5c50e6ad4 --- /dev/null +++ b/obj/effect/spawner/grouped_spawner.html @@ -0,0 +1,107 @@ + + + + + + + /obj/effect/spawner/grouped_spawner - Space Station 13 + + +
+ Space 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

+ + + + + + + + + +

Vars

chosen_spawnersWhich spawners are chosen to spawn the objects
group_idThe 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_spawnerHow 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_spawnersThe list which holds the max_per_spawner values for each spawner group
path_to_spawnWhich path will be used to spawn.
spawner_groupsThe assoc list of grouped spawners. Key = group_id, value = list of spawners with that key
total_amountHow 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_spawnersThe list which holds the total_amount values for each spawner group

Procs

get_spawn_valuesSets the spawn values to the values of the first defined instance of this group_id
save_spawn_valuesSaves 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

+ + + diff --git a/obj/effect/spawner/lootdrop/maintenance.html b/obj/effect/spawner/lootdrop/maintenance.html new file mode 100644 index 0000000000000..7b6456b85425a --- /dev/null +++ b/obj/effect/spawner/lootdrop/maintenance.html @@ -0,0 +1,35 @@ + + + + + + + /obj/effect/spawner/lootdrop/maintenance - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

maintenance + + + +

+ + +

Procs

InitializeCONTRABAND STUFF

Proc Details

Initialize +

+

CONTRABAND STUFF

+ + + diff --git a/obj/effect/spawner/themed_mess.html b/obj/effect/spawner/themed_mess.html new file mode 100644 index 0000000000000..6a1b4e5edcf2c --- /dev/null +++ b/obj/effect/spawner/themed_mess.html @@ -0,0 +1,40 @@ + + + + + + + /obj/effect/spawner/themed_mess - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

themed_mess + + + +

+ + +

Vars

remaining_tilesThe 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.

+ + + diff --git a/obj/effect/spawner/window/reinforced/polarized.html b/obj/effect/spawner/window/reinforced/polarized.html new file mode 100644 index 0000000000000..fe36f009ef573 --- /dev/null +++ b/obj/effect/spawner/window/reinforced/polarized.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/spawner/window/reinforced/polarized - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

polarized + + + +

+ + +

Vars

idUsed to link electrochromic windows to buttons
+

Var Details

id + + + + +

+

Used to link electrochromic windows to buttons

+ + + diff --git a/obj/effect/tear.html b/obj/effect/tear.html new file mode 100644 index 0000000000000..83b10ba0a8e7f --- /dev/null +++ b/obj/effect/tear.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/tear - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

tear + + + +

+ +

The portal used in the /datum/event/tear midround.

+

Vars

leaderWhat the leader of the dimensional tear will be
+

Var Details

leader + + + + +

+

What the leader of the dimensional tear will be

+ + + 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 0000000000000..431403d5a6b2e --- /dev/null +++ b/obj/effect/temp_visual/decoy/mephedrone_afterimage.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/temp_visual/decoy/mephedrone_afterimage - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

mephedrone_afterimage + + + +

+ + + +

Vars

matrix_endThe color matrix it should be by the time it despawns
matrix_startThe color matrix it should be at spawn
+

Var Details

matrix_end + + + + +

+

The color matrix it should be by the time it despawns

matrix_start + + + + +

+

The color matrix it should be at spawn

+ + + diff --git a/obj/effect/temp_visual/explosion.html b/obj/effect/temp_visual/explosion.html new file mode 100644 index 0000000000000..6f66fd8069e78 --- /dev/null +++ b/obj/effect/temp_visual/explosion.html @@ -0,0 +1,57 @@ + + + + + + + /obj/effect/temp_visual/explosion - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

explosion + + + +

+ + + + + +

Vars

explosion_smokeExplosion smoke particle holder
smoke_waveSmoke wave particle holder
sparksSparks particle holder

Procs

generate_particlesGenerate the particles
+

Var Details

explosion_smoke + + + + +

+

Explosion smoke particle holder

smoke_wave + + + + +

+

Smoke wave particle holder

sparks + + + + +

+

Sparks particle holder

Proc Details

generate_particles +

+

Generate the particles

+ + + diff --git a/obj/effect/temp_visual/single_user.html b/obj/effect/temp_visual/single_user.html new file mode 100644 index 0000000000000..bd08204fa9eeb --- /dev/null +++ b/obj/effect/temp_visual/single_user.html @@ -0,0 +1,85 @@ + + + + + + + /obj/effect/temp_visual/single_user - Space Station 13 + + +
+ Space 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.

+ + + + + + + +

Vars

displayed_imageThe image to show to the user
image_iconThe icon to pull the image from
image_icon_stateThe real icon state to be applied to the image
image_layerThe layer to apply the image to
image_planeThe plane to apply the image to
source_UIDThe UID of the person who the image is being displayed to

Procs

add_mindAdd the image to the user's screen
remove_mindRemove the image from the user's screen
+

Var Details

displayed_image + + + + +

+

The image to show to the user

image_icon + + + + +

+

The icon to pull the image from

image_icon_state + + + + +

+

The real icon state to be applied to the image

image_layer + + + + +

+

The layer to apply the image to

image_plane + + + + +

+

The plane to apply the image to

source_UID + + + + +

+

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

+ + + diff --git a/obj/effect/temp_visual/sonar_ping.html b/obj/effect/temp_visual/sonar_ping.html new file mode 100644 index 0000000000000..e2a9f55f55c53 --- /dev/null +++ b/obj/effect/temp_visual/sonar_ping.html @@ -0,0 +1,64 @@ + + + + + + + /obj/effect/temp_visual/sonar_ping - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

sonar_ping + + + +

+ + + + + + +

Vars

modsuit_imageThe image shown to modsuit users
real_icon_stateThe icon state applied to the image created for this ping.
source_UIDThe person in the modsuit at the moment, really just used to remove this from their screen

Procs

add_mindAdd the image to the modsuit wearer's screen
remove_mindRemove the image from the modsuit wearer's screen
+

Var Details

modsuit_image + + + + +

+

The image shown to modsuit users

real_icon_state + + + + +

+

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

+ + + diff --git a/obj/effect/watcher_orbiter.html b/obj/effect/watcher_orbiter.html new file mode 100644 index 0000000000000..2ee5a3a92b475 --- /dev/null +++ b/obj/effect/watcher_orbiter.html @@ -0,0 +1,134 @@ + + + + + + + /obj/effect/watcher_orbiter - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

watcher_orbiter + + + +

+ +

Orbiting visual which shoots at mining mobs

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

Vars

fire_delayTime between taking potshots at goliaths
on_death_multiplierHow much faster do we shoot when avenging our parent?
parentWho are we following?
projectile_soundSound to make when we shoot
projectile_typeType of projectile we fire
shot_cooldownTime taken between shots
target_factionTypes of mobs to attack
trackerDatum which keeps us hanging out with our parent

Procs

followSet ourselves up to track and orbit around a guy
on_parent_deletedCalled if the guy we're tracking is deleted somehow
on_parent_diedWe must guard this corpse
on_parent_movedFollow our parent
on_parent_revivedExit hyperactive mode
orbit_animationDo our orbiting animation
shoot_atTake a shot
+

Var Details

fire_delay + + + + +

+

Time between taking potshots at goliaths

on_death_multiplier + + + + +

+

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

+ + + diff --git a/obj/item.html b/obj/item.html new file mode 100644 index 0000000000000..9e13d6ecf0518 --- /dev/null +++ b/obj/item.html @@ -0,0 +1,191 @@ + + + + + + + /obj/item - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

item + + + +

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

Vars

armour_penetration_flatFlat armour reduction, occurs after percentage armour penetration.
armour_penetration_percentagePercentage armour reduction, happens before flat armour reduction.
attack_effect_overrideAllows you to override the attack animation with an attack effect
drop_soundSound uses when dropping the item, or when its thrown.
equip_soundSound used when equipping the item into a valid slot
hit_reaction_chanceUsed to give a reaction chance on hit that is not a block. If less than 0, will remove the block message, allowing overides.
hitsoundSound played when you hit something with the item
in_storageIs this item inside a storage object?
item_stateThe icon state used to display the item in your inventory. If null then the icon_state value itself will be used
mob_throw_hit_soundUsed when yate into a mob
outline_filterHolder var for the item outline filter, null when no outline filter on the item.
pickup_soundSound uses when picking the item up (into your hands)
reachIn tiles, how far this weapon can reach; 1 for adjacent, which is default
stealthy_audioWhether or not we use stealthy audio levels for this item's attack sounds
thrownbyUID of a /mob
usesoundPlayed when the item is used, for example tools

Procs

can_enter_storageCalled to check if this item can be put into a storage item.
cyborg_rechargeCalled on cyborg items that need special charging behavior. Override as needed for specific items.
droppedCalled when a mob drops an item.
get_job_nameUsed in secHUD icon generation
is_robot_moduleChecks whether this item is a module of the robot it is located in.
use_toolCalled when a mob tries to use the item as a tool. +Handles most checks.
+

Var Details

armour_penetration_flat + + + + +

+

Flat armour reduction, occurs after percentage armour penetration.

armour_penetration_percentage + + + + +

+

Percentage armour reduction, happens before flat armour reduction.

attack_effect_override + + + + +

+

Allows you to override the attack animation with an attack effect

drop_sound + + + + +

+

Sound uses when dropping the item, or when its thrown.

equip_sound + + + + +

+

Sound used when equipping the item into a valid slot

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_storage + + + + +

+

Is this item inside a storage object?

item_state + + + + +

+

The icon state used to display the item in your inventory. If null then the icon_state value itself will be used

mob_throw_hit_sound + + + + +

+

Used when yate into a mob

outline_filter + + + + +

+

Holder var for the item outline filter, null when no outline filter on the item.

pickup_sound + + + + +

+

Sound uses when picking the item up (into your hands)

reach + + + + +

+

In tiles, how far this weapon can reach; 1 for adjacent, which is default

stealthy_audio + + + + +

+

Whether or not we use stealthy audio levels for this item's attack sounds

thrownby + + + + +

+

UID of a /mob

usesound + + + + +

+

Played when the item is used, for example tools

Proc Details

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:

+
    +
  • S - The /obj/item/storage that src is being inserted into.
  • +
  • user - The mob trying to insert the item.
  • +

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.

get_job_name +

+

Used in secHUD icon generation

is_robot_module +

+

Checks whether this item is a module of the robot it is located in.

use_tool +

+

Called when a mob tries to use the item as a tool. +Handles most checks.

+ + + diff --git a/obj/item/aiModule.html b/obj/item/aiModule.html new file mode 100644 index 0000000000000..e6d4010c7fced --- /dev/null +++ b/obj/item/aiModule.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/aiModule - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

aiModule + + + +

+ + +

Procs

handle_unique_aiwhat 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.

+ + + diff --git a/obj/item/airlock_electronics.html b/obj/item/airlock_electronics.html new file mode 100644 index 0000000000000..e11e0af2e3a00 --- /dev/null +++ b/obj/item/airlock_electronics.html @@ -0,0 +1,71 @@ + + + + + + + /obj/item/airlock_electronics - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

airlock_electronics + + + +

+ + + + + + + +

Vars

door_accesses_listAn associative list containing all station accesses. Includes their name and access number.
is_installedIs this electronic installed in a door?
max_brain_damageMaximum brain damage a mob can have until it can't use the electronics
one_accessIs the door access using req_one_access (TRUE) or req_access (FALSE)
selected_accessesList of accesses currently set
unres_access_fromWhich 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)

+ + + diff --git a/obj/item/ammo_box/magazine/wt550m9.html b/obj/item/ammo_box/magazine/wt550m9.html new file mode 100644 index 0000000000000..6c9e6954e4bda --- /dev/null +++ b/obj/item/ammo_box/magazine/wt550m9.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/ammo_box/magazine/wt550m9 - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

wt550m9 + + + +

+ + + +

Vars

being_loadedA var to check if the mag is being loaded
double_loadedThere 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

+ + + diff --git a/obj/item/ammo_casing.html b/obj/item/ammo_casing.html new file mode 100644 index 0000000000000..dd4064a836601 --- /dev/null +++ b/obj/item/ammo_casing.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/ammo_casing - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

ammo_casing + + + +

+ + + + + +

Vars

muzzle_flash_colorWhat color the flash has. If null then the flash won't cause lighting
muzzle_flash_effectWhat type of muzzle flash effect will be shown. If null then no effect and flash of light will be shown
muzzle_flash_rangeWhat range the muzzle flash has
muzzle_flash_strengthHow strong the flash is
+

Var Details

muzzle_flash_color + + + + +

+

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

+ + + 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 0000000000000..39a3b652e09dc --- /dev/null +++ b/obj/item/ammo_casing/energy/arc_revolver.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/ammo_casing/energy/arc_revolver - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

arc_revolver + + + +

+ + +

Vars

random_link_numberThis 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

+

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.

+ + + diff --git a/obj/item/assembly.html b/obj/item/assembly.html new file mode 100644 index 0000000000000..91d14d82bd549 --- /dev/null +++ b/obj/item/assembly.html @@ -0,0 +1,84 @@ + + + + + + + /obj/item/assembly - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

assembly + + + +

+ + + + + + + + + +

Procs

activateWhat the device does when turned on
attach_assemblyCalled when an assembly is attacked by another
holder_movementCalled when the holder is moved
interactCalled when attack_self is called
process_cooldownCalled to constantly step down the countdown/cooldown
pulseCalled when this device attempts to act on another device, var/radio determines if it was sent via radio or direct
pulsedCalled when another assembly acts on this one, var/radio will determine where it came from for wire calcs
toggle_secureHappens when the assembly is (un)secured

Proc Details

activate +

+

What the device does when turned on

attach_assembly +

+

Called when an assembly is attacked by another

holder_movement +

+

Called when the holder is moved

interact +

+

Called when attack_self is called

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

+ + + diff --git a/obj/item/assembly/health.html b/obj/item/assembly/health.html new file mode 100644 index 0000000000000..803dcd6625ac0 --- /dev/null +++ b/obj/item/assembly/health.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/assembly/health - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

health + + + +

+ + + + +

Vars

alarm_healthThe health amount on which to activate
scanningAre we scanning our user's health?
user_healthOur user's health
+

Var Details

alarm_health + + + + +

+

The health amount on which to activate

scanning + + + + +

+

Are we scanning our user's health?

user_health + + + + +

+

Our user's health

+ + + diff --git a/obj/item/assembly/signaler.html b/obj/item/assembly/signaler.html new file mode 100644 index 0000000000000..9bbd2eb56eb79 --- /dev/null +++ b/obj/item/assembly/signaler.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/assembly/signaler - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details - Proc Details
+
+

signaler + + + +

+ + + + + +

Vars

codeSignal code
frequencySignal freqency itself
receivingAre we set to receieve a signal?

Procs

signalCalled 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

+ + + diff --git a/obj/item/barcodescanner.html b/obj/item/barcodescanner.html new file mode 100644 index 0000000000000..406d0e167c2a6 --- /dev/null +++ b/obj/item/barcodescanner.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/barcodescanner - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

barcodescanner + + + +

+ + +

Vars

computerAssociated Library Computer, needed to perform actions
+

Var Details

computer + + + + +

+

Associated Library Computer, needed to perform actions

+ + + diff --git a/obj/item/barsign_electronics.html b/obj/item/barsign_electronics.html new file mode 100644 index 0000000000000..a6159f4fddada --- /dev/null +++ b/obj/item/barsign_electronics.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/barsign_electronics - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

barsign_electronics + + + +

+ + +

Vars

restricts_accessRestricts the sign to bar access if TRUE
+

Var Details

restricts_access + + + + +

+

Restricts the sign to bar access if TRUE

+ + + diff --git a/obj/item/batterer.html b/obj/item/batterer.html new file mode 100644 index 0000000000000..6752a51e1a942 --- /dev/null +++ b/obj/item/batterer.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/batterer - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

batterer + + + +

+ + + + +

Vars

on_throwing_cooldownIs this item on cooldown from being thrown
recharge_ticksHow many SSobj ticks have passed (Roughly 2 seconds of in game time), used to see when to recharge a use on this item
times_usedHow many times the mind batter has been used
+

Var Details

on_throwing_cooldown + + + + +

+

Is this item on cooldown from being thrown

recharge_ticks + + + + +

+

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

+ + + diff --git a/obj/item/beach_ball.html b/obj/item/beach_ball.html new file mode 100644 index 0000000000000..ab51dfab776ae --- /dev/null +++ b/obj/item/beach_ball.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/beach_ball - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

beach_ball + + + +

+ + +

Vars

dribbleableWhether attack_self will move ("dribble") it to the other hand
+

Var Details

dribbleable + + + + +

+

Whether attack_self will move ("dribble") it to the other hand

+ + + diff --git a/obj/item/bio_chip.html b/obj/item/bio_chip.html new file mode 100644 index 0000000000000..593fa02b7b1cf --- /dev/null +++ b/obj/item/bio_chip.html @@ -0,0 +1,151 @@ + + + + + + + /obj/item/bio_chip - Space Station 13 + + +
+ Space 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.

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

Vars

activatedHow the implant is activated.
allow_multipleWhether multiple implants of this same type can be inserted into someone.
has_triggered_on_deathWhether this implant has already triggered on death or not, to prevent it firing multiple times.
imp_inWho the implant is inside of.
implant_datathe implant_fluff datum attached to this implant, purely cosmetic "lore" information
implant_statewhich implant overlay should be used for implant cases. This should point to a state in bio_chips.dmi
implantedWhether 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_causesWhat type of action will trigger this emote. Bitfield of IMPLANT_EMOTE_* defines.
trigger_emotesList of emote keys that activate this implant when used.
usesAmount of times that the implant can be triggered by the user. If the implant can't be used, it can't be inserted.

Procs

can_implantCheck that we can actually implant this before implanting it
implantTry to implant ourselves into a mob.
removedClean up when an implant is removed.
set_triggerSet the emote that will trigger the implant.
+

Var Details

activated + + + + +

+

How the implant is activated.

allow_multiple + + + + +

+

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.
  • +
+ + + diff --git a/obj/item/bio_chip/explosive.html b/obj/item/bio_chip/explosive.html new file mode 100644 index 0000000000000..3af6748eb2705 --- /dev/null +++ b/obj/item/bio_chip/explosive.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/bio_chip/explosive - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Proc Details
+
+

explosive + + + +

+ + +

Procs

self_destructGib the implantee and delete their destructible contents.

Proc Details

self_destruct +

+

Gib the implantee and delete their destructible contents.

+ + + diff --git a/obj/item/bio_chip/mod.html b/obj/item/bio_chip/mod.html new file mode 100644 index 0000000000000..9642d052cdb1b --- /dev/null +++ b/obj/item/bio_chip/mod.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/bio_chip/mod - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

mod + + + +

+ + + + + + +

Vars

jet_iconThe jet icon we apply to the MOD.
moduleThe pathfinder module we are linked to.
pathList of turfs through which a mod 'steps' to reach the waypoint
targetThe target turf we are after
triesHow many times have we tried to move?
+

Var Details

jet_icon + + + + +

+

The jet icon we apply to the MOD.

module + + + + +

+

The pathfinder module we are linked to.

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?

+ + + diff --git a/obj/item/bio_chip/traitor.html b/obj/item/bio_chip/traitor.html new file mode 100644 index 0000000000000..436852ca70ed2 --- /dev/null +++ b/obj/item/bio_chip/traitor.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/bio_chip/traitor - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

traitor + + + +

+ + +

Vars

mindslave_UIDThe 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.

+ + + diff --git a/obj/item/blank_tarot_card.html b/obj/item/blank_tarot_card.html new file mode 100644 index 0000000000000..8a4dc0a74ea9d --- /dev/null +++ b/obj/item/blank_tarot_card.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/blank_tarot_card - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

blank_tarot_card + + + +

+ + +

Vars

let_people_chooseIf 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.

+ + + diff --git a/obj/item/book.html b/obj/item/book.html new file mode 100644 index 0000000000000..e17db9c6c7826 --- /dev/null +++ b/obj/item/book.html @@ -0,0 +1,189 @@ + + + + + + + /obj/item/book - Space Station 13 + + +
+ Space 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.

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

Vars

authorWho wrote the book, can be changed by pen or PC
book_bgcolorThe background color of the book, useful for themed programmatic books, must be in #FFFFFF hex color format
book_heightBook UI Popup Height
book_widthBook UI Popup Width
brain_damage_cooldownCooldown for brain damage loss when reading
carvedIndicates whether or not a books pages have been carved out
categoriesBook Categories - used for differentiating types of books, set by players upon upload, viewable upon examining book
copyrightPrevents book from being uploaded - For all printed books
current_pageWhat page is the book currently opened to? Page 0 - Intro Page | Page 1-5 - Content Pages
libraryidBook's id within the library system, unique to each book object, should not be declared manually
pagesContent Pages of the books, this variable is a list of strings containting the HTML + Text of each page
protectedPrevents book contents from being edited
ratingBook Rating - Assigned by library computer based on how many/how players have rated this book
storeItem that is stored inside the book
summaryShort summary of the contents of the book, can be changed by pen or PC
titleTitle & Real name of the book

Procs

can_readInternal Checker Proc
clear_stored_itemneeded for proper GC'ing
edit_bookEdit Book Proc
read_bookRead Book Proc
show_contentShow Content Proc
+

Var Details

author + + + + +

+

Who wrote the book, can be changed by pen or PC

book_bgcolor + + + + +

+

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

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.

+ + + diff --git a/obj/item/book/granter.html b/obj/item/book/granter.html new file mode 100644 index 0000000000000..fb972447927bb --- /dev/null +++ b/obj/item/book/granter.html @@ -0,0 +1,114 @@ + + + + + + + /obj/item/book/granter - Space Station 13 + + +
+ Space 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)

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

Vars

book_soundsThe sounds played as the user's reading the book.
pages_to_masteryControls how long a mob must keep the book in his hand to actually successfully learn
readingSanity, whether it's currently being read
reading_timeThe time it takes to read the book
remarksFlavor messages displayed to mobs reading the granter
usesThe amount of uses on the granter.

Procs

can_learnChecks if the user can learn whatever this granter... grants
on_reading_finishedCalled when the reading is completely finished. This is where the actual granting should happen.
on_reading_startCalled when the user starts to read the granter.
on_reading_stoppedCalled when the reading is interrupted without finishing.
recoilEffects that occur whenever the book is read when it has no uses left.
turn_pageThe 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.

+ + + diff --git a/obj/item/book/granter/action.html b/obj/item/book/granter/action.html new file mode 100644 index 0000000000000..8de12267e4503 --- /dev/null +++ b/obj/item/book/granter/action.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/book/granter/action - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

action + + + +

+ + + +

Vars

action_nameThe name of the action, formatted in a more text-friendly way.
granted_actionThe typepath of action that is given
+

Var Details

action_name + + + + +

+

The name of the action, formatted in a more text-friendly way.

granted_action + + + + +

+

The typepath of action that is given

+ + + diff --git a/obj/item/book/granter/crafting_recipe.html b/obj/item/book/granter/crafting_recipe.html new file mode 100644 index 0000000000000..8d25a69aed19e --- /dev/null +++ b/obj/item/book/granter/crafting_recipe.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/book/granter/crafting_recipe - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

crafting_recipe + + + +

+ + +

Vars

crafting_recipe_typesA list of all recipe types we grant on learn
+

Var Details

crafting_recipe_types + + + + +

+

A list of all recipe types we grant on learn

+ + + diff --git a/obj/item/book/granter/spell.html b/obj/item/book/granter/spell.html new file mode 100644 index 0000000000000..d251d1ee416d9 --- /dev/null +++ b/obj/item/book/granter/spell.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/book/granter/spell - Space Station 13 + + +
+ Space Station 13 - + Modules - + Types + — Var Details
+
+

spell + + + +

+ + + +

Vars

granted_spellThe typepath of spell that is given
spell_nameThe 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

+ + + diff --git a/obj/item/book/manual.html b/obj/item/book/manual.html new file mode 100644 index 0000000000000..8525249923029 --- /dev/null +++ b/obj/item/book/manual.html @@ -0,0 +1,41 @@ + + + + + + + /obj/item/book/manual - Space Station 13 + + +
+ Space 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:

+
    +
  1. 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)
  2. +
  3. Wiki pages are purposefully dry and to the point, manuals benefit from having flavor/personality to them to make them interesting to read ICly
  4. +
  5. One can just open the damn wiki instead of reading a crusty-ass manual +-Sirryan2002
  6. +
+ + + diff --git a/obj/item/book/manual/wiki.html b/obj/item/book/manual/wiki.html new file mode 100644 index 0000000000000..723d45be7ebb2 --- /dev/null +++ b/obj/item/book/manual/wiki.html @@ -0,0 +1,40 @@ + + + + + + + /obj/item/book/manual/wiki - Space Station 13 + + +
+ Space 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.

+

Vars

wiki_article_titleThe Article title of the wiki page being opened in the