Guys, is there a way to prevent public sex from happening? It totally fucks up my teacher playthrough, the Evil Ai just forces the sex scene out in public, can't they drag you to a private room or something?
I think there are some modules that make the character prefer private sex, but you'd have to add it to each card manually, there's no global setting or anything, annoying as it is (as far as I'm aware at least, I'd love to be proven wrong).
I did find some repositories for custom modules across the Mega links posted on the main page, and one of them contained modules you could apply to only 1 card in the roster to then take effect regularly across the entire roster, like standardizing item names, reducing stats per week to keep gameplay fresh, and renewing virginity at regular intervals. I also made a debug module that worked on every card continuously to check a certain opinion flag so it's definitely possible to make one card carry a globally-affecting set of effects.
It is also possible to make interactions towards one card get cancelled, and yet more possible to set a NPC character's answer chance to always be 0% for certain interactions. I know someone made sure their teacher NPC never said yes to hugs, kisses, or sex in normal gameplay when I used their card.
Even further, if you really don't care about having sex in public and care more about getting caught by a ClassPrez trait character, I did make a module that removes the trait if your character successfully performs Caress (head pat) or Touch on them, though I could've also just made it indiscriminately remove the trait the moment the card was added to the roster as well.
In short, yeah Teacher runs get a bit weird but you can totally make a solidly immersive teacher with attention given to custom triggers. Modules are just a package of triggers and global variables. That said, in order to call a global variable you have to create the global separately then call it from a trigger, because variables declared in trigger scripts are always in the local scope.
It's definitely possible to make a module that cancels Forced Sex then replaces the interaction with a request to take your character to a private room.