Well, regarding the code, plot script consists of small named blocks like
d0_shower_1: {
next: "d0_shower_2",
pc: "blush",
txt: "You strip nude and get into the shower. ",
img: "img/common/pc_room_bath.webp",
cmd: ["strip_nude()"],
},
Here {} delimit the block, next: points to next block, pc: shows emotion pic for Emily, txt: shows text, img: background image, cmd: optional command executed in the block.
Some blocks like this contain choices delimited by [], first agument in option ("True") means condition if the optoin is available, second - text on an option button, third - name of the block the option leads to.
d0_shower_2: {
txt: "You fiddle for a moment with the tap, setting the water temperature just right, before washing your whole body. ",
img: "img/prologue/shower.webp",
choice: [
["True", "Stay in the shower for a while.", "d0_shower_3"],
["True", "Finish the shower.", "d0_shower_end"],
],
},
Some blocks check or modify variables, f.g. save.slut+=1 increments save.slut by 1. I guess, save.slut is the main lewdness level but it is somewhat tricky, there's also save.max_slut that limits growth of save.slut or smth.