interaction 
Optional text is immutable input per interaction; no per-mob or global lookup cache.
Vars | |
| 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)? |
Procs | |
| 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. |
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.