/tg/ Station 13 - Modules - Types — Var Details - Proc Details

interaction

Optional text is immutable input per interaction; no per-mob or global lookup cache.

Vars

categoryWhat category this interaction will fall under in the menu.
colorWhat color should the interaction button be?
descriptionThe description of the interacton.
distance_allowedIf it can be done at a distance.
interaction_requiresWhat requirements does this interaction have? See defines.
lewdIs this lewd?
messageA list of possible messages displayed loaded by the JSON.
message_auto_emotesEmote keys the actor fires when a specific message template is picked: list("template" = "moan"). Optional.
message_nipplelessMessages used instead of message when that chest is pecs drawn without nipples. Optional.
message_pokes_outMessages replacing the whole message pool while the bulge's penis pokes out (bulge_pokes_out()): bare-skin text for when head-through-cloth lines no longer apply. Optional.
message_sweatyExtra message options joining the pool while the sweaty participant is visibly sweating. Optional.
nameThe name to be displayed in the interaction menu for this interaction
name_nipplelessThe menu label when that chest is pecs drawn without nipples, e.g. "Kiss pecs". Falls back to name_pecs. Optional.
name_pecsThe menu label instead of name when the chest this interaction uses is pecs, e.g. "Pecjob". Optional.
sexualityWhat sexuality preference do we display for.
sound_cacheStores the sound for later.
sound_possibleA list of possible sounds.
sound_rangeIf it plays a sound, how far does it travel?
sound_useDoes this interaction play a sound?
sound_varyDoes the interaction sound vary in pitch each time?
sweaty_is_userWhose sweat the *_sweaty text follows: the target's by default, the user's when set (pitjobs, smothering).
target_arousalThe amount of arousal the target receives from this interaction.
target_messagesA list of possible messages displayed directly to the TARGET.
target_messages_nipplelessMessages used instead of target_messages when that chest is pecs drawn without nipples. Optional.
target_messages_pokes_outMessages replacing the whole target_messages pool while the bulge's penis pokes out. Optional.
target_messages_sweatyExtra target_messages options joining the pool while the sweaty participant is visibly sweating. Optional.
target_painThe amount of pain the target receives.
target_pleasureThe amount of pleasure the target receives from this interaciton.
target_required_partsWhat parts do they need(IMPORTANT TO GET IT TO THE CORRECT DEFINE, ORGAN SLOT)?
usageDefines how we interact with ourselves or others.
user_arousalThe amount of arousal the user receives.
user_messagesA list of possible messages displayed directly to the USER.
user_messages_nipplelessMessages used instead of user_messages when that chest is pecs drawn without nipples. Optional.
user_messages_pokes_outMessages replacing the whole user_messages pool while the bulge's penis pokes out. Optional.
user_messages_sweatyExtra user_messages options joining the pool while the sweaty participant is visibly sweating. Optional.
user_painThe amount of pain the user receives.
user_pleasureThe amount of pleasure the user receives.
user_required_partsWhat parts do WE need(IMPORTANT TO GET IT TO THE CORRECT DEFINE, ORGAN SLOT)?

Procs

apply_effectsApplies side effects only while the interaction's original authority remains valid.
can_executeShared authority checks for the menu, immediate execution, and deferred effects.
chest_ownerWhose chest this interaction is about: the user's when it needs their breasts, otherwise the target's.
display_name_forThe menu label for these participants: name_pecs, or name_nippleless, when that chest is pecs.
format_message_forExpands a message for an observer by default, or for the recipient of a private notice. Anonymity takes precedence over recipient identity, including when both roles belong to one mob. Placeholders match case-sensitively, exactly as templates write them, such as %USER% and %TARGET_PRONOUN_THEIR%.
interaction_route_is_validRevalidates whichever route supplied this interaction. A null route is a plain face-to-face interaction.
load_aphelion_textReads the optional Aphelion text: pit-hair and sweaty extras, and per-line auto emotes.
load_chest_textReads the optional pec and nippleless text, which both JSON loaders share.
participants_accept_interactionChecks the preferences required at both execution boundaries.
participants_are_actionableReturns TRUE only while both participants can consciously take part in an interaction.
save_aphelion_textWrites back whichever optional Aphelion text is set.
save_chest_textWrites back whichever optional pec and nippleless text is set.
texts_forThe list to pick messages from: nippleless_texts, if given, replaces everything when that chest is pecs drawn without nipples, and pokes_out_texts replaces everything while the bulge's penis pokes out, since head-through-cloth lines no longer apply then. sweaty_texts and pit_hair_texts are extra options, added to the pool while the sweaty participant is visibly sweating or the target grew physical pit hair.

Var Details

category

What category this interaction will fall under in the menu.

color

What color should the interaction button be?

description

The description of the interacton.

distance_allowed

If it can be done at a distance.

interaction_requires

What requirements does this interaction have? See defines.

lewd

Is this lewd?

message

A list of possible messages displayed loaded by the JSON.

message_auto_emotes

Emote keys the actor fires when a specific message template is picked: list("template" = "moan"). Optional.

message_nippleless

Messages used instead of message when that chest is pecs drawn without nipples. Optional.

message_pokes_out

Messages replacing the whole message pool while the bulge's penis pokes out (bulge_pokes_out()): bare-skin text for when head-through-cloth lines no longer apply. Optional.

message_sweaty

Extra message options joining the pool while the sweaty participant is visibly sweating. Optional.

name

The name to be displayed in the interaction menu for this interaction

name_nippleless

The menu label when that chest is pecs drawn without nipples, e.g. "Kiss pecs". Falls back to name_pecs. Optional.

name_pecs

The menu label instead of name when the chest this interaction uses is pecs, e.g. "Pecjob". Optional.

sexuality

What sexuality preference do we display for.

sound_cache

Stores the sound for later.

sound_possible

A list of possible sounds.

sound_range

If it plays a sound, how far does it travel?

sound_use

Does this interaction play a sound?

sound_vary

Does the interaction sound vary in pitch each time?

sweaty_is_user

Whose sweat the *_sweaty text follows: the target's by default, the user's when set (pitjobs, smothering).

target_arousal

The amount of arousal the target receives from this interaction.

target_messages

A list of possible messages displayed directly to the TARGET.

target_messages_nippleless

Messages used instead of target_messages when that chest is pecs drawn without nipples. Optional.

target_messages_pokes_out

Messages replacing the whole target_messages pool while the bulge's penis pokes out. Optional.

target_messages_sweaty

Extra target_messages options joining the pool while the sweaty participant is visibly sweating. Optional.

target_pain

The amount of pain the target receives.

target_pleasure

The amount of pleasure the target receives from this interaciton.

target_required_parts

What parts do they need(IMPORTANT TO GET IT TO THE CORRECT DEFINE, ORGAN SLOT)?

usage

Defines how we interact with ourselves or others.

user_arousal

The amount of arousal the user receives.

user_messages

A list of possible messages displayed directly to the USER.

user_messages_nippleless

Messages used instead of user_messages when that chest is pecs drawn without nipples. Optional.

user_messages_pokes_out

Messages replacing the whole user_messages pool while the bulge's penis pokes out. Optional.

user_messages_sweaty

Extra user_messages options joining the pool while the sweaty participant is visibly sweating. Optional.

user_pain

The amount of pain the user receives.

user_pleasure

The amount of pleasure the user receives.

user_required_parts

What parts do WE need(IMPORTANT TO GET IT TO THE CORRECT DEFINE, ORGAN SLOT)?

Proc Details

apply_effects

Applies side effects only while the interaction's original authority remains valid.

can_execute

Shared authority checks for the menu, immediate execution, and deferred effects.

chest_owner

Whose chest this interaction is about: the user's when it needs their breasts, otherwise the target's.

display_name_for

The menu label for these participants: name_pecs, or name_nippleless, when that chest is pecs.

format_message_for

Expands a message for an observer by default, or for the recipient of a private notice. Anonymity takes precedence over recipient identity, including when both roles belong to one mob. Placeholders match case-sensitively, exactly as templates write them, such as %USER% and %TARGET_PRONOUN_THEIR%.

interaction_route_is_valid

Revalidates whichever route supplied this interaction. A null route is a plain face-to-face interaction.

load_aphelion_text

Reads the optional Aphelion text: pit-hair and sweaty extras, and per-line auto emotes.

load_chest_text

Reads the optional pec and nippleless text, which both JSON loaders share.

participants_accept_interaction

Checks the preferences required at both execution boundaries.

participants_are_actionable

Returns TRUE only while both participants can consciously take part in an interaction.

save_aphelion_text

Writes back whichever optional Aphelion text is set.

save_chest_text

Writes back whichever optional pec and nippleless text is set.

texts_for

The list to pick messages from: nippleless_texts, if given, replaces everything when that chest is pecs drawn without nipples, and pokes_out_texts replaces everything while the bulge's penis pokes out, since head-through-cloth lines no longer apply then. sweaty_texts and pit_hair_texts are extra options, added to the pool while the sweaty participant is visibly sweating or the target grew physical pit hair.