Procs

From VORE Station Wiki
Revision as of 13:27, 7 October 2023 by Satinisle (talk | contribs) (→‎General Procs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This page is a list of useful procs that staff can call on particular atoms. This list is not exhaustive, contains mostly those that are likely to come up at some point, and can be added to at any time.

General Procs

These procs work on most objects.

Proc Description
consider_ert_load Loads the ERT ship, the NRV Von Braun. This is if you want to spawn the ERT ship without calling an ERT.
consider_trader_load Loads a trade ship.
SetTransform 6 arguments as numbers to change the following variables: scale, scale_x, scale_y, rotation, offset_x, offset_y. For example: SetTransform(NULL, 2.5, 3.75, 45, 10, 10): This will make someone that is 2.5 wide, 3.75 tall, be turned 45 degrees, and have an X and Y offset of 10.
SpinAnimation Up to 4 arguments as numbers in this order: The speed at which the object spins, the number of rotations, clockwise or anticlockwise (1 and 0 respectively) and the number of segments the animation passes through (this can generally be left out), calling just 3 arguments instead. Causes the object to spin. Do not use the proc called Spin as that may cause server lag.
attack_hand Will mimic a left click from an empty hand on whatever atom this is called on.
ex_act 1 argument with a number value of 1, 2, or 3. Affects the object as if caught in an explosion, value of 1 for heavy blasts, 2 medium, 3 light. Exact effects vary across objects, and are often subject to random variance. But as a general rule of thumb:

1 almost always outright deletes objects or gibs unprotected mobs

2 has a high chance of destroying objects, or leaving machines and structures in a damaged/deconstructed state. High damage to mobs.

3 inflicts relatively light damage to structure, and moderate damage to mobs. It can be a good option for quickly setting up a mangled body for an event.

Mobs

Proc Description
dust Disintigrates the mob into ashes.
ash Disintigrates the mob but leaves no ashes.
death Kills the mob straight up with no damage applied.
visble_emote Followed by 1 argument of text has the mob make a visible emote preceded by their name.
audible_emote Followed by 1 argument of text has the mob make an audible emote preceded by their name.
gib Explodes the mob into gibs.
get_equipped_items Lists all items equipped on the mob in an easy to read list.
make_floating Followed by 1 argument of a number above 0. Makes the mob float as if in low gravity or flying. Resets when they move.
memory Show the mob's notes.
add_memory Add a note to the mobs notes (as in the notes they can see when they use the Notes verb).
Stun 1 argument as a number that denotes the length of the stun: Stuns the mob. Causes them to not be able to move.
Weaken 1 argument as a number that denotes the length of the weaken: Weakens the mob. Causes them to fall to the ground.
Paralyse 1 argument as a number that denotes the length of the paralyse: Paralyses the mob. Causes them to fall to the ground and have their vision reduced.
Sleeping 1 argument as a number that denotes the length of the sleep: Puts the mob to sleep. Causes them to fall to the ground and have their vision and hearing disabled.
Confuse 1 argument as a number that denotes the length of the confusion: Confuses the mob. Causes them to lose control of their directions, and fall over when bumping into things.
Blind 1 argument as a number that denotes the length of the blind: Blinds the mob. Causes them to lose their ability to see, and have a chance to fall over when bumping into things.
Resting 1 argument as a number above 0: Forces the mob to rest. Same as if they rested themselves, they can get up or be helped up at any time.
SetLosebreath 1 argument for the length of the effect: Prevents the mob from breathing for this length of time, to a MAXIMUM of 25 oxygen damage, where it immediately ends.
say 1 argument of text for the message. Simulates the mob using the say verb.
me 1 argument of text for the message. Simulates the mob using the me verb.
whisper 1 argument of text for the message. Simulates the mob using the whisper verb.

Simple Mobs

Proc Description
toggle_digestion switches belly mode to digestion on a passive mob for 20 minutes

Carbon Mobs

Proc Description
make_dizzy 1 argument of a number with a minimum value of 100: Applies the dizziness effect to them.
make_jittery 1 argument of a number with a minimum value of 100: Applies the jittery effect to them, like if they drank too much coffee.
burn_eyes Deals a small amount of damage to the mob's eyeballs (2.5).
appendicitis Gives the mob appendicitis, damaging their appendix gradually and getting worse over time. Can only be cured by removing the appendix.
empty_pockets Empties the mob's pockets.
restore_blood Restores the mob's blood supply to maximum.
restore_all_organs Heals and restores all organs.
reagent_purge Removes all reagents in a mobs system, calls the proc that synths have access to, regardless of whether they are a synth.

Shadekin

Proc Description
shadekin_set_energy 1 argument with a number value, sets their energy to this value.
shadekin_set_max_energy 1 argument with a number value, sets their max energy to this value.

Observer

Proc Description
cleanup Removes them from the manifest as if they'd used quit this round or cryod, useful for if their body has been deleted outside of the usual methods.

Specific Setups

These are more detailed explanations of how to perform specific actions that require more than just calling one proc on a mob.

Action Description
Damaging Specific Internal Organs View Variables on the mob in question, then into search type the organ you are looking for. Unfortunately, this is part of a list so you are getting ALL their organs. Just click the blue link you want to edit and it'll bring up a new vvar window.

There, call procs:

take_damage. Receives 2 args: argument 1 is NUM, corresponds to damage you want argument 2 is BOOL/NUM, causing the victim to get a pain message on taking damage if TRUE/(not zero)

bruise, receives 0 args: Inflicts the minimum amount of damage needed to bruise the organ if it has less than required, otherwise does nothing.

Preserving an injured mob for later View Variables on the mob, call proc (or use Atom ProcCall in right click menu)

Call Stasis, 1 argument of NUM type: input some ludicrously large number like 10 000. The number corresponds to the logic that the current tick must be fully divisble by it. In effect, 10 000 means you get 1 life tick actually processing every 10 000 attempts, roughly. Basically: will never die on you unless you give it 200 damage outright and it's not a unathi.

To undo stasis, do as the above except NUM must be 0. This makes the start working as normal.

Turfs

Proc Description
create_fire Starts a fire. It will go out quickly unless there is fuel, but an easy, low risk one to heat up the area enough to be a problem is to put down some decal/cleanable/liquid_fuel, where it will spread from one to another and prolong the fire for a few seconds for each one. Five or so can easily get a small room to 330K-ish before they burn out.
ReplaceWithLattice Replaces the turf with a lattice, removing whatever turf that was there before.

Objects

Proc Description
inhabit_item Places a player inside of an object, allowing them to play as that item, although they are usually limited to just speaking and emoting. It is highly recommended that if players are put into items, that they are made aware that such a scene should be kept private as to not break other people's immersion. The process varies slightly depending on whether a ghost or mob is being placed inside of the item.

First, the ghost or mob must be marked with mark object.

Then, if it is a ghost, inhabit_item is called with 2 arguments. The first argument is the marked object, the second argument as text is the name of the item.

If it is a mob being placed into the item, inhabit item is called with 3 arguments. The first argument is the marked object, the second argument as text is the name of the item, and the third argument is the marked object again. This third argument hides the body inside of the object and allows them to OOC escape.

Machines

Proc Description
dismantle Dismantles the machine, generally acts like deleting it but may have specific effects on specific machines.
ejectpai Ejects any pAIs that might be in the machine, useful for getting them out if they've been left in there.
emp_act 1 argument as a number for the severity, lower numbers are more severe. Disables the APC for a random amount of time between 8-12 minutes, divided by the severity. Effects on other machines vary.
set_broken Breaks the machine insantly.

APC

Proc Description
overload_lighting Blows all the lights in the room the APC controls.
overload Runs through an array of different things that can happen to an APC. There's a % chance of it either; blowing the lights, damaging the APC, overloading the APC and damaging folks, or nothing.

SMES

Proc Description
add_charge 1 argument as a number for the change in charge. Increases the charge by this amount.
remove_charge 1 argument as a number for the change in charge. Decreases the charge by this amount.

Fire Alarm

Proc Description
alarm Sets off the alarm, this also works on the 'party button'.

Switches and Buttons

Proc Description
trigger Toggles the button as if pressed.