Files
degrees-of-lewdity/t3lt.twee-config.yml

18814 lines
593 KiB
YAML

aliases:
dom: &dom # Prints anything not purely in-line
border: solid 0px
form: &form # Prints some form of input
border: solid 0px
img: &img # Prints image to screen
border: 1px
borderStyle: dashed dashed none
legacy: &legacy # Kept around purely because surrounding code is too fragile
border: solid 0px
links: &links # Generates links for end of passage
textDecoration: bold
multiEvents: &multiEvents # Chooses an event from an eventpool
textDecoration: bold
refactor: &refactor # Strong code smells
textDecoration: bold
temp: &temp # Sets/ Uses temp variables to pass data between widgets
border: solid 0px
text: &text # Prints in-line text
textDecoration: underline
unused: &unused # Is not currently being called anywhere. Remove tag if you're the first
border: 0px
sugarcube-2:
enums:
antiques: '"antiquebox"|"antiquesilverring"|"antiquegoldnecklace"|"antiqueivorynecklace"|"antiquecrystal"|"antiquehorn"|"antiquewatch"|"antiquedildo"|"antiquecandlestick"|"antiqueforestarrow"|"antiqueforestdagger"|"antiqueforestgem"|"antiquesilverbrooch"|"antiquetrashcup"|"antiquetrashburner"|"antiquebrassstatuette"|"antiquegoldchastitybelt"|"antiquecoppercompass"|"antiquegrenade"|"antiquestonetalisman"|"antiquesilvermask"|"antiquediamond"|"antiquesilvercompass"|"antiquesilverdagger"|"antiquerustedcutlass"|"antiquecutlass"|"antiqueleathermap"|"antiquebell"|"antiquebullet"|"antiqueshell"|"antiquegoldring"|"antiquegoldbrooch"|"antiquecoralring"|"antiquehourglass"|"antiquecoppercoin"|"antiquesilvercoin"|"antiquegoldcoin"|"antiquesilverblade"|"antiqueivorystatuette"|"antiquestrangefetish"|"antiquesilvergoblet"|"antiquesilvercrown"|"antiquewhitecrystal"|"antiqueminesign"|"antiqueobsidiandisc"|"antiquewoodenmask"|"antiquetrilobitefossil"|"antiqueislandarrow"|"antiquegoldcompass"|"antiqueswordcane"|"antiquechocolate"|"antiqueteacaddy"|"antiquewoodenfigurine"|"antiquecopperring"'
antiquesDesc: '`"antiquebox"` | `"antiquesilverring"` | `"antiquegoldnecklace"` | `"antiqueivorynecklace"` | `"antiquecrystal"` | `"antiquehorn"` | `"antiquewatch"` | `"antiquedildo"` | `"antiquecandlestick"` | `"antiqueforestarrow"` | `"antiqueforestdagger"` | `"antiqueforestgem"` | `"antiquesilverbrooch"` | `"antiquetrashcup"` | `"antiquetrashburner"` | `"antiquebrassstatuette"` | `"antiquegoldchastitybelt"` | `"antiquecoppercompass"` | `"antiquegrenade"` | `"antiquestonetalisman"` | `"antiquesilvermask"` | `"antiquediamond"` | `"antiquesilvercompass"` | `"antiquesilverdagger"` | `"antiquerustedcutlass"` | `"antiquecutlass"` | `"antiqueleathermap"` | `"antiquebell"` | `"antiquebullet"` | `"antiqueshell"` | `"antiquegoldring"` | `"antiquegoldbrooch"` | `"antiquecoralring"` | `"antiquehourglass"` | `"antiquecoppercoin"` | `"antiquesilvercoin"` | `"antiquegoldcoin"` | `"antiquesilverblade"` | `"antiqueivorystatuette"` | `"antiquestrangefetish"` | `"antiquesilvergoblet"` | `"antiquesilvercrown"` | `"antiquewhitecrystal"` | `"antiqueminesign"` | `"antiqueobsidiandisc"` | `"antiquewoodenmask"` | `"antiquetrilobitefossil"` | `"antiqueislandarrow"` | `"antiquegoldcompass"` | `"antiqueswordcane"` | `"antiquechocolate"` | `"antiqueteacaddy"` | `"antiquewoodenfigurine"` | `"antiquecopperring"`'
bodyLiquidParts: '"neck"|"rightarm"|"leftarm"|"thigh"|"bottom"|"tummy"|"chest"|"face"|"hair"|"feet"|"vaginaoutside"|"vagina"|"penis"|"anus"|"mouth"'
bodyLiquidPartsDesc: '`"neck"` | `"rightarm"` | `"leftarm"` | `"thigh"` | `"bottom"` | `"tummy"` | `"chest"` | `"face"` | `"hair"` | `"feet"` | `"vaginaoutside"` | `"vagina"` | `"penis"` | `"anus"` | `"mouth"`'
bodyParts: '"forehead"|"left_cheek"|"right_cheek"|"left_shoulder"|"right_shoulder"|"breasts"|"back"|"left_bottom"|"right_bottom"|"pubic"|"left_thigh"|"right_thigh"'
bodyPartsDesc: '`"forehead"` | `"left_cheek"` | `"right_cheek"` | `"left_shoulder"` | `"right_shoulder"` | `"breasts"` | `"back"` | `"left_bottom"` | `"right_bottom"` | `"pubic"` | `"left_thigh"` | `"right_thigh"`'
bodyShapes: '"masculine"|"feminine"|"androgynous"'
bodyShapesDesc: '`"masculine"` | `"feminine"` | `"androgynous"`'
cards: '"avery"|"bailey"|"leighton"|"quinn"|"Avery"|"Bailey"|"Leighton"|"Quinn"'
cardsDesc: '`"avery"` | `"bailey"` | `"leighton"` | `"quinn"` | `"Avery"` | `"Bailey"` | `"Leighton"` | `"Quinn"`'
clothesTypes: '"over_upper"|"over_lower"|"upper"|"lower"|"under_upper"|"under_lower"|"over_head"|"head"|"face"|"neck"|"hands"|"handheld"|"legs"|"feet"|"genitals"'
clothesTypesDesc: '`"over_upper"` | `"over_lower"` | `"upper"` | `"lower"` | `"under_upper"` | `"under_lower"` | `"over_head"` | `"head"` | `"face"` | `"neck"` | `"hands"` | `"handheld"` | `"legs"` | `"feet"` | `"genitals"`'
combatPositions: '"doggy"|"missionary"'
combatPositionsDesc: '`"doggy"` | `"missionary"`'
combatProps: '"haybale"|"milk"|"bench"|"table"'
combatPropsDesc: '`"haybale"` | `"milk"` | `"bench"` | `"table"`'
crimeTypes: '"assault"|"coercion"|"destruction"|"exposure"|"obstruction"|"prostitution"|"resisting"|"thievery"|"petty"|"trespassing"'
crimeTypesDesc: '`"assault"` | `"coercion"` | `"destruction"` | `"exposure"` | `"obstruction"` | `"prostitution"` | `"resisting"` | `"thievery"` | `"petty"` | `"trespassing"`'
fameTypes: '"exhibitionism"|"prostitution"|"bestiality"|"sex"|"rape"|"good"|"business"|"scrap"|"pimp"|"social"|"model"|"pregnancy"|"impreg"'
fameTypesDesc: '`"exhibitionism"` | `"prostitution"` | `"bestiality"` | `"sex"` | `"rape"` | `"good"` | `"business"` | `"scrap"` | `"pimp"` | `"social"` | `"model"` | `"pregnancy"` | `"impreg"`'
hypnosisTimedTypes: '"devotion" | "peace" | "silence" | "slumber" | "insight"'
insecurityTypes: '"penis_small"|"penis_big"|"breasts_small"|"breasts_big"|"pregnancy"'
insecurityTypesDesc: '`"penis_small"` | `"penis_big"` | `"breasts_small"` | `"breasts_big"` | `"pregnancy"`'
liquidTypes: '"goo"|"slime"|"fluid"|"nectar"|"cum"|"semen"'
liquidTypesDesc: '`"goo"` | `"slime"` | `"fluid"` | `"nectar"` | `"cum"` | `"semen"`'
loveInterest: '"Robin"|"Whitney"|"Kylar"|"Sydney"|"Eden"|"Avery"|"Alex"|"Great Hawk"|"Black Wolf"|"Gwylan"'
loveInterestDesc: '`"Robin"` | `"Whitney"` | `"Kylar"` | `"Sydney"` | `"Eden"` | `"Avery"` | `"Alex"` | `"Great Hawk"` | `"Black Wolf"` | `"Gwylan"`'
namedNPC: '"Avery"|"Bailey"|"Briar"|"Charlie"|"Darryl"|"Doren"|"Eden"|"Gwylan"|"Harper"|"Jordan"|"Kylar"|"Landry"|"Leighton"|"Mason"|"Morgan"|"River"|"Robin"|"Sam"|"Sirris"|"Whitney"|"Winter"|"Black Wolf"|"Niki"|"Quinn"|"Remy"|"Alex"|"Great Hawk"|"Wren"|"Sydney"|"Ivory Wraith"|"Zephyr"|"Night Monster"'
namedNPCDesc: '`"Avery"` | `"Bailey"` | `"Briar"` | `"Charlie"` | `"Darryl"` | `"Doren"` | `"Eden"` | `"Gwylan"` | `"Harper"` | `"Jordan"` | `"Kylar"` | `"Landry"` | `"Leighton"` | `"Mason"` | `"Morgan"` | `"River"` | `"Robin"` | `"Sam"` | `"Sirris"` | `"Whitney"` | `"Winter"` | `"Black Wolf"` | `"Niki"` | `"Quinn"` | `"Remy"` | `"Alex"` | `"Great Hawk"` | `"Wren"` | `"Sydney"` | `"Ivory Wraith"` | `"Zephyr"` | `"Night Monster"`'
plantTypes: '"apple"|"baby_bottle_of_breast_milk"|"banana"|"bird_egg"|"blackberry"|"blood_lemon"|"bottle_of_breast_milk"|"bottle_of_milk"|"bottle_of_semen"|"broccoli"|"cabbage"|"carnation"|"chicken_egg"|"daisy"|"garlic_bulb"|"ghostshroom"|"lemon"|"lily"|"lotus"|"mushroom"|"onion"|"orange"|"orchid"|"peach"|"pear"|"pink_rose"|"plum"|"plumeria"|"poppy"|"potato"|"red_rose"|"strange_flower"|"strawberry"|"truffle"|"tulip"|"turnip"|"white_rose"|"wild_carrot"|"wild_honeycomb"|"wolfshroom"'
plantTypesDesc: '`"apple"` | `"baby_bottle_of_breast_milk"` | `"banana"` | `"bird_egg"` | `"blackberry"` | `"blood_lemon"` | `"bottle_of_breast_milk"` | `"bottle_of_milk"` | `"bottle_of_semen"` | `"broccoli"` | `"cabbage"` | `"carnation"` | `"chicken_egg"` | `"daisy"` | `"garlic_bulb"` | `"ghostshroom"` | `"lemon"` | `"lily"` | `"lotus"` | `"mushroom"` | `"onion"` | `"orange"` | `"orchid"` | `"peach"` | `"pear"` | `"pink_rose"` | `"plum"` | `"plumeria"` | `"poppy"` | `"potato"` | `"red_rose"` | `"strange_flower"` | `"strawberry"` | `"truffle"` | `"tulip"` | `"turnip"` | `"white_rose"` | `"wild_carrot"` | `"wild_honeycomb"` | `"wolfshroom"`'
pronouns: 'he, him, girl, girlfriend, sir, lass'
timeTrackingSources: '"adultShop"|"brothel"|"brothelDanceTips"|"brothelShow"|"cafe"|"cafeChef"|"cafeBuns"|"cafeWaiter"|"docks"|"party"|"danube"|"office"|"photoStudio"|"spa"|"stripClub"|"stripClubBartender"|"stripClubDancer"|"stripClubDanceTips"|"danceJobs"|"partyDanceJob"|"partyDanceTips"|"docksDanceJob"|"docksDanceTips"|"danubeDanceJob"|"danubeDanceTips"'
timeTrackingSourcesDesc: '`"adultShop"` | `"brothel"` | `"brothelDanceTips"` | `"brothelShow"` | `"cafe"` | `"cafeChef"` | `"cafeBuns"` | `"cafeWaiter"` | `"docks"` | `"party"` | `"danube"` | `"office"` | `"photoStudio"` | `"spa"` | `"stripClub"` | `"stripClubBartender"` | `"stripClubDancer"` | `"stripClubDanceTips"` | `"danceJobs"` | `"partyDanceJob"` | `"partyDanceTips"` | `"docksDanceJob"` | `"docksDanceTips"` | `"danubeDanceJob"` | `"danubeDanceTips"`'
virginityTypes: '"vaginal"|"penile"|"anal"|"oral"|"kiss"|"handholding"'
virginityTypesDesc: '`"vaginal"` | `"penile"` | `"anal"` | `"oral"` | `"kiss"` | `"handholding"`'
macros:
a:
description: |-
Prints text with prepended correctly-tensed indefinite article
`<<a text>>`
- **text**: `string` - text to check first character of
parameters:
- "text|string"
tags: ["text"]
A:
description: |-
Prints text with prepended correctly-tensed capitalised indefinite article
`<<a text>>`
- **text**: `string` - text to check first character of
parameters:
- "text|string"
tags: ["text"]
a_pillory_person:
description: |-
Prints `a <<person>>` or the name of person in the pillory
Undercase `<<A_pillory_person>>`.
Related to `<<the_pillory_person>>`/ '<<The_pillory_person>>
tags: ["text", "unused"]
A_pillory_person:
description: |-
Prints `A <<person>>` or the name of person in the pillory
Capitalised `<<a_pillory_person>>`.
Related to `<<the_pillory_person>>` / '<<The_pillory_person>>'
tags: ["text"]
a_role:
description: |-
Prints active npc as their role
Example:
```
You find <<a_role>> nearby to help you out with this example.
```
tags: ["text"]
A_role:
description: |-
Prints active npc as their role capitalised
Example:
```
<<A_role>> comes out from behind the other to help with the example.
```
tags: ["unused", "text"]
abomination:
name: abomination
abortbrothelshow:
name: abortbrothelshow
tags: ["unused"]
acceptance:
description: |-
Adds acceptance to pc's state concerning specific part and applies effects
`$acceptance_X` are measures of pc overcoming specific insecurities where 0 is not accepting (0-1,000)
`<<insecurity part change>>`
- **part**: `string` - part to gain insecurity in
- %insecurityTypesDesc%
- **change**: `number` - +/- change to apply
parameters:
- "%insecurityTypes% &+ number"
acceptassignment:
name: acceptassignment
acceptbrothelshow:
name: acceptbrothelshow
actioncarry:
name: actioncarry
actioncarrydrop:
name: actioncarrydrop
actionsabomination:
name: actionsabomination
actionsAnalKiss:
name: actionsAnalKiss
actionsAnalLick:
name: actionsAnalLick
actionsanusdoubleedging:
name: actionsanusdoubleedging
actionsanusdoubleescape:
name: actionsanusdoubleescape
actionsanusdoubletake:
name: actionsanusdoubletake
actionsanusdoublethrust:
name: actionsanusdoublethrust
actionsanusedging:
name: actionsanusedging
actionsanusescape:
name: actionsanusescape
actionsanusFaceAgainstAnus:
name: actionsanusFaceAgainstAnus
actionsanusHandAgainstAnus:
name: actionsanusHandAgainstAnus
actionsanusHandEntrance:
name: actionsanusHandEntrance
actionsanusHandPenetration:
name: actionsanusHandPenetration
actionsanusMouthEntrance:
name: actionsanusMouthEntrance
actionsanusMouthImminent:
name: actionsanusMouthImminent
actionsanusMouthPenetration:
name: actionsanusMouthPenetration
actionsanusPenisAgainstAnus:
name: actionsanusPenisAgainstAnus
actionsanusPenisDoubleEntrance:
name: actionsanusPenisDoubleEntrance
actionsanuspenisdoublefuck:
name: actionsanuspenisdoublefuck
actionsanusPenisDoubleImminent:
name: actionsanusPenisDoubleImminent
actionsanusPenisDoublePenetration:
name: actionsanusPenisDoublePenetration
actionsanusPenisEntrance:
name: actionsanusPenisEntrance
actionsanuspenisfucknew:
name: actionsanuspenisfucknew
actionsanusPenisImminent:
name: actionsanusPenisImminent
actionsanusPenisPenetration:
name: actionsanusPenisPenetration
actionsanusrub:
name: actionsanusrub
actionsanustake:
name: actionsanustake
actionsanusthrust:
name: actionsanusthrust
actionsanustopenisnew:
name: actionsanustopenisnew
actionscheekrub:
name: actionscheekrub
actionschoke:
description: |-
Prints the player's speech when they request the NPC to choke them during encounters. Contains variations depending of level of awareness, asphyxiophilia trait, and a special `_daddy` variant if the player's submissiveness is above 1150.
Speech variations are currently determined by the value of `$speechcycle`, increasing at each turn and resetted after the last available option.
Speech can be adapted for NNPCs. See `$NPCList[$mouthtarget].fullDescription` variable.
Example of what the player can say:
```
You moan. "Hold me by the neck, please."
You yip. "Harder, daddy! Choke me harder!"
```
tags: ["text"]
actionsclitrub:
name: actionsclitrub
actionsclitstroke:
name: actionsclitstroke
actionsconfront:
name: actionsconfront
actionsconfrontNNPC:
name: actionsconfrontNNPC
actionsdemand:
name: actionsdemand
actionsdissociation:
name: actionsdissociation
actionsfeetpussy:
name: actionsfeetpussy
actionsfeetrub:
name: actionsfeetrub
actionsfencingcooperate:
name: actionsfencingcooperate
actionsfencingescape:
name: actionsfencingescape
actionsfencingtake:
name: actionsfencingtake
actionsfencingtease:
name: actionsfencingtease
actionsforgive:
description: |-
Prints the player's speech when they forgive the NPC with the Angel TF. Unlike the "Plead" action, RNG has been removed since it can be only used once per encounter.
Speech can be adapted for NNPCs. See `_loveInterest` variable. If writers wish to do so, they can add variants where the player forgives them (if `$npc.includes(_loveInterest)`) or forgive on behalf of them (if `!$npc.includes(_loveInterest)`).
Example of what the player can say:
```
"Even though you're doing such a horrible thing, don't worry," you say. "I forgive you."
"Now I understand why you get so angry, Avery," you say. "And I forgive you."
```
tags: ["text"]
actionsgrabrub:
name: actionsgrabrub
actionsgrowl:
name: actionsgrowl
actionshandanustake:
name: actionshandanustake
actionshandanustease:
name: actionshandanustease
actionshandanusthrust:
name: actionshandanusthrust
actionshandbite:
name: actionshandbite
actionshandedge:
name: actionshandedge
actionshit:
name: actionshit
actionskick:
name: actionskick
actionskiss:
name: actionskiss
actionskissback:
name: actionskissback
actionsman:
name: actionsman
actionsmoan:
name: actionsmoan
actionsmock:
description: |-
Prints the player's speech when they mock (disparage for players with the fallen angel TF) the NPC over one of their potential insecurities. The chosen insecurity is stored in `$mockaction` and can take on the following variables: `"penis"`, `"vagina"`, `"weak"`, `"looks"` and `"skill"`. When undefined, the `"ethics"` speech lines are displayed.
The widget contains variants based on whether the player is penetrated or penetrating, for regular NPCs. Hitting the NPC's insecurity (`$mockaction` equals `$NPCList[$mouthtarget].insecurity`) should make them react.
Speech variations are currently determined by the value of `$mockcycle`, increasing at each turn and resetted after the last available option, which defaults to 5.
Speech can be adapted for NNPCs. See `$NPCList[$mouthtarget].fullDescription` variable.
Example of what the player can say:
```
"The last cock was much larger," you say in a teasing tone. <span class="pink">He isn't impressed by your words.</span> | +Control
"You'll be punished for this," you say in a mocking tone. <span class="teal">She winces at your words.</span> | +Control
```
tags: ["text"]
actionsmouthbottomrub:
name: actionsmouthbottomrub
actionsmouththighrub:
name: actionsmouththighrub
actionsOmni:
name: actionsOmni
actionsoraledge:
name: actionsoraledge
actionsorgasm:
name: actionsorgasm
actionsotheranusedging:
name: actionsotheranusedging
actionsotheranusescape:
name: actionsotheranusescape
actionsotheranusrub:
name: actionsotheranusrub
actionsotheranustake:
name: actionsotheranustake
actionsotheranustease:
name: actionsotheranustease
actionsotheranusthrust:
name: actionsotheranusthrust
actionsothermouthanusescape:
name: actionsothermouthanusescape
actionsothermouthanusrub:
name: actionsothermouthanusrub
actionsothermouthanustease:
name: actionsothermouthanustease
actionsothermouthanusthrust:
name: actionsothermouthanusthrust
actionsothermouthpenisescape:
name: actionsothermouthpenisescape
actionsothermouthpenisrub:
name: actionsothermouthpenisrub
actionsothermouthpenistease:
name: actionsothermouthpenistease
actionsothermouthpenisthrust:
name: actionsothermouthpenisthrust
actionsothermouthvaginaescape:
name: actionsothermouthvaginaescape
actionsothermouthvaginarub:
name: actionsothermouthvaginarub
actionsothermouthvaginatease:
name: actionsothermouthvaginatease
actionsothermouthvaginathrust:
name: actionsothermouthvaginathrust
actionsotherpenispenisrub:
name: actionsotherpenispenisrub
actionsothervaginavaginarub:
name: actionsothervaginavaginarub
actionspain:
name: actionspain
actionspenisAgainstAss:
name: actionspenisAgainstAss
actionspenisAgainstClit:
name: actionspenisAgainstClit
actionspenisAnusEntrance:
name: actionspenisAnusEntrance
actionspenisanusfucknew:
name: actionspenisanusfucknew
actionspenisAnusImminent:
name: actionspenisAnusImminent
actionspenisAnusPenetration:
name: actionspenisAnusPenetration
actionspenisdoubleedging:
name: actionspenisdoubleedging
actionspenisdoubleride:
name: actionspenisdoubleride
actionspenisdoubletake:
name: actionspenisdoubletake
actionspenisdoubletip:
name: actionspenisdoubletip
actionspenisedging:
name: actionspenisedging
actionspenisescape:
name: actionspenisescape
actionspeniskiss:
name: actionspeniskiss
actionspenislick:
name: actionspenislick
actionspenisMouthEntrance:
name: actionspenisMouthEntrance
actionspenisMouthImminent:
name: actionspenisMouthImminent
actionspenisMouthPenetration:
name: actionspenisMouthPenetration
actionspenisPenisEntrance:
name: actionspenisPenisEntrance
actionspenisPenisFencing:
name: actionspenisPenisFencing
actionspenisPenisImminent:
name: actionspenisPenisImminent
actionspenisPussyEntrance:
name: actionspenisPussyEntrance
actionspenisPussyImminent:
name: actionspenisPussyImminent
actionspenisPussyPenetration:
name: actionspenisPussyPenetration
actionspenisride:
name: actionspenisride
actionspenisrub:
name: actionspenisrub
actionspenisstroke:
name: actionspenisstroke
actionspenissuck:
name: actionspenissuck
actionspenistake:
name: actionspenistake
actionspenistip:
name: actionspenistip
actionspenistoanusnew:
name: actionspenistoanusnew
actionspenistopenis:
name: actionspenistopenis
actionspenistopenisfucknew:
name: actionspenistopenisfucknew
actionspenistovaginanew:
name: actionspenistovaginanew
actionspenisvaginafucknew:
name: actionspenisvaginafucknew
actionsplead:
name: actionsplead
actionspossessed:
name: actionspossessed
actionspussyedging:
name: actionspussyedging
actionspussylick:
name: actionspussylick
actionspussyrub:
name: actionspussyrub
actionspussytake:
name: actionspussytake
actionspussytease:
name: actionspussytease
actionspussythrust:
name: actionspussythrust
actionsshaftrub:
name: actionsshaftrub
actionsStroke:
name: actionsStroke
actionsStrokerCooperate:
name: actionsStrokerCooperate
actionsStrokerRest:
name: actionsStrokerRest
actionstaunt:
name: actionstaunt
actionstauntNNPC:
name: actionstauntNNPC
actionstentacleadvanus:
name: actionstentacleadvanus
tags: ["unused"]
actionstentacleadvbottom:
name: actionstentacleadvbottom
tags: ["unused"]
actionstentacleadvcheckbox:
description: |-
Prints `<<radiobutton>>` for tentacle actions
`<<actionstentacleadvcheckbox behavior checkboxText receiverVar checkedValue defaultValue>>`
- **behavior**: `string` - decoration and classification of label
- `"def"` | `"sub"` | `"neutral"` | `"brat"`
- **checkboxText**: `string` - displayed label of the checkbox
- **receiverName**: `string` - name of the variable to modify, which must be quoted—e.g., `"$foo"`. See `<<radiobutton>>`
- **checkedValue**: `object` - value set by the radio button when checked. See `<<radiobutton>>`
- **defaultValue**: `object` - displays the radiobutton as checked if this value exactly matches `checkedValue`
parameters:
- '"def"|"sub"|"neutral"|"brat" &+ text|string &+ text|string &+ var|bareword |+ var|bareword'
tags: ["text"]
actionstentacleadvchest:
name: actionstentacleadvchest
tags: ["unused"]
actionstentacleadvlefthand:
name: actionstentacleadvlefthand
actionstentacleadvlegs:
name: actionstentacleadvlegs
actionstentacleadvmouth:
name: actionstentacleadvmouth
tags: ["unused"]
actionstentacleadvpenis:
name: actionstentacleadvpenis
actionstentacleadvrighthand:
name: actionstentacleadvrighthand
actionstentacleadvthighs:
name: actionstentacleadvthighs
tags: ["unused"]
actionstentacleadvvagina:
name: actionstentacleadvvagina
tags: ["unused"]
actionstentacles:
name: actionstentacles
actionstentacleslefthand:
name: actionstentacleslefthand
tags: ["unused"]
actionstentacleslegs:
name: actionstentacleslegs
tags: ["unused"]
actionstentaclespenis:
name: actionstentaclespenis
tags: ["unused"]
actionstentaclesrighthand:
name: actionstentaclesrighthand
tags: ["unused"]
actionsthighrub:
name: actionsthighrub
actionstribcooperate:
name: actionstribcooperate
actionstribedge:
name: actionstribedge
actionstribescape:
name: actionstribescape
actionsTribRest:
name: actionsTribRest
actionstribtake:
name: actionstribtake
actionstribtease:
name: actionstribtease
actionsvaginadoubleescape:
name: actionsvaginadoubleescape
actionsvaginaescape:
name: actionsvaginaescape
actionsvaginaMouthEntrance:
name: actionsvaginaMouthEntrance
actionsvaginaMouthImminent:
name: actionsvaginaMouthImminent
actionsvaginaMouthPenetrated:
name: actionsvaginaMouthPenetrated
actionsvaginaPenisDoubleEntrance:
name: actionsvaginaPenisDoubleEntrance
actionsvaginapenisdoublefuck:
name: actionsvaginapenisdoublefuck
actionsvaginaPenisDoubleImminent:
name: actionsvaginaPenisDoubleImminent
actionsvaginaPenisDoublePenetrated:
name: actionsvaginaPenisDoublePenetrated
actionsvaginaPenisEntrance:
name: actionsvaginaPenisEntrance
actionsvaginapenisfucknew:
name: actionsvaginapenisfucknew
actionsvaginaPenisImminent:
name: actionsvaginaPenisImminent
actionsvaginaPenisPenetrated:
name: actionsvaginaPenisPenetrated
actionsvaginatopenisnew:
name: actionsvaginatopenisnew
actionsvaginatovaginafucknew:
name: actionsvaginatovaginafucknew
actionsvaginatovaginanew:
name: actionsvaginatovaginanew
actionsvaginaVagina:
name: actionsvaginaVagina
actionsvaginaVaginaEntrance:
name: actionsvaginaVaginaEntrance
actionsvaginaVaginaImminent:
name: actionsvaginaVaginaImminent
actionsvorentacles:
name: actionsvorentacles
actor:
name: actor
tags: ["unused"]
actorAroused:
name: actorAroused
tags: ["unused"]
add_bodywriting:
name: add_bodywriting
add_link:
name: add_link
add_plot:
name: add_plot
add-multi-canvas:
description: |-
[Multi Canvasmodel API Overview](%workspaceDir%/game/03-Javascript/05-renderer/01-multi-canvasmodel.js#L2)
`<<add-multi-canvas key id slot metadata?>>`
- **key**: `string` -
- **id**: `string` -
- **slot**: `string` -
- **metadata** _optional_: `object` -
parameters:
- 'string &+ string &+ string |+ var|bareword'
addConsumableCosmetics:
name: addConsumableCosmetics
addevent:
name: addevent
addfemininityfromfactor:
name: addfemininityfromfactor
tags: ["unused"]
addfemininityofclothingarticle:
name: addfemininityofclothingarticle
tags: ["unused"]
addinlineevent:
container: true
description: |-
Adds an inline event to the current eventpool.
To display your events, use `<<runeventpool>>`
To remove any existing events, use `<<cleareventpool>>`
Usage:
`<<addinlineevent name? weight?>> ... <</addinlineevent>>`
- **name** _optional_: `string` - The name of the event. If not provided, defaults to "".
- **weight** _optional_: `number` - The relative probability of the event. An event with weight 2 will occur twice as often as an event with weight 1. If not provided, defaults to 1.
parameters:
- "|+ (number | (string |+ number))"
addNNPCOutfit:
name: addNNPCOutfit
addVaginalWetness:
name: addVaginalWetness
adjust_school_traits:
name: adjust_school_traits
adultShop-main:
name: adultShop-main
adultShopBackgroundEvent:
name: adultShopBackgroundEvent
adultShopClear:
name: adultShopClear
adultshopclerkevents:
name: adultshopclerkevents
adultshopentryevent:
name: adultshopentryevent
adultShopEvents:
name: adultShopEvents
adultShopPersonEvent:
name: adultShopPersonEvent
adultShopWage:
name: adultShopWage
advancelesson:
name: advancelesson
advancetohour:
description: |-
Advances time until the next whole hour
`<<advancetohour>>`
ahe:
name: ahe
aHe:
name: aHe
ahis:
name: ahis
alarmstate:
name: alarmstate
alex_baby_interactions:
name: alex_baby_interactions
alex_cottage_pregnancy_reveal:
name: alex_cottage_pregnancy_reveal
alex_pregnancy_comment:
name: alex_pregnancy_comment
alexclamp:
name: alexclamp
allBottoms:
description: |-
Prints worn over and middle bottom clothing names
tags: ["text"]
allBottomsUnderwear:
description: |-
Prints worn over, middle, and under bottom clothing names
tags: ["text"]
alleyways_capture_text:
name: alleyways_capture_text
alleyways_rescue_end:
name: alleyways_rescue_end
alleyways_rescue_start:
name: alleyways_rescue_start
allowLewdIngredients:
name: allowLewdIngredients
allSettings:
name: allSettings
AllShop:
description: |-
Prints all categories of
name: AllShop
tags: ["form"]
allTops:
description: |-
Prints worn over and middle top clothing names
tags: ["text"]
allTopsUnderwear:
description: |-
Prints worn over, middle, and under top clothing names
tags: ["unused", "text"]
allurecaption:
name: allurecaption
alongsideButtPlug:
name: alongsideButtPlug
ambulance:
name: ambulance
ampm:
description: |-
Prints hours and minutes as formatted time string
1. `<<ampm>>`
- Uses current time as display
2. `<<ampm hour minute?>>`
- **hour**: `number` - hour to calculate
- **minute** _optional_: `number` - minute to calculate
- Defaults to `0`
parameters:
- "|+ number |+ number"
tags: ["text"]
ampm_text:
name: ampm_text
analdifficulty:
description: |-
Prints colour-coded adjective of anal action difficulty in current combat
tags: ["text"]
analdoublestat:
name: analdoublestat
analejacstat:
name: analejacstat
analskill:
name: analskill
analskilluse:
name: analskilluse
analstat:
name: analstat
analtext:
description: |-
Prints colour-coded adjective of active anal skill usage
tags: ["text"]
analvirginitywarning:
description: |-
Prints `This action will take your anal virginity` if anal virginity can still be lost
Takes combat state into account to display starting pipe `| `
tags: ["text"]
andButtPlug:
name: andButtPlug
angel:
description: |-
Prints `| Angel`
tags: ["text"]
angelBanishNote:
description: |-
Prints the note `| Banish ($angelBanish / $angelBanishMax)` in defiant red
Intended to be used alongside `<<skinicon "banish">>` and `<<angelBanishUse>>`, like so:
```
<<skinicon "banish">><<link [[Banish|Banishment]]>><<angelBanishUse>><</link>><<angelBanishNote>>
```
tags: ["text"]
angelBanishUse:
description: |-
Uses a single charge of banishment, which is tracked by the `$angelBanish` variable. Additionally, submissiveness is decreased by an amount scaling with `$purity`.
Intended to be used alongside `<<skinicon "banish">>` and `<<angelBanishNote>>`, like so:
```
<<skinicon "banish">><<link [[Banish|Banishment]]>><<angelBanishUse>><</link>><<angelBanishNote>>
```
angelTransform:
description: |-
Indicates how the Angel TF should be handled depending of a code passed as an optional argument. If nothing is passed, the widget sets the full Angel TF.
- 0-5 means the widget can either make the player progress to the next stage of angel transformation or set them back to the previous one, depending of the amount of angelicness they've amassed.
- 6 sets the player to stage 5 of the angel transformation when their angelicness is not enough to maintain a full transformation.
- 99 disables the transformation entirely and is either used in cheats or when the player falls from having their virginity taken away.
Example:
```
<<angelTransform>>
<<angelTransform 1>>
<<angelTransform 99>>
```
Usage:
```
<<angelTransform angelCode?>>
```
- **angelCode**: `number?` - The code indicating which action the widget should take. If not argument is provided, forces full Angel TF.
parameters:
- '|+ number'
animalsemenswallowedstat:
name: animalsemenswallowedstat
animateCombat:
description: |-
Generates the main combat view
tags: ["dom"]
animatemodel:
description: |-
Renders, prints, and JS-animates model
[High-Level Model API Overview](%workspaceDir%/game/base-clothing/canvasmodel.twee#L2)
`<<animatemodel className?>>`
- **className** _optional_: `string` - class or space-separated classes of canvas element to be inserted when placed in the DOM
parameters:
- "|+ text|string"
tags: ["dom"]
anticatcall:
description: |-
Prints a random response of the pc shutting down a catcall.
Intended to be used following `<<catcall>>`, `<<catcallbottom>>`, `<<catcallbreasts>>`, `<<catcallbulge>>`, `<<catcalllewd>>`, `<<catcallpregnancy>>`, or `<<catcallschool>>`
tags: ["text"]
anus_lube_amount:
description: |-
Prints the amount of lube around player anus
Relies on `_anus_lube_amount` being set already
See `<<anus_lube_text>>`
tags: ["text", "temp"]
anus_lube_text:
description: |-
Prints qualified description of lube around the anus prior to penetration
Example:
```
<<anus_lube_text>> the example can be performed without a problem.
```
tags: ["text"]
anusactionDifficulty:
name: anusactionDifficulty
anusactionDifficultyTentacle:
name: anusactionDifficultyTentacle
anusActionInit:
name: anusActionInit
anusActionInitStruggle:
name: anusActionInitStruggle
anusActionInitTentacle:
name: anusActionInitTentacle
anusActions:
name: anusActions
anusActionsTentacle:
name: anusActionsTentacle
anusraped:
name: anusraped
anxiety_disorder_text:
description: |-
Prints "Anxiety Disorder" label
anxious_guard:
name: anxious_guard
apologyWraith:
name: apologyWraith
applyDye:
description: |-
Buttons for the player's owned hairdyes, which apply the colour to their brows or pubes (as chosen in dyeOptions) when clicked.
tags: ["links"]
applyFeatBoosts:
name: applyFeatBoosts
applyLube:
name: applyLube
arcade_npc_bet:
name: arcade_npc_bet
arcade_player_bet:
name: arcade_player_bet
arcade_player_lost:
name: arcade_player_lost
arcade_player_win:
name: arcade_player_win
arcadeEndLink:
name: arcadeEndLink
arcadehangoptions:
name: arcadehangoptions
arm_unbind:
name: arm_unbind
arousal:
description: |-
Adds arousal to pc with appropriate modifiers
`$arousal` is pc's arousal state where 0 is not-aroused (0-10,000)
`source` is messy, overdefined, and underused. Consider refactoring
`<<arousal change source?>>`
- **change**: `number` - +/- change to apply
- **source** _optional_: `string` - source of the stimulus
- `"masturbation"` | `"mouth"` | `"oral"` | `"lips"` | `"masturbationMouth"` | `"masturbationOral"` | `"breast"` | `"breasts"` | `"chest"` | `"nipple"` | `"nipples"` | `"masturbationBreasts"` | `"masturbationNipples"` | `"bottom"` | `"anus"` | `"anal"` | `"ass"` | `"butt"` | `"masturbationAnal"` | `"masturbationAss"` | `"genital"` | `"genitals"` | `"penis"` | `"penile"` | `"pussy"` | `"vaginal"` | `"vagina"` | `"masturbationGenital"` | `"masturbationPenis"` | `"masturbationVagina"` | `"maso"` | `"time"`
parameters:
- 'number|bareword |+ "masturbation"|"mouth"|"oral"|"lips"|"masturbationMouth"|"masturbationOral"|"breast"|"breasts"|"chest"|"nipple"|"nipples"|"masturbationBreasts"|"masturbationNipples"|"bottom"|"anus"|"anal"|"ass"|"butt"|"masturbationAnal"|"masturbationAss"|"genital"|"genitals"|"penis"|"penile"|"pussy"|"vaginal"|"vagina"|"masturbationGenital"|"masturbationPenis"|"masturbationVagina"|"maso"|"time"'
arousalcaption:
name: arousalcaption
arousalclamp:
name: arousalclamp
arousalError:
description: |-
Stores up to 50 arousal errors
`$arousalError` is an array of arousal errors
Eligible for deprecation
`<<arousalError firstArg secondArg>>`
- **firstArg**: `any` - something to store
- **secondArg**: `any` - something else to store
tags: ["unused"]
askrough:
description: |-
Prints the player's speech when they ask the NPC to be more rough. Contains variations based on the player's personality through `$speech_attitude`.
Speech variations are currently determined by the value of `$speechcycle`, increasing at each turn and resetted after the last available option.
Speech can be adapted for NNPCs. See `$NPCList[$mouthtarget].fullDescription` variable.
Example of what the player can say:
```
You plead for rougher treatment. "Treat me like dirt."
You demand. "Fuck me up, I dare you."
```
tags: ["text"]
asktomeasurephallus:
description: |-
Prints request by pc to measure the currently selected NPC's phallus
It has multiple flavortext variations, but the request is primarily influenced by the pc's `$speech_attitude`.
Note that the required use of `<<promiscuity3>>` provides an internal `<br><br>`.
tags: ["text"]
assignAllNPCs:
description: |-
Assign all Named NPCs the same characteristics in the game settings (e.g. make them all men, give them all huge breasts, etc)
assignCombatDefaults:
name: assignCombatDefaults
assignmenttip:
name: assignmenttip
asylumassessment:
name: asylumassessment
asylumBind:
description: |-
Strips and puts on straightjacket
`<<asylumBind type>>`
- **type**: `string` - 'punish' destroys clothing, otherwise sends stripped clothing to wardrobe and gives underwear
asylumClothesOn:
name: asylumClothesOn
asylum_depths_mirror_links:
description: |-
Print mirror room links in asylum depths
name: asylum_depths_mirror_links
asylumeffects:
name: asylumeffects
asylumend:
name: asylumend
asylumescape:
name: asylumescape
asylumevents:
name: asylumevents
AsylumHypnosisCommon:
name: AsylumHypnosisCommon
asylum_mirror_assess:
description: |-
Sets _asylum_mirror_count to total mirror count
name: asylum_mirror_assess
asylumoptions:
name: asylumoptions
asylumpunish:
name: asylumpunish
asylumRebind:
description: |-
Wear a straightjacket if $asylumbound > 0
asylumstats:
name: asylumstats
asylumstatus:
description: |-
Adds status to asylum in regards to pc
`$asylumstatus` is status of pc in the asylum where 0 is not liked (0-100)
`<<suspicion change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
asylumtreatments:
name: asylumtreatments
asylumUnbind:
description: |-
Unbinds and removes straightjacket and optionally wear gown
`<<asylumUnbind gown>>
- **gown**: `boolean` - to wear a gown after unbinding
asylumUnbindGown:
description: |-
Shortcut for <<asylumUnbind true>>
athletics:
name: athletics
athleticsdifficulty:
name: athleticsdifficulty
attach_leash:
description: |-
Attaches leash to pc's collar
Can be used to gain infinite collars and keepCursed isn't universal. Consider refactoring
`<<attach_leash pcCanRemove? noRebuy?>>`
- **keepCursed** _optional_: `boolean` - collar will not be cursed unless original collar was already (truthy)
- Defaults to `false`
- **noRebuy** _optional_: `boolean` - skip rebuying command (truthy)
- Defaults to `false`
parameters:
- "|+ bool |+ bool"
tags: ["refactor"]
attackstat:
name: attackstat
attitudes:
name: attitudes
attitudesControlCheck:
name: attitudesControlCheck
audience:
name: audience
audiencecamera:
name: audiencecamera
audiencecameraswarm:
name: audiencecameraswarm
audiencespeech:
name: audiencespeech
auntie:
description: |-
Prints `auntie` or `uncle` depending on npc pronouns
tags: ["text"]
Auntie:
description: |-
Prints `Auntie` or `Uncle` depending on npc pronouns
tags: ["text"]
autoTakePillCheck:
name: autoTakePillCheck
avery_antiques_end:
description: Widget called after the destruction of Avery's mansion. Sets the state of Avery's antiques as stolen, so the player can retrieve them in the mansion's ruins.
avery_antiques_init:
description: |-
Initializes the `$avery_antiques` object variable with the following attributes:
- **progress**: `{0,1}` - Flag triggering the possibility of working the bolts free.
- **bolts**: `integer` - Number of bolts to unscrew. Defaults to 10.
- **bolt_progress**: `{0..5}` - Counts the number of times the player works the bolts free. When the count reaches 5, one of the bolts comes loose. Defaults to 0.
- **exposed**: `string[]` - The antiques that are no longer sealed by the bolts, but still in their display case.
- **stolen**: `string[]` - The stolen antiques that ended up in the player's possession
- **noticed**: `string[]` - The stolen antiques that Avery noticed during the display room inspection. All antiques from `$avery_antiques.stolen` are transferred there.
- **confront**: `string[]` - Unused attribute.
avery_cards_drink_text:
description: |-
Prints drink type of target NPC
`<<avery_cards_drink_text target>>`
- **target**: `string` - target npc to print drink of
- %cardsDesc%
parameters:
- "%cards%"
tags: ["text"]
avery_cards_end:
description: |-
Clears NPCs and variables for Avery Cards event
avery_cards_init:
description: |-
Resets variables for Avery Cards event
avery_cards_win:
description: |-
Chooses a winner for the round based on skill
`$cards_win` is a string of who won that round followed by `_cards_win` (ie, `avery_cards_win`)
avery_current_room_dirty_check:
description: |-
When triggered, checks which rooms from Avery's mansion need cleaning. If any room needs claning, sets the temporary variable `_dirty_room` to `true`.
avery_daily_talk:
description: |-
Resets or initiates variables from Avery's daily talk. See `<<avery_mansion_init>>` for more details.
avery_date_approach:
name: avery_date_approach
avery_date_missed_approach:
name: avery_date_missed_approach
avery_food_select:
name: avery_food_select
avery_housework_assess:
name: avery_housework_assess
avery_housework_change:
name: avery_housework_change
avery_housework_check:
name: avery_housework_check
avery_injury_check:
name: avery_injury_check
avery_mansion:
name: avery_mansion
avery_mansion_chase:
name: avery_mansion_chase
avery_mansion_chase_caught:
name: avery_mansion_chase_caught
avery_mansion_chase_end:
description: |-
Empties the `$avery_mansion.chase` object when Avery no longer chases the player.
avery_mansion_chase_init:
description: |-
Initializes the variables related to Avery's chase sequence, triggered when they are mad enough when they return from work. The `chase` object is then temporarily added to `$avery_mansion`, then deactivated when `<<avery_mansion_chase_end>>` is called. It will also push "chase" into `$averySeen`.
The `$avery_mansion.chase` object has the following attributes:
- **active**: `boolean` - Indicates if Avery is actively chasing the player
- **victory**: `integer` - The number of times the player successfully fended off Avery or made them cum during the chase
- **health**: `{0..3}` - Avery's frustration. Decreases everytime the player takes actions against Avery by winning encounters or setting traps. Defaults to 3. Avery gives up if it hits 0.
- **bus**: `string` - The location of the player. Depends of the place where the chase is being initialized.
- **avery_bus**: `string` - Avery's location. Depends of the place where the chase is being initialized.
- **sound**: `string` - The location of the mansion where Avery can be heard.
- **player_sound**: `string` - The location of the mansion where the player can be heard.
- **key**: `boolean` - Whether the player obtained the key or not.
- **key_checked**: `string[]` - The possible locations of the key, between "bedroom", "bathroom", "study", "lounge" or "garage".
- **gear**: `string[]` - Items the player can grab to set a trap, like "marbles" or "oil".
- **trap**: `string[]` - Active traps the player has set.
- **trap_done**: `string[]` - Total traps the player has set, active or not.
- **state**: `"tutorial"|"trap"|"victory"|"chase"|"caught"` - The state of the chase. Defaults to "tutorial".
- **key_location**: `string` - The location of the key. Randomly generated between "bedroom", "bathroom", "study", "lounge" or "garage"
avery_mansion_chase_location:
name: avery_mansion_chase_location
avery_mansion_chase_run:
name: avery_mansion_chase_run
avery_mansion_chase_sound:
name: avery_mansion_chase_sound
avery_mansion_chase_state:
name: avery_mansion_chase_state
avery_mansion_chase_trap:
name: avery_mansion_chase_trap
avery_mansion_clean:
name: avery_mansion_clean
avery_mansion_clean_bathroom:
name: avery_mansion_clean_bathroom
avery_mansion_clean_bedroom:
description: |-
Takes an optional parameter (true) to skip Avery's reaction (only for use after convincing Avery to clean anyway).
avery_mansion_clean_dining:
name: avery_mansion_clean_dining
avery_mansion_clean_display:
name: avery_mansion_clean_display
avery_mansion_clean_garden:
name: avery_mansion_clean_garden
avery_mansion_clean_kitchen:
name: avery_mansion_clean_kitchen
avery_mansion_clean_lounge:
name: avery_mansion_clean_lounge
avery_mansion_clean_pool:
name: avery_mansion_clean_pool
avery_mansion_contents:
name: avery_mansion_contents
avery_mansion_contents_party:
name: avery_mansion_contents_party
avery_mansion_contents_party_prepare:
name: avery_mansion_contents_party_prepare
avery_mansion_description:
name: avery_mansion_description
avery_mansion_dom_events:
name: avery_mansion_dom_events
avery_mansion_dungeon_end:
description: |-
Unsets the `dungeon` object variable for Avery's mansion and returns the player's handheld item.
avery_mansion_dungeon_init:
description: |-
Initializes the `dungeon` object variable for Avery's mansion with the following attributes:
- **tool**: `string` - The tool Avery plans to use on the player. Defaults to "tickler".
- **timer**: `integer` - The time left (in minutes) before exiting the dungeon. Defaults to 120 minutes.
Also stores temporarily what the PC is holding.
avery_mansion_dungeon_links:
name: avery_mansion_dungeon_links
avery_mansion_end_links:
name: avery_mansion_end_links
avery_mansion_food_select:
name: avery_mansion_food_select
avery_mansion_housework_total:
name: avery_mansion_housework_total
avery_mansion_init:
description: |-
Initializes Avery's mansion variable object when called. Avery's mansion can only be instanciated in-game when Avery decides to adopt the player, if the player scored high enough according to the `averyMansionScore()` function.
The mansion has the following attributes:
- **version**: `integer` - Version number of the mansion. Currently at V3.
- The following attributes describe the state of disorder or dirtiness of the following rooms, of type `integer` going from 0 to 4, 0 being the cleanest state and 4 being the worst state of disorder. They get reset at 0 if the player cleans Avery's mansion and increases by 1 at the end of the day. Some places like the kitchen can be dirtied if PC cooks however.
- **pool**, **kitchen**, **lounge**, **display**, **bedroom**, **bathroom**, **dining**, and **garden**
- **jobs**: `string[]` - Array of jobs Avery pushes onto the player as their dominance stat increases
- **schedule**: `string` - What Avery is currently doing. Determined by the `averySchedule()` function, set on "home" by default.
- **days**: `integer` - The number of days since the player moved in with Avery. Defaults to 0.
- **days_absent**: `integer` - Number of days where PC hasn't been seen at the mansion. Increases by 1 every day through the `dayPassed()` function on everyday, except Sunday.
- **walk_cycle:** `{0..3}` - The level of daring of Avery's walk minidate, 0 being the tamest level and 3 being the lewdest.
- **food**: `string` - Name of the recipe requested by Avery for the next time player has to serve them. Defaults to "hamburger".
- **food_last**: `string` - Name of the last meal Avery had. Defaults to "none".
- **date_ready**: `boolean` - Indicates whether Avery is ready for the date with the player.
- **rage**: `Object` - Object managing Avery's rage inside the mansion over dinners and the state of the rooms. Indicates whether Avery is ready to triggers a mansion chase sequence
- **work**: `boolean` - Indicates whether Avery is away at work or not
- **apologetic**: `boolean` - Indicates whether Avery is ready to apologize for the last chase sequence
- **dinner_missed**: `integer` - Indicates the number of dinner missed by the player. Increases by 1 everytime the player forgets to serve Avery and resets after a mansion chase sequence or by giving 5 meals per week.
- **dinner_done**: `{0..1}` - Indicates whether dinner has been served or not.
- **dinner_wrong**: `integer` - The number of dinners served that weren't what Avery requested.
- **assess**: `integer` - The total state of the house, computed when Avery returns from work. This number is computed from dinners missed, the state of the house and Avery's requested presentation. This count is then converted into Avery's rage points.
- **timer**: `integer` - Number of days left before Avery can trigger a mansion chase sequence. Defaults to 0, set to 30 when a chase sequence starts, decreases of 1 daily.
- **fox**: `Object` - Object pertaining to the Brown Fox (aka Gwylan) during the skyscraper quest.
- **progress:** `integer` - The points of trust you build with BF
- **known:** `boolean` - Whether the player has met the BF or not
- **date_seen:** `boolean` - Checks whether Avery asked for a Saturday date
- **party_state**: `string` - Indicates the state of Sunday's party. Set to "first sunday skip" if the mansion was initialized on Sunday, "waiting" otherwise by default. Can be updated with "missed", "skipped", "started" and "finished".
- **guest:** `string` - Name of the guest attending the next party on Sunday. Defaults to "Bailey".
- **kitchen_made:** `integer` - Accounts of the state of the kitchen while cooking there.
- **vault_progress:** `{0..100}` - The progress of the player cracking the vault inside Avery's mansion.
- **kitchen_stock**: `Object` - Describes the state of Avery's stocked food.
- **normal:** `string[]` - The ingredients that will always be available in Avery's kitchen: `["salt", "vegetable_oil", "bottle_of_milk", "flour", "chicken_egg", "beef", "pork", "truffle", "cream", "tomato", "red_wine", "white_wine", "rice", "chilli_pepper", "banana"]`
- **requested:** `string[]` - Ingredients requested by the player`. can be added when the player gives Avery the wrong dinner.
- **recipe:** `string[]` - Recipes the player can learn from Avery's study. Updated everytime the player tells Avery they can't make a specific dinner.
- **attend**: `Object` - Object detailling the number of unique events Avery can attend on request of the player (ie. school projects)
Unusued attributes:
- **study:** `integer` - State of disorder of Avery's study
- **garage:** `integer` - State of disorder of Avery's garage
- **state**: `string` - Unusued
- **display_antiques**: `integer` - Unusued
- **landry:** `integer` - Unused, moved to `landry_told`
Alongside the mansion, initializes the `talk` object in Avery's daily section, as well as `ask` and `housekeeping_events`.
The housekeeping events keep track of the triggered events whenever the player is cleaning in the same room as Avery. The `ask` object keeps track of whether the player asked Avery to attend an event like the science fair (**science**), maths competition (**maths**) or English play (**english**).
The `talk` object possesses the following attributes:
- **ignore:** `boolean` - Whether Avery ignores you for the rest of the day once you exceed the talk limit.
- **limit:** `boolean` - Whether Avery ignores you for the rest of the day once you exceed the talk limit.
- **flirt:** `boolean` - Flag indicating if you flirted with Avery daily
- **seduce:** `boolean` - Flag indicating if you seduced Avery daily
- **count:** `integer` - The number of times the player has interacted with Avery
- **annoyed:** `integer` - The number of times Avery is annoyed by the player's interruptions
- **chat:** `integer` - The number of times Avery had casual talk with the player
Additionally, this widget starts the skyscraper quest variables, with the `avery_tower` object:
- **progress:** `{0..100}` - The progress of the skyscraper. Must reach 100 to achieve completion.
- **effects:** `string[]` - Effects pertaining to the advancement of the skyscraper's constuction, which can either add or subtract progress points depending of them. Defaults to `["theft"]`.
- **stage:** `{0..3}` - Stage of advancement of the skyscraper. Defaults to 0 (unbuilt). Goes up to 3 (finished and the ceremony starts).
- **intro:** `{0,1}` - Introduces the skyscraper to the player, usually during the very first party with Bailey.
This widget also triggers the `<<avery_antiques_init>>` and the `<<avery_mansion_start_clothes>>` widgets. It will also allow the player to use Avery's wardrobe.
avery_mansion_interrupt:
name: avery_mansion_interrupt
avery_mansion_links:
name: avery_mansion_links
avery_mansion_location_tracker:
name: avery_mansion_location_tracker
avery_mansion_morning_change:
name: avery_mansion_morning_change
avery_mansion_move:
name: avery_mansion_links
avery_mansion_party_end:
name: avery_mansion_party_end
avery_mansion_party_guests_links:
name: avery_mansion_party_guests_links
avery_mansion_party_init:
description: |-
Initialises the $avery_party object when the party begins. Adds 15 points of socialite fame and sets `$avery_mansion.party_state` to "started".
The `$avery_party` object has the following attributes:
- **speech_guest**: `string[]` - Keywords related to what the player got from the guest.
- **speech_avery**: `string[]` - Keywords related to what the player got from Avery.
- **guests**: `string[]` - Only available when Remy is the party guest. Indicates the location of Remy's notorious people.
- **stage**: `integer` - Only available when Remy is the party guest. Counts the number of opportunities to interact with guests before the buffet.
- **current_speech**: to "intro"
- **mood_guest**: `integer` - The mood of the guest. Can be negative.
- **mood_avery**: `integer` - Avery's mood. Can be negative.
- **task**: `boolean?` - Whether the brown fox gave the player a task for the current party or not.
avery_mansion_party_mood:
name: avery_mansion_party_mood
avery_mansion_party_speech:
name: avery_mansion_party_speech
avery_mansion_party_start_links:
name: avery_mansion_party_start_links
avery_mansion_player_sound:
name: avery_mansion_player_sound
avery_mansion_rage_housework:
name: avery_mansion_rage_housework
avery_mansion_rage_party:
name: avery_mansion_rage_party
avery_mansion_seen:
name: avery_mansion_seen
avery_mansion_skyscraper_calc:
name: avery_mansion_skyscraper_calc
avery_mansion_skyscraper_week_estimate:
name: avery_mansion_skyscraper_week_estimate
avery_mansion_start_clothes:
description: |-
Initializes Avery's wardrobe with the following fancy clothes: ballgown, maid dress, hanfu, tuxedo jacket, shadbelly coat, dress shirt, ghost jumper, tuxedo trousers, short school skirt, school shorts, swimsuit, camisole, lace panties, bikini bottoms, maid band, lace choker, necktie, regal parasol, messenger bag, feather duster, sheer stockings, dress sandals, cordovan loafers, court heels, tuxedo shoes and school shoes.
avery_mansion_study_unlock:
name: avery_mansion_study_unlock
avery_mansion_tower:
name: avery_mansion_tower
avery_mansion_tower_negative_effects:
name: avery_mansion_tower_negative_effects
avery_mansion_trap_victory:
name: avery_mansion_trap_victory
avery_mansion_vault_progress:
name: avery_mansion_vault_progress
avery_mansion_victory:
name: avery_mansion_victory
avery_rage_assess:
name: avery_rage_assess
avery_valentines_date_check:
description: |-
Checks the date and prevents Avery's regular dates from interfering with their Valentine's date.
avery_valentines_end:
description: |-
Unsets story variables used for Avery's Valetine's date that should not be maintianed, and satiates Avery.
avery_valentines_init:
description: |-
Initialises the $avery_valentines object, used for Avery's Valentine's date.
averyBaseSpeech:
description: |-
Avery's default speech when no speech flag or specific scenario plays out.
Contains rage variations, comments on player's transformations and clothes.
averyCondomUseSpeech:
description: |-
Avery speech variations over condom usage when the player asks them to use a condom. Contains rage and lust dialogue variations.
`<<averyCondomUseSpeech "acceptHas">>`
- **condomSpeech**: `"accept"|"acceptHas"|"acceptGive"|"refuse"` - The different scenario cases for condom usage
parameters:
- '"accept"|"acceptHas"|"acceptGive"|"refuse"'
averyofficeoptions:
description: |-
Displays links available to the player while working in Avery's office, leading to the following passages:
- `:: Avery Office Off Work` (past 15:00)
- `:: Avery Office Work` (before 15:00, add an hour and counts as an hour worked for Avery)
- `:: Avery Office Leave`
averyMansionChaseSpeech:
description: |-
Avery's speech pertaining to Mansion Chase Fight encounters
averyofficewage:
description: |-
Avery's hourly pay at the assistant job at the office. Computes the pay according to the following formula:
```
Avery's love / 2 + Office endearment x 2 - Avery's rage
```
The result can't be lower than 5£.
```
<<averyofficewage "pay">>
```
- **pay**: `"pay"` - If passed as an argument, prints the player's earnings
parameters:
- '|+ "pay"'
averySchedule:
description: |-
Sets _avery_available to "office", "office invite", "office unlock", "pickup", "date", or "talk".
Sets $avery_mansion.schedule to "away", "sleep", "bath", "breakfast", "work", "return", "dinner", "garden", "pool", "study", "lounge", "drink", or "date".
averyscore:
description: |-
Shows the player's rating at the end of Avery's saturday date, determined by Avery's love and endearment at the date.
Example:
```
Avery's impression:
Love: C
Endearment: B
```
averyspa:
description: |-
Widget referring to Avery's spa event. Can be discovered if
- The player already encountered Avery
- The player works at the spa
- Avery isn't injured or dismissed
- You have been on dates with Avery at least once
- It's Sunday
- You haven't upset Avery during the last encounter at the spa (see `$averySpaBanWeeks`)
averyTfComments:
description: |-
Avery speech comments on the player's transformation parts
averyUndergroundBrothelSpeech:
description: |-
Avery speech pertaining to the player and Avery's reunion on the underground brothel
awardVirginityFeat:
description: |-
Awards virginity loss feat if the NPC gives one.
`<<awardVirginityFeat NPCDescription>>`
- **NPCDescription**: `string` - the NPC's fullDescription attribute
parameters:
- string
awareness:
description: |-
Adds awareness to pc's state, with appropriate modifiers
`$awareness` is measure of pc's knowledge of lewdity where negative is innocent and 0 is unaware (-200-1,000)
`<<awareness change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
awarenessup:
name: awarenessup
babyIs:
description: |-
Prints `<<pregnancyBabyText>>` with the corresponding conjugation of `be`.
`<<babyIs babySource?>>`
- **babySource** _optional_: `string` - source where baby text is pulled from
- `"pc"`: Take description from pc's current pregnancy
- %namedNPCDesc%: Take description from named npc's current pregnancy
- Defaults to `pc`
parameters:
- '|+ %namedNPC% |+ "pc"'
tags: ["text"]
babyRent:
name: babyRent
babyRentDisplay:
name: babyRentDisplay
babyType:
name: babyType
tags: ["unused"]
backComp:
name: backComp
badEndProse:
description: |-
Prints a bad end scenario in ordinary form, such as "at Remy's farm"
`<<badEndProse source prefix? capitalise?>>`
- source: `string` - source of the bad end
- **prefix**: _optional_: `"at"` - automatically inserts "at", "in", or "on" before the text
- **capitalise**: _optional_: `"cap"` - capitalises the first letter of the text
tags: ["dom", "text"]
badEndStats:
description: |-
Prints table of bad ends for stats display
tags: ["dom", "text"]
badEndStatsTitle:
description: |-
Prints clickable sort titles for bad end stats display
`<<badEndStatsTitle sortColumn>>`
- **sortColumn**: `string` - column to sort display on
- `"Bad End"` | `"Started"` | `"Ended"` | `"Duration"` | `"How Long Ago"` | `"Start Reason"` | `"End Reason"`
parameters:
- '"Bad End"|"Started"|"Ended"|"Duration"|"How Long Ago"|"Start Reason"|"End Reason"'
tags: ["dom", "text"]
badEndTracking:
description: |-
Records the start of a bad end
Only one bad end may be tracked at a time.
`<<badEndTracking source optional?>>`
- source: `string` - source of the bad end
- **optional** _optional_: `object` - extra details about this bad end
- **reason** _optional_: `string` - key corresponding to start reason
- **notes** _optional_: `string` - additional text to include
parameters:
- '|+ string |+ ...(var|bareword|text)'
badEndTrackingEnd:
description: |-
Records the end of a bad end
Only one bad end may be tracked at a time.
Should be run in any case where the player finishes the bad end, such as the player escaping, being let go, or having the option to walk away at any time.
`<<badEndTrackingEnd source optional?>>`
- source: `string` - source of the bad end, required to match the starting source
- **optional** _optional_: `object` - extra details about this bad end
- **reason** _optional_: `string` - key corresponding to end reason
- **notes** _optional_: `string` - additional text to include
parameters:
- '|+ string |+ ...(var|bareword|text)'
baitMobileDropdown:
name: baitMobileDropdown
baitMobileSidebar:
name: baitMobileSidebar
baitOverlay:
name: baitOverlay
baitShopFishBehaviorHelp:
name: baitShopFishBehaviorHelp
baitShopFishLocationHint:
name: baitShopFishLocationHint
baitSidebar:
name: baitSidebar
balloonRobinAngryHelp:
name: balloonRobinAngryHelp
tags: ["text"]
balloonRobinAngryPurchase:
name: balloonRobinAngryPurchase
tags: ["text"]
balloonRobinGrateful:
name: balloonRobinGrateful
tags: ["text"]
balloonRobinHelped:
name: balloonRobinHelped
tags: ["text"]
balloonRobinSabotaged:
name: balloonRobinSabotaged
balloonRobinTalk:
name: balloonRobinTalk
tags: ["text"]
ballsize:
description: |-
Prints random adjective describing pc's `$ballssize`
barb:
name: barb
barbeventend:
name: barbeventend
barbexposed:
name: barbexposed
tags: ["unused"]
barbquick:
name: barbquick
barn_img:
description: |-
Displays combat img of player inside barn, including a haybale prop and optionally a milk pump.
tags: ["text"]
baseClothingStrings:
name: baseClothingStrings
basegloryholespeech:
name: basegloryholespeech
basespeech:
name: basespeech
bastard:
description: |-
Prints `bastard` or `whore` depending on pc's appearance
tags: ["text"]
bathroomLink:
name: bathroomLink
baywindowicon:
name: baywindowicon
bboy:
name: bboy
bBoy:
name: bBoy
beach_cave_caught:
name: beach_cave_caught
beach_cave_end:
name: beach_cave_end
beach_cave_init:
name: beach_cave_init
beach_cave_pursuit:
name: beach_cave_pursuit
beachday1:
name: beachday1
beachday2:
name: beachday2
beachday3:
name: beachday3
beachday4:
name: beachday4
beachday5:
name: beachday5
beachday6:
name: beachday6
beachex1:
name: beachex1
beachex2:
name: beachex2
beachnight1:
name: beachnight1
beachnight2:
name: beachnight2
beast:
name: beast
beast_claws_text:
description: |-
Prints `talons` or type of claws for active NPC's type
tags: ["unused", "text"]
beast_growling_text:
description: |-
Prints `growling` verbs for active NPC's type
tags: ["text"]
beast_growls_text:
description: |-
Prints `growls` verbs for active NPC's type
tags: ["text"]
beast_jaws_text:
description: |-
Prints `beak` or `jaws` for active NPC's type
tags: ["text"]
beast_Jaws_text:
description: |-
Prints `Beak` or `Jaws` for active NPC's type
tags: ["text"]
beast_teeth_text:
description: |-
Prints `beak` or `teeth` for active NPC's type
tags: ["text"]
beastAttractionSettings:
name: beastAttractionSettings
beastattribute:
name: beastattribute
beastclothing:
name: beastclothing
beastCombatInit:
name: beastCombatInit
beastejaculation:
description: |-
Performs end of combat ejaculation description for all combat beast NPCs
All beast NPCs, including named, should go through here to get pre and post ejac descriptions
`<<beastejaculation ejacType?>>`
- **ejacType** _optional_: `string` - type of ejaculation to perform
- `"short"`: Quick ejac that prevents angry post-sex actions
- `"knot"`: Player is temporarily tied to beast at end of ejac
parameters:
- '|+ "short"|"knot"'
tags: ["text"]
beastescape:
name: beastescape
beastgender:
description: |-
Prints boy or girl depending on the pronouns of the provided NPC
`<<beastgender npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of active npcs
- `0-5`: Defaults to 0
parameters:
- "|+ number"
tags: ["text"]
beastGenders:
name: beastGenders
beastlick:
name: beastlick
beastMaleChanceSplitControls:
name: beastMaleChanceSplitControls
beastNEWinit:
description: |-
Generates a new beast and sets $monster to 1 as appropriate. This widget must occur outside of checks for `<<if $settings.bestialityEnabled or $monster is 1>>`.
beastNNPCinit:
name: beastNNPCinit
tags: ["unused"]
beastNOGENinit:
name: beastNOGENinit
beastPARTNERinit:
description: |-
Forces a beast to generate as a partner for another NPC, whether it be a human or beast. Should not be used in combat
Example:
`<<beastNEWinit 1 fox>><<beastPARTNERinit 1 fox 0>>`
`<<beastPARTNERinit npcSlot type partnerSlot>>`
- **npcSlot**: `number` - slot number of selected npc
- **type**: `string` - type of partner to generate
- **partnerSlot**: `number` - slot number for partner npc
beastSettings:
name: beastSettings
beastSimple:
description: |-
Prints beast type, without monsterpeople variants.
Example:
`<<beastSimple "wolfgirl">>` - prints "wolf"
`<<beastSimple "dolphinboy" true>> - prints "dolphins"
`<<beastSimple beast? plural?>>`
- **beast** _optional_: `string` or `number` - type of beast to refer to. With string, widget uses string as beast. With number, widget uses beast in $NPCList slot of number. With no argument, widget uses NPCList[0]
- **plural** _optional_: `boolean` - converts output from singular to plural
beastspeech:
name: beastspeech
beastSplitBy:
name: beastSplitBy
beastSplitByFull:
name: beastSplitByFull
beastsplural:
description: |-
Prints plural beast type of provided NPC
`<<beastsplural npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of active npcs
- `0-5`: Defaults to 0
parameters:
- "|+ number"
tags: ["text"]
beastTrainGenerate:
name: beastTrainGenerate
beasttype:
description: |-
Prints beast type of NPC
`<<beasttype npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of active npcs
- `0-5`: Defaults to 0
parameters:
- "|+ number"
tags: ["text"]
beasttypes:
description: |-
Prints beast type of first NPC with possessive apostrophe s
tags: ["text"]
beastwound:
name: beastwound
beauty:
description: |-
Adds beauty to pc's state
`$beauty` is a measure of pc's base beauty that grows over time from lack of trauma where 0 is none (0-10,000)
`<<beauty change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
becomePinch:
description: |-
Morphs the pc into either Lew or Pinch
**Should be used after `<<freezePlayerStats>>`**
`<<becomePinch characterName>>`
- **characterName**: `string` - name of the character to morph into
- `"Lew"` | `"Pinch"`
parameters:
- '"Lew"|"Pinch"'
bedclotheson:
name: bedclotheson
bellyDescription:
description: |-
Prints description of a belly based on its size
`<<bellyDescription sizeSource forcePregDesc?>>`
- **sizeSource**: `number|string` - source where size is pulled from
- `number`: Direct size value
- `"pc"`: Take size from pc
- `namedNPC`: Take size from named npc
- %namedNPCDesc%
- **forcePregDesc** _optional_: `boolean` - use pregnant version of description regardless of pregnancy awareness (truthy)
- Defaults to `false`
parameters:
- '|+ number|"pc"|%namedNPC% |+ bool'
bestialityTrait:
description: |-
Prints `| Tamer` or `| Bitch` depending on pc's `$submissive`
tags: ["unused", "text"]
bhe:
description: |-
Prints singular pronoun of current beast (he/she/it)
See `<<bHe>>` for capitalised prose
Does not `<<personselect>>` to provided npc, set pronoun, or behave like `<<he>>` for named npcs. Consider refactoring to not personselect but allow named
`<<bhe npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of npc to output
- Defaults to `0`
parameters:
- "|+ number"
tags: ["text", "refactor"]
bHe:
description: |-
Prints capitalised singular pronoun of current beast (He/She/It)
See `<<bhe>>` for un-capitalised prose
Does not `<<personselect>>` to provided npc, set pronoun, or behave like `<<He_Short>>` for named npcs. Consider refactoring to not personselect but allow named
`<<bHe npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of npc to output
- Defaults to `0`
parameters:
- "|+ number"
tags: ["text", "refactor"]
bhers:
description: |-
Prints singular possessive pronoun as predicate adjective of current beast (his/hers/its)
See `<<bhis>>` for general possessive pronoun
Does not `<<personselect>>` to provided npc, set pronoun, or behave like `<<his>>` for named npcs. Consider refactoring to not personselect but allow named
`<<bhers npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of npc to output
- Defaults to `0`
parameters:
- "|+ number"
tags: ["text", "refactor"]
bhes:
description: |-
Prints singular pronoun as is/has contraction of current beast (he's/she's/it's)
See `<<bHes>>` for capitalised prose
Does not `<<personselect>>` to provided npc, set pronoun, or behave like `<<Himself>>` for named npcs. Consider refactoring to not personselect but allow named
`<<bHimself npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of npc to output
- Defaults to `0`
parameters:
- "|+ number"
tags: ["unused", "text", "refactor"]
bHes:
name: bHes
bhim:
description: |-
Prints singular objective pronoun of current beast (him/her/it)
See `<<bHim>>` for capitalised prose
Does not `<<personselect>>` to provided npc, set pronoun, or behave like `<<him>>` for named npcs. Consider refactoring to not personselect but allow named
`<<bhim npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of npc to output
- Defaults to `0`
parameters:
- "|+ number"
tags: ["text", "refactor"]
bHim:
description: |-
Prints capitalised singular objective pronoun of current beast (Him/Her/It)
See `<<bhim>>` for uncapitalised prose
Does not `<<personselect>>` to provided npc, set pronoun, or behave like `<<Him>>` for named npcs. Consider refactoring to not personselect but allow named
`<<bHim npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of npc to output
- Defaults to `0`
parameters:
- "|+ number"
tags: ["unused", "text", "refactor"]
bhimself:
description: |-
Prints singular objective pronoun as reflexive form of current beast (Himself/Herself/Itself)
See `<<bHimself>>` for capitalised prose
Does not `<<personselect>>` to provided npc, set pronoun, or behave like `<<himself>>` for named npcs. Consider refactoring to not personselect but allow named
`<<bhimself npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of npc to output
- Defaults to `0`
parameters:
- "|+ number"
tags: ["unused", "text", "refactor"]
bHimself:
description: |-
Prints capitalised singular objective pronoun as reflexive form of current beast (Himself/Herself/Itself)
See `<<bhimself>>` for uncapitalised prose
Does not `<<personselect>>` to provided npc, set pronoun, or behave like `<<Himself>>` (because it doesn't exist) for named npcs.
Consider refactoring to not personselect but allow named
`<<bHimself npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of npc to output
- Defaults to `0`
parameters:
- "|+ number"
tags: ["unused", "text", "refactor"]
bhis:
description: |-
Prints singular possessive pronoun of current beast (his/her/its)
See `<bHis>>` for capitalised prose or `<<bhers>>` for general possessive pronoun as predicate adjective (hers)
Does not `<<personselect>>` to provided npc, set pronoun, or behave like `<<his>>` for named npcs. Consider refactoring to not personselect but allow named
`<<bhis npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of npc to output
- Defaults to `0`
parameters:
- "|+ number"
tags: ["text", "refactor"]
bHis:
description: |-
Prints capitalised singular possessive pronoun of current beast (his/hers/its)
See `<<bhis>>` for uncapitalised prose
Does not `<<personselect>>` to provided npc, set pronoun, or behave like `<<His>>` for named npcs. Consider refactoring to not personselect but allow named
`<<bHis npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of npc to output
- Defaults to `0`
parameters:
- "|+ number"
tags: ["text", "refactor"]
bhisnext:
name: bhisnext
bind:
name: bind
bindings:
name: bindings
bindtemp:
name: bindtemp
bird_fly_options:
description: |-
Prints partial passage regarding player's ability to fly based on their current wings, as well as links for them to prepare for a hunt, learn to fly, or fly to town, the farm, or the base of the tower as relevant
tags: ["text", "links"]
bird_fly_reveal_wings:
description: |-
Swaps other types of visible wings out to display pc's bird wings
bird_greeting:
description: |-
Prints daily greeting from the Great Hawk
tags: ["text"]
bird_hunt_children_event:
description: |-
Events for feeding hawk children
tags: ["text", "links"]
bird_hunt_return:
description: |-
Gives the player lurkers, trash, valuables, food, rocks, or clothes when the Great Hawk returns from a solo hunt, as assigned by `<<bird_loot_select>>`. Prints links for the player to thank, scold, or do nothing.
tags: ["text", "links"]
bird_hunt_start:
name: bird_hunt_start
bird_hunt_timer:
description: |-
Sets `$bird.timer` to a random appropriate value
`$bird.timer` is an amount in minutes before GH is allowed to hunt again
bird_init:
name: bird_init
bird_loot:
name: bird_loot
bird_loot_random:
description: |-
Randomises the options of loot given to the player when the Great Hawk returns from a solo hunt
tags: ["text", "links"]
bird_loot_select:
description: |-
- Selects what loot to give the player when Great Hawk returns from hunting solo, modified by player responses
= Defaults to `<<bird_loot_random>>`
bird_pass:
description: |-
Advances time by an amount, used in place of `<<pass>>` while at the Great Hawk's tower. Increases hunger if the player is not stockholmed and advances several other timers, including hunts and upgrades.
`<<bird_pass timeToPass>>`
- **timeToPass**: `number` - number of units
bird_perch_options:
description: |-
Prints events and links for players on the perch in the Great Hawk's tower
tags: ["text", "links"]
bird_schedule:
description: |-
- Sets $bird.activity to "sleep", "sing", "bathe", "rest", "brood", "build", "groom", or `$bird.override` - Checks for and updates daily/weekly flight triggers, as well as the number of eggs present at the tower
bird_stockholm:
description: |-
Increases `$bird.syndrome` by a given amount
`<<bird_stockholm amountToIncrease>>`
- **amountToIncrease**: `number` - number of units
bird_telescope_options:
name: bird_telescope_options
birdEggLayEvent:
name: birdEggLayEvent
birthAftercareNappy:
description: |-
Prints the helper teaching/assisting with changing & bathing the
newborn(s). Branches on `$first_birth` and `$litter_size`.
tags: ["text"]
birthBabySleeps:
description: |-
Prints the one-line description of the sleeping newborn(s); picks
"chest"/"chests" from `$litter_size`.
tags: ["text"]
birthChildElement:
name: birthChildElement
birthCradle:
description: |-
Prints the player cradling their newborn(s), branching on `$litter_size`.
Optional arguments: who places the third baby as plain text (e.g. "the midwife");
omit it to use `<<he>>` for the current person1 NPC.
tags: ["text"]
birthDissociationGlee:
description: |-
Prints the rush of post-birth joy shown when the player is dissociating.
Pairs with birthDissociationVision (which plays earlier, during labour).
tags: ["text"]
birthDissociationVision:
description: |-
Prints the shared "black abyss / white light" dream shown during birth
when the player is dissociating.
tags: ["text"]
birthUi:
name: birthUi
bishop:
description: |-
Prints `bishop` if confessor has had intro, otherwise `<<priest>>`
tags: ["text"]
bishop_hands:
description: |-
Prints `bishop's hands` or its parts
`<<bishop_hands length?>>`
- **length** _optional_: `string` - type of description
- `"long"`: Individual hands that make up the bishop's hands (currently unused)
parameters:
- '|+ "long"'
bitch:
description: |-
Prints `bitch`
tags: ["text"]
bitch_pirate:
description: |-
Prints `dog` or `bitch` depending on pc's appearance
tags: ["text"]
blackjackCalculate:
name: blackjackCalculate
blackjackCaughtCheatingSurrender:
name: blackjackCaughtCheatingSurrender
blackjackCaughtControls:
name: blackjackCaughtControls
blackjackCheatingAlertsFooter:
name: blackjackCheatingAlertsFooter
blackjackCheatingCaught:
name: blackjackCheatingCaught
blackjackCheatingChoicesGenerate:
name: blackjackCheatingChoicesGenerate
blackjackCheatingPeekingChoiceGenerate:
name: blackjackCheatingPeekingChoiceGenerate
blackjackControls:
name: blackjackControls
blackjackControlsChoices:
name: blackjackControlsChoices
blackjackControlsPostGameSuspicion:
name: blackjackControlsPostGameSuspicion
blackjackEnd:
name: blackjackEnd
blackjackGetCanMarkCount:
name: blackjackGetCanMarkCount
blackjackHelp:
name: blackjackHelp
blackjackPostGameBettingResult:
name: blackjackPostGameBettingResult
blackjackPostGameThrowTips:
name: blackjackPostGameThrowTips
blackjackResultText:
name: blackjackResultText
blackjackScore:
name: blackjackScore
blackjackShowCards:
name: blackjackShowCards
blackjackStart:
name: blackjackStart
blackjackSuspicion:
name: blackjackSuspicion
blackwolfhand:
name: blackwolfhand
blackwolfhealth:
name: blackwolfhealth
bleedingWardEnd:
description: |-
Restores the values frozen by `<<bleedingWardStart>>`
bleedingWardName:
name: bleedingWardName
bleedingWardOptions:
name: bleedingWardOptions
bleedingWardStart:
description: |-
Freezes the story variables, then morphs the pc into an old seabird
blindfoldintro:
name: blindfoldintro
blindfoldremove:
name: blindfoldremove
body_size_text:
description: |-
Prints random appropriate description of pc's physique
tags: ["text"]
body_tip:
name: body_tip
bodycommentsetdata:
name: bodycommentsetdata
bodyliquid:
description: |-
Applies specified liquid(s) to specified bodypart(s)
[].deleteAt is used incorrectly here and repeated arguments should be the last.
Consider refactoring to accept array and fixing delete behaviour
`<<bodyliquid bodypart ...liquidTypes amount?>>`
- **bodypart**: `string` - bodypart(s) to apply liquid to
- `"all"` | `"clear"`: all bodyparts
- `"inside"`: inner bodyparts
- `"outside"`: all bodyparts without inner bodyparts
- %bodyLiquidPartsDesc%
- ...**liquidTypes**: `string` - type of liquid(s) to apply
- %liquidTypesDesc%
- **amount** _optional_: `number` - amount of liquid to apply to bodypart(s)
- Defaults to `1`
parameters:
- '"all"|"inside"|"outside"|%bodyLiquidParts% &+ ...(%liquidTypes%|number|var|bareword)'
- '"all"|"inside"|"outside"|%bodyLiquidParts% &+ "all" |+ number|var|bareword'
- '"clear" &+ ...(%liquidTypes%)'
tags: ["refactor"]
bodypart:
name: bodypart
bodypart_admire:
name: bodypart_admire
bodypart_admire_arrow:
name: bodypart_admire_arrow
bodypart_admire_avery:
description: |-
Avery's reactions to reading bodywriting on the player, called from `<<bodypart_admire_named>>`.
`<<bodypart_admire_avery bodypartID>>`
- **bodypartID**: `string` - key into `$skin`
parameters:
- string
bodypart_admire_bestiality:
name: bodypart_admire_bestiality
bodypart_admire_boyish:
name: bodypart_admire_boyish
bodypart_admire_chance:
name: bodypart_admire_chance
bodypart_admire_combat:
name: bodypart_admire_combat
bodypart_admire_criminal:
name: bodypart_admire_criminal
bodypart_admire_cum:
name: bodypart_admire_cum
bodypart_admire_cum_convert:
name: bodypart_admire_cum_convert
bodypart_admire_cum_heavy:
name: bodypart_admire_cum_heavy
bodypart_admire_cum_light:
name: bodypart_admire_cum_light
bodypart_admire_exhibitionism:
name: bodypart_admire_exhibitionism
bodypart_admire_generic:
name: bodypart_admire_generic
bodypart_admire_girly:
name: bodypart_admire_girly
bodypart_admire_impreg:
name: bodypart_admire_impreg
bodypart_admire_kylar:
name: bodypart_admire_kylar
bodypart_admire_lewd:
name: bodypart_admire_lewd
bodypart_admire_named:
name: bodypart_admire_named
bodypart_admire_parasite:
name: bodypart_admire_parasite
bodypart_admire_parasite_comment:
name: bodypart_admire_parasite_comment
bodypart_admire_parasite_convert:
name: bodypart_admire_parasite_convert
bodypart_admire_plant:
name: bodypart_admire_plant
bodypart_admire_pregnancy:
name: bodypart_admire_pregnancy
bodypart_admire_promiscuity:
name: bodypart_admire_promiscuity
bodypart_admire_prostitution:
name: bodypart_admire_prostitution
bodypart_admire_rape:
name: bodypart_admire_rape
bodypart_admire_violence:
name: bodypart_admire_violence
bodyPregCalc:
name: bodyPregCalc
tags: ["unused"]
bodyremarkcapitalise:
name: bodyremarkcapitalise
bodyremarkcomma:
name: bodyremarkcomma
bodyremarkstop:
name: bodyremarkstop
bodywriting:
name: bodywriting
bodywriting_beauty_select:
name: bodywriting_beauty_select
bodywriting_bestiality_select:
name: bodywriting_bestiality_select
bodywriting_clear:
name: bodywriting_clear
bodywriting_clear_all:
name: bodywriting_clear_all
tags: ["unused"]
bodywriting_criminal:
name: bodywriting_criminal
bodywriting_criminal_select:
name: bodywriting_criminal_select
bodywriting_dungeon_select:
name: bodywriting_dungeon_select
bodywriting_exhibitionism_select:
name: bodywriting_exhibitionism_select
bodywriting_finalisation:
name: bodywriting_finalisation
bodywriting_impreg_select:
name: bodywriting_impreg_select
bodywriting_init:
name: bodywriting_init
bodywriting_machine:
name: bodywriting_machine
bodywriting_normal_select:
name: bodywriting_normal_select
bodywriting_npc:
name: bodywriting_npc
bodywriting_npc_bodypart:
name: bodywriting_npc_bodypart
bodywriting_npc_gwylan:
description: |-
No description.
bodywriting_npc_kylar:
name: bodywriting_npc_kylar
bodywriting_npc_normal:
name: bodywriting_npc_normal
bodywriting_npc_picture:
name: bodywriting_npc_picture
bodywriting_npc_shape:
description: |-
No description.
bodywriting_npc_special:
name: bodywriting_npc_special
bodywriting_npc_sydney:
name: bodywriting_npc_sydney
bodywriting_npc_sydney_book:
name: bodywriting_npc_sydney_book
bodywriting_npc_sydney_friendly:
name: bodywriting_npc_sydney_friendly
bodywriting_npc_sydney_science:
name: bodywriting_npc_sydney_science
bodywriting_npc_whitney:
name: bodywriting_npc_whitney
bodywriting_pregnancy_select:
name: bodywriting_pregnancy_select
bodywriting_prostitution_check:
name: bodywriting_prostitution_check
tags: ["unused"]
bodywriting_prostitution_select:
name: bodywriting_prostitution_select
bodywriting_rape_select:
name: bodywriting_rape_select
bodywriting_scrap_select:
name: bodywriting_scrap_select
bodywriting_sex_select:
name: bodywriting_sex_select
bodywritingExposureCheck:
description: |-
Calculates exposed skin that contains bodywriting
`_skin_array` is an array of written on and exposed areas.
`_visible_areas` is an array of exposed areas.
`_skin_array_special` is an array of special properties that exposed bodywriting grants.
`_bodypart` is an area selected from random of exposed bodywritings.
`<<bodywritingExposureCheck overwrite? skipRng?>>`
- **overwrite** _optional_: `boolean` - refresh all temporary output even if already calculated (truthy)
- **skipRng** _optional_: `boolean` - don't select a random exposed bodywriting (truthy)
parameters:
- '|+ boolean |+ boolean'
tags: ["temp"]
bodywritingHiddenCheck:
description: |-
Calculates hidden skin that contains bodywriting
Calls `<<bodywritingExposureCheck>>`
`_bodywriting_hidden` is boolean flag on whether the pc has any hidden bodywriting
`_hidden_writing` is an array of hidden and written on areas.
`_bodypart` is an area selected from random of hidden bodywritings.
`<<bodywritingHiddenCheck overwrite? skipRng?>>`
- **overwrite** _optional_: `boolean` - refresh all temporary output even if already calculated (truthy)
- **skipRng** _optional_: `boolean` - don't select a random hidden bodywriting (truthy)
parameters:
- '|+ boolean |+ boolean'
tags: ["temp"]
bodywritingMenu:
name: bodywritingMenu
bodywritingMenuLinks:
name: bodywritingMenuLinks
bodywritingOptions:
name: bodywritingOptions
bookCriminal:
name: bookCriminal
bookRentalOptions:
name: bookRentalOptions
bottom:
name: bottom
bottom_sensitivity:
description: |-
Changes sensitivity of bottom by provided amount
`<<bottom_sensitivity amount>>`
- **amount**: `number` - change to sensitivity
parameters:
- number
bottom_wiggle:
name: bottom_wiggle
bottomaside:
description: |-
Prints name of innermost bottom clothing layer that can be seen or `bottom` if everything is exposed
Does not take into account over_bottom. Consider refactoring
tags: ["refactor", "text"]
bottomdifficulty:
description: |-
Prints colour-coded adjective of bottom action difficulty in current combat
tags: ["text"]
bottomejacstat:
name: bottomejacstat
bottoms:
description: |-
Prints lower clothing layer, taking into account if it is part of an outfit
tags: ["text"]
bottomsensitivity:
name: bottomsensitivity
BottomShop:
name: BottomShop
bottomsimple:
description: |-
Prints a short random word to describe a bottom, such as "ass", "butt", or "bum"
tags: ["text"]
bottomskill:
description: |-
Adds bottom skill to pc's state
`$bottomskill` is a measure of pc's proficiency using their buttocks where 0 is awkward (0-1,000)
`<<bottomskill change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
bottomskilluse:
name: bottomskilluse
bottomstat:
name: bottomstat
bottomtext:
description: |-
Prints colour-coded adjective of active bottom skill usage
tags: ["text"]
boughtOnce:
name: boughtOnce
bound2init:
name: bound2init
tags: ["unused"]
boundBodyParts:
description: |-
Prints description of bound body parts if there are any
Output is also stored in `_boundparts` for convenience
tags: ["text", "temp"]
bra:
description: |-
Prints descriptor of active NPC's inner_upper clothing
See `<<panties>> for inner_lower clothing or `<<dress>>` for upper clothing
See `<<npcClothesText>>` for full name of clothes
tags: ["text"]
brat:
name: brat
breast_sensitivity:
description: |-
Changes sensitivity of breasts by provided amount
`<<breast_sensitivity amount>>`
- **amount**: `number` - change to sensitivity
parameters:
- number
breastarousal:
deprecatedSuggestions:
- <<arousal X "breasts">>
description: |-
Adds breast-focused arousal to pc with appropriate modifiers
`<<breastsarousal change source>>`
- **change**: `number` - +/- change to apply
tags: ["unused"]
breastfed:
description: |-
Feeds 1-5 milk to pc
`<<breastfed override?>>`
- **override** _optional_: `number` - override amount to use instead of random amount
parameters:
- '|+ number'
breastfeed:
description: |-
Milks the pc and applies effects of being milked
Amount extracted is between 1x-5x amount with possible additional 2x multiplier for cow transform
`<<breastfeed amount? storage?>>`
- **amount** _optional_: `number` - multiplier to random amount of milk extracted
- Defaults to `1`
- **storage** _optional_: `string` - method used to gather milk
- `"pump"`: a breastpump is being used
- Defaults to not storing
parameters:
- '|+ number |+ "pump"'
breastFlavorText:
name: breastFlavorText
breasts:
name: breasts
breastsaside:
description: |-
Prints name of innermost top clothing layer that can be seen or `<<breasts>>` if everything is exposed
See `<<topaside>>`
tags: ["text"]
breastsensitivity:
name: breastsensitivity
breastsizedesc:
name: breastsizedesc
breastssimple:
name: breastssimple
bred:
description: |-
Prints `bred` or `fucked` depending on pc's pregnancy speech settings
Bug reports of it sometimes showing up as `bread` are just rumours
tags: ["text"]
brothel_bukkake:
name: brothel_bukkake
brothel_bukkake_end:
name: brothel_bukkake_end
brothel_bukkake_init:
name: brothel_bukkake_init
brothel_bukkake_links:
name: brothel_bukkake_links
brothel_show_security:
name: brothel_show_security
brothelshowintro:
name: brothelshowintro
brothelshowoptions:
name: brothelshowoptions
brothelvirginitybidders:
description: |-
Raises current bid on virginity and selects highest bidder as active NPC
brothers_and_sisters:
description: |-
Prints `brothers and sisters` unless player has mono-gendered the world
See `<<monks_and_nuns>>`
tags: ["text"]
brownFoxOptions:
name: brownFoxOptions
browsColourPreview:
name: browsColourPreview
browsDyeReset:
name: browsDyeReset
bruise:
name: bruise
busstationex1:
name: busstationex1
buswait:
name: buswait
buttplugon:
name: buttplugon
buyToy:
name: buyToy
buyTryOnClothes:
name: buyTryOnClothes
bwpcinteraction:
name: bwpcinteraction
cabinothers:
name: cabinothers
cabintime:
description: |-
Passes time until Eden's wakeup hour (7am)
`<<cabintime noSleep?>>`
- **noSleep** _optional_: `boolean` - don't reduce fatigue based on hours passed (truthy)
- Defaults to `false`
parameters:
- "|+ bool"
cafecoffeeflasharousal:
name: cafecoffeeflasharousal
cafecoffeesip:
name: cafecoffeesip
CafeExhibitionismLegsPartEnd:
name: CafeExhibitionismLegsPartEnd
CafeExhibitionismLegsPartNormalTerminate:
description: |-
End Cafe Exhibitionism event and link to Cliff Street
```dart
// :: Cafe Exhibitionism Legs Part
// <<CafeExhibitionismLegsPartSuccessS1>>
// <<CafeExhibitionismLegsPartPhotoDecision>>
// <<CafeExhibitionismLegsPartPantyTakeoffDecision>>
<<CafeExhibitionismLegsPartNormalTerminate>>
// :: Cafe Exhibitionism Legs Part Pantiless
// <<CafeExhibitionismLegsPartPantilessPhotoDecision>>
<<CafeExhibitionismLegsPartNormalTerminate>>
```
tags: ["links"]
CafeExhibitionismLegsPartPantilessPhotoDecision:
description: |-
Link to Cafe Exhibitionism Legs Part Pantiless Photo/No Photo Passages
```dart
// :: Cafe Exhibitionism Legs Part Pantiless
<<CafeExhibitionismLegsPartPantilessPhotoDecision>>
// <<CafeExhibitionismLegsPartNormalTerminate>>
```
tags: ["links"]
CafeExhibitionismLegsPartPantyTakeoffDecision:
description: |-
```dart
// :: Cafe Exhibitionism Legs Part
// <<CafeExhibitionismLegsPartSuccessS1>>
<<CafeExhibitionismLegsPartPhotoDecision>>
// <<CafeExhibitionismLegsPartPantyTakeoffDecision>>
// <<CafeExhibitionismLegsPartNormalTerminate>>
// :: Cafe Exhibitionism Legs Part Photo
// <<CafeExhibitionismLegsPartSuccessS2>>
<<CafeExhibitionismLegsPartPantyTakeoffDecision>>
// <<CafeExhibitionismLegsPartEnd>>
```
tags: ["links"]
CafeExhibitionismLegsPartPhotoDecision:
description: |-
```dart
// :: Cafe Exhibitionism Legs Part
// <<CafeExhibitionismLegsPartSuccessS1>>
<<CafeExhibitionismLegsPartPhotoDecision>>
// <<CafeExhibitionismLegsPartPantyTakeoffDecision>>
// <<CafeExhibitionismLegsPartNormalTerminate>>
```
tags: ["links"]
CafeExhibitionismLegsPartSuccessS1:
description: |-
```dart
// :: Cafe Exhibitionism Legs Part
<<CafeExhibitionismLegsPartSuccessS1>>
// <<CafeExhibitionismLegsPartPhotoDecision>>
// <<CafeExhibitionismLegsPartPantyTakeoffDecision>>
// <<CafeExhibitionismLegsPartNormalTerminate>>
```
tags: ["links"]
CafeExhibitionismLegsPartSuccessS2:
description: |-
```dart
// :: Cafe Exhibitionism Legs Part Photo
<<CafeExhibitionismLegsPartSuccessS2>>
// <<CafeExhibitionismLegsPartPantyTakeoffDecision>>
// <<CafeExhibitionismLegsPartEnd>>
```
tags: ["links"]
calchairlengthstage:
name: calchairlengthstage
calculateallure:
name: calculateallure
calculateBlackjackLuckStats:
name: calculateBlackjackLuckStats
callJanet:
description: |-
Freezes the story variables, then morphs the pc into Janet, also altering the location and time
campFurnitureMessage:
name: campFurnitureMessage
canteenlunchoptions:
description: |-
Prints links for canteen
tags: ["links", "text"]
canvas-model-freeze:
name: canvas-model-freeze
canvas-model-override:
name: canvas-model-override
canvas-model-temporary-effect:
description: |-
Sets a temporary effect for the main canvas
Part of the larger [Temporary effects system]
`<<canvas-model-temporary-effect effectName state>>`
- **effectName**: `string` - effect to set
- **state**: `any` - state to set it to
- Defaults to `true`
parameters:
- '"underwater"|"fire"|"petals"|"vines" |+ var|bareword|text'
canvas-player-base-body:
name: canvas-player-base-body
canvasanimate:
description: |-
Insert HTML <canvas> element right here
Renders, prints, and animates previously prepared images into it
[Low-Level Canvas API Overview](%workspaceDir%/game/base-clothing/canvas.twee#L2)
`<<canvasanimate className>>`
- **className**: `string` - class or space-separated classes of canvas element to be inserted when placed in the DOM
parameters:
- "|+ text|string"
tags: ["dom", "unused"]
canvasColoursEditor:
name: canvasColoursEditor
canvasdraw:
description: |-
Insert HTML <canvas> element right here
Renders, prints, and animates previously prepared images into it
[Low-Level Canvas API Overview](%workspaceDir%/game/base-clothing/canvas.twee#L2)
`<<canvasdraw frameCount className>>`
- **frameCount**: `number` - frame count to use for splitting canvas
- Defaults to 1
- **className**: `string` - class or space-separated classes of canvas element to be inserted when placed in the DOM
parameters:
- "|+ number |+ text|string"
tags: ["dom", "unused"]
canvasimg:
name: canvasimg
canvaslayer:
description: |-
Prepares a layer to be rendered
[Low-Level Canvas API Overview](%workspaceDir%/game/base-clothing/canvas.twee#L2)
`<<canvaslayer zIndex sourceUrl ...options>>`
- **zIndex**: `number` - z-index of the layer (bigger above lower)
- **sourceUrl**: `string` - path to image
- ...**options**: extra CompositeLayerSpec option objects
- Are merged, last has most priority
parameters:
- number &+ text &+ ...(bareword|var)
tags: ["unused"]
canvasLayersEditor:
name: canvasLayersEditor
canvasModelEditor:
name: canvasModelEditor
canvasstart:
description: |-
Creates an off-screen <canvas> element
[Low-Level Canvas API Overview](%workspaceDir%/game/base-clothing/canvas.twee#L2)
`<<canvasstart width height frames>>`
- **width**: `number` - positive integer corresponding to HTMLCanvasElement.width
- **height**: `number` - positive integer corresponding to HTMLCanvasElement.height
- **frames**: `number` - positive integer multiplied to width for creating horizontal spritesheet
parameters:
- number &+ number &+ number
tags: ["unused"]
capitalise:
description: |-
Capitalises the first letter of `_text_output`
Example:
```
<<widget "The">><<silently>>
<<set _text_output to "the">>
<<capitalise>>
<</silently>>_text_output<</widget>>
```
caption_clamp:
name: caption_clamp
card_clothes_lost:
name: card_clothes_lost
card_clothes_rebuy_calculate:
name: card_clothes_rebuy_calculate
card_pot_collected:
name: card_pot_collected
card_pot_confiscated:
name: card_pot_confiscated
card_skill:
description: |-
Changes card skill for target NPC
`<<card_skill target change>>`
- **target**: `string` - target npc to print drink of
- %cardsDesc%
- **change**: `number` - relative change to apply to skill
parameters:
- "(%cards%) &+ number"
cardImage:
name: cardImage
cards_arousal_check:
name: cards_arousal_check
cards_bottom_cover:
name: cards_bottom_cover
cards_bra_cover:
name: cards_bra_cover
cards_cheating_virginity_warning:
name: cards_cheating_virginity_warning
cards_exposure_text:
name: cards_exposure_text
cards_lap_clothes:
name: cards_lap_clothes
cards_lap_clothes_intro:
name: cards_lap_clothes_intro
cards_lap_return:
name: cards_lap_return
cards_naked_cover:
name: cards_naked_cover
cards_naked_end:
name: cards_naked_end
cards_oral_options:
name: cards_oral_options
cards_play_options:
name: cards_play_options
cards_start_play_options:
name: cards_start_play_options
cards_strip_text:
name: cards_strip_text
cards_top_cover:
name: cards_top_cover
cards_underwear_cover:
name: cards_underwear_cover
cards_virginity_all_warnings:
name: cards_virginity_all_warnings
cards_virginity_warning:
name: cards_virginity_warning
cardText:
name: cardText
tags: ["unused"]
carriedClear:
description: |-
Sets provided clothing slot to naked
`<<carriedClear slot>>`
- **slot**: `string` - carried clothing slot to erase
- %clothesTypesDesc%
parameters:
- "%clothesTypes%"
carriedSend:
name: carriedSend
carryblock:
name: carryblock
cassBoy:
name: cassBoy
cast_aside_clothes:
description: |-
Prints sentence describing what an npc does with forcibly stripped clothing
Out of date and underutilised. Consider refactoring
tags: ["text", "refactor"]
cat:
description: |-
Prints `| Cat`
tags: ["text"]
catacombs_end:
name: catacombs_end
catacombs_exit_indicator:
name: catacombs_exit_indicator
catacombs_init:
name: catacombs_init
catacombs_plunder:
description: |-
Prints the header and link for plundering various sections of the catacombs
`<<catacombs_plunder filter difficulty?>>`
- **filter**: `string` - the location being plundered
- `"normal"` | `"barrow"` | `"compound"`
- **difficulty** _optional_: `number` - the skulduggery skill value needed to plunder this location
- Defaults to `500`
catacombs_skip:
name: catacombs_skip
catacombs_torch:
name: catacombs_torch
catacombs_torch_text:
name: catacombs_torch_text
catcall:
description: |-
Prints random catcall
tags: ["text"]
catcallbottom:
description: |-
Prints random catcall regarding the pc's large bottom
tags: ["text"]
catcallbreasts:
description: |-
Prints random catcall regarding the pc's large breasts
tags: ["text"]
catcallbulge:
description: |-
Prints random catcall regarding the pc's large genital bulge
tags: ["text"]
catcalllewd:
description: |-
Prints random lewd catcall
tags: ["text"]
catcallpregnancy:
description: |-
Prints random catcall regarding the pc's pregnant belly
tags: ["text"]
catcallschool:
description: |-
Prints random catcall appropriate for pc's peers to say
tags: ["text"]
catcallteaseresponse:
description: |-
Offers a random response to a school NPC being teased by the PC
catHeterochromiaTF:
name: catHeterochromiaTF
catTransform:
name: catTransform
cell_trouble:
name: cell_trouble
chalets_bags:
name: chalets_bags
chalets_end:
name: chalets_end
chalets_end_link:
name: chalets_end_link
chalets_fall_events:
name: chalets_fall_events
chalets_links:
name: chalets_links
chalets_start:
name: chalets_start
changeCheatClass:
description: |-
Changes class on selected DOM element using uniform Cheat classes
Relies on temporary variable `_statColour` for backup class
`<<changeCheatClass selector mode?>>`
- **selector**: `string` - CSS selector string
- See `<<addclass>>` and `<<removeclass>>`
- **mode** _optional_: `string` - state to change the selected element to
- `"On"` | `"Off"` | `"Disabled"`
parameters:
- '|+ "On"|"Off"|"Disabled"'
tags: ["temp"]
changingRoomFeelings:
name: changingRoomFeelings
changingRoomSetup:
description: |-
Prepares the variables required for the school changing rooms. Used in the rooms themselves and outside.
`<<changingRoomSetup gender>>`
- **gender**: `string` - Expects either "m" or "f"
characteristic-box:
name: characteristic-box
characteristic-box-modifier:
name: characteristic-box-modifier
characteristic-text:
name: characteristic-text
characteristics:
name: characteristics
characterSettings:
name: characterSettings
charles:
description: |-
Prints the name Morgan gives the player based on appearance
tags: ["text"]
charLightCombat:
description: |-
Render and print light behind character model
`<<charLightCombat position? prop?>>`
- **position** _optional_: `string` - combat position
- %combatPositionsDesc%
- **prop** _optional_: `string` - prop being rendered in combat
- %combatPropsDesc%
- **className** _optional_: `string` - class or space-separated classes of div element to be inserted when placed in the DOM
parameters:
- "|+ %combatPositions% |+ %combatProps% |+ text|string"
tags: ["dom"]
chastityBreakWraith:
name: chastityBreakWraith
cheatAveryMansion:
description: |-
Sets cheats to enter Avery's mansion early (debug only).
Provides the initial cheats from the debug and automatically pushes the required states to unlock the mansion. The vavlues are set to fit the criteria of a score of 130 and above.
- Avery is met and their love is set at 90
- You start with a housekeeping of B
- You start with 12 random level 1 recipes
- You have dated Avery 12 times and they're unlocked as your Love Interest
cheatBodyLiquid:
description: |-
Prints links to change amount of bodily fluids to all parts of the pc's body
tags: ["text","links"]
cheatBodyliquidElement:
name: cheatBodyliquidElement
cheatMenuEyesSelected:
name: cheatMenuEyesSelected
cheatParasiteToggle:
name: cheatParasiteToggle
cheatPregnancyNPC:
name: cheatPregnancyNPC
cheatPregnancyNPCReset:
name: cheatPregnancyNPCReset
cheatPregnancyNPCStepper:
description: |-
Prints cheat NPC stepper for pregnancy controls
`<<cheatPregnancyNPCStepper npcName>>`
- **npcName**: `string` - name of NPC to create pregnancy stepper for
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text", "links"]
cheats:
name: cheats
cheats-characterStats:
name: cheats-characterStats
cheats-characterVisual:
name: cheats-characterVisual
cheats-fluids:
description: Prints fluid cheat number steppers
tags: ["text", "links"]
cheats-npcs:
name: cheats-npcs
cheats-other:
name: cheats-other
cheats-teleport:
description: |-
Print cheat teleport options
cheats-teleport-function:
description: |-
Use cheats to teleport to selected location
cheatsBody:
description: |-
Prints links corresponding to the game's body shapes, allowing the player to change their `$player.gender_body`.
`Body shapes` are %bodyShapesDesc%
tags: ["links"]
cheatsBodyShape:
description: |-
Prints links corresponding to the game's body shapes, allowing the player to change their `$player.bodyshape`.
tags: ["links"]
cheatsBodySize:
description: |-
Prints links corresponding to the game's body sizes, allowing the player to change their `$bodysize`.
tags: ["links"]
cheatsDemeanour:
description: |-
Prints links corresponding to the game's demeanours, allowing the player to change their `$player.facevariant`.
tags: ["links"]
cheatSection:
description: |-
Large sections of `<<cheatStats>>`
cheatsFaceStyle:
description: |-
Prints links corresponding to the game's face styles, allowing the player to change their `$player.facestyle`.
tags: ["links"]
cheatsHistoryNavigation:
name: cheatsHistoryNavigation
cheatsImpregOptions:
name: cheatsImpregOptions
cheatsParasite:
description: |-
Impregnates a parasite into the pc and updates cheats menu
See `<<cheatsParasiteOptions>>`
`<<cheatsParasite bodyPart herm?>>`
- **bodyPart**: `string` - example kind to output
- `"anus"` | `"vagina"`
- **herm** _optional_: `boolean` - set parasite to hermaphrodite (truthy)
parameters:
- '"anus"|"vagina" |+ boolean'
cheatsParasiteOptions:
description: |-
Prints controls and description of parasite pregnancies
See `<<cheatsParasite>>`
`<<cheatsParasiteOptions bodyPart>>`
- **bodyPart**: `string` - part to print controls for
- `"anus"` | `"vagina"`
parameters:
- '"anus"|"vagina"'
cheatsPregnancyOptions:
name: cheatsPregnancyOptions
cheatsRep:
description: |-
Prints descriptions for some reputation stats.
tags: ["text"]
cheatsSex:
description: |-
Prints links corresponding to the game's gender options, allowing the player to change their `$player.gender`.
tags: ["links"]
cheatsSpeechAttitude:
name: cheatsSpeechAttitude
cheatStart:
description: Initialises cheat menu values
cheatsWeather:
description: |-
Prints cheat controls for weather
tags: ["text", "links", "dom"]
cheatVirginityToggle:
name: cheatVirginityToggle
checkdroptowel:
name: checkdroptowel
checkfloor:
name: checkfloor
checkforloveinterests:
description: |-
Randomly picks one of the player's selected love interests and stores it in `_loveInterest`. If no love interest is found, `_loveInterest` defaults to `undefined`.
checkWraith:
name: checkWraith
cheeklick:
description: |-
Prints some facial reaction by NPC to pc's mouth usage
`<<ejaculation-eden npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of active npcs
- `0-5`: Defaults to 0
parameters:
- "|+ number"
tags: ["text"]
chefspeechoptions:
name: chefspeechoptions
chefwork:
name: chefwork
chest:
name: chest
chest_section:
name: chest_section
chestactionDifficulty:
name: chestactionDifficulty
chestactionDifficultyTentacle:
name: chestactionDifficultyTentacle
chestActionInit:
name: chestActionInit
chestActionInitStruggle:
name: chestActionInitStruggle
chestActionInitTentacle:
name: chestActionInitTentacle
chestActions:
name: chestActions
chestActionsTentacle:
name: chestActionsTentacle
chestdifficulty:
description: |-
Prints colour-coded adjective of chest action difficulty in current combat
tags: ["text"]
chestejacstat:
name: chestejacstat
chestsimple:
name: chestsimple
chestskill:
description: |-
Adds chest skill to pc's state
`$chestskill` is a measure of pc's proficiency using their chest where 0 is awkward (0-1,000)
`<<chestskill change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
chestskilluse:
name: chestskilluse
cheststat:
name: cheststat
chesttext:
description: |-
Prints colour-coded adjective of active chest skill usage
tags: ["text"]
chikanattention:
name: chikanattention
chikanmolestactions:
name: chikanmolestactions
childActivity:
name: childActivity
childAge:
name: childAge
childBatheScene:
description: |-
Prints the full bathe-the-child scene (intro + one of four flavours +
wrap-up) and sets the right prop. Optional arg: "gentle" | "shampoo" |
"calm" | "tantrum"; omit for a random flavour.
tags: ["text"]
childcry:
name: childcry
childfeet:
description: |-
Prints feet appropriate to type of selected child
`<<childfeet childId?>>`
- **childId** _optional_: `string` - childId to use in place of currently selected child
- Defaults to currently selected
parameters:
- "|+ text|string"
tags: ["text"]
childfinger:
description: |-
Prints fingers appropriate to type of selected child
`<<childfinger childId?>>`
- **childId** _optional_: `string` - childId to use in place of currently selected child
- Defaults to currently selected
parameters:
- "|+ text|string"
tags: ["text"]
childFirstWord:
name: childFirstWord
tags: ["unused"]
childgiggles:
name: childgiggles
childhair:
name: childhair
tags: ["unused"]
childhand:
name: childhand
childhands:
name: childhands
childhe:
name: childhe
childHe:
name: childHe
childhers:
name: childhers
childHers:
name: childHers
tags: ["unused"]
childherself:
name: childherself
childhim:
name: childhim
childHim:
name: childHim
childhimself:
name: childhimself
childhis:
name: childhis
childHis:
name: childHis
childInteratedWith:
name: childInteratedWith
childname:
name: childname
childRename:
name: childRename
tags: ["unused"]
childrenEvents:
name: childrenEvents
childrenNames:
name: childrenNames
childrenSetup:
name: childrenSetup
childrenToysUI:
name: childrenToysUI
childrenToysUIReplace:
name: childrenToysUIReplace
childSelect:
name: childSelect
childSelectRandom:
description: |-
Sets `$childSelected` to a random child
`$childSelected` is a `{Child}` object from `$children`.
It being synced with the original cannot be guaranteed between passages
`<<childSelectRandom location>>`
- **location** _optional_: `string` - location string to select from randomly
- Defaults to all if no location is provided
parameters:
- "text|string"
childsibling:
name: childsibling
childsiblings:
name: childsiblings
childson:
description: |-
Prints singular noun of provided or selected child
See `<childsons>` for plural
`<<childson childId?>>`
- **childId** _optional_: `string` - childId to use in place of currently selected child
parameters:
- "|+ text|string"
tags: ["text"]
childsons:
description: |-
Prints plural noun of provided or selected child
See `<childson>` for singular
`<<childsons childId?>>`
- ...**childId** _optional_: `string|Array` - childId as separate params or array of ids
parameters:
- "...(text|string|var|bareword)"
tags: ["text", "unused"]
childtoes:
description: |-
Prints toes appropriate to type of selected child
`<<childtoes childId?>>`
- **childId** _optional_: `string` - childId to use in place of currently selected child
- Defaults to currently selected
parameters:
- "|+ text|string"
tags: ["text"]
childtoy:
name: childtoy
childTransform:
name: childTransform
childtype:
name: childtype
childTypeDisplay:
description: |-
Prints the type of a selected child, for use within `<<childViewerElement>>` and `<<birthChildElement>>`
`<<childTypeDisplay childObject>>`
- **childObject**: `object` - selected child
parameters:
- "text|string"
childViewerDisplay:
name: childViewerDisplay
childViewerDisplayElements:
name: childViewerDisplayElements
childViewerElement:
name: childViewerElement
childViewerHiddenElements:
name: childViewerHiddenElements
childViewerHiddenElementsUnhide:
name: childViewerHiddenElementsUnhide
childViewerPageUpdate:
name: childViewerPageUpdate
chokeTrait:
description: |-
Prints `| Asphyxiophilia`
tags: ["text"]
christmas_options:
name: christmas_options
christmas_robin:
name: christmas_robin
christmas_robin_visit:
name: christmas_robin_visit
clamp:
name: clamp
clampgoo:
name: clampgoo
classgrades:
name: classgrades
classRoomEarSlime:
description: |-
Checks if ear slime wants the player to skip specified class and interrupt passage
Sets `_earSlimeClassRoomBlock` to true if slime outputs enough text to warrant a passage block
`<<classRoomEarSlime class>>`
- **class**: `string` - name of class to check
- `"english"` | `"history"` | `"maths"` | `"science"` | `"swimming"` | `"housekeeping"`
parameters:
- '"english"|"history"|"maths"|"science"|"swimming"|"housekeeping"'
tags: ["links", "text", "temp"]
cleanupOnWardrobeExit:
name: cleanupOnWardrobeExit
clear_pillory:
name: clear_pillory
clear_plot:
name: clear_plot
clear-multi-canvas:
description: |-
No description.
clearAllWarning:
name: clearAllWarning
clearAnimalTransformations:
name: clearAnimalTransformations
clearDivineTransformations:
name: clearDivineTransformations
cleareventpool:
name: cleareventpool
clearingactions:
name: clearingactions
clearingedenactions:
name: clearingedenactions
clearingHeaterExamine:
name: clearingHeaterExamine
clearnpc:
description: |-
Clears active npcs, saving persistent npcs if present
See `<<clearsinglenpc>>` to clear just a single active npc
clearNPC:
description: |-
Fully clears data about a specific persistent npc
Not to be confused with `<<clearnpc>>`. Consider refactoring
`<<clearNPC name>>`
- **name**: `string` - npc key to clear data from
- spaces should be avoided if possible
parameters:
- "bareword|text|string"
tags: ["refactor"]
clearSaveMenu:
name: clearSaveMenu
clearsinglenpc:
description: |-
Clears single active npc
Does not save persistent npcs when cleared
`<<clearsinglenpc slot>>`
- **slot**: `number` - slot number to clear (zero-based)
parameters:
- number
clearToDeleteParasiteFetus:
name: clearToDeleteParasiteFetus
clearWraith:
name: clearWraith
cliff:
name: cliff
cliff_top_desc:
name: cliff_top_desc
cliffeventend:
name: cliffeventend
cliffquick:
name: cliffquick
clit:
name: clit
clock:
description: |-
Prints an analogue clock set to current time
tags: ["dom"]
closeButton:
name: closeButton
closeButtonMobile:
name: closeButtonMobile
clothesactive:
name: clothesactive
clothesactivemissionary:
name: clothesactivemissionary
clothescolour:
name: clothescolour
clotheson:
name: clotheson
clothesonplant:
name: clothesonplant
clothesontowel:
name: clothesontowel
clothesruined:
description: |-
Destroys pc's main body clothing slots, whether worn or carried
This includes over_upper, upper, under_upper, over_lower, lower, and under_lower slot clothing
clothesruinstat:
name: clothesruinstat
clothesspeech:
name: clothesspeech
clothesstrip:
name: clothesstrip
clothesstripstat:
name: clothesstripstat
clothing_arrays:
name: clothing_arrays
clothing_data:
name: clothing_data
clothingCaptionChastityEffect:
name: clothingCaptionChastityEffect
clothingCaptionExposed:
name: clothingCaptionExposed
clothingCaptionText:
name: clothingCaptionText
clothingCaptionTextFollower:
name: clothingCaptionTextFollower
clothingCaptionTextGender:
name: clothingCaptionTextGender
clothingCaptionTextGenitals:
name: clothingCaptionTextGenitals
clothingCaptionTextHandheld:
name: clothingCaptionTextHandheld
clothingCaptionTextMask:
name: clothingCaptionTextMask
clothingCaptionTextMiddle:
name: clothingCaptionTextMiddle
clothingCaptionTextNothing:
name: clothingCaptionTextNothing
clothingCaptionTextOver:
name: clothingCaptionTextOver
clothingCaptionTextPreggy:
name: clothingCaptionTextPreggy
clothingCaptionTextStrip:
name: clothingCaptionTextStrip
clothingCaptionTextUnder:
name: clothingCaptionTextUnder
clothinginit:
name: clothinginit
clothingReset:
name: clothingReset
clothingResetOwnedReset:
name: clothingResetOwnedReset
clothingShop-main:
name: clothingShop-main
clothingshopChangePage:
name: clothingshopChangePage
clothingShopLegend:
name: clothingShopLegend
clothingShopv2:
description: |-
1. `<<clothingShopv2 shopName slot>>`
2. `<<clothingShopv2 shopName slot outfits?>>`
- **shopName**: `string` - name of shop
- `"clothing"` | `"forest"` | `"school"`"*slot**: `string` - name of clothing slot"
- `"all"` | %clothesTypesDesc%
- `"over_upper"` | `"upper"` | `"under_upper"`"*outfits** _optional_: `string|bool` - display outfits version of slots"
- `"outfits"` | `"non-outfits"` | `true` | `false`
parameters:
- '"clothing"|"forest"|"school" &+ "all"|%clothesTypes%'
- '"clothing"|"forest"|"school" &+ "over_upper"|"upper"|"under_upper" |+ "outfits"|"non-outfits"|bool'
tags: ["dom"]
clothingstatecompare:
name: clothingstatecompare
clothingtrait:
description: |-
```dart
/* <<shoptraits>> */
<<clothingtrait trait noOutput?>>
```
<<clothingtrait trait noOutput?>>
- **trait**: `string` - trait key in lowercase
- **noOutput** _optional_: `boolean` - suppress output (truthy)
parameters:
- text |+ bool|text|number
tags: ["text", "img"]
colourCodes:
name: colourCodes
combat_deviancy_text:
name: combat_deviancy_text
combat_lewdity_text:
name: combat_lewdity_text
combat_promiscuity_text:
name: combat_promiscuity_text
combat-dildo-on-anus:
name: combat-dildo-on-anus
combat-dildo-on-anusentrance:
name: combat-dildo-on-anusentrance
combat-dildo-on-penis:
name: combat-dildo-on-penis
combat-dildo-on-penisentrance:
name: combat-dildo-on-penisentrance
combat-dildo-on-vagina:
name: combat-dildo-on-vagina
combat-dildo-on-vaginaentrance:
name: combat-dildo-on-vaginaentrance
combat-dildospank:
name: combat-dildospank
combat-get-other-hand:
name: combat-get-other-hand
combat-hand-hypnosis:
name: combat-hand-hypnosis
combat-hand-hypnosis-cover:
name: combat-hand-hypnosis-cover
combat-hand-hypnosis-devotion:
name: combat-hand-hypnosis-devotion
combat-hand-hypnosis-masochism:
name: combat-hand-hypnosis-masochism
combat-hand-hypnosis-orgasm:
name: combat-hand-hypnosis-orgasm
combat-hand-hypnosis-scream:
name: combat-hand-hypnosis-scream
combat-hand-on-anus:
name: combat-hand-on-anus
combat-hand-on-anusentrance:
name: combat-hand-on-anusentrance
combat-hand-on-arms:
name: combat-hand-on-arms
combat-hand-on-bottom:
name: combat-hand-on-bottom
combat-hand-on-buttplug:
name: combat-hand-on-buttplug
combat-hand-on-chastity:
name: combat-hand-on-chastity
combat-hand-on-clothes:
name: combat-hand-on-clothes
combat-hand-on-hair:
name: combat-hand-on-hair
combat-hand-on-hand:
name: combat-hand-on-hand
combat-hand-on-head_breasts:
name: combat-hand-on-head_breasts
combat-hand-on-head_nipples:
name: combat-hand-on-head_nipples
combat-hand-on-lowerclothes:
name: combat-hand-on-lowerclothes
combat-hand-on-lube:
name: combat-hand-on-lube
combat-hand-on-mask:
name: combat-hand-on-mask
combat-hand-on-mouth:
name: combat-hand-on-mouth
combat-hand-on-one-arm:
name: combat-hand-on-one-arm
combat-hand-on-overlowerclothes:
name: combat-hand-on-overlowerclothes
combat-hand-on-overupperclothes:
name: combat-hand-on-overupperclothes
combat-hand-on-penis:
name: combat-hand-on-penis
combat-hand-on-penisentrance:
name: combat-hand-on-penisentrance
combat-hand-on-sextoy:
name: combat-hand-on-sextoy
combat-hand-on-shackle:
name: combat-hand-on-shackle
combat-hand-on-shackle-imminent:
name: combat-hand-on-shackle-imminent
combat-hand-on-shoes:
name: combat-hand-on-shoes
combat-hand-on-socks:
name: combat-hand-on-socks
combat-hand-on-throat:
name: combat-hand-on-throat
combat-hand-on-underlowerclothes:
name: combat-hand-on-underlowerclothes
combat-hand-on-underupperclothes:
name: combat-hand-on-underupperclothes
combat-hand-on-upperclothes:
name: combat-hand-on-upperclothes
combat-hand-on-vagina:
name: combat-hand-on-vagina
combat-hand-on-vaginaentrance:
name: combat-hand-on-vaginaentrance
combat-lift-skirt:
name: combat-lift-skirt
combat-pen-on-bodypart:
name: combat-pen-on-bodypart
combat-pull-clothing-down:
name: combat-pull-clothing-down
combat-pull-clothing-state:
name: combat-pull-clothing-state
combat-pull-clothing-to-side:
name: combat-pull-clothing-to-side
combat-pull-clothing-up:
name: combat-pull-clothing-up
combat-pull-outfit-down:
name: combat-pull-outfit-down
combat-pull-outfit-up:
name: combat-pull-outfit-up
combat-remove-buttplug:
name: combat-remove-buttplug
combat-reset-hand:
name: combat-reset-hand
combat-reset-tool:
name: combat-reset-tool
combat-reveal-sextoy:
name: combat-reveal-sextoy
combat-set-hand-start:
name: combat-set-hand-start
combat-set-hand-target:
name: combat-set-hand-target
combat-spank:
name: combat-spank
combat-stroker-on-penis:
name: combat-stroker-on-penis
combat-stroker-on-penisentrance:
name: combat-stroker-on-penisentrance
combat-tug-clothing:
name: combat-tug-clothing
combatApologise:
name: combatApologise
combataware:
description: |-
Prints `Awareness X` with appropriate colour for level
`<<combatX>>` widgets should be used in combat
`<<combataware level>>`
- **level**: `number` - required level for this action
- `1-5`: level and colour
- `0`: just text
parameters:
- number
tags: ["text"]
combatBreast:
name: combatBreast
combatButtonAdjustments:
name: combatButtonAdjustments
combatcontrol:
description: |-
Adds control to pc and updates effects of it
Modifies `$controlstart` to track when changes should be output in combat
`change` is technically optional but should not be. Consider refactoring
`<<trauma change?>>`
- **change** _optional_: `number` - +/- change to apply
- if not provided, just clamps pc's control
parameters:
- number
tags: ["refactor"]
combatcrime:
description: |-
Prints `Crime X` where X is type of crime
`<<combatX>>` widgets should be used in combat
`<<combatcrime type>>`
- **type**: `string` - type in setup.crimeNames
- %crimeTypesDesc%
parameters:
- "%crimeTypes%"
tags: ["text"]
combatDefaults:
name: combatDefaults
combatdeviancy1:
name: combatdeviancy1
tags: ["unused"]
combatdeviancy2:
name: combatdeviancy2
tags: ["unused"]
combatdeviancy3:
name: combatdeviancy3
tags: ["unused"]
combatdeviancy4:
name: combatdeviancy4
tags: ["unused"]
combatdeviancy5:
name: combatdeviancy5
combatdeviancy6:
name: combatdeviancy6
tags: ["unused"]
combatdeviancyN:
name: combatdeviancyN
combateffects:
name: combateffects
combatexhibitionist:
description: |-
Prints `Exhibitionism X` with appropriate colour for level
`<<combatX>>` widgets should be used in combat
`<<combatexhibitionist level>>`
- **level**: `number` - required level for this action
- `1-6`: level and colour
- `0`: just text
parameters:
- number
tags: ["text"]
combatexhibitionist1:
description: |-
Prints `Exhibitionism 1` with appropriate colour for level
`<<combatX>>` widgets should be used in combat
tags: ["text"]
combatexhibitionist2:
description: |-
Prints `Exhibitionism 2` with appropriate colour for level
`<<combatX>>` widgets should be used in combat
tags: ["text"]
combatexhibitionist3:
description: |-
Prints `Exhibitionism 3` with appropriate colour for level
`<<combatX>>` widgets should be used in combat
tags: ["text"]
combatexhibitionist4:
description: |-
Prints `Exhibitionism 4` with appropriate colour for level
`<<combatX>>` widgets should be used in combat
tags: ["text"]
combatexhibitionist5:
description: |-
Prints `Exhibitionism 5` with appropriate colour for level
`<<combatX>>` widgets should be used in combat
tags: ["text"]
combatexhibitionist6:
description: |-
Prints `!Exhibitionism 6!` with appropriate colour for level
`<<combatX>>` widgets should be used in combat
tags: ["unused", "text"]
combathandguide:
name: combathandguide
combathandhold:
name: combathandhold
combatinit:
name: combatinit
combatInseminate:
description: |-
Call this when an NPC climaxes in combat. The ejaculation widgets already do, so a new prose
variant needs no call at all, just sit it in the branch matching where the cum goes.
Pass which slot came and the fight fills in the rest: the hole and depth from the penis state,
species from the enemy type, potency from penis size and the knot. Stores nothing for
strap-ons, contained condoms, chastity, or species that can't impregnate.
`<<combatInseminate slot beast?>>`
- **slot**: `number` - which $NPCList slot climaxed, usually `_nn`
- **beast** _optional_: `bool` - pass `true` from the beast widget so a beast keeps its own species in a mixed fight
The NPC in slot _nn came: `<<combatInseminate _nn>>`
From the beast widget: `<<combatInseminate _jj true>>`
parameters:
- "number |+ bool"
combatListColor:
description: |-
Use `combatListColor()` instead
name: combatListColor
tags: ["unused"]
combatMasturbate:
name: combatMasturbate
combatMouthOtherAnus:
name: combatMouthOtherAnus
combatNipple:
name: combatNipple
combatOthervagina:
name: combatOthervagina
combatPenisEntrance:
name: combatPenisEntrance
combatPenisImminent:
name: combatPenisImminent
combatPenisPenetrated:
name: combatPenisPenetrated
combatperson:
description: |-
Prints descriptor of currently selected combat participant
See `<<combatPerson>>` for capitalised version.
See `<<combatpersons>>`/`<<combatPersons>>` for all participants.
tags: ["text"]
combatPerson:
description: |-
Prints capitalised descriptor of currently selected combat participant
See `<<combatperson>>` for un-capitalised version.
See `<<combatpersons>>`/`<<combatPersons>>` for all participants.
tags: ["text"]
combatpersons:
description: |-
Prints descriptors of all combat participants
See `<<combatPersons>>` for capitalised version.
See `<<combatperson>>`/`<<combatPerson>>` for selected participant.
tags: ["text"]
combatPersons:
description: |-
Prints capitalised descriptors of all combat participants
See `<<combatpersons>>` for un-capitalised version.
See `<<combatperson>>`/`<<combatPerson>>` for selected participant.
tags: ["text"]
combatpromiscuity1:
name: combatpromiscuity1
combatpromiscuity2:
name: combatpromiscuity2
combatpromiscuity3:
name: combatpromiscuity3
combatpromiscuity4:
name: combatpromiscuity4
combatpromiscuity5:
name: combatpromiscuity5
combatpromiscuity6:
name: combatpromiscuity6
combatpromiscuityN:
name: combatpromiscuityN
combatpromiscuous:
description: |-
Prints `Promiscuous X` or `Deviancy X` with appropriate colour for level
`<<combatX>>` widgets should be used in combat
`<<combatpromiscuous level>>`
- **level**: `number` - required level for this action
- `1-6`: level and colour
- `0`: just text
parameters:
- number
tags: ["unused", "text"]
combatpromiscuous1:
description: |-
Prints `Promiscuous 1` or `Deviancy 1` with appropriate colour for level
`<<combatX>>` widgets should be used in combat
tags: ["text"]
combatpromiscuous2:
description: |-
Prints `Promiscuous 2` or `Deviancy 2` with appropriate colour for level
`<<combatX>>` widgets should be used in combat
tags: ["text"]
combatpromiscuous3:
description: |-
Prints `Promiscuous 3` or `Deviancy 3` with appropriate colour for level
`<<combatX>>` widgets should be used in combat
tags: ["text"]
combatpromiscuous4:
description: |-
Prints `Promiscuous 4` or `Deviancy 4` with appropriate colour for level
`<<combatX>>` widgets should be used in combat
tags: ["text"]
combatpromiscuous5:
description: |-
Prints `Promiscuous 5` or `Deviancy 5` with appropriate colour for level
`<<combatX>>` widgets should be used in combat
tags: ["text"]
combatpromiscuous6:
description: |-
Prints `!Promiscuous 6!` or `!Deviancy 6!` with appropriate colour for level
`<<combatX>>` widgets should be used in combat
tags: ["text"]
combatRequestRefused:
description: |-
Prints NPC dialogue when failing a request in combat
tags: ["text"]
combatskulduggeryskilluse:
name: combatskulduggeryskilluse
combatspeech:
name: combatspeech
combatstate:
name: combatstate
combatTrainAdvance:
description: For use after a beast / monster in a train is finished with their turn. Loads next in line into $NPCList[0]. Loads them all back into $NPCList if at the end of the train.
name: combatTrainAdvance
combattrauma:
description: |-
Adds trauma to pc based on control and trait modifiers
This trauma is half of normal trauma gain
Trauma effects on pc are not updated after change.
`<<combattrauma change>>`
- **change**: `number` - +/- change to apply
parameters:
- "|+ number"
tags: ["refactor"]
commercial:
name: commercial
commercialdrain:
name: commercialdrain
commercialdraineventend:
name: commercialdraineventend
commercialdrainlinks:
name: commercialdrainlinks
commercialdrainquick:
name: commercialdrainquick
commercialeventend:
name: commercialeventend
commercialex1:
name: commercialex1
commercialex2:
name: commercialex2
commercialex3:
name: commercialex3
commercialquick:
name: commercialquick
completeassignment:
name: completeassignment
compoundoptions:
name: compoundoptions
compressNPC:
description: |-
Puts an active npc in a persistent slot after compressing it
`<<compressNPC slot name>>`
- **slot**: `number` - slot number to put npc data at (zero-based)
- **name**: `string` - key to load npc's data from
- spaces should be avoided if possible
parameters:
- "number &+ string|text"
compute:
container: true
name: compute
condition:
name: condition
tags: ["unused"]
condomDesc:
name: condomDesc
condomsPrice:
name: condomsPrice
condomsSidebar:
name: condomsSidebar
configureCombatLighting:
description: |-
No description.
connector-box:
name: connector-box
connudatus:
name: connudatus
connudatuseventend:
name: connudatuseventend
connudatusMarketsLewdEvents:
name: connudatusMarketsLewdEvents
connudatusMarketsProductsEvents:
name: connudatusMarketsProductsEvents
connudatusMarketsStatusEvents:
name: connudatusMarketsStatusEvents
connudatusquick:
name: connudatusquick
connudatuswallet:
name: connudatuswallet
consensual:
name: consensual
containerInfo:
name: containerInfo
containersInit:
name: containersInit
containersLink:
name: containersLink
continueWraith:
name: continueWraith
control:
description: |-
Adds control to pc and updates effects of it
`$control` is pc's control over their life choices where higher numbers are healthy (0-1,000)
See `<<combatcontrol>>` for other use cases
`change` is technically optional but should not be. Consider refactoring
`<<trauma change?>>`
- **change** _optional_: `number` - +/- change to apply
- if not provided, just clamps pc's control
parameters:
- number
tags: ["refactor"]
controlcaption:
name: controlcaption
controlloss:
description: |-
Checks if the player entered the event in a non-consensual way.
If they did, decrease the player's control and print a short blurb about their emotional state.
No control loss if $gamemode is "soft".
name: controlloss
corruption:
description: |-
Adds corruption to pc and applies corruption effects
`<<corruption change skipSubmissive?>>`
- **change**: `number` - +/- change to apply
- **skipSubmissive** _optional_: `boolean` - do not add `$submissive` to pc even if they qualify (truthy)
- Defaults to false
parameters:
- "number |+ bool"
CosmeticsGenericDepartment:
name: CosmeticsGenericDepartment
cottage_bailey_options:
name: cottage_bailey_options
countBrokenVows:
description: |-
Keeps a count for everytime the player have broken the vow, for each nnpc
`<<countBrokenVows vowTaker>>`
- **vowTaker**: `string` - The name of the one taking the vow; generic npcs and beasts are added to `$brokenVow.Undefined`
parameters:
- "string"
courtyard:
name: courtyard
courtyardrevealresponse:
tags: ["text"]
cover_end:
name: cover_end
covered:
description: |-
Prints text description of player attempting to cover their lewdness
tags: ["text"]
cow:
description: |-
Prints `| Cow`
tags: ["text"]
cowTransform:
name: cowTransform
cream_arousal:
name: cream_arousal
cream_audience:
name: cream_audience
cream_damage:
name: cream_damage
cream_description:
name: cream_description
cream_end:
name: cream_end
cream_events:
name: cream_events
cream_fail:
name: cream_fail
cream_finish:
name: cream_finish
cream_init:
name: cream_init
cream_walk:
name: cream_walk
creampie:
name: creampie
creatureActivity:
name: creatureActivity
creatureContainersProgressDay:
name: creatureContainersProgressDay
creatureTooltip:
name: creatureTooltip
creatureVisit:
name: creatureVisit
crime:
description: |-
Prints `Crime X` where X is type of crime
`<<crime type>>`
- **type**: `string` - type in setup.crimeNames
- %crimeTypesDesc%
parameters:
- "%crimeTypes%"
tags: ["text"]
crimeClear:
name: crimeClear
crimeClearEvent:
name: crimeClearEvent
crimeDown:
name: crimeDown
crimeParade:
name: crimeParade
crimes:
description: |-
Prints list of crimes
`<<crimes ...type>>`
- ...**type**: `string` - type in setup.crimeNames
- %crimeTypesDesc%
parameters:
- "...%crimeTypes%"
tags: ["text"]
crimeType:
description: |-
Prints type of crime
`<<crimeType type>>`
- **type**: `string` - type in setup.crimeNames
- %crimeTypesDesc%
parameters:
- "%crimeTypes%"
tags: ["text"]
crimeUp:
name: crimeUp
crimeUpFlat:
name: crimeUpFlat
crossdressing_check:
name: crossdressing_check
crotch:
description: |-
Prints outermost non-naked lower clothing layer
tags: ["text"]
cumspeech:
name: cumspeech
cumswallow:
name: cumswallow
cunnilingusejacstat:
name: cunnilingusejacstat
cunnilingusstat:
name: cunnilingusstat
cunt:
description: |-
Prints dick or cunt depending on pc's gendered appearance
cursedtext:
description: |-
Prints hint on getting cursed item off (ie, `| Perhaps the X can help.`)
Does not allow multiple items despite partial implementation. Consider refactoring
`<<cursedtext ...cursedItemNames>>`
- ...**cursedItemNames**: `string` - name of cursed items to print hint for
- `"collar"`: `| Perhaps the police can help.`
- `"chastity belt"`: `| Perhaps the temple can help.`
parameters:
- '...("collar"|"chastity belt")'
tags: ["text"]
cute:
description: |-
Prints random gender-appropriate synonym for cute
Could use more synonyms. Consider refactoring
tags: ["text", "refactor"]
dailySellProduce:
name: dailySellProduce
damage_farm:
name: damage_farm
damageClothing:
name: damageClothing
tags: ["unused"]
damageFaceCover:
name: damageFaceCover
dance_crossdress_reveal:
name: dance_crossdress_reveal
dance_job_end:
name: dance_job_end
dance_job_init:
name: dance_job_init
dance_job_interest:
name: dance_job_interest
dance_job_text:
name: dance_job_text
dance_npc_masturbation:
name: dance_npc_masturbation
dance_npc_masturbation_chance:
name: dance_npc_masturbation_chance
dance_private_init:
name: dance_private_init
dance_stage_cum:
name: dance_stage_cum
danceactions:
name: danceactions
danceaudience:
name: danceaudience
dancebriar:
name: dancebriar
dancebrothelrobin:
name: dancebrothelrobin
danceCorruption:
name: danceCorruption
dancedarryl:
name: dancedarryl
dancedifficulty:
name: dancedifficulty
dancedrink:
name: dancedrink
dancedrunktrip:
name: dancedrunktrip
danceeffects:
name: danceeffects
dancefall:
name: dancefall
dancefinish:
name: dancefinish
danceinit:
name: danceinit
danceleighton:
name: danceleighton
dancelight:
name: dancelight
dancelonging:
name: dancelonging
dancemolest:
name: dancemolest
dancenote:
name: dancenote
danceprivate:
name: danceprivate
dancepull:
name: dancepull
dancerape:
name: dancerape
dancesalivate:
name: dancesalivate
dancesamfinish:
name: dancesamfinish
danceskill:
name: danceskill
danceskilluse:
name: danceskilluse
dancespeech:
name: dancespeech
dancestat:
name: dancestat
dancestrip:
name: dancestrip
danceStripActionObject:
name: danceStripActionObject
dancestripactions:
name: dancestripactions
dancestripeffects:
name: dancestripeffects
dancestrippertrouble:
name: dancestrippertrouble
danceStudioIntro:
name: danceStudioIntro
dancetext:
description: |-
Prints colour-coded adjective of active dance skill usage
tags: ["text"]
dancetripfinish:
name: dancetripfinish
dancetriprape:
name: dancetriprape
dancevip:
name: dancevip
danceWraith:
name: danceWraith
dancingclothes:
name: dancingclothes
dangerousText:
description: |-
Prints `| Dangerous`
tags: ["text"]
danube:
name: danube
danubeeventend:
name: danubeeventend
danubemeal:
name: danubemeal
danubePettyTheft:
description: |-
Pool of events for short, one-liner inlineevents when robbing Danube Street houses. The most common events you'll get while breaking in.
tags: ["text"]
danubequick:
name: danubequick
daughter:
description: |-
Prints `son` or `daughter` depending on npc pronouns
tags: ["text"]
daylight:
description: |-
Prints amount ambient light based on time of day
tags: ["text"]
debug_avery_skip_to_return:
description: |-
Advances time in the mansion until Avery returns
tags: ["debug"]
debugUnlockAllLoveInterests:
description: |-
Widget automatically unlocking all love interests and fulfilling conditions for them to become so.
tags: ["debug"]
def:
description: |-
Adds defiant quality to pc's state and applies effects
See `<<sub>>`
`<<def change>>`
- **change**: `number` - + change to apply
parameters:
- number
defeatnpc:
name: defeatnpc
defer:
name: defer
tags: ["unused"]
defiance:
name: defiance
defianttext:
description: |-
Prints `| Defiant` with an optional argument
The wolf transformation can trigger Defiant actions without appropriate submissiveness. If the player has `$wolfgirl` gte 6 and their `$submissive` stat is too high, `defianttext` formats the text with the heat/rut jitter.
See `wolfDefiant` for the stat changes.
`<<defianttext value>>`
- **value**: _optional_: `number` - the value of the `$submissive` stat being checked in the conditional statement surrounding the link
tags: ["text"]
defileSacredGround:
name: defileSacredGround
deleteConfirm:
name: deleteConfirm
deleteoutfit:
name: deleteoutfit
deleteWarning:
name: deleteWarning
delinquency:
description: |-
Adds delinquency to pc's state
`$delinquency` is a historic measurement of how much trouble the pc is considered by the school where 0 is innocent (0-1,000).
`change` is multiplied by 4 here and in `<<detention>>`
See `<<detention>>` to adjust detention at the same time
`<<delinquency change modifier?>>`
- **change**: `number` - +/- change to apply
- **modifier** _optional_: `string` - type of modifier to apply
- `"bonus"`: additional reduction if pc attends with optional school trait clothes
parameters:
- 'number |+ "bonus"'
demon:
description: |-
Prints `| Demon`
tags: ["text"]
demonTransform:
name: demonTransform
deskText:
name: deskText
destination:
name: destination
destination_catacombs:
name: destination_catacombs
destination_farm:
name: destination_farm
destination_farm_ride:
name: destination_farm_ride
destination_lake_ice:
name: destination_lake_ice
destination_pool:
name: destination_pool
destination_prison:
name: destination_prison
destination_prison_walkway:
name: destination_prison_walkway
destination_tentacle_forest:
name: destination_tentacle_forest
destination5:
name: destination5
destinationBeach:
name: destinationBeach
destinationbondage:
name: destinationbondage
destinationbusrandom:
description: |-
Places pc at random location along bus route
destinationdrain:
name: destinationdrain
destinationeventend:
name: destinationeventend
destinationexposed:
name: destinationexposed
tags: ["unused"]
destinationfarmroad:
name: destinationfarmroad
destinationForest:
name: destinationForest
destinationlake:
name: destinationlake
destinationlakeruin:
name: destinationlakeruin
destinationMoor:
name: destinationMoor
destinationpoolchangingroom:
name: destinationpoolchangingroom
destinationsewers:
name: destinationsewers
destinationsewersrandom:
name: destinationsewersrandom
destinationsmuggler:
name: destinationsmuggler
destinationstormdrain:
name: destinationstormdrain
destinationwolfcave:
name: destinationwolfcave
detach_leash:
description: |-
Detaches leash from pc's collar
Can be used to gain infinite collars and keepCursed isn't universal. Consider refactoring
`<<detach_leash pcCanRemove? noRebuy?>>`
- **keepCursed** _optional_: `boolean` - collar will not be cursed unless original collar was already (truthy)
- Defaults to `false`
- **noRebuy** _optional_: `boolean` - skip rebuying command (truthy)
- Defaults to `false`
parameters:
- "|+ bool |+ bool"
tags: ["refactor"]
detention:
description: |-
Adds detention and delinquency to pc's state
`$detention` is a measurement of how much trouble the pc is in per day where 0 is innocent (0-100).
`change` is multiplied by 10
See `<<delinquency>>` to adjust only delinquency
`<<detention change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
deviancy1:
name: deviancy1
deviancy2:
name: deviancy2
deviancy3:
name: deviancy3
deviancy4:
name: deviancy4
deviancy5:
name: deviancy5
deviancy6:
name: deviancy6
tags: ["unused"]
deviancyN:
name: deviancyN
deviant:
description: |-
Prints `Deviancy X` with appropriate colour for level
`<<deviant level>>`
- **level**: `number` - required level for this action
- `1-6`: level and colour
- `0`: just text
parameters:
- number
tags: ["unused", "text"]
deviant1:
description: |-
Prints `Deviancy 1` with appropriate colour for level
tags: ["text"]
deviant2:
description: |-
Prints `Deviancy 2` with appropriate colour for level
tags: ["text"]
deviant3:
description: |-
Prints `Deviancy 3` with appropriate colour for level
tags: ["text"]
deviant4:
description: |-
Prints `Deviancy 4` with appropriate colour for level
tags: ["text"]
deviant5:
description: |-
Prints `Deviancy 5` with appropriate colour for level
tags: ["text"]
deviant6:
description: |-
Prints `Deviancy 6` with appropriate colour for level
tags: ["unused", "text"]
dialog:
container: true
name: dialog
dialogclose:
name: dialogclose
difficulty:
name: difficulty
dildoSelfAnusEntrance:
name: dildoSelfAnusEntrance
dildoSelfPussyEntrance:
name: dildoSelfPussyEntrance
disable:
name: disable
disablearms:
name: disablearms
disablefeet:
name: disablefeet
disableleftarm:
name: disableleftarm
disablerightarm:
name: disablerightarm
dismissAvery:
name: dismissAvery
dismissKylar:
name: dismissKylar
dismissWhitney:
name: dismissWhitney
display_plot:
name: display_plot
display_quality:
name: display_quality
displayFeat:
name: displayFeat
displayFeatFake:
name: displayFeatFake
displayLinks:
name: displayLinks
displayMonthday:
name: displayMonthday
tags: ["unused"]
displaySettings:
name: displaySettings
displaySubsection:
name: displaySubsection
distinction_stat:
name: distinction_stat
dock_security:
name: dock_security
dock_security_text:
name: dock_security_text
dockclotheson:
name: dockclotheson
dockdogfucked:
name: dockdogfucked
dockleave:
name: dockleave
docklunchoptions:
name: docklunchoptions
docklunchprompt:
name: docklunchprompt
docklunchseduce:
name: docklunchseduce
dockoptions:
name: dockoptions
dockoverhear:
name: dockoverhear
dockpubdestination:
name: dockpubdestination
dockpuboptions:
name: dockpuboptions
dockpubquiz:
name: dockpubquiz
dockstatus:
name: dockstatus
dockstatustext:
name: dockstatustext
dockunbindoffer:
name: dockunbindoffer
dockwork:
name: dockwork
dockworkevents:
name: dockworkevents
domus:
name: domus
domuseventend:
name: domuseventend
domusexposed:
name: domusexposed
domusknocklinks:
description: |-
Prints "Go to next house", "Break in", and "Stop" links for player knocking on Domus doors. If the player's arms are bound, displays a warning that the player can't pick locks in this state; otherwise, equips lockpick prop.
tags: ["links", "text"]
domusquick:
name: domusquick
dontHideForNow:
name: dontHideForNow
dontHideRevert:
name: dontHideRevert
doVersionCheck:
name: doVersionCheck
draindescription:
name: draindescription
drainexit:
name: drainexit
drainexiteventend:
name: drainexiteventend
drainexitlinks:
name: drainexitlinks
drainexitquick:
name: drainexitquick
drainladderdownlink:
name: drainladderdownlink
drainlinks:
name: drainlinks
drench:
name: drench
drenchfromgroup:
name: drenchfromgroup
dress:
description: |-
Prints descriptor of active NPC's upper clothing
See `<<skirt>>` for lower clothing or `<<bra>>` for inner_upper clothing
See `<<npcClothesText>>` for full name of clothes
tags: ["text"]
droptowel:
name: droptowel
druggedcaption:
name: druggedcaption
drugs:
description: |-
Adds drugs to pc's system
`$drugged` is a measure of non-hallucinogenic drugs in pc's system where 0 is none (0-1,000)
`<<drugs change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
drunk:
description: |-
Changes the PC's drunk levels, where `$drunk` is a measure of the PC's intoxication.
- Goes from 0 to 1,000, where 0 means the PC is sober.
- While `$drunk` goes up to 1,000, its effects stop increasing after `$drunk gte C.stats.drunk.effectLimit`. Values past this point are just a way for the PC to extend the duration of its effects.
1 point of `change` = 1 point of `$drunk`.
- The amount of drunk gained and lost is affected by the PC's `$drunkSensitivity`.
- Drunk gains increase by 1.5x when the PC has the "Dendrophile" / "Plant Lover" trait.
`<<drunk change>>`
- **change**: `number` - +/- change to apply.
name: drunk
parameters:
- 'number |+ "pure"|"time"'
drunkcaption:
name: drunkcaption
drunkClamp:
description: |-
Converts 1 point of excess $drunk into 1 point of $tiredness and 0.25 points of $trauma.
Trauma gains increase by up to 100% at low $control.
Called at the end of every "drunk" function call.
name: drunkClamp
dry:
name: dry
dry_full:
name: dry_full
dry_item:
description: |-
Dries given clothing slot
name: dry_item
parameters:
- "|+ slot (flatcase)|string"
dry_towel:
name: dry_towel
dungeonescape:
name: dungeonescape
dyeOptions:
description: |-
Options to dye one's brows or pubic hair, alongside a description of the current dyes applied.
tags: ["links"]
dyeSwatch:
name: dyeSwatch
dynamic:
description: |-
Prints and registers a widget which will be re-rendered dynamically
[High-Level Dynamic API Overview](%workspaceDir%/game/base-system/tools/dynamicRendering.js#L2)
`<<dynamic widgetName htmlId? ...widgetArgs?>>`
- **widgetName**: `string` - name of widget
- **htmlId** _optional_: `string` - optional DOM id for css selectors
- ...**widgetArgs** _optional_: `any` - space separated args to pass to widget as if called directly
parameters:
- "text|string |+ text|string |+ ...(var|bareword)"
dynamicblock:
container: true
description: |-
Prints and registers a block which will be re-rendered dynamically
[High-Level Dynamic API Overview](%workspaceDir%/game/base-system/tools/dynamicRendering.js#L2)
`<<dynamicblock ...properties>>`
- ...**properties**: `string` - additional properties to attach to block
- `"delay": only evaluate after `Dynamic.render()` has been called
- `"id=X"`: id of the div element where X is the DOM id (auto-generated by default)
- `"class=X"`: class of the div element where X is the DOM classlist
parameters:
- "|+ ...text|string"
earnAllFeats:
name: earnAllFeats
earnFeat:
name: earnFeat
earSlimeCafeLinks:
description: |-
Prints eating at cafe links as modified by earslime's command over pc
`<<earSlimeCafeLinks linkName?>>`
- **linkName** _optional_: `string` - example kind to output
- `"Obey"`: An option to obey or defy is given to pc
- `"Next"`: pc must comply with order. Default state
parameters:
- '|+ "Next"|"Obey"'
tags: ["links", "text"]
earSlimeDaily:
description: |-
Applies and updates effects of pc's earslime
`<<earSlimeDaily passageEffects?>>`
- **passageEffects** _optional_: `boolean` - apply effects of ear slime passage as well (truthy)
- Defaults to `false`
parameters:
- "|+ bool"
earSlimeFocusChoice:
name: earSlimeFocusChoice
earSlimePoundLinks:
name: earSlimePoundLinks
earSlimePregnancy:
name: earSlimePregnancy
earSlimeSeenActions:
name: earSlimeSeenActions
earSlimeShoppingExhibitionism:
name: earSlimeShoppingExhibitionism
eatLurker:
description: |-
Consumes a lurker and prints descriptive result
See `<<feedLurker>>` to feed a lurker to GH
tags: ["text"]
edenFluidsCheck:
name: edenFluidsCheck
edenlust:
name: edenlust
edenpreystart:
name: edenpreystart
edenRageRespite:
description: |-
Sets `$edenragerespite` to either 7 or 21, based on the value of `$edenfreedom` and a few other factors
Used to give Eden's stalking rage event an interval of said number of days
edenTrackers:
description: |-
Sets the player's 'Eden freedom' trackers (`$edendays` and `$edenragerespite`) back to their starting values.
Used when the player returns to the cabin, or when the player gains freedom in the first place.
effects:
description: |-
Does a LOT of different things. Should be called at the start of every passage.
This widget updates your stats according to time, water, makeup effects, etc...
To examine the effect widget, go to `./game/base-system/effect.js`
effects_prison:
name: effects_prison
effectsabomination:
name: effectsabomination
effectsanuspenisdoublefuck:
name: effectsanuspenisdoublefuck
effectsanuspenisfuck:
name: effectsanuspenisfuck
effectsanustopenis:
name: effectsanustopenis
effectsanustopenisdouble:
name: effectsanustopenisdouble
effectsarousalsoak:
name: effectsarousalsoak
effectsCoverAnus:
name: effectsCoverAnus
effectsCoverPenis:
name: effectsCoverPenis
effectsCoverVagina:
name: effectsCoverVagina
effectsdildowhack:
name: effectsdildowhack
effectsdissociation:
name: effectsdissociation
effectsDropSexToy:
name: effectsDropSexToy
effectshandpull:
name: effectshandpull
effectshandsclothes:
name: effectshandsclothes
effectshandsfreeface:
name: effectshandsfreeface
effectshypnosiswhack:
name: effectshypnosiswhack
effectsinsertions:
name: effectsinsertions
effectsmakeup:
name: effectsmakeup
effectsman:
name: effectsman
effectsorgasm:
name: effectsorgasm
effectspain:
name: effectspain
effectspenisanusfuck:
name: effectspenisanusfuck
effectspenistoanus:
name: effectspenistoanus
effectspenistopenis:
name: effectspenistopenis
effectspenistopenisfuck:
name: effectspenistopenisfuck
effectspenistovagina:
name: effectspenistovagina
effectspenisvaginafuck:
name: effectspenisvaginafuck
effectspenwhack:
name: effectspenwhack
effectsPickupSexToy:
name: effectsPickupSexToy
effectspossessed:
name: effectspossessed
effectsremovebuttplug:
name: effectsremovebuttplug
effectsshacklewhack:
name: effectsshacklewhack
effectsspray:
name: effectsspray
effectssprayFree:
description: Prints message if pc's proficiency saved spray ammo
tags: [ "text" ]
effectssteal:
name: effectssteal
effectstentacleadv:
name: effectstentacleadv
effectstentacles:
name: effectstentacles
effectsvaginapenisdoublefuck:
name: effectsvaginapenisdoublefuck
effectsvaginapenisfuck:
name: effectsvaginapenisfuck
effectsvaginatopenis:
name: effectsvaginatopenis
effectsvaginatopenisdouble:
name: effectsvaginatopenisdouble
effectsvaginatovagina:
name: effectsvaginatovagina
effectsvaginatovaginafuck:
name: effectsvaginatovaginafuck
effectswater:
name: effectswater
effectsWraith:
name: effectsWraith
ejacstat:
name: ejacstat
ejacTrait:
description: |-
Prints `| Cumoisseur` or `| Cum Dump` depending on pc's `$submissive`
tags: ["text"]
ejaculate:
name: ejaculate
ejaculation:
description: |-
Prints end of combat ejaculation description for all combat NPCs
All NPCs, including named, should go through here to get pre and post ejac descriptions
Alex, Avery, and Whitney descriptions are contained here until they have dedicated widgets
`<<ejaculation ejacType?>>`
- **ejacType** _optional_: `string` - type of ejaculation to perform
- `"short"`: Quick ejac that prevents angry post-sex actions
parameters:
- '|+ "short"'
tags: ["text"]
ejaculation-alex:
description: |-
Prints end of combat ejaculation description for Alex
`<<ejaculation-alex ejacType?>>`
- **ejacType** _optional_: `string` - type of ejaculation
- `"short"`: Quick ejac that prevents angry post-sex actions
parameters:
- '|+ "short"'
tags: ["text"]
ejaculation-eden:
description: |-
Prints end of combat ejaculation description for Eden
`<<ejaculation-eden ejacType?>>`
- **ejacType** _optional_: `string` - type of ejaculation
- `"short"`: Quick ejac that prevents angry post-sex actions
parameters:
- '|+ "short"'
tags: ["text"]
ejaculation-gloryhole:
description: |-
Prints end of combat ejaculation description for pc at a gloryhole
Gloryhole encounter assumes NPC cannot reach or see pc and vice-versa
Assumes NPCs believe pc may have following combat
Assumes all other forms of finishing in place and encounters can be either consensual or non-con
Non-con encounters assume pc is restrained to hole with no arms available, though genital encounters were left in place in case of future use
Currently non-con gloryhole is oral-only and so focus is on these cases; the rear-body non-con is captured by $position="wall".
As game changes this can be reviewed
Consensual gloryhole has all combat options available currently
`<<ejaculation-gloryhole ejacType?>>`
- **ejacType** _optional_: `string` - type of ejaculation
- `"short"`: Quick ejac that prevents angry post-sex actions
parameters:
- '|+ "short"'
tags: ["text"]
ejaculation-gwylan:
description: |-
Prints end of combat ejaculation description for Gwylan
`<<ejaculation-gwylan ejacType?>>`
- **ejacType** _optional_: `string` - type of ejaculation
- `"short"`: Quick ejac that prevents angry post-sex actions
parameters:
- '|+ "short"'
tags: ["text"]
ejaculation-kylar:
description: |-
Prints end of combat ejaculation description for Kylar
`<<ejaculation-kylar ejacType?>>`
- **ejacType** _optional_: `string` - type of ejaculation
- `"short"`: Quick ejac that prevents angry post-sex actions
parameters:
- '|+ "short"'
tags: ["text"]
ejaculation-leighton:
description: |-
Prints end of combat ejaculation description for Leighton
`<<ejaculation-leighton ejacType?>>`
- **ejacType** _optional_: `string` - type of ejaculation
- `"short"`: Quick ejac that prevents angry post-sex actions
parameters:
- '|+ "short"'
tags: ["text"]
ejaculation-pillory:
description: |-
Prints end of combat ejaculation description for player in a pillory
`<<ejaculation-pillory ejacType?>>`
- **ejacType** _optional_: `string` - type of ejaculation
- `"short"`: Quick ejac that prevents angry post-sex actions
parameters:
- '|+ "short"'
tags: ["text"]
ejaculation-plant:
description: |-
Prints end of combat ejaculation description for plant people
`<<ejaculation-plant ejacType?>>`
- **ejacType** _optional_: `string` - type of ejaculation
- `"short"`: Quick ejac that prevents angry post-sex actions
parameters:
- '|+ "short"'
tags: ["text"]
ejaculation-robin:
description: |-
Prints end of combat ejaculation description for Robin
`<<ejaculation-robin ejacType?>>`
- **ejacType** _optional_: `string` - type of ejaculation
- `"short"`: Quick ejac that prevents angry post-sex actions
parameters:
- '|+ "short"'
tags: ["text"]
ejaculation-sydney:
description: |-
Prints end of combat ejaculation description for Sydney
`<<ejaculation-sydney ejacType?>>`
- **ejacType** _optional_: `string` - type of ejaculation
- `"short"`: Quick ejac that prevents angry post-sex actions
parameters:
- '|+ "short"'
tags: ["text"]
ejaculation-urinate:
description: |-
Prints description of angry post-combat golden shower humiliation
tags: ["text"]
ejaculation-wall:
description: |-
Prints end of combat ejaculation description for NPCs that are only able to access front or back of pc (stuck in wall)
Wall encounter assumes NPC at back of pc cannot reach around to front (and vice versa) and that pc cannot see what's happening behind them
Assumes NPCs believe pc may have following combat due to being stuck in wall unaided
Gloryhole removed as of v2.6 and front facing combat only left in place in case of future work
`<<ejaculation-wall ejacType?>>`
- **ejacType** _optional_: `string` - type of ejaculation
- `"short"`: Quick ejac that prevents angry post-sex actions
parameters:
- '|+ "short"'
tags: ["text"]
ejaculation-wraith:
description: |-
Prints end of combat ejaculation description for Ivory Wraith
`<<ejaculation-wraith ejacType?>>`
- **ejacType** _optional_: `string` - type of ejaculation
- `"short"`: Quick ejac that prevents angry post-sex actions
parameters:
- '|+ "short"'
tags: ["text"]
ejacW:
name: ejacW
elk:
name: elk
elkeventend:
name: elkeventend
elkexposed:
name: elkexposed
tags: ["unused"]
elkquick:
name: elkquick
embarrassment:
description: |-
Prints sentence describing pc's arousal level as if it was embarrassment
tags: ["text"]
emptyClassroomCaughtOrgasm:
name: emptyClassroomCaughtOrgasm
emptyClassroomMasturbationDescription:
name: emptyClassroomMasturbationDescription
emptyClassroomMasturbationIntro:
name: emptyClassroomMasturbationIntro
enable_rescue:
name: enable_rescue
enableSchoolRescue:
name: enableSchoolRescue
encountersteal:
name: encountersteal
end_moor_captive:
name: end_moor_captive
end_npc_pillory:
name: end_npc_pillory
endBirdEggLaying:
name: endBirdEggLaying
endcombat:
description: |-
Ends combat by applying pc effects, displaying necessary descriptions of them, and resetting combat variables back to defaults
`<<endcombat eventType?>>`
- **eventType** _optional_: `string` - type of event to end when calling `<<endevent>>`
- `"phaseless"`: phase variables will not be reset
parameters:
- '|+ "phaseless"'
tags: ["text"]
endconfession:
name: endconfession
endconfessionself:
name: endconfessionself
endevent:
description: |-
Ends ongoing event by resetting all event variables to default
Superseded by `<<endcombat>>`
`<<endevent type?>>`
- **type** _optional_: `string` - type of event to end
- `"phaseless"`: phase variables will not be reset
parameters:
- '|+ "phaseless"'
endmasturbation:
name: endmasturbation
endnpc:
name: endnpc
endNpcPregnancy:
name: endNpcPregnancy
endPlayerPregnancy:
name: endPlayerPregnancy
endRainWraith:
name: endRainWraith
endstall:
name: endstall
endWoodlandForage:
description: |-
Resets the variables initialized by entering the "Farm Woodland Forage" passage.
name: endWoodlandForage
endWraith:
name: endWraith
enemyarousal:
name: enemyarousal
english_skill_up_text:
name: english_skill_up_text
englishdifficulty:
name: englishdifficulty
englishNudeReactions:
description: |-
Prints classmate reactions for pc's nude state
Should check if npcs are already generated before generating. Consider refactoring
tags: ["text", "refactor"]
englishplayfinish:
name: englishplayfinish
englishplaystart:
name: englishplaystart
englishskill:
name: englishskill
englishstart:
name: englishstart
enumeratedGroup:
description: |-
Prints summarised gender makeup of currently active npcs with numbers (ie, `2 men and 3 women`)
See `<<group>>` for no numbers, `<<EnumeratedGroup>> for capitalised, or `<<fullGroup>>` for a list
tags: ["text"]
EnumeratedGroup:
description: |-
Prints capitalised and summarised gender makeup of currently active npcs with numbers (ie, `2 Men and 3 Women`)
See `<<group>>` for no numbers, `<<enumeratedGroup>> for uncapitalised, or `<<fullGroup>>` for a list
tags: ["text"]
equipClothesItemFromDefault:
description: |-
Applies clothing item to pc's slot based on setup object
Does NOT respect cursed items
`<<equipClothesItemFromDefault slot itemIndex colour? accessoryColour? pattern?>>`
- **slot**: `string` - slot to put clothing on
- %clothesTypesDesc%
- **itemIndex**: `number` - index of clothing item from setup to copy from
- **colour** _optional_: `string` - primary colour
- `"custom"`: pulls values from `$customColors` object
- `text`: valid colour in any format
- **accessoryColour** _optional_: `object` - secondary colour
- `"custom"`: pulls values from `$customColors` object
- `text`: valid colour in any format
- **pattern** _optional_: `string` - icon pattern variation to display
parameters:
- '%clothesTypes% &+ number |+ "custom"|text|string |+ "custom"|text|string |+ text|string'
equipNPCCondom:
name: equipNPCCondom
equipPlayerCondom:
name: equipPlayerCondom
error:
name: error
errorp:
name: errorp
estate_betting_start:
name: estate_betting_start
estate_cards_bet:
name: estate_cards_bet
estate_cards_finish:
name: estate_cards_finish
estate_chaos:
name: estate_chaos
estate_chaos_bar:
name: estate_chaos_bar
estate_end:
name: estate_end
estate_init:
name: estate_init
estate_security:
name: estate_security
estate_stone_links:
name: estate_stone_links
eventAmbient:
name: eventAmbient
eventbog:
name: eventbog
eventbogsafe:
name: eventbogsafe
eventforest:
name: eventforest
eventforestdeep:
name: eventforestdeep
eventforestitem:
name: eventforestitem
eventforestoutskirts:
name: eventforestoutskirts
eventforestsafe:
name: eventforestsafe
eventlake:
name: eventlake
eventlakeice:
name: eventlakeice
eventlakesafe:
name: eventlakesafe
eventlakewater:
name: eventlakewater
eventParkStreakEnd:
name: eventParkStreakEnd
events_farm_exhibitionism:
name: events_farm_exhibitionism
events_prison:
name: events_prison
events_prison_attention:
name: events_prison_attention
events_prison_triggered:
name: events_prison_triggered
events_skul_dock:
name: events_skul_dock
events_stalk:
name: events_stalk
events_stalk_nnpc:
name: events_stalk_nnpc
eventsbartending:
name: eventsbartending
eventsbartendinglisten:
name: eventsbartendinglisten
eventsbeach:
name: eventsbeach
eventsbondage:
name: eventsbondage
eventsbondageeast:
name: eventsbondageeast
eventsbondagenorth:
name: eventsbondagenorth
eventsbondagesouth:
name: eventsbondagesouth
eventsbondagewest:
name: eventsbondagewest
eventscave:
name: eventscave
eventscavesafe:
name: eventscavesafe
eventscavetreasure:
name: eventscavetreasure
eventschalets:
name: eventschalets
eventschef:
name: eventschef
eventsdance:
name: eventsdance
eventsdeepsea:
name: eventsdeepsea
eventsdrain:
name: eventsdrain
eventsenglish:
name: eventsenglish
eventsenglishsafe:
name: eventsenglishsafe
eventsfarm:
name: eventsfarm
eventshistory:
name: eventshistory
eventshistorysafe:
name: eventshistorysafe
eventsmaths:
name: eventsmaths
eventsmathssafe:
name: eventsmathssafe
eventsmoorhigh:
name: eventsmoorhigh
eventsmoorlow:
name: eventsmoorlow
eventsmoormid:
name: eventsmoormid
eventsSchoolChangingRoomsBoys:
name: eventsSchoolChangingRoomsBoys
eventsSchoolChangingRoomsGirls:
name: eventsSchoolChangingRoomsGirls
eventsschoolhallways:
name: eventsschoolhallways
eventsschoolhallwaysexposed:
name: eventsschoolhallwaysexposed
eventsschoolstump:
name: eventsschoolstump
eventsschooltoilets:
name: eventsschooltoilets
eventsscience:
name: eventsscience
eventssciencesafe:
name: eventssciencesafe
eventssea:
name: eventssea
eventsseabeach:
name: eventsseabeach
eventssewers:
name: eventssewers
eventsstall:
name: eventsstall
eventsstreet:
name: eventsstreet
eventsswimming:
name: eventsswimming
eventsswimmingsafe:
name: eventsswimmingsafe
eventstemple:
name: eventstemple
eventstoilets:
name: eventstoilets
eventstrash:
name: eventstrash
eventsWhitneyStreet:
name: eventsWhitneyStreet
eventwolfcave:
name: eventwolfcave
exam:
name: exam
exam_cheat:
name: exam_cheat
exam_difficulty:
name: exam_difficulty
exam_result:
name: exam_result
execdestroyclothes:
name: execdestroyclothes
execremovebottom:
name: execremovebottom
execremovedress:
name: execremovedress
execremoveshoes:
name: execremoveshoes
execremovetop:
name: execremovetop
execremoveunderbottom:
name: execremoveunderbottom
execremoveunderclothes:
name: execremoveunderclothes
execremoveundertop:
name: execremoveundertop
execstriporder:
name: execstriporder
execstripperform:
name: execstripperform
exhibitionclassroom:
name: exhibitionclassroom
exhibitionism:
name: exhibitionism
exhibitionism1:
name: exhibitionism1
exhibitionism2:
name: exhibitionism2
exhibitionism3:
name: exhibitionism3
exhibitionism4:
name: exhibitionism4
exhibitionism5:
name: exhibitionism5
exhibitionism6:
name: exhibitionism6
tags: ["unused"]
exhibitionismbuilding:
name: exhibitionismbuilding
exhibitionismgarden:
name: exhibitionismgarden
exhibitionismN:
name: exhibitionismN
exhibitionismoutputlinecapitalise:
name: exhibitionismoutputlinecapitalise
exhibitionismoutputlinecomma:
name: exhibitionismoutputlinecomma
exhibitionismoutputlinestop:
name: exhibitionismoutputlinestop
exhibitionismroof:
name: exhibitionismroof
exhibitionismsetdata:
name: exhibitionismsetdata
exhibitionist:
description: |-
Prints `Exhibitionism X` with appropriate colour for level
`<<exhibitionist level>>`
- **level**: `number` - required level for this action
- `1-6`: level and colour
- `0`: just text
parameters:
- number
tags: ["text"]
exhibitionist1:
description: |-
Prints `Exhibitionism 1` with appropriate colour for level
tags: ["text"]
exhibitionist2:
description: |-
Prints `Exhibitionism 2` with appropriate colour for level
tags: ["text"]
exhibitionist3:
description: |-
Prints `Exhibitionism 3` with appropriate colour for level
tags: ["text"]
exhibitionist4:
description: |-
Prints `Exhibitionism 4` with appropriate colour for level
tags: ["text"]
exhibitionist5:
description: |-
Prints `Exhibitionism 5` with appropriate colour for level
tags: ["text"]
exhibitionist6:
description: |-
Prints `!Exhibitionism 6!` with appropriate colour for level
tags: ["unused", "text"]
exhibitorgasm:
name: exhibitorgasm
exit:
description: |-
Stops processing of remaining Passage or Widget
This doesn't propagate through the stack.
Calling this from inside a Widget will exit the Widget and return to next location from where it was called from
See `<<exitAll>>`
exitAll:
description: |-
Stops processing of all remaining Widgets and Passages
This propagates through the stack.
All Widgets that would have been called after this Widget will be ignored
The equivalent of calling `<<exit>>` on every Widget and Passage currently being processed
exitclothingshop:
name: exitclothingshop
exitWraith:
name: exitWraith
exportsettings:
name: exportsettings
exposedcheck:
name: exposedcheck
exposedlower:
description: |-
Prints outermost unexposed lower layer
tags: ["text"]
exposedupper:
description: |-
Prints outermost unexposed upper layer
tags: ["text"]
exposure:
description: |-
Updates player exposure values based on location and state of dress
extraStatistics:
name: extraStatistics
extraStatisticsPregnancyType:
name: extraStatisticsPregnancyType
extraStatisticsWarning:
name: extraStatisticsWarning
EZbig:
name: EZbig
EZdisgusting:
name: EZdisgusting
EZpenis:
name: EZpenis
EZsmall:
name: EZsmall
faceejacstat:
name: faceejacstat
faceintegrity:
name: faceintegrity
faceon:
name: faceon
tags: ["unused"]
faceruined:
description: |-
Destroys pc's face slot clothing, whether worn or carried
`<<faceruined noRebuy?>>`
- **noRebuy** _optional_: `boolean` - skip rebuying command (truthy)
- Defaults to `false`
parameters:
- "|+ bool"
facesend:
name: facesend
FaceShop:
name: FaceShop
facesitFlavorText:
name: facesitFlavorText
facesteal:
name: facesteal
tags: ["unused"]
facestrip:
name: facestrip
faceStyleOptions:
description: |-
Prints settings section for face styles
tags: ["text", "dom"]
faceundress:
name: faceundress
faceVariantOptions:
description: |-
Prints settings section for face variants
tags: ["text", "dom"]
faceVariantSettings:
description: |-
Prints radio buttons for available face variant options
See `<<faceVariantOptions>>` for all DOM
tags: ["text", "dom"]
facewear:
name: facewear
fadeText:
description: |-
Crossfades text to some other text
`<<fadeText originalText changedText delay?>>`
- **originalText**: `string` - original text
- **changedText**: `string` - text to fade to after a time
-**delay** _optional_: `number` - seconds to delay fade
- Defaults to 1
parameters:
- "text|string &+ text|string |+ number"
tags: ["text"]
fallenangel:
description: |-
Prints `| Fallen Angel`
tags: ["text"]
fallenButNotOut:
name: fallenButNotOut
fallenDescend:
name: fallenDescend
fallenTransform:
description: |-
Turns an Angel TF in a Fallen Angel TF when the player loses their virginity. Once fallen, the player can no longer become a full Angel.
Displays the following in case of full transformation:
```
<span class="red">Your halo shatters and your wings blacken. An overwhelming sense of loss overcomes you.</span>
```
fame:
description: |-
Changes fame values without any checks or safeguards
`<<fame changeValue ...type >>`
- **changeValue**: `number` - value to change fame by
- ...**type**: `string` - type(s) of fame to change
- %fameTypesDesc%
parameters:
- "number &+ %fameTypes% |+ ...%fameTypes%"
tags: ["unused"]
famebestiality:
description: |-
Changes pc's fame for bestiality
`<<famebestiality value type? forceChange?>>`
- **changeValue**: `number` - value to change fame by
- **type** _optional_: `string` - type of event giving fame
- `"none"` | `"pic"` | `"vid"`
- **forceChange** _optional_: `boolean` - skip checks that would normally prevent this type of fame gain
parameters:
- 'number |+ "none"|"pic"|"vid" |+ bool'
famebusiness:
description: |-
Changes pc's fame for business
`<<famebusiness value type? forceChange?>>`
- **changeValue**: `number` - value to change fame by
- **type** _optional_: `string` - type of event giving fame
- `"none"` | `"pic"` | `"vid"`
- **forceChange** _optional_: `boolean` - skip checks that would normally prevent this type of fame gain
parameters:
- 'number |+ "none"|"pic"|"vid" |+ bool'
fameclamp:
name: fameclamp
famedance:
description: |-
Increments pc's fame for dancing based on audience size
fameexhibitionism:
description: |-
Changes pc's fame for exhibitionism
`<<fameexhibitionism value type? forceChange?>>`
- **changeValue**: `number` - value to change fame by
- **type** _optional_: `string` - type of event giving fame
- `"none"` | `"pic"` | `"vid"`
- **forceChange** _optional_: `boolean` - skip checks that would normally prevent this type of fame gain
parameters:
- 'number |+ "none"|"pic"|"vid" |+ bool'
famegood:
description: |-
Changes pc's fame for being good
`<<famegood value type? forceChange?>>`
- **changeValue**: `number` - value to change fame by
- **type** _optional_: `string` - type of event giving fame
- `"none"` | `"pic"` | `"vid"`
- **forceChange** _optional_: `boolean` - skip checks that would normally prevent this type of fame gain
parameters:
- 'number |+ "none"|"pic"|"vid" |+ bool'
fameimpreg:
description: |-
Changes pc's fame for impregnating others (fathering children)
`<<fameimpreg value type? forceChange?>>`
- **changeValue**: `number` - value to change fame by
- **type** _optional_: `string` - type of event giving fame
- `"none"` | `"pic"` | `"vid"`
- **forceChange** _optional_: `boolean` - skip checks that would normally prevent this type of fame gain
parameters:
- 'number |+ "none"|"pic"|"vid" |+ bool'
famemodel:
description: |-
Changes pc's fame for modelling
`<<famemodel value type? forceChange?>>`
- **changeValue**: `number` - value to change fame by
- **type** _optional_: `string` - type of event giving fame
- `"none"` | `"pic"` | `"vid"` | `"art"`
- **forceChange** _optional_: `boolean` - skip checks that would normally prevent this type of fame gain
parameters:
- 'number |+ "none"|"pic"|"vid"|"art" |+ bool'
famepimp:
description: |-
Changes pc's fame for being pimped out
Currently unused
`<<famepimp value type? forceChange?>>`
- **changeValue**: `number` - value to change fame by
- **type** _optional_: `string` - type of event giving fame
- `"none"` | `"pic"` | `"vid"`
- **forceChange** _optional_: `boolean` - skip checks that would normally prevent this type of fame gain
parameters:
- 'number |+ "none"|"pic"|"vid" |+ bool'
famepregnancy:
description: |-
Changes pc's fame for being pregnant (mothering children)
`<<famepregnancy value type? forceChange?>>`
- **changeValue**: `number` - value to change fame by
- **type** _optional_: `string` - type of event giving fame
- `"none"` | `"pic"` | `"vid"`
- **forceChange** _optional_: `boolean` - skip checks that would normally prevent this type of fame gain
parameters:
- 'number |+ "none"|"pic"|"vid" |+ bool'
fameProse:
description: |-
Prints full description of provided fame key
`<<fameProse type>>`
- **type**: `string` - type of fame
- `%fameTypesDesc%`
parameters:
- "%fameTypes%"
tags: ["text"]
fameprostitution:
description: |-
Changes pc's fame for prostitution
`<<fameprostitution value type? forceChange?>>`
- **changeValue**: `number` - value to change fame by
- **type** _optional_: `string` - type of event giving fame
- `"none"` | `"pic"` | `"vid"`
- **forceChange** _optional_: `boolean` - skip checks that would normally prevent this type of fame gain
parameters:
- 'number |+ "none"|"pic"|"vid" |+ bool'
famerape:
description: |-
Changes pc's fame for being raped
`<<famerape value type? forceChange?>>`
- **changeValue**: `number` - value to change fame by
- **type** _optional_: `string` - type of event giving fame
- `"none"` | `"pic"` | `"vid"`
- **forceChange** _optional_: `boolean` - skip checks that would normally prevent this type of fame gain
parameters:
- 'number |+ "none"|"pic"|"vid" |+ bool'
famesalute:
name: famesalute
fameschoolex:
description: |-
Changes pc's fame for exhibitionism amongst students
Consider using `<<fameexhibitionsim>>` instead as this behaviour is not implemented and lightly deprecated
`<<fameschoolex value>>`
- **changeValue**: `number` - value to change fame by
parameters:
- number
tags: ["refactor"]
famescrap:
description: |-
Changes pc's fame for fighting
`<<famescrap value type? forceChange?>>`
- **changeValue**: `number` - value to change fame by
- **type** _optional_: `string` - type of event giving fame
- `"none"` | `"pic"` | `"vid"`
- **forceChange** _optional_: `boolean` - skip checks that would normally prevent this type of fame gain
parameters:
- 'number |+ "none"|"pic"|"vid" |+ bool'
famesex:
description: |-
Changes pc's having sex fame
`<<famesex value type? forceChange?>>`
- **changeValue**: `number` - value to change fame by
- **type** _optional_: `string` - type of event giving fame
- `"none"` | `"pic"` | `"vid"`
- **forceChange** _optional_: `boolean` - skip checks that would normally prevent this type of fame gain
parameters:
- 'number |+ "none"|"pic"|"vid" |+ bool'
famesocial:
description: |-
Changes pc's fame for social status
`<<famesocial value type? forceChange?>>`
- **changeValue**: `number` - value to change fame by
- **type** _optional_: `string` - type of event giving fame
- `"none"` | `"pic"` | `"vid"`
- **forceChange** _optional_: `boolean` - skip checks that would normally prevent this type of fame gain
parameters:
- 'number |+ "none"|"pic"|"vid" |+ bool'
farm_actions:
name: farm_actions
farm_aggro:
name: farm_aggro
farm_alex:
name: farm_alex
farm_assault_actions:
name: farm_assault_actions
farm_assault_alex:
name: farm_assault_alex
farm_assault_attack_options:
name: farm_assault_attack_options
farm_assault_end:
name: farm_assault_end
farm_assault_flight:
name: farm_assault_flight
farm_assault_info:
name: farm_assault_info
farm_assault_init:
name: farm_assault_init
farm_assault_intro:
name: farm_assault_intro
farm_assault_intruders:
name: farm_assault_intruders
farm_assault_location:
name: farm_assault_location
farm_assault_no:
name: farm_assault_no
farm_assault_options:
name: farm_assault_options
farm_assault_progress:
name: farm_assault_progress
farm_assault_thugs:
name: farm_assault_thugs
farm_assault_unbind:
name: farm_assault_unbind
farm_attack_auto:
name: farm_attack_auto
farm_brush:
name: farm_brush
farm_build_day:
name: farm_build_day
farm_cattle:
name: farm_cattle
farm_cottage_options:
name: farm_cottage_options
farm_cottage_tv_options:
name: farm_cottage_tv_options
farm_count:
name: farm_count
farm_damage_report:
name: farm_damage_report
farm_dogs:
name: farm_dogs
farm_fence:
name: farm_fence
farm_fence_damage:
name: farm_fence_damage
farm_fight_alex:
name: farm_fight_alex
farm_fight_door:
name: farm_fight_door
farm_fight_init:
name: farm_fight_init
farm_fight_options:
name: farm_fight_options
farm_forest_event:
name: farm_forest_event
farm_gen:
description: |-
Re-generates the gender and genitalia of the selected farm animal.
`<<farm_gen type>>`
- **type**: `string` - type of `$farmwork` being performed
- `"dog"` | `"pig"` | `"horse"` | `"cattle"`
name: farm_gen
farm_gen_all:
description: |-
Re-generates the gender and genitalia of all farm animals the player can currently have sex with.
name: farm_gen_all
farm_guard_paid:
name: farm_guard_paid
farm_guard_pay:
name: farm_guard_pay
farm_guard_wage:
name: farm_guard_wage
farm_he:
description: |-
Prints singular pronoun (he/she) for beast on farm, modified by hallucinations
Can specify an optional forced gender in the second argument ("m" or "f")
`<<farm_he type>>`
- **type**: `string` - type of `$farmwork` being performed
- `"dog"` | `"pig"` | `"horse"` | `"cattle"`
- `"m"` | `"f"`
name: farm_he
parameters:
- '"dog"|"pig"|"horse"|"cattle" |+ "m"|"f"'
tags: ["text"]
farm_He:
description: |-
Prints capitalised singular pronoun (He/She) for beast on farm, modified by hallucinations
Can specify an optional forced gender in the second argument ("m" or "f")
`<<farm_He type>>`
- **type**: `string` - type of `$farmwork` being performed
- `"dog"` | `"pig"` | `"horse"` | `"cattle"`
- `"m"` | `"f"`
name: farm_He
parameters:
- '"dog"|"pig"|"horse"|"cattle" |+ "m"|"f"'
tags: ["text"]
farm_him:
description: |-
Prints objective singular pronoun (him/her) for beast on farm, modified by hallucinations
Can specify an optional forced gender in the second argument ("m" or "f")
`<<farm_him type>>`
- **type**: `string` - type of `$farmwork` being performed
- `"dog"` | `"pig"` | `"horse"` | `"cattle"`
- `"m"` | `"f"`
name: farm_him
parameters:
- '"dog"|"pig"|"horse"|"cattle" |+ "m"|"f"'
tags: ["text"]
farm_his:
description: |-
Prints possessive pronoun (his/her) for beast on farm, modified by hallucinations
Can specify an optional forced gender in the second argument ("m" or "f")
`<<farm_his type>>`
- **type**: `string` - type of `$farmwork` being performed
- `"dog"` | `"pig"` | `"horse"` | `"cattle"`
- `"m"` | `"f"`
name: farm_his
parameters:
- '"dog"|"pig"|"horse"|"cattle" |+ "m"|"f"'
tags: ["text"]
farm_His:
description: |-
Prints capitalised possessive pronoun (His/Her) for beast on farm, modified by hallucinations
Can specify an optional forced gender in the second argument ("m" or "f")
`<<farm_His type>>`
- **type**: `string` - type of `$farmwork` being performed
- `"dog"` | `"pig"` | `"horse"` | `"cattle"`
- `"m"` | `"f"`
name: farm_His
parameters:
- '"dog"|"pig"|"horse"|"cattle" |+ "m"|"f"'
tags: ["text"]
farm_horses:
name: farm_horses
farm_init:
description: |-
Initializes the farm variables if the player accepts to work at the farm after Alex's introduction. Also calls the `<<farm_work_update>>` and `<<farm_update>>` widgets. This widget first readjusts `$farm_work` variables before initializing the `$farm` object.
The `$farm` object has the following attributes:
- **beasts**: `Object` - Contains the level of affection from each beast category at the farm.
- **[beast]**: `{-30..30}` - The level of respect each category of beast has for the player. Defaults to 0 as the neutral value. Can be `pigs`, `horses`, `cattle` or `dogs`.
- **clearing**: `{0..100}` - The level of clearing of the field. Defaults to 100 and must be lowered down to 0 to expand the farm.
The widget also enables `$farm_naked_alex`, a flag that can be set off once the player asks to work at the farm naked.
It also enables `$fields_damaged`, an array of numbers corresponding to the fields that have been damaged during the farm's attacks.
farm_knotted:
name: farm_knotted
farm_milk_actions:
name: farm_milk_actions
farm_milk_check:
name: farm_milk_check
farm_pigs:
name: farm_pigs
farm_relax_chat:
name: farm_relax_chat
farm_relax_end:
name: farm_relax_end
farm_ride_events:
name: farm_ride_events
farm_sleep_options:
name: farm_sleep_options
farm_status:
name: farm_status
farm_stock:
name: farm_stock
farm_stock_init:
name: farm_stock_init
farm_tell_alex:
name: farm_tell_alex
farm_tending_alex_events:
name: farm_tending_alex_events
farm_tending_events:
name: farm_tending_events
farm_text:
description: |-
Prints singular type of beast on farm, modified by hallucinations
Can specify an optional forced gender in the second argument ("m" or "f")
`<<farm_text type>>`
- **type**: `string` - type of `$farmwork` being performed
- `"dog"` | `"pig"` | `"horse"` | `"cattle"`
- `"m"` | `"f"`
name: farm_text
parameters:
- '"dog"|"pig"|"horse"|"cattle" |+ "m"|"f"'
tags: ["text"]
farm_text_many:
description: |-
Prints plural type of beasts on farm, modified by hallucinations
Can specify an optional forced gender in the second argument ("m" or "f")
`<<farm_text type>>`
- **type**: `string` - type of `$farmwork` being performed
- `"dog"` | `"pig"` | `"horse"` | `"cattle"`
- `"m"` | `"f"`
name: farm_text_many
parameters:
- '"dog"|"pig"|"horse"|"cattle" |+ "m"|"f"'
tags: ["text"]
farm_text_neutral:
description: |-
Prints singular genderless type of beast on farm, modified by hallucinations
English doesn't have a genderless singular form for "cattle". Defaulting to "cow" and "cowperson".
`<<farm_text type>>`
- **type**: `string` - type of `$farmwork` being performed
- `"dog"` | `"pig"` | `"horse"` | `"cattle"`
name: farm_text_neutral
tags: ["text"]
farm_trust:
name: farm_trust
farm_update:
description: |-
Adds the `milking` object and the `build_finished` array of strings to the `$farm` object.
`$farm.build_finished` is an array of strings containing the number of farm upgrades the player purchased that are currently operational.
`$farm.milking` contains the following attributes:
- **caught**: `boolean` - Indicates if Alex caught the player milking themselves or not.
- **alexNightEvent**: `boolean` - Allows the player to replay the `"AlexFarmSelfMilkingCaught"` event in the scene viewer.
- **catchChance**: `number` - The probability of Alex catching the player milking themselves, computed by `<<farmCatchChance>>`.
- **dayMilking**: `boolean` - Allows the player to milk themselves in the barn during the day after Alex caught them.
farm_upgrades_current:
name: farm_upgrades_current
farm_upgrades_status:
name: farm_upgrades_status
farm_var_set:
description: |-
Resets farm vars if appropriate
farm_work:
name: farm_work
farm_work_time:
description: |-
Sets "_farm_work_time" to the current time on the farm (Based on the farm's work schedule).
Alex will be active on the farm while 1 <= _farm_work_time <= 45.
Work on the farm officially starts at 6:00 AM and ends at 9:00 PM
Alex gets up at 5:00 AM. If Alex's Cottage is unlocked, he will make breakfast and watch TV until 6:00 AM.
After 6:00 AM, he will shower until 7:00 AM (Lol) then start doing farm work.
name: farm_work_time
farm_work_update:
description: |-
Updates variables for the current state of the farm.
Calls the "farm_work_time" widget automatically.
name: farm_work_update
farm_yield:
description: |-
Adds tier to daily farm_yield gain
`$farm_yield` is the daily buildup of extra farm productivity where 0 is none (0+)
`$farm_yield_alex` is the total built-up extra farm productivity Alex will award pc as money where 0 is none (0+)
`<<farm_yield change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
farmCatchChance:
name: farmCatchChance
farmland_dungeon_end:
name: farmland_dungeon_end
farmland_dungeon_gauntlet:
name: farmland_dungeon_gauntlet
farmland_dungeon_init:
name: farmland_dungeon_init
farmland_manors_maze:
name: farmland_manors_maze
farmland_road_events:
name: farmland_road_events
father:
name: father
Father:
name: Father
fatigueClamp:
description: |-
Converts 1 point of excess $tiredness into 15 points of $stress and 0.25 points of $trauma.
Trauma gains increase by up to 100% at low $control.
Called at the end of every "tiredness" function call.
name: fatigueClamp
featExplanation:
name: featExplanation
featName:
name: featName
feats:
name: feats
featSettings:
name: featSettings
featsList:
name: featsList
featsMenu:
name: featsMenu
featsMerge:
name: featsMerge
featsMergePre:
name: featsMergePre
featsPointsMenu:
name: featsPointsMenu
featsPointsMenuButtons:
name: featsPointsMenuButtons
featsPointsMenuReset:
name: featsPointsMenuReset
featsTattooOptions:
name: featsTattooOptions
feedLurker:
description: |-
Feeds a lurker to GH
See `<<eatLurker>>` for pc
feet_ambush:
name: feet_ambush
feet_confront:
name: feet_confront
feet_hide:
name: feet_hide
feet_hobble:
name: feet_hobble
feet_run:
name: feet_run
feet_stand:
name: feet_stand
feet_strut:
name: feet_strut
feet_walk:
name: feet_walk
feetactionDifficulty:
name: feetactionDifficulty
feetactionDifficultyMachine:
name: feetactionDifficultyMachine
tags: ["unused"]
feetactionDifficultySelf:
name: feetactionDifficultySelf
tags: ["unused"]
feetactionDifficultyStruggle:
name: feetactionDifficultyStruggle
tags: ["unused"]
feetactionDifficultySwarm:
name: feetactionDifficultySwarm
tags: ["unused"]
feetactionDifficultyTentacle:
name: feetactionDifficultyTentacle
feetActionInit:
name: feetActionInit
feetActionInitMachine:
name: feetActionInitMachine
feetActionInitSelf:
name: feetActionInitSelf
feetActionInitStruggle:
name: feetActionInitStruggle
feetActionInitSwarm:
name: feetActionInitSwarm
feetActionInitTentacle:
name: feetActionInitTentacle
feetActions:
name: feetActions
feetactionSetupTentacle:
name: feetactionSetupTentacle
feetActionsMachine:
name: feetActionsMachine
feetActionsSelf:
name: feetActionsSelf
feetActionsStruggle:
name: feetActionsStruggle
feetActionsSwarm:
name: feetActionsSwarm
feetActionsTentacle:
name: feetActionsTentacle
feetdifficulty:
description: |-
Prints colour-coded adjective of feet action difficulty in current combat
tags: ["text"]
feetejacstat:
name: feetejacstat
feetgrabnew:
name: feetgrabnew
feetGrabRub:
name: feetGrabRub
feetit:
description: |-
Prints an objective case pronoun (them/it) for worn `"feet"` slot
tags: ["text"]
feetKick:
name: feetKick
feeton:
name: feeton
tags: ["unused"]
feetOthervagina:
name: feetOthervagina
feetruined:
description: |-
Destroys pc's feet slot clothing, whether worn or carried
`<<feetruined noRebuy?>>`
- **noRebuy** _optional_: `boolean` - skip rebuying command (truthy)
- Defaults to `false`
parameters:
- "|+ bool"
feetRunClothed:
name: feetRunClothed
tags: ["unused"]
feetsend:
name: feetsend
tags: ["unused"]
feetshoes:
name: feetshoes
FeetShop:
name: FeetShop
feetskill:
description: |-
Adds feet skill to pc's state
`$feetskill` is a measure of pc's proficiency using their feet where 0 is awkward (0-1,000)
`<<feetskill change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
feetskilluse:
name: feetskilluse
feetsocks:
name: feetsocks
feetstat:
name: feetstat
feetsteal:
name: feetsteal
feetstrip:
name: feetstrip
feettentacledisable:
name: feettentacledisable
feettext:
description: |-
Prints colour-coded adjective of active feet skill usage
tags: ["text"]
feetthat:
description: |-
Prints plural/singular prose of that (those/that) for worn `"feet"` slot
tags: ["unused", "text"]
feetundress:
name: feetundress
feetwear:
name: feetwear
fertilisefromgroup:
name: fertilisefromgroup
tags: ["unused"]
fertiliseParasites:
name: fertiliseParasites
fertilityCycles:
name: fertilityCycles
fetishPregnancyImg:
name: fetishPregnancyImg
fetishSettings:
name: fetishSettings
fields_init:
name: fields_init
fillOther:
name: fillOther
filterreveal:
name: filterreveal
firepitActions:
name: firepitActions
firepitTime:
name: firepitTime
fisherPerson:
name: fisherPerson
fishingBaitList:
name: fishingBaitList
fishingBeachDebugLinks:
name: fishingBeachDebugLinks
fishingBeachMinigameLinks:
name: fishingBeachMinigameLinks
fishingCoastPathDebugLinks:
name: fishingCoastPathDebugLinks
fishingCoastPathMinigameLinks:
name: fishingCoastPathMinigameLinks
fishEatingTf:
name: fishEatingTf
fishingBob:
name: fishingBob
fishingRipples:
name: fishingRipples
fishingEatFishTfProgress:
name: fishingEatFishTfProgress
fishingCatchFishText:
name: fishingCatchFishText
fishingClothingCatchText:
name: fishingClothingCatchText
fishingTrashCatchText:
name: fishingTrashCatchText
fishingMinigameDebugTeleportWidget:
name: fishingMinigameDebugTeleportWidget
fishingMinigameFrame:
name: fishingMinigameFrame
fishingMinigameUi:
name: fishingMinigameUi
fishingMinigameResultUi:
name: fishingMinigameResultUi
fishingMinigameStartText:
name: fishingMinigameStartText
fishingMinigameArmFatigue:
name: fishingMinigameArmFatigue
fishingMinigameAthleticsCheck:
name: fishingMinigameAthleticsCheck
debugFishingMinigameInfo:
name: debugFishingMinigameInfo
fishingMinigameTurnResult:
name: fishingMinigameTurnResult
fishingMinigameFishStatus:
name: fishingMinigameFishStatus
fishingForestLakeDebugLinks:
name: fishingForestLakeDebugLinks
fishingForestLakeMinigameLinks:
name: fishingForestLakeMinigameLinks
fishingLocationDescription:
name: fishingLocationDescription
fishingLocationDisplayName:
name: fishingLocationDisplayName
fishingLocationPopulation:
name: fishingLocationPopulation
fishingRodIcon:
name: fishingRodIcon
fishingMoorDebugLinks:
name: fishingMoorDebugLinks
fishingMoorMinigameLinks:
name: fishingMoorMinigameLinks
fishingPierDebugLinks:
name: fishingPierDebugLinks
fishingPierMinigameLinks:
name: fishingPierMinigameLinks
fishingBaitHelp:
name: fishingBaitHelp
fishingRebaitMid:
name: fishingRebaitMid
fishingRebaitStart:
name: fishingRebaitStart
wearActiveFishingRodProp:
name: wearActiveFishingRodProp
flashbackbeach:
name: flashbackbeach
flashbackhome:
name: flashbackhome
flashbackschool:
name: flashbackschool
flashbacktown:
name: flashbacktown
flashbackunderground:
name: flashbackunderground
flashcrotchunderskirt:
name: flashcrotchunderskirt
flats_alarm_end:
name: flats_alarm_end
flats_alarm_links:
name: flats_alarm_links
flats_alarm_time:
name: flats_alarm_time
flats_auction_end:
name: flats_auction_end
flats_canal:
name: flats_canal
flats_canal_defeat:
name: flats_canal_defeat
flats_canal_run:
name: flats_canal_run
flaunting:
description: |-
Prints player opinion of their state based on trauma, stress, and arousal
Description is without subject and capitalised
Example:
```
<<flaunting>> you make an example of yourself.
```
tags: ["text"]
flight_distance_check:
name: flight_time_check
flight_effects:
name: flight_effects
flight_hunt_chance:
name: flight_hunt_chance
flight_hunt_end:
name: flight_hunt_end
flight_hunt_get:
name: flight_hunt_get
flight_hunt_get_ambush:
name: flight_hunt_get_ambush
flight_hunt_get_random:
name: flight_hunt_get_random
flight_hunt_loot:
name: flight_hunt_loot
flight_hunt_options:
name: flight_hunt_options
flight_hunt_remove:
name: flight_hunt_remove
flight_hunt_return:
name: flight_hunt_return
flight_text:
description: |-
Prints `| Wings` or `| Strong wings` depending on pc's wing strength
tags: ["text"]
flight_time_check:
description: |-
Sets the amount of time the player can fly with the harpy transformation, modified by weather and the player's Athletics skill. Optionally prints a line of text describing how the modifiers are affecting flight time
`<<flight_time_check returnTime silent?>>`
- **returnTime**: `number`
- **silent** _optional_: `string` - does not print modifier description
parameters:
- '|+ number |+ "silent"'
tags: ["text"]
foldout:
container: true
name: foldout
food_gift_list:
description: |-
Prints available food to gift
tags: ["text"]
food_list:
description: |-
Prints all food in a certain category
See `<<food_list_all>>` for all foods
`<<food_list category>>`
- **category**: `string` - example kind to output
- `"sweets"` | `"drinks"` | `"savouries"`
parameters:
- '"sweets"|"drinks"|"ingredients"|"savouries"'
food_list_all:
description: |-
Prints all foods in all categories
See `<<food_list>>` for specific category
tags: ["text", "unused"]
foodstuffReport:
description: |-
Prints a brief description of the given item and quantity, formatted as:
"[item icon] [item quantity] [item name]"
Only works with <<foodstufficon>> icons.
`<<foodstuffReport name quantity icon>>`
- **name**: `string` - Name of the item
- **quantity**: `number` - Number of items
- **icon** _optional_: `string` - Associated icon of the item. If left blank, no icon will be shown.
Examples:
- `<<foodstuffReport "apple" 11>>`
- `<<foodstuffReport "peach" 24 "peach">>`
- `<<foodstuffReport "carrot" 42 "wild_carrot">>`
name: foodstuffReport
forestBullyLeaves:
name: forestBullyLeaves
forestCabinReturnLinks:
name: forestCabinReturnLinks
forestdeeper:
name: forestdeeper
foresthunt:
name: foresthunt
foresthuntstart:
name: foresthuntstart
forestlessdeep:
name: forestlessdeep
forestmove:
name: forestmove
forestRescue:
name: forestRescue
forestRescueCheck:
name: forestRescueCheck
forestRescueSetup:
name: forestRescueSetup
forestsearch:
name: forestsearch
forestShop-main:
name: forestShop-main
forestShopLeave:
name: forestShopLeave
forestspider:
name: forestspider
tags: ["unused"]
formatList:
name: formatList
tags: ["unused"]
formatmoney:
description: |-
Converts amount in pennies to formatted string of currency
Sets `_printmoney` as output
`<<formatmoney amountInPennies>>`
- **amountInPennies**: `number` - amount in pennies, positive or negative
parameters:
- number
tags: ["temp"]
fox:
description: |-
Prints `| Foxboy` or `| Vixen` depending on pc's appearance
tags: ["text"]
fox_gen:
name: fox_gen
fox_text:
name: fox_text
foxnickname:
name: foxnickname
foxTransform:
name: foxTransform
friend:
description: |-
Prints Robin's maximum friendship status with the pc (girlfriend/best friend/friend)
`<<friend modifier?>>`
- **modifier** _optional_: `string` - allowed alternative
- `"bff"`: Robin can call pc their best friend
parameters:
- '|+ "bff"'
tags: ["text"]
fringedescription:
name: fringedescription
fringeDetails:
description: |-
Prints the current state of the player's fringe.
The player's fringe can grow from the top of their head the front of their face.
name: fringeDetails
fullGroup:
description: |-
Prints gender makeup of currently active npcs as a list (ie, `Robin, man, and woman`)
See `<<enumeratedGroup>>` for numbers as well or `<<group>>` for a summary
`<<fullGroup formatting?>>`
- **formatting** _optional_: `string` - formatting to apply
- `"cap"`: capitalise output
parameters:
- '|+ "cap"'
tags: ["text"]
furnitureCatalogue:
name: furnitureCatalogue
furnitureDowngrade:
name: furnitureDowngrade
furnitureLinks:
name: furnitureLinks
furnitureList:
name: furnitureList
furnitureUpdate:
name: furnitureUpdate
furnitureWarning:
description: |-
Prints `| This will replace your X`
`<<furnitureWarning type>>`
- **type**: `string` - type of furniture being replaced
- `"decoration"` | `"windowsill"` | `"wallpaper"` | `"poster"`
parameters:
- '"decoration"|"windowsill"|"wallpaper"|"poster"'
tags: ["unused", "text"]
gacceptance:
description: |-
Prints `| + Acceptance`
tags: ["text"]
gadeviancy:
description: |-
Prints `| + Alex's Deviancy`
tags: ["unused", "text"]
gagged_speech:
name: gagged_speech
gaggro:
description: |-
Prints `| + Remy's Encroachment`
tags: ["text"]
gallerySettings:
name: gallerySettings
gameMode:
name: gameMode
gameSettings:
name: gameSettings
gameStartOnly:
name: gameStartOnly
ganalskill:
description: |-
Prints `| Anal skill`
tags: ["text"]
ganginit:
name: ganginit
gapproval:
name: gapproval
tags: ["text"]
garage:
description: |-
Prints `| + Rage`
tags: ["text"]
garousal:
description: |-
Prints `| + Arousal`
tags: ["text"]
gaspair:
name: gaspair
gathletics:
description: |-
Prints `| + Athletics`
tags: ["text"]
gattention:
description: |-
Prints `| + Attention` if more prison attention can be gained today
`<<gattention type>>`
- **type**: `string` - type of attention to check if should be visible
- `"prison"`
parameters:
- '|+ "prison"'
tags: ["text"]
gaverytiredness:
name: gaverytiredness
gawareness:
description: |-
Prints `| + Awareness` or `| - Innocence`
tags: ["text"]
gbaton:
description: |-
Prints `| + Baton proficiency`
tags: ["text"]
gbeauty:
description: |-
Prints `| + Beauty`
tags: ["unused", "text"]
gbirdstockholm:
description: |-
Prints `| + + Stockholm Syndrome` if `$syndromebird` is not 1
tags: ["text"]
gbodywriting:
description: |-
Prints `| + Bodywriting`
tags: ["text"]
gbottomskill:
description: |-
Prints `| + Ass skill`
tags: ["text"]
gcamp_concealment:
name: gcamp_concealment
tags: ["unused", "text"]
gcardskill:
description: |-
Prints `| + target's card skill` where target is an NPC
`<<ggcardskill target>>`
- **target**: `string` - target npc to print drink of
- %cardsDesc%
parameters:
- "%cards%"
tags: ["text"]
gchaos:
description: |-
Prints `| + Chaos`
tags: ["text"]
gchestskill:
description: |-
Prints `| + Chest skill`
tags: ["text"]
gcombatcontrol:
description: |-
Prints `| + Control`
tags: ["text"]
gcomprehension:
description: |-
Prints `| + Comprehension`
tags: ["text"]
gcondoms:
description: |-
Gives player and Prints `| + X Condoms`
`<<gcondoms numberGained?>>`
- **numberGained** _optional_: `number` - number of condoms to give player
- Defaults to 1
parameters:
- "|+ number"
tags: ["text"]
gcontrol:
description: |-
Prints `| + Control`
tags: ["text"]
gcool:
description: |-
Prints `| + Status`
tags: ["text"]
gcorruption:
description: |-
Prints `| + Corruption`
tags: ["text"]
gcrime:
description: |-
Prints `| + Crime X` where X is type of crime
`<<gcrime type>>`
- **type**: `string` - type in setup.crimeNames
- %crimeTypesDesc%
parameters:
- "|+ %crimeTypes%"
tags: ["text"]
gdanceskill:
description: |-
Prints `| + Dance skill`
tags: ["text"]
gdaring:
description: |-
Prints `| + Daring`
tags: ["text"]
gdef:
description: |-
Prints `| + Defiance`
tags: ["unused", "text"]
gdelinquency:
description: |-
Prints `| + Delinquency`
tags: ["text"]
gdom:
description: |-
Prints `| + Dominance` or `| + NPCName's Dominance` if provided
`<<gdom NPCName?>>`
- **NPCName** _optional_: `string` - name to display as their dominance
- `"Robin"`: Displays "Confidence" instead
- `"Doren"`: Displays "Protectiveness" instead
parameters:
- "|+ text|string"
tags: ["text"]
gdrugged:
description: |-
Prints `| + Drugged`
tags: ["text"]
gdrunk:
description: |-
Prints `| + Alcohol`
tags: ["text"]
gencolourpicker:
name: gencolourpicker
gencolourselector:
name: gencolourselector
gencoloursquares:
name: gencoloursquares
gendear:
description: |-
Prints `| + Endearment`
tags: ["text"]
gendercheck:
description: |-
Prints error if pc's gender appearance is not `m` or `f`
tags: ["text"]
genderswap:
name: genderswap
genderswapPlayer:
name: genderswapPlayer
tags: ["unused"]
generalOn:
name: generalOn
generalRuined:
description: |-
Destroy and delete clothing in specified slot
Relies on `_noRebuy` already being set to determine whether to call `<<generalRuinedRebuy>>`
`<<generalRuined slot ruinAll? destroy?>>`
- **slot**: `string` - clothing slot to target
- %clothesTypesDesc%
- **ruinAll** _optional_: `boolean` - ruin all other parts when provided an outfit (truthy)
- defaults to `false`
- **destroy** _optional_: `string` - destroy only worn slot item or only carried slot item
- `"worn"` | `"carried"`
- Defaults to both
parameters:
- '%clothesTypes% |+ bool|text|string|number |+ "worn"|"carried"'
tags: ["temp"]
generalRuinedRebuy:
description: |-
Rebuys provided clothing item
This should be called in the middle of `<<generalRuined>>` before the item has been completely destroyed as it relies on the item still existing
Part of the larger [Example API hyperlink]
`<<generalRuinedRebuy slot structure>>`
- **slot**: `string` - clothing slot to target
- %clothesTypesDesc%
- **structure**: `object` - state structure where clothing item is currently located
- `$worn` | `$carried`
parameters:
- '%clothesTypes% &+ var|bareword'
generalSend:
name: generalSend
generalSteal:
name: generalSteal
generalStoreon:
name: generalStoreon
generalStrip:
name: generalStrip
generalUndress:
name: generalUndress
generalWear:
description: |-
Applies clothing item to pc's slot
Does nothing if blocked by cursed items
`<<generalWear slot itemIndex colour? accessoryColour? pattern?>>`
- **slot**: `string` - slot to put clothing on
- %clothesTypesDesc%
- **itemIndex**: `number` - index of clothing item from setup to copy from
- **colour** _optional_: `string` - primary colour
- `"custom"`: pulls values from `$customColors` object
- `text`: valid colour in any format
- **accessoryColour** _optional_: `object` - secondary colour
- `"custom"`: pulls values from `$customColors` object
- `text`: valid colour in any format
- **pattern** _optional_: `string` - icon pattern variation to display
parameters:
- '%clothesTypes% &+ number|string |+ "custom"|text|string |+ "custom"|text|string |+ text|string'
generalWearFromWardrobe:
name: generalWearFromWardrobe
generate_anxious_guard:
name: generate_anxious_guard
generate_beast_traits:
name: generate_beast_traits
generate_methodical_guard:
name: generate_methodical_guard
generate_npc_skills:
name: generate_npc_skills
generate_npc_traits:
name: generate_npc_traits
generate_relaxed_guard:
name: generate_relaxed_guard
generate_scarred_inmate:
name: generate_scarred_inmate
generate_struggle_creature:
name: generate_struggle_creature
generate_tattooed_inmate:
name: generate_tattooed_inmate
generate_veteran_guard:
name: generate_veteran_guard
generate1:
name: generate1
generate2:
name: generate2
generate3:
name: generate3
generate4:
name: generate4
generate5:
name: generate5
generate6:
name: generate6
generateActionsAbomination:
name: generateActionsAbomination
generateActionsMachine:
name: generateActionsMachine
generateActionsMan:
name: generateActionsMan
generateActionsOmni:
name: generateActionsOmni
generateActionsStruggle:
name: generateActionsStruggle
generateActionsSwarm:
name: generateActionsSwarm
generateActionsTentacle:
name: generateActionsTentacle
generateActionsVore:
name: generateActionsVore
generateActionsVorentacles:
name: generateActionsVorentacles
generateAdultShopCustomer:
name: generateAdultShopCustomer
generatebear1:
name: generatebear1
tags: ["unused"]
generatebear2:
name: generatebear2
tags: ["unused"]
generatebear3:
name: generatebear3
tags: ["unused"]
generatebear4:
name: generatebear4
tags: ["unused"]
generatebear5:
name: generatebear5
tags: ["unused"]
generatebear6:
name: generatebear6
tags: ["unused"]
generateBEAST:
name: generateBEAST
generateboar1:
name: generateboar1
tags: ["unused"]
generateboar2:
name: generateboar2
tags: ["unused"]
generateboar3:
name: generateboar3
tags: ["unused"]
generateboar4:
name: generateboar4
tags: ["unused"]
generateboar5:
name: generateboar5
tags: ["unused"]
generateboar6:
name: generateboar6
tags: ["unused"]
generatec1:
name: generatec1
generatec2:
name: generatec2
generatec3:
name: generatec3
generatec4:
name: generatec4
tags: ["unused"]
generatec5:
name: generatec5
tags: ["unused"]
generatec6:
name: generatec6
tags: ["unused"]
generatecat1:
name: generatecat1
tags: ["unused"]
generatecat2:
name: generatecat2
tags: ["unused"]
generatecat3:
name: generatecat3
tags: ["unused"]
generatecat4:
name: generatecat4
tags: ["unused"]
generatecat5:
name: generatecat5
tags: ["unused"]
generatecat6:
name: generatecat6
tags: ["unused"]
generatecf1:
name: generatecf1
tags: ["unused"]
generatecf2:
name: generatecf2
tags: ["unused"]
generatecf3:
name: generatecf3
tags: ["unused"]
generatecf4:
name: generatecf4
tags: ["unused"]
generatecf5:
name: generatecf5
tags: ["unused"]
generatecf6:
name: generatecf6
tags: ["unused"]
generatecm1:
name: generatecm1
tags: ["unused"]
generatecm2:
name: generatecm2
tags: ["unused"]
generatecm3:
name: generatecm3
tags: ["unused"]
generatecm4:
name: generatecm4
tags: ["unused"]
generatecm5:
name: generatecm5
tags: ["unused"]
generatecm6:
name: generatecm6
tags: ["unused"]
generateCombatAction:
name: generateCombatAction
generateCombatActionList:
name: generateCombatActionList
generateCombatActionOthers:
name: generateCombatActionOthers
generateCombatActionOthersList:
name: generateCombatActionOthersList
generateCombatActionOthersRadio:
name: generateCombatActionOthersRadio
generateCombatActionRadio:
name: generateCombatActionRadio
generateCombatActionTentacle:
name: generateCombatActionTentacle
generateCombatActionTentacleList:
name: generateCombatActionTentacleList
generateCombatActionTentacleRadio:
name: generateCombatActionTentacleRadio
generateConfessor:
name: generateConfessor
generatecreature1:
name: generatecreature1
tags: ["unused"]
generatecreature2:
name: generatecreature2
tags: ["unused"]
generatecreature3:
name: generatecreature3
tags: ["unused"]
generatecreature4:
name: generatecreature4
tags: ["unused"]
generatecreature5:
name: generatecreature5
tags: ["unused"]
generatecreature6:
name: generatecreature6
tags: ["unused"]
generateCultist:
name: generateCultist
generateDemon:
name: generateDemon
generateDoctor:
name: generateDoctor
generatedog1:
name: generatedog1
tags: ["unused"]
generatedog2:
name: generatedog2
tags: ["unused"]
generatedog3:
name: generatedog3
tags: ["unused"]
generatedog4:
name: generatedog4
tags: ["unused"]
generatedog5:
name: generatedog5
tags: ["unused"]
generatedog6:
name: generatedog6
tags: ["unused"]
generatedolphin1:
name: generatedolphin1
tags: ["unused"]
generatedolphin2:
name: generatedolphin2
tags: ["unused"]
generatedolphin3:
name: generatedolphin3
tags: ["unused"]
generatedolphin4:
name: generatedolphin4
tags: ["unused"]
generatedolphin5:
name: generatedolphin5
tags: ["unused"]
generatedolphin6:
name: generatedolphin6
tags: ["unused"]
generatef1:
name: generatef1
generatef2:
name: generatef2
generatef3:
name: generatef3
generatef4:
name: generatef4
generatef5:
name: generatef5
generatef6:
name: generatef6
generatefox1:
name: generatefox1
tags: ["unused"]
generatefox2:
name: generatefox2
tags: ["unused"]
generatefox3:
name: generatefox3
tags: ["unused"]
generatefox4:
name: generatefox4
tags: ["unused"]
generatefox5:
name: generatefox5
tags: ["unused"]
generatefox6:
name: generatefox6
tags: ["unused"]
generateFurnitureShopStock:
name: generateFurnitureShopStock
generatel:
name: generatel
generatelizard1:
name: generatelizard1
tags: ["unused"]
generatelizard2:
name: generatelizard2
tags: ["unused"]
generatelizard3:
name: generatelizard3
tags: ["unused"]
generatelizard4:
name: generatelizard4
tags: ["unused"]
generatelizard5:
name: generatelizard5
tags: ["unused"]
generatelizard6:
name: generatelizard6
tags: ["unused"]
generatem1:
name: generatem1
generatem2:
name: generatem2
generatem3:
name: generatem3
generatem4:
name: generatem4
generatem5:
name: generatem5
generatem6:
name: generatem6
generateManager:
name: generateManager
generateMickey:
name: generateMickey
generateNewStrapon:
name: generateNewStrapon
generateNPC:
description: |-
Generates a new npc in specified slot
Pronoun/gender isn't respected consistently. Consider refactoring.
`<<generateNPC slot status? pronoun? gender? level?>>`
- **slot**: `number` - slot to put new npc in (1-6)
- **status** _optional_: `string` - character representing type of npc:
- `"t"`: Teen
- `"a"`: Adult
- `"r"`: Random
- Defaults to `"a"`
- **pronoun** _optional_: `string` - character representing gendered appearance
- `"m"`: Male pronouns
- `"f""`: Female pronouns
- `"i"`/`"n"`/`"t"`: Not accessible
- Defaults to random chance based on player's preferences
- `_generate_victim` being set will randomise based on player's victim preferences
- `_generate_partner` being set to a slot will randomise based on that slot's preferences
- **gender** _optional_: `string` - character representing genitals
- `"m"`: Penis
- `"f"`: Vagina
- `"h"`: Both
- Defaults to random chance based on player's preferences for dickgirls/cuntboys against pronoun
- **level** _optional_: `number` - size category determining hp, description, and genital size ranges
- `0-18`: Normal ranges
- `19`: Vulgar/Brutish
- `20`: Demon
parameters:
- 'number |+ "t"|"a"|"r" |+ "m"|"f"|bareword |+ "m"|"f"|"h"|bareword |+ number'
tags: ["temp", "refactor"]
generateNPCClothes:
name: generateNPCClothes
generateNPCNameHairAndEyeColors:
description: |-
Applies canonical hair and eye colour to all unset named NPCs
If not present, generates random values
generateNPCvirginity:
name: generateNPCvirginity
generatep2:
name: generatep2
generatep3:
name: generatep3
generatep4:
name: generatep4
tags: ["unused"]
generatep5:
name: generatep5
tags: ["unused"]
generatep6:
name: generatep6
tags: ["unused"]
generatePaperShopStock:
description: |-
Creates links and description of paper shop's inventory
tags: ["text", "links"]
generatepenisremark:
name: generatepenisremark
generatepig1:
name: generatepig1
tags: ["unused"]
generatepig2:
name: generatepig2
tags: ["unused"]
generatepig3:
name: generatepig3
tags: ["unused"]
generatepig4:
name: generatepig4
tags: ["unused"]
generatepig5:
name: generatepig5
tags: ["unused"]
generatepig6:
name: generatepig6
tags: ["unused"]
generatePlant:
name: generatePlant
tags: ["unused"]
generatePlant1:
name: generatePlant1
generatePlant2:
name: generatePlant2
tags: ["unused"]
generatePlant3:
name: generatePlant3
tags: ["unused"]
generatePlant4:
name: generatePlant4
tags: ["unused"]
generatePlant5:
name: generatePlant5
tags: ["unused"]
generatePlant6:
name: generatePlant6
tags: ["unused"]
generatePolice:
name: generatePolice
generatePronouns:
description: |-
Fills NPC object's `pronouns` property based on `pronoun` property
`<<generatePronouns npcObject>>`
- **npcObject**: `object` - NPC to fill
- `pronoun` property can be:
- `"m"` : he/him...
- `"f"` : she/her...
- `"i"` : it/it...
- `"n"` : one/them...
- `"t"` : they/them...
parameters:
- var
generateRandomTeacher:
description: |-
Prints the name of a random teacher that the player knows and generates that NNPC in the provided slot.
`<<generateRandomTeacher slot?>>`
- **slot** _optional_: `number` - npc index
- defaults to 1.
- If none of the five primary teachers are known, "a teacher" will be printed instead and a random NPC generated. Be mindful of the capitalisation when placing this widget inline.
- If one of the five primary teachers is currently teaching a class, they will not be selected by this widget.
Sets a temporary variable `_teacher`, which holds the selected teacher's name. If the teacher is a randomly generated NPC, it will hold "The teacher" instead. Since this widget does not provide information on which teacher is present in this scene, I advice against using any dialog. Example:
- `_teacher` frowns at you, but doesn't say anything further.
generateRole:
name: generateRole
generates1:
name: generates1
generates2:
name: generates2
generates3:
name: generates3
generates4:
name: generates4
generates5:
name: generates5
generates6:
name: generates6
generateSailor:
name: generateSailor
generateSecurity:
name: generateSecurity
generatesf1:
name: generatesf1
generatesf2:
name: generatesf2
generatesf3:
name: generatesf3
generatesf4:
name: generatesf4
generatesf5:
name: generatesf5
generatesf6:
name: generatesf6
generateshoppage:
name: generateshoppage
generateSleepLinks:
name: generateSleepLinks
generatesm1:
name: generatesm1
generatesm2:
name: generatesm2
generatesm3:
name: generatesm3
generatesm4:
name: generatesm4
generatesm5:
name: generatesm5
generatesm6:
name: generatesm6
generatespider1:
name: generatespider1
tags: ["unused"]
generatespider2:
name: generatespider2
tags: ["unused"]
generatespider3:
name: generatespider3
tags: ["unused"]
generatespider4:
name: generatespider4
tags: ["unused"]
generatespider5:
name: generatespider5
tags: ["unused"]
generatespider6:
name: generatespider6
tags: ["unused"]
generateSweaterWearer:
name: generateSweaterWearer
generatetakevirginity:
description: |-
Generates an npc capable of taking the pc's virginity
`<<generatetakevirginity slot>>`
- **slot**: `number` - slot to generate (1-6)
parameters:
- 'number'
generateTemple:
name: generateTemple
generateTipsList:
name: generateTipsList
generatev1:
name: generatev1
generatev2:
name: generatev2
generatev3:
name: generatev3
generatev4:
name: generatev4
generatev5:
name: generatev5
tags: ["unused"]
generatev6:
name: generatev6
tags: ["unused"]
generatewolf1:
name: generatewolf1
tags: ["unused"]
generatewolf2:
name: generatewolf2
tags: ["unused"]
generatewolf3:
name: generatewolf3
tags: ["unused"]
generatewolf4:
name: generatewolf4
tags: ["unused"]
generatewolf5:
name: generatewolf5
tags: ["unused"]
generatewolf6:
name: generatewolf6
tags: ["unused"]
generateWraith:
name: generateWraith
generatey1:
name: generatey1
generatey2:
name: generatey2
generatey3:
name: generatey3
generatey4:
name: generatey4
generatey5:
name: generatey5
generatey6:
name: generatey6
generateyf1:
name: generateyf1
generateyf2:
name: generateyf2
generateyf3:
name: generateyf3
generateyf4:
name: generateyf4
generateyf5:
name: generateyf5
generateyf6:
name: generateyf6
generateym1:
name: generateym1
generateym2:
name: generateym2
generateym3:
name: generateym3
generateym4:
name: generateym4
generateym5:
name: generateym5
generateym6:
name: generateym6
generateyp2:
name: generateyp2
generateyp3:
name: generateyp3
generateyp4:
name: generateyp4
tags: ["unused"]
generateyp5:
name: generateyp5
tags: ["unused"]
generateyp6:
name: generateyp6
tags: ["unused"]
generateyTemple:
name: generateyTemple
generateyv1:
name: generateyv1
generateyv2:
name: generateyv2
generateyv3:
name: generateyv3
generateyv4:
name: generateyv4
generateyv5:
name: generateyv5
generateyv6:
name: generateyv6
genericCondomEjaculation:
name: genericCondomEjaculation
genericGenders:
name: genericGenders
genglish:
description: |-
Prints `| + English`
tags: ["text"]
genital_sensitivity:
description: |-
Changes sensitivity of genitals by provided amount
`<<genital_sensitivity amount>>`
- **amount**: `number` - change to sensitivity
parameters:
- number
genitalarousal:
deprecatedSuggestions:
- <<arousal X "genitals">>
description: |-
Adds genitals-focused arousal to pc with appropriate modifiers
`<<genitalarousal change>>`
- **change**: `number` - +/- change to apply
tags: ["unused"]
genitals:
name: genitals
genitals_are:
name: genitals_are
genitalsandbreasts:
name: genitalsandbreasts
genitalsensitivity:
name: genitalsensitivity
GenitalShop:
name: GenitalShop
tags: ["unused"]
genitalsintegrity:
name: genitalsintegrity
tags: ["unused"]
genitalsplural:
description: |-
Prints a present indicative (are/is) for the worn `"genitals"` slot
tags: ["unused"]
genitalsruined:
description: |-
Destroys pc's genitals slot clothing, whether worn or carried
`<<genitalsruined noRebuy?>>`
- **noRebuy** _optional_: `boolean` - skip rebuying command (truthy)
- Defaults to `false`
parameters:
- "|+ bool"
genitalssend:
name: genitalssend
tags: ["unused"]
genitalstate:
name: genitalstate
genitalsthat:
description: |-
Prints plural/singular prose of that (those/that) for worn `"genitals"` slot
tags: ["unused", "text"]
genitalsundress:
name: genitalsundress
tags: ["unused"]
genitalswear:
name: genitalswear
genitalsword:
description: |-
Prints an indefinite article (a/an) if needed for worn genitals
tags: ["unused", "text"]
gentleman:
description: |-
Prints `gentleman` or `lady` depending on pc's appearance
See `<<lady>>`
tags: ["text"]
gentleman_npc:
description: |-
Prints `gentleman` or `lady` depending on $pronoun
See `<<lady_npc>>`
tags: ["text"]
gentleman_bnpc:
description: |-
Prints `gentleman` or `lady` depending on beast gender
See `<<lady_npc>>`
tags: ["text"]
gescape_chance:
description: |-
Prints `| + Escape chance`
tags: ["text"]
get_pillory_npc:
name: get_pillory_npc
getadultshopstate:
name: getadultshopstate
getChildrenIds:
name: getChildrenIds
getCombatDefaultsType:
name: getCombatDefaultsType
getCombatDefaultsTypeClear:
name: getCombatDefaultsTypeClear
getDoubleTargetList:
name: getDoubleTargetList
getDressedList:
description: Provides a list of the clothes the player is currently carrying in link form, so they can choose specific articles of clothing to put back on.
getfluidsfromgroup:
name: getfluidsfromgroup
getNNPCClothes:
name: getNNPCClothes
getPussyTargetList:
name: getPussyTargetList
tags: ["unused"]
getSameBirthChildrenIds:
name: getSameBirthChildrenIds
getTarget:
name: getTarget
getTargetList:
name: getTargetList
getUsedChildrenNames:
name: getUsedChildrenNames
tags: ["unused"]
gfabric:
description: |-
Prints `| + Fabric`
tags: ["text"]
gfarm:
description: |-
Prints `| + Farm yield`
tags: ["text"]
gfeetskill:
description: |-
Prints `| + Feet skill`
tags: ["text"]
gferocity:
description: |-
Adds 1 to wolfpack's ferocity and prints `| + Ferocity`
`$wolfpackferocity` is a measure of how fearce the wolfpack is where 0 is not at all (0-20)
See `<<lferocity>>`
tags: ["text"]
gfrustration:
name: gfrustration
ggadeviancy:
description: |-
Prints `| + + Alex's Deviancy`
tags: ["unused", "text"]
ggaggro:
description: |-
Prints `| + + Remy's Encroachment`
tags: ["text"]
ggapproval:
name: ggapproval
tags: ["text"]
ggarage:
description: |-
Prints `| + + Rage`
tags: ["text"]
ggarousal:
description: |-
Prints `| + + Arousal`
tags: ["text"]
ggathletics:
description: |-
Prints `| + + Athletics`
tags: ["text"]
ggattention:
description: |-
Prints `| + + Attention` if more prison attention can be gained today
`<<ggattention type>>`
- **type**: `string` - type of attention to check if should be visible
- `"prison"`
parameters:
- '|+ "prison"'
tags: ["text"]
ggawareness:
description: |-
Prints `| + + Awareness` or `| - - Innocence`
tags: ["text"]
ggbaton:
description: |-
Prints `| + + Baton proficiency`
tags: ["unused", "text"]
ggbeauty:
description: |-
Prints `| + + Beauty`
tags: ["unused", "text"]
ggbirdstockholm:
description: |-
Prints `| + + Stockholm Syndrome` if `$syndromebird` is not 1
tags: ["text"]
ggbodywriting:
description: |-
Prints `| + + Bodywriting`
tags: ["unused", "text"]
ggcardskill:
description: |-
Prints `| + + target's card skill` where target is an NPC
`<<ggcardskill target>>`
- **target**: `string` - target npc to print drink of
- %cardsDesc%
parameters:
- "%cards%"
tags: ["text"]
ggchaos:
description: |-
Prints `| + + Chaos`
tags: ["text"]
ggcombatcontrol:
description: |-
Prints `| + + Control`
tags: ["unused", "text"]
ggcomprehension:
name: ggcomprehension
tags: ["text"]
ggcontrol:
description: |-
Prints `| + + Control`
tags: ["text"]
ggcool:
description: |-
Prints `| + + Status`
tags: ["text"]
ggcorruption:
description: |-
Prints `| + + Corruption`
tags: ["text"]
ggcrime:
description: |-
Prints `| + + Crime X` where X is type of crime
`<<ggcrime type>>`
- **type**: `string` - type in setup.crimeNames
- %crimeTypesDesc%
parameters:
- "|+ %crimeTypes%"
tags: ["text"]
ggdanceskill:
description: |-
Prints `| + + Dance skill`
tags: ["unused", "text"]
ggdaring:
description: |-
Prints `| + + Daring`
tags: ["text"]
ggdef:
description: |-
Prints `| + + Defiance`
tags: ["unused", "text"]
ggdelinquency:
description: |-
Prints `| + + Delinquency`
tags: ["text"]
ggdom:
description: |-
Prints `| + + Dominance` or `| + + NPCName's Dominance` if provided
`<<ggdom NPCName?>>`
- **NPCName** _optional_: `string` - name to display as their dominance
- `"Robin"`: Displays "Confidence" instead
- `"Doren"`: Displays "Protectiveness" instead
parameters:
- "|+ text|string"
tags: ["text"]
ggdrugged:
description: |-
Prints `| + + Drugged`
tags: ["unused", "text"]
ggdrunk:
description: |-
Prints `| + + Alcohol`
tags: ["text"]
ggendear:
description: |-
Prints `| + + Endearment`
tags: ["text"]
ggenglish:
description: |-
Prints `| + + English`
tags: ["text"]
ggfarm:
description: |-
Prints `| + + Farm yield`
tags: ["text"]
ggfrustration:
name: ggfrustration
gggadeviancy:
description: |-
Prints `| + + + Alex's Deviancy`
tags: ["unused", "text"]
gggaggro:
description: |-
Prints `| + + + Remy's Encroachment`
tags: ["unused", "text"]
gggapproval:
name: gggapproval
tags: ["text"]
gggarage:
description: |-
Prints `| + + + Rage`
tags: ["text"]
gggarousal:
description: |-
Prints `| + + + Arousal`
tags: ["text"]
gggathletics:
description: |-
Prints `| + + + Athletics`
tags: ["unused", "text"]
gggattention:
description: |-
Prints `| + + + Attention` if more prison attention can be gained today
`<<gggattention type>>`
- **type**: `string` - type of attention to check if should be visible
- `"prison"`
parameters:
- '|+ "prison"'
tags: ["text"]
gggawareness:
description: |-
Prints `| + + + Awareness` or `| - - - Innocence`
tags: ["text"]
gggbaton:
description: |-
Prints `| + + + Baton proficiency`
tags: ["unused", "text"]
gggbeauty:
description: |-
Prints `| + + + Beauty`
tags: ["unused", "text"]
gggbirdstockholm:
description: |-
Prints `| + + Stockholm Syndrome` if `$syndromebird` is not 1
tags: ["text"]
gggbodywriting:
description: |-
Prints `| + + + Bodywriting`
tags: ["text"]
gggcardskill:
description: |-
Prints `| + + + target's card skill` where target is an NPC
`<<ggcardskill target>>`
- **target**: `string` - target npc to print drink of
- %cardsDesc%
parameters:
- "%cards%"
tags: ["unused", "text"]
gggchaos:
description: |-
Prints `| + + + Chaos`
tags: ["text"]
gggcombatcontrol:
description: |-
Prints `| + + + Control`
tags: ["unused", "text"]
gggcomprehension:
name: gggcomprehension
tags: ["text"]
gggcontrol:
description: |-
Prints `| + + + Control`
tags: ["text"]
gggcool:
description: |-
Prints `| + + + Status`
tags: ["text"]
gggcorruption:
description: |-
Prints `| + + + Corruption`
tags: ["unused", "text"]
gggcrime:
description: |-
Prints `| + + + Crime X X` where X is type of crime
`<<gggcrime type>>`
- **type**: `string` - type in setup.crimeNames
- %crimeTypesDesc%
parameters:
- "|+ %crimeTypes%"
tags: ["text"]
gggdanceskill:
description: |-
Prints `| + + + Dance skill`
tags: ["unused", "text"]
gggdaring:
description: |-
Prints `| + + + Daring`
tags: ["unused", "text"]
gggdef:
description: |-
Prints `| + + + Defiance`
tags: ["unused", "text"]
gggdelinquency:
description: |-
Prints `| + + + Delinquency`
tags: ["text"]
gggdom:
description: |-
Prints `| + + + Dominance` or `| + + + NPCName's Dominance` if provided
`<<gggdom NPCName?>>`
- **NPCName** _optional_: `string` - name to display as their dominance
- `"Robin"`: Displays "Confidence" instead
- `"Doren"`: Displays "Protectiveness" instead
parameters:
- "|+ text|string"
tags: ["text"]
gggdrugged:
description: |-
Prints `| + + + Drugged`
tags: ["text"]
gggdrunk:
description: |-
Prints `| + + + Alcohol`
tags: ["unused", "text"]
gggendear:
description: |-
Prints `| + + + Endearment`
tags: ["text"]
gggenglish:
description: |-
Prints `| + + + English`
tags: ["text"]
gggescape_chance:
description: |-
Prints `| + + + Escape chance`
tags: ["text"]
gggfarm:
description: |-
Prints `| + + + Farm yield`
tags: ["text"]
ggggrace:
description: |-
Prints `| + + + Grace` if proper tier is met
`<<ggggrace tier?>>`
- **tier**: `string` - rank source, pc ranks equal or above this will not change grace
- `"monk"` | `"priest"` | `"bishop"`
parameters:
- '|+ "monk"|"priest"|"bishop"'
tags: ["text"]
ggghallucinogens:
description: |-
Prints `| + + + Hallucinogens`
tags: ["text"]
gggheat:
description: |-
Prints `| + + + Heat`
tags: ["text"]
ggghistory:
description: |-
Prints `| + + + History`
tags: ["unused", "text"]
ggghope:
description: |-
Prints `| + + + Hope`
tags: ["text"]
ggghousekeeping:
description: |-
Prints `| + + + Housekeeping` if below limit and `You're too skilled for this to improve your housekeeping` if above limit
`<<ggghousekeeping limit? silent?>>`
- **limit** _optional_: `number` - maximum housekeeping this task can raise to
- **silent** _optional_: `string` - does not print `You're too skilled for this to improve your housekeeping`
parameters:
- '|+ number |+ "silent"'
tags: ["unused", "text"]
ggghunger:
description: |-
Prints `| + + + Hunger`
tags: ["unused", "text"]
gggimpatience:
description: |-
Prints `| + + + Impatience`
tags: ["text"]
ggginterest:
description: |-
Prints `| + + + Interest`
tags: ["text"]
gggksuspicion:
description: |-
Prints `| + + + Jealousy`
tags: ["text"]
ggglewdity:
description: |-
Prints `| + + + Lewdity`
tags: ["unused", "text"]
ggglove:
description: |-
Prints `| + + + Love` or `| + + + NPCName's Love` if provided
`<<ggglove NPCName? simple?>>`
- **NPCName** _optional_: `string` - name to display as their love
- **simple** _optional_: `string` - skips NPC name and only prints love alias
parameters:
- '|+ text|string |+ "simple"'
tags: ["text"]
ggglust:
description: |-
Prints `| + + + Lust` or `| + + + NPCName's Lust` if provided
`<<ggglust NPCName?>>`
- **NPCName** _optional_: `string` - name to display as their lust
parameters:
- "|+ text|string"
tags: ["text"]
gggmaths:
description: |-
Prints `| + + + Maths`
tags: ["text"]
gggobey:
description: |-
Prints `| + + + Obedience`
tags: ["text"]
gggpain:
description: |-
Prints `| + + + Pain`
tags: ["text"]
gggperlove:
description: |-
Prints `| + + + Love` or `| + + + NPCName's Love` if provided, for persistent NPCs
`<<ggglove NPCName? simple?>>`
- **NPCName** _optional_: `string` - name to display as their love
- **simple** _optional_: `string` - skips NPC name and only prints love alias
parameters:
- '|+ text|string |+ "simple"'
tags: ["text"]
gggphysique:
description: |-
Prints `| + + + Physique`
tags: ["unused", "text"]
gggpound_status:
name: gggpound_status
tags: ["unused", "text"]
gggpurity:
description: |-
Prints `| + + + Purity`
tags: ["text"]
gggrace:
description: |-
Prints `| + + Grace` if proper tier is met
`<<gggrace tier?>>`
- **tier**: `string` - rank source, pc ranks equal or above this will not change grace
- `"monk"` | `"priest"` | `"bishop"`
parameters:
- '|+ "monk"|"priest"|"bishop"'
tags: ["text"]
gggreadiness:
name: gggreadiness
tags: ["text"]
gggreb:
description: |-
Prints `| + + + Rebelliousness`
tags: ["text"]
gggrespect:
description: |-
Prints `| + + + Respect` if proper tier is met
`<<gggrace tier?>>`
- **tier**: `string` - tier below which respect is changed
- `"scum"` | `"mate"`
tags: ["text"]
gggrtrauma:
description: |-
Prints `| + + + Robin's Trauma`, unless at max value
`<<gggrtrauma force?>>`
- **force** _optional_: `boolean` - prints even if trauma is 20
parameters:
- "|+ bool"
tags: ["unused", "text"]
gggsaltiness:
description: |-
Prints `| + + + Saltiness`
tags: ["unused", "text"]
gggsarousal:
name: gggsarousal
tags: ["unused"]
gggscience:
description: |-
Prints `| + + + Science`
tags: ["text"]
gggsecurity:
description: |-
Prints `| + + + Security`
tags: ["unused", "text"]
gggseduction:
description: |-
Prints `| + + + Seduction`
tags: ["unused", "text"]
gggshame:
description: |-
Prints `| + + + Shame`
tags: ["unused", "text"]
gggskulduggery:
description: |-
Prints `| + + + Skulduggery`
tags: ["unused", "text"]
gggslust:
description: |-
Prints `| + + + Sydney's Lust`
tags: ["unused", "text"]
gggspain:
name: gggspain
tags: ["unused"]
gggspurity:
description: |-
Prints `| + + + Sydney's Purity` or `| - - - Sydney's Corruption`
tags: ["unused", "text"]
gggstockholm:
description: |-
Prints `| + + + Stockholm Syndrome`
tags: ["text"]
gggstray_happiness:
description: |-
Prints `| + + + Stray contentment`
tags: ["text"]
gggstress:
description: |-
Prints `| + + + Stress`
tags: ["text"]
gggsuspicion:
description: |-
Prints `| + + + Suspicion`
tags: ["text"]
gggswimming:
description: |-
Prints `| + + + Swimming`
tags: ["unused", "text"]
gggtanned:
description: |-
Prints `| + + + Tan`
tags: ["text"]
gggtending:
description: |-
Prints `| + + + Tending`
tags: ["unused", "text"]
gggtiredness:
description: |-
Prints `| + + + Fatigue`
tags: ["text"]
gggtrauma:
description: |-
Prints `| + + + Trauma`
tags: ["text"]
gggtrust:
description: |-
Prints `| + + + Trust`
tags: ["text"]
gggwhip:
description: |-
Prints `| + + + Whip proficiency`
tags: ["unused", "text"]
gggwillpower:
description: |-
Prints `| + + + Willpower`
tags: ["text"]
gggworldcorruption:
description: |-
Prints `| + + + World Corruption`
tags: ["text"]
gggyearning:
description: |-
Prints `| + + + Yearning` or `| + + + ???`
tags: ["text"]
gghallucinogens:
description: |-
Prints `| + + Hallucinogens`
tags: ["text"]
ggheat:
description: |-
Prints `| + + Heat`
tags: ["text"]
gghistory:
description: |-
Prints `| + + History`
tags: ["text"]
gghope:
description: |-
Prints `| + + Hope`
tags: ["text"]
gghousekeeping:
description: |-
Prints `| + + Housekeeping` if below limit and `You're too skilled for this to improve your housekeeping` if above limit
`<<gghousekeeping limit? silent?>>`
- **limit** _optional_: `number` - maximum housekeeping this task can raise to
- **silent** _optional_: `string` - does not print `You're too skilled for this to improve your housekeeping`
parameters:
- '|+ number |+ "silent"'
tags: ["unused", "text"]
gghunger:
description: |-
Prints `| + + Hunger`
tags: ["unused", "text"]
ggimpatience:
description: |-
Prints `| + + Impatience`
tags: ["text"]
gginterest:
description: |-
Prints `| + + Interest`
tags: ["text"]
ggksuspicion:
description: |-
Prints `| + + Jealousy`
tags: ["text"]
gglewdity:
description: |-
Prints `| + + Lewdity`
tags: ["unused", "text"]
gglove:
description: |-
Prints `| + + Love` or `| + + NPCName's Love` if provided
`<<gglove NPCName? simple?>>`
- **NPCName** _optional_: `string` - name to display as their love
- **simple** _optional_: `string` - skips NPC name and only prints love alias
parameters:
- '|+ text|string |+ "simple"'
tags: ["text"]
gglust:
description: |-
Prints `| + + Lust` or `| + + NPCName's Lust` if provided
`<<gglust NPCName?>>`
- **NPCName** _optional_: `string` - name to display as their lust
parameters:
- "|+ text|string"
tags: ["text"]
ggmaths:
description: |-
Prints `| + + Maths`
tags: ["text"]
ggobey:
description: |-
Prints `| + + Obedience`
tags: ["text"]
ggpain:
description: |-
Prints `| + + Pain`
tags: ["text"]
ggperlove:
description: |-
Prints `| + + Love` or `| + + NPCName's Love` if provided, for persistent NPCs
`<<ggglove NPCName? simple?>>`
- **NPCName** _optional_: `string` - name to display as their love
- **simple** _optional_: `string` - skips NPC name and only prints love alias
parameters:
- '|+ text|string |+ "simple"'
tags: ["text"]
ggphysique:
description: |-
Prints `| + + Physique`
tags: ["text"]
ggpound_status:
name: ggpound_status
ggpurity:
description: |-
Prints `| + + Purity`
tags: ["text"]
ggrace:
description: |-
Prints `| + Grace` if proper tier is met
`<<ggrace tier?>>`
- **tier**: `string` - rank source, pc ranks equal or above this will not change grace
- `"monk"` | `"priest"` | `"bishop"`
parameters:
- '|+ "monk"|"priest"|"bishop"'
tags: ["text"]
ggreadiness:
name: ggreadiness
ggreb:
description: |-
Prints `| + + Rebelliousness`
tags: ["text"]
ggrespect:
description: |-
Prints `| + + Respect` if proper tier is met
`<<gggrace tier?>>`
- **tier**: `string` - tier below which respect is changed
- `"scum"` | `"mate"`
tags: ["text"]
ggrtrauma:
description: |-
Prints `| + + Robin's Trauma`, unless at max value
`<<ggrtrauma force?>>`
- **force** _optional_: `boolean` - prints even if trauma is 20
parameters:
- "|+ bool"
tags: ["unused", "text"]
ggsaltiness:
description: |-
Prints `| + + Saltiness`
tags: ["unused", "text"]
ggsarousal:
name: ggsarousal
tags: ["unused"]
ggscience:
description: |-
Prints `| + + Science`
tags: ["text"]
ggsecurity:
description: |-
Prints `| + + Security`
tags: ["text"]
ggseduction:
description: |-
Prints `| + + Seduction`
tags: ["unused", "text"]
ggshame:
description: |-
Prints `| + + Shame`
tags: ["unused", "text"]
ggskulduggery:
description: |-
Prints `| + + Skulduggery`
tags: ["unused", "text"]
ggslust:
description: |-
Prints `| + + Sydney's Lust`
tags: ["text"]
ggspain:
name: ggspain
ggspurity:
description: |-
Prints `| + + Sydney's Purity` or `| - - Sydney's Corruption`
tags: ["text"]
ggstockholm:
description: |-
Prints `| + + Stockholm Syndrome`
tags: ["text"]
ggstray_happiness:
description: |-
Prints `| + + Stray contentment`
tags: ["text"]
ggstress:
description: |-
Prints `| + + Stress`
tags: ["text"]
ggsuspicion:
description: |-
Prints `| + + Suspicion`
tags: ["text"]
ggswimming:
description: |-
Prints `| + + Swimming`
tags: ["unused", "text"]
ggtanned:
description: |-
Prints `| + + Tan`
tags: ["text"]
ggtending:
description: |-
Prints `| + + Tending`
tags: ["text"]
ggtiredness:
description: |-
Prints `| + + Fatigue`
tags: ["text"]
ggtrauma:
description: |-
Prints `| + + Trauma`
tags: ["text"]
ggtrust:
description: |-
Prints `| + + Trust`
tags: ["unused", "text"]
ggwalnut:
name: ggwalnut
ggwhip:
description: |-
Prints `| + + Whip proficiency`
tags: ["unused", "text"]
ggwillpower:
description: |-
Prints `| + + Willpower`
tags: ["text"]
ggworldcorruption:
description: |-
Prints `| + + World Corruption`
tags: ["text"]
ggyearning:
description: |-
Prints `| + + Yearning` or `| + + ???`
tags: ["text"]
ghallucinogens:
description: |-
Prints `| + Hallucinogens`
tags: ["text"]
ghandskill:
description: |-
Prints `| + Hand skill`
gharass:
description: |-
Prints `| Increases chance of harassment`
tags: ["text"]
gharmony:
description: |-
Adds 1 to wolfpack's harmony and prints `| + Harmony`
`$wolfpackharmony` is a measure of how harmonious the wolfpack is where 0 is not at all (0-20)
See `<<lharmony>>`
tags: ["text"]
gheat:
description: |-
Prints `| + Heat`
tags: ["text"]
ghistory:
description: |-
Prints `| + History`
tags: ["text"]
ghope:
description: |-
Prints `| + Hope`
tags: ["text"]
ghousekeeping:
description: |-
Prints `| + Housekeeping` if below limit and `You're too skilled for this to improve your housekeeping` if above limit
`<<ghousekeeping limit? silent?>>`
- **limit** _optional_: `number` - maximum housekeeping this task can raise to
- **silent** _optional_: `string` - does not print `You're too skilled for this to improve your housekeeping`
parameters:
- '|+ number |+ "silent"'
tags: ["text"]
ghunger:
description: |-
Prints `| + Hunger`
tags: ["unused", "text"]
giftSexToys:
name: giftSexToys
gimpatience:
description: |-
Prints `| + Impatience`
tags: ["text"]
ginsecurity:
description: |-
Prints `| + Insecurity` if acceptance hasn't been reached for specified part
`<<ginsecurity part amount?>>`
- **part**: `string` - part to gain insecurity in
- %insecurityTypesDesc%
- **amount** _optional_: `number` - number of +'s to add
parameters:
- "%insecurityTypes% |+ number"
tags: ["text"]
ginterest:
description: |-
Prints `| + Interest`
tags: ["text"]
girl:
name: girl
Girl:
name: Girl
girl_npc:
name: girl_npc
girlfriend:
description: |-
Prints the relationship title appropriate for the pc's gender, using `<<girl>>` as reference.
tags: ["text"]
girlfriend_npc:
name: girlfriend_npc
girls:
name: girls
gisland_tide:
name: gisland_tide
give_gift:
description: |-
Gives love interest named NPC a gift
Relies on `$gift` being set
`<<give_gift npcName>>`
- **npcName**: `string` - love interest NPC name
- %loveInterestDesc%
parameters:
- '%loveInterest%'
giveHarpyEggs:
description: |-
Sets the amount of eggs a harpy player will produce as part of their menstrual cycle and, if unfertilised, the number of days until they will be laid
giveNNPCnewstrapon:
name: giveNNPCnewstrapon
giveNPCCondom:
name: giveNPCCondom
giveNPCsextoy:
name: giveNPCsextoy
givestartclothing:
name: givestartclothing
gknowledge:
description: |-
Prints `| + Knowledge`
tags: ["text"]
gksuspicion:
description: |-
Prints `| + Jealousy`
tags: ["text"]
glans:
description: |-
Prints noun describing part of pc's penis depending on if in use
tags: ["text"]
glewdity:
description: |-
Prints `| + Lewdity`
tags: ["text"]
glove:
description: |-
Prints `| + Love` or `| + NPCName's Love` if provided
`<<glove NPCName? simple?>>`
- **NPCName** _optional_: `string` - name to display as their love
- **simple** _optional_: `string` - skips NPC name and only prints love alias
parameters:
- '|+ text|string |+ "simple"'
tags: ["text"]
glust:
description: |-
Prints `| + Lust` or `| + NPCName's Lust` if provided
`<<glust NPCName?>>`
- **NPCName** _optional_: `string` - name to display as their lust
parameters:
- "|+ text|string"
tags: ["text"]
gmaths:
description: |-
Prints `| + Maths`
tags: ["text"]
gmystery:
description: |-
Prints `| + ????`
tags: ["text"]
gnet:
description: |-
Prints `| + Net proficiency`
tags: ["text"]
gobey:
description: |-
Prints `| + Obedience`
tags: ["text"]
gobsession:
description: |-
Adds obsession to Ivory Wraith's state and prints `| + Obsession` with up to three `+`s based on size of change
`C.npc["Ivory Wraith"].lust` is used to measure Ivory Wraith's obsession (10-20 if `$wraith.state` is `"haunt"`, 0-20 otherwise)
`<<gobsession change?>>`
- **change** _optional_: `number` - amount to add
- Defaults to `1`
parameters:
- "|+ number"
goo:
name: goo
goocount:
name: goocount
goralskill:
description: |-
Prints `| + Oral skill`
tags: ["text"]
goxygen:
description: |-
Prints `| + Air`
tags: ["unused", "text"]
gpain:
description: |-
Prints `| + Pain`
tags: ["text"]
gpenileskill:
description: |-
Prints `| + Penile skill`
tags: ["unused", "text"]
gpenisacceptance:
description: |-
Adds acceptance to pc's state for appropriate penis size
`<<gpenisacceptance change>>`
- **change**: `number` - + change to apply
parameters:
- number
gperlove:
description: |-
Prints `| + Love` or `| + NPCName's Love` if provided, for persistent NPCs
`<<ggglove NPCName? simple?>>`
- **NPCName** _optional_: `string` - name to display as their love
- **simple** _optional_: `string` - skips NPC name and only prints love alias
parameters:
- '|+ text|string |+ "simple"'
tags: ["text"]
gphysique:
description: |-
Prints `| + Physique`
tags: ["text"]
gpound_status:
name: gpound_status
gpurity:
description: |-
Prints `| + Purity`
tags: ["text"]
gpursuit:
name: gpursuit
grace:
description: |-
Adds grace to pc's state
`$grace` is a measure of the church's endorsement of pc where -100 is against and 0 is neutral (-100-100)
`<<grace change tier?>>`
- **change**: `number` - +/- change to apply
- **tier** _optional_: `string` - rank source, pc ranks equal or above this will not change grace
- `"monk"` | `"priest"` | `"bishop"`
- Defaults to any rank
parameters:
- 'number |+ "monk"|"priest"|"bishop"'
grandpa:
description: |-
Prints grandma/grandpa
See <<Grandpa>> for capitalised prose
tags: ["text"]
Grandpa:
description: |-
Prints Grandma/Grandpa
See <<grandpa>> for uncapitalised prose
tags: ["text"]
greadiness:
name: greadiness
greb:
description: |-
Prints `| + Rebelliousness`
tags: ["text"]
grespect:
description: |-
Prints `| + Respect` if proper tier is met
`<<gggrace tier?>>`
- **tier**: `string` - tier below which respect is changed
- `"scum"` | `"mate"`
tags: ["text"]
groin:
description: |-
Prints genitals description through physically accessible clothing layers
tags: ["text"]
group:
description: |-
Prints summarised gender makeup of currently active npcs (ie, `men and women`)
See `<<enumeratedGroup>>` for numbers as well or `<<fullGroup>>` for a list
tags: ["text"]
grtrauma:
description: |-
Prints `| + Robin's Trauma`, unless at max value
`<<grtrauma force?>>`
- **force** _optional_: `boolean` - prints even if trauma is 20
parameters:
- "|+ bool"
tags: ["unused", "text"]
gsaltiness:
description: |-
Prints `| + Saltiness`
tags: ["unused", "text"]
gsarousal:
name: gsarousal
gschool:
description: |-
Prints `| + School`
tags: ["text"]
gscience:
description: |-
Prints `| + Science`
tags: ["text"]
gsecurity:
description: |-
Prints `| + Security`
tags: ["text"]
gseduction:
description: |-
Prints `| + Seduction`
tags: ["unused", "text"]
gshame:
description: |-
Prints `| + Shame`
tags: ["unused", "text"]
gskulduggery:
description: |-
Prints `| + Skulduggery`
tags: ["text"]
gslust:
description: |-
Prints `| + Sydney's Lust`
tags: ["text"]
gspain:
name: gspain
gspray:
description: |-
Prints `| + 1 pepper spray`
tags: ["text"]
gspraymax:
description: |-
Prints `| + 1 pepper spray capacity`
tags: ["text"]
gspurity:
description: |-
Prints `| + Sydney's Purity` or `| - Sydney's Corruption`
tags: ["text"]
gstockholm:
description: |-
Prints `| + Stockholm Syndrome`
tags: ["text"]
gstray_happiness:
description: |-
Prints `| + Stray contentment`
tags: ["text"]
gstress:
description: |-
Prints `| + Stress`
tags: ["text"]
gsuspicion:
description: |-
Prints `| + Suspicion`
tags: ["text"]
gswimming:
description: |-
Prints `| + Swimming`
tags: ["text"]
gsydneytoy:
description: |-
This widget examples all over the place
`<<gsydneytoy toyName>>`
- **toyName**: `string` - complete toy name
- `"dildo"` | `"length of anal beads"` | `"riding crop"` | `"flog"`
parameters:
- '"dildo"|"length of anal beads"|"riding crop"|"flog"'
gtanned:
description: |-
Prints `| + Tan`
tags: ["text"]
gtending:
description: |-
Prints `| + Tending`
tags: ["text"]
gthighskill:
description: |-
Prints `| + Thigh skill`
tags: ["text"]
gtiredness:
description: |-
Prints `| + Fatigue`
tags: ["text"]
gtorch:
name: gtorch
gtowerprogress:
name: gtowerprogress
gtrauma:
description: |-
Prints `| + Trauma`
tags: ["text"]
gtreasure:
description: |-
Prints `| Increases chance of finding treasure`
tags: ["text"]
gtrust:
description: |-
Prints `| + Trust`
tags: ["text"]
guard_skill_text:
name: guard_skill_text
guard_terms:
name: guard_terms
gvaginalskill:
description: |-
Prints `| + Vaginal skill`
tags: ["unused", "text"]
gwalnut:
name: gwalnut
gwarmth:
description: |-
Prints `| + Warmth`
gwhip:
description: |-
Prints `| + Whip proficiency`
tags: ["text"]
gwillpower:
description: |-
Prints `| + Willpower`
tags: ["text"]
gwood:
name: gwood
gworldcorruption:
description: |-
Prints `| + World Corruption`
tags: ["text"]
gworldcorruptionhard:
tags: ["text"]
gwylanChaseOptions:
name: gwylanChaseOptions
gwylanChastityRequest:
name: gwylanChastityRequest
gwylanClothesValentinesContents:
description: |-
Conversation with Gwylan regarding romance and the Valentine's Day clothing.
tags: ["text"]
gwylanCombatInit:
name: gwylanCombatInit
gwylanCommand:
description: |-
Prints argument 1 as text with Gwylan's unique text effect if the player is hypnotised at or above the level specified in argument 2
tags: ["text"]
gwylanDesc:
description: |-
Prints either "Gwylan" or "a/the mousy boy/girl" based on whether Gwylan has been met
`<<gwylanDesc formatting? formatting?>>`
- **formatting** _optional_: `string` - formatting to apply. Order does not matter
- `"cap"`: capitalise output, for when Gwylan is not met
- `"the"`: prints "the mousy boy/girl" instead of "a mousy boy/girl"
tags: ["text"]
gwylanGreeting:
name: gwylanGreeting
gwylanHuntEffects:
name: gwylanHuntEffects
gwylanHuntOptions:
name: gwylanHuntOptions
gwylanHuntStart:
name: gwylanHuntStart
gwylanHuntState:
name: gwylanHuntState
gwylanHypnoCanvas:
name: gwylanHypnoCanvas
gwylanHypnoEffect:
name: gwylanHypnoEffect
gwylanHypnoName:
name: gwylanHypnoName
gwylanHypnoNote:
name: gwylanHypnoNote
gwylanHypnosis:
description: |-
Inflicts a hypnosis trait with a duration.
`<<gwylanHypnosis hypnosisTrait duration level?>>`
- **hypnosisTrait**: `string` - hypnosis trait names
- %hypnosisTimedTypes%
- **duration**: `number` - duration in days
- **level** _optional_: `number` - for devotion, the level of the event for determining whether it causes any increase
parameters:
- '%hypnosisTimedTypes% &+ number |+ number'
gwylanitem:
name: gwylanitem
tags: ["unused"]
gwylanJournalItems:
name: gwylanJournalItems
gwylanKiss:
name: gwylanKiss
gwylanNobody:
name: gwylanNobody
gwylanOptions:
name: gwylanOptions
gwylanOptionsCafe:
name: gwylanOptionsCafe
gwylanOptionsClothing:
name: gwylanOptionsClothing
gwylanOptionsGift:
name: gwylanOptionsGift
gwylanOptionsLeave:
name: gwylanOptionsLeave
gwylanOptionsRequest:
name: gwylanOptionsRequest
gwylanOptionsService:
name: gwylanOptionsService
gwylanOptionsSpecial:
name: gwylanOptionsSpecial
gwylanPurgeEffect:
name: gwylanPurgeEffect
gwylanRequestEnd:
name: gwylanRequestEnd
gwylanRequestText:
name: gwylanRequestText
gwylanRescueApology:
name: gwylanRescueApology
gwylanRescueApologyEden:
description: |-
No description.
gwylanRescueNotice:
name: gwylanRescueNotice
gwylanRescueStats:
name: gwylanRescueStats
gwylanReunion:
description: |-
No description.
gwylanRitualActions:
name: gwylanRitualActions
gwylanRitualChecks:
name: gwylanRitualChecks
gwylanRitualEffects:
name: gwylanRitualEffects
gwylanRitualEnd:
name: gwylanRitualEnd
gwylanRitualOptions:
name: gwylanRitualOptions
gwylanRitualOrgasm:
name: gwylanRitualOrgasm
gwylanRitualPenetrate:
name: gwylanRitualPenetrate
gwylanRitualStart:
name: gwylanRitualStart
gwylanRitualTattooVision:
description: |-
No description.
gwylanRobin:
description: |-
No description.
gwylanSong:
description: |-
No description.
gwylanStalkInit:
description: |-
No description.
gwylanWillpowerDifficulty:
name: gwylanWillpowerDifficulty
gwylanWorshipActions:
name: gwylanWorshipActions
gwylanWorshipEffects:
name: gwylanWorshipEffects
gyearning:
description: |-
Prints `| + Yearning` or `| + ???`
tags: ["text"]
hair_data:
name: hair_data
haircheck:
name: haircheck
tags: ["unused"]
haircolourtext:
description: |-
Prints colour of `$haircolour` or `two-toned`
hairDescription:
name: hairDescription
hairDetails:
description: |-
Prints the current state of the player's hair.
The player's hair can grow from the top of their head to their feet.
name: hairDetails
hairDressersOptions:
name: hairDressersOptions
hairDressersOptionsSydney:
name: hairDressersOptionsSydney
hairdressersPricelist:
name: hairdressersPricelist
hairdressersReset:
name: hairdressersReset
hairdressersResetAlt:
name: hairdressersResetAlt
hairdressersSession:
name: hairdressersSession
hairejacstat:
name: hairejacstat
hairfringecolourtext:
description: |-
Prints colour of `$hairfringecolour` or `two-toned`
hairgelApply:
description: |-
Applies hairgel to the player, if their hands are not bound. Equips the handheld "hairgel" prop.
hairgelDesc:
description: |-
Replaces the contents of `#hairDesc` to reflect the current hairgel state
hairgelLinks:
description: |-
Prints the links used to apply hairgel
hairmapcolourtext:
description: |-
Prints colour corresponding to `setup.colours.hair_map`
Fallback behaviour changes if `_colour` is not set
`<<hairmapcolourtext colour>>`
- **colour**: `string` - colour to print
- `valid key` : name of colour in hair_map
- `text` : parameter is now fallback if `_colour` is not set
parameters:
- "text|string"
tags: ["temp"]
hairToFeatherColour:
name: hairToFeatherColour
halloweenkylar:
name: halloweenkylar
halloweenwhitney:
name: halloweenwhitney
hallucinogen:
description: |-
Adds hallucinogenic drugs to pc's system
`$hallucinogen` is a measure of hallucinogenic drugs in pc's system where 0 is none (0-1,000)
`<<hallucinogen change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
hallucinogencaption:
name: hallucinogencaption
hand_gag:
name: hand_gag
hand_section:
name: hand_section
hand_section_two:
name: hand_section_two
handdifficulty:
description: |-
Prints colour-coded adjective of hand action difficulty in current combat
tags: ["text"]
handejacstat:
name: handejacstat
handheldon:
name: handheldon
handheldruined:
description: |-
Ruin handheld item
`<<handheldruined noRebuy? propOnly?>>`
- **noRebuy** _optional_: `boolean` - do not rebuy item
- **propOnly** _optional_: `boolean` - only destroy prop
parameters:
- '|+ bool |+ bool'
handheldsend:
name: handheldsend
HandheldShop:
name: HandheldShop
handheldstrip:
name: handheldstrip
handheldundress:
name: handheldundress
handheldwear:
name: handheldwear
handholdingvirginitywarning:
description: |-
Prints `This action will take your handholding virginity` if handholding virginity can still be lost
Takes combat state into account to display starting pipe `| `
tags: ["text"]
handsActionsStruggleColumnRadio:
name: handsActionsStruggleColumnRadio
handsActionsStruggleRadio:
name: handsActionsStruggleRadio
handsActionsStruggleRadiobkp:
name: handsActionsStruggleRadiobkp
tags: ["unused"]
handsit:
description: |-
Prints an objective case pronoun (them/it) for worn `"hand"` slot
handskill:
description: |-
Adds hand skill to pc's state
`$handskill` is a measure of pc's proficiency using their hands where 0 is awkward (0-1,000)
`<<handskill change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
handskilluse:
name: handskilluse
handson:
name: handson
tags: ["unused"]
handsruined:
description: |-
Destroys pc's hands slot clothing, whether worn or carried
`<<handsruined noRebuy?>>`
- **noRebuy** _optional_: `boolean` - skip rebuying command (truthy)
- Defaults to `false`
parameters:
- "|+ bool"
handssend:
name: handssend
tags: ["unused"]
HandsShop:
name: HandsShop
handssteal:
name: handssteal
tags: ["unused"]
handsstrip:
name: handsstrip
handsstrugglefreebodypart:
name: handsstrugglefreebodypart
handstat:
name: handstat
handsthat:
description: |-
Prints plural/singular prose of that (those/that) for worn `"hands"` slot
tags: ["unused"]
handsundress:
name: handsundress
handswear:
name: handswear
handtext:
description: |-
Prints colour-coded adjective of active hand skill usage
tags: ["text"]
harper_intro:
name: harper_intro
harpy:
description: |-
Prints `| Harpy` or `| Bird` based on pc's hallucination state and bestiality toggle
tags: ["text"]
harpyTransform:
name: harpyTransform
harvest:
name: harvest
harvesteventend:
name: harvesteventend
harvestexposed:
name: harvestexposed
tags: ["unused"]
harvestquick:
name: harvestquick
harvestText:
name: harvestText
has:
description: |-
Prints plural/singular prose of has (have/has) for provided clothing slot
`<<has slot>>`
- **slot**: `string` - category of worn clothing to check
- %clothesTypesDesc%
parameters:
- "%clothesTypes%"
hatchUi:
name: hatchUi
hawkCaughtYouSpeech:
description: |-
Prints a variation on "Caught you." To be used when running from, and getting captured by, the Great Hawk`
tags: ["text"]
hawkChildActivity:
name: hawkChildActivity
hawkRescueApproachSentence:
description: |-
Prints a variation on "Salvation/terror descends," depending on `$syndromebird`
tags: ["text"]
hawkRescueSetup:
description: |-
Enables chance of rescue from the Great Hawk
hawkScreechDesc:
description: |-
Prints `A welcome/familiar, terrifying/terrifying screech`, dependent on `$syndromebird` and `C.npc["Great Hawk"].init` status
tags: ["text"]
hawkspeech:
description: |-
Prints unique combat lines for the Great Hawk
tags: ["text"]
hawkText:
description: |-
Prints `harpy` or `hawk`, depending on the player's beast settings
tags: ["text"]
hcChallengeMenu:
description: |-
Displays the various challenge options for the Hopeless Cycle, as checkboxes with labels and mouseover tooltips, based on argument
`<<hcChallengeMenu challenge>>`
- **challenge**: `string` - The challenge to set for the checkbox. Changes checkbox variable, text printed, colour and mouseover.
tags: ["text","inputs"]
hcChallengeRandomSelect:
description: |-
Picks a random amount of random Hopeless Cycle challenges, within a range determined by `<<hcChallengeRandomSliders>>`.
hcChallengeRandomSliders:
description: |-
Calls `<<rangeslider>>`, which is used to help select a minimum and maximum amount of Hopeless Cycle challenges to be randomly selected.
hcChallengeSummary:
description: |-
Displays the various challenges enabled, either before beginning or after completing the Hopeless Cycle, based on argument
`<<hcChallengeSummary ending?>>`
- **ending** _optional_: `string` - whether the widget is being used for the ending or not
tags: ["text"]
hcChallengeTierUpdate:
description: |-
Determines for each active Hopeless Cycle challenge if the ending obtained is a higher rank than the current best ending obtained and updates $hcChallengesCompleted accordingly
`<<hcChallengeTierUpdate ending>>`
- **ending**: `string` - Hopeless Cycle ending obtained
tags: ["stat"]
hcDetailsBestRun:
description: |-
Prints the names of all Hopeless Cycle challenges completed in a single run
`<<hcDetailsBestRun>>`
tags: ["text"]
hcDetailsTotal:
description: |-
Prints colour-coded names of all Hopeless Cycle challenges ever completed
`<<hcDetailsTotal>>`
tags: ["text"]
hcForest:
description: |-
Adjusts $hcForest. With "Nature's Encroachment" challenge, adjusts by 4; otherwise, adjusts by 5.
`<<hcForest back?>>`
- **back**: `string` - determines whether to increment positively or negatively. With argument, increments negatively
tags: ["stat"]
hcPrisonerHealth:
description: |-
Adjusts $prisoner.health based on argument.
`<<hcPrisonerHealth health penance?>>`
- **health**: `number` - +/- change to apply
- **penance** _optional_: `string` - with "penance" argument, "A Cruel Hand" challenge and negative health argument, health additionally decreased by 1
tags: ["stat"]
hcSuspicion:
description: |-
Adjusts $hc.suspicion based on argument. With "High-Strung" challenge, positive gains are doubled. With "Unforgiving" challenge, negative changes are halved
`<<hcSuspicion sus>>`
- **sus**: `number` - +/- change to apply
tags: ["stat"]
hcTimeDungeonDisplay:
description: |-
Prints a time display to put in links, in (X:XX) format. With "New Priests" challenge, time display is increased by 15
`<<hcTimeDungeonDisplay time?>>`
- **time** _optional_: `number` - +/- number of minutes. Defaults to 30
tags: ["text"]
hcTimeDungeonPass:
description: |-
Calls <<pass>>. With "New Priests" challenge, time passed is increased by 15
`<<hcTimeDungeonPass time?>>`
- **time** _optional_: `number` - +/- number of minutes. Defaults to 30
tags: ["stat"]
hcTimeTaskDisplay:
description: |-
Prints a time display to put in links, in (X:XX) format. With "Work Ethic" challenge, time display is multiplied by 1.5
`<<hcTimeTaskDisplay time?>>`
- **time** _optional_: `number` - +/- number of minutes. Defaults to 60
tags: ["text"]
hcTimeTaskPass:
description: |-
Calls <<pass>>. With "Work Ethic" challenge, time passed is multiplied by 1.5
`<<hcTimeTaskPass time?>>`
- **time**_optional_: `number` - +/- number of minutes. Defaults to 60
tags: ["stat"]
hcWash:
description: |-
Adjusts .dirty property of water item in Hopeless Cycle by 1. With "Inefficient Cleaning" challenge, adjusts property by 2
`<<hcWash>>`
tags: ["stat"]
he:
description: |-
Prints singular pronoun of current npc (he/she/they)
See `<<He>>` for start of sentence introduction or `<<He_Short>>` for exact equivalent, just capitalised
Does not `<<personselect>>` to provided npc or behave like `<<He>>` for unnamed npcs. Consider refactoring to not personselect but allow unnamed
`<<he namedNPC?>>`
- **namedNPC** _optional_: `string` - name of npc to override pronoun for
- %namedNPCDesc%
parameters:
- "|+ %namedNPC%"
tags: ["text", "refactor"]
He:
description: |-
Prints capitalised singular pronoun of current npc (He/She/They), with full npc introduction if it is appropriate
See `<<he>>` for un-capitalised version or `<<He_Short>>` for no risk of full npc introduction
Does not `<<personselect>>` to provided unnamed npc. Consider refactoring to not personselect but allow unnamed
`<<He npcOverride?>>`
- **npcOverride** _optional_: `string|number` - npc to override pronoun for
- %namedNPCDesc%: Sets pronoun and outputs
- `number`: Switches selected npc to zero-based index and outputs
parameters:
- "|+ %namedNPC%|number"
tags: ["text", "refactor"]
He_Short:
description: |-
Prints capitalised singular pronoun of current npc (He/She/They)
See `<<he>>` for un-capitalised version or `<<He>>` for full npc introduction
Does not use arguments like `<<He>>` or `<<he>>`. Consider refactoring to match
parameters:
- ""
tags: ["text"]
head_down:
name: head_down
head_turn:
name: head_turn
head_up:
name: head_up
headbind:
name: headbind
headon:
name: headon
tags: ["unused"]
headruined:
description: |-
Destroys pc's head slot clothing, whether worn or carried
`<<headruined noRebuy?>>`
- **noRebuy** _optional_: `boolean` - skip rebuying command (truthy)
- Defaults to `false`
parameters:
- "|+ bool"
headsend:
name: headsend
tags: ["unused"]
HeadShop:
name: HeadShop
headsteal:
name: headsteal
tags: ["unused"]
headstrip:
name: headstrip
headundress:
name: headundress
headwear:
name: headwear
heat:
description: |-
Prints `| Heat`
tags: ["text"]
heatericon:
name: heatericon
heatRutDisplay:
name: heatRutDisplay
heelsUpdate:
name: heelsUpdate
heldSexToy:
name: heldSexToy
hers:
name: hers
Hers:
name: Hers
tags: ["unused"]
hes:
name: hes
Hes:
name: Hes
hideDisplay:
name: hideDisplay
hidelayer:
description: |-
Hide layer
[High-Level Model API Overview](%workspaceDir%/game/base-clothing/canvasmodel.twee#L2)
`<<hidelayer layerName>>`
- **layerName**: `string` - layer name corresponding to #CanvasModel.layer
parameters:
- "text|string"
tags: ["unused"]
hideTransformations:
description: |-
Use to temporarily hide all transformation parts
Stores the hidden transformation data into `$saveTransformations`
Use `<<showTransformations>>` to restore the parts this widget hid
tags: ["unused"]
high:
name: high
higheventend:
name: higheventend
highexposed:
name: highexposed
tags: ["unused"]
highLowCalculate:
name: highLowCalculate
tags: ["unused"]
highLowControls:
name: highLowControls
tags: ["unused"]
highLowEnd:
name: highLowEnd
tags: ["unused"]
highLowStart:
name: highLowStart
tags: ["unused"]
highquick:
name: highquick
him:
name: him
Him:
name: Him
himself:
description: |-
Prints singular reflexive pronoun for active npc
See `<<nnpc_himself>>` for alternative use or `<<bhimself>>` for beasts
Does not `<<personselect>>` to provided npc or behave like `<<He>>` for unnamed npcs. Consider refactoring to not personselect but allow unnamed
`<<himself namedNPC?>>`
- **namedNPC** _optional_: `string` - name of npc to override pronoun for
- %namedNPCDesc%
parameters:
- "|+ %namedNPC%"
tags: ["text", "refactor"]
hirsuteHideCheck:
name: hirsuteHideCheck
his:
description: |-
Prints singular possessive pronoun of current npc (his/her/their)
See `<<His>>` for capitalised prose
Does not `<<personselect>>` to provided npc or behave like `<<He>>` for unnamed npcs. Consider refactoring to not personselect but allow unnamed
`<<His namedNPC?>>`
- **namedNPC** _optional_: `string` - name of npc to override pronoun for
- %namedNPCDesc%
parameters:
- "|+ %namedNPC%"
tags: ["text", "refactor"]
His:
description: |-
Prints capitalised singular possessive pronoun of current npc (His/Her/Their)
See `<<his>>` for un-capitalised prose
Does not `<<personselect>>` to provided npc or behave like `<<He>>` for unnamed npcs. Consider refactoring to not personselect but allow unnamed
`<<His namedNPC?>>`
- **namedNPC** _optional_: `string` - name of npc to override pronoun for
- %namedNPCDesc%
parameters:
- "|+ %namedNPC%"
tags: ["text", "refactor"]
his1:
description: |-
Prints singular possessive pronoun after switching active npc to first npc (`NPCList[0]`)
One-indexed for legacy support. Eligible for deprecation.
tags: ["unused", "text"]
his2:
description: |-
Prints singular possessive pronoun after switching active npc to second npc (`NPCList[1]`)
One-indexed for legacy support. Eligible for deprecation.
tags: ["unused", "text"]
his3:
description: |-
Prints singular possessive pronoun after switching active npc to third npc (`NPCList[2]`)
One-indexed for legacy support. Eligible for deprecation.
tags: ["unused", "text"]
his4:
description: |-
Prints singular possessive pronoun after switching active npc to fourth npc (`NPCList[3]`)
One-indexed for legacy support. Eligible for deprecation.
tags: ["unused", "text"]
his5:
description: |-
Prints singular possessive pronoun after switching active npc to fifth npc (`NPCList[4]`)
One-indexed for legacy support. Eligible for deprecation.
tags: ["unused", "text"]
his6:
description: |-
Prints singular possessive pronoun after switching active npc to sixth npc (`NPCList[5]`)
One-indexed for legacy support. Eligible for deprecation.
tags: ["unused", "text"]
hisselect:
description: |-
Prints singular possessive pronoun after switching active npc (his/her/their)
`<<hisselect npcIndex>>`
- **npcIndex**: `number` - zero-based index of active npcs
parameters:
- number
tags: ["text"]
history_skill_up_text:
name: history_skill_up_text
historyrequired:
name: historyrequired
tags: ["unused"]
historyskill:
name: historyskill
hitchhike:
name: hitchhike
hitchhike_journey:
name: hitchhike_journey
hitchhike_journey_nude:
name: hitchhike_journey_nude
hitstat:
name: hitstat
home_effects:
name: home_effects
home_outside:
name: home_outside
homeBabyIntro:
name: homeBabyIntro
homeevent:
name: homeevent
homeeventalex:
name: homeeventalex
homeeventchef:
name: homeeventchef
homeeventgh:
name: homeeventgh
homeeventhopehi:
name: homeeventhopehi
homeeventhopelo:
name: homeeventhopelo
homeeventkylar:
name: homeeventkylar
homeeventnorm:
name: homeeventnorm
homeeventpond:
name: homeeventpond
homeeventrebhi:
name: homeeventrebhi
homeeventreblo:
name: homeeventreblo
homeeventriver:
name: homeeventriver
homeeventwhitney:
name: homeeventwhitney
homeeventwren:
name: homeeventwren
homeStudyOptions:
name: homeStudyOptions
hookah_init:
name: hookah_init
hookah_juice:
name: hookah_juice
hookah_master:
name: hookah_master
hope:
description: |-
Adds hope to orphanage
`$orphan_hope` is measure of hope levels in orphanage where negative is no hope and 0 is neutral (-50-50)
`<<hope change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
hopelessCycleBrandings:
name: hopelessCycleBrandings
hopelessCycleEffects:
name: hopelessCycleEffects
hopelessCycleEnd:
description: |-
Restores the values frozen by `<<hopelesscycleStart>>`
hopelessCycleEndings:
description: |-
Display what endings of the Hopeless Cycle scene the player has attained
hopelessCycleItemEffects:
description: |-
Effects that need to happen every passage in the Hopeless Cycle event
hopelessCycleItemLinks:
description: |-
Item management for Hopeless Cycle scene
hopelessCycleItemOptions:
description: |-
Item management for Hopeless Cycle scene
hopelessCycleLove:
description: |-
Prints 'Love' if revealed, with a number of plusses or minuses depending on argument
tags: ["text"]
hopelessCycleOutfit:
name: hopelessCycleOutfit
hopelessCyclePassout:
name: hopelessCyclePassout
hopelessCycleStart:
description: |-
Freezes the story variables, then morphs the pc into the gaoler
hopelessCycleStatus:
description: |-
Display the witch's status
hopelessCycleSus:
description: |-
Prints 'Suspicion' if revealed, with a number of plusses or minuses depending on argument
tags: ["text"]
horsegenitalsdesc:
description: |-
Prints adjective describing active horse's genital state
`<<horsegenitalsdesc size?>>`
- **size** _optional_: `boolean` - print size adjective instead of state (truthy)
parameters:
- "|+ bool|var|bareword"
hospitalparasite:
name: hospitalparasite
housekeeping:
description: |-
Adds housekeeping skill to pc up to a limit
`<<housekeeping amount maxSkill?>>`
- **amount**: `number` - amount of skill to gain
- **maxSkill** _optional_: `number` - max skill level achievable through this source
parameters:
- 'number |+ number'
housekeeping_exam_select:
description: |-
Chooses a recipe for the housekeeping exam
Sets results in `$chosen_recipe` as food key
housekeeping_text:
description: |-
Prints colour-coded description of how good the player is at housekeeping
tags: ["unused", "text"]
housekeepingdifficulty:
name: housekeepingdifficulty
housekeepingtext:
description: |-
Prints colour-coded adjective of active housekeeping skill usage
tags: ["unused", "text"]
humanChildActivity:
name: humanChildActivity
humanChildActivityNoToy:
name: humanChildActivityNoToy
humanSettings:
name: humanSettings
humanSplitBy:
name: humanSplitBy
humanSplitByFull:
name: humanSplitByFull
hunger:
description: |-
Adds hunger to pc's state
`$hunger` is a measure of pc's hunger in certain areas (Remy's farm, Great Hawk's tower, the island) where 0 is full and 2000 is starving (0-2,000)
`<<hunger change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
hunger_description:
name: hunger_description
hunter:
description: |-
Prints `hunter` or `hintress` depending on npc pronouns
tags: ["text"]
hygiene:
name: hygiene
tags: ["unused"]
hypnosisText:
description: |-
Wraps its argument in the css for hypnosis effects. If the hypnosis text animation is disabled, instead adds the hypnosis icon before and after its contents.
hypnotised:
name: hypnotised
hypothermiaClothes:
description: |-
Gives players up to two pieces of warm clothing after passing out of hypothermia: a top and bottom if exposed, potentially a hat or scarf otherwise. Sets temporary variables that can be referenced in the text.
- `_warmClothes`: prints a description (`any clothes`, `dry clothes`, `any bottoms`, `a jacket`, `a shirt`, `a scarf`, `a hat`, `something warmer`) of what the player's attire is lacking. Intended to be used in dialogue such as `You shouldn't be walking around without _warmClothes.`
- `_clothes`: array of clothes the player is given. Print `_clothes.join(" and ")` to print what the player is given.
- **Example:** `You're wearing <<= _clothes.join(" and ")` may print `You're wearing a winter jacket and jeans` or `You're wearing a scarf`
- `_wet`: if the player had wet clothes at the time of rescue
icon:
description: |-
Prints icon image from icon folder
`<<icon imagePath ...additionalClass?>>`
- **imagePath**: `string` - path to image file including extension relative to icon folder
- ...**whitespaceOption** _optional_: `string` - trim whitespace character at end of output
- `"nowhitespace"`: no trailing whitespace for formatting
- `"infront"`: layer icon in front of next icon
- `"flip"`: flipicon
- `"with-text"`: use 18x18 container instead of 30x30 to prevent inline icons from changing line spacing
parameters:
- text |+ ...("nowhitespace"|"infront"|"flip"|"with-text")
tags: ["img"]
iconUi:
description: |-
Prints image from UI folder, constrained to icon dimensions (30x30)
Most often used with sym and tf UI icons.
`<<iconUi imagePath ...options?>>`
- **imagePath**: `string` - path to image file including extension relative to UI folder
- ...**options** _optional_: `string` - additional options to modify formatting
- `"nowhitespace"`: no trailing whitespace for formatting
- `"infront"`: layer icon in front of next icon
- `"flip"`: flipicon
- `"with-text"`: use 18x18 container instead of 30x30 to prevent inline icons from changing line spacing
parameters:
- text |+ ...("nowhitespace"|"infront"|"flip"|"with-text")
tags: ["img"]
imgOpacity:
name: imgOpacity
importConfirmDetails:
name: importConfirmDetails
importDetailsDisplay:
description: |-
Validate and imports preset object into state
`<<importDetailsDisplay presetObject>>`
- **presetObject**: `object` - object to be imported
parameters:
- bareword|var
impregnateParasite:
name: impregnateParasite
imprison_leighton:
name: imprison_leighton
imprison_npc:
name: imprison_npc
tags: ["unused"]
imprison_whitney:
name: imprison_whitney
incgbreastinsecurity:
description: |-
Adds breast insecurity to the player and prints stat change
`<<incgbreastinsecurity change?>>`
- **change** _optional_: `number` - + change to apply
- Defaults to `5`
incggpenisinsecurity:
description: |-
Adds double amount of default penis insecurity to the player and prints stat change
tags: ["text"]
incgpenisinsecurity:
description: |-
Adds penis insecurity to the player and prints stat change
`<<incgpenisinsecurity change?>>`
- **change** _optional_: `number` - + change to apply
- Defaults to `10`
parameters:
- "|+ number"
tags: ["text"]
incompletePregnancy:
name: incompletePregnancy
incrementautosave:
name: incrementautosave
tags: ["unused"]
industrial:
name: industrial
industrialdrain:
name: industrialdrain
industrialdraineventend:
name: industrialdraineventend
industrialdrainlinks:
name: industrialdrainlinks
industrialdrainquick:
name: industrialdrainquick
industrialeventend:
name: industrialeventend
industrialex1:
name: industrialex1
industrialex2:
name: industrialex2
industrialex3:
name: industrialex3
industrialexposed:
name: industrialexposed
tags: ["unused"]
industrialquick:
name: industrialquick
infirmary_excused:
name: infirmary_excused
ingredientsExceptions:
description: |-
Restricts recipes in kitchen for cooking except those provided in the arg. `<<ingredientsExceptions "lemon">>` will exclude the use of every player item except lemons.
Sets temporary variable `_ingredientsExceptions`
Needs to be paired with `<<ingredientsSupplied>>` when various player supplies are not excluded
`<<ingredientsExceptions ...foodKey>>`
- ...**foodKey**: `string` - food key to add to supply
parameters:
- '...text|string'
tags: ["text"]
ingredientsSupplied:
description: |-
Makes a supply of ingredients available in a kitchen for cooking
Sets temporary variable `_ingredientsSupplied`
`<<ingredientsSupplied ...foodKey>>`
- ...**foodKey**: `string` - food key to add to supply
parameters:
- '...text|string'
tags: ["text"]
inheritOutfitAttributes:
name: inheritOutfitAttributes
init_bodywriting_objects:
name: init_bodywriting_objects
init_hairfringe:
name: init_hairfringe
init_hairsides:
name: init_hairsides
init_locations:
name: init_locations
init_names:
name: init_names
init_npc_clothes:
name: init_npc_clothes
init_tips:
name: init_tips
initAllNNPCVirginities:
description: |-
Sets all named NPC to canonical starting virginities
initEstatePersistent:
name: initEstatePersistent
initNNPCClothes:
name: initNNPCClothes
initNNPCstrapon:
name: initNNPCstrapon
initNNPCVirginity:
description: |-
Sets named NPC to canonical starting virginity
`<<initNNPCVirginity namedNPCIndex>>`
- **namedNPCIndex**: `number` - zero-based index of named NPC to be init'd
parameters:
- number
initnpc:
name: initnpc
initnpcgender:
name: initnpcgender
initnpcgendersingle:
name: initnpcgendersingle
initnpcskin:
name: initnpcskin
initnpcskinsingle:
name: initnpcskinsingle
initsettings:
name: initsettings
inittemple:
name: inittemple
initWraith:
name: initWraith
innocencecaption:
name: innocencecaption
insecurity:
description: |-
Adds insecurity to pc's state concerning specific part and applies effects
`$insecurity_X` are measures of insecure pc is towards specific traumas where 0 is not insecure (0-1,000)
`<<insecurity part change>>`
- **part**: `string` - part to gain insecurity in
- %insecurityTypesDesc%
- **change**: `number` - +/- change to apply
parameters:
- "%insecurityTypes% &+ number"
inspectionexpect:
name: inspectionexpect
insufficientQuantity:
description: |-
Prints warning that the player has too few items for the task
Example:
```
<<if $foodstuff["potato"].amount gte _requiredPotatoes>>
<<link [[Feed them potatoes|Farm Woodland Forage Reward]]>><<set $phase to "potato">><</link>>
<<else>>
<<insufficientQuantity "potatoes to satisfy them" "blue" "<<foodstufficon 'potato'>>">>
<</if>>
```
`<<insufficientQuantity statement color? icon?>>`
- **statement**: `string` - the relevant statement
- **color** _optional_: `string` - the colour of the text alert
- Defaults to `"blue"`
- **icon** _optional_: `string` - the associated icon for the text alert
- Leaving the argument blank will prevent an icon from being shown
name: insufficientQuantity
tags: ["text"]
insufficientStat:
description: |-
Prints warning that a stat is too low for the task
Example:
```
<<if hasSexStat("promiscuity", 3)>>
<<link [[Go further|Big Kiss]]>><<set $phase to 69>><</link>><<promiscuous3>>
<<else>>
<<insufficientStat "promiscuity" "to take things any further">>
<</if>>
```
`<<insufficientStat stat task color?>>`
- **stat**: `string` - relevant player stat
- `"promiscuity"` | `"exhibitionism"` | `"deviancy"` | `"purity"` | `"beauty"` | `"physique"` | `"willpower"` | `"awareness"` | `"skulduggery"` | `"dancing"` | `"swimming"` | `"athletics"` | `"tending"` | `"housekeeping"` | `"science"` | `"maths"` | `"english"` | `"history"` | `"submissive"` | `"trust"`| `"custom"`
- **task**: `string` - text explaining what action the player is barred from
- Should be the last half of a sentence.
- **color** _optional_: `string` - the colour of the text alert
- `"gold"` | `"green"` | `"teal"` | `"lblue"` | `"blue"` | `"purple"` | `"pink"` | `"red"` | `"lewd"`
- Defaults to `"blue"`
`<<insufficientStat stat task color customStat>>`
- **stat**: `string` - relevant player stat
- `"custom"`
- **task**: `string` - text explaining what action the player is barred from
- **color**: `string` - the colour of the text alert
- **customStat**: `string` - custom input to replace `stat` in the printed sentence.
parameters:
- >-
"promiscuity"|"exhibitionism"|"deviancy"|"purity"|"beauty"|"physique"|"willpower"|"awareness"|"skulduggery"|"dancing"|"swimming"|"athletics"|"tending"|"housekeeping"|"science"|"maths"|"english"|"history"|"submissive"|"trust"
&+ string
|+ "blue"|"gold"|"green"|"teal"|"lblue"|"purple"|"pink"|"red"|"lewd"
- '"custom" &+ string |+ "blue"|"gold"|"green"|"teal"|"lblue"|"purple"|"pink"|"red"|"lewd" |+ string'
tags: ["text"]
integrity:
name: integrity
integritycheck:
description: |-
To be used after damaging an item. Checks the current integrity level of all clothes and destroys the item if integrity is lte 0. Optionally prints `Your [clothing item has] ripped into scraps.`
`<<integritycheck text?>>`
- **text** _optional_: `string` - if text displays or not
- `"no_text"`: Doesn't print `Your [clothing item has] ripped into scraps.`
parameters:
- "|+ text|string"
tags: ["text"]
integrityWord:
description: |-
Use `integrityWord()` instead
name: integrityWord
tags: ["unused"]
internalejac:
name: internalejac
internet_photo:
description: |-
Adds a photo type to the list of ones circulating the internet
`<<internet_photo key>>`
- **key**: `string` - key to add to list
- `"whitney_roof_cute"` | `"whitney_roof_erotic"` | `"whitney_roof_erotic_pantiless"` | `"whitney_roof_erotic_panties"`
parameters:
- '"whitney_roof_cute"|"whitney_roof_erotic"|"whitney_roof_erotic_pantiless"|"whitney_roof_erotic_panties"'
internet_video:
description: |-
Adds a video type to the list of ones circulating the internet
`<<internet_video key>>`
- **key**: `string` - key to add to list
- `"whitney_roof_cute"` | `"whitney_roof_erotic"` | `"whitney_roof_erotic_pantiless"` | `"whitney_roof_erotic_panties"`
parameters:
- '"whitney_roof_cute"|"whitney_roof_erotic"|"whitney_roof_erotic_pantiless"|"whitney_roof_erotic_panties"'
is:
description: |-
Prints a present indicative (are/is) for the given clothing layer
Examples:
`Your _bottom.name <<is _bottom>> ripped into scraps.`
`Your $worn.upper.name <<is $worn.upper>> destroyed.` (presented for example's sake, please avoid hardcoded clothing references like this where possible. Refer to `<<outfitChecks>>.`)
`<<is clothingObject>>`
- **clothingObject**: `object` - Clothes object to be checked for integrity
parameters:
- "var|bareword |+ %clothesTypes%"
tags: ["text"]
island_end:
name: island_end
island_explore_end:
name: island_explore_end
island_init:
name: island_init
island_pass:
name: island_pass
island_rope_bow:
name: island_rope_bow
island_rope_end:
name: island_rope_end
island_rope_options:
name: island_rope_options
island_rope_shout:
name: island_rope_shout
island_tattoo:
name: island_tattoo
island_tattoo_check:
name: island_tattoo_check
island_tide:
name: island_tide
island_tide_options:
name: island_tide_options
island_tide_text:
name: island_tide_text
island_var_list:
name: island_var_list
tags: ["unused"]
islandBuildOption:
name: islandBuildOption
islander_language:
name: islander_language
it:
description: |-
Prints an objective case pronoun (them/it) for provided clothing slot
`<<it slot>>`
- **slot**: `string` - category of worn clothing to check
- %clothesTypesDesc%
parameters:
- "%clothesTypes%"
itis:
description: |-
Prints a pronoun/ present indicative pair (they are/it is) describing provided clothing slot
Pronoun is subjective case for usability
`<<itis slot>>`
- **slot**: `string` - category of worn clothing to check
- %clothesTypesDesc%
parameters:
- "%clothesTypes%"
journal:
name: journal
journalInventory:
description: |-
Displays the players products for sale, optionally filtered by produce type.
`<<journalInventory filter>>`
- **filter**: `string` - category of produce item to filter by
parameters:
- "string"
journalNotes:
name: journalNotes
journalNotesTextarea:
name: journalNotesTextarea
journalNotesTextareaSave:
name: journalNotesTextareaSave
kennel_intro:
name: kennel_intro
kennel_play_options:
name: kennel_play_options
kennel_treat_options:
name: kennel_treat_options
kennel_treats:
name: kennel_treats
king:
name: king
kissvirginitywarning:
description: |-
Prints `This action will take your first kiss` if your first kiss can still be lost
Takes combat state into account to display starting pipe `| `
tags: ["text"]
kissWraith:
name: kissWraith
kitchenDisplay:
description: |-
Prints display to make various types of learned recipes
Makes use of the widgets of a similar name to manage its display.
Use `<<set _hourRestriction to 21>>` to prevent excess use of the `Make 3`
kitchenDisplayOptions:
description: |-
Print options for kitchen display
kitchenDisplayRecipe:
description: |-
Prints recipe for kitchen display
kitchenDisplayRecipeDetail:
description: |-
Prints detailed recipe for kitchen display
kitchenDisplayRecipeMake:
description: |-
Prints restrictions for specific recipe for kitchen display
kitchenDisplayRecipes:
description: |-
Prints recipes for kitchen display
kitchenExit:
description: |-
Handles code when leaving kitchens, including unsetting `$recipeMade` and running `<<handhendon>>`.
kitchenFilter:
description: |-
Filters recipes by criteria and outputs to temporary variables
Uses `_foodSearch` to set `_recipeKeys` and `_recipeGroups`.
tags: ["temporary"]
knot_stat:
name: knot_stat
knownFoodRecipes:
description: |-
Prints known recipes that use a specific ingredient
`<<knownFoodRecipes ingredient>>`
- **ingredient**: `string` - ingredient to filter recipes by
kylar_abduction_end:
name: kylar_abduction_end
kylar_abduction_init:
name: kylar_abduction_init
kylar_abduction_rage:
name: kylar_abduction_rage
kylar_abduction_return:
name: kylar_abduction_return
kylar_parents_trust:
name: kylar_parents_trust
kylar_pet_name:
name: kylar_pet_name
kylar_stockholm_start:
name: kylar_stockholm_start
kylarangry:
name: kylarangry
kylarFinish:
name: kylarFinish
kylargag:
name: kylargag
kylarhallways:
name: kylarhallways
kylarLibrary:
description: |-
Prints partial passage of Kylar in the library
tags: ["text", "links"]
kylarLibraryStalkChat1:
description: |-
Prints paragraph chatting with Kylar in the library
tags: ["text"]
kylaroptions:
name: kylaroptions
kylaroptionsleave:
name: kylaroptionsleave
kylaroptionstext:
name: kylaroptionstext
kylarRandomUnderwear:
name: kylarRandomUnderwear
kylarReunionScene:
name: kylarReunionScene
kylarStockholmDefaultRape:
name: kylarStockholmDefaultRape
kylarwatched:
name: kylarwatched
lactation_pressure:
description: |-
Adds pressure to pc's lactation pressure
`$lactation_pressure` is counter for when pc starts lactating from daily effects (0-100, no change above 30)
`<<lactation_pressure change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
ladeviancy:
description: |-
Prints `| - Alex's Deviancy`
tags: ["unused", "text"]
Ladies_gentlemen:
description: |-
Prints formal plural pronouns based on random gender chance
lady:
description: |-
Prints `man` or `lady` depending on pc's appearance
See `<<gentleman>>`
tags: ["text"]
lady_npc:
description: |-
Prints `man` or `lady` depending on $pronoun
See `<<gentleman_npc>> or <<lord>>`
tags: ["text"]
laggro:
description: |-
Prints `| - Remy's Encroachment`
tags: ["text"]
lake:
name: lake
lakecampfirewarmth:
name: lakecampfirewarmth
lakeclothes:
name: lakeclothes
lakeeffects:
name: lakeeffects
lakeeventend:
name: lakeeventend
lakejourney:
name: lakejourney
lakequick:
name: lakequick
lakereturnjourney:
name: lakereturnjourney
landryoptions:
name: landryoptions
lapproval:
name: lapproval
larage:
description: |-
Prints `| - Rage`
tags: ["text"]
large_text:
description: |-
Prints appropriate `| Large body` descriptor that allowed this text option
tags: ["text"]
larousal:
description: |-
Prints `| - Arousal`
tags: ["text"]
lass:
description: |-
Prints `lad` or `lass` depending on pc's appearance
name: lass
Lass:
name: Lass
lassie:
description: |-
Prints `lad` or `lass`, prints `laddie` or `lassie` when Doren's affection gte 50
name: lassie
Lassie:
name: Lassie
laugh:
description: |-
Prints random appropriate laugh name for active NPC, which is either `laugh`, `chuckle` or `giggle`.
tags: ["text"]
lattention:
description: |-
Prints `| - Attention`
tags: ["unused", "text"]
laughs:
description: |-
Prints random appropriate laugh verb for active NPC, which is either `laughs`, `chuckles` or `giggles`.
tags: ["text"]
lawareness:
description: |-
Prints `| - Awareness` or `| + Innocence`
tags: ["text"]
lbirdstockholm:
description: |-
Prints `| - Stockholm Syndrome` if `$syndromebird` is not 1
tags: ["text"]
lcamp_concealment:
name: lcamp_concealment
lcardskill:
description: |-
Prints `| - target's card skill` where target is an NPC
`<<ggcardskill target>>`
- **target**: `string` - target npc to print drink of
- %cardsDesc%
parameters:
- "%cards%"
tags: ["text"]
lchaos:
description: |-
Prints `| - Chaos`
tags: ["unused", "text"]
lcombatcontrol:
description: |-
Prints `| - Control`
tags: ["unused", "text"]
lcontrol:
description: |-
Prints `| - Control`
tags: ["text"]
lcool:
description: |-
Prints `| - Status`
tags: ["text"]
lcorruption:
description: |-
Prints `| - Corruption`
ldaring:
description: |-
Prints `| - Daring`
tags: ["text"]
ldef:
description: |-
Prints `| - Defiance`
tags: ["unused", "text"]
ldelinquency:
description: |-
Prints `| - Delinquency`
tags: ["text"]
ldom:
description: |-
Prints `| - Dominance` or `| - NPCName's Dominance` if provided
`<<ldom NPCName?>>`
- **NPCName** _optional_: `string` - name to display as their dominance
- `"Robin"`: Displays "Confidence" instead
- `"Doren"`: Displays "Protectiveness" instead
parameters:
- "|+ text|string"
tags: ["text"]
learn_recipe:
description: |-
Gain the knowledge to make a certain food item
See `<<learn_recipe_all>>` for all
`<<learn_recipe foodKey>>`
- **foodKey**: `string` - food key to learn
parameters:
- 'text|string'
learn_recipe_all:
description: |-
Gain the knowledge to make all food items
See `<<learn_recipe>>` for specific recipe
leash:
name: leash
left_pursuit_grab:
name: left_pursuit_grab
leftactionBoundBanish:
name: leftactionBoundBanish
leftactionDifficulty:
name: leftactionDifficulty
leftactionDifficultyMachine:
name: leftactionDifficultyMachine
tags: ["unused"]
leftactionDifficultySelf:
name: leftactionDifficultySelf
leftactionDifficultyStruggle:
name: leftactionDifficultyStruggle
tags: ["unused"]
leftactionDifficultySwarm:
name: leftactionDifficultySwarm
tags: ["unused"]
leftactionDifficultyTentacle:
name: leftactionDifficultyTentacle
leftactionDifficultyVore:
name: leftactionDifficultyVore
tags: ["unused"]
leftActionInit:
name: leftActionInit
leftActionInitMachine:
name: leftActionInitMachine
leftActionInitSelf:
name: leftActionInitSelf
leftActionInitStruggle:
name: leftActionInitStruggle
leftActionInitSwarm:
name: leftActionInitSwarm
leftActionInitTentacle:
name: leftActionInitTentacle
leftActionInitVore:
name: leftActionInitVore
leftActions:
name: leftActions
leftactionSetupTentacle:
name: leftactionSetupTentacle
leftActionsMachine:
name: leftActionsMachine
leftActionsSelf:
name: leftActionsSelf
leftActionsStruggle:
name: leftActionsStruggle
leftActionsSwarm:
name: leftActionsSwarm
leftActionsTentacle:
name: leftActionsTentacle
leftActionsVore:
name: leftActionsVore
leftarmtentacledisable:
name: leftarmtentacledisable
leftcamerapose:
name: leftcamerapose
leftchoke:
name: leftchoke
leftclothesnew:
name: leftclothesnew
leftCondom:
name: leftCondom
leftcoverface:
name: leftcoverface
leftdefault:
name: leftdefault
leftdildowhack:
name: leftdildowhack
leftFixAndCoverActions:
name: leftFixAndCoverActions
leftgrabnew:
name: leftgrabnew
lefthandinit:
name: lefthandinit
tags: ["unused"]
lefthandpull:
name: lefthandpull
lefthypnosiswhack:
name: lefthypnosiswhack
leftNPCCondom:
name: leftNPCCondom
leftpenwhacknew:
name: leftpenwhacknew
leftplaynew:
name: leftplaynew
leftshacklewhack:
name: leftshacklewhack
leftspraynew:
name: leftspraynew
leftstealnew:
name: leftstealnew
leftUndressOther:
name: leftUndressOther
leg_position:
name: leg_position
leg_unbind:
name: leg_unbind
legbind:
name: legbind
legLock:
name: legLock
legLocked:
name: legLocked
legsit:
description: |-
Prints an objective case pronoun (them/it) for worn `"legs"` slot
legson:
name: legson
tags: ["unused"]
legsruined:
description: |-
Destroys pc's legs slot clothing, whether worn or carried
`<<legsruined noRebuy?>>`
- **noRebuy** _optional_: `boolean` - skip rebuying command (truthy)
- Defaults to `false`
parameters:
- "|+ bool"
legssend:
name: legssend
tags: ["unused"]
LegsShop:
name: LegsShop
legssteal:
name: legssteal
tags: ["unused"]
legsstrip:
name: legsstrip
legsthat:
description: |-
Prints plural/singular prose of that (those/that) for worn `"legs"` slot
legsundress:
name: legsundress
legswear:
name: legswear
lemonade_stand_options:
name: lemonade_stand_options
lendear:
description: |-
Prints `| - Endearment`
tags: ["text"]
lenglish:
description: |-
Prints `| - English`
tags: ["text"]
lescape_chance:
description: |-
Prints `| - Escape chance`
tags: ["text"]
lessonEnd:
description: |-
Prints end of lesson text for specified classes
`class` seems overly specific. Consider refactoring
`<<lessonEnd class pcAction?>>`
- **class**: `string` - class to end and update state on
- `"englishClassroom"` | `"historyClassroom"` | `"mathsClassroom"` | `"scienceClassroom"` | `"housekeepingClassroom"`
- **pcAction** _optional_: `string` - action pc should react from
- `"sleep"`: pc is woken up by end of class
parameters:
- '"englishClassroom"|"historyClassroom"|"mathsClassroom"|"scienceClassroom"|"housekeepingClassroom" |+ "sleep"'
tags: ["text", "refactor"]
lessonEvents:
description: |-
Pulls from appropriate event pool for class based on danger
`<<lessonEvents class dangerModifier?>>`
- **class**: `string` - class to pull events from
- `"english"` | `"history"` | `"maths"` | `"science"` | `"housekeeping"`
- **dangerModifier** _optional_: `number` - modifier to apply to danger calculations
- Defaults to `1`
parameters:
- '"english"|"history"|"maths"|"science"|"housekeeping" |+ number'
lewdity:
name: lewdity
lewditycaption:
name: lewditycaption
lewdness:
description: |-
Prints exposed player clothing or just `lewdness`
tags: ["text"]
lfarm:
description: |-
Prints `| - Farm yield`
lferocity:
description: |-
Adds 1 to wolfpack's ferocity and prints `| - Ferocity`
See `<<gferocity>>`
tags: ["text"]
lgrace:
description: |-
Prints `| - Grace` if proper tier is met
`<<lgrace tier?>>`
- **tier**: `string` - rank source, pc ranks equal or above this will not change grace
- `"monk"` | `"priest"` | `"bishop"`
parameters:
- '|+ "monk"|"priest"|"bishop"'
tags: ["text"]
lharass:
description: |-
Prints `| Decreases chance of harassment`
tags: ["text"]
lharmony:
description: |-
Subtracts 1 from wolfpack's harmony and prints `| - Harmony`
See `<<gharmony>>`
tags: ["text"]
lheat:
description: |-
Prints `| - Heat`
tags: ["text"]
lhistory:
description: |-
Prints `| - History`
tags: ["text"]
lhope:
description: |-
Prints `| - Hope`
tags: ["text"]
lhunger:
description: |-
Prints `| - Hunger`
tags: ["text"]
limpatience:
description: |-
Prints `| - Impatience`
tags: ["unused", "text"]
linkinformation:
description: |-
Prints information linking to external DoL resources
tags: ["text"]
linkradiogroup:
name: linkradiogroup
linterest:
description: |-
Prints `| - Interest`
tags: ["text"]
lisland_tide:
name: lisland_tide
listCrimeCheats:
name: listCrimeCheats
listdancingclothes:
name: listdancingclothes
listoutfits:
name: listoutfits
listoutfitsPassage:
name: listoutfitsPassage
listsleepoutfits:
name: listsleepoutfits
listswimoutfits:
name: listswimoutfits
livestock_bodywriting:
name: livestock_bodywriting
livestock_cows:
name: livestock_cows
livestock_end:
name: livestock_end
tags: ["unused"]
livestock_horse:
name: livestock_horse
livestock_horses:
name: livestock_horses
livestock_init:
name: livestock_init
livestock_lock_cleanup:
description: |-
Unsets farm lock variables
livestock_lock_desc:
description: |-
Prints description of farm lock strength
`$livestock.lock.strength` is a measure of how damaged the farm lock is where 100 is undamaged (0-100)
tags: ["text"]
livestock_obey:
description: |-
Adds obedience in being cattle to pc's state
`$livestock_obey` is a measure of how compliant the pc is being Remy's cattle where 0 is uncompliant (0-100)
`<<livestock_obey change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
livestock_obey_description:
name: livestock_obey_description
livestock_overhear:
name: livestock_overhear
livestock_patrol:
description: |-
Prints description of farm guard location and how effective your attempt to break the lock is
Decreases `$livestock.lock.strength` based on physique
`$livestock.lock.patrol` is a measure of how far the farmhand is where 0 is near (0-100)
tags: ["text", "stat"]
livestock_sleep:
name: livestock_sleep
livestockescape:
name: livestockescape
livestockFieldGrassEvents:
name: livestockFieldGrassEvents
livestockTiePunishment:
name: livestockTiePunishment
lksuspicion:
description: |-
Prints `| - Jealousy`
tags: ["text"]
lladeviancy:
description: |-
Prints `| - - Alex's Deviancy`
tags: ["unused", "text"]
llaggro:
description: |-
Prints `| - - Remy's Encroachment`
tags: ["text"]
llapproval:
name: llapproval
tags: ["unused"]
llarage:
description: |-
Prints `| - - Rage`
tags: ["unused", "text"]
llarousal:
description: |-
Prints `| - - Arousal`
tags: ["text"]
llattention:
description: |-
Prints `| - - Attention`
tags: ["unused", "text"]
llawareness:
description: |-
Prints `| - - Awareness` or `| + + Innocence`
tags: ["text"]
llbirdstockholm:
description: |-
Prints `| - - Stockholm Syndrome` if `$syndromebird` is not 1
tags: ["text"]
llcardskill:
description: |-
Prints `| - - target's card skill` where target is an NPC
`<<ggcardskill target>>`
- **target**: `string` - target npc to print drink of
- %cardsDesc%
parameters:
- "%cards%"
tags: ["text"]
llchaos:
description: |-
Prints `| - - Chaos`
tags: ["unused", "text"]
llcombatcontrol:
description: |-
Prints `| - - Control`
tags: ["unused", "text"]
llcontrol:
description: |-
Prints `| - - Control`
tags: ["text"]
llcool:
description: |-
Prints `| - - Status`
tags: ["text"]
llcorruption:
description: |-
Prints `| - - Corruption`
lldaring:
description: |-
Prints `| - - Daring`
tags: ["unused", "text"]
lldef:
description: |-
Prints `| - - Defiance`
tags: ["unused", "text"]
lldelinquency:
description: |-
Prints `| - - Delinquency`
tags: ["text"]
lldom:
description: |-
Prints `| - - Dominance` or `| - - NPCName's Dominance` if provided
`<<lldom NPCName?>>`
- **NPCName** _optional_: `string` - name to display as their dominance
- `"Robin"`: Displays "Confidence" instead
- `"Doren"`: Displays "Protectiveness" instead
parameters:
- "|+ text|string"
tags: ["text"]
llendear:
description: |-
Prints `| - - Endearment`
tags: ["text"]
llewdity:
description: |-
Prints `| - Lewdity`
tags: ["unused", "text"]
llfarm:
description: |-
Prints `| - - Farm yield`
llgrace:
description: |-
Prints `| - - Grace` if proper tier is met
`<<llgrace tier?>>`
- **tier**: `string` - rank source, pc ranks equal or above this will not change grace
- `"monk"` | `"priest"` | `"bishop"`
parameters:
- '|+ "monk"|"priest"|"bishop"'
tags: ["text"]
llheat:
description: |-
Prints `| - - Heat`
tags: ["text"]
llhope:
description: |-
Prints `| - - Hope`
tags: ["text"]
llhunger:
description: |-
Prints `| - - Hunger`
tags: ["text"]
llimpatience:
description: |-
Prints `| - - Impatience`
tags: ["unused", "text"]
llinterest:
description: |-
Prints `| - - Interest`
tags: ["text"]
llksuspicion:
description: |-
Prints `| - - Jealousy`
tags: ["text"]
llladeviancy:
description: |-
Prints `| - - - Alex's Deviancy`
tags: ["unused", "text"]
lllaggro:
description: |-
Prints `| - - - Remy's Encroachment`
tags: ["text"]
lllapproval:
name: lllapproval
tags: ["unused"]
lllarage:
description: |-
Prints `| - - - Rage`
tags: ["text"]
lllarousal:
description: |-
Prints `| - - - Arousal`
tags: ["text"]
lllattention:
description: |-
Prints `| - - - Attention`
tags: ["unused", "text"]
lllawareness:
description: |-
Prints `| - - - Awareness` or `| + + + Innocence`
tags: ["text"]
lllbirdstockholm:
description: |-
Prints `| - - - Stockholm Syndrome` if `$syndromebird` is not 1
tags: ["text"]
lllcardskill:
description: |-
Prints `| + + target's card skill` where target is an NPC
`<<ggcardskill target>>`
- **target**: `string` - target npc to print drink of
- %cardsDesc%
parameters:
- "%cards%"
tags: ["text"]
lllchaos:
description: |-
Prints `| - - - Chaos`
tags: ["unused", "text"]
lllcombatcontrol:
description: |-
Prints `| - - - Control`
tags: ["unused", "text"]
lllcontrol:
description: |-
Prints `| - - - Control`
tags: ["text"]
lllcool:
description: |-
Prints `| - - - Status`
tags: ["text"]
lllcorruption:
description: |-
Prints `| - - - Corruption`
llldaring:
description: |-
Prints `| - - - Daring`
tags: ["unused", "text"]
llldef:
description: |-
Prints `| - - - Defiance`
tags: ["unused", "text"]
llldelinquency:
description: |-
Prints `| - - - Delinquency`
tags: ["text"]
llldom:
description: |-
Prints `| - - - Dominance` or `| - - - NPCName's Dominance` if provided
`<<llldom NPCName?>>`
- **NPCName** _optional_: `string` - name to display as their dominance
- `"Robin"`: Displays "Confidence" instead
- `"Doren"`: Displays "Protectiveness" instead
parameters:
- "|+ text|string"
tags: ["text"]
lllendear:
description: |-
Prints `| - - - Endearment`
tags: ["unused", "text"]
lllewdity:
description: |-
Prints `| - - Lewdity`
tags: ["unused", "text"]
lllfarm:
description: |-
Prints `| - - - Farm yield`
tags: ["unused"]
lllgrace:
description: |-
Prints `| - - - Grace` if proper tier is met
`<<lllgrace tier?>>`
- **tier**: `string` - rank source, pc ranks equal or above this will not change grace
- `"monk"` | `"priest"` | `"bishop"`
parameters:
- '|+ "monk"|"priest"|"bishop"'
tags: ["text"]
lllheat:
description: |-
Prints `| - - - Heat`
tags: ["text"]
lllhope:
description: |-
Prints `| - - - Hope`
tags: ["text"]
lllhunger:
description: |-
Prints `| - - - Hunger`
tags: ["text"]
lllimpatience:
description: |-
Prints `| - - - Impatience`
tags: ["unused", "text"]
lllinterest:
description: |-
Prints `| - - - Interest`
tags: ["unused", "text"]
lllksuspicion:
description: |-
Prints `| - - - Jealousy`
tags: ["text"]
llllewdity:
description: |-
Prints `| - - - Lewdity`
tags: ["unused", "text"]
llllove:
description: |-
Prints `| - - - Love` or `| - - - NPCName's Love` if provided
`<<llllove NPCName?>>`
- **NPCName** _optional_: `string` - name to display as their love
parameters:
- "|+ text|string"
tags: ["text"]
llllust:
description: |-
Prints `| - - - Lust` or `| - - - NPCName's Lust` if provided
`<<llllust NPCName?>>`
- **NPCName** _optional_: `string` - name to display as their lust
parameters:
- "|+ text|string"
tags: ["text"]
lllobey:
description: |-
Prints `| - - - Obedience`
tags: ["text"]
lllove:
description: |-
Prints `| - - Love` or `| - - NPCName's Love` if provided
`<<lllove NPCName?>>`
- **NPCName** _optional_: `string` - name to display as their love
parameters:
- "|+ text|string"
tags: ["text"]
lllpain:
description: |-
Prints `| - - - Pain`
tags: ["text"]
lllperlove:
description: |-
Prints `| - - - Love` or `| - - - NPCName's Love` if provided, for persistent NPCs
`<<ggglove NPCName? simple?>>`
- **NPCName** _optional_: `string` - name to display as their love
- **simple** _optional_: `string` - skips NPC name and only prints love alias
parameters:
- '|+ text|string |+ "simple"'
tags: ["text"]
lllphysique:
description: |-
Prints `| - - - Physique`
tags: ["unused", "text"]
lllpound_status:
name: lllpound_status
lllpurity:
description: |-
Prints `| - - - Purity`
tags: ["text"]
lllreb:
description: |-
Prints `| - - - Rebelliousness`
tags: ["unused", "text"]
lllrespect:
description: |-
Prints `| - - - Respect`
tags: ["unused", "text"]
lllrtrauma:
description: |-
Prints `| - - - Robin's Trauma`, unless at min value
`<<lllrtrauma force?>>`
- **force** _optional_: `boolean` - prints even if trauma is 0
parameters:
- "|+ bool"
tags: ["unused", "text"]
lllsaltiness:
description: |-
Prints `| - - - Saltiness`
tags: ["unused", "text"]
lllsarousal:
name: lllsarousal
tags: ["unused"]
lllsecurity:
description: |-
Prints `| - - - Security`
tags: ["unused", "text"]
lllshame:
description: |-
Prints `| - - - Shame`
tags: ["unused", "text"]
lllslust:
description: |-
Prints `| - - - Sydney's Lust`
tags: ["text"]
lllspain:
name: lllspain
lllspurity:
description: |-
Prints `| - - - Sydney's Purity` or `| + + + Sydney's Corruption`
tags: ["unused", "text"]
lllstockholm:
description: |-
Prints `| - - - Stockholm Syndrome`
tags: ["text"]
lllstray_happiness:
description: |-
Prints `| - - - Stray contentment`
tags: ["unused", "text"]
lllstress:
description: |-
Prints `| - - - Stress`
tags: ["text"]
lllsuspicion:
description: |-
Prints `| - - - Suspicion`
tags: ["text"]
llltiredness:
description: |-
Prints `| - - - Fatigue`
tags: ["unused", "text"]
llltrauma:
description: |-
Prints `| - - - Trauma`
tags: ["text"]
llltrust:
description: |-
Prints `| - - - Trust`
tags: ["text"]
lllust:
description: |-
Prints `| - - Lust` or `| - - NPCName's Lust` if provided
`<<lllust NPCName?>>`
- **NPCName** _optional_: `string` - name to display as their lust
parameters:
- "|+ text|string"
tags: ["text"]
lllworldcorruption:
description: |-
Prints `| - - - World Corruption`
tags: ["text"]
lllyearning:
description: |-
Prints `| - - - Yearning` or `| - - - ???`
tags: ["text"]
llobey:
description: |-
Prints `| - - Obedience`
tags: ["text"]
llove:
description: |-
Prints `| - Love` or `| - NPCName's Love` if provided
`<<llove NPCName?>>`
- **NPCName** _optional_: `string` - name to display as their love
parameters:
- "|+ text|string"
tags: ["text"]
llpain:
description: |-
Prints `| - - Pain`
tags: ["text"]
llperlove:
description: |-
Prints `| - - Love` or `| - - NPCName's Love` if provided, for persistent NPCs
`<<ggglove NPCName? simple?>>`
- **NPCName** _optional_: `string` - name to display as their love
- **simple** _optional_: `string` - skips NPC name and only prints love alias
parameters:
- '|+ text|string |+ "simple"'
tags: ["text"]
llphysique:
description: |-
Prints `| - - Physique`
tags: ["unused", "text"]
llpound_status:
name: llpound_status
llpurity:
description: |-
Prints `| - - Purity`
tags: ["text"]
llreb:
description: |-
Prints `| - - Rebelliousness`
tags: ["unused", "text"]
llrespect:
description: |-
Prints `| - - Respect`
tags: ["text"]
llrtrauma:
description: |-
Prints `| - - Robin's Trauma`, unless at min value
`<<llrtrauma force?>>`
- **force** _optional_: `boolean` - prints even if trauma is 0
parameters:
- "|+ bool"
tags: ["unused", "text"]
llsaltiness:
description: |-
Prints `| - - Saltiness`
tags: ["unused", "text"]
llsarousal:
name: llsarousal
llsecurity:
description: |-
Prints `| - - Security`
tags: ["unused", "text"]
llshame:
description: |-
Prints `| - - Shame`
tags: ["unused", "text"]
llslust:
description: |-
Prints `| - - Sydney's Lust`
tags: ["unused", "text"]
llspain:
name: llspain
tags: ["unused"]
llspurity:
description: |-
Prints `| - - Sydney's Purity` or `| + + Sydney's Corruption`
tags: ["text"]
llstockholm:
description: |-
Prints `| - - Stockholm Syndrome`
tags: ["unused", "text"]
llstray_happiness:
description: |-
Prints `| - - Stray contentment`
tags: ["unused", "text"]
llstress:
description: |-
Prints `| - - Stress`
tags: ["text"]
llsuspicion:
description: |-
Prints `| - - Suspicion`
tags: ["text"]
lltiredness:
description: |-
Prints `| - - Fatigue`
tags: ["unused", "text"]
lltrauma:
description: |-
Prints `| - - Trauma`
tags: ["text"]
lltrust:
description: |-
Prints `| - - Trust`
tags: ["text"]
llust:
description: |-
Prints `| - Lust` or `| - NPCName's Lust` if provided
`<<llust NPCName?>>`
- **NPCName** _optional_: `string` - name to display as their lust
parameters:
- "|+ text|string"
tags: ["text"]
llworldcorruption:
description: |-
Prints `| - - World Corruption`
tags: ["text"]
llyearning:
description: |-
Prints `| - - Yearning` or `| - - ???`
tags: ["text"]
lmaths:
description: |-
Prints `| - Maths`
tags: ["text"]
loadAllFeats:
name: loadAllFeats
loadBoxIronmanCheater:
name: loadBoxIronmanCheater
loadBoxIronmanSafetyCancel:
name: loadBoxIronmanSafetyCancel
loadConfirm:
name: loadConfirm
loadconfirmcompat:
name: loadconfirmcompat
tags: ["unused"]
loadFiltersMenu:
name: loadFiltersMenu
loadingAllFeats:
name: loadingAllFeats
loadIronmanCheater:
name: loadIronmanCheater
loadIronmanSafetyCancel:
name: loadIronmanSafetyCancel
loadNPC:
description: |-
Loads persistent npc from named slot
See `<<saveNPC>>`, `<<updateNPC>>`, & `<<clearNPC>>`
`<<loadNPC slot name>>`
- **slot**: `number` - slot number to put npc data at (zero-based)
- **name**: `string` - key to load npc's data from
- spaces should be avoided if possible
parameters:
- "number &+ bareword|string|text"
loadShopOptions:
name: loadShopOptions
loadTempHairStyle:
name: loadTempHairStyle
loadWardrobeOptions:
name: loadWardrobeOptions
loadWarning:
name: loadWarning
loadwarningcompat:
name: loadwarningcompat
lobey:
description: |-
Prints `| - Obedience`
tags: ["text"]
lobsession:
description: |-
Subtracts obsession from Ivory Wraith's state and prints `| - Obsession` with up to three `-`s based on size of change
`C.npc["Ivory Wraith"].lust` is used to measure Ivory Wraith's obsession (10-20 if `$wraith.state` is `"haunt"`, 0-20 otherwise)
`<<lobsession change?>>`
- **change** _optional_: `number` - amount to subtract
- Defaults to `1`
parameters:
- "|+ number"
location:
name: location
location_text:
description: |-
Prints `$location` as noun
Out of date and underutilised. Consider refactoring
tags: ["text", "refactor"]
locker_suspicion:
description: |-
Adds suspicion of being the panty thief to pc's state
`$locker_suspicion` is a measure of how suspicious pc is in the eyes of the school where 0 is not (0-100)
`<<locker_suspicion change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
lockerclothes:
description: |-
Manages storage of handheld items in `lockers` location
See `<<lockers2>>` for second slot
lockerclothes2:
description: |-
Manages storage of handheld items in `lockers2` location
See `<<lockers>>` for first slot
lockerClothesAutoEquip:
description: |-
Automatically equips or swaps out to the handheld item in the school lockers
See `<<lockerClothesAutoOption>>` for the toggle and `<<lockerClothesAutoStore>>` for storing or swapping out your current handheld item in the school lockers
lockerClothesAutoOption:
description: |-
Toggle to automatically store, equip, and swap handheld items in the school lockers
See `<<lockerClothesAutoEquip>>` and `<<lockerClothesAutoStore>>` for functionality
lockerClothesAutoStore:
description: |-
Automatically stores or swaps out your current handheld item in the school lockers
See `<<lockerClothesAutoOption>>` for the toggle and `<<lockerClothesAutoEquip>>` for equipping or swapping out to the handheld item in the school lockers
lockerevent:
name: lockerevent
lockereventnext:
name: lockereventnext
lockereventpassages:
name: lockereventpassages
lockerkeyoptions:
description: |-
Shows the options for what to do with the locker key, in all cases of `:: Hallways Delinquent Lockers` where the player ends up with the key
loft_window_options:
name: loft_window_options
log:
name: log
tags: ["unused"]
loiter:
name: loiter
lord:
description: |-
Prints lord/lady
See <<lady_npc>>
See <<Lord>> for capitalised prose
tags: ["text"]
Lord:
description: |-
Prints Lord/Lady
See <<lord>> for uncapitalised prose
tags: ["text"]
loveInterest:
name: loveInterest
loveInterestAdd:
description: |-
adds the NPC as an active love interest if there are any love interest slots available, and displays a message notifying.
`<<loveInterestAdd npcName>>`
- **npcName**: `string` - love interest NPC name
- %loveInterestDesc%
parameters:
- '%loveInterest% |+ "consensual"'
loveInterestFunction:
name: loveInterestFunction
loveInterestRemove:
description: |-
removes the NPC as an active love interest, and displays a message notifying. Shifts other LI slots down to fill.
`<<loveInterestRemove npcName>>`
- **npcName**: `string` - love interest NPC name
- %loveInterestDesc%
parameters:
- '%loveInterest%'
lowerhas:
description: |-
Prints plural/singular prose of has (have/has) for worn `"lower"` slot
lowerintegrity:
name: lowerintegrity
tags: ["unused"]
lowerit:
description: |-
Prints an objective case pronoun (them/it) for worn `"lower"` slot
loweritis:
description: |-
Prints a pronoun/ present indicative pair (they are/it is) describing worn `"lower"` slot
loweron:
name: loweron
lowerplural:
description: |-
Prints a present indicative (are/is) for the worn `"lower"` slot
lowerruined:
description: |-
Destroys pc's lower slot clothing, whether worn or carried
`<<lowerruined noRebuy?>>`
- **noRebuy** _optional_: `boolean` - skip rebuying command (truthy)
- Defaults to `false`
parameters:
- "|+ bool"
lowersend:
name: lowersend
lowerslither:
name: lowerslither
tags: ["unused"]
lowersteal:
name: lowersteal
lowerstrip:
name: lowerstrip
lowerthat:
description: |-
Prints plural/singular prose of that (those/that) for worn `"lower"` slot
tags: ["unused"]
lowerundress:
name: lowerundress
lowerwear:
name: lowerwear
lowerwet:
description: |-
Adds wetness to pc's lower clothing state
`$lowerwet` is a measure of how wet pc's lower clothing is where 0 is dry (0-200)
`$lowerwetstate` is a measure of effects due to wetness of pc's lower clothing where 0 is dry (0-3)
Over clothes don't take into account wetness. Consider refactoring to expand
`<<lowerwet change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
tags: ["refactor"]
loxygen:
description: |-
Prints `| - Oxygen`
tags: ["text"]
lpain:
description: |-
Prints `| - Pain`
tags: ["text"]
lperlove:
description: |-
Prints `| - Love` or `| - NPCName's Love` if provided, for persistent NPCs
`<<ggglove NPCName? simple?>>`
- **NPCName** _optional_: `string` - name to display as their love
- **simple** _optional_: `string` - skips NPC name and only prints love alias
parameters:
- '|+ text|string |+ "simple"'
tags: ["text"]
lphysique:
description: |-
Prints `| - Physique`
tags: ["unused", "text"]
lpound_status:
name: lpound_status
lpurity:
description: |-
Prints `| - Purity`
tags: ["text"]
lpursuit:
name: lpursuit
lreb:
description: |-
Prints `| - Rebelliousness`
tags: ["text"]
lrespect:
description: |-
Prints `| - Respect`
tags: ["text"]
lrtrauma:
description: |-
Prints `| - Robin's Trauma`, unless at min value
`<<lrtrauma force?>>`
- **force** _optional_: `boolean` - prints even if trauma is 0
parameters:
- "|+ bool"
tags: ["unused", "text"]
lsaltiness:
description: |-
Prints `| - Saltiness`
tags: ["unused", "text"]
lsarousal:
name: lsarousal
lscience:
description: |-
Prints `| - Science`
tags: ["text"]
lsecurity:
description: |-
Prints `| - Security`
tags: ["text"]
lshame:
description: |-
Prints `| - Shame`
tags: ["unused", "text"]
lslust:
description: |-
Prints `| - Sydney's Lust`
tags: ["text"]
lspain:
name: lspain
lspurity:
description: |-
Prints `| - Sydney's Purity` or `| + Sydney's Corruption`
tags: ["text"]
lstockholm:
description: |-
Prints `| - Stockholm Syndrome`
tags: ["unused", "text"]
lstray_happiness:
description: |-
Prints `| - Stray contentment`
tags: ["unused", "text"]
lstress:
description: |-
Prints `| - Stress`
tags: ["text"]
lsuspicion:
description: |-
Prints `| - Suspicion`
tags: ["text"]
ltiredness:
description: |-
Prints `| - Fatigue`
tags: ["text"]
ltorch:
name: ltorch
ltowerprogress:
name: ltowerprogress
ltrauma:
description: |-
Prints `| - Trauma`
tags: ["text"]
ltreasure:
description: |-
Prints `| Increases chance of finding treasure`
tags: ["unused", "text"]
ltrust:
description: |-
Prints `| - Trust`
tags: ["text"]
lubePrice:
name: lubePrice
lustfulCheck:
description: |-
Increases player's progress towards gaining the lustful trait if wearing the correct set of clothes.
lustfulUpdate:
description: |-
Applies the feminising effects of worn bimbo clothes and the masculinising effects of worn pimp clothes.
luxuryTooltip:
name: luxuryTooltip
lwalnut:
name: lwalnut
lwood:
name: lwood
tags: ["unused"]
lworldcorruption:
description: |-
Prints `| - World Corruption`
tags: ["text"]
lworldcorruptionhard:
tags: ["text"]
lyearning:
description: |-
Prints `| - Yearning` or `| - ???`
tags: ["text"]
ma:
name: ma
Ma:
name: Ma
maam:
description: |-
Prints `sir` or `ma'am` from `$pronoun`, the pronoun of the NPC last selected by `<<personX>>` (`$NPCList[$index].pronoun`) Use `<<psir>>` for the PC
tags: ["text"]
Maam:
description: |-
Prints capitalised `Sir` or `Ma'am` from `$pronoun`, the pronoun of the NPC last selected by `<<personX>>` (`$NPCList[$index].pronoun`).
Use `<<pSir>>` for the PC
tags: ["text"]
machine_actions:
name: machine_actions
machine_anal_disable:
name: machine_anal_disable
machine_arm_chains_disable:
name: machine_arm_chains_disable
machine_combat:
name: machine_combat
machine_damage:
name: machine_damage
machine_effects:
name: machine_effects
machine_end:
name: machine_end
machine_init:
name: machine_init
machine_leg_chains_disable:
name: machine_leg_chains_disable
machine_speed:
name: machine_speed
machine_state:
name: machine_state
machine_vaginal_disable:
name: machine_vaginal_disable
machine_violent_arms:
name: machine_violent_arms
machine_violent_legs:
name: machine_violent_legs
make_recipe:
description: |-
Convert held ingredients into a new food item
`<<make_recipe foodKey multiplier?>>`
- **foodKey**: `string` - food key to make
- **multiplier** _optional_: `number`
- Defaults to `1`
parameters:
- "text|string |+ number"
makeAbomination:
name: makeAbomination
makeAwareOfDetails:
name: makeAwareOfDetails
makeupPresets:
name: makeupPresets
makeupPresetsItem:
name: makeupPresetsItem
male:
name: male
maleChanceSplitControls:
name: maleChanceSplitControls
man:
name: man
man-chased:
name: man-chased
man-combat:
name: man-combat
man-pursuit:
name: man-pursuit
man-stalk:
name: man-stalk
managePill:
name: managePill
tags: ["unused"]
managerLove:
name: managerLove
mancombat_choke:
name: mancombat_choke
mancombat_strangle:
name: mancombat_strangle
manend:
description: |-
Clears speech variables related to man combat
Superseded by `<<endcombat>>`
maninit:
name: maninit
mannequin:
name: mannequin
mannequinHairdresser:
name: mannequinHairdresser
manspeech:
name: manspeech
map:
name: map
mapLocations:
name: mapLocations
marketFilter:
name: marketFilter
marketStockDisplay:
description: |-
Prints display to manage the selling of items to customers. Makes use of the widgets of a similar name to manage its display.
tags: ["text", "links"]
marketStockDisplayItem:
name: marketStockDisplayItem
marketStockDisplayItemDetail:
name: marketStockDisplayItemDetail
marketStockDisplayItems:
name: marketStockDisplayItems
masochism:
description: |-
Adds masochism to pc's state
`$masochism` is a measure of pc's progression towards being masochistic where 0 is no progress (0-1,000)
`<<masochism change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
mason_actions:
name: mason_actions
mason_greet:
name: mason_greet
mason_greet_lust:
name: mason_greet_lust
masopain:
description: |-
Adds pain and corresponding arousal to pc's state regardless of whether they're masochistic
Balance is different than regular `<<pain>>` and cannot actually increase masochism. Consider refactoring
`<<masopain change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
tags: ["refactor"]
master:
description: |-
Prints `master` or `mistress` depending on npc pronouns
tags: ["text"]
Master:
description: |-
Prints `Master` or `Mistress` depending on npc pronouns
tags: ["text"]
masturbationactions:
name: masturbationactions
masturbationAudienceIncrement:
description: |-
Generates new masturbation audience member if less than max
`<<masturbationAudienceIncrement type?>>`
- **type** _optional_: `string` - type of audience member to generate
- `"student"`: audience member is a student
parameters:
- '|+ "student"'
masturbationbowl:
name: masturbationbowl
masturbationbowlimage:
name: masturbationbowlimage
masturbationControls:
name: masturbationControls
masturbationeffects:
name: masturbationeffects
masturbationSlimeControl:
name: masturbationSlimeControl
masturbationStallInterrupt:
name: masturbationStallInterrupt
masturbationstart:
name: masturbationstart
masturbationStopControls:
name: masturbationStopControls
maths_skill_up_text:
name: maths_skill_up_text
mathsLessonEnd:
name: mathsLessonEnd
mathsLessonEvent:
name: mathsLessonEvent
mathsphone:
name: mathsphone
mathsprojectfinish:
name: mathsprojectfinish
mathsprojectstart:
name: mathsprojectstart
mathsskill:
name: mathsskill
mathsWhitneyAttendChance:
name: mathsWhitneyAttendChance
mathsWhitneyGropeOrgasm:
name: mathsWhitneyGropeOrgasm
maxDefaultActionSetsclamp:
name: maxDefaultActionSetsclamp
tags: ["unused"]
maze_basilisk:
name: maze_basilisk
maze_end:
name: maze_end
maze_init:
name: maze_init
measuringcharmsimage:
name: measuringcharmsimage
meditateoptions:
name: meditateoptions
meek:
name: meek
meetingattention:
name: meetingattention
meetingmolestactions:
name: meetingmolestactions
meetingpetactions:
name: meetingpetactions
menstruationCycle:
name: menstruationCycle
menstruationCycleState:
name: menstruationCycleState
mer:
name: mer
mereventend:
name: mereventend
merexposed:
name: merexposed
tags: ["unused"]
merquick:
name: merquick
methodical_guard:
name: methodical_guard
middleruined:
description: |-
Destroys pc's upper and lower slot clothing, whether worn or carried
milk_amount:
description: |-
Adds milk to pc's milk supply
`$milk_amount` is the current pc milk amount remaining
`change` is technically optional. Consider refactoring
`<<milk_amount change?>>`
- **change**: `number` - +/- change to apply
- if not provided, just updates milk effects
parameters:
- number
milkTrait:
description: |-
Prints `| Milk Enthusiast` or `| Milk Addict` depending on pc's `$submissive`
tags: ["unused", "text"]
milkvolume:
description: |-
Adds milk to pc's milk capacity with appropriate checks
`$milkvolume` is the current maximum pc milk capacity (0-3,000)
`<<milkvolume change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
mines_crystals:
name: mines_crystals
mines_end:
name: mines_end
mines_init:
name: mines_init
mines_suspicion:
name: mines_suspicion
mines_suspicion_text:
name: mines_suspicion_text
mirror:
description: |-
Prints wrapper for mirror options
`<<mirror type?>>`
- **type** _optional_: `string` - type of mirror to look into
- `"mirror"` | `"reflection"` | `"water"`
- Defaults to `"mirror"`
parameters:
- '|+ "mirror"|"reflection"|"water"'
tags: ["dom", "text"]
mirrorAppearance:
name: mirrorAppearance
mirrorAppearancePregnancy:
name: mirrorAppearancePregnancy
mirrorBodywriting:
description: |-
Prints all bodywritings for given pc state
`<<mirrorBodywriting state>>`
- **state**: `string` - current state of the bodywriting
- `"visible"` | `"hidden"`
parameters:
- '"visible"|"hidden"'
tags: ["text", "dom"]
mirrorDisplay:
name: mirrorDisplay
mirrorGender:
description: |-
Prints contributing factors determining pc's gendered appearance
tags: ["text", "dom", "links"]
mirrorHair:
name: mirrorHair
mirrorhairControls:
name: mirrorhairControls
mirrorhairdisplay:
name: mirrorhairdisplay
mirrorhairdisplayClick:
name: mirrorhairdisplayClick
mirrorhairdisplayElements:
name: mirrorhairdisplayElements
mirrorhairdisplayFilter:
name: mirrorhairdisplayFilter
mirrorhairdisplayLinks:
name: mirrorhairdisplayLinks
mirrorhairdisplaySave:
name: mirrorhairdisplaySave
mirrorhairOptions:
name: mirrorhairOptions
mirrorHairSave:
name: mirrorHairSave
mirrorHairSaveOptions:
name: mirrorHairSaveOptions
mirrorHairTraitList:
name: mirrorHairTraitList
mirrorhairTraits:
name: mirrorhairTraits
mirrorMakeup:
name: mirrorMakeup
mirrorMakeupPart:
name: mirrorMakeupPart
mirrorMenu:
name: mirrorMenu
mirrorSkin:
name: mirrorSkin
mirrorTransformation:
name: mirrorTransformation
mirrorwet:
name: mirrorwet
mobileStats:
name: mobileStats
mobileStatsColor:
name: mobileStatsColor
mobileStatsColorAllure:
name: mobileStatsColorAllure
mobileStatsColorSet:
name: mobileStatsColorSet
mobileStatsColorSetIverted:
name: mobileStatsColorSetIverted
mobileStatsTime:
name: mobileStatsTime
modelfilter:
description: |-
Set model filter object
Will do a copy, so you can safely edit filter options
[High-Level Model API Overview](%workspaceDir%/game/base-clothing/canvasmodel.twee#L2)
`<<modelfilter filterName filter>>`
- **filterName**: `string` - filter name corresponding to #CanvasModel.options.filters
- **filter**: `object` - Filter object to set at filterName
parameters:
- text &+ bareword|var
modelfilterset:
description: |-
Set model filter object property
[High-Level Model API Overview](%workspaceDir%/game/base-clothing/canvasmodel.twee#L2)
`<<modelfilterset filterName propertyName property>>`
- **filterName**: `string` - filter name corresponding to #CanvasModel.options.filters
- **propertyName**: `string` - property name of filter to set
- **property**: `string|number` - property value
parameters:
- text &+ text &+ text|number
modelprepare-player-body:
name: modelprepare-player-body
modelprepare-player-clothes:
name: modelprepare-player-clothes
molestbusinit:
name: molestbusinit
molested:
description: |-
Triggers flashbacks if the player is suffering from them.
Raises the player's awareness and increases the counter for the number of times they've been molested.
No increases if the $gamemode is "soft"
name: molested
moleststat:
name: moleststat
molestTrait:
description: |-
Prints `| Graceful` or `| Plaything` depending on pc's `$submissive`
tags: ["unused", "text"]
money:
description: |-
Adds/ removes money from pc's state and logs source
`<<money amount source? optional?>>`
- **amount**: `number` - £ to give or take from pc
- Decimals not supported, use raw values only
- **source** _optional_: `string` - source key
- Defaults to current location
- **optional** _optional_: `object` - options
- **recordOnly** _optional_: `boolean` - only update sources, not actual money
parameters:
- "number |+ string |+ ...var|bareword|text"
moneyGain:
description: |-
Prints and adds money to pc's state
See `<<moneyGainDisplay>>` to print before actually gaining
See `<<printmoney>>` and `<<formatmoney>>` to just print raw amounts
Sets `_money_gain` to result of calculation
`<<moneyGain amount notExactly? stolen? source?>>`
- **amount**: `number` - £ to give to pc (decimals supported)
- **notExactly** _optional_: `boolean` - apply random +/- 20% to amount
- Defaults to `false`
- **stolen** _optional_: `boolean` - stolen money scales with skulduggery and impacts crime
- Defaults to `false`
- **source** _optional_: `string` - records the amount of money under the source provided
- Defaults to current location
parameters:
- "number |+ bool |+ bool |+ string"
tags: ["text", "temp"]
moneyGainDisplay:
description: |-
Prints a theoretically added amount of money but does not actually change pc's state
See `<<moneyGain>>` to actually gain
See `<<printmoney>>` and `<<formatmoney>>` to just print raw amounts
Sets `_money_gain` to result of calculation
Widget documentation and codebase regularly uses manual adjustments instead of `<<moneyGain>>`. Consider refactoring
Example:
```
This example shows you <<moneyGainDisplay 100 true true>> that you could steal.
<<link [[Take it|Example Passage]]>><<moneyGain _money_gain false true>><</link>><<crime "petty">>
<br>
<<link [[Leave|Example Passage]]>><</link>>
```
`<<moneyGainDisplay amount notExactly? stolen?>>`
- **amount**: `number` - £ to give to pc (decimals supported)
- **notExactly** _optional_: `boolean` - apply random +/- 20% to amount
- Defaults to `false`
- **stolen** _optional_: `boolean` - stolen money scales with skulduggery and impacts crime
- Defaults to `false`
parameters:
- "number |+ bool |+ bool"
tags: ["text", "temp", "refactor"]
moneyStats:
description: |-
Prints money stats section
tags: ["text", "dom"]
moneyStatsCompare:
description: |-
Compares money earned/ spent against a snapshot
Relies on `_showSnapshot` being set to true
`<<moneyStatsCompare key type>>`
- **key**: `string` - source key
- **type** _optional_: `string` - subkey to access
- `"earned"` | `"spent"`
parameters:
- 'string &+ "earned"|"spent"'
tags: ["temp", "text"]
moneyStatsCompareHourly:
description: |-
Compares hourly money rates against a snapshot
`<<moneyStatsCompareHourly key>>`
- **key**: `string` - source key
parameters:
- 'string'
moneyStatsDate:
description: |-
Displays most recent date in money stat format
`<<moneyStatsDate spentTime? earnedTime?>>`
- **spentTime**: `timestamp` - last time spent money
- **earnedTime**: `timestamp` - last time earned money
parameters:
- 'number|var|bareword |+ number'
tags: ["text"]
moneyStatsNames:
description: |-
Prints formatted name for given money category
`<<moneyStatsNames key>>`
- **key**: `string` - money key
parameters:
- 'string'
moneyStatsTitle:
description: |-
Prints clickable sort titles for money stats display
`<<moneyStatsTitle sortColumn>>`
- **sortColumn**: `string` - column to sort display on
- `"Source"` | `"Spent"` | `"Spent Average"` | `"Spent Count"` | `"Earned"` | `"Earned Average"` | `"Earned Count"` | `"Hour Rates"` | `"Date"`
parameters:
- '"Source"|"Spent"|"Spent Average"|"Spent Count"|"Earned"|"Earned Average"|"Earned Count"|"Hour Rates"|"Date"'
tags: ["dom", "text"]
monk:
description: |-
Prints `monk` or `nun` depending on active NPC pronoun
`<<monk modifier?>>`
- **modifier** _optional_: `string` - additional information to include
- `"desc"`: include full NPC description before noun
parameters:
- '|+ "desc"'
tags: ["text"]
monkapo:
description: |-
Prints `monk's` or `nun's` depending on active NPC pronoun
tags: ["text"]
monks:
description: |-
Prints `monks` or `nuns` depending on active NPC pronoun
tags: ["text"]
monks_and_nuns:
description: |-
Prints `monks and nuns` unless player has mono-gendered the world
See `<<Monks_and_Nuns>>` and `<<brothers_and_sisters>>`
tags: ["text"]
Monks_and_Nuns:
description: |-
Prints `Monks and nuns` unless player has mono-gendered the world
See `<<monks_and_nuns>>` and `<<brothers_and_sisters>>`
tags: ["text"]
monster_passage:
description: |-
Sets `_monster_passage` to random gender chance
Doesn't do anything. Consider refactoring
tags: ["unused", "temp", "refactor"]
monsterSettings:
name: monsterSettings
monstrance_accost:
name: monstrance_accost
moor_binding_text:
name: moor_binding_text
moor_captive_actions:
name: moor_captive_actions
moor_captive_init:
name: moor_captive_init
moor_fox:
name: moor_fox
moor_hunt:
name: moor_hunt
moor_hunt_start:
name: moor_hunt_start
morgancaught:
name: morgancaught
morganhunt:
name: morganhunt
morganoptions:
name: morganoptions
morgantext:
name: morgantext
mouth:
name: mouth
mouth_sensitivity:
description: |-
Changes sensitivity of mouth by provided amount
`<<mouth_sensitivity amount>>`
- **amount**: `number` - change to sensitivity
parameters:
- number
mouthactionDifficulty:
name: mouthactionDifficulty
mouthactionDifficultyStruggle:
name: mouthactionDifficultyStruggle
tags: ["unused"]
mouthactionDifficultyTentacle:
name: mouthactionDifficultyTentacle
mouthActionInit:
name: mouthActionInit
mouthActionInitStruggle:
name: mouthActionInitStruggle
mouthActionInitTentacle:
name: mouthActionInitTentacle
mouthActions:
name: mouthActions
mouthActionsTentacle:
name: mouthActionsTentacle
mouthsensitivity:
name: mouthsensitivity
movealongdrainwater:
name: movealongdrainwater
moveChildren:
name: moveChildren
tags: ["unused"]
moveCreature:
name: moveCreature
mum:
name: mum
Mum:
name: Mum
mummy:
name: mummy
Mummy:
name: Mummy
museumAntiqueStatus:
name: museumAntiqueStatus
museumAntiqueText:
name: museumAntiqueText
museumClearHint:
description: |-
Clears Hint for provided antique
`<<museumClearHint antiqueId>>`
- **antiqueId**: `string` - antiqueId to clear
- %antiquesDesc%
parameters:
- "text|string"
museumdonate:
name: museumdonate
museumPaintingGet:
name: museumPaintingGet
museumPaintingText:
name: museumPaintingText
museumtalk:
name: museumtalk
namedNpcComments:
name: namedNpcComments
namedNpcEjaculation:
name: namedNpcEjaculation
namedNpcReaction:
description: |-
Resolves a named NPC's reaction to a combat action.
`<<namedNpcReaction index event [detail]>>`
- **index**: `number` - index into `$NPCList`
- **event**: `string` - what just happened
- `choke`
- `expose`
- `fondle`
- `initiative`
- `kiss`
- `kissDeep`
- `kissImminent`
- `kissSkin`
- `undress`
- **detail**: `string` - optional combat-state detail, e.g. which body part
parameters:
- number
- string
- string|null
namedNpcPregnancy:
name: namedNpcPregnancy
nDays:
description: |-
Prints the number of days remaining on a timer
Example:
```
<<timer $farm.build_timer>> prints "in 2 days" if $farm.build_timer is 2, "tomorrow" if it's 1, and "today" if it's 0.
```
`<<nDays timerValue>>`
- **timerValue**: `number` - value of specified timer in days
parameters:
- "number"
tags: ["text"]
neckejacstat:
name: neckejacstat
neckimg:
name: neckimg
neckon:
name: neckon
tags: ["unused"]
neckruined:
description: |-
Destroys pc's neck slot clothing, whether worn or carried
`<<neckruined noRebuy?>>`
- **noRebuy** _optional_: `boolean` - skip rebuying command (truthy)
- Defaults to `false`
parameters:
- "|+ bool"
necksend:
name: necksend
tags: ["unused"]
NeckShop:
name: NeckShop
necksteal:
name: necksteal
tags: ["unused"]
neckstrip:
name: neckstrip
neckundress:
name: neckundress
neckwear:
name: neckwear
nectarfed:
name: nectarfed
nervously:
description: |-
Prints adverb of pc's willingness to engage in exhibitionism
tags: ["text"]
neutral:
description: |-
\"\<!-- This widget's names ('neutral') is awful. Maybe 'molest' might better describe its use? -->"
Raises the player character's stress level, and both their and their enemy's Arousal.
name: neutral
neutralbreast:
name: neutralbreast
neutralgenitals:
name: neutralgenitals
new_npc_pillory:
name: new_npc_pillory
newNamedNpc:
description: |-
Generates new NPC object to add to old saves
Expects npc template object of the form
```js
{
nam: "Example", // Name of the New NPC
title: "tester", // How the game should refer to them
insecurity: "looks", // What the NPC is insecure about. skill, looks,
adult: 1, // (optional) If the PC is an adult
teen: 1, // (optional) If the PC is a teen
<any>: <any>, // Additional properties to attach to NPC
}
```
parameters:
- var|bareword &+ ...bareword
nexttext:
description: |-
Doesn't do anything, sort of
Next links have stopped receiving this widget for a while now. Consider refactoring
tags: ["legacy", "refactor"]
niece:
description: |-
Prints `niece` or `nephew` depending on npc pronouns
tags: ["text"]
Niece:
description: |-
Prints `Niece` or `Nephew` depending on npc pronouns
tags: ["text"]
nightingale:
name: nightingale
nightingaleeventend:
name: nightingaleeventend
nightingaleexposed:
name: nightingaleexposed
tags: ["unused"]
nightingalequick:
name: nightingalequick
nightmareCheck:
name: nightmareCheck
nightmareEnd:
name: nightmareEnd
nightmareStart:
name: nightmareStart
nightmareWake:
name: nightmareWake
nightmareWakeDifficulty:
name: nightmareWakeDifficulty
nightMonsterText:
description: |-
Prints monster/beast noun of the first NPC slot
To be used for the Night Monster
tags: ["text"]
nipple:
name: nipple
nippleFlavorText:
name: nippleFlavorText
nipples:
name: nipples
nnpc_brother:
description: |-
Prints `brother` or `sister` for named NPC
`<<nnpc_Sister namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_Brother:
description: |-
Prints `Brother` or `Sister` for named NPC
`<<nnpc_Brother namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_daughter:
description: |-
Prints `son` or `daughter` for named NPC
`<<nnpc_son namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_gender:
description: |-
Prints `man` or `woman` for named NPC
See `<<nnpc_gender>>` for young version
`<<nnpc_gender namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_gendery:
description: |-
Prints `boy` or `girl` for named NPC
See `<<nnpc_gender>>` for old version
`<<nnpc_gendery namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_genitals:
description: |-
Prints `penis` or `vagina` based on named NPC's pronoun
Doesn't take into account herm or crossdressing NNPC. Consider refactoring
`<<nnpc_genitals namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text", "refactor"]
nnpc_girlfriend:
description: |-
Prints `boyfriend` or `girlfriend` for named NPC
`<<nnpc_girlfriend namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_he:
description: |-
Prints singular pronoun (he/she) for named NPC
`<<nnpc_he namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_He:
description: |-
Prints capitalised singular pronoun (He/She) for named NPC
`<<nnpc_He namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_hers:
description: |-
Prints possessive plural pronoun (his/hers) for named NPC
`<<nnpc_hers namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_hes:
description: |-
Prints contracted singular pronoun (he's/she's) for named NPC
`<<nnpc_hes namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_Hes:
description: |-
Prints capitalised contracted singular pronoun (He's/She's) for named NPC
`<<nnpc_Hes namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_him:
description: |-
Prints objective pronoun (him/her) for named NPC
`<<nnpc_her namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_Him:
description: |-
Prints capitalised objective pronoun (he/she) for named NPC
`<<nnpc_Him namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["unused", "text"]
nnpc_himself:
description: |-
Prints reflexive pronoun (himself/herself) for named NPC
`<<nnpc_himself namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_his:
description: |-
Prints possessive pronoun (his/her) for named NPC
`<<nnpc_his namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_His:
description: |-
Prints capitalised possessive pronoun (His/Her) for named NPC
`<<nnpc_His namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_lass:
description: |-
Prints `lad` or `lass` for named NPC
`<<nnpc_lass namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_maam:
description: |-
Prints `ma'am` or `sir` for named NPC
`<<nnpc_maam namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_Maam:
description: |-
Prints `Ma'am` or `Sir` for named NPC
`<<nnpc_Maam namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_master:
description: |-
Prints `master` or `mistress` for named NPC
`<<nnpc_master namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_monk:
description: |-
Prints `monk` or `nun` for named NPC
`<<nnpc_monk namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_Monk:
description: |-
Prints `Monk` or `Nun` for named NPC
`<<nnpc_Monk namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_mother:
description: |-
Prints `mother` or `sister` for named NPC
`<<nnpc_mother namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_Mother:
description: |-
Prints `Mother` or `Father` for named NPC
`<<nnpc_Mother namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_mrs:
description: |-
Prints `mrs` or `mr` for named NPC
`<<nnpc_mrs namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_Mrs:
description: |-
Prints `Mrs` or `Mr` for named NPC
`<<nnpc_Mrs namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_ms:
description: |-
Prints `ms` or `mr` for named NPC
`<<nnpc_ms namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_Ms:
description: |-
Prints `Ms` or `Mr` for named NPC
`<<nnpc_Ms namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_mum:
description: |-
Prints `mum` or `dad` for named NPC
`<<nnpc_mum namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
nnpc_Mum:
description: |-
Prints `Mum` or `Dad` for named NPC
`<<nnpc_Mum namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
nnpc_mummy:
description: |-
Prints `mummy` or `daddy` for named NPC
`<<nnpc_mummy namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
nnpc_Mummy:
description: |-
Prints `Mummy` or `Daddy` for named NPC
`<<nnpc_Mummy namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
nnpc_title:
description: |-
Prints title of named NPC
`<<nnpc_title namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_Title:
description: |-
Prints capitalised title of named NPC
`<<nnpc_Title namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_waiter:
description: |-
Prints `waiter` or `waitress` for named NPC
`<<nnpc_waiter namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
nnpc_wife:
description: |-
Prints `husband` or `wife` for named NPC
`<<nnpc_wife namedNPCName>>`
- **namedNPCName**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
tags: ["text"]
noClothingCheck:
name: noClothingCheck
noharass:
description: |-
Prints `| No chance of harassment`
tags: ["text"]
note:
description: |-
Prints `| Note` style note
`<<note text class>>`
- **text**: `string` - note to display
- **class**: `string` - HTML class property to attach to note
parameters:
- "text|string |+ text|string"
tags: ["text"]
nounderwearcheck:
description: |-
Checks if the PC is pantiless, but otherwise decent
Results in low level exhibitionism increases
npc:
description: |-
Widget generating the named NPC passed as an argument, with the settings of the game, and the settings proper to that NPC.
Example:
```
<<npc Bailey>>
```
Bailey will be generated and put into slot 0
```
<<npc Whitney 2>>
```
Whitney will be generated and put into slot 2
```
<<npc namedNPCName>>
<<npc namedNPCName slot>>
```
- **namedNPCName**: `npcObject` - The NPC to instanciate
- **slot**: `number` - The Slot the NPC will be put into (zero based)
parameters:
- text |+ number
npc_attempt_sex:
name: npc_attempt_sex
npc_pillory:
name: npc_pillory
npc_pillory_abuse:
name: npc_pillory_abuse
npc_pillory_appearance:
name: npc_pillory_appearance
npc_pillory_detail:
name: npc_pillory_detail
npc_pillory_release_schedule:
name: npc_pillory_release_schedule
npc_submissive:
name: npc_submissive
npcAnus:
description: |-
Prints descriptor of active NPC's anus
`<<npcAnus npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of active npcs
- `0-5`: Defaults to current `$index`
parameters:
- "|+ number"
tags: ["text"]
npcAttractionSettings:
name: npcAttractionSettings
npcattribute:
description: |-
Sets extended attributes of a newly generated NPC
`<<npcattribute slot gender? level?>>`
- **slot**: `number` - npc slot to modify
- `0-5`: Slot to be set
- **gender** _optional_: `string` - character representing genitals
- `"m"`: Penis
- `"f"`: Vagina
- `"h"`: Both
- Defaults to random chance based on player's preferences for dickgirls/cuntboys against currently set pronoun
- **level** _optional_: `number` - size category determining hp, description, and genital size ranges
- `0-18`: Normal ranges
- `19`: Vulgar/Brutish
- `20`: Demon
parameters:
- 'number |+ "m"|"f"|"h" |+ number'
npcChest:
description: |-
Prints descriptor of active NPC's chest
`<<npcChest npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of active npcs
- `0-5`: Defaults to current `$index`
parameters:
- "|+ number"
tags: ["text"]
npcClothesName:
name: npcClothesName
npcClothesText:
description: |-
Prints name of npc's clothes
`<<npcClothesText npcObject clothesSlot>>`
- **npcObject**: `object` - NPC object to check
- **clothesSlot**: `string` - slot on npc object to check
- `"upper"` | `"lower"` | `"both"`
parameters:
- 'bareword|var &+ "upper"|"lower"|"both"'
tags: ["text"]
npcClothesType:
name: npcClothesType
npcCondomEquipImmediate:
name: npcCondomEquipImmediate
npcdamage:
name: npcdamage
npcexhibit:
name: npcexhibit
npcexpose:
name: npcexpose
npcexposetext:
description: |-
Prints description of active NPC undressing and revealing their genitals
Currently describes genitals of first active NPC always. Consider refactoring
tags: ["refactor"]
npcfence:
name: npcfence
npcgangstrip:
name: npcgangstrip
npcGenitalReaction:
description: |-
Prints a random player reaction to the sight of a very large or very small NPC penis
`<<npcGenitalReaction npcObject>>`
- **npcObject**: `object` - npc object to be checked
parameters:
- "var|bareword"
npcGenitals:
description: |-
Prints descriptor(s) of active NPC's full genitals
`<<npcGenitals npcIndex? descType?>>`
- **npcIndex** _optional_: `number` - zero-based index of active npcs
- `0-5`: Defaults to current `$index`
- **descType** _optional_: `string` - type of description to provide
- `"simple"`: Uses `<<npcPenisSimple>>` instead of full description
parameters:
- '|+ number |+ "simple"'
tags: ["text"]
npcgloryhole:
name: npcgloryhole
npcgrapplestripall:
name: npcgrapplestripall
npcHairColour:
description: |-
Prints hair colour of a named NPC
`<<npcHairColour namedNPCIndex>>`
- **namedNPCIndex**: `string` - named NPC name
- %namedNPCDesc%
parameters:
- "%namedNPC%"
npchand:
name: npchand
npcHurt:
name: npcHurt
parameters:
- '|+ "Robin"'
tags: ["text", "refactor"]
npcidlegenitals:
name: npcidlegenitals
npcincr:
name: npcincr
npcincr_avery:
name: npcincr_avery
npckiss:
name: npckiss
npcList:
name: npcList
npcNamed:
name: npcNamed
npcNamedUpdate:
description: |-
Updates $npcNamedVersion and underlying data from previous versions if necessary
Current version is 2
npcoral:
name: npcoral
npcPenis:
description: |-
Prints descriptor of active NPC's penis with full description
Does not handle strapons
See `<<npcPenisSimple>>` for no description
`<<npcPenis npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of active npcs
- `0-5`: Defaults to current `$index`
parameters:
- "|+ number"
tags: ["text"]
npcPenisColored:
description: |-
Prints coloured-descriptor of active NPC's penis with full description
See `<<npcPenisColored>>` for no description
`<<npcPenis npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of active npcs
- `0-5`: Defaults to current `$index`
parameters:
- "|+ number"
tags: ["unused", "text"]
npcPenisSimple:
description: |-
Prints descriptor of active NPC's penis
See `<<npcPenis>>` for full description
`<<npcPenis npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of active npcs
- `0-5`: Defaults to current `$index`
parameters:
- "|+ number"
tags: ["text"]
npcPregnancyRoll:
description: |-
Call this when someone cums inside an NPC who could get pregnant from it.
One roll on the spot decides it: a win writes the pregnancy record with this moment's time
and place. NPCs store no loads, this roll is their whole conception.
`<<npcPregnancyRoll carrier carrierSpecies donor donorSpecies orifice depth? location? donorFertility?>>`
- **carrier**: `string` - the NPC who might get pregnant. A name, or a generated one like "lissome man"
- **carrierSpecies**: `string` - what the carrier is, e.g. `"human"`
- **donor**: `string` - who came inside them. An NPC's name, or "pc"
- **donorSpecies**: `string` - the donor's species, e.g. `"human"`
- **orifice**: `"vagina"|"anus"` - where the cum went
- **depth** _optional_: `"outside"|"imminent"|"deep"` - where it landed. Deep when not given, a spill rolls at its depth's low weight
- **location** _optional_: `string` - where it happened. Left out reads the player's location, pass one when the scene runs off-screen
- **donorFertility** _optional_: `number` - extra multiplier on the conception chance from the donor's side (e.g. the pc's low-semen or earSlime state)
A normal creampie: `<<npcPregnancyRoll "Robin" "human" "pc" "human" "vagina">>`
A spill that never went in: `<<npcPregnancyRoll "Robin" "human" "someone" "human" "vagina" "imminent">>`
parameters:
- 'text &+ text &+ text &+ text &+ "vagina"|"anus" |+ "outside"|"imminent"|"deep" |+ text |+ number'
npcPregnancyUpdater:
name: npcPregnancyUpdater
npcrelationship:
name: npcrelationship
npcRevealText:
description: |-
Prints description of npc's genitals being revealed
Does not include ending punctuation
Example:
```
The <<person>> <<npcUndressText _npc "lower" "self">>, <<npcRevealText _npc "lower">>.
```
`<<npcUndressText npcObject clothesSlot mod?>>`
- **npcObject**: `object` - NPC object to check
- **clothesSlot**: `string` - slot on npc object to undress
- `"upper"` | `"lower"` | `"both"`
- **mod**: `string` - how NPC should be referred to
- `"name"`: NPC's Name or description if name is unknown
- `"desc"`: NPC's description
- `default`: `<<his>>`
parameters:
- 'bareword|var &+ "upper"|"lower"|"both" |+ "name"|"desc"'
tags: ["text"]
npcset:
description: |-
Changes the value of the stat of a particular NPC. In-game, it's mostly used to change the state of NPCs (ie. undismissing them), but the widget can be used for any stats as long as they exist in the NPC's object.
Example:
```
<<npcset Kylar state "active">>
```
`<<npcset npcObject statName statValue>>`
- **npcObject**: `object` - NPC object to check
- **statName**: `object` - The NPC's stat name
- love|dom|trust|lust|rage|state|init|trauma|purity|corruption
- **statValue**: `string|number` - The value of the NPC's stat name to change
parameters:
- 'bareword|var &+ love|dom|trust|lust|rage|state|init|trauma|purity|corruption &+ number|string'
npcSettings:
name: npcSettings
npcSettingsMenu:
name: npcSettingsMenu
NPCSettingsReset:
name: NPCSettingsReset
npcspank:
name: npcspank
npcspankgag:
name: npcspankgag
npcstrapon:
name: npcstrapon
npcstrip:
name: npcstrip
npcstripall:
name: npcstripall
npctakevirginity:
description: |-
Positions and preps npc to take pc's virginity
npcUndressText:
description: |-
Prints description of npc undressing
Does not actually change any state of their clothing
Example:
```
You try to <<npcUndressText _npc _clothesTarget>>, but this is just an example
```
`<<npcUndressText npcObject clothesSlot selfUndress?>>`
- **npcObject**: `object` - NPC object to check
- **clothesSlot**: `string` - slot on npc object to undress
- `"upper"` | `"lower"` | `"both"`
- **selfUndress**: `boolean` - NPC is undressing themselves (truthy)
- Defaults to `false`
parameters:
- 'bareword|var &+ "upper"|"lower"|"both" |+ bool|"self"'
tags: ["text"]
npcVagina:
description: |-
Prints descriptor of active NPC's vagina
`<<npcVagina npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of active npcs
- `0-5`: Defaults to current `$index`
parameters:
- "|+ number"
tags: ["text"]
NPCVirginityTakenByOther:
name: NPCVirginityTakenByOther
NPCvirginitywarning:
description: |-
Prints warning for named npc if virginity is available to lose
`<<NPCvirginitywarning namedNPCName virginityType>>`
- **namedNPCName**: `string` - name of named NPC
- %namedNPCDesc%
- **virginityType**: `string` - type of virginity to check and warn
- %virginityTypesDesc%
parameters:
- "%namedNPC% &+ %virginityTypes%"
nude_text:
description: |-
Prints general exposure state as adjective
Example:
```
Everyone sees you are just a <<nude_text>> example.
```
Out of date and underutilised. Consider refactoring
tags: ["text", "refactor"]
nudity:
description: |-
Prints description of pc's nudity
Example:
```
You feel them ogle your <<nudity>>.
```
Does not take into account over_top or over_bottom. Consider refactoring
tags: ["refactor", "text"]
number:
description: |-
Prints a number as spelled-out cardinal form (first, second, etc)
Numbers outside of 100 are not spelled-out for style reasons
`<<number numberAsInt output>>`
- **numberAsInt**: `number` - number to convert
- **output** _optional_: `string` - how to output text
- `default`: Prints output
- `"silent"`: Stores output in `_text_output`
parameters:
- 'number|var|bareword |+ "silent"'
tags: ["text", "temp"]
Number:
description: |-
Prints a number as capitalised spelled-out cardinal form (First, Second, etc)
Numbers outside of 100 are not spelled-out for style reasons
`<<Number numberAsInt>>`
- **numberAsInt**: `number` - number to convert
parameters:
- number
tags: ["text"]
numberify:
name: numberify
numberslider:
description: |-
Adds a number slider element
`<<numberslider variable defaultValue minValue maxValue stepValue callbacks? autofocus?>>`
- **variable**: `string` - the name of the variable to bind the slider to (e.g., `$score` or `_tempValue`)
- Must start with `$` or `_`.
- **defaultValue**: `number` - the value to initialise the variable and slider with
- Must be between `minValue` and `maxValue`.
- **minValue**: `number` - the minimum allowed value for the slider
- **maxValue**: `number` - the maximum allowed value for the slider
- **stepValue**: `number` - the interval between allowed values when sliding
- Must be greater than `0`.
- **callbacks** _optional_: `object` - object containing optional event callbacks
- **onInputChange** _optional_: `function` - called periodically as the slider moves
- Example: `(newValue) => console.log("Slider changed:", newValue)`
- **value** _optional_: `function` - formats the displayed value
- Example: `(value) => "$" + value`
- **onMouseUp** _optional_: `function` - called when the slider is released
- Example: `(newValue) => console.log("Slider released:", newValue)`
- **autofocus** _optional_: `string` - automatically focuses the slider on passage load
- Use `"autofocus"` to enable.
skipArgs: false
tags: ["sliders", "inputs", "macros"]
numberStepper:
description: |-
Adds a number stepper element
`<<numberStepper title initialValue setter options?>>`
- **title**: `string` - title to be displayed in the titlebox
- **initialValue**: `number` - initial value to display when the stepper is rendered
- Clamped between `minValue` and `maxValue`
- **setter**: `string | function` - source of current value
- `string`: current value is determined by state variable (e.g., `"purity"` -> `$purity`)
- `function`: current value is determined by return value
- **options** _optional_: `object` - object containing additional optional settings
- **max** _optional_: `number` - maximum allowed value
- Defaults to `100`
- **min** _optional_: `number` - minimum allowed value
- Defaults to `0`
- **step** _optional_: `number` - amount value changes with a single arrow and `x10` with a double arrow
- Defaults to `1%` of the range
- **percentage** _optional_: `boolean` - value is converted to a percentage
- Defaults to `true`
- **colorArr** _optional_: `Array` - custom colours to replace the default range
- **reverse** _optional_: `boolean` - reverse direction of colour range
- Defaults to `false`
- **valueFormat** _optional_: `function` - function modifying how value is displayed
- `function`: fn: (value: number, percentage: number) => string
- Example: `(value, percentage) => "$" + value`
- **tooltip** _optional_: `tooltip` - tooltip object
- Example: `{ message: () => V.physique, delay: 200 }`
- **values** _optional_: `Array` - values to be used in above functions
- **reverseButtons** _optional_: `boolean` - reverse function of buttons
- Defaults to `false`
- **activeButtons** _optional_: `Array` - specifies active buttons
- Defaults to `["single", "double", "minMax"]`
- <`"single"|"double"|"triple"|"minMax"`>`[]`
- **css** _optional_: `string` - overrides the default container css
- **callback** _optional_: `function` - callback for whenever the value changes
skipArgs: true
tags: ["text", "links"]
nurseinit:
name: nurseinit
office_manager:
name: office_manager
officeafterhours:
name: officeafterhours
officebusinesshours:
name: officebusinesshours
officecheckcomplaints:
name: officecheckcomplaints
officecomplaintsextreme:
name: officecomplaintsextreme
officecomplaintshigh:
name: officecomplaintshigh
officecomplaintslow:
name: officecomplaintslow
officecomplaintsmedium:
name: officecomplaintsmedium
officeliftdescend:
name: officeliftdescend
officepassout:
name: officepassout
officestreakactions:
name: officestreakactions
officestreakhide:
name: officestreakhide
officeupdatecomplaints:
name: officeupdatecomplaints
ohe:
description: |-
Prints singular pronoun for current npc regardless of being a beast (`<<bhe>>`) or man (`<<he>>`)
Eligible for deprecation. Consider refactoring this functionality into `<<he>>`
tags: ["text", "refactor"]
oldWardrobeList:
description: |-
Prints provided slots of wardrobe
`<<oldWardrobeList slot showType?>>`
- **slot**: `string` - clothing slot to enumerate from current wardrobe
- %clothesTypesDesc%
- **showType** _optional_: `string` - outfits or non-outfits
- Defaults to showing both
- `"outfits"` | `"non-outfits"`
parameters:
- '%clothesTypes% |+ "outfits"|"non-outfits"'
tags: ["dom", "legacy"]
oldWardrobeListDisplay:
deprecatedSuggestions:
- wardrobeContents
description: |-
Enumerates and prints wardrobe contents
tags: ["dom", "legacy"]
oldWardrobeMinorOptions:
description:
- Enumerates and prints alternative wear options for current clothing
tags: ["dom", "legacy"]
onFishCaught:
name: onFishCaught
openinghours:
description: |-
Prints the standard description of a store's opening hours. Uses `<<ampm>>` to format the hours.
`<<openinghours openingTime? closingTime?>>`
- **openingTime** _optional_: `number` - the time that the shop opens, in hours
- Defaults to `7`
- **closingTime** _optional_: `number` - the time that the shop closes, in hours
- Defaults to `21`
tags: ["text"]
optionsadvanced:
name: optionsadvanced
optionsExportImport:
name: optionsExportImport
optionsgeneral:
name: optionsgeneral
optionsinformation:
name: optionsinformation
optionsperformance:
name: optionsperformance
optionstheme:
name: optionstheme
optionsThemeDefault:
name: optionsThemeDefault
oral:
name: oral
oraldifficulty:
description: |-
Prints colour-coded adjective of oral action difficulty in current combat
tags: ["text"]
oralejacstat:
name: oralejacstat
oralnew:
name: oralnew
oralpassage:
name: oralpassage
oralskill:
description: |-
Adds oral skill to pc's state
`$oralskill` is a measure of pc's proficiency giving oral where 0 is awkward (0-1,000)
`<<oralskill change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
oralskilluse:
name: oralskilluse
oralstat:
name: oralstat
oralswallownew:
name: oralswallownew
oraltext:
description: |-
Prints colour-coded adjective of active oral skill usage
tags: ["text"]
oralvirginitywarning:
description: |-
Prints `This action will take your oral virginity` if oral virginity can still be lost
Takes combat state into account to display starting pipe `| `
tags: ["text"]
ordinalList:
description: |-
Prints a list of numbers as ordinal words (first, etc) with proper punctuation
`<<ordinalList cap? conj? comma?>>`
`<<ordinalList conj? comma?>>`
- **cap** _optional_: `string` - indicates words should be capitalised
- `"cap"`: Anything else is treated as two argument overload
- **conj** _optional_: `string` - conjunction to use between final two ordinals
- Defaults to `"and"`
- **comma**: `boolean` - use an Oxford comma between final two ordinals
- Defaults to true
parameters:
- 'var|bareword|text |+ "cap" |+ bareword|text |+ bool'
- 'var|bareword|text |+ bareword|text |+ bool'
orgasm:
name: orgasm
orgasmbeach:
name: orgasmbeach
orgasmbog:
name: orgasmbog
orgasmcount:
name: orgasmcount
orgasmFishing:
description: |-
Triggers an orgasm and prints location-appropriate text for fishing locations
`<<orgasmFishing location>>`
- **location** `string` - fishing location key (`"beach"`, `"pier"`, `"lake"`, `"moor"`, `"coast_path"`)
parameters:
- 'bareword|text'
orgasmFishingBeach:
name: orgasmFishingBeach
orgasmFishingCoastPath:
name: orgasmFishingCoastPath
orgasmFishingForestLake:
name: orgasmFishingForestLake
orgasmFishingMoor:
name: orgasmFishingMoor
orgasmFishingPier:
name: orgasmFishingPier
orgasmforest:
name: orgasmforest
orgasmHourlyRecovery:
name: orgasmHourlyRecovery
orgasmLocation:
name: orgasmLocation
orgasmstage:
name: orgasmstage
orgasmstat:
name: orgasmstat
orgasmstreet:
name: orgasmstreet
orgasmTrait:
description: |-
Prints `| Hedonist` or `| Orgasm Addict` depending on pc's `$submissive`
tags: ["unused", "text"]
orphanageWard:
name: orphanageWard
orphanageWardOptions:
name: orphanageWardOptions
otherOutfitChecks:
name: otherOutfitChecks
othersFeelings:
name: othersFeelings
outergoo:
name: outergoo
outfit:
description: |-
Prints name of middle clothing layer as outfit or if it was an outfit
Also sets `$stripset` to determine if both layers should be removed together
tags: ["text"]
outfitChecks:
description: |-
Sets temporary variables according to state of pc's dress
Bools:
- `_underOutfit`: under clothes are complete outfit
- `_middleOutfit`: middle clothes are complete outfit
- `_overOutfit`: over clothes are complete outfit
>
- `_underNaked`: under clothes are completely naked
- `_middleNaked`: middle clothes are completely naked
- `_overNaked`: over clothes are completely naked
>
- `_skirtExposed`: wearing lowerwear; skirt exposes underwear or genitals
- `_bottomExposed`: not wearing lowerwear; underwear or genitals are exposed
- `_shirtless`: not wearing upperwear; underwear or chest is exposed
- `_bottomless`: bottom clothes are completely naked
- `_topless`: top clothes are completely naked
- `_fullyNaked`: top and bottom clothes are completely naked
>
- `_swimwear`: player is wearing swimwear
- `_underwear`: player is wearing underwear beneath clothes
Temporary $worn[slot] variables (example usage: `<<set _top.integrity to 0>>` to destroy outermost upperwear layer; `<<He>> pulls down your _bottom.name` to displace outermost lowerwear layer)
- `_top`: first visible piece of upperwear
- `_topUnder`: first visible piece beneath top
- `_bottom`: first visible piece of lowerwear
- `_bottomUnder`: first visible piece beneath bottom
tags: ["temp"]
outfitChecksExposed:
name: outfitChecksExposed
outfitEditor:
name: outfitEditor
outfitEditorDefaultFilter:
name: outfitEditorDefaultFilter
outfitEditorFilter:
name: outfitEditorFilter
outfitEditorItem:
name: outfitEditorItem
outfitEditorItemClothes:
name: outfitEditorItemClothes
outfitEditorItemColour:
name: outfitEditorItemColour
outfitEditorList:
name: outfitEditorList
outfitEditorPageControls:
name: outfitEditorPageControls
outfitEditorPageSetup:
name: outfitEditorPageSetup
outfitEditorUpdateFilter:
name: outfitEditorUpdateFilter
outfiton:
name: outfiton
tags: ["unused"]
OutfitShop:
name: OutfitShop
overheadon:
name: overheadon
tags: ["unused"]
overheadruined:
description: |-
Destroys pc's over_head slot clothing, whether worn or carried
`<<overheadruined noRebuy?>>`
- **noRebuy** _optional_: `boolean` - skip rebuying command (truthy)
- Defaults to `false`
parameters:
- "|+ bool"
overheadsend:
name: overheadsend
tags: ["unused"]
overheadsteal:
name: overheadsteal
tags: ["unused"]
overheadstrip:
name: overheadstrip
tags: ["unused"]
overheadundress:
name: overheadundress
overheadwear:
name: overheadwear
tags: ["unused"]
overlayReplace:
name: overlayReplace
overlower:
name: overlower
tags: ["unused"]
overlowerhas:
description: |-
Prints plural/singular prose of has (have/has) for worn `"over_lower"` slot
tags: ["unused"]
overlowerintegrity:
name: overlowerintegrity
tags: ["unused"]
overlowerit:
description: |-
Prints an objective case pronoun (them/it) for worn `"over_lower"` slot
overloweritis:
description: |-
Prints a pronoun/ present indicative pair (they are/it is) describing worn `"over_lower"` slot
overloweron:
name: overloweron
tags: ["unused"]
overlowerplural:
description: |-
Prints a present indicative (are/is) for the worn `"over_lower"` slot
overlowerruined:
description: |-
Destroys pc's over_lower slot clothing, whether worn or carried
`<<overlower noRebuy?>>`
- **noRebuy** _optional_: `boolean` - skip rebuying command (truthy)
- Defaults to `false`
parameters:
- "|+ bool"
overlowersend:
name: overlowersend
tags: ["unused"]
overlowersteal:
name: overlowersteal
tags: ["unused"]
overlowerstrip:
name: overlowerstrip
overlowerthat:
description: |-
Prints plural/singular prose of that (those/that) for worn `"over_lower"` slot
overlowerundress:
name: overlowerundress
overlowerwear:
name: overlowerwear
OverOutfitShop:
name: OverOutfitShop
overpulldown:
description: |-
Prints verb of player pulling lower clothing into an exposed state
Does not actually set clothing into exposed or pulled state. Consider refactoring
tags: ["unused", "text", "refactor"]
overpullsdown:
description: |-
Prints plural verb of player pulling lower clothing into an exposed state
Does not actually set clothing into exposed or pulled state. Consider refactoring
tags: ["unused", "text", "refactor"]
overpullsup:
description: |-
Prints verb of player pulling upper clothing into an exposed state
Does not actually set clothing into exposed or pulled state. Consider refactoring
tags: ["unused", "text", "refactor"]
overpullup:
description: |-
Prints verb of player pulling upper clothing into an exposed state
Does not actually set clothing into exposed or pulled state. Consider refactoring
tags: ["unused", "text", "refactor"]
overruined:
description: |-
Destroys pc's over_upper and over_lower slot clothing, whether worn or carried
`<<overruined noRebuy?>>`
- **noRebuy** _optional_: `boolean` - skip rebuying command (truthy)
- Defaults to `false`
parameters:
- "|+ bool"
OverTopShop: #undeclared
name: OverTopShop
overupperhas:
description: |-
Prints plural/singular prose of has (have/has) for worn `"over_upper"` slot
tags: ["unused"]
overupperintegrity:
name: overupperintegrity
tags: ["unused"]
overupperit:
description: |-
Prints an objective case pronoun (them/it) for worn `"over_upper"` slot
overupperitis:
description: |-
Prints a pronoun/ present indicative pair (they are/it is) describing worn `"over_upper"` slot
tags: ["unused"]
overupperon:
name: overupperon
tags: ["unused"]
overupperplural:
description: |-
Prints a present indicative (are/is) for the worn `"over_upper"` slot
overupperruined:
description: |-
Destroys pc's over_upper slot clothing, whether worn or carried
`<<overupperruined noRebuy?>>`
- **noRebuy** _optional_: `boolean` - skip rebuying command (truthy)
- Defaults to `false`
parameters:
- "|+ bool"
overuppersend:
name: overuppersend
tags: ["unused"]
overuppersteal:
name: overuppersteal
tags: ["unused"]
overupperstrip:
name: overupperstrip
overupperthat:
description: |-
Prints plural/singular prose of that (those/that) for worn `"over_upper"` slot
overupperundress:
name: overupperundress
overupperwear:
name: overupperwear
overworld_nickname:
description: |-
Prints pc's nickname used in the overworld
See `<<underworld_nickname>>`
`<<overworld_nickname textTransform>>`
- **textTransform**: `string` - transformation to apply to text before printing
- `"cap"`: Capitalise
parameters:
- '|+ "cap"'
tags: ["text"]
overwriteoutfit:
name: overwriteoutfit
oxford:
name: oxford
oxfordeventend:
name: oxfordeventend
oxfordexposed:
name: oxfordexposed
tags: ["unused"]
oxfordquick:
name: oxfordquick
oxygen:
name: oxygen
oxygencaption:
name: oxygencaption
oxygenrecovery:
description: |-
Prints link to pass time if `$oxygen` is less than `$oxygenmax`.
`<<oxygenrecovery setPhase?>>`
- **setPhase** _optional_: `number|string|bool` - set `$phase` to `setPhase`. defaults to "oxygenrecovery" if not a number or string
parameters:
- "|+ number|string|bool"
oxygenrefresh:
name: oxygenrefresh
pain:
description: |-
Adds pain to pc's state
`$pain` is pc's pain amount where 0 is not-in-pain (0-200)
`<<pain change modifier?>>`
- **change**: `number` - +/- change to apply
- **modifier** _optional_: `number` - multiplier mod to apply to change
- Defaults to `4`
parameters:
- "number |+ number"
paincaption:
name: paincaption
painclamp:
name: painclamp
panties:
description: |-
Prints descriptor of active NPC's inner_lower clothing
See `<<bra>>` for inner_upper clothing or `<<skirt>>` for lower clothing
See `<<npcClothesText>>` for full name of clothes
tags: ["text"]
pantsable:
description: |-
Checks if pc's lower clothing can be pulled down/ flipped up
`_pantsable` will be set to 0 or 1 if lower can be pulled down
`_upskirt` will be set to 0 or 1 if lower can be flipped up
tags: ["temp"]
pantsdowncomments:
name: pantsdowncomments
pantsdownevents:
name: pantsdownevents
pantsdowngender:
name: pantsdowngender
pantsdownlewd:
name: pantsdownlewd
pantsdownscene:
name: pantsdownscene
pantsdowntime:
name: pantsdowntime
paperCatalogue:
description: |-
Prints shop container of paper wall hangings
tags: ["dom", "text"]
parasite:
name: parasite
parasiteinit:
name: parasiteinit
parasiteSlotBlock:
name: parasiteSlotBlock
park:
name: park
parkeventend:
name: parkeventend
parkex1:
name: parkex1
parkex2:
name: parkex2
parkex3:
name: parkex3
parkexposed:
name: parkexposed
tags: ["unused"]
parkquick:
name: parkquick
parkrun:
name: parkrun
partnerfriend:
description: |-
Prints the relationship title of the PC's assumed hetero partner, based on PC's gender
Essentially prints the opposite of `<<girlfriend>>`.
WARNING: Do NOT use in the context of LIs.
Widget does not take into account any real relationships or sexual orientations.
tags: ["text"]
pass:
description: |-
Advances time by an amount
`<<pass timeToPass units?>>`
- **timeToPass**: `number` - number of units
- **units** _optional_: `string` - units of number
- `"sec"` | `"seconds"` | `"min"` | `"mins"` | `"minute"` | `"minutes"` | `"hour"` | `"hours"` | `"day"` | `"days"` | `"week"` | `"weeks"`
- Defaults to `"min"`
parameters:
- 'number |+ "sec"|"seconds"|"min"|"mins"|"minute"|"minutes"|"hour"|"hours"|"day"|"days"|"week"|"weeks"'
passagestrip:
description: |-
Strips player and prints a paragraph of description of the sequence
`<<passagestrip limit?>>`
- **limit** _optional_: `string` - maximum layer to strip down to
- `"topless"`
- `"undies"`
parameters:
- '|+ "topless"|"undies"'
passiveStudy:
name: passiveStudy
passout:
description: |-
Applies stat changes from passing out and ruffles hair
passout_flats:
description: |-
Passes out and prints links for players in at the Flats
tags: ["links"]
passout_mines:
description: |-
Passes out and prints links for players in the Mines
tags: ["links"]
passout_moor:
description: |-
Passes out and prints links for players in the Moor
tags: ["links"]
passout_prison:
description: |-
Passes out and prints links for players in Prison
tags: ["links"]
passout_rut:
description: |-
Passes out and prints links for players in the Prison Rut
tags: ["links"]
passoutadultshop:
description: |-
Passes out and prints links for players in the Adult Shop
tags: ["links"]
passoutalley:
description: |-
Passes out and prints links for players in the Alley
tags: ["links"]
passoutarcade:
description: |-
Passes out and prints links for players in the Arcade
tags: ["links"]
passoutasylum:
description: |-
Passes out and prints links for players in the Asylum
tags: ["links"]
passoutbeach:
description: |-
Passes out and prints links for players at the Beach
tags: ["links"]
passoutbog:
description: |-
Passes out and prints links for players in the Bog
tags: ["links"]
passoutbus:
description: |-
Passes out and prints links for players on the Bus
tags: ["links"]
passoutcatacombs:
description: |-
Passes out and prints links for players in the Catacombs
tags: ["links"]
passoutcave:
description: |-
Passes out and prints links for players in the Seaside Cave
tags: ["links"]
passoutcompound:
description: |-
Passes out and prints links for players at the Compound
tags: ["links"]
passoutdrain:
description: |-
Passes out and prints links for players in the Storm Drain
tags: ["links"]
passoutfarmroad:
description: |-
Passes out and prints links for players along the Farm Road
tags: ["links"]
passoutforest:
description: |-
Passes out and prints links for players in the Forest
tags: ["links"]
passouthome:
description: |-
Passes out and prints links for players at the Orphanage
tags: ["links"]
passouthospital:
description: |-
Passes out and prints links for players in the Hospital
tags: ["links"]
passoutlake:
description: |-
Passes out and prints links for players at the Lake
tags: ["links"]
passoutmansion:
description: |-
Passes out and prints links for players at Avery's mansion
tags: ["links"]
passoutpark:
description: |-
Passes out and prints links for players in the Park
tags: ["links"]
passoutpirates:
description: |-
Passes out and prints links for players on the Pirate Ship
tags: ["links"]
passoutremy:
description: |-
Passes out and prints links for players in Remy's hands
tags: ["links"]
passoutsea:
description: |-
Passes out and prints links for players at Sea
tags: ["links"]
passoutshop:
description: |-
Passes out and prints links for players in the Shops
parameters:
- "pregLocation |+ Pregnancy Passout location"
tags: ["links"]
passoutstreet:
description: |-
Passes out and prints links for players on the Street
tags: ["links"]
passouttemple:
description: |-
Passes out and prints links for players in the Temple (Sydney does not rescue)
tags: ["links"]
passouttempleSydney:
description: |-
Passes out and prints links for players in the Temple (Sydney rescues)
tags: ["links"]
passouttentacleworld:
description: |-
Passes out and prints links for players in the Tentacle World
tags: ["links"]
passouttrash:
description: |-
Passes out and prints links for players in the Landfill
tags: ["links"]
passPercent:
description: |-
Prints `| X% pass chance`
`<<passPercent percentAsInt>>`
- **percentAsInt**: `number` - percent to output
`0-100`
parameters:
- number
tags: ["text"]
passTimeUntil:
description: |-
Advances time until hours:minutes exactly
`<<passTimeUntil hour minute?>>`
- **hour**: `number` - hour to advance to
- **minute** _optional_: `number` - minute in hour to advance to
- Defaults to `0`
parameters:
- "number |+ number"
pbhairinit:
name: pbhairinit
pcFarmBirth:
name: pcFarmBirth
pcGender:
description: |-
Prints "girl", "boy", or "orphan", based on the PC's chosen gender
ONLY to be used when the PC is referring to themself.
NPCs should continue to refer to PC by `<<girl>>`, or `<<pcSex>>` if appropriate for the scene.
tags: ["text"]
pcGenderher:
description: |-
Prints "her", "his", or "their", based on the PC's chosen gender. ONLY to be used when the PC is referring to themself. NPCs should continue to refer to PC by `<<pher>>` if appropriate for the scene.
tags: ["text"]
pcow:
description: |-
Prints "cow" or "bull", based on the PC's gender appearance.
tags: ["text"]
pcpetname:
description: |-
Prints named NPC's pet name for pc's
See `<<pcPetname>>` for capitalised version
Uses too many versions of NPC's names as inputs. Consider refactoring to use just one
`<<pcpetname npcName npcEmotionMod?>>`
- **npcName**: `string` - example kind to output
- `"Avery"` | `"Gwylan"` | `"Wraith"`
- **npcEmotionMod** _optional_: `string` - npc's emotional intention when using this pet name
- `"angry"` | `"nice"`
parameters:
- '"Avery"|"Gwylan"|"Wraith"'
- '"Avery" |+ "my"'
- '"Wraith" |+ "angry"|"nice"'
- '"Gwylan" |+ "bad"|"naughty"|"good"|"dear"|"my"|"simple"|"name"'
tags: ["text"]
pcPetname:
description: |-
Print's capitalised prose of named NPC's pet name for pc's
See `<<pcpetname>>` for non-capitalised version
Does not take into account second parameter of base widget. Consider refactoring
`<<pcPetname npcName>>`
- **npcName**: `string` - example kind to output
- `"Avery"` | `"Gwylan"` | `"Wraith"`
- **npcEmotionMod** _optional_: `string` - npc's emotional intention when using this pet name
- `"angry"` | `"nice"`
parameters:
- '"Avery"|"Gwylan"|"Wraith"'
- '"Avery" |+ "my"'
- '"Wraith" |+ "angry"|"nice"'
- '"Gwylan" |+ "bad"|"naughty"|"good"|"dear"|"my"|"simple"|"name"'
tags: ["text", "refactor"]
pcPregnancyRevealToAlex:
name: pcPregnancyRevealToAlex
pcSex:
description: |-
Prints "girl", "boy", or "hermaphrodite", based on the PC's sex
Most commonly used in conjunction with crossdressing.
tags: ["text"]
pdaughter:
name: pdaughter
pDaughter:
name: pDaughter
penetrationPainCalculate:
name: penetrationPainCalculate
peniledifficulty:
description: |-
Prints colour-coded adjective of penile action difficulty in current combat
tags: ["text"]
penileejacstat:
name: penileejacstat
penileskill:
description: |-
Adds penile skill to pc's state
`$penileskill` is a measure of pc's proficiency using their penis where 0 is awkward (0-1,000)
`<<penileskill change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
penileskilluse:
name: penileskilluse
penilestat:
name: penilestat
peniletext:
description: |-
Prints colour-coded adjective of active penile skill usage
tags: ["text"]
penilevirginitywarning:
description: |-
Prints `This action will deflower you` if penile virginity can still be lost and not protected by strap-on
Takes combat state into account to display starting pipe `| `
tags: ["text"]
penis:
name: penis
penis_lube_amount:
description: |-
Prints the amount of lube around player penis
Relies on `_penis_lube_amount` being set already
See `<<penis_lube_text>>`
tags: ["text", "temp"]
penis_lube_text:
description: |-
Prints qualified description of lube around the penis prior to penetration
Example:
```
<<penis_lube_text>> the example can be performed without a problem.
```
tags: ["text"]
penisactionDifficulty:
name: penisactionDifficulty
penisactionDifficultyTentacle:
name: penisactionDifficultyTentacle
penisActionInit:
name: penisActionInit
penisActionInitStruggle:
name: penisActionInitStruggle
penisActionInitTentacle:
name: penisActionInitTentacle
penisActions:
name: penisActions
penisActionsTentacle:
name: penisActionsTentacle
penises:
name: penises
penisinit:
name: penisinit
penisinspection:
name: penisinspection
penisinspection2:
name: penisinspection2
penisinspectionstudents:
name: penisinspectionstudents
penisraped:
name: penisraped
penisremark:
name: penisremark
tags: ["unused"]
Penisremark:
name: Penisremark
tags: ["unused"]
penisremarkcomma:
name: penisremarkcomma
tags: ["unused"]
Penisremarkcomma:
name: Penisremarkcomma
tags: ["unused"]
penisremarkcommaquote:
name: penisremarkcommaquote
tags: ["unused"]
Penisremarkcommaquote:
name: Penisremarkcommaquote
tags: ["unused"]
penisremarkquote:
name: penisremarkquote
tags: ["unused"]
Penisremarkquote:
name: Penisremarkquote
penisremarkstop:
name: penisremarkstop
tags: ["unused"]
Penisremarkstop:
name: Penisremarkstop
tags: ["unused"]
penisremarkstopquote:
name: penisremarkstopquote
tags: ["unused"]
Penisremarkstopquote:
name: Penisremarkstopquote
penisSimple:
description: |-
Prints `strap-on` or `penis` based on pc's active penis
penissize:
name: penissize
people:
description: |-
Prints `men and women` unless player has mono-gendered the world
See `<<peopley>>`
tags: ["text"]
peopley:
description: |-
Prints `boys and girls` unless player has mono-gendered the world
See `<<people>>`
tags: ["text"]
peopleyv:
description: |-
Prints `boys and girls` unless player has mono-gendered victims
tags: ["text"]
peppersprays:
name: peppersprays
perNPCSettingsMenu:
name: perNPCSettingsMenu
person:
name: person
person_dance:
name: person_dance
person1:
name: person1
person2:
name: person2
person3:
name: person3
person4:
name: person4
person5:
name: person5
person6:
name: person6
personalUpkeep:
description: |-
Links for brushing one's teeth, grooming pubic hair, and dying pubic hair/brows.
tags: ["links"]
personname:
name: personname
personpenis:
description: |-
Prints out 'penis' or 'clit' based on selected NPC's genitals
Works on beasts as well.
tags: ["text"]
persons:
name: persons
personselect:
name: personselect
personsimple:
name: personsimple
personssimple:
name: personssimple
persony:
description: |-
Prints `boy` or `girl` randomly based on world gender distribution
Extremely different behaviour to `<<person>>`. Consider refactoring
tags: ["text", "refactor"]
petrified_chance:
name: petrified_chance
petrified_chance_text:
name: petrified_chance_text
petrified_end:
name: petrified_end
petrified_init:
name: petrified_init
PetShopBoughtItem:
name: PetShopBoughtItem
pharmnurseinit:
name: pharmnurseinit
tags: ["unused"]
pheat:
name: pheat
pher:
description: |-
Prints singular possessive pronoun of pc (her/his)
See `<<pHer>>` for capitalised prose, or `<<phers>>` as predicate adjective
tags: ["text"]
pHer:
description: |-
Prints capitalised singular possessive pronoun of pc (Her/His)
See `<<pher>>` for uncapitalised prose
tags: ["text"]
phers:
description: |-
Prints singular possessive pronoun as predicate adjective of pc (his/hers)
See `<<pher>>` for general possessive pronoun
tags: ["text"]
pherself:
description: |-
Prints singular objective pronoun as reflexive form of pc (herself/himself)
See `<<pHerself>>` for capitalised prose
tags: ["text"]
pHerself:
description: |-
Prints capitalised singular objective pronoun as reflexive form of pc (Herself/Himself)
See `<<pherself>>` for uncapitalised prose
tags: ["unused", "text"]
phim:
description: |-
Prints singular objective pronoun as reflexive form of pc (her/him)
See `<<pHim>>` for capitalised prose
tags: ["text"]
pHim:
description: |-
Prints capitalised singular objective pronoun as reflexive form of pc (Her/Him)
See `<<phim>>` for uncapitalised prose
tags: ["text"]
photo_attention:
description: |-
Changes attention level during Niki Flier Job
Arguments
- **value**: `number` - Number to raise/lower the attention level by.
name: photo_attention
photo_evidence_upload:
name: photo_evidence_upload
photo_heat:
description: |-
Changes heat level during Niki Flier Job
Arguments
- **value**: `number` - Number to raise/lower the heat level by.
name: photo_heat
photo_high_abduction_options:
description: |-
Options for Abduction Event during Niki Flier Job
name: photo_high_abduction_options
photo_high_calc:
description: |-
Calculates results of Niki Flier Job
name: photo_high_calc
photo_high_check_location:
description: |-
Checks current location in Niki Flier Job
name: photo_high_check_location
photo_high_description:
description: |-
Describes current location during Niki Flier Job
name: photo_high_description
photo_high_events:
description: |-
Potential events for Niki Flier Job
name: photo_high_events
photo_high_gang_clear:
description: |-
Clears gang of NPCs in Niki Flier Job
name: photo_high_gang_clear
photo_high_gang_load:
description: |-
Generates gang of NPCs for Niki Flier Job
name: photo_high_gang_load
photo_high_money_calc:
description: |-
Calculates money earned from Niki Flier Job
name: photo_high_money_calc
photo_high_options:
description: |-
Options for Niki Flier Job
name: photo_high_options
photo_high_options_check:
description: |-
Checks for events that prevent the options from appearing in the Niki Flier Job
name: photo_high_options_check
photo_init:
description: |-
Initializes Niki Flier Job
name: photo_init
photo_interest:
description: |-
Changes interest level during Niki Flier Job
Arguments
- **value**: `number` - Number to raise/lower the interest level by.
name: photo_interest
photo_pass:
description: |-
Passes time during Niki Flier Job
Arguments
- **minutes**: `number` - How many minutes to pass.
name: photo_pass
photo_unset:
description: |-
Resets state after Niki Flier Job
name: photo_unset
physicalAdjustments:
name: physicalAdjustments
physicalAdjustmentsInit:
name: physicalAdjustmentsInit
physique:
name: physique
physique_loss:
name: physique_loss
physiquedifficulty:
name: physiquedifficulty
pickupSexToy:
name: pickupSexToy
pigsOpinion:
description: |-
Prints a short blurb of what the pig's think about the player's appearance.
Calls the "outfitChecks" widget internally.
Only prints if bestiality is enabled or if the farm pigs are in their monster forms.
The descriptions depend on the player's Allure, but if the player's upper and lower clothing slots are completely naked, the widget is special-cased to use the highest-Allure description.
Arguments
- **silent** _optional_: `boolean` - Disables the printed text if set to True. Defaults to False.
- **newlineCount** _optional_: `number` - Number of newlines to print after the statement is printed. Disabled if the statement isn't printed. Defaults to 2.
name: pigsOpinion
pillory_type:
name: pillory_type
pillorypeniscomment:
name: pillorypeniscomment
pinchEnd:
description: |-
Restores the values frozen by `<<pinchStart>>`, keeping the player's progress of reading the book
If the player does not currently have the book, either stolen or rented, also removes Pinch from persistent NPCs
pinchhe:
name: pinchhe
pinchHe:
name: pinchHe
pinchhim:
name: pinchhim
pinchhis:
name: pinchhis
pinchHis:
name: pinchHis
pinchStart:
description: |-
Freezes the story variables, then modifies weather and time
pirate_attack_end:
description: |-
Unsets pirate attack variables to end the event
pirate_attack_init:
description: |-
Sets pirate attack variables to initial values to start the event
pirate_attention:
description: |-
Adds attention away from the pirates to pc's state
`$pirate_attention` is a measure of how distracting the player is during pirate events where 0 is not distracting (0+)
`<<pirate_attention change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
pirate_clothes_up:
description: |-
Dresses pc in pirate clothes appropriate to their status
pirate_mate_work:
description: |-
Prints passage of pc being assigned a task for being in a location
`<<pirate_mate_work location>>`
- **location**: `string` - current location of pc
- `"deck"` | `"cabin"` | `"bilge"`
parameters:
- '"deck"|"cabin"|"bilge"'
tags: ["text"]
pirate_mate_work_end_links:
description: |-
Prints end links after pirate mate work has been completed
Relies on `$phase` being set from `<<pirate_mate_work>>` to determine location to send pc back to
tags: ["links"]
pirate_rescue:
description: |-
Enables rescue from combat if pirate rank is high enough
pirate_status:
description: |-
Changes `$pirate_status` as long as appropriate tier is met
`$pirate_status` is a `0-100` measurement of the pc's status amongst the pirates
If a tier is provided, it must match that tier exactly
`<<pirate_status change qualifyingTier?>>`
- **change**: `number` - status to gain
- **qualifyingTier**: `string` - tier to meet to gain status
- Defaults to `1`
parameters:
- 'number |+ "scum"|"mate"'
pirate_watch:
description: |-
Changes `$pirate_watch` by value
`$pirate_watch` is a `0-100` measurement of how much attention the player has gained from pirates noticing them
`<<pirate_watch change>>`
- **change**: `number` - amount to change by
parameters:
- number
pking:
description: |-
Prints title for pc as a monarch (king/queen)
No existing capitalized version
tags: ["text"]
plant_details:
description: |-
Prints season and location appropriate details for a plant person's hair
`<<plant_details locationOverride?>>`
- **locationOverride** _optional_: `string` - location to match details to
- `default`: pc's current `$location`
- `"moor"` | `"forest"` | `"bog"`
parameters:
- '|+ "moor"|"forest"|"bog"'
tags: ["text"]
Plant_details:
description: |-
Prints capitalised season and location appropriate details for a plant person's hair
`<<Plant_details locationOverride?>>`
- **locationOverride** _optional_: `string` - location to match details to
- `default`: pc's current `$location`
- `"moor"` | `"forest"` | `"bog"`
parameters:
- '|+ "moor"|"forest"|"bog"'
tags: ["text"]
plantlower:
name: plantlower
plantspeech:
name: plantspeech
plantup:
name: plantup
plantupper:
name: plantupper
player-base-body:
name: player-base-body
playerEndWaterBreaking:
name: playerEndWaterBreaking
tags: ["unused"]
playerPrebirth:
name: playerPrebirth
playerPregnancy:
name: playerPregnancy
playLinePool:
name: playLinePool
playReadiness:
name: playReadiness
playWithBreasts:
name: playWithBreasts
plinthroom:
description: |-
Prints the header and links for the underwater ruin plinth room
plot_effects:
name: plot_effects
plots_init:
name: plots_init
plural:
description: |-
Prints a present indicative (are/is) for provided clothing slot
`<<plural slot>>`
- **slot**: `string` - category of worn clothing to check
- %clothesTypesDesc%
parameters:
- "%clothesTypes%"
pluralise:
description: |-
Pluralises a given word if the count is not 1
`<<pluralise count singular plural?>>`
- **count**: `number|var` - number to check
- **singular**: `string` - singular form of the word
- **plural** _optional_: `string` - optional plural form for irregular plurals
- Defaults to singular + "s"
A small set of special cases is defined to automatically handle common irregular plural forms:
`child -> children`
`baby -> babies`
`person -> people`
`man -> men`
`woman -> women`
`penis -> penises`
`foot -> feet`
`leaf -> leaves`
`watch -> watches`
`this -> these`
`that -> those`
`is -> are`
`it -> them`
`potato -> potatoes`
parameters:
- "number|var|bareword &+ text|string |+ text|string"
tags: ["text"]
pmother:
description: |-
Prints respectful title for pc as a parent (mother/father)
See `<<pMother>>` for capitalised prose
tags: ["text"]
pMother:
description: |-
Prints capitalised respectful title for pc as a parent (Mother/Father)
See `<<pmother>>` for uncapitalised prose
tags: ["unused", "text"]
pmrs:
description: |-
Prints respectful title for pc (mr/mrs)
See `<<pMrs>>` for capitalised prose
tags: ["text"]
pMrs:
description: |-
Prints capitalised respectful title for pc (Mr/Mrs)
See `<<pmrs>>` for uncapitalised prose
tags: ["text"]
pms:
description: |-
Prints respectful title for pc (mr/ms)
See `<<pMs>>` for capitalised prose
tags: ["text"]
pMs:
description: |-
Prints capitalised respectful title for pc (Mr/Ms)
See `<<pms>>` for uncapitalised prose
tags: ["text"]
pmum:
description: |-
Prints title for pc as a parent (mum/dad)
See `<<pMum>>` for capitalised prose
tags: ["unused", "text"]
pMum:
description: |-
Prints capitalised title for pc as a parent (mum/dad)
See `<<pmum>>` for uncapitalised prose
tags: ["unused", "text"]
pmummy:
description: |-
Prints title for pc as a parent (mummy/daddy)
See `<<pMummy>>` for capitalised prose
tags: ["text"]
pMummy:
description: |-
Prints capitalised title for pc as a parent (mummy/daddy)
See `<<pmummy>>` for uncapitalised prose
tags: ["unused", "text"]
pniece:
name: pniece
pNiece:
name: pNiece
police_computer_action:
name: police_computer_action
popcornEat:
name: popcornEat
popcornSpill:
name: popcornSpill
tags: ["text"]
portalPantiesClear:
name: portalPantiesClear
portalPantiesDisplay:
name: portalPantiesDisplay
tags: ["unused"]
portalPantiesDisplayItem:
name: portalPantiesDisplayItem
portalPantiesDisplayMessage:
name: portalPantiesDisplayMessage
portalPantiesDisplayVirginity:
name: portalPantiesDisplayVirginity
portalPantiesFillHole:
name: portalPantiesFillHole
portalPantiesFuck:
name: portalPantiesFuck
portalPantiesPass:
name: portalPantiesPass
tags: ["unused"]
portalPantiesPlayerCum:
name: portalPantiesPlayerCum
tags: ["unused"]
portalPantiesPortalCum:
name: portalPantiesPortalCum
portalPantiesSetup:
name: portalPantiesSetup
tags: ["unused"]
possessedWord:
description: |-
`<<possessedWord text colour?>>`
- **text**: `string`
- **colour** _optional_: `string`
parameters:
- "string |+ string"
tags: ["text"]
postMirror:
name: postMirror
pound_compete_text:
name: pound_compete_text
pound_init:
name: pound_init
pound_muzzle:
name: pound_muzzle
pound_punishment_links:
name: pound_punishment_links
pound_stats:
name: pound_stats
pound_status:
name: pound_status
pound_text:
name: pound_text
pound_walk_end:
name: pound_walk_end
poundEndEvent:
description: |-
Handles pound links for work events at the pound, including for when PC is exposed
`<<poundEndEvent skipWork?>>`
- **skipWork** _optional_: `boolean` - to always be returned to the main pound menu (except when exposed)
parameters:
- "|+ bool"
ppackbrother:
name: ppackbrother
pPackbrother:
name: pPackbrother
ppackbrothers:
name: ppackbrothers
pPackbrothers:
name: pPackbrothers
prayerend:
name: prayerend
prayerRoomEnd:
description: |-
Restores the values frozen by at the start of the prayer room scene
Keeps Sydney at the first slot of `$NPCList`
Keeps the world corruption and some other values that can be modified during the scene
prayoptions:
name: prayoptions
PregEventsResult:
name: PregEventsResult
pregnancyBabyText:
name: pregnancyBabyText
pregnancyBirthBlackWolf:
name: pregnancyBirthBlackWolf
pregnancyBirthWolfCave:
name: pregnancyBirthWolfCave
pregnancyDailyEvent:
name: pregnancyDailyEvent
pregnancyFatherHint:
name: pregnancyFatherHint
pregnancyFeats:
name: pregnancyFeats
pregnancyGendersText:
name: pregnancyGendersText
pregnancyMorningAfterPill:
name: pregnancyMorningAfterPill
pregnancyPassout:
name: pregnancyPassout
pregnancySettings:
name: pregnancySettings
pregnancyStatusBlock:
name: pregnancyStatusBlock
pregnancyTest:
name: pregnancyTest
pregnancyType:
name: pregnancyType
pregnancyVar:
name: pregnancyVar
preMirror:
name: preMirror
prenancyObjectRepair:
name: prenancyObjectRepair
presetConfirm:
description: |-
Validates and applies Preset object into state variables
Relies on `_validatorObject` already being set
`<<presetConfirm presetObject useAltLabel?>>`
- **presetObject**: `object` - object to be imported
- **useAltLabel** _optional_: `boolean` - use sub-labels (truthy)
parameters:
- var|bareword
- '"pronoun"|"gender"|"penissize"|"breastsize"|"bottomsize"|"gender_body"|"ballsExist"|"freckles" |+ bool|text|string|number'
tags: ["temp"]
presetConfirmDetails:
name: presetConfirmDetails
presets:
description: |-
Applies a preset to game and refreshes settings display to provided page
`<<presets presetName page? randomizeResult?>>`
- **presetName**: `string` - name of preset to apply
- **page** _optional_: `string` - page to display after preset is applied
- Defaults to "characterSettings". See <<displaySettings>> for additional values
- **randomizeResult** _optional_: `string` - JSON object containing preset results. Generally the return of randomizeSettings()
parameters:
- string |+ string
- '"randomize" &+ text|string &+ bareword|var'
priceSettings:
name: priceSettings
priest:
description: |-
Prints `priest` or `priestess` depending on active NPC pronoun
tags: ["text"]
priestapo:
description: |-
Prints `priest's` or `priestess'` depending on active NPC pronoun
tags: ["text"]
priestAttack:
name: priestAttack
priests:
description: |-
Prints `priests` or `priestesses` depending on active NPC pronoun
tags: ["text"]
princess:
name: princess
printbuysendhome:
name: printbuysendhome
printChastity:
description: |-
Prints the name of the currently-worn chastity device
printCombatMenu:
name: printCombatMenu
printcursed:
name: printcursed
printmoney:
description: |-
Prints amount in pennies as formatted currency
`<<printmoney amountInPennies classlist?>>`
- **amountInPennies**: `number` - amount in pennies, positive or negative
- **classlist** _optional_: `number` - DOM classlist to be used to colour text
- Defaults to `"gold"`
parameters:
- "number |+ text|string"
tags: ["text"]
printpreggy:
name: printpreggy
printShopColourOptions:
name: printShopColourOptions
printTipsList:
name: printTipsList
prison_attention:
name: prison_attention
prison_birds:
name: prison_birds
prison_birds_text:
name: prison_birds_text
prison_bondage_removal:
name: prison_bondage_removal
prison_day:
name: prison_day
prison_detach_leash:
name: prison_detach_leash
prison_end:
name: prison_end
prison_feat_check:
name: prison_feat_check
prison_guard_greet:
name: prison_guard_greet
prison_guard_watch:
name: prison_guard_watch
prison_guards:
name: prison_guards
prison_hope:
name: prison_hope
prison_init:
name: prison_init
prison_inmates:
name: prison_inmates
prison_laundry_options:
name: prison_laundry_options
prison_list:
name: prison_list
prison_list_dark:
name: prison_list_dark
prison_list_result:
name: prison_list_result
prison_list_speech:
name: prison_list_speech
prison_map:
name: prison_map
prison_medical_options:
name: prison_medical_options
prison_punishment_end:
name: prison_punishment_end
prison_punishment_init:
name: prison_punishment_init
prison_reb:
name: prison_reb
prison_rep:
name: prison_rep
prison_repunishment_options:
name: prison_repunishment_options
prison_revolt_options:
name: prison_revolt_options
prison_sleep_options:
name: prison_sleep_options
prison_spire_options:
name: prison_spire_options
prison_teeth:
name: prison_teeth
prison_teeth_text:
name: prison_teeth_text
prison_unbind:
name: prison_unbind
prison_work:
name: prison_work
prisoncrimeUp:
name: prisoncrimeUp
privates:
description: |-
Prints synonyms of crotch if lower is not naked, the genitals otherwise
tags: ["text"]
produceDisplay:
name: produceDisplay
produceDisplayBasket:
name: produceDisplayBasket
produceDisplayItem:
name: produceDisplayItem
produceDisplayItems:
name: produceDisplayItems
produceStats:
description: |-
Prints produce stats section
tags: ["text", "dom"]
produceStatsTitle:
name: produceStatsTitle
prof:
description: |-
Adds proficiency to pc's stats for given category
`$prof[X]` are amount of player skill in given category where 0 is unskilled (0-1,000)
`<<prof category change>>`
- **category**: `string` - category of proficiency to add
- `"spray"` | `"net"` | `"whip"` | `"baton"`
- **change**: `number` - +/- change to apply
parameters:
- '"spray"|"net"|"whip"|"baton" &+ number'
projectoptions:
name: projectoptions
promiscuity1:
name: promiscuity1
promiscuity2:
name: promiscuity2
promiscuity3:
name: promiscuity3
promiscuity4:
name: promiscuity4
promiscuity5:
name: promiscuity5
promiscuity6:
name: promiscuity6
tags: ["unused"]
promiscuityN:
name: promiscuityN
promiscuous:
description: |-
Prints `Promiscuous X` with appropriate colour for level
`<<promiscuous level>>`
- **level**: `number` - required level for this action
- `1-6`: level and colour
- `0`: just text
parameters:
- number
tags: ["unused", "text"]
promiscuous1:
description: |-
Prints `Promiscuous 1` with appropriate colour for level
tags: ["text"]
promiscuous2:
description: |-
Prints `Promiscuous 2` with appropriate colour for level
tags: ["text"]
promiscuous3:
description: |-
Prints `Promiscuous 3` with appropriate colour for level
tags: ["text"]
promiscuous4:
description: |-
Prints `Promiscuous 4` with appropriate colour for level
tags: ["text"]
promiscuous5:
description: |-
Prints `Promiscuous 5` with appropriate colour for level
tags: ["text"]
promiscuous6:
description: |-
Prints `!Promiscuous 6!` with appropriate colour for level
tags: ["unused", "text"]
prop:
name: prop
prostate:
description: |-
Prints `womb` or `prostate` depending on if player has vagina
tags: ["text"]
pshe:
description: |-
Prints singular pronoun of pc (he/she)
See `<<pShe>>` for capitalised prose
tags: ["text"]
pShe:
description: |-
Prints capitalised singular pronoun of pc (He/She)
See `<<pshe>>` for uncapitalised prose
tags: ["text"]
pshes:
description: |-
Prints singular pronoun as is/has contraction of pc (he's/she's)
See `<<pShes>>` for capitalised prose
tags: ["text"]
pShes:
description: |-
Prints capitalised singular pronoun as is/has contraction of pc (He's/She's)
See `<<pshes>>` for uncapitalised prose
tags: ["text"]
psir:
description: |-
Prints respectful address for pc (sir/ma'am)
See `<<pSir>>` for capitalised prose
tags: ["text"]
pSir:
description: |-
Prints capitalised respectful address for pc (Sir/Ma'am)
See `<<pSir>>` for capitalised prose
tags: ["unused", "text"]
pub_cave_arrival:
name: pub_cave_arrival
pub_cave_intro:
name: pub_cave_intro
pubfameChange:
name: pubfameChange
pubfameComplete:
name: pubfameComplete
pubfameDifficulty:
name: pubfameDifficulty
pubfameOptions:
name: pubfameOptions
pubfameRemyPassword:
name: pubfameRemyPassword
pubfameReset:
name: pubfameReset
pull_leash:
name: pull_leash
pulldown:
description: |-
Prints verb of player pulling lower clothing into an exposed state
Does not actually set clothing into exposed or pulled state. Consider refactoring
tags: ["text", "refactor"]
pulldownall:
description: |-
Prints description of player pulling all lower clothing into an exposed state
Does not actually set clothing into exposed or pulled state. Consider refactoring
tags: ["text", "refactor"]
pullsdown:
description: |-
Prints plural verb of player pulling lower clothing into an exposed state
Does not actually set clothing into exposed or pulled state. Consider refactoring
tags: ["unused", "text", "refactor"]
pullsup:
description: |-
Prints plural verb of player pulling upper clothing into an exposed state
Does not actually set clothing into exposed or pulled state. Consider refactoring
tags: ["text", "refactor"]
pullup:
description: |-
Prints verb of player pulling upper clothing into an exposed state
Does not actually set clothing into exposed or pulled state. Consider refactoring
tags: ["text", "refactor"]
pullupall:
description: |-
Prints description of player pulling all upper clothing into an exposed state
Does not actually set clothing into exposed or pulled state. Consider refactoring
tags: ["text", "refactor"]
purity:
description: |-
Adds purity to pc's state, with appropriate modifiers
`$purity` is measure of pc's physical distance from sex where 0 is demonic (0-1,000)
Dark clothing penalises awareness reductions. Consider refactoring
`<<awareness change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
push_nnpc_genderknown:
name: push_nnpc_genderknown
pushClothingCaption:
name: pushClothingCaption
pussies:
name: pussies
pussy:
name: pussy
pussyinspection:
name: pussyinspection
pussyinspectionherm:
name: pussyinspectionherm
pwaitress:
name: pwaitress
questmarker:
name: questmarker
quicksand_actions:
name: quicksand_actions
quicksand_end:
name: quicksand_end
quicksand_pull:
name: quicksand_pull
quickStart:
name: quickStart
quickStartOptions:
name: quickStartOptions
radio_addnews:
name: radio_addnews
tags: ["unused"]
radio_hardreset:
name: radio_hardreset
tags: ["unused"]
radio_listen:
name: radio_listen
radio_midnight:
name: radio_midnight
tags: ["unused"]
radio_placehere:
name: radio_placehere
tags: ["unused"]
radiogroup:
name: radiogroup
tags: ["unused"]
radiooutfits:
name: radiooutfits
radiovar:
container: true
name: radiovar
ragup:
name: ragup
raidLockers:
name: raidLockers
rainstreak:
name: rainstreak
tags: ["unused"]
rainWraith:
name: rainWraith
rainyDayHarass:
name: rainyDayHarass
random_goo:
name: random_goo
random_goo_head:
name: random_goo_head
random_semen:
name: random_semen
random_semen_head:
name: random_semen_head
randomPlay:
name: randomPlay
randomWear:
name: randomWear
rangeslider:
description: |-
Adds a min-max range slider element. **Must be used within a widget;** does not work if used directly within passage text.
`<<rangeslider minVariable maxVariable minDefault maxDefault minValue maxValue stepValue options? callbacks?>>`
- **minVariable**: `string` - the name of the variable to bind the lower slider to (e.g., `$minValue`)
- Must start with `$` or `_`.
- **maxVariable**: `string` - the name of the variable to bind the upper slider to (e.g., `$maxValue`)
- Must start with `$` or `_`.
- **minDefault**: `number` - the initial value of the lower slider
- Must be between `minValue` and `maxValue`.
- **maxDefault**: `number` - the initial value of the upper slider
- Must be between `minValue` and `maxValue`.
- **minValue**: `number` - the minimum allowed value for the sliders
- **maxValue**: `number` - the maximum allowed value for the sliders
- **stepValue**: `number` - the interval between allowed values when sliding
- Must be greater than `0`.
- **options** _optional_: `object` - object containing additional configuration for the slider
- **minClamp** _optional_: `number` - prevents the lower slider value from exceeding this value
- Example: `minClamp: 10`
- **maxClamp** _optional_: `number` - prevents the upper slider value from going below this value
- Example: `maxClamp: 90`
- **minClampMessage** _optional_: `string` - tooltip message displayed when the lower slider reaches the clamp
- Example: `"Minimum value limit reached"`
- **maxClampMessage** _optional_: `string` - tooltip message displayed when the upper slider reaches the clamp
- Example: `"Maximum value limit reached"`
- **callbacks** _optional_: `object` - object containing optional event callbacks
- **onInputChange** _optional_: `function` - called periodically as the slider moves
- Example: `(minValue, maxValue) => console.log("Range changed:", minValue, maxValue)`
- **value** _optional_: `function` - formats the displayed values
- Example: `(min, max) => min + " to " + max`
- **onMouseUp** _optional_: `function` - called when either slider is released
- Example: `(minValue, maxValue) => console.log("Range finalised:", minValue, maxValue)`
skipArgs: true
tags: ["sliders", "inputs", "macros"]
raped:
name: raped
rapestat:
name: rapestat
rapeTrait:
description: |-
Prints `| Survivor` or `| Fucktoy` depending on pc's `$submissive`
tags: ["unused", "text"]
reaction-avery-choke:
name: reaction-avery-choke
reaction-avery-fondle:
name: reaction-avery-fondle
reaction-avery-initiative:
name: reaction-avery-initiative
reaction-avery-kissImminent:
name: reaction-avery-kissImminent
reaction-avery-kissSkin:
name: reaction-avery-kissSkin
reaction-avery-undress:
name: reaction-avery-undress
reaction-gwylan-kiss:
name: reaction-gwylan-kiss
reaction-gwylan-kissDeep:
name: reaction-gwylan-kissDeep
reaction-sydney-expose:
name: reaction-sydney-expose
reading_nook_recipe:
name: reading_nook_recipe
reb:
description: |-
Adds rebelliousness to orphanage
`$orphan_reb` is measure of rebelliousness levels in orphanage where negative is no rebelliousness and 0 is neutral (-50-50)
`<<reb change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
receivephallusdata:
description: |-
Adds the `$index` NPC's phallus data to the PC's science project and prints out the complimentary gold line.
Intended for use in the Beach Phallus Project.
tags: ["text"]
recipe_exam_description:
name: recipe_exam_description
recipe_name:
description: |-
Print display name of recipe
`<<recipe_name foodKey displayModifier?>>`
- **foodKey**: `string` - food key to display for
- **optionalParam2** _optional_: `string` - modify text to display differently
- `"cap"`: First letter capitalised
- `"difficulty"`: Colour code according to difficulty
- `"article"`: Include article (a/the) if present in recipe name
parameters:
- 'text|string |+ "cap"|"difficulty"|"article"|"plural"'
regenerateNPCNameLists:
name: regenerateNPCNameLists
rehideTransformations:
description: |-
Restores the "hidden" state of any transformations hidden by the 'revealTransformations' widget
relation-box:
name: relation-box
relation-box-simple:
name: relation-box-simple
relation-box-stat:
name: relation-box-stat
relation-box-wolves:
name: relation-box-wolves
relation-text:
name: relation-text
tags: ["unused"]
relationshipclamp:
name: relationshipclamp
relationshiptext:
name: relationshiptext
relaxed_guard:
name: relaxed_guard
remove_punishments:
name: remove_punishments
remove_shackle:
name: remove_shackle
removeBabyIntro:
name: removeBabyIntro
removebeachlower:
description: |-
Prints a description of the currently selected NPC removing their lower clothing in specified tense
Intended for use on beach-going NPCs.
See `<<removesbeachlower>>` and `<<removingbeachlower>>` for shorthand verb tenses
`<<removebeachlower tense?>>`
- **tense** _optional_: `number` - tense index
- `0`: Future indicative (pull)
- `1`: Third-person present indicative (pulls)
- `2`: Present continuous (pulling)
tags: ["text"]
removeButtplug:
name: removeButtplug
removeCreature:
name: removeCreature
removeNNPCOutfit:
name: removeNNPCOutfit
removeNPCCondom:
name: removeNPCCondom
removeparasite:
name: removeparasite
removePlayerCondom:
name: removePlayerCondom
removesbeachlower:
description: |-
Prints a description of the currently selected NPC removing their lower clothing in present indicative tense (pulls)
Intended for use on beach-going NPCs.
See `<<removebeachlower>>`and `<<removingbeachlower>>` other verb tenses
tags: ["text"]
removeTryingOn:
name: removeTryingOn
removingbeachlower:
description: |-
Prints a description of the currently selected NPC removing their lower clothing in present continuous tense (pulling)
Intended for use on beach-going NPCs.
See `<<removebeachlower>>`and `<<removesbeachlower>>` other verb tenses
tags: ["text"]
rendermodel:
description: |-
Render and print model as a static image
[High-Level Model API Overview](%workspaceDir%/game/base-clothing/canvasmodel.twee#L2)
`<<rendermodel className? cssAnim?>>`
- **className**: `string` - class or space-separated classes of canvas element to be inserted when placed in the DOM
- **cssAnim** _optional_: `boolean` - render multiple frames for css animation
- Defaults to false
parameters:
- "|+ text|string |+ bool|bareword|var"
tags: ["dom"]
rent_avery:
name: rent_avery
rentday:
name: rentday
rentdue:
name: rentdue
rentduerobin:
name: rentduerobin
rentEdenTrade:
name: rentEdenTrade
rentGwylanTrade:
name: rentGwylanTrade
rentmod:
name: rentmod
rentnopay:
name: rentnopay
rentpay:
name: rentpay
rentRobinPunishment:
name: rentRobinPunishment
replaceAction:
name: replaceAction
tags: ["unused"]
replaceActionLink:
name: replaceActionLink
replaceAskColour:
name: replaceAskColour
tags: ["unused"]
reqSkill:
name: reqSkill
tags: ["unused"]
requiredForRecipe:
description: |-
Prints required ingredients for a specific recipe
`<<requiredForRecipe recipeId recipeStack?>>`
- **recipeId**: `string` - example kind to output
- `"generic"` | `"specific"` | `"irrelevant"`
- **recipeStack** _optional_: `Array` - stack of recipes to go back to during navigation
- Currently does nothing and is not implemented
parameters:
- 'bareword|text'
- 'bareword|text |+ ...(var|bareword|text)'
reroute:
name: reroute
skipArgs: true
tags: ["unused"]
rescueWraith:
name: rescueWraith
reset-multi-canvas:
description: |-
[Multi Canvasmodel API Overview](%workspaceDir%/game/03-Javascript/05-renderer/01-multi-canvasmodel.js#L2)
`<<reset-multi-canvas key>>`
- **key**: `string` -
parameters:
- 'string'
resetCompound:
description: |-
Resets compound alarm, bluff, and theft to their initial values. Used when escaping the compound.
resetEarSlime:
name: resetEarSlime
resetLastOptions:
name: resetLastOptions
resetPregButtons:
name: resetPregButtons
resetSaveMenu:
name: resetSaveMenu
residential:
name: residential
residentialdrain:
name: residentialdrain
residentialdraineventend:
name: residentialdraineventend
residentialdrainlinks:
name: residentialdrainlinks
residentialdrainquick:
name: residentialdrainquick
residentialeventend:
name: residentialeventend
residentialex1:
name: residentialex1
residentialex2:
name: residentialex2
residentialex3:
name: residentialex3
residentialexposed:
name: residentialexposed
tags: ["unused"]
residentialquick:
name: residentialquick
restartMenstruationCycle:
name: restartMenstruationCycle
returnCarried:
name: returnCarried
reveal:
name: reveal
revealTransformations:
description: |-
Sets any "hidden" transformation parts to revealed, with the same rules as ffs being revealed from trauma overflow.
right_pursuit_grab:
name: right_pursuit_grab
rightactionBoundBanish:
name: rightactionBoundBanish
rightactionDifficulty:
name: rightactionDifficulty
rightactionDifficultyMachine:
name: rightactionDifficultyMachine
tags: ["unused"]
rightactionDifficultySelf:
name: rightactionDifficultySelf
rightactionDifficultyStruggle:
name: rightactionDifficultyStruggle
tags: ["unused"]
rightactionDifficultySwarm:
name: rightactionDifficultySwarm
tags: ["unused"]
rightactionDifficultyTentacle:
name: rightactionDifficultyTentacle
rightactionDifficultyVore:
name: rightactionDifficultyVore
tags: ["unused"]
rightActionInit:
name: rightActionInit
rightActionInitMachine:
name: rightActionInitMachine
rightActionInitSelf:
name: rightActionInitSelf
rightActionInitStruggle:
name: rightActionInitStruggle
rightActionInitSwarm:
name: rightActionInitSwarm
rightActionInitTentacle:
name: rightActionInitTentacle
rightActionInitVore:
name: rightActionInitVore
rightActions:
name: rightActions
rightactionSetupTentacle:
name: rightactionSetupTentacle
rightActionsMachine:
name: rightActionsMachine
rightActionsSelf:
name: rightActionsSelf
rightActionsStruggle:
name: rightActionsStruggle
rightActionsSwarm:
name: rightActionsSwarm
rightActionsTentacle:
name: rightActionsTentacle
rightActionsVore:
name: rightActionsVore
rightarmtentacledisable:
name: rightarmtentacledisable
rightcamerapose:
name: rightcamerapose
rightchoke:
name: rightchoke
rightclothesnew:
name: rightclothesnew
rightCondom:
name: rightCondom
rightcoverface:
name: rightcoverface
rightdefault:
name: rightdefault
rightdildowhack:
name: rightdildowhack
rightFixAndCoverActions:
name: rightFixAndCoverActions
rightgrabnew:
name: rightgrabnew
righthandpull:
name: righthandpull
righthypnosiswhack:
name: righthypnosiswhack
rightNPCCondom:
name: rightNPCCondom
rightpenwhacknew:
name: rightpenwhacknew
rightplaynew:
name: rightplaynew
rightshacklewhack:
name: rightshacklewhack
rightspraynew:
name: rightspraynew
rightstealnew:
name: rightstealnew
rightUndressOther:
name: rightUndressOther
rng:
description: |-
Generates a new rng value between min and max to be stored in `$rng`
`$rng` is the pseudo-random value last generated by this call or passage start
`$rngOverride` is a fixed value debug variable to use for all `<<rng>>` calls in a passage
1. `<<rng max?>>`
- **max** _optional_: `number` - maximum (inclusive) value
- Defaults to `100`
2. `<<rng min max>>`
- **min**: `string` - minimum (inclusive) value
- Defaults to `1`
parameters:
- "|+ number |+ number"
rngWraith:
name: rngWraith
rngWraithSocial:
name: rngWraithSocial
robin_amusements_end:
name: robin_amusements_end
robin_amusements_end_links:
name: robin_amusements_end_links
robin_amusements_init:
name: robin_amusements_init
robin_amusements_list:
name: robin_amusements_list
robin_amusements_slots_pull:
name: robin_amusements_slots_pull
robin_amusements_slots_stop:
name: robin_amusements_slots_stop
robinbrothelappear:
name: robinbrothelappear
robinbully:
name: robinbully
robinChocolateOfferHelp:
name: robinChocolateOfferHelp
robinForestCostumeBuy:
name: robinForestCostumeBuy
robinForestCostumeOptions:
name: robinForestCostumeOptions
robinForestCostumePose:
name: robinForestCostumePose
robinhug:
name: robinhug
robinInfirmaryCDOptions:
name: robinInfirmaryCDOptions
robinInfirmaryCDUndressLower:
name: robinInfirmaryCDUndressLower
robinInfirmaryVariableCleanup:
name: robinInfirmaryVariableCleanup
robinMemoryHeal:
description: |-
During sex/combat, Robin can bring up past memories and get -Trauma. This widget makes it so that Robin only gets -Trauma the first time he/she brings up the memory.
`<<robinMemoryHeal key>>`
- **key**: `string` - `$robinSeen` key recording that this memory's -Trauma has been given
parameters:
- "key|string"
name: robinMemoryHeal
robinOpen:
name: robinOpen
robinoptions:
name: robinoptions
robinorphanagekitchen:
name: robinorphanagekitchen
robinpay:
name: robinpay
robinPayout:
name: robinPayout
robinPilloryFailure:
name: robinPilloryFailure
robinPilloryHour:
name: robinPilloryHour
robinPunishment:
name: robinPunishment
robinRentUnsafeMessage:
name: robinRentUnsafeMessage
robinroom:
name: robinroom
robinroom_link:
name: robinroom_link
robinTraumaMultiplierDecay:
name: robinTraumaMultiplierDecay
roomoptions:
name: roomoptions
ruffleHair:
name: ruffleHair
ruffleHairFromSleep:
name: ruffleHairFromSleep
ruined:
description: |-
Destroys all of the pc's clothing slots, whether worn or carried
This includes head, face, neck, over_upper, upper, under_upper, hands, over_lower, lower, under_lower, legs, and feet slot clothing
run_text:
name: run_text
runeventpool:
name: runeventpool
rut:
description: |-
Prints `| Rut`
tags: ["text"]
rut_end:
name: rut_end
rutCycle:
name: rutCycle
sadism:
description: |-
Adds sadism to pc's state
`$sadism` is a measure of pc's progression towards being sadistic where 0 is no progress (0-1,000)
`<<sadism change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
safehouseEvents:
name: safehouseEvents
safereplace:
container: true
name: safereplace
SamOptions:
name: SamOptions
save_anxious_guard:
name: save_anxious_guard
save_methodical_guard:
name: save_methodical_guard
save_relaxed_guard:
name: save_relaxed_guard
save_scarred_inmate:
name: save_scarred_inmate
save_tattooed_inmate:
name: save_tattooed_inmate
tags: ["unused"]
save_veteran_guard:
name: save_veteran_guard
saveConfirm:
name: saveConfirm
saveFavoriteFood:
description: |-
Adds an NPC to favourites list for a specific food
`<<saveFavoriteFood npcName foodName>>`
- **npcName**: `string` - key to save favourite as
- **foodName**: `string` - key for a foodstuff item in `F` to record it as a favourite
parameters:
- 'bareword|text &+ bareword|text'
saveList:
name: saveList
saveNameSection:
name: saveNameSection
saveNPC:
description: |-
Saves persistent npc to named slot
See `<<loadNPC>>`, `<<updateNPC>>`, & `<<clearNPC>>`
`<<saveNPC slot name>>`
- **slot**: `number` - slot number to pull npc data from (zero-based)
- **name**: `string` - key to save npc's data to
- spaces should be avoided if possible
parameters:
- "number &+ bareword|string|text"
saves:
name: saves
saveTempHairStyle:
name: saveTempHairStyle
saveWarning:
name: saveWarning
say_brown_fox:
name: say_brown_fox
sayexhibproud:
name: sayexhibproud
scarred_inmate:
name: scarred_inmate
sceneInseminate:
description: |-
Call this when a scene puts cum inside the player outside of combat (combat uses combatInseminate).
Say who it came from and where it landed, the pregnancy system does the rest: the cum is stored
as a load future pregnancy rolls can pick, and in fetish and silly mode it can also impregnate on the spot.
`<<sceneInseminate orifice donor donorSpecies depth quantity? days?>>`
- **orifice**: `"vagina"|"anus"` - where the cum went
- **donor**: `string` - who it came from. An NPC's name, or "pc"
- **donorSpecies**: `string` - the donor's species, e.g. `"human"`
- **depth**: `"outside"|"imminent"|"deep"` - where it landed. Outside and imminent can be washed off, deep cannot
- **quantity** _optional_: `number` - how many loads land
- Defaults to `1`
- **days** _optional_: `number` - how long the loads keep counting
- Defaults to a 4 to 8 day roll
A normal creampie: `<<sceneInseminate "vagina" "Whitney" "human" "deep">>`
Six loads that last 12 days: `<<sceneInseminate "anus" "Harper's serum" "human" "deep" 6 12>>`
parameters:
- '"vagina"|"anus" &+ text &+ text &+ "outside"|"imminent"|"deep" |+ number |+ number'
schismEnd:
description: |-
Restores the values frozen by `<<schismStart>>` and passes time until 6:00am
schismStart:
description: |-
Freezes the story variables, then morphs the pc into Clánha
school_infirmary_options:
name: school_infirmary_options
school_mark:
name: school_mark
school_skill_change:
name: school_skill_change
school_skill_down:
name: school_skill_down
school_skill_up:
name: school_skill_up
school_skill_up_text:
name: school_skill_up_text
schoolbully:
name: schoolbully
schoolbullyoutside:
name: schoolbullyoutside
schoolChangingRoomLinks:
name: schoolChangingRoomLinks
schoolclothesreset:
name: schoolclothesreset
schoolday:
description: |-
Prints school schedule for today/ tomorrow if player is not trapped
tags: ["text"]
schooleffects:
name: schooleffects
schoolfameboard:
name: schoolfameboard
schoolperiod:
name: schoolperiod
schoolperiodtext:
name: schoolperiodtext
schoolpoolclothes:
name: schoolpoolclothes
schoolpoolclothesreset:
name: schoolpoolclothesreset
schoolpoolexposed:
name: schoolpoolexposed
schoolpoolmasoncheck:
description: |-
Check for bindings and prints quick unbinding description if Mason has to remove them immediately
Mason makes a mental note to bring chastity key from now on
tags: ["text"]
schoolPoolSwap:
name: schoolPoolSwap
schoolpoolundress:
name: schoolpoolundress
schoolrep:
description: |-
Changes school reputation and alerts named NPCs
Reputation is clamped between 0 and 5
See `<<schoolrep_naked>>` for autocalculated version
`<<schoolrep type change>>`
- **type**: `string` - type of reputation to change
- `"crossdress"` | `"herm"`
- **change**: `number` - +/- change to apply
parameters:
- '"crossdress"|"herm" &+ number'
schoolrep_naked:
description: |-
Changes school reputation by 1 in response to player being naked
schoolShop-main:
name: schoolShop-main
schoolskill:
name: schoolskill
schoolskillgeneral:
name: schoolskillgeneral
schoolspareclothes:
name: schoolspareclothes
schoolterm:
name: schoolterm
schoolVendingMachine:
name: schoolVendingMachine
schoolWalkChat:
description: |-
Runs an eventpool with various topics while walking to school with an NNPC. Currently for walking with Robin, Gwylan, or Robin and Gwylan
`<<schoolWalkChat npc?>>`
- **npc**: `string` - named npc to include in events, accepts multiple arguments (`<<schoolWalkChat "gwylan" "robin">>` would assume both Gwylan and Robin present)
- `"robin"` | `"gwylan"`
tags: ["text"]
science_skill_up_text:
name: science_skill_up_text
scienceprojectchance:
name: scienceprojectchance
scienceprojectfinish:
name: scienceprojectfinish
scienceprojectstart:
name: scienceprojectstart
scienceskill:
name: scienceskill
sea_chest:
name: sea_chest
sea_eye:
name: sea_eye
sea_hairwrap:
name: sea_hairwrap
sea_pair_orgasm:
name: sea_pair_orgasm
sea_struggle:
name: sea_struggle
sea1:
name: sea1
sea2:
name: sea2
sea3:
name: sea3
sea4:
name: sea4
sea5:
name: sea5
sea6:
name: sea6
sea7:
name: sea7
seabeach:
name: seabeach
seabeach1:
name: seabeach1
seabeach2:
name: seabeach2
seabeacheventend:
name: seabeacheventend
seabeachquick:
name: seabeachquick
seacliffs:
name: seacliffs
seacliffseventend:
name: seacliffseventend
seacliffsquick:
name: seacliffsquick
seadocks:
name: seadocks
seadockseventend:
name: seadockseventend
seadocksquick:
name: seadocksquick
seaflotsam:
name: seaflotsam
seagullFood:
name: seagullFood
seamove:
name: seamove
seamoveeventend:
name: seamoveeventend
seamovequick:
name: seamovequick
searape:
name: searape
searchWardrobeForItem:
name: searchWardrobeForItem
searocks:
name: searocks
searockseventend:
name: searockseventend
searocksquick:
name: searocksquick
seasonal_beverage:
description: |-
Prints beverage appropriate to the current season
tags: ["text"]
seatangle:
name: seatangle
seatedflashcrotchunderskirt:
name: seatedflashcrotchunderskirt
Seatedflashcrotchunderskirt:
name: Seatedflashcrotchunderskirt
seatedflashcrotchunderskirtcomma:
name: seatedflashcrotchunderskirtcomma
tags: ["unused"]
Seatedflashcrotchunderskirtcomma:
name: Seatedflashcrotchunderskirtcomma
tags: ["unused"]
seatedflashcrotchunderskirtline:
name: seatedflashcrotchunderskirtline
seatedflashcrotchunderskirtstop:
name: seatedflashcrotchunderskirtstop
tags: ["unused"]
Seatedflashcrotchunderskirtstop:
name: seatedflashcrotchunderskirtstop
tags: ["unused"]
seatentacles:
name: seatentacles
seavore:
name: seavore
seductioncheck:
name: seductioncheck
seductiondifficulty:
description: |-
Prints difficulty of seduction in current combat or estimate of difficulty out
`_text_output` is set to difficulty description for use with `noPrint`
`noPrint` styles differ depending on combat/ non-combat. Consider refactoring
`<<seductiondifficulty noPrint?>>`
- **noPrint** _optional_: `boolean` - Suppress output and only write to temp (truthy)
parameters:
- "|+ bool"
tags: ["text", "temp", "refactor"]
seductionskill:
description: |-
Adds seduction skill to pc's state
`$seductionskill` is a measure of pc's proficiency seducing others where 0 is awkward (0-1,000)
`<<seductionskill change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
seductionskilluptext:
name: seductionskilluptext
seductionskilluse:
name: seductionskilluse
seductionskillusecombat:
name: seductionskillusecombat
seductiontext:
description: |-
Prints colour-coded adjective of active seduction skill usage
tags: ["unused", "text"]
seize_stolen_goods:
description: |-
Prints a scene where the player gets searched. Removes black market valuables and overdue/stolen books, although a high skulduggery skill may bypass this
`<<seize_stolen_goods amount?>>`
- **amount**: `"all"` - Removes the player's rented book even if not reported, in cases where the player will be unable to return it such as when going to prison
tags: ["text"]
select_random_clothes:
name: select_random_clothes
select_random_clothes_limited:
name: select_random_clothes_limited
selectmodel:
description: |-
Select model and prepare for rendering
Do not render instance multiple times on same passage
[High-Level Model API Overview](%workspaceDir%/game/base-clothing/canvasmodel.twee#L2)
`<<selectmodel modelName slot>>`
- **modelName**: `string` - CanvasModel name in Renderer.CanvasModels
- **slot**: `string` - id to speed up rendering between passages
parameters:
- text |+ text
selectNpcWithPartInPosition:
name: selectNpcWithPartInPosition
selectNpcWithPartInPositionAnus:
name: selectNpcWithPartInPositionAnus
selfsuckchecks:
name: selfsuckchecks
sellbuns:
name: sellbuns
semen:
name: semen
tags: ["unused"]
semen_amount:
description: |-
Adds semen to pc's semen supply
`$semen_amount` is the current pc semen amount remaining
`<<semen_amount change>>`
- **change**: `number` - +/- change to apply
semenOrgasm:
name: semenOrgasm
semenswallowedstat:
name: semenswallowedstat
semenvolume:
description: |-
Adds semen to pc's semen capacity with appropriate checks
`$semenvolume` is the current maximum pc semen capacity (0-3,000)
`<<semenvolume change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
sendItemsTo:
name: sendItemsTo
sendItemsToDropdown:
name: sendItemsToDropdown
sendToWardrobeFromDefault:
name: sendToWardrobeFromDefault
setBabyIntro:
name: setBabyIntro
setChildFirstWord:
name: setChildFirstWord
tags: ["unused"]
setfemininitymultiplierfromgender:
name: setfemininitymultiplierfromgender
tags: ["unused"]
setFont:
name: setFont
setKnowsAboutPregnancy:
name: setKnowsAboutPregnancy
setKnowsAboutPregnancyCurrentLoaded:
name: setKnowsAboutPregnancyCurrentLoaded
setKnowsAboutPregnancyInLocation:
name: setKnowsAboutPregnancyInLocation
tags: ["unused"]
setLocalPronouns:
name: setLocalPronouns
tags: ["unused"]
setnewtarget:
name: setnewtarget
setNPCStrapon:
name: setNPCStrapon
setShopCustomColors:
name: setShopCustomColors
setSlimeSleepEvents:
name: setSlimeSleepEvents
setTalkedAboutPregnancy:
name: setTalkedAboutPregnancy
settextcolorfromfemininity:
name: settextcolorfromfemininity
settextcolorfromgender:
name: settextcolorfromgender
settings:
name: settings
settingsExit:
name: settingsExit
settingsExitConfirm:
name: settingsExitConfirm
settingsExitConfirmHistory:
name: settingsExitConfirmHistory
tags: ["unused"]
settingsExitFunction:
name: settingsExitFunction
settingsOptions:
name: settingsOptions
settingsStart:
name: settingsStart
settingsTabButton:
name: settingsTabButton
setTowerTemp:
name: setupTowerTemp
setup_pillory:
name: setup_pillory
setup-multi-canvas:
description: |-
[Multi Canvasmodel API Overview](%workspaceDir%/game/03-Javascript/05-renderer/01-multi-canvasmodel.js#L2)
`<<setup-multi-canvas key id slot>>`
- **key**: `string` -
- **id**: `string` -
- **slot**: `string` -
parameters:
- 'string &+ string &+ string'
setupBreastjobDemo:
name: setupBreastjobDemo
setupCombatLightingDemo:
description: |-
No description.
setupDefaults:
name: setupDefaults
setupFeatBoosts:
name: setupFeatBoosts
setupMidOrgasm:
name: setupMidOrgasm
setupOptions:
name: setupOptions
setupTabs:
name: setupTabs
setupTransformationPiecesObject:
name: setupTransformationPiecesObject
setupTransformations:
name: setupTransformations
severe_anxiety_disorder_text:
description: |-
Prints "Severe Anxiety Disorder" label
sewerscountdown:
name: sewerscountdown
sewersend:
name: sewersend
sewerspassout:
name: sewerspassout
sewerssleep:
name: sewerssleep
sewerssleephour:
name: sewerssleephour
sewersstart:
name: sewersstart
sex:
name: sex
sexactiondifficulty:
description: |-
Prints colour-coded adjective of sex action difficulty in current combat, for use by [sexskill]actiondifficulty widgets
`<<sexactiondifficulty skill>>`
- **skill**: `"analskill"|"bottomskill"|"chestskill"|"feetskill"|"handskill"|"oralskill"|"penileskill"|"thighskill"|"vaginalskill"` - the skill with which to check action likelihood of success by
parameters:
- '"analskill"|"bottomskill"|"chestskill"|"feetskill"|"handskill"|"oralskill"|"penileskill"|"thighskill"|"vaginalskill"'
tags: ["text"]
sexcheck:
name: sexcheck
sexControl:
name: sexControl
sexDefaults:
name: sexDefaults
sexToysFeatUI:
name: sexToysFeatUI
sexToysFeatUIColour:
name: sexToysFeatUIColour
sextoystat:
name: sextoystat
shackle_feet:
name: shackle_feet
shadyFan:
name: shadyFan
shame:
description: |-
Adds shame to pc's current exhibitionist stint
`$shame` is a measure of how embarrassed pc is to be exposed where 0 is unrepentant (0-100)
Shame as a concept is unused. Consider refactoring when clothes are easier to micromanage
`<<shame change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
tags: ["unused", "refactor"]
sharp_eyes:
description: |-
Prints `| Sharp eyes`
tags: ["text"]
shaveOptions:
description: |-
Links for the different style options for shaving one's pubic hair.
tags: ["text"]
shavestrip:
name: shavestrip
shopBuyItemStatus:
name: shopBuyItemStatus
shopbuyv2:
description: |-
1. `<<shopbuyv2 slot action subAction?>>`
2. `<<shopbuyv2 slot "buy" "send" choiceIndex amount?>>`
- **slot**: `string` - clothing slot type to affect
- `"all"` | %clothesTypesDesc%
- **action**: `string` - action to apply to for specified slot
- `"reset"` | `"buy"` | `"steal"` | `"try"` | `"return"`
- **subAction** _optional_: `string` - action to do after acquiring the clothes
- `"wear"` | `"send"` | `null`
- **choiceIndex** _optional_: `number` - index of clothes setup object
- **amount** _optional_: `number` - amount to buy. Defaults to 1
parameters:
- '"all"|%clothesTypes% |+ "reset"|"buy"|"steal"|"try"|"return" |+
"wear"|"send"|null |+ number'
- '"all"|%clothesTypes% &+ "buy" &+ "send" &+ number &+ number'
shopCategoryReplace:
name: shopCategoryReplace
shopCategoryTabs:
name: shopCategoryTabs
shopclothingcustomcolourwheel:
description: |-
Wrapper for `window.shopClothCustomColorWheel()`
Prints customcolourwheel form for clothing shop
`<<shopclothingcustomcolourwheel type>>`
- **type**: `string` - custom clothing slots to pull from/ save to
- `"primary"` | `"secondary"`
parameters:
- '"primary"|"secondary"'
tags: ["form"]
shopClothingFilterReset:
name: shopClothingFilterReset
shopClothingFilterSettingsDefault:
name: shopClothingFilterSettingsDefault
shopCommandoCheck:
description: |-
Checks if pc has left a shop without wearing underwear
shopDetailsv2:
name: shopDetailsv2
shopFullImage:
name: shopFullImage
shopFullImagePart:
name: shopFullImagePart
shopFullImageSlot:
name: shopFullImageSlot
shopFullImageToggle:
name: shopFullImageToggle
shopHoodCheck:
name: shopHoodCheck
shopHuntAction:
description: |-
Sets `$shopHunt.player.action`, and sets other variables based on argument.
`<<shopHuntAction action variant?>>`
- **action**: `string` - the specific action the player is performing
- **variant** _optional_: `any` - additional context, such as target location or target actor, for the specified action
shopHuntActorFound:
description: |-
Handles printing text for all cases of actors finding the player
`<<shopHuntActorFound actorID context? list? priority?>>`
- **actorID**: `number` the element in the `$shopHunt.actors` array to use
- **context** _optional_: `string` the context in which the player is being found. Found while hiding, found from reflecting light, etc.
- **list** _optional_: `Array` every actor that will be showing a reaction. Used to condense mannequin reactions and handle priority checking
- **priority** _optional_: `boolean` whether some actors should take "priority" over others. If this is true and certain actors are present in certain contexts, text output is skipped for all actors except those specific ones
shopHuntActorList:
description: |-
Prints the names/titles of all actors present, with proper colours
`<<shopHuntActorList list ...variants?>>`
- **list**: `Array` IDs of all actors to be named
- **variants**: `string` variants to be applied to the output. "cap" capitalises the first name, in the event of a title that starts with "the"
shopHuntActorName:
description: |-
Prints the name/title of the specified actor
`<<shopHuntActorList actorID ...variants?>>`
- **actorID**: `number` the element in the `$shopHunt.actors` array to use
- **variants**: `string` variants to be applied to the output. "cap" capitalises the name, in the event of a title that starts with "the"
shopHuntActors:
description: |-
Handles all actor activity, such as movement, searching and special actions. Does not output any text related to this
`<<shopHuntActors>>`
shopHuntActorSearch:
description: |-
Determines what actors find when searching, based on their state
`<<shopHuntActorSearch actorID>>`
- **actorID**: `number` the element in the `$shopHunt.actors` array to use
shopHuntActorSetState:
description: |-
Sets an actor's state and target, to direct movement
<<shopHuntActorSetState actorID state? target?>>
- **actorID**: `number|string` the element in the `$shopHunt.actors` to use. You can also use actor type as an argument, for all actors except mannequins
- **state** _optional_: the state to set the actor to. With empty argument, keeps their current state intact
- **target** _optional_: the target to direct the actor to. Does nothing with empty argument, for states that don't require targets
shopHuntArea:
description: |-
Prints all text relating to the player's location and actions in the shop
`<<shopHuntArea>>`
shopHuntCreateActor:
description: |-
Creates a new actor in the `$shopHunt.actors` array
`<<shopHuntCreateActor actorName role? position?>>
- **actorName**: `string` the type of actor to generate
- `"Eden"` | `"Gwylan"` | `"mannequin"` | `"Elkspawn"` | `"Ivory Wraith"` | `"nobody"`
- **role** _optional_: `string` the role the new actor should play. Defaults to "enemy", can be specified to "ally"
- **position** _optional_: `string|number` the relative position to spawn a new actor in
shopHuntCreateActorMannequin:
description: |-
Creates mannequins as new actors the specified number of times
`<<shopHuntCreateActorMannequin amount? role? position?>>`
- **amount** _optional_: `number` the amount of mannequins to attempt to create. Cannot create more than the current value of `$shopHunt.shop.mannequins`
- **role** _optional_: `string` the role the new mannequin actor should play. Defaults to "enemy", can be specified to "ally"
- **position** _optional_: `string|number` the relative position to spawn a new mannequin actor in
shopHuntDamageActor:
description: |-
Damages the actor by reducing their .health property
`<<shopHuntDamageActor actorID damage? defeat?>>`
- **actorID**: `number` the element in the `$shopHunt.actors` array to use
- **damage** _optional_: `number` the amount of damage to do. Defaults to 1
- **defeat** _optional_: `boolean` whether the actor can be defeated by this damage. Defaults to no
shopHuntDebug:
description: |-
Prints debug options for the shop hunt at the bottom of the screen, and adds information into the console
`<<shopHuntDebug>>`
shopHuntDecoy:
description: |-
Draws the attention of actors to the specified location, making them pathfind to that area
`<<shopHuntDecoy loc? actors? override?>>`
- **loc** _optional_: `string` the location to draw actors' attention to. Defaults to the player's current location
- **actors** _optional_: `Array|string|number` the actors to draw the attention of. Defaults to all actors; can be a number of specific actors, a single specific actor, every actor of a type or every actor in a specific location.
- **override** _optional_: `boolean` whether to draw the attention of all actors, or only actors in non-distractible states. Defaults to false
shopHuntDefeatActor:
description: |-
Defeats the specified actor, meaning the actor gets archived and has their state set to null.
`<<shopHuntDefeatActor>>`
shopHuntDoor:
description: |-
Prints either "front door" or "door to the garden" depending on shop hunt context.
`<<shopHuntDoor>>`
shopHuntDragOptions:
description: |-
Prints the options the player can take while they're being dragged.
`<<shopHuntDragOptions first?>>`
- **first** _optional_: whether this is the first turn the player has started being dragged. Changes what options are available
shopHuntEffects:
description: |-
Sets various temporary variables needed, handles player and actor history and knowledge
`<<shopHuntEffects>>`
shopHuntEmergencyExit:
description: |-
Provides an escape link in case a shop hunt encounter is initialised improperly.
`<<shopHuntEmergencyExit>>`
shopHuntEnd:
description: |-
Ends the shop hunt sequence, cleaning up variables, outputting text and awarding feats based on ending.
`<<shopHuntEnd>>`
shopHuntFight:
description: |-
Sets player and actor stats to prepare for the upcoming fight. Does not contain the fight itself
`<<shopHuntFight actorID type?>>`
- **actorID**: `number` the element in the `$shopHunt.actors` array to use
- **type** _optional_: `string` the specific type of fight about to happen. Defaults to "fight"
shopHuntGwylanHypnotise:
description: |-
Grants Gwylan points towards winning, gives the player command restrictions if applicable, and can lead to Gwylan's victory
`<<shopHuntGwylanHypnotise>>`
shopHuntHoldOptions:
description: |-
Prints the options the player can take while they're being held by one or more mannequins.
`<<shopHuntHoldOptions>>`
shopHuntInit:
description: |-
Initialises the shop hunt sequence, setting all necessary variables
`<<shopHuntInit>>`
shopHuntItemsPresent:
description: |-
Returns all items in the specified location
`<<set _example to shopHuntItemsPresent(location)>>`
`<<shopHuntItemsPresent location list?>>`
- **location**: `string` the location in the shop to check for items
- **list** _optional_: `boolean` whether to output a formatting string or an array, defaults to array
shopHuntLocName:
description: |-
Returns a proper location name based on argument
`<<set _example to shopHuntLocName(location, ...variants)>>`
`<<shopHuntLocName location ...variants>>`
- **location**: `string` Location to check
- **variants**: `string` variants to be applied to the output. "cap" capitalises the name, etc
shopHuntMap:
description: |-
Displays a visual map of the shop, based on what areas the player has seen.
`<<shopHuntMap>>`
shopHuntMapForget:
description: |-
Reduces `.seen` values for locations in `$shopHunt.player.map`, starting from the furthest locations from the player, if the player has been "camping" in one spot for too long
`<<shopHuntMapForget>>`
shopHuntMess:
description: |-
Adjusts $shopHuntMess, to keep track of messes and damage made during shop shop hunts
`<<shopHuntMess value? events?>>`
- **value** _optional_: `number` The amount of damage done, the amount to increment $shopHuntMess.value. Defaults to 1
- **events** _optional_: `Array|string` The types of events to add to $shopHuntMess.events. Defaults to none
shopHuntOptions:
description: |-
Prints all the links, and text describing the links, for a standard turn
`<<shopHuntOptions>>`
shopHuntPronoun:
description: |-
Prints the specified pronoun of the specified actor's gender
`<<shopHuntPronoun word actorID?>>`
- **word**: `string` the pronoun to print
- `"boy"` | `"he"` | `"hers"` | `"him"` | `"himself"` | `"his"` | `"man"` | `"men"`
- Capitalised arguments will automatically capitalise the output, no "cap" argument required
- **actorID** _optional_: `number` the actor whose pronouns to use. Defaults to the last specified actor, stored in `$shopHuntActive`
shopHuntResistGrip:
description: |-
Prints the `<<physiquedifficulty>>` check based on actor grip strength when being dragged. NOTE: for the future, this will also handle willpower checks for resisting the Wraith.
`<<shopHuntResistGrip actorID>>`
- **actorID**: `number` the actor to check the grip of
shopHuntShuffle:
description: |-
Generates the shop map, or reshuffles its locations
`<<shopHuntShuffle init?>>
- **init** _optional_: `string` Whether or not the shop is being generated for the first time or reshuffled
shopHuntStun:
description: |-
Stuns an actor by setting their `.stun` properties
`<<shopHuntStun actorID turns types trueSet?>>`
- **actorID**: `number` the actor to stun
- **turns**: `number` how many turns to stun them for
- **types**: `string|Array` the types of stun to apply to the actor
- **trueSet**: `boolean` whether to set the actor's stun value to `turns` or increment by `turns`. Defaults to increment
shopHuntTextmap:
description: |-
Displays a text-based map of the shop, based on what areas the player has seen. Called automatically in `<<shopHuntMap>>` if images are disabled
`<<shopHuntTextMap>>`
shopHuntTurn:
description: |-
Prints text and sets variables related to actor positions and actions
`<<shopHuntTurn>>`
shopkeeperDesc:
description: |-
Prints either "Gwylan" or "shopkeeper" based on whether Gwylan has been met
`<<shopkeeperDesc formatting?>>`
- **formatting** _optional_: `string` - formatting to apply
- `"cap"`: capitalise output, for when Gwylan is not met
shoptraits:
description: |-
Prints all clothing traits as DOM
tags: ["dom"]
showlayer:
description: |-
Show layer and optionally add filters
[High-Level Model API Overview](%workspaceDir%/game/base-clothing/canvasmodel.twee#L2)
`<<showlayer layerName ...filters?>>`
- **layerName**: `string` - layer name corresponding to CanvasModel.layer
- **filters** _optional_: `object` - Filter objects passed to layer
- Later filters have priority
parameters:
- text |+ ...(bareword|var)
showTransformations:
description: |-
Restores the transformations hidden by `<<hideTransformations>>`
tags: ["unused"]
ShowUnderEquip:
name: ShowUnderEquip
shredderactions:
name: shredderactions
sidebarBadEndTimeLabel:
name: sidebarBadEndTimeLabel
sidebarDayStateTime:
name: sidebarDayStateTime
sidebarDefaultTime:
name: sidebarDefaultTime
sidebarHourUnknownMinutes:
name: sidebarHourUnknownMinutes
sidebarlookdescription:
name: sidebarlookdescription
sidebarTime:
name: sidebarTime
silver_hunt_action_guard:
description: |-
Performs a guard's action during silver hunt
`<<silver_hunt_move_guard guardIndex>>`
- **guardIndex**: `number` - index of guard to perform action for
parameters:
- number
silver_hunt_move_guard:
description: |-
Moves guard during silver hunt
`<<silver_hunt_move_guard guardIndex forceMove?>>`
- **guardIndex**: `number` - index of guard to move
- **forceMove** _optional_: `boolean` - force guard to move even if not a legal move (truthy)
parameters:
- "number |+ bool"
sir:
description: |-
Prints `sir` or `miss` from `$pronoun`, the pronoun of the NPC last selected by `<<personX>>` (`$NPCList[$index].pronoun`)
Use `<<psir>>` for the PC
tags: ["text"]
Sir:
description: |-
Prints capitalised `Sir` or `Miss` from `$pronoun`, the pronoun of the NPC last selected by `<<personX>>` (`$NPCList[$index].pronoun`)
Use `<<pSir>>` for the PC
tags: ["text"]
sister:
name: sister
Sister:
name: Sister
sister_npc:
name: sister_npc
Sister_npc:
name: Sister_npc
tags: ["unused"]
sizeLimitsSettings:
name: sizeLimitsSettings
skill_difficulty:
name: skill_difficulty
skillDifficultyText:
name: skillDifficultyText
skilllettergrade:
description: |-
Prints 11-tier colour-coded letter grade of difficulty based on argument
`<<skilllettergrade difficulty>>`
- **difficulty**: `number` - prints some grade in {<0: None, 0: F, <=100: F+, <=200: D, <=300: D+, <=400: C,
<=500: C+, <=600: B, <=700: B+, <=800: A, <=900: A+, >900: S}
parameters:
- 'number'
tags: ["text"]
skinColourName:
name: skinColourName
skincolourtext:
description: |-
Prints `X skin colour.` modified by natural skin colour and tan levels
tags: ["text"]
skinColourVariableCombine:
description: |-
Combines `_skinTone` and `_skinShade` and applies that value to `$player.skin.color`.
skintonetext:
description: |-
Prints `X skin tone.`
skipToOrgasm:
name: skipToOrgasm
skirt:
description: |-
Prints descriptor of active NPC's lower clothing
See `<<dress>>` for upper clothing or `<<panties>>` for inner_lower clothing
See `<<npcClothesText>>` for full name of clothes
tags: ["text"]
skul_dock_contents:
name: skul_dock_contents
skul_dock_init:
name: skul_dock_init
skul_dock_location:
name: skul_dock_location
skul_dock_nav:
name: skul_dock_nav
skul_dock_state:
name: skul_dock_state
skulduggery:
description: |-
Adds skulduggery skill to pc's state
`$skulduggery` is a measure of pc's dexterity and guile where 0 is bad (0-1,000)
`<<skulduggery change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
skulduggerycheck:
description: |-
Performs an inline skulduggery check
`$skulduggerydifficulty` is a measure of the action difficulty where 0 is guaranteed (0-1,000)
`$skulduggerysuccess` is the result of the check where 0 is failed (0|1)
`<<skulduggerycheck outputModifier?>>`
- **outputModifier** _optional_: `string` - type of modifier to apply
- `"silent"`: Does not print results
parameters:
- '|+ "silent"'
tags: ["text"]
skulduggerydifficulty:
description: Prints colour-coded adjective of skulduggery difficulty
Relies on `$skulduggerydifficulty`, see `<<skulduggerycheck>>`
tags: ["text"]
skulduggeryrequired:
description:
Prints minimum skulduggery level required to successfully lockpick
`$lock` is the minimum skulduggery skill required to unlock where 0 is guaranteed (0-1,000)
tags: ["text"]
skulduggeryskilluse:
name: skulduggeryskilluse
skulduggeryuse:
description: |-
Prints skulduggery up text or (depending on arguments) that the skulduggery action was too easy to learn from. Has option for text about locks/targets. If used in a situation where skulduggerycheck isn't used (skulduggerysuccess isn't used) but it's wanted to still print that the action was too easy argument 2 (_args[1]) should be any non falsey value (that's not "locks" or "target").
Use <<skulduggeryuseinline>> if no ending linebreaks are necessary.
`<<skulduggeryuseinline difficulty? type? progress?>>`
- **difficulty** _optional_: `int` - The difficulty rating to check current skill against
- **type** _optional_: `string` - locks/target/anything
- **progress** _optional_: `int` - The difficulty rating to check current skill against
skulduggeryuseinline:
description: |-
Prints skulduggery up text or (depending on arguments) that the skulduggery action was too easy to learn from. Has option for text about locks/targets. If used in a situation where skulduggerycheck isn't used (skulduggerysuccess isn't used) but it's wanted to still print that the action was too easy argument 2 (_args[1]) should be any non falsey value (that's not "locks" or "target").
`<<skulduggeryuseinline difficulty? type? progress?>>`
- **difficulty** _optional_: `int` - The difficulty rating to check current skill against
- **type** _optional_: `string` - locks/target/anything
- **progress** _optional_: `int` - The difficulty rating to check current skill against
skulshopevents:
name: skulshopevents
skybox:
name: skybox
tags: ["dom"]
skyscraper_time:
name: skyscraper_time
sleep:
description: |-
Process and apply sleep effects, with appropriate interruptions
`<<sleep skipWakeEvents?>>`
- **skipWakeEvents** _optional_: `boolean` - skip events that could wake pc from sleep, even if they would normally occur
parameters:
- "|+ bool"
sleep_clamp:
name: sleep_clamp
sleepeffects:
name: sleepeffects
sleephour:
name: sleephour
sleepJanet:
description: |-
Restores the values frozen by `<<callJanet>>`
slime_wake_home:
name: slime_wake_home
slimeEventEnd:
name: slimeEventEnd
slimeEventResult:
name: slimeEventResult
slimePunishmentForest:
name: slimePunishmentForest
slimeSleepEvents:
name: slimeSleepEvents
slimeWakeAlleyway:
name: slimeWakeAlleyway
slimeWakeBodyliquid:
description: |-
Covers pc in random amounts of specified liquid from slime sleepwalking pc around town
`<<slimeWakeBodyliquid liquid>>`
- **liquid**: `string` - liquid to apply to pc
- %liquidTypesDesc%
parameters:
- "%liquidTypes%"
slimeWakeMasturbation:
description: |-
Activates forced slime masturbation outcome out of sleep
tags: ["links"]
slithering:
description: |-
Prints synonym for `slithering`
tags: ["text"]
slithers:
description: |-
Prints synonym for `slithers`
tags: ["text"]
slug_caught:
name: slug_caught
slug_cave_intro:
name: slug_cave_intro
slug_end:
name: slug_end
slug_init:
name: slug_init
slug_text:
name: slug_text
slut:
description: |-
Prints `pervert` or `slut` depending on pc's appearance
tags: ["text"]
small_text:
description: |-
Prints appropriate `| Small body` descriptor that allowed this text option
tags: ["text"]
smuggler_pub_wren:
name: smuggler_pub_wren
smugglerdifficultyactions:
name: smugglerdifficultyactions
smugglerdifficultynpcs:
name: smugglerdifficultynpcs
smugglerdifficultytext:
name: smugglerdifficultytext
smugglerobject:
name: smugglerobject
social:
name: social
someone:
description: |-
Prints `<<him>>` of an NPC, either provided or previously selected
Modifies selected NPC
`<<someone npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of active npcs
- `0-5`: Defaults to 0
parameters:
- "|+ number"
someones:
description: |-
Prints possessive pronoun of an NPC, either provided or previously selected
Modifies selected NPC if not `"two"`
`<<someones npcIndex?>>`
- **npcIndex** _optional_: `number|string` - zero-based index of active npcs
- `"two"` : does not select NPC, just prints `"their"`
- `0-5` : selects NPC and prints `<<his>>`
parameters:
- 'number|"two"'
spa_actions:
name: spa_actions
spa_breasts_strip:
name: spa_breasts_strip
spa_end:
name: spa_end
spa_event_select:
name: spa_event_select
spa_genitals_reaction:
name: spa_genitals_reaction
spa_genitals_strip:
name: spa_genitals_strip
spa_hand_failed:
name: spa_hand_failed
spa_init:
name: spa_init
spa_job_init:
name: spa_job_init
spa_rape_failed:
name: spa_rape_failed
spa_rob_options:
name: spa_rob_options
spa_tan_events:
name: spa_tan_events
spa_work:
name: spa_work
spankmaninit:
name: spankmaninit
spareclothesdomus:
name: spareclothesdomus
spareschoolswimshorts:
name: spareschoolswimshorts
spareschoolswimsuit:
name: spareschoolswimsuit
speak:
name: speak
specialClothesEffectsSetup:
name: specialClothesEffectsSetup
specialClothesHint:
description: |-
Finds clothing item unlock hint(s) from special clothes setup object, and prints them as a formatted list
specialClothesRefresh:
name: specialClothesRefresh
specialClothesUnlock:
description: |-
Unlocks a set or item of special clothing
first argument is either "set" or "item", second is name of set as defined in setup or name of individual clothing item
parameters:
- '"set"|"item" &+ text|string'
specialClothesUpdate:
name: specialClothesUpdate
specialClothingFeatUI:
name: specialClothingFeatUI
speech-gwylan:
name: speech-gwylan
speech-sydney:
name: speech-sydney
speechWraith:
description: |-
Prints up to two relevant wraith lines
`_line1` / `_line2` are two lines chosen
`"lines"` argument expects output to be silenced since it doesn't properly set `_speaks`.
Consider refactoring to either apply speaks or guarantee no output is generated
Sydney is a love interest but doesn't have argument override set. Consider refactoring
`<<speechWraith type?>>`
- **type** _optional_: `string` - type of extra modification to do on pool of lines to pull from
- `"none"`: Relevant lines (default)
- `"lines"`: Generic lines
- `loveInterestName`: Overrides present npcs to add relevant lines to pool
- %loveInterestDesc%
parameters:
- '|+ "none"|"lines"|%loveInterest%'
tags: ["text", "temp", "refactor"]
spouse:
name: spouse
spray:
description: |-
Adds amount of spray uses to pc's state
`$spray` is number of pepper spray uses available to player where 0 is none remaining
Consuming a charge does not grant proficiency skill when successfully conserving a charge or using infinite spray. Consider refactoring
`<<spray numberUses>>`
- **numberUses**: `number` - +/- charges to use
- `+number`: Adds additional use to pc
- `-number`: Consumes use of spray
parameters:
- number
tags: ["refactor"]
sprayspeech:
name: sprayspeech
stalk_ambush_text:
name: stalk_ambush_text
stalk_athletics_difficulty:
name: stalk_athletics_difficulty
stalk_attack:
name: stalk_attack
stalk_catch:
name: stalk_catch
stalk_chased:
name: stalk_chased
stalk_events_followup:
name: stalk_events_followup
stalk_flight:
name: stalk_flight
stalk_img:
name: stalk_img
stalk_init:
name: stalk_init
stalk_nnpc_name:
name: stalk_nnpc_name
stalk_nnpc_text_attack:
name: stalk_nnpc_text_attack
stalk_nnpc_text_confront:
name: stalk_nnpc_text_confront
stalk_nnpc_text_passed:
name: stalk_nnpc_text_passed
stalk_nnpc_text_threat:
name: stalk_nnpc_text_threat
stalk_pursuit:
name: stalk_pursuit
stalk_run:
name: stalk_run
stalk_run_events:
name: stalk_run_events
stalk_skulduggery_difficulty:
name: stalk_skulduggery_difficulty
stalk_taunt:
name: stalk_taunt
stalk_taunt_effects:
name: stalk_taunt_effects
stalk_walk_events:
name: stalk_walk_events
stall_actions:
name: stall_actions
stall_amount:
name: stall_amount
stall_autosale:
name: stall_autosale
stall_chance:
name: stall_chance
stall_check_text:
name: stall_check_text
stall_init:
name: stall_init
stall_inventory:
name: stall_inventory
stall_sell:
name: stall_sell
stall_sell_actions:
name: stall_sell_actions
stall_sell_man:
name: stall_sell_man
stall_setup:
name: stall_setup
stall_setup_interior:
name: stall_setup_interior
stall_trust:
name: stall_trust
stall_update:
description: |-
Generates new amount and cost of produce stall items being haggled
stallCustomerArousal:
name: stallCustomerArousal
stallShop-text:
name: stallShop-text
tags: ["text"]
starfish:
name: starfish
starfisheventend:
name: starfisheventend
starfishexposed:
name: starfishexposed
tags: ["unused"]
starfishquick:
name: starfishquick
start-multi-canvas-rendering:
description: |-
[Multi Canvasmodel API Overview](%workspaceDir%/game/03-Javascript/05-renderer/01-multi-canvasmodel.js#L2)
`<<start-multi-canvas-rendering key>>`
- **key**: `string` -
parameters:
- 'string'
startbrothelshow:
name: startbrothelshow
startCaption:
name: startCaption
startDescriptions:
name: startDescriptions
startingPlayerImage:
name: startingPlayerImage
startingPlayerImageReset:
name: startingPlayerImageReset
startingPlayerImageUpdate:
name: startingPlayerImageUpdate
startOptions:
name: startOptions
startOptionsComplexityButton:
name: startOptionsComplexityButton
startWraith:
name: startWraith
statbar:
description: |-
Prints percentage-filled statbar representing values over 0
See `<<invertedstatbar>>` for unfilled version
`<<statbar min current max rightMeter? pin?>>`
- **min**: `number` - lower bound to clamp display to
- **current**: `number` - current amount to consider for percentage calculation
- **max**: `number` - max amount to consider for percentage calculation
- **rightMeter** _optional_: `boolean` - display as small inline version
- Defaults to `false`
- **pin**: `number` - ensure current does not go above this value
- Defaults to max
parameters:
- "number &+ number &+ number |+ bool |+ number"
tags: ["dom"]
statbarinverted:
description: |-
Prints percentage-unfilled statbar representing values over 0
See `<<statbar>>` for filled version
`<<invertedstatbar current max rightMeter?>>`
- **current**: `number` - current amount to consider for percentage calculation
- **max**: `number` - max amount to consider for percentage calculation
- **rightMeter** _optional_: `boolean` - display as small inline version
- Defaults to `false`
parameters:
- "number &+ number |+ bool"
tags: ["dom"]
stateabomination:
name: stateabomination
stateman:
name: stateman
statetentacles:
name: statetentacles
statistics:
name: statistics
statisticsDetailedTables:
name: statisticsDetailedTables
statisticsTimeCompare:
description: |-
Prints time since provided DateTime in statistics formatting
`<<statisticsTimeCompare startDatetime endDatetime?>>`
- **startDatetime**: `DateTime|timestamp` - beginning of time
- **endDatetime** _optional_: `DateTime|timestamp` - end of time
- Default to current time
parameters:
- "number|var|bareword |+ number|var|bareword"
statsCaption:
name: statsCaption
statsMoneyNoImg:
name: statsMoneyNoImg
statsWraith:
name: statsWraith
status:
description: |-
Adds coolness to pc's state, scaled as appropriate
`$cool` is a measure of pc's coolness amongst their peers where 0 is not-cool (0-400)
`<<status change>>`
- **change**: `number` - +/- change to apply
- `+number`: linear, multiplied by number of coolness clothes
- `-number`: percentage subtracted from current coolness, values below `-100` are not allowed
parameters:
- number
steal:
name: steal
stealclothes:
name: stealclothes
steed_he:
name: steed_he
steed_He:
name: steed_He
steed_him:
name: steed_him
steed_his:
name: steed_his
steed_init:
name: steed_init
steed_text:
name: steed_text
steed_type:
desc: |-
Prints centaurs/horses depending on hallucinations
tags: ["text"]
sterlingFather:
name: sterlingFather
sterlingSir:
name: sterlingSir
sterlingTitle:
name: sterlingTitle
stockholmTrait:
description: |-
Prints `| Stockholm Syndrome: X`
`<<stockholmTrait type?>>`
- **type** _optional_: `string` - additional label to apply to output
parameters:
- "|+ text|string"
tags: ["text"]
storeactions:
description: |-
Strip, print description of actions, and store clothes
Used as mini-menu on passages
`<<storeactions tempStrip>>`
- **tempStrip**: `string` - location where clothes are being temporarily stored
parameters:
- "text|string"
tags: ["text", "links", "dom"]
storecleanup:
name: storecleanup
storeItem:
name: storeItem
storeload:
name: storeload
storeloaditem:
name: storeloaditem
storeNPC:
description: |-
Stores and active NPC to be reused later
`<<storeNPC npcIndex keyToSaveAs>>`
- **npcIndex**: `number` - index from NPClist to save
- **keyToSaveAs**: `string` - unique key to store under
parameters:
- "number &+ text|string"
storeon:
description: |-
The `<<storeon>>` widgets retrieve the clothing stored with the ``<<[slotname]undress>>` widgets, that weren't put in a wardrobe.
Requires the same argument that was used to store the clothing in order to correctly identify. Optionally accepts a second argument:
- Inputting "delete" will destroy the stored item, rather than wear it.
- Inputting "check" will set _store_check to 1, for when you want to check whether or not an item exists in a given location.
- Inputting "return" will return the item to the wardrobe.
Example:
```
<<storeon "bed" "return">>
```
storeonface:
name: storeonface
tags: ["unused"]
storeonfeet:
name: storeonfeet
tags: ["unused"]
storeonhandheld:
name: storeonhandheld
tags: ["unused"]
storeonhands:
name: storeonhands
tags: ["unused"]
storeonhead:
name: storeonhead
tags: ["unused"]
storeonlegs:
name: storeonlegs
tags: ["unused"]
storeonlower:
name: storeonlower
tags: ["unused"]
storeonneck:
name: storeonneck
tags: ["unused"]
storeonoverhead:
name: storeonoverhead
tags: ["unused"]
storeonoverlower:
name: storeonoverlower
tags: ["unused"]
storeonoverupper:
name: storeonoverupper
tags: ["unused"]
storeonunderlower:
name: storeonunderlower
tags: ["unused"]
storeonunderupper:
name: storeonunderupper
tags: ["unused"]
storeonupper:
name: storeonupper
tags: ["unused"]
storereturn:
name: storereturn
storesave:
name: storesave
stormdrain:
name: stormdrain
straighttrauma:
description: |-
Adds trauma to pc without any modifiers whatsoever
Trauma effects on pc are not updated after change.
Consider refactoring to call `<<trauma>>` instead of `<<traumaClamp>>`
`<<straighttrauma change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
tags: ["unused", "refactor"]
strangeman1init:
name: strangeman1init
tags: ["unused"]
strangeman2init:
name: strangeman2init
strangewoman1init:
name: strangewoman1init
stray_happiness:
name: stray_happiness
stray_happiness_text:
name: stray_happiness_text
street_alley_detour:
name: street_alley_detour
street_niki:
name: street_niki
street_rescue:
name: street_rescue
streetabstinence:
name: streetabstinence
streetavery:
name: streetavery
streetbestialityfame:
name: streetbestialityfame
streetbodywriting:
name: streetbodywriting
streetbottomgrope:
name: streetbottomgrope
streetbound:
name: streetbound
streetbox:
name: streetbox
streetBreastGlance:
name: streetBreastGlance
streetbullies:
name: streetbullies
streetCatcall:
name: streetCatcall
streetClothingTorn:
name: streetClothingTorn
streetcollared:
name: streetcollared
streetcriminalbodywriting:
name: streetcriminalbodywriting
streetdog:
name: streetdog
streetedenangry:
name: streetedenangry
streetedenrage:
name: streetedenrage
streetedenworried:
name: streetedenworried
streeteffects:
name: streeteffects
streetex1:
name: streetex1
streetex2:
name: streetex2
streetex3:
name: streetex3
streetex4:
name: streetex4
streetex5:
name: streetex5
streetexday1:
name: streetexday1
streetexday2:
name: streetexday2
streetexhibitionismfame:
name: streetexhibitionismfame
streetExhibitionismFameShamed:
name: streetExhibitionismFameShamed
streetexoffer:
name: streetexoffer
streetexoffer2:
name: streetexoffer2
streetexoffer3:
name: streetexoffer3
streetexoffer4:
name: streetexoffer4
streetexshow:
name: streetexshow
streetfamerape:
name: streetfamerape
streetFlirt:
name: streetFlirt
streetFollowDogAlley:
name: streetFollowDogAlley
streetfootbridge:
name: streetfootbridge
streetfriendly1:
name: streetfriendly1
streetGroupStalk:
name: streetGroupStalk
streetheeltrip:
name: streetheeltrip
streetkidnap:
name: streetkidnap
streetlowertowel:
name: streetlowertowel
streetlurker:
name: streetlurker
streetmodelshow:
name: streetmodelshow
streetMoneyProposition:
name: streetMoneyProposition
streetNightDogAttack:
name: streetNightDogAttack
streetNightMonster:
name: streetNightMonster
streetnpcflash:
name: streetnpcflash
streetoffer:
name: streetoffer
tags: ["unused"]
streetorphancookie:
name: streetorphancookie
streetpolice:
name: streetpolice
streetpregnancyfame:
name: streetpregnancyfame
streetprostitutionfame:
name: streetprostitutionfame
streetProstitutionProposition:
name: streetProstitutionProposition
streetrapefame:
name: streetrapefame
streetrocks:
name: streetrocks
streetsexfame:
name: streetsexfame
streetSoloStalk:
name: streetSoloStalk
streetstray:
name: streetstray
streettentacle:
name: streettentacle
streetuppertowel:
name: streetuppertowel
streetvan:
name: streetvan
streetwanted:
name: streetwanted
streetWaterBalloon:
name: streetWaterBalloon
streetwhorebodywriting:
name: streetwhorebodywriting
stress:
description: |-
Changes the PC's stress, where `$stress` is a measure of the PC's stress.
- Goes from 0 to 10,000, where 0 means the PC is serene.
+1 point of `change` = 40 points of `$stress`.
- Being intoxicated will reduce stress gains by 25%. This reduction increases up to 75%, capping off when `$drunk` >= 480.
-1 point of `change` = -80 points of `$stress`.
`<<stress change multiplierOverride?>>`
- **change**: `number` - +/- change to apply.
- **multiplierOverride** _optional_: `number` - multiplier to use in place of the pre-set amount.
parameters:
- "number |+ number"
stresscaption:
name: stresscaption
stressClamp:
description: |-
Converts 1 point of excess $stress into 0.01 points of $trauma.
Trauma gains increase by up to 100% at low $control.
Called at the end of every "stress" function call.
name: stressClamp
strip:
name: strip
stripobject:
description: |-
Prints description of and ruins upper, lower, and under_lower clothes
`$stripobject` is the text name of object used to snag clothes off player
`$stripintegrity` is the damage to apply to clothes before determining if it would be stripped
Does not take into account over clothes. Consider refactoring
tags: ["text", "refactor"]
strippedtext:
description: |-
Template tree for control, trauma, stress
Empty widget, consider refactoring
tags: ["unused", "legacy", "refactor"]
strokerSelfPenisEntrance:
name: strokerSelfPenisEntrance
strokes:
name: strokes
struggle:
name: struggle
struggle_actions:
name: struggle_actions
struggle_add:
name: struggle_add
struggle_appendage:
name: struggle_appendage
struggle_attach:
name: struggle_attach
struggle_bide_the:
name: struggle_bide_the
struggle_bodypart:
name: struggle_bodypart
struggle_clothes:
name: struggle_clothes
struggle_creatures:
name: struggle_creatures
struggle_difficulty:
name: struggle_difficulty
tags: ["unused"]
struggle_difficulty_set:
name: struggle_difficulty_set
struggle_effects:
name: struggle_effects
struggle_end:
name: struggle_end
struggle_enemy:
name: struggle_enemy
struggle_flat_chest:
name: struggle_flat_chest
struggle_fluid:
name: struggle_fluid
struggle_init:
name: struggle_init
struggle_name:
name: struggle_name
struggle_part_init:
name: struggle_part_init
struggle_region:
name: struggle_region
struggle_skin:
name: struggle_skin
struggle_softlock_prevent:
name: struggle_softlock_prevent
struggle_state:
name: struggle_state
struggleClearActions:
name: struggleClearActions
stuck_in_wall_oral:
name: stuck_in_wall_oral
sub:
description: |-
Adds submissiveness quality to pc's state and applies effects
`$submissive` is a measure of pc's defiant/ submissive spectrum where 0 is defiant and 1,000 is neutral (0-2,000)
See `<<def>>`
`<<sub change>>`
- **change**: `number` - + change to apply
parameters:
- number
sub_check:
description: |-
Applies effects from pc changing submissiveness
submission:
name: submission
submissivetext:
description: |-
Prints `| Submissive`
tags: ["text"]
subsectionSettingsTabButton:
name: subsectionSettingsTabButton
suffocatepass:
name: suffocatepass
summon_brown_fox:
name: summon_brown_fox
sunscreenApply:
description: |-
Applies sunscreen to the player, if their hands are not bound. Equips the handheld "sunscreen" prop.
sunscreenDesc:
description: |-
Replaces the contents of `#sunscreenDescription` to reflect the current sunscreen state
sunscreenLinks:
description: |-
Prints the links used to apply and remove sunscreen
tags: ["links"]
supermarketDisplay:
description: |-
Prints display to buy/ steal items from the supermarket
Makes use of the widgets of a similar name to manage its display.
tags: ["text", "links"]
supermarketDisplayBasket:
name: supermarketDisplayBasket
supermarketDisplayBasketSummary:
name: supermarketDisplayBasketSummary
supermarketDisplayDetails:
name: supermarketDisplayDetails
supermarketDisplayFillBasket:
name: supermarketDisplayFillBasket
supermarketDisplayFillBasketLink:
name: supermarketDisplayFillBasketLink
supermarketDisplayItem:
name: supermarketDisplayItem
supermarketDisplayItems:
name: supermarketDisplayItems
supermarketWeekly:
description: |-
Determines and refreshes stock at supermarket
suspicion:
description: |-
Adds suspicion to pc's state
`$suspicion` is asylum's level of suspicion towards the pc where 0 is not-suspicious (0-100)
`<<suspicion change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
svg:
container: true
name: svg
swallowed:
name: swallowed
swallowedstat:
name: swallowedstat
swarm:
name: swarm
swarmactions:
name: swarmactions
swarmeffects:
name: swarmeffects
swarminit:
name: swarminit
swarmName:
name: swarmName
swim_check:
name: swim_check
swimmingdifficulty:
name: swimmingdifficulty
swimmingdifficultytext0:
description: |-
Prints `| These waters look safe` if stats are visible
tags: ["text"]
swimminglessoneffects:
name: swimminglessoneffects
tags: ["unused"]
swimmingskilluse:
name: swimmingskilluse
swim_strip:
description: |-
Strips clothing while swimming, calls swim_strip_check
name: swim_strip
swim_strip_check:
description: |-
Checks which clothing items can be stripped while swimming, creates list in _swim_strip_check and whether it's exhibitionism in _swim_strip_check_exhib
name: swim_strip_check
swimmingtext:
description: |-
Prints colour-coded adjective of active swimming skill usage
tags: ["text"]
sydneyBeachGender:
name: sydneyBeachGender
sydneyBodywriting:
name: sydneyBodywriting
sydneyBodywritingLocation:
name: sydneyBodywritingLocation
sydneyChastityMessage:
name: sydneyChastityMessage
sydneyExpose:
name: sydneyExpose
sydneyFinish:
name: sydneyFinish
sydneyGenitals:
name: sydneyGenitals
sydneyGlasses:
name: sydneyGlasses
sydneyGreeting:
name: sydneyGreeting
sydneyLewd:
name: sydneyLewd
sydneyLibrary:
name: sydneyLibrary
sydneyMass:
name: sydneyMass
sydneymother:
name: sydneymother
sydneyMother:
name: sydneyMother
tags: ["unused"]
sydneymum:
name: sydneymum
sydneyMum:
name: sydneyMum
sydneyOptions:
name: sydneyOptions
sydneyOptionsLeave:
name: sydneyOptionsLeave
sydneyOptionsTalk:
name: sydneyOptionsTalk
sydneyOtherParent:
name: sydneyOtherParent
sydneyOtherParentGender:
name: sydneyOtherParentGender
sydneyPurity:
description: Prints Sydney Purity cheat number steppers
tags: ["text", "links"]
sydneySchedule:
name: sydneySchedule
sydneySexFail:
name: sydneySexFail
sydneySirrisResemble:
name: sydneySirrisResemble
sydneySwimwear:
name: sydneySwimwear
sydneyTortureFail:
name: sydneyTortureFail
sydneyTortureOptions:
name: sydneyTortureOptions
sydneyWarning:
description: |-
Prints `| This action might/will purify/corrupt Sydney`
Relies on `_warnstate` for default case
`<<sydneyWarning type?>>`
- **type** _optional_: `string` - severity of corruption
- `"purify"` | `"corrupt"`: "might" corruption messages
- `default`: "will" corruption messages
parameters:
- '|+ "purify"|"corrupt"'
tags: ["temp", "text"]
tableText:
name: tableText
tailorinit:
name: tailorinit
takeHandholdingVirginity:
name: takeHandholdingVirginity
takeKissVirginity:
name: takeKissVirginity
takeKissVirginityNamed:
name: takeKissVirginityNamed
takeNPCVirginity:
name: takeNPCVirginity
takeTempleVirginity:
name: takeTempleVirginity
takeVirginity:
name: takeVirginity
tanningGainOutput:
name: tanningGainsOutput
tanningPenaltiesOutput:
name: tanningPenaltiesOutput
targetListBox:
name: targetListBox
targetrepeatcontroller:
name: targetrepeatcontroller
tattoo:
name: tattoo
tattoo_parlour:
name: tattoo_parlour
tattooed_inmate:
name: tattooed_inmate
tattooFilter:
name: tattooFilter
tattooList:
name: tattooList
taylorSibling:
name: taylorSibling
taylorSon:
name: taylorSon
tearful:
description: |-
Prints player opinion of their state based on trauma, stress, arousal, and pain
Description is without subject and capitalised
Example:
```
<<tearful>> you are made an example of.
```
tags: ["text"]
tearup:
name: tearup
telltalepenissize:
name: telltalepenissize
temperature:
name: temperature
temple_bailey_options:
name: temple_bailey_options
temple_effects:
name: temple_effects
temple_spear_mission_end:
name: temple_spear_mission_end
temple_title:
name: temple_title
temple_Title:
name: temple_Title
templeLossLower:
description: |-
"a hollowness flows through you, reminding you of your loss. The loss of something that was never yours."
name: templeLossLower
templeLossUpper:
description: |-
"A hollowness flows through you, reminding you of your loss. The loss of something that was never yours."
name: templeLossUpper
tending:
name: tending
tending_bird_eggs:
name: tending_bird_eggs
tending_give:
name: tending_give
tending_harvest:
name: tending_harvest
tending_pick:
description: |-
Gives the pc a random number of plants, modified by traits
`<<tending_pick type min? max?>>`
- **type**: `string` - type of plant to pick
- %plantTypesDesc%
- **min** _optional_: `number` - min number of plants to pick
- Defaults to `1`
- **max** _optional_: `object` - max number of plants to pick
- Defaults to `5`
parameters:
- "%plantTypes%"
- "%plantTypes% &+ number &+ number"
tending_season_notice:
name: tending_season_notice
tending_text:
description: |-
Prints colour-coded description of how good the player is at housekeeping
tags: ["text"]
tendingdifficulty:
name: tendingdifficulty
tendingPlantSeedsOptions:
name: tendingPlantSeedsOptions
tendingtext:
description: |-
Prints colour-coded adjective of active tending skill usage
tags: ["text"]
tendingTillOptions:
name: tendingTillOptions
tendingWaterAllDryBeds:
name: tendingWaterAllDryBeds
tendingWaterPlot:
name: tendingWaterPlot
tentacle_forest_end_scene:
name: tentacle_forest_end_scene
tentacle_forest_events:
name: tentacle_forest_events
tentacle_forest_orgasm_scene:
name: tentacle_forest_orgasm_scene
tentacle_forest_pass:
name: tentacle_forest_pass
tentacle_forest_safe_orgasm:
name: tentacle_forest_safe_orgasm
tentacle_forest_stress_scene:
name: tentacle_forest_stress_scene
tentacle_forest_time:
name: tentacle_forest_time
tentacle_record:
name: tentacle_record
tentacle_skin:
name: tentacle_skin
tentacleact:
name: tentacleact
tags: ["unused"]
tentacleadv:
description: |-
Main controller for advanced tentacles combat system
`<<tentacleadv tentacleObject>>`
- **tentacleObject**: `object` - Tentacle from `$tentacles`
parameters:
- var|bareword
tags: ["text"]
tentacleadvdefault:
description: |-
Prints effects of a provided idle tentacle ejaculating onto player
`<<tentacleadvdefault tentacleObject>>`
- **tentacleObject**: `object` - Tentacle from `$tentacles`
parameters:
- var|bareword
tags: ["text"]
tentacleadvdisable:
description: |-
Disables provided tentacle
`<<tentacleadvdisable tentacleObject>>`
- **tentacleObject**: `object` - Tentacle from `$tentacles`
parameters:
- var|bareword
tentacledefault:
name: tentacledefault
tentacleDefaults:
name: tentacleDefaults
tentacledirection:
name: tentacledirection
tentacledisable:
name: tentacledisable
tentacles:
name: tentacles
tentaclestart:
name: tentaclestart
tentacleTrait:
description: |-
Prints `| Witch` or `| Prey` depending on pc's `$submissive`
tags: ["unused", "text"]
tentaclewolf:
name: tentaclewolf
tentacleworldend:
name: tentacleworldend
tentacleworldintro:
name: tentacleworldintro
tenyclusPlay:
name: tenyclusPlay
testicle:
description: |-
Prints synonym for testicle
`<<testicle situation?>>`
- **situation** _optional_: `string` - category to filter possible outputs by
- `"clinical"`
parameters:
- '|+ "clinical"'
tags: ["unused", "text"]
testicles:
description: |-
Prints synonym for testicles
`<<testicle situation?>>`
- **situation** _optional_: `string` - category to filter possible outputs by
- `"clinical"`
parameters:
- '|+ "clinical"'
tags: ["text"]
testMultiple:
name: testMultiple
tags: ["unused"]
testSingles:
name: testSingles
text_pillory_release_fail_strip:
name: text_pillory_release_fail_strip
textmap:
name: textmap
that:
description: |-
Prints plural/singular prose of that (those/that) for provided clothing slot
`<<that slot>>`
- **slot**: `string` - category of worn clothing to check
- %clothesTypesDesc%
parameters:
- "%clothesTypes%"
tags: ["text"]
the_pillory_person:
description: |-
Prints `The <<person>>` or the name of person in the pillory
Lowercase `<<The_pillory_person>>`.
Related to `<<a_pillory_person>>`/ '<<A_pillory_person>>'
tags: ["text"]
The_pillory_person:
description: |-
Prints `The <<person>>` or the name of person in the pillory
Capitalised `<<the_pillory_person>>`.
Related to `<<a_pillory_person>>`/ '<<A_pillory_person>>'
tags: ["text"]
their:
description: |-
Prints `their/<<him>>` of an NPC based on combat size, either provided or previously selected
Modifies selected NPC if combat is single man
`<<their npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of active npcs
- `0-5`: Defaults to 0
parameters:
- "|+ number"
tags: ["text"]
theowner:
description: |-
Prints `the owner` or active NPC pronoun based on number of enemies
tags: ["text"]
thermometer:
description: |-
Prints a thermometer representing the player's body temperature
tags: ["dom"]
thighactionDifficulty:
name: thighactionDifficulty
thighActionInit:
name: thighActionInit
thighactions:
name: thighactions
thighdifficulty:
description: |-
Prints colour-coded adjective of thigh action difficulty in current combat
tags: ["text"]
thighejacstat:
name: thighejacstat
thighskill:
description: |-
Adds thigh skill to pc's state
`$thighskill` is a measure of pc's proficiency using their thighs where 0 is awkward (0-1,000)
`<<thighskill change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
thighskilluse:
name: thighskilluse
thighstat:
name: thighstat
thightext:
description: |-
Prints colour-coded adjective of active thigh skill usage
tags: ["text"]
thirst:
name: thirst
tags: ["unused"]
this_saturday:
name: this_saturday
this_sunday:
name: this_sunday
threaten:
description: |-
Prints a random spoken threat of active NPC towards player
tags: ["text"]
timeAfterXHours:
description: |-
Prints formatted time after X hours would pass
`<<timeAfterXHours hours>>`
- **hours**: `number` - number of hours to simulate passing
parameters:
- 'number'
tags: ["text"]
timeTrackingEnd:
description: |-
Stops recording an amount of time for the source provided
Used in combination with <<timeTrackingStart>>.
Multiple sources can be tracked at once.
See the cafe or brothel usage for examples.
`<<timeTrackingEnd source>>`
- **source**: `string` - source key
- %timeTrackingSourcesDesc%
parameters:
- '%timeTrackingSources%'
timeTrackingEndBrothel:
description: |-
Stops tracking time for sources related to the brothel
timeTrackingEndCafe:
description: |-
Stops tracking time for sources related to the cafe
timeTrackingEndDanceJobs:
description: |-
Stops tracking time for sources related to dance jobs
timeTrackingEndStripclub:
description: |-
Stops tracking time for source related to the strip club
timeTrackingManual:
description: |-
Manually records a set amount of time for the source provided
See the dock usage for example.
`<<timeTrackingEnd source amount timeType?>>`
- **source**: `string` - source key
- %timeTrackingSourcesDesc%
- **amount**: `number` - amount of time to progress
- **timeType** _optional_: `string` - unit of time
- Defaults to "hour"
parameters:
- '%timeTrackingSources% &+ number |+ "hour"|"minute"|"second"'
timeTrackingStart:
description: |-
Starts recording an amount of time for the source provided
Used in combination with <<timeTrackingEnd>>.
Multiple sources can be tracked at once.
See the cafe or brothel usage for examples.
`<<timeTrackingStart "source">>`
- **source**: `string` - source key
- %timeTrackingSourcesDesc%
parameters:
- '%timeTrackingSources%'
timeTrackingStartDanceJobs:
description: |-
Starts tracking time for sources related to dance jobs
tinyPenisDryOrgasmChance:
name: tinyPenisDryOrgasmChance
tip_neg:
name: tip_neg
tip_up:
name: tip_up
tipreceive:
name: tipreceive
tips:
name: tips
tipset:
name: tipset
tiredness:
description: |-
Changes the PC's tiredness, where `$tiredness` is a measure of the PC's fatigue.
- Goes from 0 to 2,000, where 0 means the PC is refreshed.
When `source` is `"pass"`, 1 point of `change` = 1 point of `$tiredness`.
When `source` isn't `"pass"`, +1 point of `change` = +15 points of `$tiredness`.
- Heavy clothing increases this by 50%.
- Wearing heels with an inadequate Feet Skill increases this by up to 100%.
- The PC overheating increases this up to 200%.
- If all 3 conditions are maxed, the PC will gain 350% more $tiredness than normal.
When `source` isn't `"pass"`, -1 point of `change` = -20 points of `tiredness`.
`<<tiredness change source?>>`
- **change**: `number` - +/- change to apply.
- **source** _optional_: `string` - The source of the fatigue change.
- `"pass"`: Fatigue gained from the passage of time.
parameters:
- 'number |+ "pass"'
tags: ["refactor"]
tirednesscaption:
name: tirednesscaption
titleBait:
name: titleBait
titleBlackjackHelp:
name: titleBlackjackHelp
titleCharacteristics:
name: titleCharacteristics
titleCheats:
name: titleCheats
titleDebugRenderer:
name: titleDebugRenderer
titleEventInfo:
name: titleEventInfo
titleFeats:
name: titleFeats
titleJournal:
name: titleJournal
titlejournalNotes:
name: titlejournalNotes
titleOptions:
name: titleOptions
titleOutfitEditor:
name: titleOutfitEditor
titleSaves:
name: titleSaves
titleSocial:
name: titleSocial
titleStats:
name: titleStats
titleTraits:
name: titleTraits
tml:
description: |-
Wraps text map text to link to correct location
`<<tml target>>`
- **target**: `string` - location name
parameters:
- 'text|string'
toggleAltLink:
description: |-
Creates link that toggles unique clothing between alternate states
`<<toggleAltLink slot location>>`
- **slot**: `string` - clothing slot being toggled
- %clothesTypesDesc%
- **location** _optional_: `string` - location where clothing is being toggled
- `"wardrobe"`
parameters:
- '%clothesTypes% |+ "wardrobe"|"shop"'
tags: ["dom", "text"]
toggleAltPosition:
description: |-
Toggles unique clothing between alternate states
`<<toggleAltPosition slot>>`
- **slot**: `string` - clothing slot being toggled
- %clothesTypesDesc%
parameters:
- "%clothesTypes%"
toggleAltSleeve:
description: |-
Toggles unique clothing between alternate sleeve states
`<<toggleAltSleeve inDefaultState? inAltState?>>`
- **inDefaultState** _optional_: `string` - text to be printed if sleeves are using their default image
- Defaults to "Roll up sleeves"
- **inAltState** _optional_: `string` - text to be printed if sleeves are using their alt image
- Defaults to "Unroll sleeves"
parameters:
- "|+ text|string |+ text|string"
tags: ["dom"]
toggleBellyTuck:
description: |-
Outputs a link that toggles belly tucked state (for soft bodyshape)
`<<toggleBellyTuck untuckText? tuckText?>>`
- **untuckText** _optional_: `string` - text to be printed if already tucked
- Defaults to "Untuck"
- **tuckText** _optional_: `string` - text to be printed if already untucked
- Defaults to "Tuck in"
parameters:
- "|+ text|string |+ text|string"
tags: ["dom"]
toggledebug:
name: toggledebug
tags: ["unused"]
toggleFaceLayer:
description: |-
Creates link that toggles hair position on face
First arg is never used. Consider refactoring
`<<toggleFaceLayer location>>`
- **location** _optional_: `string` - location where clothing is being toggled
- `"wardrobe"`
parameters:
- '|+ "wardrobe"|"shop"'
tags: ["dom", "text", "refactor"]
toggleHood:
description: |-
Toggles pc's hood state between up and down
`<<toggleHood location>>`
- **location** _optional_: `string` - location where hood is being toggled
- Only respects "shop"
parameters:
- '|+ "shop"'
toggleHoodLink:
description: |-
Creates link that toggles pc's hood state between up and down
`<<toggleHoodLink location>>`
- **location** _optional_: `string` - location where hood is being toggled
- Only respects "shop"
parameters:
- '|+ "shop"'
tags: ["dom", "text"]
toggleLeash:
name: toggleLeash
toggleLowerTuck:
description: |-
Outputs a link that toggles lower tucked state (tucks lowerwear into footwear)
`<<toggleLowerTuck untuckText? tuckText?>>`
- **untuckText** _optional_: `string` - text to be printed if already tucked
- Defaults to "Untuck"
- **tuckText** _optional_: `string` - text to be printed if already untucked
- Defaults to "Tuck in"
parameters:
- "|+ text|string |+ text|string"
tags: ["dom"]
toggleMannequinGender:
name: toggleMannequinGender
toggleTab:
name: toggleTab
toggleUpperTuck:
description: |-
Outputs a link that toggles upper tucked state (tucks upperwear into lowerwear)
`<<toggleUpperTuck untuckText? tuckText?>>`
- **untuckText** _optional_: `string` - text to be printed if already tucked
- Defaults to "Untuck"
- **tuckText** _optional_: `string` - text to be printed if already untucked
- Defaults to "Tuck in"
parameters:
- "|+ text|string |+ text|string"
tags: ["dom"]
top:
description: |-
Prints name of outermost top clothing layer
tags: ["text"]
topaside:
description: |-
Prints name of innermost top clothing layer that can be seen or `top` if everything is exposed
See `<<breastsaside>>`
tags: ["text"]
TopShop:
name: TopShop
towelup:
name: towelup
towelupm:
name: towelupm
towerBuildOption:
name: towerBuildOption
towerValuables:
name: towerValuables
toy:
name: toy
toyName:
name: toyName
toySelection:
name: toySelection
traitLists:
name: traitLists
traitListsSearch:
name: traitListsSearch
traits:
name: traits
transform:
name: transform
transformationAlteration:
name: transformationAlteration
transformationStateUpdate:
name: transformationStateUpdate
TrashComparePlayerBreastsReact:
name: TrashComparePlayerBreastsReact
TrashComparePlayerChastity:
name: TrashComparePlayerChastity
TrashComparePlayerPenisReact:
name: TrashComparePlayerPenisReact
trashSelect:
name: trashSelect
trauma:
description: |-
Changes the PC's trauma, where `$trauma` is a measure of the PC's trauma.
- Goes from 0 to 5,000, where 0 means the PC is healthy.
+1 point of `change` = 1.5 points of `$trauma`.
- Trauma gains are reduced by 0.7x if the PC has the "Fucktoy" trait.
- Trauma gains are reduced by 0.7x if the PC has the "Bitch" trait while having sex with beasts.
- Trauma gains are reduced by 0.7x if the PC has the "Prey" trait while having sex with tentacles.
- Trauma gains are increased by up to 100%, if the PC has low `$control`.
-1 point of `change` = -1.5 points of `$trauma`.
- Trauma losses are increased by 2x while at the Asylum or the Hospital.
- Trauma losses are increased by up to 100%, if the PC has high `$control`.
See `<<combattrauma>>` and `<<straighttrauma>>` for other use cases.
`<<trauma change source?>>`
- **change**: `number` - +/- change to apply.
- If set to 0, just updates the PC's trauma effects.
- **source**: _optional_ - The source of the trauma change.
- `"combat"`: Fatigue gained from the passage of time. If used, the PC's trauma traits will not be updated.
parameters:
- 'number |+ "combat"'
tags: ["refactor"]
traumacaption:
name: traumacaption
traumaClamp:
description: |-
Converts 1 point of $trauma into 1 point of $innocencetrauma when the PC's $innocencestate is 1.
Converts 1 point of excess $trauma into -0.2 points of $beauty.
Called at the end of every "trauma" function call.
name: traumaClamp
troughicon:
name: troughicon
tryOnInit:
name: tryOnInit
tryOnReset:
name: tryOnReset
tryOnStats:
name: tryOnStats
tryOnWear:
name: tryOnWear
tummyejacstat:
name: tummyejacstat
turnend:
name: turnend
twinescript:
container: true
name: twinescript
unbecomePinch:
description: |-
Overwrites some story variables with their respective values in `$frozenValues`, without modifying the latter
Use to visually restore a pc morphed with `<<becomePinch>>` to their original state (not all values are restored)
unbind:
name: unbind
unbindtemp:
name: unbindtemp
uncle:
description: |-
Prints `aunt` or `uncle` depending on npc pronouns
tags: ["text"]
Uncle:
description: |-
Prints `Aunt` or `Uncle` depending on npc pronouns
tags: ["text"]
underbottoms:
description: |-
Prints under_lower clothing layer, taking into account if it is part of an outfit
tags: ["text"]
UnderBottomShop:
name: UnderBottomShop
undergroundCellOptions:
name: undergroundCellOptions
undergroundEscapeForestRobin:
name: undergroundEscapeForestRobin
undergroundEscapeForestStart:
name: undergroundEscapeForestStart
undergroundPlantFakeChoice:
name: undergroundPlantFakeChoice
undergroundReturnToCell:
name: undergroundReturnToCell
undergroundRobinInterlude:
name: undergroundRobinInterlude
undergroundRobinKiss:
name: undergroundRobinKiss
undergroundRobinTopic:
name: undergroundRobinTopic
undergroundRobinTopicRefresh:
name: undergroundRobinTopicRefresh
underlowerhas:
description: |-
Prints plural/singular prose of has (have/has) for worn `"under_lower"` slot
underlowerintegrity:
name: underlowerintegrity
tags: ["unused"]
underlowerit:
description: |-
Prints an objective case pronoun (them/it) for worn `"under_lower"` slot
tags: ["text"]
underloweritis:
description: |-
Prints a pronoun/ present indicative pair (they are/it is) describing worn `"under_lower"` slot
tags: ["unused", "text"]
underloweron:
name: underloweron
tags: ["unused"]
underlowerplural:
description: |-
Prints a present indicative (are/is) for the worn `"under_lower"` slot
tags: ["text"]
underlowerruined:
description: |-
Destroys pc's under_lower slot clothing, whether worn or carried
`<<underlowerruined noRebuy? exposedType?>>`
- **noRebuy** _optional_: `boolean` - skip rebuying command (truthy)
- Defaults to `false`
- **exposedType** _optional_: `string` - reason for exposing under lower
- `"commando"` | `"given"` | `"stolen"` | `"sold"`
parameters:
- '|+ bool|null|undefined |+ "commando"|"given"|"stolen"|"sold"'
underlowersend:
name: underlowersend
underlowersteal:
name: underlowersteal
underlowerstrip:
name: underlowerstrip
underlowerthat:
description: |-
Prints plural/singular prose of that (those/that) for worn `"under_lower"` slot
tags: ["unused", "text"]
underlowerundress:
name: underlowerundress
underlowerwear:
name: underlowerwear
underlowerwet:
description: |-
Adds wetness to pc's under lower clothing state
`$underlowerwet` is a measure of how wet pc's under lower clothing is where 0 is dry (0-200)
`$underlowerwetstate` is a measure of effects due to wetness of pc's under lower clothing where 0 is dry (0-3)
Over clothes don't take into account wetness. Consider refactoring to expand
`<<underlowerwet change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
tags: ["refactor"]
underoutfit:
name: underoutfit
UnderOutfitShop:
name: UnderOutfitShop
underruined:
description: |-
Destroys pc's under_upper and under_lower slot clothing, whether worn or carried
underslither:
name: underslither
undertop:
description: |-
Prints the current state of the player's under_upper clothing, assuming the over_upper clothing has been destroyed.
The corresponding lower check is called "undies"
name: undertop
UnderTopShop:
name: UnderTopShop
underupperhas:
description: |-
Prints plural/singular prose of has (have/has) for worn `"under_upper"` slot
tags: ["text"]
underupperintegrity:
name: underupperintegrity
tags: ["unused", "text"]
underupperit:
description: |-
Prints an objective case pronoun (them/it) for worn `"under_upper"` slot
tags: ["text"]
underupperitis:
description: |-
Prints a pronoun/ present indicative pair (they are/it is) describing worn `"under_upper"` slot
tags: ["unused", "text"]
underupperon:
name: underupperon
tags: ["unused"]
underupperplural:
description: |-
Prints a present indicative (are/is) for the worn `"under_upper"` slot
tags: ["text"]
underupperruined:
description: |-
Destroys pc's under_upper slot clothing, whether worn or carried
`<<underupperruined noRebuy?>>`
- **noRebuy** _optional_: `boolean` - skip rebuying command (truthy)
- Defaults to `false`
parameters:
- "|+ bool"
underuppersend:
name: underuppersend
underuppersteal:
name: underuppersteal
underupperstrip:
name: underupperstrip
underupperthat:
description: |-
Prints plural/singular prose of that (those/that) for worn `"under_upper"` slot
tags: ["unused", "text"]
underupperundress:
name: underupperundress
underupperwear:
name: underupperwear
underupperwet:
description: |-
Adds wetness to pc's under upper clothing state
`$underupperwet` is a measure of how wet pc's under upper clothing is where 0 is dry (0-200)
`$underupperwetstate` is a measure of effects due to wetness of pc's under upper clothing where 0 is dry (0-3)
Over clothes don't take into account wetness. Consider refactoring to expand
`<<underupperwet change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
tags: ["refactor"]
underwater:
name: underwater
underwearTypeText:
description: |-
Prints "underwear" or more specific type as appropriate
tags: ["text"]
underworld_nickname:
description: |-
Prints pc's nickname used in the underworld
See `<<overworld_nickname>>`
`<<underworld_nickname textTransform>>`
- **textTransform**: `string` - transformation to apply to text before printing
- `"cap"`: Capitalise
parameters:
- '|+ "cap"'
tags: ["text"]
undies:
description: |-
Prints the current state of the player's under_lower clothing, assuming the over_lower clothing has been destroyed.
Optional parameter [0] possible values:
- 0 or omitted or null - display full name of undies or full genital description
- 1 - display simple name of undies or full genital description
- 2 - display simple name of undies or simple genital description
The corresponding upper check is called "undertop"
name: undies
undiestrauma:
name: undiestrauma
unDismissAvery:
description: |-
Resets Avery back to active state. Can only be called in-game to undo the soft dismissal.
undress:
name: undress
undressclothes:
name: undressclothes
undressKeepSlot:
description: |-
Undress all clothes, with exceptions. Usually used to retain the player's facewear or strap-on. Can also accept an array of slots that has been stored in a temporary variable.
Example:
```
<<set _slots to ["under_lower", "face"]>>
<<undressKeepSlot $wardrobe_location _slots>>
```
`<<undressKeepSlot wardrobe slots>>`
- **slot**: `string`or `array` - slots to keep
parameters:
- '|+ text|string |+ text|string'
undressmid:
name: undressmid
undressNPC:
name: undressNPC
undressOverClothes:
name: undressOverClothes
undressSleep:
name: undressSleep
unlockAdultShop:
name: unlockAdultShop
update_npc_pillory_appearance:
name: update_npc_pillory_appearance
update_school_skills:
name: update_school_skills
updateallure:
name: updateallure
updateAskColour:
name: updateAskColour
updatebuysendhome:
name: updatebuysendhome
tags: ["unused"]
updateChildActivity:
name: updateChildActivity
updateClothes:
name: updateClothes
updateclotheslist:
name: updateclotheslist
updateclothingshop:
name: updateclothingshop
updateCombatLightingDemo:
description: |-
No description.
updateFeatName:
name: updateFeatName
updateFeats:
name: updateFeats
updateFeatsPointsMenu:
name: updateFeatsPointsMenu
updateFoodstuffVariables:
description: |-
For use after renaming (not deleting) setup.foodstuff keys. This widget mirrors changes to V.foodstuff and other variables
updateHallucinations:
description: |-
Updates pc's hallucination state based on trauma, awareness, drugs, weather, and clothing
updatehistorycontrols:
name: updatehistorycontrols
updatemannequin:
name: updatemannequin
updateMuseumAntiques:
name: updateMuseumAntiques
updateNewNamedNpcs:
description: |-
Adds non-present new NPCs to saves with version 1 or 2 $npcNamedVersion
updateNPC:
description: |-
Updates named persistent npc with data from given slot
Currently only updates virginity
`<<updateNPC npcObject>>`
- **npcObject**: `object` - full npc object to pull update data from
parameters:
- "var|bareword"
updateNPCsFirst:
description: |-
Updates all persistent npcs first-order properties to specific value
See `<<updateNPCsSecond>>` for second-order properties
Could be made to accept a function as value to increase usability in data migration. Consider refactoring
`<<updateNPCsFirst key value>>`
- **key**: `string` - first-order key to modify
- **value**: `any` - value to set
parameters:
- "text|string &+ var|bareword"
tags: ["unused", "refactor"]
updateNPCsSecond:
description: |-
Updates all persistent npcs second-order properties to specific value
See `<<updateNPCsFirst>>` for first-order properties
Could be made to accept a function as value to increase usability in data migration. Consider refactoring
`<<updateNPCsFirst firstKey secondKey value>>`
- **firstKey**: `string` - first-order key to modify
- **secondKey**: `string` - second-order key to modify
- **value**: `any` - value to set
parameters:
- "text|string &+ var|bareword"
tags: ["unused", "refactor"]
updateOwned:
name: updateOwned
updatePersistentNPCs:
description: |-
Updates persistent npc characteristics based on player setting changes
selectiveUpdate accepts `skincolour` but does nothing with it. Consider refactoring
`<<updatePersistentNPCs selectiveUpdate?>>`
- **selectiveUpdate** _optional_: `string` - category to selectively update instead of all
- `"genders"` | `"breasts"` | `"penis"` | `"skincolour"`
parameters:
- '|+ "genders"|"breasts"|"penis"|"skincolour"'
tags: ["refactor"]
updatePlants:
description: |-
Verifies `V.plants` has a matching entry for every foodstuff object in `F`. Required after addition of cooking class, as tending objects are no longer optional.
updatePlayerTraumaState:
description: |-
Updates pc's trauma-derived state based on current trauma, including sleep trouble, nightmares, anxiety, flashbacks, panic attacks, and dissociation
updateRecordedSperm:
name: updateRecordedSperm
updatesidebardescription:
name: updatesidebardescription
updatesidebarimg:
description: |-
Updates sidebar img
`<<updatesidebarimg clearCache?>>`
- **clearCache** _optional_: `string` - clear render cache
- Defaults to true
parameters:
- '|+ bool'
updatesidebarmoney:
name: updatesidebarmoney
updateStoredSlot:
name: updateStoredSlot
updatetryonstats:
name: updatetryonstats
updatewardrobe:
description: |-
Applies wardrobe updates based on `$wear_` actions
`$wear_X` are variables where X is a clothing slot that is set to `"none"` or the name of a clothing item
`<<updatewardrobe additionalUpdates? overrideSlot?>>`
- **additionalUpdates** _optional_: `string` - sections to update along with wardrobe
- Only accepts "outfits"
- **overrideSlot** _optional_: `string` - clothing slot wear action key to treat as selected
- Not required for new wardrobe display
- `wear_` + (%clothesTypesDesc%)
parameters:
- '|+ false|null|undefined|"outfits" |+ text|string'
updatewarmthdescription:
name: updatewarmthdescription
updatewarmthscale:
name: updatewarmthscale
updateWornClothingLocation:
name: updateWornClothingLocation
upperhas:
description: |-
Prints plural/singular prose of has (have/has) for worn `"upper"` slot
tags: ["text"]
upperintegrity:
name: upperintegrity
tags: ["unused"]
upperit:
description: |-
Prints an objective case pronoun (them/it) for worn `"upper"` slot
tags: ["text"]
upperitis:
description: |-
Prints a pronoun/ present indicative pair (they are/it is) describing worn `"upper"` slot
tags: ["unused", "text"]
upperon:
name: upperon
upperplural:
description: |-
Prints a present indicative (are/is) for the worn `"upper"` slot
tags: ["text"]
upperruined:
description: |-
Destroys pc's upper slot clothing, whether worn or carried
`<<upperruined noRebuy?>>`
- **noRebuy** _optional_: `boolean` - skip rebuying command (truthy)
- Defaults to `false`
parameters:
- "|+ bool"
uppersend:
name: uppersend
upperslither:
name: upperslither
uppersteal:
name: uppersteal
tags: ["unused"]
upperstrip:
name: upperstrip
upperthat:
description: |-
Prints plural/singular prose of that (those/that) for worn `"upper"` slot
tags: ["unused", "text"]
upperundress:
name: upperundress
upperwear:
name: upperwear
upperwet:
description: |-
Adds wetness to pc's upper clothing state
`$upperwet` is a measure of how wet pc's upper clothing is where 0 is dry (0-200)
`$upperwetstate` is a measure of effects due to wetness of pc's upper clothing where 0 is dry (0-3)
Over clothes don't take into account wetness. Consider refactoring to expand
`<<upperwet change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
tags: ["refactor"]
urinestat:
name: urinestat
useLube:
name: useLube
vagina_lube_amount:
description: |-
Prints the amount of lube around player vagina
Relies on `_vagina_lube_amount` being set already
See `<<vagina_lube_text>>`
tags: ["text", "temp"]
vagina_lube_text:
description: |-
Prints qualified description of lube around the vagina prior to penetration
Example:
```
<<vagina_lube_text>> the example can be performed without trouble.
```
tags: ["text"]
vaginaactionDifficulty:
name: vaginaactionDifficulty
vaginaactionDifficultyTentacle:
name: vaginaactionDifficultyTentacle
vaginaActionInit:
name: vaginaActionInit
vaginaActionInitStruggle:
name: vaginaActionInitStruggle
vaginaActionInitTentacle:
name: vaginaActionInitTentacle
vaginaActions:
name: vaginaActions
vaginaActionsTentacle:
name: vaginaActionsTentacle
vaginaFluidActive:
name: vaginaFluidActive
vaginaFluidOrgasm:
name: vaginaFluidOrgasm
vaginaFluidPassive:
name: vaginaFluidPassive
vaginainit:
name: vaginainit
vaginaldifficulty:
description: |-
Prints colour-coded adjective of vaginal action difficulty in current combat
tags: ["text"]
vaginaldoublestat:
name: vaginaldoublestat
vaginalejacstat:
name: vaginalejacstat
vaginalentranceejacstat:
name: vaginalentranceejacstat
vaginalskill:
description: |-
Adds vaginal skill to pc's state
`$vaginalskill` is a measure of pc's proficiency using their vagina where 0 is awkward (0-1,000)
`<<vaginalskill change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
vaginalskilluse:
name: vaginalskilluse
vaginalstat:
name: vaginalstat
vaginaltext:
description: |-
Prints colour-coded adjective of active vaginal skill usage
tags: ["text"]
vaginalvirginitywarning:
description: |-
Prints `This action will deflower you` if vaginal virginity can still be lost
Takes combat state into account to display starting pipe `| `
tags: ["text"]
vaginaraped:
name: vaginaraped
vaginaWetnessCalculate:
name: vaginaWetnessCalculate
validateTransformations:
description: |-
Correct unqualified and stuck transformation parts
variablesStart2:
name: variablesStart2
variablesStatic:
name: variablesStatic
variablesVersionUpdate:
name: variablesVersionUpdate
variablesVersionUpdate2:
name: variablesVersionUpdate2
versioninfo:
name: versioninfo
veteran_guard:
name: veteran_guard
victimgirl:
name: victimgirl
victimgirls:
name: victimgirls
violence:
description: |-
Increases / decreases the player's stress, trauma, and pain based on the violence level. Positive violence = increase stress, trauma, and pain, while negative violence has the opposite effect.
name: violence
violence_noncombat:
name: violence_noncombat
virginitylosttext:
name: virginitylosttext
virginityToolTip:
description: |-
Prints the status on how and when the virginity type was taken in statistics
visionPrepMorph:
description: |-
Resets some stats and settings, in preparation to morph the pc into another character
**Should be used after `<<freezePlayerStats>>`**
- Resets all transformation progress, all virginities, as well as base stats like pain and arousal
- Removes any parasites, bodywriting, bodyliquid, chastity devices and worn sex toys
- Disables auto clothing rebuy
visual-settings:
description: |-
Prints entire section of visual settings
tags: ["text", "dom"]
voice:
description: |-
Prints verb by player attempting to use their voice
Example:
```
You <<voice "moan">>.
```
`<<voice type>>`
- **type**: `string` - type of verb
- `"plead"` | `"moan"` | `"demand"`
parameters:
- '"plead"|"moan"|"demand"'
tags: ["text"]
vore:
name: vore
vore_img:
name: vore_img
voreactions:
name: voreactions
voreeffects:
name: voreeffects
voreTrait:
description: |-
Prints `| Daredevil` or `| Tasty` depending on pc's `$submissive`
tags: ["unused", "text"]
waist_goo:
name: waist_goo
waiter_default:
name: waiter_default
wakingEffects:
name: wakingEffects
wallet:
description: |-
Prints where active NPC would keep their money
Sets `_stealType` to type of clothing if swimsuit
npcIndex and active NPC can be out of sync. Consider refactoring
`<<wallet npcIndex?>>`
- **npcIndex** _optional_: `number` - zero-based index of npc to check clothes for
- `0-5`: Only affects swimsuit clothing check, not text output
parameters:
- "|+ number"
tags: ["text", "temp", "refactor"]
walnutStoreMessage:
name: walnutStoreMessage
wardrobe:
name: wardrobe
wardrobeClothingOptions:
name: wardrobeClothingOptions
wardrobeContents:
description: |-
Prints either `<<wardrobeList>>` or `<<wardrobeNewOutfit>>` depending on `$lastWardrobeSlot`
`<<wardrobeNewOutfit>>` is never called because $lastWardrobeSlot is never set to "NewOutfit". Consider refactoring
tags: ["refactor", "dom"]
wardrobeExits:
name: wardrobeExits
wardrobeGetRepairedClothes:
name: wardrobeGetRepairedClothes
wardrobeintegrity:
description: |-
Prints text integrity description of provided clothing item if below max
`<<wardrobeintegrity clothingObject slot>>`
- **clothingObject**: `object` - Clothes object to be checked for integrity
- **slot**: `string` - clothing setup slot to be checked if not on clothingObject
- %clothesTypesDesc%
parameters:
- bareword|var &+ %clothesTypes%
tags: ["text"]
wardrobeLinks:
name: wardrobeLinks
tags: ["unused"]
wardrobeList:
description: |-
Prints actual wardrobe contents. Wrapped by `<<wardrobeContents>>`
`<<wardrobeList slot>>`
- **slot**: `string` - clothing slot player has selected selected
- %clothesTypesDesc%
parameters:
- "%clothesTypes%"
tags: ["dom"]
wardrobeListReorder:
description: |-
Reorders current wardrobe items by provided sorting
`<<wardrobeListReorder slot orderType descending?>>`
- **slot**: `string` - clothing slot to enumerate from current wardrobe
- %clothesTypesDesc%
- **orderType**: `string` - clothing property to sort by
- `"name"` | `"color"` | `"lewd"` | `"integrity"` | `"warmth"` | `"outfit"`
- **descending** _optional_: `boolean` - sort by descending values
- Defaults to false
parameters:
- '%clothesTypes% &+ "name"|"color"|"lewd"|"integrity"|"warmth"|"outfit" |+ bool'
tags: ["dom"]
wardrobeNewOutfit:
name: wardrobeNewOutfit
wardrobeSanityCheck:
name: wardrobeSanityCheck
wardrobeSelection:
description: |-
Sets and overrides current wardrobe selection based on `$forceWardrobeLocation`
`$forceWardrobeLocation` is a string from possible `$location` values
`<<wardrobeList allowTransfer?>>`
- **blockTransfer** _optional_: `boolean` - block transferring from this wardrobe
- Defaults to false
- Currently implemented as pseudo-teleporter while debug is enabled
parameters:
- "|+ bool"
tags: ["refactor"]
wardrobeSend:
name: wardrobeSend
wardrobesUpdate:
name: wardrobesUpdate
wardrobewear:
name: wardrobewear
warmth:
name: warmth
warmth_description:
name: warmth_description
warmthscale:
name: warmthscale
wash:
name: wash
wash_face:
name: wash_face
wash_hands:
name: wash_hands
wash_mouth:
name: wash_mouth
washmakeup:
name: washmakeup
water:
name: water
wateraction:
name: wateraction
waterbr:
name: waterbr
waterwash:
name: waterwash
wearandtear:
name: wearandtear
wearlink_norefresh:
description: |-
Creates non-refreshing links that will update clothes according to `$wardrobeOption`
`$wardrobeOption` is `0` or a form option as a string
`<<wearlink_norefresh displayName clothingId actionVariable?>>`
- **displayName**: `string` - the text of the link. May contain markup
- **clothingId**: `number|string` - id of clothing to apply when clicked
- Index in slot array on selected wardrobe
- Key of non-outfit actions (`"towel"` | `"large_towel"` | `"strip"`)
- **actionVariable** _optional_: `string` - clothing slot wear action key to treat as selected
- Defaults to variable pointed to by temporary variable `_wear`
- `wear_` + (%clothesTypesDesc%)
parameters:
- text &+ number|"towel"|"large_towel"|"strip" |+ text
tags: ["temp", "dom"]
wearoutfit:
name: wearoutfit
wearProp:
description: |-
Temporarily equips a handheld prop for visual effect in scenes
`<<wearProp prop colour? accColour?>>`
- **prop**: `string` - prop to equip, using the variable of the handheld item
- **colour**: `string` - colour of handheld prop
- **accColour**: `string` - secondary colour of handheld prop
parameters:
- text |+ "custom"|text|number |+ string
weather_select:
name: weather_select
weatherdisplay:
name: weatherdisplay
weatherinit:
name: weatherinit
tags: ["unused"]
wetAll:
name: wetAll
wetLower:
name: wetLower
wetUpper:
name: wetUpper
wetDream:
description: |
Gives the player a wet dream based on lustful specialClothesEffects or maximum arousal.
wetness_init:
name: wetness_init
wetnessCalculate:
name: wetnessCalculate
wheeze:
name: wheeze
whitney_gang_options:
name: whitney_gang_options
whitney_home_events:
name: whitney_home_events
whitney_home_events_gang:
name: whitney_home_events_gang
whitney_parent:
name: whitney_parent
WhitneyChastityCheck:
name: WhitneyChastityCheck
whitneyexit:
name: whitneyexit
whitneyFaceWritingInspection:
name: whitneyFaceWritingInspection
whitneyFinish:
name: whitneyFinish
whitneyoptions:
name: whitneyoptions
whitneyoptionsleave:
name: whitneyoptionsleave
WhitneyPantyCheck:
name: WhitneyPantyCheck
WhitneyParasite:
description: |-
Prints adaptive passage of Whitney giving pc a parasite
tags: ["text", "links"]
WhitneyParasitePenisComment:
description: |-
Prints comments of onlookers with appropriate effects when Whitney gives pc a genital parasite
tags: ["text"]
whitneyposter:
name: whitneyposter
whitneyRescueEnd:
name: whitneyRescueEnd
whitneyRescueExit:
name: whitneyRescueExit
whitneyRoofRuleBreak:
name: whitneyRoofRuleBreak
whitneyRulePunishment:
name: whitneyRulePunishment
whitneyShoppingData:
description: |-
Stores Whitney's clothes and reactions from statics into temporary variables
tags: ["temp"]
whitneyShoppingPicker:
description: |-
Replaces pc's worn clothes with a temporary choice from Whitney
Relies on temporary variables from `<<whitneyShoppingData>>`
tags: ["temp"]
whitneyShoppingPickerChoice:
description: |-
Replaces pc's worn clothes with a permanent choice from Whitney
Relies on temporary variables from `<<whitneyShoppingData>>`
tags: ["temp"]
wHunt:
name: wHunt
wife:
name: wife
Wife:
name: Wife
wife_npc:
name: wife_npc
willpower:
description: |-
Adds willpower to pc's state
`$willpower` is a measure of strength of pc's willpower where 0 is not strong (0-1,000)
`<<willpower change>>`
- **change**: `number` - +/- change to apply
parameters:
- number
willpowerdifficulty:
name: willpowerdifficulty
willpowerorgasm:
name: willpowerorgasm
willpowerpain:
name: willpowerpain
witch:
description: |-
Prints 'witch' if Gwylan is male, or 'witch' if Gwylan is female.
wolf:
name: wolf
wolf_cave_plural:
name: wolf_cave_plural
wolf_cave_singular:
name: wolf_cave_singular
wolf_cave_update:
name: wolf_cave_update
wolfcaveevent:
name: wolfcaveevent
wolfcaveselect:
name: wolfcaveselect
wolfCaveSingles:
name: wolfCaveSingles
wolfcavestate:
name: wolfcavestate
wolfChildActivity:
name: wolfChildActivity
wolfDefiant:
description: |-
When the player has the full wolf transformation, choosing Defiant dialogue options in lists of links lowers stress, but submissive characters are traumatized and lose control for acting unlike themselves. This function is inserted inside links, takes a target value (usually 500 or 850), and makes extra stat adjustments if too submissive.
`<<wolfDefiant threshold>>`
- **threshold**: `number` - if `$submissive` is greater than this value, gain trauma and lose control
parameters:
- number
wolfeventend:
name: wolfeventend
wolfexposed:
name: wolfexposed
tags: ["unused"]
wolfgirl:
description: |-
Prints `| Wolfboy` or `| Wolfgirl` depending on pc's appearance
tags: ["text"]
wolfhuntevents:
name: wolfhuntevents
wolfpackfear:
description: |-
Adds fear to the wolfpack and prints `The pack fears you a little more.`
`$wolfpackfear` is a measure of how much the wolfpack fears the pc where 0 is not at all (0-30)
tags: ["text"]
wolfpackhuntoptions:
name: wolfpackhuntoptions
wolfpacktrust:
description: |-
Adds trust to the wolfpack and prints `The pack trusts you a little more.`
`$wolfpacktrust` is a measure of how much the wolfpack trusts the pc where 0 is not at all (0-30)
tags: ["text"]
wolfquick:
name: wolfquick
wolfTransform:
name: wolfTransform
woman:
name: woman
woman_npc:
name: woman_npc
women_npc:
name: women_npc
wood_required:
name: wood_required
word:
description: |-
Prints an indefinite article (a/an) if needed for provided clothing slot
`<<word slot>>`
- **slot**: `string` - category of worn clothing to check
- %clothesTypesDesc%
parameters:
- "%clothesTypes%"
tags: ["text"]
wordify_i:
description: |-
Prints the ordinal numeral for a given integer (first, second, ...)
`<<wordify_i number capitalise?>>`
- **number**: `number` - positive integer to convert to text
- `1-11` : numbers not between 1-10 inclusive are treated as 11
- **capitalise** _optional_: `boolean` - capitalise output (truthy)
parameters:
- "number |+ bool"
tags: ["text"]
world_corruption:
description: |-
Adds corruption to world state
`$world_corruption_hard`
`<<world_corruption type change>>`
- **type**: `string` - type of corrupting event
- `"hard"`: world scoped changes
- `"soft"`: player scoped changes
- **change**: `number` - +/- change to apply
parameters:
- '"hard"|"soft" &+ number'
wPersist:
name: wPersist
wraith_pass:
name: wraith_pass
wraithCaught:
name: wraithCaught
wraithEvent:
name: wraithEvent
wraithEventSewers:
name: wraithEventSewers
wraithEventStreet:
name: wraithEventStreet
wraithExorcise:
name: wraithExorcise
wraithEyes:
name: wraithEyes
wraithPossess:
name: wraithPossess
wraithShamble:
name: wraithShamble
wren_sabotage_nude:
name: wren_sabotage_nude
wTimerProgress:
name: wTimerProgress
yogalessons:
name: yogalessons
yogalewd:
name: yogalewd
your_bird_text:
description: |-
Prints either `your spouse`, `your hawk/harpy`, or `the hawk/harpy` depending on player's stockholm status
`<<your_bird_text formatting?>>`
- **formatting** _optional_: `string` - formatting to apply
- `"cap"`: capitalise output
parameters:
- '|+ "cap"'
tags: ["text"]